:root{--font-brand: "SimHei", "Microsoft YaHei", sans-serif;--font-ui: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;--primary: #2F6FBF;--primary-dark: #1E4F8F;--secondary: #2F6FBF;--accent: #5B9BD5;--accent-dark: #2F6FBF;--steel: #3C7FB8;--navy: #123A5C;--navy-2: #1E5B93;--sky: #4A98E8;--sky-2: #8FBFEA;--brass: #C6A15B;--brass-light: #E3C98F;--brass-text: #8A6A2F;--gold: #FFD770;--gold-light: #FFDF8E;--gold-text: #8A6A2F;--star: #D25D45;--success: #2E7D32;--success-dark: #1B5E20;--warning: #B7791F;--danger: #C0392B;--danger-dark: #922B21;--text: #1F2937;--text-light: #4A5A6B;--text-lighter: #5F6B7A;--state-success-bar: #2E7D5B;--state-success-text: #21624A;--state-warn-bar: #B7791F;--state-warn-text: #8A5A12;--state-danger-bar: #C0392B;--state-danger-text: #C0392B;--state-info-bar: #2563EB;--state-info-text: #1D4ED8;--state-muted-bar: #566878;--state-muted-text: #48586A;--state-zero-bar: #E8EDE9;--bg: #F4F8FC;--card-bg: #ffffff;--hover-bg: #F2F7FD;--border: #DCE7F3;--fade-light: #EAF2FB;--radius: 12px;--card-radius: 16px;--shadow: 0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.07);--shadow-lg: 0 12px 32px rgba(15,23,42,.12);--card-shadow: 0 1px 2px rgba(15,23,42,.04), 0 4px 12px rgba(15,23,42,.05);--card-hi: rgba(255,255,255,.95);--card-lo: rgba(15,23,42,.07);--header-start: #2F6FBF;--header-fade: linear-gradient(180deg,#2F6FBF 0%,#F7FAFD 100%);--header-shadow: 0 2px 18px rgba(18,58,92,.22);--sheen-bottom: linear-gradient(0deg,#2F6FBF 0%,#F7FAFD 100%);--footer-bg: var(--sheen-bottom);--footer-text: #FFFFFF;--footer-muted: #DCE9F7;--footer-link: #FFFFFF;--primary-rgb: 47,111,191;--accent-rgb: 91,155,213;--success-rgb: 46,125,50;--danger-rgb: 192,57,43;--warning-rgb: 183,121,31;--gold-rgb: 255,215,112;--text-rgb: 31,41,55;--bg-rgb: 244,248,252;--bg-top: #F7FAFD;--bg-bottom: #F7FAFD;--btn-min-height: 44px;--input-font-size: 16px;--ease-swift: cubic-bezier(.16, 1, .3, 1);--ease-expand: cubic-bezier(.19, 1, .22, 1);--ease-enter: cubic-bezier(.22, 1, .36, 1);--ease-snap: cubic-bezier(.32, .72, 0, 1);--ease-overshoot: cubic-bezier(.34, 1.3, .64, 1);--ease-pop: cubic-bezier(.34, 1.56, .64, 1);--ease-pulse: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur-snap: .12s;--dur-base: .2s;--dur-sheet: .3s;--dur-slow: .45s;--btn-spring: linear(0, .2459, .6526, .9468, 1.0764, 1.0915, 1.0585, 1.0219, .9993, .9914, .9921, .9957, .9988, 1.0004, 1)}html[data-theme=green]{--primary: #2E7D32;--primary-dark: #1B5E20;--secondary: #2E7D32;--accent: #66BB6A;--accent-dark: #2E7D32;--steel: #4C9468;--navy: #123322;--navy-2: #1B5E20;--sky: #7FBF8E;--sky-2: #A8D4B4;--bg-top: #F8FBF9;--bg: #F6FAF7;--bg-bottom: #F8FBF9;--border: #DBE7DD;--hover-bg: #F4FAF5;--fade-light: #EEF7F0;--text: #1F2937;--text-light: #4E6255;--text-lighter: #5F6B62;--primary-rgb: 46,125,50;--accent-rgb: 102,187,106;--bg-rgb: 246,250,247;--header-start: #2E7D32;--header-fade: linear-gradient(180deg,#2E7D32 0%,#F8FBF9 100%);--header-shadow: 0 2px 18px rgba(18,51,34,.22);--sheen-bottom: linear-gradient(0deg,#2E7D32 0%,#F8FBF9 100%);--footer-text: #FFFFFF;--footer-muted: #DCEFE1;--footer-link: #FFFFFF}*{box-sizing:border-box}html,body{margin:0;padding:0}html{background-color:var(--bg-bottom)}html.theme-anim{transition:background-color .28s ease,color .28s ease}body{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:linear-gradient(180deg,var(--bg-top),var(--bg-bottom));color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}a{color:var(--primary)}.brand-name{margin:0;font-family:var(--font-brand);font-size:20px;line-height:1.15;font-weight:800;letter-spacing:.02em;color:#fff;-webkit-text-fill-color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.3);white-space:nowrap}.brand-tag{font-size:11.5px;line-height:1.4;letter-spacing:.1em;color:#ffffffd1;margin-top:4px;text-shadow:0 1px 2px rgba(0,0,0,.24)}.brand-lockup img,.app-header-left img{width:44px;height:44px;border-radius:12px;object-fit:cover;flex:none;background:transparent;box-shadow:0 2px 10px #0003}.brand-lockup-wrap{position:relative;display:inline-flex;align-items:center;min-width:0}.brand-audio-btn{position:absolute;left:31px;bottom:-3px;width:24px;height:24px;padding:0;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:var(--primary-dark);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;box-shadow:0 2px 6px #0000004d;transition:transform .15s ease,background .15s ease;-webkit-appearance:none;appearance:none}.brand-audio-btn:hover{transform:scale(1.08)}.brand-audio-btn .svg-ic{width:13px;height:13px}.brand-audio-btn.playing{background:gold;border-color:gold;color:#4a3600;animation:brandAudioPulse 1.6s ease-in-out infinite}@keyframes brandAudioPulse{0%,to{box-shadow:0 2px 6px #0000004d}50%{box-shadow:0 0 0 4px #ffd70059}}@media (max-width: 640px){.brand-audio-btn{left:28px;width:22px;height:22px}.brand-audio-btn .svg-ic{width:12px;height:12px}}@media (prefers-reduced-motion: reduce){.brand-audio-btn{transition:none}.brand-audio-btn.playing{animation:none}}@media (max-width: 640px){.brand-name{font-size:17px}.brand-lockup img,.app-header-left img{width:40px;height:40px}.brand-tag{display:none}}@media (max-width: 360px){.app-header .tb-page{display:none}}.svg-ic{width:1em;height:1em;display:inline-block;vertical-align:-.125em;flex-shrink:0}:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px;border-radius:4px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1d4ed8;outline-offset:1px}.head :focus-visible,.hero :focus-visible,.cta :focus-visible,.foot :focus-visible{outline-color:#ffd76a}.tb-dot{display:none;width:8px;height:8px;border-radius:50%;background:var(--danger);margin-left:6px;vertical-align:middle;flex:0 0 auto}.tb-dot.on{display:inline-block}.home-chat-entry{display:none;align-items:center;gap:6px;margin:2px 0 0;font-size:13px;color:var(--navy-2);text-decoration:none;font-weight:600}.home-chat-entry.on{display:inline-flex}.home-chat-entry .hce-go{color:var(--text-lighter);font-weight:500;font-size:12px}.field-error{color:var(--danger);font-size:12px;margin:6px 0 0;font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;z-index:100000;background:#fff;color:var(--primary-dark);padding:10px 16px;border-radius:0 0 8px;font-weight:600;box-shadow:var(--shadow)}.skip-link:focus{left:0}[aria-busy=true]{cursor:progress}input.invalid,textarea.invalid,select.invalid{border-color:var(--danger)}input.invalid:focus{box-shadow:0 0 0 3px rgba(var(--danger-rgb),.15)}.page{flex:1 0 auto;width:100%;max-width:960px;margin:0 auto;padding:18px 16px 48px}.page.wide{max-width:1200px}.app-footer{flex-shrink:0}.card{background:var(--card-bg);border-radius:var(--card-radius);padding:20px;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.03);margin-bottom:16px}.card h2,.card h3{margin-top:0}.section-title{font-size:16px;font-weight:800;margin:24px 0 14px;display:flex;align-items:center;gap:8px;color:var(--text)}.section-title:before{content:"";width:4px;height:17px;border-radius:2px;background:linear-gradient(180deg,var(--primary),var(--accent))}.grid{display:grid;gap:16px}.grid.cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{background:var(--card-bg);border-radius:var(--card-radius);padding:20px 16px;box-shadow:var(--card-shadow);border:1px solid var(--border);text-align:center;position:relative;overflow:hidden}.stat-card:after{display:none}.stat-card .num{font-size:30px;font-weight:800;color:var(--primary)}.stat-card .label{font-size:13px;color:var(--text-light);margin-top:4px;font-weight:500}.stat-card .stat-hint{font-size:12px;color:var(--text-lighter);margin-top:4px;line-height:1.5}.stat-card[data-zero="1"] .num{color:var(--text-lighter);font-weight:600}.empty>span{display:block;margin-top:6px;font-size:12.5px;color:var(--text-lighter);line-height:1.6}.empty .empty-act{margin-top:12px}.kpi-strip{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.kpi{flex:1 1 110px;min-width:96px;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:10px 14px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;gap:2px}.kpi-num{font-size:24px;font-weight:800;line-height:1.1;color:var(--primary)}.kpi-label{font-size:12px;color:var(--text-light)}.idbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--card-bg);border:1px solid rgba(0,0,0,.04);border-radius:12px;padding:10px 14px;box-shadow:var(--card-shadow);margin-bottom:14px;font-size:13px}.idbar .orgcode{font-size:18px;letter-spacing:2px;color:var(--primary)}.idbar .muted{color:var(--text-light)}.idbar .link{color:var(--primary);text-decoration:none}.idbar #dShowcaseUrlWrap,.idbar #dInviteWrap{flex-wrap:wrap;min-width:0;max-width:100%}.idbar #dShowcaseUrlWrap .link{word-break:break-all;overflow-wrap:anywhere}.dash-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 820px){.dash-cols{grid-template-columns:1fr}}.dash-cols>*{min-width:0}.grid>*{min-width:0}.card-h{margin:0 0 12px;font-size:15px}.metric-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed #eef}.metric-row:last-of-type{border-bottom:0}.metric-name{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-val{font-size:12px;color:var(--text-light);white-space:nowrap}.metric-bar{flex:0 0 84px;height:8px;background:var(--hover-bg);border-radius:99px;overflow:hidden}.metric-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent))}.metric-sum{margin-top:8px;font-size:12px;color:var(--text-light)}.muted{color:var(--text-light)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.info-item{background:#f8fafc;border:1px solid #eef1f0;border-radius:10px;padding:10px 12px}.info-item .k{font-size:12px;color:#999;margin-bottom:2px}.info-item .v{font-size:14px;color:var(--text);font-weight:600;word-break:break-all}.module-card{position:relative;background:var(--card-bg);border-radius:var(--card-radius);overflow:hidden;cursor:pointer;box-shadow:var(--card-shadow);border:1px solid rgba(0,0,0,.03);transition:transform .28s var(--ease-overshoot),box-shadow .28s var(--ease-enter);display:flex;flex-direction:column;transform-origin:50% 50%}.module-card:hover{transform:translateY(-5px);box-shadow:0 12px 28px #0000001a}.module-card:active{transform:translateY(-1px) scale(.985);transition:transform var(--dur-fast) ease-out}.module-card[aria-disabled=true]:active{transform:none}.module-card .mc-top{height:6px;background:linear-gradient(135deg,var(--secondary),var(--primary))}.module-card .mc-body{padding:18px 18px 16px;flex:1}.module-card .mc-icon{width:50px;height:50px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:27px;margin-bottom:12px;box-shadow:0 4px 12px #00000014}.module-card h3{margin:0 0 4px;font-size:16px;color:var(--text)}.module-card p{margin:0;color:var(--text-light);font-size:13px;line-height:1.6}.module-card .mc-footer{margin-top:12px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 10px}.module-card .mc-tag{font-size:11px;color:var(--secondary);background:rgba(var(--accent-rgb),.1);padding:2px 10px;border-radius:12px;font-weight:600}.module-card .mc-enter{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border-radius:8px;background:var(--primary);color:#fff;font-size:12px;font-weight:700;white-space:nowrap;flex:none;margin-left:auto;transition:background .2s,color .2s,border-color .2s}.module-card:hover .mc-enter{background:var(--primary-dark)}.module-card[aria-disabled=true] .mc-enter,.module-card .mc-enter.disabled{background:var(--fade-light);color:var(--text-light);border:1px solid var(--border);cursor:default}.module-card[aria-disabled=true]:hover .mc-enter{background:var(--hover-bg)}@media (prefers-reduced-motion: reduce){.module-card:hover,.module-card:active{transform:none}}a.module-card{color:inherit;text-decoration:none}[role=button]:not(button):not(a){cursor:pointer}.ic-green{background:linear-gradient(135deg,#2e7d5b2e,#2e7d5b14)}.ic-blue{background:linear-gradient(135deg,#3b82f62e,#3b82f614)}.ic-gold{background:linear-gradient(135deg,#f39c1233,#f39c121a)}.ic-red{background:linear-gradient(135deg,#b4453c29,#b4453c12)}.ic-purple{background:linear-gradient(135deg,#8b5cf62e,#8b5cf614)}.btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:var(--btn-min-height);padding:8px 18px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;font-family:inherit;transition:transform .26s var(--ease-pop),box-shadow .22s var(--ease-enter),background-color .18s var(--ease-swift),border-color .18s var(--ease-swift),color .18s var(--ease-swift),opacity .18s var(--ease-swift);position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn:active{transform:scale(.965);transition-duration:70ms}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(var(--primary-rgb),.35)}.btn.success{background:radial-gradient(circle at top left,rgba(255,255,255,.22),transparent 42%),linear-gradient(135deg,var(--success),var(--success-dark));color:#fff}.btn.success:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(var(--success-rgb),.3)}.btn.gray{background:#f0f1f3;color:#555}.btn.gray:hover{background:var(--hover-bg);filter:brightness(.96)}.btn.ghost,.btn-ghost{background:#fff;color:var(--text);border:1.5px solid var(--border);box-shadow:0 1px 2px #0f172a0a}.btn.ghost:hover,.btn-ghost:hover{background:var(--hover-bg);border-color:rgba(var(--primary-rgb),.38);color:var(--primary-dark)}.btn.ghost:active,.btn-ghost:active{background:var(--fade-light)}.btn.primary:active,.btn.success:active{transform:scale(.97);box-shadow:0 3px 10px rgba(var(--primary-rgb),.22)}.btn.danger{background:#fdeceb;color:var(--danger);border:1px solid #f5c2c0}.btn.danger:hover{background:#fbdedb}.btn.sm{min-height:32px;padding:5px 13px;font-size:13px;border-radius:8px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{transform:none;box-shadow:none}input,select,textarea{width:100%;padding:11px 13px;border:2px solid var(--border);border-radius:10px;font-size:var(--input-font-size);background:var(--card-bg);color:var(--text);outline:none;font-family:inherit;transition:all .25s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}label{display:block;font-size:13px;color:var(--text-light);margin:10px 0 5px;font-weight:500}.form-inline{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.form-inline>div{flex:1;min-width:140px}.table-wrap{overflow-x:auto;border-radius:12px}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:var(--card-shadow)}th,td{padding:12px 13px;text-align:left;font-size:13px;border-bottom:1px solid var(--border);vertical-align:middle}th{background:linear-gradient(180deg,var(--bg-top),var(--hover-bg));color:var(--primary-dark);font-weight:700;white-space:nowrap;font-size:12px;letter-spacing:.5px}tr:last-child td{border-bottom:none}tr:hover td{background:#fafcfa}.badge{display:inline-block;padding:3px 11px;border-radius:99px;font-size:12px;font-weight:600;border:1px solid transparent}.badge.green{background:rgba(var(--success-rgb),.12);color:var(--success-dark);border-color:rgba(var(--success-rgb),.22)}.badge.red{background:rgba(var(--danger-rgb),.1);color:var(--danger);border-color:rgba(var(--danger-rgb),.2)}.badge.gray{background:#eef0f2;color:#6b7280;border-color:#e6e9eb}.badge.orange{background:rgba(var(--warning-rgb),.12);color:#8a5a12;border-color:rgba(var(--warning-rgb),.2)}.bulk-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 14px;margin-bottom:10px;border-radius:var(--radius);background:rgba(var(--primary-rgb),.06);border:1px solid rgba(var(--primary-rgb),.18)}.bulk-bar>span:first-child{font-size:13px;font-weight:600;color:var(--primary-dark);margin-right:4px}.bulk-bar[hidden]{display:none}.table-wrap td>input[type=checkbox],.table-wrap th>input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.table-wrap table.grid-dense{min-width:1040px}.table-wrap table.grid-dense td{white-space:nowrap}.table-wrap table.grid-dense td.metrics{white-space:normal;min-width:200px}td.metrics .m{display:inline-block;margin-right:9px;color:#5b6b5e;font-size:12px}td.metrics .m b{color:var(--primary-dark);font-size:13px}.grid-dense td.name{white-space:normal}.grid-dense td.name .sub{color:#9aa5a0;font-size:11.5px;margin-top:2px}.table-wrap table.sticky-actions{overflow:visible}.table-wrap table.sticky-actions th.act,.table-wrap table.sticky-actions td.act{position:sticky;right:0;z-index:2;background:var(--card-bg);box-shadow:-8px 0 10px -8px #00000029}.table-wrap table.sticky-actions th.act{background:linear-gradient(180deg,var(--bg-top),var(--hover-bg))}.table-wrap table.sticky-actions tr:hover td.act{background:#fafcfa}.table-wrap table.sticky-actions td.act{white-space:nowrap}.table-wrap table.sticky-actions td.act .btn{padding:4px 8px;font-size:12px}.empty{text-align:center;color:var(--text-light);padding:30px;font-size:14px}.skel{padding:8px 0}.skel-row{height:14px;border-radius:6px;margin:10px 0;background:linear-gradient(105deg,var(--hover-bg) 35%,#DCE6EF 50%,var(--hover-bg) 65%);background-size:200% 100%;animation:skel-shine 2s cubic-bezier(.4,0,.2,1) infinite}.skel-row:nth-child(2){width:88%}.skel-row:nth-child(3){width:62%}@keyframes skel-shine{0%{background-position:100% 0}to{background-position:-100% 0}}.u-scroll-fade{--fade-top: 0px;--fade-bottom: 0px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),transparent 100%)}.state-error{color:var(--danger-dark, #a03a2c)}.state-error .btn{margin-top:10px;min-height:44px;padding:10px 18px}.field-error{color:#b4453c;font-size:12px;margin-top:4px;line-height:1.5}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#b4453c!important}@media (prefers-reduced-motion: reduce){.skel-row{animation:none;background:var(--hover-bg)}}.toplink{color:#fff;text-decoration:none;font-size:13px;opacity:.9;margin-right:12px}.pagination{display:flex;justify-content:center;gap:6px;margin-top:14px;flex-wrap:wrap}.pagination button{min-width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer;font-weight:600;transition:all .2s;color:var(--text)}.pagination button:hover{border-color:var(--primary);color:var(--primary)}.pagination button.active{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;border-color:transparent}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body{background:#fff}.no-print,.topbar-no-print,nav,header,button,.btn{display:none!important}.page{padding:0}.card{box-shadow:none;border:1px solid #ddd}body>div:first-child{display:none!important}}.sec-sub{font-size:13px;line-height:1.65;color:var(--text-light);margin:-4px 0 14px 2px;max-width:60ch}.sub-title{font-size:13.5px;font-weight:600;color:var(--text-light);margin:20px 0 10px;padding-left:10px;border-left:3px solid var(--primary);line-height:1.4}.module-card .mc-top{height:3px;background:var(--primary);opacity:.22}.module-card:hover .mc-top{opacity:.5}.module-card .mc-body{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center}.module-card .mc-icon{grid-column:1;grid-row:1;margin:0}.module-card h3{grid-column:2;grid-row:1;margin:0;min-width:0}.module-card p{grid-column:1/-1;grid-row:2;margin-top:10px}.module-card .mc-footer{grid-column:1/-1;grid-row:3;margin-top:12px}.skeleton-card .mc-body{display:block}.module-card.wide{grid-column:1 / -1}.module-card.wide .mc-body{padding:18px 20px}.module-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}@media (max-width: 640px){.sec-sub{font-size:12.5px}.module-card p{min-height:auto}input,select,textarea{font-size:16px!important}}.stat-row{margin-bottom:12px}.stat-inline{padding:9px 13px;margin-bottom:6px;border-radius:var(--radius);background:rgba(var(--primary-rgb),.05);border:1px solid rgba(var(--primary-rgb),.14);font-size:13px;color:var(--primary-dark)}.stat-inline b{color:var(--primary);font-size:15px}code.var{background:rgba(var(--primary-rgb),.08);color:var(--primary-dark);border:1px solid rgba(var(--primary-rgb),.18);border-radius:5px;padding:1px 6px;font-size:12.5px;font-family:ui-monospace,Consolas,monospace}.actions-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.preview-box{margin-top:14px;border:1px solid var(--border);border-radius:var(--radius);background:#f8fafc;padding:14px 16px;max-height:380px;overflow:auto}.preview-head{font-size:12px;color:#9aa5a0;margin-bottom:8px}.preview-subj{font-weight:700;font-size:15px;margin-bottom:10px;color:var(--primary-dark)}.preview-body{font-size:14px;line-height:1.8;white-space:pre-wrap}#_ux_progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100000;pointer-events:none;opacity:0;transition:opacity .25s ease;overflow:hidden}#_ux_progress.on{opacity:1}#_ux_progress:before{content:"";position:absolute;top:0;left:0;height:100%;width:36%;background:linear-gradient(90deg,transparent,var(--primary),var(--accent),transparent);border-radius:0 3px 3px 0;transform:translate(-120%);animation:_ux_slide 1.05s cubic-bezier(.4,.1,.3,1) infinite}#_ux_progress.done:before{animation:none;width:100%;transform:none;border-radius:0;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .17s ease}@keyframes _ux_slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.btn.is-busy,button.is-busy,input.is-busy,[role=button].is-busy{cursor:progress;opacity:.82}.btn.is-busy:after,button.is-busy:after,[role=button].is-busy:after{content:"";display:inline-block;width:13px;height:13px;margin-left:8px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;vertical-align:-2px;animation:_ux_spin .6s cubic-bezier(.4,0,.2,1) infinite}@keyframes _ux_spin{to{transform:rotate(360deg)}}@keyframes _ux_page_in{0%{opacity:0}to{opacity:1}}body{animation:_ux_page_in .22s ease}#_uikit_modal_wrap{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:_uikit_backdrop_in .18s var(--ease-enter) both}#_uikit_modal_box{transform-origin:50% 50%;animation:_uikit_dialog_in .22s var(--ease-pop) both;max-height:86vh;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#_uikit_toast>*{animation:_uikit_toast_in .18s var(--ease-enter)}@keyframes _uikit_backdrop_in{0%{opacity:0}to{opacity:1}}@keyframes _uikit_dialog_in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes _uikit_toast_in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){#_ux_progress:before{animation:none!important;width:100%;transform:none;opacity:.65}#_ux_progress.done:before{opacity:1}.btn.is-busy:after,button.is-busy:after,[role=button].is-busy:after{animation:none!important}#_uikit_modal_wrap,#_uikit_modal_box,#_uikit_toast>*{animation:none!important}}.module-card .mc-icon{background:var(--hover-bg);color:var(--steel);box-shadow:none}@media (max-width:640px){.module-card .mc-enter{width:100%;margin-left:0;order:9;min-height:38px}}.module-card{position:relative}.module-card .mc-top{display:none}.module-card .mc-icon{background:rgba(var(--primary-rgb),.08);color:var(--primary);box-shadow:none}.module-card .mc-tag{background:rgba(var(--primary-rgb),.08);color:var(--primary-dark)}.module-card.featured{background:rgba(var(--primary-rgb),.055);border-color:rgba(var(--primary-rgb),.22);border-left:4px solid var(--primary);color:var(--text);box-shadow:0 10px 28px rgba(var(--primary-rgb),.1)}.module-card.featured:hover{box-shadow:0 16px 34px rgba(var(--primary-rgb),.16)}.module-card.featured .mc-icon{background:#fff;color:var(--primary)}.module-card.featured h3{color:var(--text)}.module-card.featured p{color:var(--text-light)}.module-card.featured .mc-tag{background:#fff;color:var(--primary-dark)}.module-card.featured .mc-footer{border-top-color:rgba(var(--primary-rgb),.14)}.module-card.featured .mc-enter{background:var(--primary);color:#fff}.module-card.featured:hover .mc-enter{background:var(--primary-dark)}.module-card.featured:after{content:"";position:absolute;right:18px;top:18px;width:6px;height:6px;border-radius:50%;background:var(--star)}.module-card:active{transform:translateY(0) scale(.995);box-shadow:var(--card-shadow)}.module-card .mc-enter:active{transform:scale(.97)}.badge.gray{background:var(--fade-light);color:var(--text-light);border-color:var(--border)}html{scroll-padding-top:calc(var(--app-header-h, 57px) + 64px)}.org-admin{--focus-ring: #1d4ed8;--org-nav-top: var(--app-header-h, 57px);--safe-bottom: env(safe-area-inset-bottom, 0px)}.org-admin button,.org-admin .btn,.org-admin [role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.org-admin .form-inline.org-bulk>.ob-note{flex:1 1 100%;min-width:0;white-space:normal}.org-admin .form-inline.org-bulk>.ob-result{min-width:0}.org-admin .tabbar{width:max-content;max-width:100%;background:transparent;transition:box-shadow .2s var(--ease-enter),background-color .2s var(--ease-swift)}.org-admin .tabbar.is-single{display:none}.org-admin .tabbar button,.org-admin .org-nav-groups button,.org-admin .subtabbar button{transition:background-color .18s var(--ease-swift),color .18s var(--ease-swift),transform .12s var(--ease-snap),box-shadow .18s var(--ease-swift)}.org-admin .tabbar button:active,.org-admin .org-nav-groups button:active,.org-admin .subtabbar--seg button:active{transform:scale(.96)}.org-admin .tabbar button.active{box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.16)}.org-admin .org-nav-indicator,.org-admin .subtab-indicator{will-change:transform,width}.org-admin .org-nav-context{font-weight:500}.org-admin #tab-settings.active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"info info" "profile pwd" "selfbank selfbank" "sessions sessions";gap:14px;align-items:start}.org-admin #tab-settings>.settings-card{max-width:none!important;margin-bottom:0}.org-admin .settings-info{grid-area:info}.org-admin .info-item{background:var(--bg-top);border-color:var(--border)}.org-admin .settings-profile{grid-area:profile}.org-admin .settings-pwd{grid-area:pwd}.org-admin .settings-selfbank{grid-area:selfbank}.org-admin .settings-sessions{grid-area:sessions}.org-admin #orgInfoGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.org-admin .settings-profile .btn,.org-admin .settings-pwd .btn{width:100%}.org-admin .settings-pwd .btn{margin-top:6px}@media (max-width: 900px){.org-admin #tab-settings.active{grid-template-columns:minmax(0,1fr);grid-template-areas:"info" "profile" "pwd" "selfbank" "sessions"}}.org-admin .settings-selfbank input[type=checkbox]{width:16px;height:16px;min-width:16px;min-height:16px;flex:0 0 16px;padding:0;margin:0;border:0;border-radius:4px;box-shadow:none;background:transparent;accent-color:var(--primary)}.org-admin .settings-selfbank label{display:flex;align-items:center;gap:8px;margin:0;text-align:left;font-weight:600}.org-admin .settings-selfbank #orgSelfBankEnabled{cursor:pointer}.org-admin .settings-selfbank #orgSelfBankList label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-weight:400;cursor:pointer}.org-admin .settings-selfbank #orgSelfBankList label:hover{background:var(--hover-bg)}.org-admin .settings-selfbank #orgSelfBankList label>span{flex:1;min-width:0;text-align:left}.org-admin .settings-selfbank #orgSelfBankList label b{display:inline;font-weight:600}@media (hover: hover) and (pointer: fine){.org-admin .tabbar button:not(.active):hover{background:rgba(var(--primary-rgb),.07);color:var(--primary-dark)}.org-admin .org-nav-groups button:not(.active):hover{background:#ffffff9e;color:var(--primary-dark)}.org-admin .subtabbar--seg button:not(.active):hover{background:#ffffff94;color:var(--primary-dark)}}.org-admin .org-student-actions summary{position:relative;padding:0 32px 0 6px;border-radius:8px;transition:background-color .18s var(--ease-swift),color .18s var(--ease-swift)}.org-admin .org-student-actions summary::-webkit-details-marker{display:none}.org-admin .org-student-actions summary:after{content:"";position:absolute;right:8px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s var(--ease-swift);opacity:.72}.org-admin .org-student-actions[open]>summary:after{margin-top:-2px;transform:rotate(-135deg)}.org-admin .org-student-actions summary:hover{background:rgba(var(--primary-rgb),.055)}.org-admin label{font-weight:600}.org-admin input:not([type=checkbox]):not([type=radio]):not(:disabled):hover,.org-admin select:not(:disabled):hover,.org-admin textarea:not(:disabled):hover{border-color:#bfd5c3}.org-admin input:not(:disabled):focus,.org-admin select:not(:disabled):focus,.org-admin textarea:not(:disabled):focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.16)}.org-admin input::placeholder,.org-admin textarea::placeholder{color:#5f6b62;opacity:1}.org-admin input:disabled,.org-admin select:disabled,.org-admin textarea:disabled{background:#f3f6f3;color:var(--text-lighter);cursor:not-allowed}.org-admin input[aria-invalid=true]:focus,.org-admin select[aria-invalid=true]:focus,.org-admin textarea[aria-invalid=true]:focus{border-color:var(--danger);box-shadow:0 0 0 3px rgba(var(--danger-rgb),.16)}.org-admin select:not([multiple]){-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234E6255' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:14px!important;padding-right:36px!important}.org-admin input[type=file]{padding:8px 10px;border-style:dashed;background:var(--bg-top);cursor:pointer}.org-admin input[type=file]::file-selector-button{min-height:34px;margin:0 10px 0 0;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--primary-dark);font:inherit;font-size:var(--input-font-size);font-weight:600;cursor:pointer;transition:background-color .18s,border-color .18s}.org-admin input[type=file]::file-selector-button:hover{background:var(--hover-bg);border-color:rgba(var(--primary-rgb),.38)}.org-admin input[type=color]{padding:4px;cursor:pointer}.org-admin input[type=checkbox],.org-admin input[type=radio]{accent-color:var(--primary);cursor:pointer}.pw-field{position:relative;display:block;width:100%;min-width:0}.pw-field>input{width:100%;padding-right:50px!important}.pw-toggle{position:absolute;top:50%;right:3px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text-light);cursor:pointer;transition:background-color .16s,color .16s,transform .12s}.pw-toggle:hover{background:var(--hover-bg);color:var(--primary-dark)}.pw-toggle:active{transform:translateY(-50%) scale(.94)}.pw-toggle svg{width:20px;height:20px}.org-admin .table-wrap{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(var(--primary-rgb),.32) transparent}.org-admin .table-wrap::-webkit-scrollbar{height:8px;width:8px}.org-admin .table-wrap::-webkit-scrollbar-thumb{background:rgba(var(--primary-rgb),.28);border-radius:99px}.org-admin .table-wrap::-webkit-scrollbar-track{background:transparent}.org-admin .table-wrap table{transition:box-shadow .2s var(--ease-enter)}.org-admin tbody tr{transition:background-color .15s var(--ease-swift)}.narrow-only{display:none}@media (max-width: 640px){.narrow-only{display:inline-flex}.org-admin .page{padding:12px 12px calc(34px + var(--safe-bottom))}.org-admin .card{padding:16px 14px;border-radius:14px;margin-bottom:12px}.org-admin .card-h{font-size:15px}.org-admin .org-student-actions summary{min-height:48px}.org-admin #tab-students.active>.card,.org-admin #tab-dash.active>.card{min-width:0}.org-admin #tab-students .table-wrap,.org-admin .org-bulk{min-width:0;max-width:100%}.org-admin .org-bulk>*{min-width:0}.org-admin .tabbar{margin:10px 0;padding:6px;gap:4px;border-radius:14px}.org-admin .tabbar button{padding:8px 12px;font-size:13.5px}.org-admin .org-nav-groups{margin-top:10px}.org-admin .org-nav-context{margin-bottom:4px}.org-admin .tb-page{display:none}.org-admin .brand-name{max-width:calc(100vw - 190px)!important}.org-admin .form-inline{gap:10px}.org-admin .form-inline>.btn,.org-admin .form-inline>a.btn{flex:1 1 100%;width:100%}.org-admin .mini-form .f label{font-size:12.5px}.org-admin .btn{min-height:44px}.org-admin .btn.sm{min-height:42px;padding:8px 13px;font-size:13px}.org-admin .btn-ghost,.org-admin #saClass,.org-admin #saStudent,.org-admin #saItem,.org-admin #saScore,.org-admin #saDate,.org-admin #dClass,.org-admin #dDate,.org-admin #dTitle,.org-admin #dNewItem,.org-admin #dMediaUrl,.org-admin #dMediaCap{min-height:44px}.org-admin #brandPreview{height:58vh!important;min-height:300px!important}.org-admin .brand-grid{grid-template-columns:1fr!important}.org-admin .brand-preview-card{min-width:0!important;position:static!important}.org-admin #orgInfoGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.org-admin #orgInfoGrid>:last-child:nth-child(odd){grid-column:1 / -1}.org-admin .org-form-actions{flex:1 1 100%!important}.org-admin .org-form-actions .btn{width:100%}.org-admin #cardGenBox>div:first-child>div:first-child{flex:1.5 1 200px!important;min-width:0!important}.org-admin #cardGenBox>div:first-child>div:nth-child(2){flex:1 1 100px!important;min-width:0!important}.org-admin #genTotal span{display:inline-block}.org-admin .form-inline.org-bulk>.ob-count{flex:1 1 auto}.org-admin .form-inline.org-bulk>.ob-select-all{flex:0 0 auto}.org-admin .form-inline.org-bulk>.ob-select-all .btn{width:auto;min-width:0;padding-left:16px;padding-right:16px}.org-admin .form-inline.org-bulk>.ob-sel{flex:1 1 100%}.org-admin #dStuBody td select,.org-admin #dStuBody td input{min-height:44px!important}.org-admin #dStuBody td button[aria-pressed]{min-width:44px!important;min-height:44px!important}table.table-cards{display:block;width:100%;min-width:0!important;background:transparent;box-shadow:none;border-radius:0;overflow:visible}table.table-cards thead{display:none}table.table-cards tbody{display:block}table.table-cards tr{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px 12px;margin:0 0 10px;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow)}table.table-cards tr:last-child{margin-bottom:0}table.table-cards tr:hover td{background:transparent}table.table-cards td{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:4px 0;border:0;font-size:13px;line-height:1.45;white-space:normal;word-break:break-word}table.table-cards td:before{content:attr(data-label);font-size:11px;line-height:1.2;font-weight:600;color:var(--text-lighter);white-space:nowrap}table.table-cards td.wide{grid-column:1 / -1}table.table-cards td[data-label=操作]{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;padding-top:10px;border-top:1px dashed var(--border)}table.table-cards td[data-label=操作]:before{display:none}table.table-cards td[data-label=操作] .btn{flex:1 1 auto;min-height:44px}table.table-cards tr>td[colspan]{grid-column:1 / -1;display:block;text-align:center}table.table-cards tr>td[colspan]:before{display:none}.org-admin #studentsTable td:first-child{position:absolute;top:8px;right:6px;display:block;padding:8px;z-index:1}.org-admin #studentsTable td:first-child:before{display:none}.org-admin #studentsTable td:first-child input{width:22px;height:22px}.org-admin #studentsTable td:nth-child(2){padding-right:38px;font-size:15px;font-weight:700}.org-admin #studentsTable td:nth-child(3){font-size:15px;font-weight:600}.org-admin #studentsTable td[data-label=做题权限] .badge{white-space:nowrap}.org-admin .ob-select-all{display:inline-flex}}@media (min-width: 641px){.org-admin .ob-select-all{display:none}}@media (max-width: 640px){#_uikit_modal_wrap{align-items:flex-end!important;padding:0!important}#_uikit_modal_box{width:100%!important;max-width:none!important;max-height:90dvh!important;padding:18px 16px calc(18px + env(safe-area-inset-bottom,0px))!important;border-radius:20px 20px 0 0!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;animation:_uikit_sheet_in .26s var(--ease-enter) both!important}#_uikit_modal_box:before{content:"";display:block;width:40px;height:4px;margin:-6px auto 12px;border-radius:2px;background:#d7dee3}#_uikit_toast{top:calc(10px + env(safe-area-inset-top,0px))!important;bottom:auto!important;left:0!important;right:0!important;transform:none!important;width:100%;padding:0 12px;box-sizing:border-box}#_uikit_toast>*{max-width:100%!important;width:100%;text-align:center}.pw-toggle{width:44px;height:44px}}@keyframes _uikit_sheet_in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}html.u-modal-open,html.u-modal-open body{overflow:hidden!important}@media (prefers-reduced-motion: reduce){.org-admin .tabbar button:active,.org-admin .org-nav-groups button:active,.org-admin .subtabbar--seg button:active,.pw-toggle:active{transform:none}.org-admin .org-student-actions summary:after{transition:none}}.card{border:1px solid var(--card-lo);border-top-color:var(--card-hi);border-left-color:var(--card-hi)}.metric b,.m b,.stat b,.hero-countdown b,.total-score,.score-val,.cd-unit,.mc-last,.nm-item b,.rc-body .total-score{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.btn{transition:transform .12s var(--ease-snap),box-shadow .2s var(--ease-enter),background-color .18s ease}.btn:active,.cat-tab:active{transform:scale(.97)}@media (prefers-reduced-motion: reduce){.btn:active,.cat-tab:active,.module-card:active{transform:none}}.module-card.featured .mc-body{padding:20px 20px 18px}.module-card.featured .mc-icon{width:58px;height:58px;border-radius:15px;font-size:31px}.module-card.featured h3{font-size:17.5px}.app-header.is-scrolled{box-shadow:var(--header-shadow),0 8px 22px #0f172a1f}.disclaimer{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:8px 13px;margin:16px 0 0;background:var(--hover-bg);border:1px solid var(--border);border-radius:10px;font-size:11.5px;color:var(--text-lighter);line-height:1.7}.disclaimer .svg-ic{width:14px;height:14px;flex:none;opacity:.7}
