/* meeting-service — C 端皮肤(顶栏外壳 + 首页 + 详情换肤 + 登录换肤)。
   作用域全部走 .ce-* 类与 .ce-detail / .login-* 覆盖,不改 tokens.css,
   不打穿复用组件。配合 TopBarShell(lib.js)与重写后的 MeetingsScreen。 */

/* ===== C 端外壳 ===== */
.ce-shell{min-height:100vh;background:linear-gradient(180deg,#F4F8FF,#FAFCFF 240px,#fff)}
.ce-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;padding:14px 30px;background:#fff;border-bottom:1px solid #EAF0F9}
.ce-logo{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#6366F1,#2563EB);box-shadow:0 4px 11px rgba(37,99,235,.38);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff}
.ce-brand{font-size:16px;font-weight:800;letter-spacing:-.01em;cursor:pointer;color:#0F172A}
.ce-sp{flex:1}
.ce-newbtn{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,#6366F1,#2563EB);color:#fff;font-size:14px;font-weight:700;padding:9px 18px;border-radius:11px;box-shadow:0 8px 20px rgba(79,70,229,.32);cursor:pointer}
.ce-newbtn:hover{filter:brightness(1.05)}
.ce-avatar{position:relative;width:32px;height:32px;border-radius:50%;background:#E0EAFF;color:#2563EB;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-left:6px;cursor:pointer}
.ce-menu{position:absolute;right:0;top:40px;min-width:200px;background:#fff;border:1px solid #E6ECF5;border-radius:12px;box-shadow:0 16px 40px rgba(15,23,42,.16);padding:6px;z-index:50}
.ce-menu-head{padding:8px 10px 10px}
.ce-menu-name{font-size:14px;font-weight:700;color:#0F172A}
.ce-menu-sub{font-size:12px;color:#94A3B8;margin-top:2px}
.ce-menu-row{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:9px 10px;font-size:13px;color:#334155;border-radius:8px;cursor:pointer;background:none;border:none}
.ce-menu-row svg{flex:none;opacity:.62}
.ce-menu-row:hover{background:#F4F8FF;color:#2563EB}
.ce-menu-sep{height:1px;background:#EEF2F7;margin:5px 4px}
.ce-main{padding:30px 28px 90px}
.ce-main>.page:not(.md-detail){max-width:960px;margin:0 auto}

/* ===== C 端首页 ===== */
.ce-home{max-width:780px;margin:0 auto}
.ce-rise{opacity:0;transform:translateY(16px);animation:ceRise .5s ease forwards}
@keyframes ceRise{to{opacity:1;transform:none}}
.ce-greet{font-size:26px;font-weight:800;letter-spacing:-.02em;color:#0F172A}
.ce-em{font-size:24px}
.ce-greet-sub{font-size:14px;color:#64748B;margin-top:5px}
.ce-paste{margin-top:20px;display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #E6ECF5;border-radius:16px;padding:9px 9px 9px 16px;box-shadow:0 12px 30px rgba(37,99,235,.10);cursor:pointer;transition:box-shadow .16s,border-color .16s}
.ce-paste:hover{box-shadow:0 16px 38px rgba(37,99,235,.16);border-color:#D5E3FF}
.ce-paste-ic{display:flex;align-items:center;color:#94A3B8;flex:none}
.ce-paste-inp{flex:1;font-size:14px;color:#94A3B8}
.ce-paste-go{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#3B82F6,#2563EB);color:#fff;border-radius:11px;padding:11px 20px;font-size:14px;font-weight:700;white-space:nowrap;box-shadow:0 6px 14px rgba(37,99,235,.3)}
.ce-stats{display:flex;gap:10px;margin-top:22px}
.ce-stat{flex:1;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #EDF1F7;border-radius:14px;padding:14px 16px}
.ce-stat-ic{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none}
.ce-stat-ic.ic-cal{background:#EFF4FF;color:#2563EB}
.ce-stat-ic.ic-clk{background:#F3F0FF;color:#7C3AED}
.ce-stat-ic.ic-doc{background:#ECFDF3;color:#16A34A}
.ce-stat-ic.ic-ana{background:#FFF7ED;color:#F59E0B}
.ce-stat-tx{min-width:0}
.ce-n{font-size:22px;font-weight:800;letter-spacing:-.02em;color:#0F172A}
.ce-n small{font-size:13px;font-weight:600;color:#94A3B8;margin-left:2px}
.ce-l{font-size:12px;color:#94A3B8;margin-top:2px}
.ce-lhead{display:flex;align-items:center;gap:10px;margin:34px 2px 14px}
.ce-lhead b{font-size:16px;font-weight:800;color:#0F172A}
.ce-filters{display:flex;gap:6px;margin-left:6px}
.ce-filt{font-size:13px;color:#64748B;padding:5px 12px;border-radius:20px;cursor:pointer}
.ce-filt.on{background:#0F172A;color:#fff;font-weight:600}
.ce-search{margin-left:auto;display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:7px 12px;width:200px;color:#94A3B8}
.ce-search input{flex:1;min-width:0;border:none;outline:none;background:none;font-size:13px;color:#334155}
.ce-search:focus-within{border-color:#93B4F5}
.ce-mcard{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #EDF1F7;border-radius:18px;padding:16px 18px;margin-bottom:12px;box-shadow:0 6px 18px rgba(15,23,42,.05);cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s}
.ce-mcard:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(37,99,235,.12);border-color:#D5E3FF}
.ce-mico{width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex:none;background:#EFF4FF;color:#2563EB}
.ce-mico.plat-tx{background:#EAF3FF;color:#2563EB}
.ce-mico.plat-fs{background:#EAFBF3;color:#16A34A}
.ce-mico.plat-tm{background:#F3F0FF;color:#7C3AED}
.ce-mbody{flex:1;min-width:0}
.ce-mtitle{font-size:16px;font-weight:700;letter-spacing:-.01em;color:#0F172A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ce-mmeta{font-size:12.5px;color:#94A3B8;margin-top:3px;font-family:'JetBrains Mono',monospace}
.ce-mprev{font-size:13px;color:#64748B;margin-top:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ce-mright{display:flex;align-items:center;gap:8px;flex:none}
.ce-badge{display:inline-flex;align-items:center;border-radius:20px;font-size:11px;padding:5px 12px;font-weight:700;white-space:nowrap}
.ce-b-done{background:#ECFDF3;color:#16A34A}
.ce-b-rec{background:#FEF2F2;color:#EF4444}
.ce-b-proc{background:#EFF4FF;color:#2563EB}
.ce-b-sch{background:#F1F5F9;color:#64748B}
.ce-b-fail{background:#FEF2F2;color:#EF4444}
.ce-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#EF4444;margin-right:5px;animation:cePl 1.3s infinite}
@keyframes cePl{0%,100%{opacity:1}50%{opacity:.3}}
.ce-chev{color:#CBD5E1;font-size:18px}
.ce-del{opacity:0;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#94A3B8;background:none;border:none;cursor:pointer;transition:opacity .15s,background .15s,color .15s}
.ce-mcard:hover .ce-del{opacity:1}
.ce-del:hover{background:#FEF2F2;color:#EF4444}

/* ===== C 端详情换肤(作用域 .ce-detail,仅外观,不动 md-cols 布局) ===== */
.ce-detail{max-width:1680px;margin:0 auto}
/* drop the bounded gray canvas so the white panels sit on the shell gradient
   (no floating gray block / shadow band on wide screens) */
.page.md-detail{background:transparent}
@media(min-width:2100px){.ce-detail{max-width:1880px}}
.ce-detail .md-h1{font-size:24px;font-weight:800;letter-spacing:-.02em;color:#0F172A}
.md-back{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#64748B;background:#fff;border:1px solid #E8EEF6;border-radius:9px;padding:5px 12px 5px 9px;margin-bottom:14px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.md-back:hover{background:#F1F6FF;border-color:#C7D9F5;color:#2563EB}
.ce-detail .md-panel{background:#fff;border:1px solid #EDF1F7;border-radius:18px;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.ce-detail .md-phead{border-bottom:1px solid #F1F5F9}
.ce-detail .btn-primary,.ce-detail .md-primary{background:linear-gradient(135deg,#3B82F6,#2563EB);border:none;box-shadow:0 6px 14px rgba(37,99,235,.28)}
/* 会议详情:撑满视口、各列内部滚动 —— 长转写不再把整页撑高、把「问会议」输入框顶到很下面。
   面板内部本就有 .md-pbody{overflow-y:auto},缺的只是一个有界高度。仅桌面;移动端走 mobile.css。 */
body:not(.is-mobile) .ce-shell:has(.page.md-detail){height:100vh;display:flex;flex-direction:column;overflow:hidden}
body:not(.is-mobile) .ce-shell:has(.page.md-detail) .ce-main{flex:1;min-height:0;overflow:hidden;padding-bottom:24px}
body:not(.is-mobile) .ce-shell:has(.page.md-detail) .md-cols{grid-template-rows:minmax(0,1fr)}

/* ===== 登录页(分屏:左品牌深色 + 右表单清爽) ===== */
.lg-page{display:flex;min-height:100vh;background:#fff}
.lg-brand{position:relative;flex:1.05;overflow:hidden;display:flex;flex-direction:column;padding:42px 52px;color:#fff;background:radial-gradient(120% 120% at 80% -10%,#161a3a 0%,#0B0E1F 45%,#070912 100%)}
.lg-grid{position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(120,140,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,255,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(60% 60% at 40% 35%,#000,transparent);mask-image:radial-gradient(60% 60% at 40% 35%,#000,transparent)}
.lg-spot{position:absolute;top:-160px;left:-100px;width:680px;height:560px;pointer-events:none;background:radial-gradient(closest-side,rgba(170,185,255,.22),rgba(99,102,241,.10) 45%,transparent 72%);filter:blur(16px)}
.lg-brand-top{position:relative;z-index:2;display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800}
.lg-mark{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#6366F1,#2563EB);box-shadow:0 4px 12px rgba(37,99,235,.4);flex:none}
.lg-brand-mid{position:relative;z-index:2;margin:auto 0;max-width:30rem}
.lg-eyebrow{display:inline-flex;align-items:center;gap:7px;background:rgba(124,142,255,.14);border:1px solid rgba(124,142,255,.32);color:#C7D2FE;font-size:13px;font-weight:700;padding:6px 13px;border-radius:20px;margin-bottom:22px}
.lg-h1{font-size:46px;font-weight:800;line-height:1.12;letter-spacing:-.02em}
.lg-grad{background:linear-gradient(110deg,#A5B4FC,#60A5FA 45%,#22D3EE);-webkit-background-clip:text;background-clip:text;color:transparent}
.lg-sub{margin-top:18px;font-size:15px;line-height:1.7;color:#aab0c6}
.lg-feats{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:13px}
.lg-feats li{display:flex;align-items:center;gap:11px;font-size:14px;color:#cdd2e1}
.lg-feats li svg{color:#7C9CFF;flex:none}
.lg-brand-foot{position:relative;z-index:2;font-size:12px;color:#5b6178}
.lg-form-wrap{flex:.95;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:linear-gradient(180deg,#F7FAFF,#fff)}
.lg-form{width:100%;max-width:380px}
.lg-form-logo{display:none;align-items:center;justify-content:center;gap:9px;font-size:16px;font-weight:800;color:#0F172A;margin-bottom:24px}
.lg-title{font-size:26px;font-weight:800;color:#0F172A;letter-spacing:-.02em}
.lg-desc{font-size:14px;color:#64748B;margin:6px 0 26px}
.lg-field{margin-bottom:16px}
.lg-label{display:block;font-size:13px;font-weight:600;color:#334155;margin-bottom:7px}
.lg-input{display:flex;align-items:center;gap:9px;height:46px;padding:0 12px;border:1.5px solid #E2E8F0;border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s;color:#94A3B8}
.lg-input:focus-within{border-color:#2563EB;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.lg-input.is-err{border-color:#EF4444}
.lg-input.is-err:focus-within{box-shadow:0 0 0 4px rgba(239,68,68,.12)}
.lg-input input{flex:1;min-width:0;border:none;outline:none;background:none;font-size:14px;color:#0F172A}
.lg-eye{display:flex;align-items:center;color:#94A3B8;cursor:pointer;padding:4px;background:none;border:none}
.lg-eye:hover{color:#2563EB}
.lg-fielderr{display:block;font-size:12px;color:#EF4444;margin-top:6px}
.lg-error{background:#FEF2F2;border:1px solid #FECACA;color:#DC2626;font-size:13px;padding:10px 12px;border-radius:10px;margin-bottom:16px}
.lg-submit{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:9px;border:none;border-radius:12px;background:linear-gradient(135deg,#3B82F6,#2563EB);color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 8px 20px rgba(37,99,235,.28);transition:filter .15s,transform .1s}
.lg-submit:hover:not(:disabled){filter:brightness(1.05)}
.lg-submit:active:not(:disabled){transform:translateY(1px)}
.lg-submit:disabled{opacity:.7;cursor:default}
.lg-spin{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:lgSpin .7s linear infinite}
@keyframes lgSpin{to{transform:rotate(360deg)}}
.lg-forgot{text-align:center;margin-top:16px}
.lg-forgot a{font-size:13px;color:#2563EB;font-weight:500}
.lg-terms{text-align:center;font-size:12px;color:#94A3B8;margin-top:18px;line-height:1.7}
.lg-terms a{color:#64748B}
@media (max-width:900px){
  .lg-brand{display:none}
  .lg-form-logo{display:flex}
  .lg-form-wrap{flex:1}
}
@media (prefers-reduced-motion:reduce){ .lg-spin{animation:none} }

/* ===== 共享页容器 + 设置 + 录制机器人(C 端统一) ===== */
.ce-page{max-width:640px;margin:0 auto}
.ce-page-title{font-size:26px;font-weight:800;letter-spacing:-.02em;color:#0F172A;margin:0 0 20px}
.ce-card{background:#fff;border:1px solid #EDF1F7;border-radius:18px;box-shadow:0 6px 18px rgba(15,23,42,.05);padding:22px 24px;margin-bottom:16px}
.ce-card-h{font-size:15px;font-weight:800;color:#0F172A;margin-bottom:18px}

/* settings */
.ce-set-acct{display:flex;align-items:center;gap:16px}
.ce-set-avatar{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff;background:linear-gradient(135deg,#6366F1,#2563EB);box-shadow:0 6px 16px rgba(37,99,235,.32);flex:none}
.ce-set-name{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700;color:#0F172A}
.ce-set-sub{font-size:13px;color:#94A3B8;margin-top:3px}
.ce-field{margin-bottom:15px}
.ce-set-ok{color:#16A34A;font-size:13px;margin:2px 0 12px}
.ce-set-err{color:#EF4444;font-size:13px;margin:2px 0 12px}
.ce-set-submit{width:auto;padding:0 24px;height:42px;font-size:14px;margin-top:4px}
.ce-ava-img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.ce-set-editlink{font-size:12.5px;font-weight:600;color:#2563EB;background:none;border:none;cursor:pointer;padding:0}
.ce-set-editlink:hover{text-decoration:underline}
.ce-set-nameedit{display:flex;align-items:center;gap:8px}
.ce-set-nameinput{flex:1;min-width:0;height:34px;padding:0 11px;border:1px solid #CBD5E1;border-radius:9px;font-size:14px;color:#0F172A;outline:none;transition:border-color .15s}
.ce-set-nameinput:focus{border-color:#2563EB}
.cp-testbanner{margin:0 0 16px;padding:11px 15px;background:#FFF7ED;border:1px solid #FED7AA;border-radius:12px;color:#9A3412;font-size:13px;line-height:1.6}
.cp-testbanner code{background:#FFEAD5;padding:1px 6px;border-radius:5px;font-size:12px}
.ce-asr-seg{display:flex;gap:10px;margin:2px 0 14px}
.ce-asr-seg button{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:11px 14px;border:1.5px solid #E2E8F0;border-radius:12px;background:#fff;color:#334155;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}
.ce-asr-seg button small{font-weight:400;font-size:11.5px;color:#94A3B8}
.ce-asr-seg button:hover{border-color:#CBD5E1}
.ce-asr-seg button.is-on{border-color:#2563EB;background:#EFF6FF;color:#1D4ED8}
.ce-asr-seg button.is-on small{color:#60A5FA}
.ce-set-danger{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ce-set-danger-t{font-size:15px;font-weight:700;color:#0F172A}
.ce-set-danger-d{font-size:13px;color:#94A3B8;margin-top:3px}
.ce-btn-danger{flex:none;height:40px;padding:0 18px;border-radius:11px;border:1px solid #FECACA;background:#fff;color:#DC2626;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}
.ce-btn-danger:hover{background:#FEF2F2}

/* bot admin */
.ce-bots{max-width:1140px}
.ce-bots-head{display:flex;align-items:baseline;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.ce-bots-head .ce-page-title{margin:0}
.ce-bots-sum{font-size:13px;color:#64748B}
.ce-bots-errbar{background:#FEF2F2;border:1px solid #FECACA;color:#DC2626;font-size:13px;padding:10px 14px;border-radius:12px;margin-bottom:14px}
.ce-bots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;align-items:start}
.ce-bot-group + .ce-bot-group{margin-top:26px}
.ce-bot-grouphead{display:flex;align-items:center;gap:9px;margin-bottom:13px}
.ce-bot-groupdot{width:9px;height:9px;border-radius:50%;background:#94A3B8;flex:none}
.ce-bot-groupdot.plat-tx{background:#2563EB}
.ce-bot-groupdot.plat-fs{background:#16A34A}
.ce-bot-groupdot.plat-tm{background:#7C3AED}
.ce-bot-groupname{font-size:15px;font-weight:650;color:#0F172A}
.ce-bot-groupcount{font-size:12.5px;color:#94A3B8;font-weight:500}
.ce-bot-card{background:#fff;border:1px solid #EDF1F7;border-radius:18px;box-shadow:0 6px 18px rgba(15,23,42,.05);padding:18px}
.ce-bot-top{display:flex;align-items:center;gap:12px}
.ce-bot-ic{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none;background:#EFF4FF;color:#2563EB}
.ce-bot-ic.plat-tx{background:#EAF3FF;color:#2563EB}
.ce-bot-ic.plat-fs{background:#EAFBF3;color:#16A34A}
.ce-bot-ic.plat-tm{background:#F3F0FF;color:#7C3AED}
.ce-bot-meta{flex:1;min-width:0}
.ce-bot-name{font-size:15px;font-weight:700;color:#0F172A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ce-bot-id{font-size:11.5px;color:#94A3B8;margin-top:2px;font-family:'JetBrains Mono',monospace}
.ce-bot-st{display:inline-flex;align-items:center;border-radius:20px;font-size:11px;padding:5px 11px;font-weight:700;white-space:nowrap;flex:none}
.ce-bot-st.st-idle{background:#ECFDF3;color:#16A34A}
.ce-bot-st.st-rec{background:#FEF2F2;color:#EF4444}
.ce-bot-st.st-need{background:#FFF7ED;color:#D97706}
.ce-bot-st.st-warn{background:#FEFCE8;color:#CA8A04}
.ce-bot-st.st-err{background:#FEF2F2;color:#DC2626}
.ce-bot-errrow{font-size:12px;color:#DC2626;margin-top:10px;background:#FEF2F2;border-radius:8px;padding:6px 9px}
.ce-bot-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.ce-btn-primary-sm{height:34px;padding:0 14px;border-radius:10px;border:none;background:linear-gradient(135deg,#3B82F6,#2563EB);color:#fff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px rgba(37,99,235,.26)}
.ce-btn-primary-sm:disabled{opacity:.55;cursor:default;box-shadow:none}
.ce-btn-ghost-sm{height:34px;padding:0 14px;border-radius:10px;border:1px solid #E2E8F0;background:#fff;color:#475569;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.ce-btn-ghost-sm:hover{background:#F4F8FF;border-color:#C7D9F5;color:#2563EB}
.ce-btn-ghost-sm:disabled{opacity:.55;cursor:default}
.ce-btn-ghost-sm:disabled:hover{background:#fff;border-color:#E2E8F0;color:#475569}

/* --- summary panel header ONLY (scoped to .md-sumhead): two rows --- */
.md-sumhead{display:flex;flex-direction:column;align-items:stretch;gap:9px;height:auto;padding:12px 16px}
.md-sumhead .md-phead-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.md-sumhead .md-phead-right{display:flex;align-items:center;gap:8px}
.md-sumhead .md-shead-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.md-sumhead .md-select{flex:0 0 auto}

/* --- summary type segmented control (replaces the native <select>) --- */
.md-seg{display:inline-flex;gap:4px;background:#F1F5FB;border:1px solid #E6EDF7;border-radius:11px;padding:3px;flex-wrap:nowrap}
.md-seg-btn{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 12px;border:none;background:transparent;border-radius:8px;font-size:13px;font-weight:500;color:#64748B;cursor:pointer;transition:background .15s,color .15s}
.md-seg-btn:hover{color:#2563EB}
.md-seg-btn.is-active{background:#fff;color:#2563EB;font-weight:600;box-shadow:0 1px 4px rgba(15,23,42,.08)}
.md-seg-btn.is-deep{color:#8B6FD6}
.md-seg-btn.is-deep.is-active{color:#7C3AED}
.md-seg-ok{color:#16A34A;font-weight:700;font-size:11px;margin-left:1px}
/* model select → ce look */
.md-select{height:30px;border:1px solid #E2E8F0;border-radius:9px;padding:0 10px;font-size:13px;color:#475569;background:#fff;cursor:pointer}
.md-select:hover{border-color:#C7D9F5}

/* --- 对话打开时「转写 | 纪要」合并面板的一级切换:占原标题位置,比 .md-seg(二级,
       总结类型)更大更醒目;选中=白底+深墨字(像标题),与下方蓝字的二级分段分层清晰 --- */
.md-toptab{display:inline-flex;gap:4px;background:#EEF2F9;border:1px solid #E2E8F0;border-radius:12px;padding:4px}
.md-toptab-btn{display:inline-flex;align-items:center;height:33px;padding:0 20px;border:none;background:transparent;border-radius:9px;font-size:14.5px;font-weight:700;color:#5A6B82;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}
.md-toptab-btn:hover{color:#2563EB}
.md-toptab-btn.is-active{background:#fff;color:#1E3A5F;box-shadow:0 1px 5px rgba(15,23,42,.1)}
.md-toptab-cnt{font-weight:500;font-size:12px;color:#94A3B8;margin-left:2px}
.md-toptab-btn.is-active .md-toptab-cnt{color:#7C93B4}

/* ===== 会议详情加载骨架屏:占位块 + 微光流动(复用 .md-* 结构,布局对齐真页) ===== */
.sk{position:relative;overflow:hidden;background:#E9EEF5;border-radius:7px}
.sk::after{content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);
  animation:sk-shimmer 1.4s ease-in-out infinite}
@keyframes sk-shimmer{100%{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.sk::after{animation:none}}
.md-skeleton .md-mediabar{flex-wrap:nowrap}
.md-skeleton .md-pbody{display:block}
.md-sk-body .sk-para{margin-bottom:20px}
.md-sk-body .sk-tag{height:13px;margin-bottom:11px;opacity:.9}
.md-sk-body .sk-row{height:12px;margin-bottom:9px}

/* 会议加载失败:居中卡片 + 重试/返回,代替一行灰字 */
.md-loaderr{max-width:420px;margin:13vh auto 0;text-align:center;padding:24px}
.md-loaderr-ic{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;background:#FEF2F2;color:#EF4444}
.md-loaderr-t{font-size:17px;font-weight:700;color:#1E3A5F}
.md-loaderr-s{font-size:13px;color:#64748B;margin-top:8px;line-height:1.7}
.md-loaderr-acts{display:flex;gap:10px;justify-content:center;margin-top:18px}

/* 会议列表「加载更多」 */
.ce-loadmore{display:flex;justify-content:center;padding:18px 0 8px}
.ce-loadmore-btn{height:38px;padding:0 24px;border-radius:999px;border:1px solid #E2E8F0;background:#fff;color:#475569;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.05);transition:border-color .15s,color .15s}
.ce-loadmore-btn:hover:not(:disabled){border-color:#C7D9F5;color:#2563EB}
.ce-loadmore-btn:disabled{opacity:.6;cursor:default}

.ce-bot-qr{margin-top:14px;text-align:center;background:#F8FAFC;border:1px solid #EDF1F7;border-radius:12px;padding:12px}
.ce-bot-qr-hint{font-size:12px;color:#94A3B8;margin-bottom:8px}
.ce-bot-qr img{width:200px;background:#fff;padding:8px;border-radius:10px;box-shadow:0 2px 8px rgba(15,23,42,.06)}

/* ===== 登录后大屏适配:首页/机器人 不挤在窄列 ===== */
@media (min-width:1700px){
  .ce-home{max-width:960px}
  .ce-bots{max-width:1320px}
}
@media (min-width:2200px){
  .ce-home{max-width:1080px}
  .ce-bots{max-width:1560px}
}

/* ===== 网页录制(线下会议)===== */
.ce-orrec{display:flex;align-items:center;gap:10px;margin-top:11px;padding-left:4px;font-size:13px;color:#94A3B8}
.ce-orrec-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:7px 14px;font-size:13px;font-weight:600;color:#2563EB;cursor:pointer;transition:background .15s,border-color .15s}
.ce-orrec-btn:hover{background:#F4F8FF;border-color:#C7D9F5}
.ce-mico.plat-web{background:#F3F0FF;color:#7C3AED}

.ce-rec{width:min(420px,94vw)}
.ce-rec-err{background:#FEF2F2;border:1px solid #FECACA;color:#DC2626;font-size:13.5px;line-height:1.7;padding:12px 14px;border-radius:12px}
.ce-rec-stage{display:flex;flex-direction:column;align-items:center;padding:18px 0 8px}
.ce-rec-orb{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#6366F1,#2563EB);box-shadow:0 10px 28px rgba(37,99,235,.34)}
.ce-rec-orb.on{animation:ceRecPulse 1.6s ease-in-out infinite}
.ce-rec-orb.pause{filter:grayscale(.4);opacity:.8}
@keyframes ceRecPulse{0%,100%{box-shadow:0 10px 28px rgba(37,99,235,.34),0 0 0 0 rgba(99,102,241,.36)}50%{box-shadow:0 10px 28px rgba(37,99,235,.34),0 0 0 16px rgba(99,102,241,0)}}
.ce-rec-time{font-size:34px;font-weight:800;color:#0F172A;font-variant-numeric:tabular-nums;margin-top:16px;letter-spacing:.02em}
.ce-rec-state{font-size:13px;color:#EF4444;font-weight:600;margin-top:4px}
.ce-rec-title{margin:16px 0 0}
.ce-rec-actions{display:flex;gap:10px;margin-top:16px}
.ce-rec-actions .ce-btn-ghost-sm{height:44px;padding:0 20px;font-size:14px}
.ce-rec-stop{flex:1;width:auto;height:44px}
.ce-rec-hint{font-size:12px;color:#94A3B8;margin-top:14px;line-height:1.7;text-align:center}
.ce-rec-pretitle{font-size:13.5px;color:#334155;margin-bottom:12px;line-height:1.6}
.ce-rec-meter{height:12px;background:#EEF2F7;border-radius:7px;overflow:hidden;margin:4px 0}
.ce-rec-meter i{display:block;height:100%;border-radius:7px;background:linear-gradient(90deg,#22C55E,#16A34A);transition:width .08s linear}
.ce-rec-meter i.lo{background:#CBD5E1}
/* fixed-height status slot — always present so showing/hiding never shifts layout */
.ce-rec-status{min-height:54px;display:flex;align-items:center;font-size:12.5px;line-height:1.6;border-radius:9px;padding:8px 12px;margin-top:10px;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s}
.ce-rec-status.st-idle{background:#F8FAFC;color:#64748B;border-color:#EEF2F7}
.ce-rec-status.st-ok{background:#ECFDF3;color:#16A34A;border-color:#BBF7D0}
.ce-rec-status.st-low{background:#FFF7ED;color:#D97706;border-color:#FED7AA}
.ce-rec-dev{margin-top:12px;cursor:pointer}
.ce-rec-up{padding:8px 0}
.ce-rec-up-t{font-size:14px;font-weight:600;color:#0F172A;margin-bottom:10px;text-align:center}
.ce-rec-bar{height:8px;background:#E9EEF6;border-radius:5px;overflow:hidden}
.ce-rec-bar i{display:block;height:100%;background:linear-gradient(90deg,#3B82F6,#2563EB);border-radius:5px;transition:width .2s}
@media (prefers-reduced-motion:reduce){ .ce-rec-orb.on{animation:none} }

/* --- login: register switch + submitted state --- */
.lg-switch{margin-top:14px;text-align:center;font-size:13.5px;color:#64748B}
.lg-switch a{color:#2563EB;font-weight:600;text-decoration:none;margin-left:2px}
.lg-switch a:hover{text-decoration:underline}
.lg-opt{color:#94A3B8;font-weight:400;font-size:12px}
.lg-done{display:flex;flex-direction:column;align-items:center;text-align:center}
.lg-done-ic{width:60px;height:60px;border-radius:50%;background:#ECFDF3;color:#16A34A;font-size:30px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:6px 0 16px;border:1px solid #BBF7D0}
.lg-done .lg-desc{margin-bottom:24px;line-height:1.7}

/* --- home: read-only bot availability chip --- */
.ce-avail{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:#475569;background:#F1F6FF;border:1px solid #E2EBFB;border-radius:10px;padding:7px 13px}
.ce-avail.is-none{color:#B45309;background:#FFF7ED;border-color:#FCE3C6}
.ce-avail-dot{width:8px;height:8px;border-radius:50%;background:#16A34A;box-shadow:0 0 0 3px rgba(22,163,74,.15);flex:0 0 auto}
.ce-avail-dot.busy{background:#F59E0B;box-shadow:0 0 0 3px rgba(245,158,11,.15)}
.ce-avail-seg{white-space:nowrap}
.ce-avail-seg b{color:#16A34A;font-weight:700}
.ce-avail-seg.busy b{color:#F59E0B}
.ce-avail-sp{color:#CBD5E1;margin:0 2px}

/* --- user admin --- */
.ce-usr-sec{font-size:13px;font-weight:700;color:#64748B;margin:22px 2px 12px;letter-spacing:.02em}
.ce-usr-av{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#6366F1,#2563EB);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.ce-usr-list{display:flex;flex-direction:column;gap:10px}
.ce-usr-row{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #EDF1F7;border-radius:14px;padding:12px 16px;box-shadow:0 2px 8px rgba(15,23,42,.04)}
.ce-usr-main{flex:1;min-width:0}
.ce-usr-name{font-size:15px;font-weight:600;color:#0F172A;display:flex;align-items:center;gap:8px}
.ce-usr-me{font-size:11px;font-weight:700;color:#2563EB;background:#EFF4FF;border-radius:5px;padding:1px 7px}
.ce-usr-sub{font-size:12.5px;color:#94A3B8;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ce-usr-ops{display:flex;gap:8px;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:640px){.ce-usr-row{flex-wrap:wrap}.ce-usr-ops{width:100%;justify-content:flex-start}}

/* inline link-style button (e.g. 去设置绑定 in the join-identity hint) */
.link-btn{background:none;border:none;padding:0;margin-left:4px;color:#2563EB;font-weight:600;cursor:pointer;font-size:inherit;text-decoration:underline}
.link-btn:hover{color:#1D4ED8}

/* 飞书录制助手 绑定码 */
.ce-feishu-code{background:#F8FAFC;border:1px solid #EEF2F7;border-radius:12px;padding:14px 16px;font-size:13.5px;color:#334155}
.ce-feishu-codeval{font-size:18px;font-weight:700;color:#2563EB;background:#fff;border:1px solid #E2E8F0;border-radius:8px;padding:6px 14px;display:inline-block;letter-spacing:1px}

/* ============ C 端移动端适配(≤768)============
   作用域仅 .ce-* 皮肤;桌面(>768)零改动。配合全局 768 断点。 */
@media (max-width: 768px) {
  /* 顶栏:收紧留白 + 防换行(品牌可省略号,主按钮不缩不折行) */
  .ce-topbar { padding: 11px 14px; gap: 8px; }
  .ce-brand { font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
  .ce-newbtn { padding: 8px 13px; font-size: 13px; white-space: nowrap; flex: none; }
  .ce-main { padding: 18px 14px 84px; }

  /* 标题字阶 */
  .ce-page-title { font-size: 22px; margin-bottom: 16px; }
  .ce-greet { font-size: 22px; }
  .ce-greet-sub { font-size: 13px; }

  /* 粘贴框:收紧,避免「开始录制」挤压输入提示 */
  .ce-paste { padding: 8px 8px 8px 14px; gap: 8px; }
  .ce-paste-inp { font-size: 13px; }
  .ce-paste-go { padding: 10px 14px; font-size: 13px; }

  /* 统计卡:4 横排 → 2×2 */
  .ce-stats { flex-wrap: wrap; gap: 8px; margin-top: 18px; }
  .ce-stat { flex: 1 1 calc(50% - 4px); min-width: 0; padding: 13px 14px; }

  /* 列表头:标题 + 筛选一行,搜索独占整行 */
  .ce-lhead { flex-wrap: wrap; row-gap: 9px; margin-top: 26px; }
  .ce-filters { margin-left: 0; }
  .ce-search { margin-left: 0; width: 100%; flex: 1 1 100%; }

  /* 会议卡:收紧间距与图标 */
  .ce-mcard { gap: 12px; padding: 14px; border-radius: 16px; }
  .ce-mico { width: 44px; height: 44px; border-radius: 13px; }
  .ce-mtitle { font-size: 15px; }

  /* 退出登录(危险卡):窄屏标题与按钮换行不挤压 */
  .ce-set-danger { flex-wrap: wrap; row-gap: 12px; }
}

/* ============ 时长套餐页(清爽风)============ */
.cp-page { max-width: 1180px; }
.cp-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 22px; }
.cp-sub { font-size: 13.5px; color: #64748B; margin: 8px 0 0; }
.cp-sub b { color: #3D6AD6; font-weight: 700; }
.cp-balance { display: flex; flex-direction: column; align-items: flex-end; gap: 1px;
  background: #F4F7FE; border: 1px solid #E3EAF7; border-radius: 12px; padding: 8px 16px; }
.cp-bal-label { font-size: 12px; color: #64748B; }
.cp-bal-val { font-size: 22px; font-weight: 800; color: #3D6AD6; letter-spacing: -.02em; line-height: 1.1; }
.cp-bal-val small { font-size: 13px; color: #94A3B8; font-weight: 600; }

.cp-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }

.cp-card { position: relative; display: flex; flex-direction: column;
  background: #fff; border: 1px solid #E8EBF1; border-radius: 16px; padding: 24px 22px;
  box-shadow: 0 1px 2px rgba(16,24,40,.03), 0 10px 26px -20px rgba(16,24,40,.2);
  opacity: 0; transform: translateY(14px); animation: cpRise .5s cubic-bezier(.22,.61,.36,1) forwards;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.cp-card:hover { transform: translateY(-4px); box-shadow: 0 6px 12px rgba(16,24,40,.05), 0 20px 40px -24px rgba(16,24,40,.3); }
@keyframes cpRise { to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .cp-card, .cp-entbar { animation: none; opacity: 1; transform: none; } }

/* 「推荐」是轻提示,不是选中态:柔和边框 + 柔光,不用硬描边/实心蓝 */
.cp-card.is-pop { border-color: #C9D8FA; background: linear-gradient(180deg, #F9FBFF 0%, #fff 36%);
  box-shadow: 0 1px 2px rgba(16,24,40,.03), 0 16px 36px -22px rgba(47,107,224,.3); }
.cp-card.is-pop:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -22px rgba(47,107,224,.38); }

.cp-badge { position: absolute; top: 18px; right: 18px; background: #EAF1FD; color: #2F62D6;
  font-size: 12px; font-weight: 700; padding: 3px 11px; border-radius: 999px; letter-spacing: .04em; }

.cp-ic { width: 44px; height: 44px; border-radius: 12px; background: #EFF3FB; color: #4470D0;
  display: grid; place-content: center; margin-bottom: 14px; }

.cp-name { font-size: 20px; font-weight: 700; color: #0F172A; line-height: 1.15; }
.cp-desc { font-size: 13px; color: #64748B; margin: 3px 0 18px; min-height: 17px; }

.cp-price { display: flex; align-items: baseline; color: #0F172A; }
.cp-cur { font-size: 19px; font-weight: 700; align-self: flex-start; margin-top: 7px; }
.cp-price b { font-size: 38px; font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.cp-unit { font-size: 13px; color: #94A3B8; margin-left: 6px; }
.cp-per { font-size: 13px; color: #4470D0; font-weight: 600; margin: 9px 0 18px; }

.cp-btn { width: 100%; height: 46px; border: 1px solid #D3D9E3; border-radius: 11px; background: #fff;
  color: #0F172A; font-size: 15px; font-weight: 600; cursor: pointer;
  transition: background .15s, border-color .15s, box-shadow .15s, transform .1s; }
.cp-btn:hover { border-color: #A9B4C6; background: #FAFBFD; }
.cp-btn:active { transform: translateY(1px); }
.cp-btn.is-pop { border: none; color: #fff; background: linear-gradient(180deg, #4C8DF5 0%, #2F6BE0 100%);
  box-shadow: 0 8px 18px -10px rgba(47,107,224,.5); }
.cp-btn.is-pop:hover { background: linear-gradient(180deg, #3f82f0 0%, #2861d6 100%); }

.cp-feats { margin-top: 20px; padding-top: 18px; border-top: 1px solid #EEF1F6;
  display: flex; flex-direction: column; gap: 11px; }
.cp-feats-h { font-size: 12px; font-weight: 700; color: #98A2B3; letter-spacing: .03em; }
.cp-ft { display: flex; align-items: flex-start; gap: 10px; font-size: 13.5px; color: #334155; line-height: 1.45; }
.cp-ft b { color: #0F172A; font-weight: 700; }
.cp-ck { flex: none; width: 18px; height: 18px; margin-top: 1px; border-radius: 999px;
  background: #EFF3FB; color: #4470D0; display: grid; place-content: center; }
.cp-ck svg { width: 11px; height: 11px; }

/* 企业 / 大额:窄横幅(第 4 档不凑成第 4 张卡,保留 3 卡居中结构)*/
.cp-entbar { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap;
  margin-top: 18px; padding: 18px 24px; background: #fff; border: 1px solid #E8EBF1; border-radius: 16px;
  box-shadow: 0 1px 2px rgba(16,24,40,.03), 0 10px 26px -24px rgba(16,24,40,.18);
  opacity: 0; transform: translateY(14px); animation: cpRise .5s cubic-bezier(.22,.61,.36,1) .26s forwards; }
.cp-entbar-main { display: flex; align-items: center; gap: 14px; }
.cp-entbar-ic { flex: none; width: 40px; height: 40px; border-radius: 11px; background: #EFF3FB; color: #4470D0; display: grid; place-content: center; }
.cp-entbar-name { font-size: 16px; font-weight: 700; color: #0F172A; display: flex; align-items: center; gap: 8px; }
.cp-entbar-tag { font-size: 11px; font-weight: 700; color: #64748B; background: #F1F4F9; border-radius: 999px; padding: 2px 8px; }
.cp-entbar-desc { font-size: 13px; color: #64748B; margin-top: 3px; }
.cp-entbar-buy { display: flex; align-items: center; gap: 18px; }
.cp-entbar-price { text-align: right; line-height: 1.25; }
.cp-entbar-amt { font-size: 24px; font-weight: 800; color: #0F172A; letter-spacing: -.02em; }
.cp-entbar-rate { display: block; font-size: 12px; color: #4470D0; font-weight: 600; margin-top: 2px; }
.cp-entbar-btn { width: auto; padding: 0 26px; }

.cp-note { margin-top: 26px; font-size: 13px; color: #475569; background: #F8FAFC;
  border: 1px solid #EEF1F6; border-radius: 12px; padding: 12px 16px; line-height: 1.7; }
.cp-ledger { margin-top: 26px; max-width: 560px; }
.cp-ledger-h { font-size: 13px; font-weight: 700; color: #64748B; margin-bottom: 10px; }
.cp-led-row { display: flex; align-items: center; gap: 10px; padding: 10px 14px; margin-bottom: 8px;
  background: #fff; border: 1px solid #EEF1F6; border-radius: 10px; font-size: 13.5px; }
.cp-led-note { flex: 1; color: #334155; }
.cp-led-min { font-weight: 700; font-variant-numeric: tabular-nums; }
.cp-led-min.pos { color: #16A34A; } .cp-led-min.neg { color: #DC2626; }
.cp-led-bal { color: #94A3B8; font-size: 12px; min-width: 64px; text-align: right; }
/* 平板 / 手机:3 列 → 单列 */
@media (max-width: 860px) {
  .cp-grid { grid-template-columns: 1fr; }
  .cp-head { align-items: flex-start; }
  .cp-balance { align-self: stretch; align-items: flex-start; }
  .cp-entbar-buy { width: 100%; justify-content: space-between; }
}

/* 顶栏余额胶囊 + 设置页余额卡 */
.ce-bal-chip { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 700; color: #2563EB; background: #EFF4FF; border: none;
  border-radius: 99px; padding: 6px 12px; cursor: pointer; font-variant-numeric: tabular-nums; transition: background .15s; }
.ce-bal-chip svg { flex: none; opacity: .85; }
.ce-bal-chip:hover { background: #E0EAFF; }
.ce-set-bal { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.ce-set-bal-val { font-size: 26px; font-weight: 800; color: #2563EB; letter-spacing: -.02em; }
.ce-set-bal-val small { font-size: 14px; color: #94A3B8; font-weight: 600; }
@media (max-width: 768px) { .ce-bal-chip { display: none; } }
