.portal-shell-student :is(.student-resource-list-page.generated-library-page,.resource-reception-page){--resource-ink:#102033;--resource-body:#2d4357;--resource-muted:#627588;--resource-faint:#8a9aaa;--resource-line:#b8ccd8c7;--resource-hairline:#dbe6eee6;--resource-soft:#f6fafc;--resource-selected:#edf8fa;--resource-accent-strong:#075f74;width:min(100%,1200px)!important;padding:.82rem 1rem 1.25rem!important}.portal-shell-student .resource-workbench{border-color:var(--resource-line)!important;background:#fff!important;border-radius:12px!important;min-height:calc(100vh - 8rem)!important;box-shadow:0 14px 34px #1020330b!important}.portal-shell-student .resource-workbench-head{padding:.96rem 1.06rem .86rem!important}.portal-shell-student .resource-workbench-title p{background:#f1fafb!important;border-color:#08748d29!important;font-size:.7rem!important}.portal-shell-student .resource-workbench-title h1{letter-spacing:0!important;font-size:1.3rem!important}.portal-shell-student .resource-workbench-title span{color:var(--resource-body)!important;font-size:.88rem!important}.portal-shell-student .resource-workbench-stats span,.portal-shell-student :is(.generated-library-summary.resource-workbench-stats span,.resource-reception-metrics.resource-workbench-stats span){background:#fff!important;border-radius:8px!important;min-height:2.06rem!important;padding:.4rem .52rem!important}.portal-shell-student .resource-workbench-toolbar,.portal-shell-student :is(.generated-library-toolbar.resource-workbench-toolbar,.resource-reception-toolbar.resource-workbench-toolbar){background:#fbfdfe!important;grid-template-columns:minmax(15rem,.86fr) minmax(0,1.55fr) auto!important;gap:.5rem!important;padding:.64rem .74rem!important}.portal-shell-student .resource-workbench :is(.generated-library-search,.resource-reception-search){background:#fff!important;border-radius:8px!important;min-height:2.24rem!important}.portal-shell-student .resource-workbench :is(.generated-library-tabs button,.resource-reception-tabs button,.generated-library-refresh,.resource-reception-refresh,.generated-preview-actions :is(button,a),.resource-reception-actions :is(button,a),.resource-reception-clear){min-height:2.12rem!important;color:var(--resource-body)!important;border-radius:8px!important;font-size:.78rem!important;font-weight:740!important}.portal-shell-student .resource-workbench :is(.generated-library-tabs button.active,.resource-reception-tabs button.active){color:var(--resource-accent-strong)!important;background:#edf8fa!important;border-color:#08748d57!important}.portal-shell-student :is(.generated-library-shell.resource-workbench-body,.resource-reception-shell.resource-workbench-body){grid-template-columns:minmax(19.2rem,.33fr) minmax(0,1fr)!important;min-height:33rem!important}.portal-shell-student .resource-workbench :is(.generated-library-list-panel,.resource-reception-list){background:#fbfdfe!important}.portal-shell-student .resource-workbench :is(.generated-library-preview-panel,.resource-reception-reader){background:#fff!important;gap:.72rem!important;padding:.96rem!important}.portal-shell-student .resource-workbench :is(.generated-library-list-head,.resource-reception-list-head){background:#fff!important;min-height:2.72rem!important;padding:.56rem .72rem!important}.portal-shell-student .resource-workbench .generated-library-list{gap:.18rem!important;max-height:calc(100vh - 16.4rem)!important;padding:.38rem .42rem .72rem!important}.portal-shell-student .resource-workbench .resource-reception-list{padding-bottom:.72rem!important}.portal-shell-student .resource-workbench :is(.generated-resource-row,.resource-reception-row){border-bottom:0!important}.portal-shell-student .resource-workbench .generated-resource-row{border-radius:10px!important;grid-template-columns:1.75rem minmax(0,1fr) 1.75rem!important;gap:.16rem!important;padding:.08rem 0!important}.portal-shell-student .resource-workbench .generated-resource-row .generated-resource-open,.portal-shell-student .resource-workbench .resource-reception-row{border-radius:10px!important;min-height:4.5rem!important;padding:.6rem .52rem!important}.portal-shell-student .resource-workbench .generated-resource-row .generated-resource-open{grid-template-columns:1.82rem minmax(0,1fr) auto!important}.portal-shell-student .resource-workbench .resource-reception-row{grid-template-columns:1.9rem minmax(0,1fr) auto!important;width:auto!important;margin:.1rem .42rem!important}.portal-shell-student .resource-workbench :is(.generated-resource-row.active .generated-resource-open,.generated-resource-row.checked .generated-resource-open,.generated-resource-row .generated-resource-open:hover,.resource-reception-row.active,.resource-reception-row:hover){background:#edf8fa!important;border-color:#08748d3d!important}.portal-shell-student .resource-workbench :is(.generated-resource-row-icon,.resource-reception-row-mark){background:#f1fafb!important;border:1px solid #08748d1f!important;border-radius:8px!important;width:1.82rem!important;height:1.82rem!important}.portal-shell-student .resource-workbench :is(.generated-resource-row-main strong,.resource-reception-row-main strong){font-size:.86rem!important;font-weight:790!important;line-height:1.3!important}.portal-shell-student .resource-workbench :is(.generated-resource-row-main em,.generated-resource-row-main span,.resource-reception-row-main em){color:var(--resource-muted)!important;font-size:.72rem!important}.portal-shell-student .resource-workbench :is(.generated-resource-state,.resource-reception-state){color:#14725a!important;background:#edf8f3!important;border:1px solid #0000!important;min-height:1.26rem!important;font-size:.62rem!important}.portal-shell-student .resource-workbench :is(.generated-resource-state-warn,.resource-reception-state.active){color:#9a5a05!important;background:#fff7e8!important}.portal-shell-student .resource-workbench .generated-resource-state-bad{color:#ad1640!important;background:#fff1f3!important}.portal-shell-student .resource-workbench .generated-resource-check,.portal-shell-student .resource-workbench .generated-resource-clear{opacity:.68!important;align-self:center!important}.portal-shell-student .resource-workbench .generated-resource-clear{opacity:.18!important}.portal-shell-student .resource-workbench .generated-resource-row:hover .generated-resource-clear,.portal-shell-student .resource-workbench .generated-resource-clear:focus-visible{opacity:1!important}.portal-shell-student .resource-workbench .generated-library-selection-bar{background:#edf8fa!important;border:1px solid #08748d38!important;border-radius:10px!important;margin:.32rem .42rem!important}.portal-shell-student .resource-workbench :is(.generated-preview-head,.resource-reception-detail){border:1px solid var(--resource-hairline)!important;background:#fbfdfe!important;border-radius:10px!important;grid-template-columns:minmax(0,1fr) auto!important;gap:.72rem!important;padding:.88rem!important;display:grid!important}.portal-shell-student .student-resource-list-page .generated-preview-head{grid-template-areas:"title state""actions actions"!important}.portal-shell-student .student-resource-list-page .generated-preview-title{grid-area:title!important}.portal-shell-student .student-resource-list-page .generated-preview-head>.generated-resource-state{grid-area:state!important}.portal-shell-student .student-resource-list-page .generated-preview-actions{grid-area:actions!important}.portal-shell-student .resource-workbench :is(.generated-preview-title h2,.resource-reception-title h2){font-size:1.12rem!important;line-height:1.32!important}.portal-shell-student .student-resource-list-page .generated-preview-tags{gap:.32rem!important;margin-bottom:.34rem!important}.portal-shell-student .student-resource-list-page .generated-preview-tags span{color:var(--resource-accent-strong)!important;background:#fff!important;border:1px solid #08748d29!important;border-radius:999px!important;padding:.12rem .42rem!important;font-size:.68rem!important;font-weight:760!important}.portal-shell-student .student-resource-list-page .generated-preview-actions,.portal-shell-student .resource-reception-page .resource-reception-actions{flex-wrap:wrap!important;gap:.42rem!important;display:flex!important}.portal-shell-student .student-resource-list-page .generated-preview-body{gap:.72rem!important;display:grid!important}.portal-shell-student .resource-workbench :is(.generated-preview-block,.generated-preview-more,.resource-reception-practice){border:1px solid var(--resource-hairline)!important;box-shadow:none!important;background:#fff!important;border-radius:10px!important}.portal-shell-student .student-resource-list-page .generated-preview-block{padding:.95rem!important}.portal-shell-student .student-resource-list-page .generated-preview-block-head,.portal-shell-student .resource-reception-page .resource-section-title{color:var(--resource-ink)!important;align-items:center!important;gap:.42rem!important;margin-bottom:.64rem!important;font-size:.86rem!important;font-weight:790!important;display:flex!important}.portal-shell-student .student-resource-list-page .generated-document-preview :is(p,li),.portal-shell-student .resource-reception-page .resource-markdown-block :is(p,li){color:var(--resource-body)!important;font-size:.92rem!important;line-height:1.72!important}.portal-shell-student .resource-reception-page .resource-reception-detail{grid-template-areas:"title state""meta meta""desc desc""actions actions"!important}.portal-shell-student .resource-reception-page .resource-reception-title{grid-area:title!important}.portal-shell-student .resource-reception-page .resource-reception-detail>.resource-reception-state{grid-area:state!important}.portal-shell-student .resource-reception-page .resource-reception-meta{grid-area:meta!important;margin-top:-.2rem!important}.portal-shell-student .resource-reception-page .resource-reception-detail>p{grid-area:desc!important;margin:0!important}.portal-shell-student .resource-reception-page .resource-reception-actions{grid-area:actions!important}.portal-shell-student .resource-reception-page .resource-reception-title span{color:var(--resource-accent-strong)!important;font-size:.72rem!important;font-weight:760!important}.portal-shell-student .resource-reception-page .resource-reception-content{border:1px solid var(--resource-hairline)!important;background:#fff!important;border-radius:10px!important;padding:.94rem!important}.portal-shell-student .resource-reception-page .resource-reception-content .resource-render-flow{gap:.7rem!important}.portal-shell-student .resource-reception-page .resource-reception-content .resource-summary-block{border:0!important;border-bottom:1px solid var(--resource-hairline)!important;background:0 0!important;border-radius:0!important;padding:0 0 .72rem!important}.portal-shell-student .resource-reception-page .resource-reception-content .resource-summary-block .resource-section-title{margin-bottom:0!important}.portal-shell-student .resource-reception-page .resource-reception-content .resource-summary-block .resource-section-title p,.portal-shell-student .resource-reception-page .resource-reception-content .resource-practice-brief,.portal-shell-student .resource-reception-page .resource-reception-content .resource-recommend-block{display:none!important}.portal-shell-student .resource-reception-page .resource-reception-content .resource-summary-block .resource-section-title span{color:var(--resource-body)!important;font-size:.92rem!important;line-height:1.66!important}.portal-shell-student .resource-reception-page .resource-reception-practice{padding:.9rem!important}.portal-shell-student .resource-reception-page .resource-reception-practice-head{border-bottom:1px solid var(--resource-hairline)!important;margin-bottom:.72rem!important;padding-bottom:.7rem!important}.portal-shell-student .resource-reception-page .resource-reception-question{border:1px solid var(--resource-hairline)!important;background:#fbfdfe!important;border-radius:10px!important;padding:.78rem!important}.portal-shell-student .resource-reception-page .practice-grading-feedback{margin-top:.72rem!important}@media (max-width:880px){.portal-shell-student :is(.generated-library-shell.resource-workbench-body,.resource-reception-shell.resource-workbench-body){grid-template-columns:minmax(0,1fr)!important}.portal-shell-student .resource-workbench :is(.generated-library-list-panel,.resource-reception-list){border-right:0!important;border-bottom:1px solid var(--resource-hairline)!important}.portal-shell-student .resource-workbench .generated-library-list{max-height:22rem!important}}@media (max-width:620px){.portal-shell-student :is(.student-resource-list-page.generated-library-page,.resource-reception-page){padding:.66rem!important}.portal-shell-student .resource-workbench-toolbar,.portal-shell-student :is(.generated-library-toolbar.resource-workbench-toolbar,.resource-reception-toolbar.resource-workbench-toolbar){grid-template-columns:minmax(0,1fr) auto!important}.portal-shell-student .resource-reception-page .resource-reception-detail,.portal-shell-student .student-resource-list-page .generated-preview-head{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"title""state""meta""desc""actions"!important}.portal-shell-student .student-resource-list-page .generated-preview-head{grid-template-areas:"title""state""actions"!important}}
.public-portal{--public-accent:#16b8d5;--public-accent-strong:#087f9d;--public-accent-soft:#dff7fb;--public-accent-ink:#073847;color:#122a3a;isolation:isolate;background-color:#f4f9fb;background-image:linear-gradient(#1c5b740b 1px,#0000 1px),linear-gradient(90deg,#1c5b740b 1px,#0000 1px);background-size:38px 38px;min-height:100svh;position:relative;overflow-x:hidden}.public-portal:before{z-index:-1;content:"";pointer-events:none;background:linear-gradient(118deg,#16b8d512,#0000 32%),linear-gradient(298deg,#23af870e,#0000 28%),linear-gradient(#ffffffb8,#f4f9fbe6);position:fixed;inset:0}.public-portal-violet{--public-accent:#9368dc;--public-accent-strong:#6643a9;--public-accent-soft:#eee7fb;--public-accent-ink:#38235e}.public-portal-mint{--public-accent:#24ad87;--public-accent-strong:#16785f;--public-accent-soft:#def6ee;--public-accent-ink:#114838}.public-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border-bottom:1px solid #82a3b157;grid-template-columns:minmax(280px,1fr) auto minmax(180px,1fr);align-items:center;gap:24px;height:80px;padding:0 42px;display:grid;position:relative;box-shadow:0 8px 30px #2e5b6f0e}.public-header:after{content:"";opacity:.38;background:linear-gradient(90deg,#16b8d5,#9368dc 51%,#24ad87);height:1px;position:absolute;bottom:-1px;left:0;right:0}.public-brand{color:#10293a;align-items:center;gap:13px;min-width:0;text-decoration:none;display:inline-flex}.public-brand-logo{color:#fff;background:linear-gradient(120deg,#0eaecb 0%,#8e65dc 48%,#1dae84 100%) 0 0/230% 230%;border:1px solid #ffffffd1;border-radius:8px;flex:none;place-items:center;width:45px;height:45px;animation:6s ease-in-out infinite public-brand-flow;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 1px #35708626,0 9px 22px #456c8933}.public-brand-logo:before{content:"";filter:blur(5px);background:#ffffff85;width:42%;animation:4.8s ease-in-out infinite public-brand-shine;position:absolute;top:-40%;bottom:-40%;left:-70%;transform:skew(-18deg)}.public-brand-logo svg{z-index:2;stroke-width:1.7px;width:22px;height:22px;position:relative}.public-brand-logo i{z-index:1;border:1px solid #ffffffe6;border-radius:50%;width:6px;height:6px;position:absolute;bottom:7px;right:7px}.public-brand-copy{min-width:0}.public-brand-copy strong{color:#102a3a;letter-spacing:0;font-size:17px;font-weight:780;line-height:1.15;display:block}.public-brand-copy small{color:#708697;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:10px;font-weight:620;line-height:1.2;display:block;overflow:hidden}.public-role-nav{align-items:stretch;gap:6px;height:100%;display:flex}.public-role-nav button{color:#647b8b;letter-spacing:0;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;min-width:126px;padding:0 22px;font-size:15px;font-weight:680;transition:color .18s,background-color .18s;display:flex;position:relative}.public-role-nav button:after{background:var(--public-accent);height:3px;box-shadow:0 -4px 12px color-mix(in srgb, var(--public-accent) 34%, transparent);content:"";opacity:0;border-radius:3px 3px 0 0;transition:opacity .18s,transform .18s;position:absolute;bottom:0;left:18px;right:18px;transform:scaleX(.45)}.public-role-nav button:hover,.public-role-nav button.is-active{color:#15374a;background:color-mix(in srgb, var(--public-accent-soft) 48%, #fff)}.public-role-nav button.is-active:after{opacity:1;transform:scaleX(1)}.public-role-nav button span{color:#8aa0ad;letter-spacing:0;font:700 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.public-role-nav button.is-active span{color:var(--public-accent-strong)}.public-current-entry{color:#fff;min-height:40px;font:inherit;cursor:pointer;background:#132f40;border:0;border-radius:20px;justify-self:end;align-items:center;gap:10px;padding:0 17px;font-size:13px;font-weight:740;text-decoration:none;transition:background-color .18s,box-shadow .18s,transform .18s;display:inline-flex;box-shadow:0 9px 22px #1e435429}.public-current-entry:hover{background:var(--public-accent-strong);box-shadow:0 11px 26px color-mix(in srgb, var(--public-accent) 23%, #1e435424);transform:translateY(-1px)}.public-current-entry svg{width:17px;height:17px}.public-showcase{width:min(100%,1760px);min-height:calc(100svh - 80px);margin:0 auto;padding:30px 54px 34px;position:relative}.public-showcase:after{z-index:-1;background:linear-gradient(90deg, transparent, var(--public-accent), transparent);content:"";opacity:.2;height:3px;position:absolute;top:0;left:54px;right:54px}.public-intro-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:end;gap:72px;min-height:292px;display:grid}.public-hero-copy{max-width:830px;animation:.44s cubic-bezier(.22,.75,.2,1) both public-copy-enter}.public-hero-eyebrow{color:var(--public-accent-strong);letter-spacing:0;align-items:center;gap:10px;margin:0 0 17px;font:750 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;display:flex}.public-hero-eyebrow>span{background:currentColor;border-radius:2px;width:26px;height:2px}.public-hero-eyebrow b{color:#8399a6;border-left:1px solid #c4d5dc;margin-left:5px;padding-left:14px;font-weight:680}.public-hero-copy h1{color:#102b3b;letter-spacing:0;margin:0;font-size:56px;font-weight:810;line-height:1}.public-hero-copy h2{color:#25495b;letter-spacing:0;margin:14px 0 0;font-size:36px;font-weight:590;line-height:1.25}.public-hero-copy h2 strong{color:var(--public-accent-strong);font-weight:740;display:block}.public-hero-description{color:#61798a;max-width:680px;margin:16px 0 0;font-size:14px;line-height:1.75}.public-hero-actions{align-items:center;gap:20px;margin-top:24px;display:flex}.public-primary-action{border:1px solid var(--public-accent-strong);background:var(--public-accent);min-height:43px;box-shadow:0 10px 24px color-mix(in srgb, var(--public-accent) 22%, transparent);color:var(--public-accent-ink);font:inherit;cursor:pointer;border-radius:6px;flex:none;align-items:center;gap:11px;padding:0 17px;font-size:13px;font-weight:800;text-decoration:none;transition:filter .18s,transform .18s,box-shadow .18s;display:inline-flex}.public-primary-action:hover{box-shadow:0 13px 28px color-mix(in srgb, var(--public-accent) 30%, transparent);filter:brightness(1.05);transform:translateY(-2px)}.public-primary-action svg{width:16px;height:16px}.public-hero-actions>p{color:#8295a1;max-width:300px;margin:0;font-size:11px;line-height:1.55}.public-role-brief{border:1px solid color-mix(in srgb, var(--public-accent) 26%, #c8d9e0);background:color-mix(in srgb, var(--public-accent-soft) 38%, #ffffffe6);border-radius:8px;min-height:205px;padding:22px 24px;animation:.5s cubic-bezier(.22,.75,.2,1) 70ms both public-copy-enter;box-shadow:0 16px 38px #315d7014}.public-role-brief-heading{align-items:center;gap:14px;display:flex}.public-role-brief-icon{border:1px solid color-mix(in srgb, var(--public-accent) 36%, #bdd0d8);width:42px;height:42px;color:var(--public-accent-strong);background:#ffffffc7;border-radius:7px;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffffb3}.public-role-brief-icon svg{width:19px;height:19px}.public-role-brief-heading small,.public-role-brief-heading strong{letter-spacing:0;display:block}.public-role-brief-heading small{color:#8499a5;font:680 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.public-role-brief-heading strong{color:#19394b;margin-top:4px;font-size:15px}.public-role-brief ul{margin:20px 0 0;padding:0;list-style:none}.public-role-brief li{color:#526f80;border-bottom:1px solid #7d9fae47;align-items:center;gap:12px;min-height:38px;font-size:12px;display:flex}.public-role-brief li:last-child{border-bottom:0}.public-role-brief li svg{width:15px;height:15px;color:var(--public-accent-strong)}.public-deck-section{margin-top:22px}.public-deck-heading{justify-content:space-between;align-items:end;gap:24px;min-height:48px;margin-bottom:14px;display:flex}.public-deck-heading p,.public-deck-heading h2{letter-spacing:0;margin:0}.public-deck-heading p{color:#78909e;font:680 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.public-deck-heading h2{color:#17384a;margin-top:5px;font-size:16px;font-weight:730}.public-motion-toggle{color:#607c8b;cursor:pointer;background:#ffffffd6;border:1px solid #bfd1da;border-radius:6px;flex:none;place-items:center;width:36px;height:36px;transition:border-color .18s,color .18s,background-color .18s;display:grid;box-shadow:0 7px 18px #30586a14}.public-motion-toggle:hover{border-color:var(--public-accent);color:var(--public-accent-strong);background:#fff}.public-motion-toggle svg{width:17px;height:17px}.public-card-deck-shell{height:270px;position:relative;overflow:hidden}.public-card-deck,.public-card-scan-layer{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.public-card-deck{z-index:1;height:100%;position:relative}.public-role-card{--card-accent:#16b8d5;--card-accent-strong:#087f9d;color:#173748;min-width:0;height:100%;font:inherit;text-align:left;cursor:pointer;isolation:isolate;background:#fff;border:1px solid #c1d4dc;border-radius:8px;text-decoration:none;transition:border-color .22s,transform .22s,box-shadow .22s;position:relative;overflow:hidden;box-shadow:0 12px 30px #2b536614}.public-role-card-violet{--card-accent:#9368dc;--card-accent-strong:#6643a9}.public-role-card-mint{--card-accent:#24ad87;--card-accent-strong:#16785f}.public-role-card:hover,.public-role-card:focus-visible,.public-role-card.is-active{border-color:var(--card-accent);box-shadow:0 18px 38px color-mix(in srgb, var(--card-accent) 16%, #234a5c1a);transform:translateY(-5px)}.public-role-card:focus-visible{outline:2px solid var(--card-accent-strong);outline-offset:-4px}.public-role-card-image{z-index:-3;background:#e9f2f6;position:absolute;inset:0}.public-role-card-image img,.public-card-scan-image img{-o-object-fit:cover;object-fit:cover;-o-object-position:top left;object-position:top left}.public-role-card-image img{filter:saturate(.62)brightness(.9)contrast(.93);transition:filter .32s,transform .42s;transform:scale(1.012)}.public-role-card:hover .public-role-card-image img,.public-role-card:focus-visible .public-role-card-image img,.public-role-card.is-active .public-role-card-image img{filter:saturate(.94)brightness(.97)contrast(.97);transform:scale(1.028)}.public-role-card-shade{z-index:-2;background:linear-gradient(#f4fafc0a 10%,#f4fafc33 46%,#f7fbfcf7 79%,#f8fbfc 100%);position:absolute;inset:0}.public-role-card-shade:after{border-top:3px solid var(--card-accent);background:linear-gradient(120deg, color-mix(in srgb, var(--card-accent) 8%, transparent), transparent 42%);content:"";opacity:.36;transition:opacity .22s;position:absolute;inset:0}.public-role-card.is-active .public-role-card-shade:after,.public-role-card:hover .public-role-card-shade:after{opacity:1}.public-role-card-topline{z-index:5;justify-content:space-between;align-items:center;display:flex;position:absolute;top:15px;left:16px;right:16px}.public-role-card-topline span{color:#3d5e70;letter-spacing:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border:1px solid #b2c9d3db;border-radius:5px;justify-content:center;align-items:center;min-width:30px;min-height:24px;font:750 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;display:inline-flex}.public-role-card-topline svg{box-sizing:content-box;border:1px solid color-mix(in srgb, var(--card-accent) 38%, #c2d4dc);width:19px;height:19px;color:var(--card-accent-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:6px;padding:6px}.public-role-card-copy{z-index:5;position:absolute;bottom:16px;left:19px;right:19px}.public-role-card-copy p,.public-role-card-copy h3,.public-role-card-copy>span{letter-spacing:0;margin:0}.public-role-card-copy p{color:var(--card-accent-strong);font:720 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.public-role-card-copy h3{color:#17384a;margin-top:5px;font-size:23px;font-weight:780;line-height:1.2}.public-role-card-copy>span{color:#456577;border-top:1px solid #7b9ba94d;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;font-size:11px;font-weight:700;display:flex}.public-role-card-copy>span svg{width:15px;height:15px;color:var(--card-accent-strong)}.public-card-scan-layer{z-index:2;pointer-events:none;opacity:.48;animation:6.2s cubic-bezier(.3,.05,.25,1) infinite public-scan-mask;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#0000002e 20%,#000 44% 56%,#0000002e 80%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#0000002e 20%,#000 44% 56%,#0000002e 80%,#0000 100%);-webkit-mask-position:-58% 0;mask-position:-58% 0;-webkit-mask-size:34% 100%;mask-size:34% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.public-card-scan-image{border-radius:8px;min-width:0;position:relative;overflow:hidden}.public-card-scan-image img{filter:saturate(1.08)brightness(1.08)contrast(.96);transform:scale(1.012)}.public-card-scan-line{z-index:6;width:2px;box-shadow:0 0 13px 2px var(--public-accent), 0 0 38px 8px color-mix(in srgb, var(--public-accent) 32%, transparent);pointer-events:none;background:#fff;animation:6.2s cubic-bezier(.3,.05,.25,1) infinite public-scan-line;position:absolute;top:0;bottom:0;left:-4%}.public-card-scan-line i{border-right:1px solid color-mix(in srgb, var(--public-accent) 34%, transparent);border-left:1px solid color-mix(in srgb, var(--public-accent) 14%, transparent);width:46px;position:absolute;top:0;bottom:0;left:-22px}.public-card-deck-shell.is-paused .public-card-scan-layer,.public-card-deck-shell.is-paused .public-card-scan-line{animation-play-state:paused}.public-slide-announcement{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.public-auth-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px)saturate(.84);backdrop-filter:blur(10px)saturate(.84);background:#0e212d94;place-items:center;padding:28px;animation:.18s both public-auth-fade;display:grid;position:fixed;inset:0}.public-auth-dialog{background:#fff;border:1px solid #cde0e8c7;border-radius:8px;outline:0;grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);width:min(960px,100%);max-height:min(760px,100svh - 56px);animation:.24s cubic-bezier(.22,.75,.2,1) both public-auth-rise;display:grid;overflow:hidden;box-shadow:0 30px 86px #071f2c47}.public-auth-dialog.is-register{max-height:min(850px,100svh - 36px)}.public-auth-visual{color:#fff;isolation:isolate;background:linear-gradient(145deg,#0a3046f7,#0d5c69f0 52%,#18856eeb),#103a51;min-height:610px;padding:30px 34px;position:relative;overflow:hidden}.public-auth-visual:before{z-index:-1;content:"";background:linear-gradient(#ffffff0e 1px,#0000 1px) 0 0/34px 34px,linear-gradient(90deg,#ffffff0e 1px,#0000 1px) 0 0/34px 34px,linear-gradient(120deg,#0000 28%,#976ade33 51%,#0000 73%) 0 0/220% 100%;animation:8s ease-in-out infinite public-auth-color-flow;position:absolute;inset:0}.public-auth-visual-brand{z-index:3;align-items:center;gap:13px;display:flex;position:relative}.public-auth-visual-brand strong,.public-auth-visual-brand small{letter-spacing:0;display:block}.public-auth-visual-brand strong{font-size:18px;line-height:1.2}.public-auth-visual-brand small{color:#e1f4f8b3;margin-top:4px;font-size:10px}.public-auth-system-preview{z-index:1;transform-origin:0;background:linear-gradient(145deg,#102f46,#0c5264 52%,#137e70);border:1px solid #ffffff3d;border-radius:8px 0 0 8px;height:300px;position:absolute;top:118px;left:34px;right:-42px;overflow:hidden;transform:perspective(1100px)rotateY(-5deg);box-shadow:0 22px 45px #031d2a47}.public-auth-system-preview:before{content:"";opacity:.62;background-color:#0000;background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:27px 27px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.public-auth-system-bar,.public-auth-system-main,.public-auth-system-grid{z-index:2;position:absolute}.public-auth-system-bar{background:#061e2e57;border-bottom:1px solid #ffffff26;align-items:center;gap:10px;height:43px;padding:0 17px;display:flex;top:0;left:0;right:0}.public-auth-system-bar strong{color:#fff;font-size:12px;font-weight:740}.public-auth-system-bar small{color:#dcf4f7a6;font-size:9px}.public-auth-system-dots{gap:4px;display:inline-flex}.public-auth-system-dots i{background:#79d7df;border-radius:50%;width:5px;height:5px}.public-auth-system-dots i:nth-child(2){background:#b19ae7}.public-auth-system-dots i:nth-child(3){background:#83dfb8}.public-auth-system-main{top:73px;left:26px;right:26px}.public-auth-system-main p,.public-auth-system-main h3,.public-auth-system-main span{letter-spacing:0;margin:0}.public-auth-system-main p{color:#89dce4;font:700 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.public-auth-system-main h3{color:#fff;max-width:450px;margin-top:9px;font-size:26px;font-weight:800;line-height:1.28}.public-auth-system-main span{color:#e3f6f8b8;margin-top:8px;font-size:11px;display:block}.public-auth-system-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid;bottom:24px;left:24px;right:24px}.public-auth-system-grid>div{background:#ffffff14;border:1px solid #bfebef3d;border-radius:6px;flex-direction:column;justify-content:center;gap:6px;min-height:67px;padding:0 11px;display:flex}.public-auth-system-grid span{color:#daf2f5a6;font-size:9px}.public-auth-system-grid strong{color:#fff;font-size:13px}.public-auth-system-scan{z-index:4;filter:blur(3px);pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff52,#0000);width:17%;animation:5.8s ease-in-out infinite public-auth-system-scan;position:absolute;top:0;bottom:0;left:-18%}.public-auth-system-preview>span{pointer-events:none}.public-auth-visual-copy{z-index:3;position:absolute;bottom:34px;left:34px;right:34px}.public-auth-visual-copy p,.public-auth-visual-copy h2,.public-auth-visual-copy span{letter-spacing:0;margin:0}.public-auth-visual-copy p{color:#8be2eb;font:720 9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.public-auth-visual-copy h2{max-width:390px;margin-top:10px;font-size:25px;line-height:1.35}.public-auth-visual-copy span{color:#e1f4f8b8;max-width:390px;margin-top:9px;font-size:12px;line-height:1.65;display:block}.public-auth-panel{background:#fff;min-width:0;position:relative;overflow-y:auto}.public-auth-close{z-index:3;color:#78909d;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:36px;height:36px;transition:background-color .16s,color .16s;display:grid;position:absolute;top:17px;right:17px}.public-auth-close:hover{color:#173a4b;background:#edf5f7}.public-auth-close svg{width:20px;height:20px}.public-auth-tabs{border-bottom:1px solid #dce7eb;grid-template-columns:1fr 1fr;height:74px;padding:0 66px 0 28px;display:grid}.public-auth-tabs button{color:#8496a0;font:inherit;cursor:pointer;background:0 0;border:0;font-size:15px;font-weight:680;position:relative}.public-auth-tabs button:after{content:"";opacity:0;background:linear-gradient(90deg,#16b8d5,#9368dc 51%,#24ad87);border-radius:3px 3px 0 0;height:3px;transition:opacity .16s,transform .16s;position:absolute;bottom:0;left:24px;right:24px;transform:scaleX(.4)}.public-auth-tabs button.is-active{color:#17384a}.public-auth-tabs button.is-active:after{opacity:1;transform:scaleX(1)}.public-auth-form{padding:30px 38px 32px}.public-auth-heading{align-items:center;gap:13px;margin-bottom:25px;display:flex}.public-auth-heading>span{color:#fff;background:linear-gradient(135deg,#16b8d5,#9368dc 53%,#24ad87);border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid}.public-auth-heading svg{width:20px;height:20px}.public-auth-heading h2,.public-auth-heading p{letter-spacing:0;margin:0}.public-auth-heading h2{color:#132f40;font-size:21px;line-height:1.2}.public-auth-heading p{color:#758a96;margin-top:5px;font-size:11px;line-height:1.5}.public-auth-form>label{color:#284859;margin:14px 0 7px;font-size:12px;font-weight:700;display:block}.public-auth-form>label span{color:#8ba0aa;font-weight:500}.public-auth-input{background:#f9fcfd;border:1px solid #cbdde4;border-radius:7px;align-items:center;height:46px;transition:border-color .16s,box-shadow .16s,background-color .16s;display:flex;position:relative}.public-auth-input:focus-within{background:#fff;border-color:#16a9c5;box-shadow:0 0 0 3px #16b8d51a}.public-auth-input>svg{color:#89a2ae;flex:none;width:17px;height:17px;margin-left:13px}.public-auth-input input{color:#163646;min-width:0;height:100%;font:inherit;background:0 0;border:0;outline:0;flex:auto;padding:0 12px;font-size:13px}.public-auth-input input::placeholder{color:#a2b2ba}.public-auth-input button{color:#8097a3;cursor:pointer;background:0 0;border:0;flex:none;place-items:center;width:42px;height:100%;display:grid}.public-auth-input button svg{width:17px;height:17px}.public-auth-error{color:#b42323;background:#fff4f4;border:1px solid #fac6c6;border-radius:6px;margin:15px 0 0;padding:9px 11px;font-size:12px;line-height:1.5}.public-auth-submit{color:#fff;width:100%;min-height:46px;font:inherit;cursor:pointer;background:#132f40;border:0;border-radius:7px;justify-content:center;align-items:center;gap:10px;margin-top:21px;font-size:13px;font-weight:740;transition:background-color .18s,transform .18s;display:flex;box-shadow:0 10px 24px #143b4d29}.public-auth-submit:hover:not(:disabled){background:#087f9d;transform:translateY(-1px)}.public-auth-submit:disabled{cursor:wait;opacity:.64}.public-auth-submit svg{width:17px;height:17px}.public-auth-switch{color:#82949e;text-align:center;margin:20px 0 0;font-size:12px}.public-auth-switch button{color:#087f9d;font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-weight:700}@keyframes public-auth-fade{0%{opacity:0}to{opacity:1}}@keyframes public-auth-rise{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes public-auth-color-flow{0%,to{background-position:0 0,0 0,0%}50%{background-position:0 0,0 0,100%}}@keyframes public-auth-system-scan{0%,12%{opacity:0;left:-18%}20%{opacity:.85}72%{opacity:.85;left:112%}80%,to{opacity:0;left:112%}}@keyframes public-brand-flow{0%,to{background-position:0%}50%{background-position:100%}}@keyframes public-brand-shine{0%,18%{opacity:0;left:-70%}28%{opacity:.8}58%{opacity:.22;left:135%}59%,to{opacity:0;left:135%}}@keyframes public-copy-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes public-scan-mask{0%,8%{-webkit-mask-position:-58% 0;mask-position:-58% 0}78%,to{-webkit-mask-position:158% 0;mask-position:158% 0}}@keyframes public-scan-line{0%,8%{opacity:0;left:-4%}12%{opacity:1}78%{opacity:1;left:104%}82%,to{opacity:0;left:104%}}@media (min-height:900px) and (min-width:901px){.public-showcase{padding-top:36px}.public-intro-grid{min-height:320px}.public-card-deck-shell{height:300px}}@media (max-height:760px) and (min-width:901px){.public-showcase{padding-top:22px}.public-intro-grid{min-height:246px}.public-hero-copy h1{font-size:48px}.public-hero-copy h2{font-size:31px}.public-card-deck-shell{height:220px}}@media (max-width:1100px){.public-header{grid-template-columns:minmax(230px,1fr) auto minmax(145px,1fr);gap:14px;padding:0 24px}.public-role-nav{gap:3px}.public-role-nav button{min-width:104px;padding:0 14px;font-size:14px}.public-showcase{padding-left:34px;padding-right:34px}.public-intro-grid{grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:42px}.public-hero-copy h1{font-size:50px}.public-hero-copy h2{font-size:32px}}@media (max-width:900px){.public-header{grid-template-rows:72px 46px;grid-template-columns:minmax(0,1fr) auto;gap:0 14px;height:118px;padding:0 22px}.public-role-nav{border-top:1px solid #d8e4e9;grid-area:2/1/auto/-1}.public-role-nav button{flex:1 1 0;min-width:0}.public-current-entry{grid-area:1/2}.public-showcase{min-height:calc(100svh - 118px);padding:28px 28px 34px}.public-intro-grid{grid-template-columns:1fr;align-items:start;gap:28px;min-height:0}.public-role-brief{grid-template-columns:210px minmax(0,1fr);align-items:center;gap:24px;min-height:0;padding:18px 20px;display:grid}.public-role-brief ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.public-role-brief li{background:#ffffff85;border:1px solid #7d9fae47;border-radius:6px;justify-content:center}.public-role-brief li:last-child{border-bottom:1px solid #7d9fae47}.public-deck-section{margin-top:30px}.public-card-deck-shell{height:246px}.public-auth-dialog{grid-template-columns:1fr;width:min(620px,100%)}.public-auth-visual{min-height:184px;padding:22px 26px}.public-auth-system-preview{opacity:.75;height:170px;top:48px;left:48%;right:-36px}.public-auth-visual-copy{bottom:24px;left:26px;right:48%}.public-auth-visual-copy h2{font-size:20px}.public-auth-visual-copy span{display:none}.public-auth-panel{max-height:calc(100svh - 230px)}}@media (max-width:680px){.public-header{padding:0 16px}.public-brand-logo{width:42px;height:42px}.public-brand-logo svg{width:20px;height:20px}.public-brand-copy strong{font-size:15px}.public-brand-copy small{max-width:175px;font-size:9px}.public-current-entry span{display:none}.public-current-entry{color:#fff;background:#132f40;border:0;border-radius:50%;justify-content:center;width:36px;height:36px;padding:0}.public-role-nav{gap:0}.public-role-nav button{gap:6px;padding:0 7px;font-size:13px}.public-showcase{padding:24px 18px 30px}.public-showcase:after{left:18px;right:18px}.public-hero-eyebrow{margin-bottom:14px}.public-hero-copy h1{font-size:38px}.public-hero-copy h2{margin-top:12px;font-size:28px;line-height:1.28}.public-hero-description{margin-top:14px;font-size:13px;line-height:1.65}.public-hero-actions{align-items:flex-start;gap:13px;margin-top:20px}.public-primary-action{min-height:41px}.public-hero-actions>p{padding-top:4px;font-size:10px}.public-role-brief{padding:16px;display:block}.public-role-brief ul{gap:7px;margin-top:14px}.public-role-brief li{gap:6px;min-height:38px;padding:0 5px;font-size:10px}.public-role-brief li svg{width:13px;height:13px}.public-deck-heading h2{font-size:14px}.public-card-deck-shell{height:232px;overflow:visible}.public-card-deck{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:min(82vw,320px);grid-auto-flow:column;gap:11px;padding:5px 1px 8px;scroll-padding-left:1px;overflow:auto hidden}.public-card-deck::-webkit-scrollbar{display:none}.public-role-card{scroll-snap-align:start}.public-role-card:hover,.public-role-card:focus-visible,.public-role-card.is-active{transform:none}.public-card-scan-layer,.public-card-scan-line{display:none}.public-role-card:after{z-index:3;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--card-accent) 18%, transparent), transparent);content:"";pointer-events:none;border-right:1px solid #ffffffe6;width:34%;animation:6.2s ease-in-out infinite public-mobile-scan;position:absolute;top:0;bottom:0;left:-46%}.public-card-deck-shell.is-paused .public-role-card:after{animation-play-state:paused}.public-auth-backdrop{padding:12px}.public-auth-dialog{max-height:calc(100svh - 24px)}.public-auth-visual{min-height:142px;padding:18px}.public-auth-visual-brand .public-brand-logo{width:38px;height:38px}.public-auth-visual-brand strong{font-size:15px}.public-auth-visual-brand small{font-size:9px}.public-auth-system-preview{height:130px;top:42px;left:58%}.public-auth-system-bar{gap:6px;height:30px;padding:0 10px}.public-auth-system-bar strong{font-size:9px}.public-auth-system-bar small{display:none}.public-auth-system-dots i{width:4px;height:4px}.public-auth-system-main{top:45px;left:13px;right:13px}.public-auth-system-main p{font-size:7px}.public-auth-system-main h3{margin-top:5px;font-size:14px}.public-auth-system-main span{display:none}.public-auth-system-grid{gap:4px;bottom:13px;left:13px;right:13px}.public-auth-system-grid>div{gap:2px;min-height:34px;padding:0 5px}.public-auth-system-grid span{font-size:6px}.public-auth-system-grid strong{font-size:8px}.public-auth-visual-copy{bottom:16px;left:18px;right:39%}.public-auth-visual-copy p{display:none}.public-auth-visual-copy h2{margin:0;font-size:16px;line-height:1.45}.public-auth-panel{max-height:calc(100svh - 166px)}.public-auth-tabs{height:60px;padding:0 54px 0 14px}.public-auth-tabs button{font-size:13px}.public-auth-tabs button:after{left:12px;right:12px}.public-auth-close{top:12px;right:10px}.public-auth-form{padding:22px 20px 24px}.public-auth-heading{margin-bottom:18px}.public-auth-heading>span{width:40px;height:40px}.public-auth-heading h2{font-size:18px}.public-auth-heading p{font-size:10px}.public-auth-form>label{margin-top:12px}.public-auth-input{height:43px}.public-auth-submit{margin-top:18px}}@keyframes public-mobile-scan{0%,12%{opacity:0;left:-46%}18%{opacity:1}70%{opacity:1;left:116%}76%,to{opacity:0;left:116%}}@media (prefers-reduced-motion:reduce){.public-brand-logo,.public-brand-logo:before,.public-hero-copy,.public-role-brief,.public-card-scan-layer,.public-card-scan-line,.public-role-card:after{animation:none}.public-card-scan-layer,.public-card-scan-line,.public-role-card:after{display:none}.public-role-card,.public-role-card-image img,.public-primary-action,.public-role-nav button,.public-auth-dialog,.public-auth-backdrop,.public-auth-visual:before,.public-auth-system-scan{transition:none;animation:none}}
.focus-page{--focus-ink:#17314a;--focus-muted:#718191;--focus-line:#dbe4e5;--focus-paper:#f5f8f7;--focus-panel:#fff;--focus-blue:#4e7896;--focus-coral:#df7155;--focus-mint:#6da18f;background:var(--focus-paper);min-height:100%;color:var(--focus-ink);padding:38px clamp(18px,4vw,58px) 64px}.focus-page-header{justify-content:space-between;align-items:flex-start;gap:30px;max-width:1160px;margin:0 auto 32px;display:flex}.focus-eyebrow,.focus-section-label{color:var(--focus-coral);letter-spacing:.16em;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:700}.focus-page-header h1{max-width:680px;font-family:var(--font-serif), "Songti SC", serif;letter-spacing:.02em;margin:12px 0 0;font-size:clamp(29px,3.3vw,45px);font-weight:600;line-height:1.22}.focus-page-subtitle{max-width:630px;color:var(--focus-muted);margin:13px 0 0;font-size:13px;line-height:1.8}.focus-privacy-note{border-left:2px solid var(--focus-mint);color:var(--focus-muted);flex:none;align-items:flex-start;gap:8px;padding:10px 12px;font-size:10px;line-height:1.7;display:flex}.focus-privacy-note svg{color:var(--focus-mint)}.focus-alert{border:1px solid;align-items:center;gap:9px;max-width:1160px;margin:-14px auto 22px;padding:11px 13px;font-size:12px;display:flex}.focus-alert-error{color:#a54f3d;background:#fff7f4;border-color:#e9bcb1}.focus-alert-success{color:#4b816b;background:#f0f8f4;border-color:#b9d9cc}.focus-alert button{color:currentColor;margin-left:auto}.focus-empty-state{min-height:55vh;color:var(--focus-muted);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.focus-start-grid,.focus-finish-layout{border:1px solid var(--focus-line);background:var(--focus-panel);grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);max-width:1160px;margin:0 auto;display:grid}.focus-start-panel,.focus-finish-main{padding:clamp(24px,4vw,43px)}.focus-start-panel h2,.focus-finish-main h2{max-width:560px;font-family:var(--font-serif), "Songti SC", serif;letter-spacing:.02em;margin:10px 0 0;font-size:clamp(26px,3vw,37px);font-weight:600;line-height:1.28}.focus-start-aside,.focus-finish-aside{border-left:1px solid var(--focus-line);background:#eef5f2;padding:30px 28px}.focus-aside-number{color:var(--focus-coral);letter-spacing:.14em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.focus-start-aside h3,.focus-finish-aside h3{max-width:245px;font-family:var(--font-serif), "Songti SC", serif;margin:55px 0 0;font-size:22px;font-weight:600;line-height:1.4}.focus-start-aside p,.focus-finish-aside p{max-width:245px;color:var(--focus-muted);margin:13px 0 0;font-size:12px;line-height:1.8}.focus-aside-rule{background:#cddbd6;width:100%;height:1px;margin:29px 0 17px}.focus-aside-meta{color:var(--focus-muted);flex-wrap:wrap;gap:12px;font-size:10px;display:flex}.focus-aside-meta span{align-items:center;gap:5px;display:inline-flex}.focus-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-width:540px;margin-top:31px;display:grid}.focus-mode-switch button{border:1px solid var(--focus-line);color:var(--focus-muted);text-align:left;background:#fbfcfb;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;padding:13px 14px;transition:border .16s,background .16s,color .16s;display:grid}.focus-mode-switch button svg{grid-row:span 2}.focus-mode-switch button span{font-size:12px;font-weight:700}.focus-mode-switch button small{font-size:10px}.focus-mode-switch button.is-active{border-color:var(--focus-ink);background:var(--focus-ink);color:#fff}.focus-mode-switch button.is-active small{color:#b5c8d1}.focus-form-row{grid-template-columns:minmax(0,1fr) 148px;gap:13px;max-width:540px;margin-top:24px;display:grid}.focus-form-row label{color:var(--focus-muted);gap:8px;font-size:11px;display:grid}.focus-form-row input{border:1px solid var(--focus-line);width:100%;min-height:41px;color:var(--focus-ink);background:#fff;border-radius:0;outline:0;padding:0 11px;font-size:12px}.focus-form-row input:focus{border-color:var(--focus-blue);box-shadow:0 0 0 3px #4e78961f}.focus-number-input{display:block;position:relative}.focus-number-input input{padding-right:44px}.focus-number-input small{color:var(--focus-muted);font-size:10px;position:absolute;top:13px;right:11px}.focus-start-button{border:1px solid var(--focus-ink);background:var(--focus-ink);color:#fff;align-items:center;gap:9px;width:100%;max-width:540px;min-height:45px;margin-top:25px;padding:0 14px;font-size:12px;font-weight:700;transition:transform .16s,background .16s;display:flex}.focus-start-button:hover:not(:disabled){background:var(--focus-coral);transform:translateY(-2px)}.focus-start-button:disabled{cursor:wait;opacity:.6}.focus-session-hero{border:1px solid var(--focus-line);background:var(--focus-panel);max-width:1160px;margin:0 auto}.focus-session-heading{border-bottom:1px solid var(--focus-line);justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 29px 18px;display:flex}.focus-session-heading h2{font-family:var(--font-serif), "Songti SC", serif;margin:8px 0 0;font-size:25px;font-weight:600}.focus-session-state{color:#498467;align-items:center;gap:8px;margin-top:3px;font-size:11px;font-weight:700;display:inline-flex}.focus-session-state i{background:#4d9c71;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #4d9c7121}.focus-session-state.is-paused{color:#a16749}.focus-session-state.is-paused i{background:#d5925d;box-shadow:0 0 0 4px #d5925d21}.focus-session-main{grid-template-columns:1fr 1fr;gap:clamp(28px,8vw,100px);padding:30px 29px 26px;display:grid}.focus-timer-block>span{color:var(--focus-muted);font-size:11px;display:block}.focus-timer-block>strong{letter-spacing:-.09em;margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(50px,7vw,76px);font-weight:500;line-height:1;display:block}.focus-progress-track{background:#e7efec;height:5px;margin-top:22px}.focus-progress-track i{background:var(--focus-coral);height:100%;transition:width .6s;display:block}.focus-timer-meta{color:var(--focus-muted);justify-content:space-between;margin-top:8px;font-size:10px;display:flex}.focus-trend-block{align-self:end}.focus-block-heading,.focus-panel-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.focus-block-heading span{font-size:12px;font-weight:700}.focus-block-heading small{color:var(--focus-muted);font-size:10px}.focus-mini-bars{border-bottom:1px solid var(--focus-line);align-items:end;gap:7px;height:86px;margin-top:13px;display:flex}.focus-mini-bars i{background:#b4ccc5;flex:1;min-width:5px}.focus-mini-bars i:nth-last-child(-n+3){background:var(--focus-blue)}.focus-trend-block>p{color:var(--focus-mint);align-items:center;gap:5px;margin:9px 0 0;font-size:10px;display:flex}.focus-session-controls{border-top:1px solid var(--focus-line);background:#fafcfb;flex-wrap:wrap;align-items:center;gap:9px;padding:15px 29px;display:flex}.focus-control-primary,.focus-control-secondary,.focus-control-quiet{border:1px solid var(--focus-line);justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-size:11px;font-weight:700;transition:background .16s,color .16s,border .16s;display:inline-flex}.focus-control-primary{border-color:var(--focus-ink);background:var(--focus-ink);color:#fff}.focus-control-primary:hover:not(:disabled){background:var(--focus-coral)}.focus-control-secondary{color:var(--focus-ink);background:#fff}.focus-control-secondary:hover:not(:disabled){border-color:var(--focus-blue);color:var(--focus-blue)}.focus-control-quiet{color:var(--focus-muted);background:0 0;border-color:#0000;margin-left:auto;font-weight:500}.focus-control-quiet:hover:not(:disabled){color:var(--focus-coral)}.focus-session-controls button:disabled{cursor:wait;opacity:.55}.focus-session-grid{grid-template-columns:1.06fr .94fr;gap:15px;max-width:1160px;margin:15px auto 0;display:grid}.focus-camera-panel,.focus-state-panel,.focus-history-panel{border:1px solid var(--focus-line);background:var(--focus-panel)}.focus-camera-panel,.focus-state-panel{min-height:290px;padding:23px}.focus-panel-heading h3{font-family:var(--font-serif), "Songti SC", serif;margin:7px 0 0;font-size:21px;font-weight:600}.focus-panel-privacy{color:var(--focus-mint);align-items:center;gap:5px;font-size:10px;display:inline-flex}.focus-video-stage{border:1px solid var(--focus-line);background:#eaf2ef;min-height:172px;margin-top:18px;display:grid;position:relative;overflow:hidden}.focus-video-stage video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;min-height:172px;display:none;transform:scaleX(-1)}.focus-video-stage.is-live video{display:block}.focus-video-placeholder{color:var(--focus-blue);text-align:center;align-content:center;justify-items:center;gap:7px;padding:20px;display:grid}.focus-video-placeholder strong{color:var(--focus-ink);font-size:12px}.focus-video-placeholder span{max-width:270px;color:var(--focus-muted);font-size:10px;line-height:1.6}.focus-video-live-label{color:#fff;background:#17314ac4;align-items:center;gap:6px;padding:5px 7px;font-size:9px;display:inline-flex;position:absolute;top:10px;left:10px}.focus-video-live-label i{background:#76ce9b;border-radius:50%;width:5px;height:5px}.focus-video-live-label.is-analyzing i{animation:1.2s ease-in-out infinite focus-analysis-pulse}.focus-video-live-label.is-fallback{background:#8b5437d6}.focus-video-live-label.is-fallback i{background:#f3bd86}.focus-camera-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:13px;display:flex}.focus-camera-actions button{color:var(--focus-blue);align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.focus-camera-actions button:disabled{opacity:.5}.focus-camera-actions>span{color:var(--focus-muted);align-items:center;gap:4px;font-size:9px;display:inline-flex}.focus-camera-message{min-height:16px;color:var(--focus-muted);margin:8px 0 0;font-size:9px;line-height:1.6}.focus-camera-message.is-fallback{color:#a15844}.focus-state-current{font-family:var(--font-serif), "Songti SC", serif;align-items:center;gap:8px;margin:24px 0 0;font-size:25px;font-weight:600;display:flex}.focus-state-current small{color:var(--focus-muted);margin-left:auto;font-family:inherit;font-size:10px;font-weight:400}.focus-state-dot{background:var(--focus-mint);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 5px #6da18f24}.focus-state-dot.state-distracted{background:var(--focus-coral);box-shadow:0 0 0 5px #df715524}.focus-state-dot.state-away{background:#d29864;box-shadow:0 0 0 5px #d2986424}.focus-state-dot.state-unknown{background:#94a3b8;box-shadow:0 0 0 5px #94a3b824}.focus-state-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:25px;display:grid}.focus-state-options>div{border:1px solid var(--focus-line);color:var(--focus-muted);background:#fbfcfb;justify-items:center;gap:6px;padding:10px 4px;font-size:10px;display:grid}.focus-state-options>div.is-active{border-color:var(--focus-blue);color:var(--focus-blue);background:#edf4f7}.focus-state-sync{color:var(--focus-mint);font-size:10px}.focus-state-sync.is-syncing{color:var(--focus-blue)}.focus-observation{border-top:1px solid var(--focus-line);gap:10px;margin-top:16px;padding-top:14px;display:grid}.focus-observation-row{color:var(--focus-muted);grid-template-columns:64px minmax(0,1fr);align-items:start;gap:9px;font-size:10px;line-height:1.5;display:grid}.focus-observation-row>span{padding-top:3px}.focus-observation-row>strong{color:var(--focus-ink);font-size:12px;font-weight:700}.focus-observation-row>em{padding-top:2px;font-style:normal}.focus-activity-row>strong{font-size:14px}.focus-object-tags{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.focus-object-tags b{min-height:23px;color:var(--focus-ink);background:#f4f9f7;border:1px solid #dce8e4;align-items:baseline;gap:4px;padding:3px 7px;font-size:10px;font-weight:600;display:inline-flex}.focus-object-tags b.is-distraction{color:#a15844;background:#fff5ef;border-color:#efd4ca}.focus-object-tags b.is-learning{color:var(--focus-mint);border-color:#c9e3dc}.focus-object-tags small{color:inherit;opacity:.7;font-size:8px;font-weight:500}.focus-reminder{border-left:2px solid var(--focus-coral);color:#a15844;background:#fff5ef;align-items:flex-start;gap:7px;margin-top:21px;padding:10px;font-size:10px;line-height:1.65;display:flex}.focus-reminder svg{color:var(--focus-coral);flex:none;margin-top:1px}.focus-reminder p{flex:1;margin:0}.focus-reminder button{color:inherit}.focus-reminder-muted{color:var(--focus-muted);background:#f1f7f4;border-left-color:#bfd6cd}.focus-reminder-muted svg{color:var(--focus-mint)}@keyframes focus-analysis-pulse{0%,to{opacity:.45;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.focus-finish-main{min-height:420px}.focus-score-line{align-items:end;gap:11px;margin-top:28px;display:flex}.focus-score-line strong{color:var(--focus-coral);letter-spacing:-.1em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:76px;font-weight:500;line-height:.9}.focus-score-line span{color:var(--focus-muted);padding-bottom:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.6}.focus-finish-stats{grid-template-columns:repeat(4,1fr);gap:13px;max-width:560px;margin-top:32px;display:grid}.focus-finish-stats div{border-top:1px solid var(--focus-line);padding-top:11px}.focus-finish-stats span{color:var(--focus-muted);font-size:10px;display:block}.focus-finish-stats strong{margin-top:5px;font-size:15px;font-weight:700;display:block}.focus-finish-button{max-width:410px;margin-top:34px}.focus-finish-aside h3{margin-top:55px}.focus-inline-link,.focus-panel-link{color:var(--focus-blue);align-items:center;gap:6px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.focus-inline-link:hover,.focus-panel-link:hover{color:var(--focus-coral)}.focus-history-grid{grid-template-columns:1fr 1fr;gap:15px;max-width:1160px;margin:15px auto 0;display:grid}.focus-history-wide{grid-column:1/-1}.focus-history-panel{min-height:195px;padding:22px 23px}.focus-panel-heading>span{color:var(--focus-muted);font-size:10px}.focus-history-chart{border-bottom:1px solid var(--focus-line);align-items:end;gap:8px;height:108px;margin-top:16px;padding-bottom:1px;display:flex}.focus-history-chart>div{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:7px;height:100%;display:flex}.focus-history-chart i{background:var(--focus-blue);width:min(20px,100%);min-height:8px}.focus-history-chart>div:nth-last-child(-n+3) i{background:var(--focus-coral)}.focus-history-chart small{color:var(--focus-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px}.focus-empty-inline{min-height:110px;color:var(--focus-muted);align-items:center;gap:9px;font-size:11px;display:flex}.focus-guidance-card{border-left:2px solid var(--focus-coral);background:#fff5ef;margin-top:18px;padding:14px}.focus-guidance-card>div{color:#a15844;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.focus-guidance-card>div svg{color:var(--focus-coral)}.focus-guidance-card p{color:var(--focus-ink);font-family:var(--font-serif), "Songti SC", serif;margin:11px 0 0;font-size:14px;line-height:1.65}.focus-guidance-card small{color:var(--focus-muted);margin-top:10px;font-size:9px;display:block}.focus-recent-list{margin-top:16px}.focus-recent-list>div{border-bottom:1px solid #edf1f0;grid-template-columns:90px minmax(0,1fr) 95px 60px;align-items:center;gap:12px;min-height:43px;font-size:11px;display:grid}.focus-recent-list>div:last-child{border-bottom:0}.focus-recent-mode{color:var(--focus-muted)}.focus-recent-list strong{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.focus-recent-list>div>span:not(.focus-recent-mode){color:var(--focus-muted)}.focus-recent-list b{color:var(--focus-mint);text-align:right;font-weight:700}.focus-supervisor-capture{z-index:-1;opacity:.01;pointer-events:none;width:2px;height:2px;position:fixed;top:0;left:0}.portal-shell-student .portal-main>.focus-supervisor-capture{z-index:-1!important;position:fixed!important}.focus-floating-monitor{z-index:55;overscroll-behavior:contain;color:#17314a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border:1px solid #cbdcdb;border-radius:8px;width:min(340px,100vw - 32px);max-height:calc(100vh - 16px);position:fixed;bottom:24px;right:24px;overflow:hidden auto;box-shadow:0 18px 48px #12303933}.portal-shell-student .portal-main>.focus-floating-monitor{z-index:55!important;position:fixed!important}.focus-floating-head{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#f1f8f6;border-bottom:1px solid #e2eceb;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:11px 12px;display:grid}.focus-floating-head.is-dragging{cursor:grabbing}.focus-floating-icon{color:#fff;background:#087f88;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.focus-floating-head strong{font-size:12px;font-weight:750;display:block}.focus-floating-head small{color:#718191;margin-top:2px;font-size:9px;display:block}.focus-floating-drag-handle{color:#8a9a9f;justify-content:center;align-items:center;width:24px;height:30px;display:inline-flex}.focus-floating-head>button{color:#718191;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.focus-floating-head>button:hover{color:#17314a;background:#e4efed}.focus-floating-video{aspect-ratio:16/9;background:#132d35;border:1px solid #d6e3e1;border-radius:6px;margin:12px 14px 0;position:relative;overflow:hidden}.focus-floating-video video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.focus-floating-video.is-placeholder video{visibility:hidden}.focus-floating-video-label{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a2a31c7;border-radius:5px;align-items:center;gap:6px;padding:5px 7px;font-size:9px;font-weight:700;display:inline-flex;position:absolute;top:9px;left:9px}.focus-floating-video-label i{background:#55d8a8;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #55d8a833}.focus-floating-video-placeholder{color:#d5e3e3;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:16px;display:flex;position:absolute;inset:0}.focus-floating-video-placeholder span{font-size:10px;font-weight:650}.focus-floating-video-placeholder button{color:#fff;background:#ffffff1a;border:1px solid #ffffff6b;border-radius:5px;min-height:28px;padding:0 10px;font-size:9px;font-weight:700}.focus-floating-video-placeholder button:hover{background:#ffffff2e}.focus-floating-task{text-overflow:ellipsis;white-space:nowrap;margin:13px 14px 0;font-size:12px;font-weight:700;overflow:hidden}.focus-floating-status-row{justify-content:space-between;align-items:center;gap:12px;margin:12px 14px 0;display:flex}.focus-floating-status{align-items:center;gap:7px;font-size:11px;font-weight:700;display:inline-flex}.focus-floating-status i{background:#38a179;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #38a17921}.focus-floating-status.is-distracted{color:#a94e37}.focus-floating-status.is-distracted i{background:#d7684d;box-shadow:0 0 0 4px #d7684d21}.focus-floating-status.is-away,.focus-floating-status.is-paused{color:#936136}.focus-floating-status.is-away i,.focus-floating-status.is-paused i{background:#d59355;box-shadow:0 0 0 4px #d5935524}.focus-floating-status-row>strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:25px;font-weight:600;line-height:1}.focus-floating-progress{background:#e5eeec;border-radius:3px;height:5px;margin:13px 14px 0;overflow:hidden}.focus-floating-progress i{border-radius:inherit;background:#087f88;height:100%;display:block}.focus-floating-meta{color:#718191;justify-content:space-between;gap:12px;margin:7px 14px 0;font-size:9px;display:flex}.focus-floating-actions{grid-template-columns:1fr 1fr;gap:8px;padding:13px 14px 14px;display:grid}.focus-floating-actions a,.focus-floating-actions button{border:1px solid #cbdcdb;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:35px;font-size:10px;font-weight:700;display:inline-flex}.focus-floating-actions a{color:#087f88}.focus-floating-actions button{color:#fff;background:#075c64;border-color:#075c64}.focus-floating-actions button:disabled{opacity:.55}.focus-floating-reopen{z-index:55;color:#087f88;background:#f5fbf9;border:1px solid #b9d6d2;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #12303933}.focus-floating-reopen:after{content:"";background:#27ae79;border:2px solid #f5fbf9;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.focus-floating-reopen:hover{background:#eaf6f3;border-color:#087f88}.portal-shell-student .portal-main>.focus-floating-reopen{z-index:55!important;position:fixed!important}.focus-away-backdrop{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#081e278a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.portal-shell-student .portal-main>.focus-away-backdrop{z-index:80!important;position:fixed!important}.focus-away-dialog{color:#17314a;text-align:center;background:#fff;border:1px solid #cbdcdb;border-radius:8px;width:min(430px,100%);padding:28px;box-shadow:0 24px 72px #071c2747}.focus-away-icon{color:#bd593f;background:#fff0e9;border-radius:8px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:17px;display:inline-flex}.focus-away-dialog h2{margin:8px 0 0;font-size:24px;font-weight:750}.focus-away-dialog>p:not(.focus-section-label){color:#718191;max-width:330px;margin:10px auto 0;font-size:12px;line-height:1.75}.focus-away-session{text-align:left;border-top:1px solid #e2e9e8;border-bottom:1px solid #e2e9e8;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding:13px 0;display:flex}.focus-away-session span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:700;overflow:hidden}.focus-away-session strong{flex:none;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:18px}.focus-away-continue{color:#fff;background:#075c64;border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:42px;margin-top:18px;font-size:11px;font-weight:750;display:inline-flex}.focus-away-finish{color:#718191;margin-top:13px;font-size:10px}.focus-away-dialog button:disabled{opacity:.55}.focus-distraction-notice{z-index:70;color:#17314a;background:#fff8f5;border:1px solid #efc8bd;border-left:4px solid #d7684d;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;width:min(370px,100vw - 32px);padding:14px;display:grid;position:fixed;top:82px;right:24px;box-shadow:0 16px 42px #572d232e}.portal-shell-student .portal-main>.focus-distraction-notice{z-index:70!important;position:fixed!important}.focus-distraction-notice>span{color:#bd593f;background:#fde8df;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.focus-distraction-notice strong{font-size:11px;display:block}.focus-distraction-notice p{color:#8f5849;margin:4px 0 0;font-size:10px;line-height:1.55}.focus-distraction-notice button{color:#9b6b5f}.focus-score-rules{border:1px solid var(--focus-line);background:#fff;border-radius:8px;max-width:1160px;margin:15px auto 0;padding:22px 23px;box-shadow:0 9px 28px #1d454f0e}.focus-score-rules-heading{justify-content:space-between;align-items:start;gap:18px;display:flex}.focus-score-rules-heading h3{margin:7px 0 0;font-size:18px;font-weight:720}.focus-score-rules-heading>span{color:var(--focus-muted);font-size:10px}.focus-score-rule-grid{border-top:1px solid #e4ebea;border-bottom:1px solid #e4ebea;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:18px;display:grid}.focus-score-rule-grid>div{border-left:1px solid #e4ebea;min-width:0;padding:16px}.focus-score-rule-grid>div:first-child{border-left:0;padding-left:0}.focus-score-rule-grid strong{color:#087f88;min-width:30px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:22px;display:inline-block}.focus-score-rule-grid span{font-size:11px;font-weight:750}.focus-score-rule-grid p{color:var(--focus-muted);margin:7px 0 0;font-size:9px;line-height:1.65}.focus-score-rule-note{color:var(--focus-muted);align-items:flex-start;gap:7px;margin:13px 0 0;font-size:9px;line-height:1.65;display:flex}.focus-score-rule-note svg{color:var(--focus-mint);flex:none;margin-top:1px}.focus-report-breakdown{border-top:1px solid var(--focus-line);grid-template-columns:1fr 1fr;gap:0 18px;max-width:560px;margin-top:21px;padding-top:9px;display:grid}.focus-report-breakdown>div{border-bottom:1px solid #edf1f0;justify-content:space-between;align-items:center;gap:12px;min-height:35px;font-size:10px;display:flex}.focus-report-breakdown span{color:var(--focus-muted)}.focus-report-breakdown strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.focus-report-breakdown p,.focus-legacy-score-note{color:var(--focus-muted);grid-column:1/-1;margin:10px 0 0;font-size:9px;line-height:1.6}@media (max-width:900px){.focus-page{padding-top:28px}.focus-start-grid,.focus-finish-layout{grid-template-columns:1fr}.focus-start-aside,.focus-finish-aside{border-top:1px solid var(--focus-line);border-left:0}.focus-start-aside h3,.focus-finish-aside h3{margin-top:25px}.focus-session-grid,.focus-history-grid{grid-template-columns:1fr}.focus-history-wide{grid-column:auto}.focus-score-rule-grid{grid-template-columns:1fr 1fr}.focus-score-rule-grid>div:nth-child(3){border-top:1px solid #e4ebea;border-left:0;padding-left:0}.focus-score-rule-grid>div:nth-child(4){border-top:1px solid #e4ebea}}@media (max-width:600px){.focus-page{padding:23px 13px 45px}.focus-page-header{margin-bottom:23px;display:block}.focus-page-header h1{font-size:30px}.focus-page-subtitle{font-size:12px}.focus-privacy-note{margin-top:18px}.focus-start-panel,.focus-finish-main{padding:23px 18px}.focus-start-aside,.focus-finish-aside{padding:22px 18px}.focus-mode-switch,.focus-form-row{grid-template-columns:1fr}.focus-form-row{gap:11px}.focus-session-heading,.focus-session-main,.focus-session-controls{padding-inline:18px}.focus-session-heading{display:block}.focus-session-state{margin-top:13px}.focus-session-main{grid-template-columns:1fr;gap:32px;padding-top:25px}.focus-timer-block>strong{font-size:59px}.focus-session-controls{flex-direction:column;align-items:stretch}.focus-control-primary,.focus-control-secondary,.focus-control-quiet{width:100%}.focus-control-quiet{margin-left:0}.focus-camera-panel,.focus-state-panel,.focus-history-panel{padding:18px}.focus-state-current{font-size:22px}.focus-state-current small{font-size:9px}.focus-observation-row{grid-template-columns:58px minmax(0,1fr)}.focus-state-options{gap:5px}.focus-state-options button{padding-inline:2px;font-size:9px}.focus-finish-stats{grid-template-columns:1fr 1fr;gap:8px}.focus-finish-stats strong{font-size:13px}.focus-recent-list>div{grid-template-columns:70px minmax(0,1fr) 54px;gap:7px}.focus-recent-list b{display:none}.focus-floating-monitor,.focus-floating-reopen{bottom:12px;right:12px}.focus-distraction-notice{top:12px;right:12px}.focus-score-rules{padding:18px 16px}.focus-score-rules-heading{display:block}.focus-score-rules-heading>span{margin-top:6px;display:block}.focus-score-rule-grid{grid-template-columns:1fr}.focus-score-rule-grid>div,.focus-score-rule-grid>div:first-child,.focus-score-rule-grid>div:nth-child(3){border-top:1px solid #e4ebea;border-left:0;padding:13px 0}.focus-score-rule-grid>div:first-child{border-top:0}.focus-report-breakdown{grid-template-columns:1fr}.focus-away-dialog{padding:24px 18px}}@media (prefers-reduced-motion:reduce){.focus-mode-switch button,.focus-start-button,.focus-control-primary,.focus-control-secondary,.focus-control-quiet{transition:none}}.teacher-focus-page{--teacher-ink:#1d3143}.teacher-toolbar{flex-wrap:wrap;align-items:center;gap:10px;max-width:1160px;margin:0 auto 17px;display:flex}.teacher-toolbar label{border:1px solid var(--focus-line);min-height:36px;color:var(--focus-muted);background:#fff;align-items:center;gap:7px;padding:0 11px;font-size:11px;display:flex}.teacher-toolbar select{min-width:128px;color:var(--focus-ink);background:0 0;border:0;outline:0;font-size:12px;font-weight:700}.teacher-toolbar>button{border:1px solid var(--focus-line);min-height:36px;color:var(--focus-muted);background:#fff;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.teacher-toolbar>button:hover{border-color:var(--focus-blue);color:var(--focus-blue)}.teacher-toolbar .teacher-plan-trigger{border-color:var(--focus-ink);background:var(--focus-ink);color:#fff;margin-left:auto}.teacher-toolbar .teacher-plan-trigger:hover{border-color:var(--focus-coral);background:var(--focus-coral);color:#fff}.teacher-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1160px;margin:0 auto 15px;display:grid}.teacher-kpi{border:1px solid var(--focus-line);background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:5px 9px;min-height:107px;padding:17px;display:grid}.teacher-kpi svg{color:var(--focus-blue);grid-row:span 2}.teacher-kpi>span{color:var(--focus-muted);font-size:10px}.teacher-kpi strong{grid-column:2;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:20px;font-weight:600}.teacher-kpi small{color:var(--focus-muted);grid-column:1/-1;font-size:9px}.teacher-overview-grid{grid-template-columns:1.28fr .72fr;gap:15px;max-width:1160px;margin:0 auto 15px;display:grid}.teacher-trend-panel,.teacher-action-panel,.teacher-students-panel,.teacher-detail-panel,.teacher-plans-panel{border:1px solid var(--focus-line);background:#fff}.teacher-trend-panel,.teacher-action-panel{min-height:245px;padding:22px 23px}.teacher-panel-heading h2{font-family:var(--font-serif), "Songti SC", serif;margin:7px 0 0;font-size:22px;font-weight:600}.teacher-panel-heading>span{color:var(--focus-muted);font-size:10px}.teacher-trend-chart{border-bottom:1px solid var(--focus-line);align-items:end;gap:8px;height:125px;margin-top:19px;display:flex}.teacher-trend-chart>div{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:7px;height:100%;display:flex}.teacher-trend-chart i{background:var(--focus-blue);width:min(24px,100%);min-height:8px}.teacher-trend-chart>div:nth-last-child(-n+3) i{background:var(--focus-coral)}.teacher-trend-chart small{color:var(--focus-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px}.teacher-action-panel{background:#eef5f2}.teacher-action-panel h2{max-width:250px;font-family:var(--font-serif), "Songti SC", serif;margin:33px 0 0;font-size:25px;font-weight:600}.teacher-action-panel>p{max-width:260px;color:var(--focus-muted);margin:9px 0 0;font-size:11px;line-height:1.75}.teacher-action-line{color:var(--focus-muted);align-items:baseline;gap:7px;margin-top:16px;font-size:10px;display:flex}.teacher-action-count{color:var(--focus-coral);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:25px}.teacher-action-panel button{color:var(--focus-blue);align-items:center;gap:8px;margin-top:16px;font-size:11px;font-weight:700;display:inline-flex}.teacher-students-panel,.teacher-detail-panel,.teacher-plans-panel{max-width:1160px;margin:0 auto 15px;padding:22px 23px}.teacher-student-table{margin-top:18px}.teacher-table-head,.teacher-student-row{grid-template-columns:minmax(180px,1.6fr) 1fr .85fr .85fr 1fr;align-items:center;gap:12px;display:grid}.teacher-table-head{color:var(--focus-muted);padding:0 12px 9px;font-size:9px}.teacher-student-row{width:100%;min-height:57px;color:var(--focus-ink);text-align:left;background:#fff;border-top:1px solid #edf1f0;padding:8px 12px;font-size:11px}.teacher-student-row:hover,.teacher-student-row.is-selected{background:#f1f7f4}.teacher-student-name{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:1px 9px;display:grid}.teacher-student-name b{width:30px;height:30px;color:var(--focus-blue);font-family:var(--font-serif), "Songti SC", serif;background:#e8f0f1;border-radius:50%;grid-row:span 2;place-items:center;font-size:15px;font-weight:600;display:grid}.teacher-student-name strong{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.teacher-student-name small,.teacher-student-row>span>small{color:var(--focus-muted);margin-top:3px;font-size:9px;display:block}.teacher-score{color:var(--focus-mint);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}.teacher-score small{color:var(--focus-muted);font-size:9px;display:inline}.teacher-event-count{color:var(--focus-muted)}.teacher-event-count.is-alert{color:var(--focus-coral);font-weight:700}.teacher-last-date{color:var(--focus-muted);justify-content:space-between;align-items:center;gap:5px;font-size:10px;display:flex}.teacher-last-date svg{color:var(--focus-blue)}.teacher-empty-inline,.teacher-empty-state{color:var(--focus-muted);justify-content:center;align-items:center;gap:9px;font-size:11px;display:flex}.teacher-empty-inline{min-height:118px}.teacher-empty-state{border:1px dashed var(--focus-line);text-align:center;background:#fff;flex-direction:column;min-height:48vh}.teacher-empty-state h2{font-family:var(--font-serif), "Songti SC", serif;margin:9px 0 0;font-size:25px;font-weight:600}.teacher-empty-state p{margin:0;font-size:11px}.teacher-detail-grid{grid-template-columns:1fr 1fr;gap:25px;margin-top:18px;display:grid}.teacher-detail-grid h3{margin:0;font-size:12px;font-weight:700}.teacher-detail-list{margin-top:10px}.teacher-detail-list>div{border-bottom:1px solid #edf1f0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:35px;font-size:10px;display:grid}.teacher-detail-list>div:last-child{border-bottom:0}.teacher-detail-list small{color:var(--focus-muted)}.teacher-detail-list b{color:var(--focus-coral);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600}.teacher-plan-list{margin-top:15px}.teacher-plan-row{border-top:1px solid #edf1f0;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.teacher-plan-copy{min-width:0}.teacher-plan-status{padding:3px 6px;font-size:9px;display:inline-block}.status-draft{color:var(--focus-muted);background:#f3f4f2}.status-confirmed{color:var(--focus-blue);background:#edf4f7}.status-published{color:var(--focus-mint);background:#eef7f2}.status-archived{color:#9da6a5;background:#f4f4f4}.teacher-plan-copy strong{margin-top:7px;font-size:12px;display:block}.teacher-plan-copy p{max-width:700px;color:var(--focus-muted);text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:11px;line-height:1.55;overflow:hidden}.teacher-plan-copy small{color:var(--focus-muted);margin-top:7px;font-size:9px;display:block}.teacher-plan-actions{flex:none}.teacher-plan-actions button{border:1px solid var(--focus-blue);min-height:31px;color:var(--focus-blue);align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.teacher-plan-actions button:hover:not(:disabled){border-color:var(--focus-coral);color:var(--focus-coral)}.teacher-plan-actions button:disabled{opacity:.5}.teacher-published-mark{color:var(--focus-mint);align-items:center;gap:5px;font-size:10px;display:inline-flex}.teacher-composer-backdrop{z-index:40;background:#17314a2e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.teacher-composer{border:1px solid var(--focus-line);background:#fff;width:min(520px,100%);padding:25px;box-shadow:14px 16px #a8cfc494}.teacher-composer-head{justify-content:space-between;align-items:start;gap:15px;margin-bottom:24px;display:flex}.teacher-composer-head h2{font-family:var(--font-serif), "Songti SC", serif;margin:7px 0 0;font-size:25px;font-weight:600}.teacher-composer-head button{color:var(--focus-muted)}.teacher-composer>label{color:var(--focus-muted);gap:7px;margin-top:15px;font-size:10px;display:grid}.teacher-composer input,.teacher-composer select,.teacher-composer textarea{border:1px solid var(--focus-line);width:100%;color:var(--focus-ink);background:#fff;border-radius:0;outline:0;font-size:12px}.teacher-composer input,.teacher-composer select{min-height:39px;padding:0 10px}.teacher-composer textarea{resize:vertical;padding:10px}.teacher-composer input:focus,.teacher-composer select:focus,.teacher-composer textarea:focus{border-color:var(--focus-blue);box-shadow:0 0 0 3px #4e78961f}.teacher-composer-footer{justify-content:space-between;align-items:end;gap:15px;margin-top:20px;display:flex}.teacher-composer-footer>label{color:var(--focus-muted);gap:7px;font-size:10px;display:grid}.teacher-minutes-input{display:block;position:relative}.teacher-minutes-input input{width:112px;padding:0 40px 0 10px}.teacher-minutes-input small{color:var(--focus-muted);font-size:9px;position:absolute;top:12px;right:10px}.teacher-composer-footer>button{border:1px solid var(--focus-ink);background:var(--focus-ink);color:#fff;align-items:center;gap:7px;min-height:39px;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.teacher-composer-footer>button:hover:not(:disabled){border-color:var(--focus-coral);background:var(--focus-coral)}.teacher-composer-footer>button:disabled{opacity:.5}@media (max-width:1000px){.teacher-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-overview-grid{grid-template-columns:1fr}}@media (max-width:680px){.teacher-toolbar{flex-direction:column;align-items:stretch}.teacher-toolbar label,.teacher-toolbar>button{width:100%}.teacher-toolbar .teacher-plan-trigger{margin-left:0}.teacher-kpi-grid{grid-template-columns:1fr 1fr;gap:7px}.teacher-kpi{min-height:94px;padding:12px}.teacher-kpi strong{font-size:16px}.teacher-table-head{display:none}.teacher-student-row{grid-template-columns:minmax(145px,1.5fr) .85fr .7fr;gap:7px;padding-inline:7px}.teacher-student-row>span:nth-child(4),.teacher-student-row>span:nth-child(5){display:none}.teacher-detail-grid{grid-template-columns:1fr;gap:18px}.teacher-plan-row{flex-direction:column;align-items:flex-start;gap:10px}.teacher-composer{padding:20px 17px}.teacher-composer-footer{flex-direction:column;align-items:stretch}.teacher-composer-footer>button{justify-content:center}}.admin-focus-page{--admin-ink:#1d3143}.admin-health-strip{border:1px solid var(--focus-line);background:#fff;justify-content:space-between;align-items:center;gap:25px;max-width:1160px;margin:0 auto 15px;padding:20px 23px;display:flex}.admin-health-main{align-items:center;gap:13px;display:flex}.admin-health-orb{border-radius:50%;justify-content:center;align-items:center;width:43px;height:43px;display:inline-flex}.admin-health-orb.is-healthy{color:var(--focus-mint);background:#e5f3ec}.admin-health-orb.is-alert{color:var(--focus-coral);background:#fff0eb}.admin-health-orb.is-neutral{color:var(--focus-blue);background:#edf4f7}.admin-health-main h2{font-family:var(--font-serif), "Songti SC", serif;margin:5px 0 0;font-size:22px;font-weight:600}.admin-health-main>div>span{color:var(--focus-muted);margin-top:4px;font-size:10px;display:block}.admin-health-meta{align-items:center;gap:21px;display:flex}.admin-health-meta>div{gap:4px;display:grid}.admin-health-meta small{color:var(--focus-muted);font-size:9px}.admin-health-meta strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:600}.admin-health-meta button{border:1px solid var(--focus-blue);min-height:35px;color:var(--focus-blue);align-items:center;gap:7px;padding:0 11px;font-size:10px;font-weight:700;display:inline-flex}.admin-health-meta button:hover:not(:disabled){border-color:var(--focus-coral);color:var(--focus-coral)}.admin-health-meta button:disabled{opacity:.5}.admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1160px;margin:0 auto 15px;display:grid}.admin-kpi{border:1px solid var(--focus-line);background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:5px 9px;min-height:102px;padding:16px;display:grid}.admin-kpi svg{color:var(--focus-blue);grid-row:span 2}.admin-kpi span{color:var(--focus-muted);font-size:10px}.admin-kpi strong{grid-column:2;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:19px;font-weight:600}.admin-kpi small{color:var(--focus-muted);grid-column:1/-1;font-size:9px}.admin-config-grid{grid-template-columns:1fr 1fr .88fr;gap:15px;max-width:1160px;margin:0 auto 15px;display:grid}.admin-config-panel{border:1px solid var(--focus-line);background:#fff;min-height:320px;padding:23px}.admin-config-panel>.teacher-panel-heading>svg{color:var(--focus-blue)}.admin-config-panel>label:not(.admin-toggle-row){color:var(--focus-muted);gap:7px;margin-top:21px;font-size:10px;display:grid}.admin-config-panel>label input{border:1px solid var(--focus-line);width:100%;min-height:38px;color:var(--focus-ink);border-radius:0;outline:0;padding:0 10px;font-size:12px}.admin-config-panel>label input:focus{border-color:var(--focus-blue);box-shadow:0 0 0 3px #4e78961f}.admin-toggle-row{border-top:1px solid #edf1f0;justify-content:space-between;align-items:center;gap:12px;margin-top:27px;padding-top:15px;display:flex}.admin-toggle-row>span{gap:5px;display:grid}.admin-toggle-row strong{color:var(--focus-ink);font-size:11px}.admin-toggle-row small{color:var(--focus-muted);font-size:9px}.admin-toggle-row button{background:#d6e0df;border-radius:14px;width:38px;height:22px;transition:background .16s;position:relative}.admin-toggle-row button i{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #142b4533}.admin-toggle-row button.is-on{background:var(--focus-mint)}.admin-toggle-row button.is-on i{transform:translate(16px)}.admin-number-field{justify-content:space-between;align-items:center;gap:14px;margin-top:21px;display:flex}.admin-number-field>span:first-child{gap:5px;display:grid}.admin-number-field strong{color:var(--focus-ink);font-size:11px}.admin-number-field small{color:var(--focus-muted);font-size:9px}.admin-number-control{flex:none;display:block;position:relative}.admin-number-control input{border:1px solid var(--focus-line);width:94px;min-height:36px;color:var(--focus-ink);border-radius:0;outline:0;padding:0 28px 0 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.admin-number-control em{color:var(--focus-muted);font-size:9px;font-style:normal;position:absolute;top:12px;right:8px}.admin-retention-number{align-items:baseline;gap:6px;margin-top:31px;display:flex}.admin-retention-number strong{color:var(--focus-coral);letter-spacing:-.08em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:47px;font-weight:500}.admin-retention-number span{color:var(--focus-muted);font-size:11px}.admin-range{width:100%;accent-color:var(--focus-coral);margin-top:17px}.admin-retention-panel>p{color:var(--focus-muted);margin:18px 0 0;font-size:10px;line-height:1.75}.admin-retention-scale{color:#9ba8a5;justify-content:space-between;margin-top:8px;font-size:9px;display:flex}.admin-save-bar{border:1px solid var(--focus-line);max-width:1160px;color:var(--focus-muted);background:#eef5f2;justify-content:space-between;align-items:center;gap:15px;margin:0 auto;padding:13px 16px;font-size:10px;display:flex}.admin-save-bar>span{align-items:center;gap:7px;display:inline-flex}.admin-save-bar>span svg{color:var(--focus-mint)}.admin-save-bar button{border:1px solid var(--focus-ink);background:var(--focus-ink);color:#fff;align-items:center;gap:7px;min-height:35px;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.admin-save-bar button:hover:not(:disabled){border-color:var(--focus-coral);background:var(--focus-coral)}.admin-save-bar button:disabled{opacity:.5}@media (max-width:1050px){.admin-config-grid{grid-template-columns:1fr 1fr}.admin-retention-panel{grid-column:1/-1;min-height:230px}}@media (max-width:720px){.admin-health-strip{flex-direction:column;align-items:flex-start}.admin-health-meta{justify-content:space-between;gap:12px;width:100%}.admin-kpi-grid{grid-template-columns:1fr 1fr;gap:7px}.admin-kpi{min-height:91px;padding:12px}.admin-kpi strong{font-size:16px}.admin-config-grid{grid-template-columns:1fr}.admin-retention-panel{grid-column:auto}.admin-save-bar{flex-direction:column;align-items:stretch}.admin-save-bar button{justify-content:center}}
.feedback-page{--feedback-ink:#102033;--feedback-muted:#66788c;--feedback-line:#d8e5e9;--feedback-cyan:#087e8b;--feedback-cyan-dark:#075d68;--feedback-mint:#dff5ee;min-height:100%;color:var(--feedback-ink);padding:28px 32px 36px}.feedback-heading,.feedback-heading-actions,.feedback-ticket-line,.feedback-ticket-footer,.feedback-detail-header,.feedback-detail-badges,.feedback-reply>div,.feedback-dialog>header,.feedback-dialog footer{align-items:center;display:flex}.feedback-heading{justify-content:space-between;gap:24px}.feedback-eyebrow{color:#0c7783;letter-spacing:0;margin:0 0 5px;font:700 11px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.feedback-heading h2{letter-spacing:0;margin:0;font-size:26px;font-weight:750;line-height:1.25}.feedback-heading>div>p:last-child{color:var(--feedback-muted);margin:6px 0 0;font-size:14px}.feedback-heading-actions{gap:8px}.feedback-icon-button,.feedback-primary-button,.feedback-secondary-button,.feedback-ghost-button{cursor:pointer;font:inherit;border:0;border-radius:7px;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.feedback-icon-button{border:1px solid var(--feedback-line);color:#496174;background:#fff;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.feedback-icon-button:hover{color:var(--feedback-cyan-dark);border-color:#9fc9cb}.feedback-icon-button svg{width:17px;height:17px}.feedback-primary-button,.feedback-secondary-button,.feedback-ghost-button{justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:13px;font-weight:700;display:inline-flex}.feedback-primary-button{background:var(--feedback-cyan-dark);color:#fff}.feedback-primary-button:hover:not(:disabled){background:#064b55;transform:translateY(-1px)}.feedback-secondary-button{color:var(--feedback-cyan-dark);background:#fff;border:1px solid #9bc6c8}.feedback-secondary-button:hover:not(:disabled){background:#effafa}.feedback-ghost-button{color:#405469;background:#eef3f5}.feedback-primary-button:disabled,.feedback-secondary-button:disabled{cursor:not-allowed;opacity:.55}.feedback-primary-button svg,.feedback-secondary-button svg{width:16px;height:16px}.feedback-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.feedback-metrics-admin{grid-template-columns:repeat(5,minmax(0,1fr))}.feedback-metric{background:#ffffffdb;border:1px solid #bfd5dae6;border-radius:8px;align-items:center;gap:13px;min-height:78px;padding:14px 16px;display:flex;box-shadow:0 7px 22px #204a520d}.feedback-metric>span{color:#087e78;background:#e5f6f3;border-radius:7px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.feedback-metric:nth-child(4)>span{color:#c45136;background:#fff0eb}.feedback-metric:nth-child(5)>span{color:#6e52a1;background:#f1edfb}.feedback-metric svg{width:18px;height:18px}.feedback-metric div{min-width:0}.feedback-metric strong{font-size:22px;line-height:1;display:block}.feedback-metric small{color:var(--feedback-muted);margin-top:6px;font-size:12px;display:block}.feedback-toolbar{align-items:center;gap:8px;min-width:0;margin-top:14px;display:flex}.feedback-toolbar select,.feedback-search,.feedback-admin-controls select,.feedback-dialog input,.feedback-dialog select,.feedback-dialog textarea,.feedback-reply textarea{border:1px solid var(--feedback-line);color:var(--feedback-ink);font:inherit;background:#fff;border-radius:7px;outline:none}.feedback-toolbar select{min-width:124px;height:38px;padding:0 30px 0 11px;font-size:12px}.feedback-search{align-items:center;gap:8px;width:min(280px,100%);height:38px;padding:0 11px;display:flex}.feedback-search:focus-within,.feedback-toolbar select:focus,.feedback-admin-controls select:focus,.feedback-dialog input:focus,.feedback-dialog select:focus,.feedback-dialog textarea:focus,.feedback-reply textarea:focus{border-color:#58aeb3;box-shadow:0 0 0 3px #087e8b1a}.feedback-search svg{color:#78909c;width:15px;height:15px}.feedback-search input{border:0;outline:0;width:100%;min-width:0;font-size:12px}.feedback-error{color:#9b3525;background:#fff4f1;border:1px solid #f0b7ac;border-radius:7px;align-items:center;gap:8px;min-height:40px;margin-top:12px;padding:9px 12px;font-size:13px;display:flex}.feedback-error>svg{width:16px;height:16px}.feedback-error button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto}.feedback-error button svg{width:15px;height:15px}.feedback-workspace{background:#ffffffe6;border:1px solid #cbdde1;border-radius:8px;grid-template-columns:minmax(290px,360px) minmax(0,1fr);height:clamp(520px,100vh - 300px,760px);min-height:520px;margin-top:14px;display:grid;overflow:hidden;box-shadow:0 14px 38px #17424b14}.feedback-list-pane,.feedback-detail-pane{min-width:0;min-height:0}.feedback-list-pane{border-right:1px solid var(--feedback-line)}.feedback-pane-title{border-bottom:1px solid var(--feedback-line);justify-content:space-between;align-items:center;height:47px;padding:0 15px;font-size:13px;font-weight:700;display:flex}.feedback-pane-title small{color:var(--feedback-muted);font-size:11px;font-weight:500}.feedback-ticket-list{height:calc(100% - 47px);padding:8px;overflow-y:auto}.feedback-ticket-item{width:100%;min-height:132px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;padding:13px;display:block;overflow:hidden}.feedback-ticket-item+.feedback-ticket-item{margin-top:4px}.feedback-ticket-item:hover{background:#f2f8f8}.feedback-ticket-item.is-selected{background:#e9f6f4;border-color:#98c9ca;box-shadow:inset 3px 0 #07808a}.feedback-ticket-line{gap:5px;min-width:0}.feedback-ticket-line time{color:#7b8c9b;margin-left:auto;font-size:11px}.feedback-status,.feedback-priority{white-space:nowrap;border-radius:4px;align-items:center;min-height:21px;padding:0 7px;font-size:10px;font-weight:700;display:inline-flex}.feedback-status-open{color:#4d6475;background:#eef3f6}.feedback-status-in_progress{color:#06707a;background:#e5f5f5}.feedback-status-resolved{color:#247547;background:#e4f5e9}.feedback-status-closed{color:#687785;background:#eceff2}.feedback-priority-normal{color:#6b7884;background:#f2f4f6}.feedback-priority-high{color:#9c6215;background:#fff2d9}.feedback-priority-urgent{color:#bb3e2d;background:#ffe8e2}.feedback-ticket-item>strong{color:#14283b;text-overflow:ellipsis;white-space:nowrap;margin-top:9px;font-size:14px;line-height:1.4;display:block;overflow:hidden}.feedback-ticket-summary{color:#627589;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.feedback-ticket-footer{color:#778998;justify-content:space-between;gap:8px;margin-top:9px;font-size:10px}.feedback-ticket-footer span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feedback-detail-pane{position:relative;overflow:hidden}.feedback-detail{flex-direction:column;height:100%;display:flex}.feedback-detail-header{border-bottom:1px solid var(--feedback-line);flex:none;justify-content:space-between;gap:18px;min-height:93px;padding:17px 20px}.feedback-detail-header>div:first-child{min-width:0}.feedback-ticket-number{color:#0a7780;font-size:11px;font-weight:700}.feedback-detail-header h3{overflow-wrap:anywhere;letter-spacing:0;margin:5px 0 0;font-size:18px;line-height:1.35}.feedback-detail-header p{color:var(--feedback-muted);margin:5px 0 0;font-size:11px}.feedback-detail-badges{flex:none;gap:5px}.feedback-admin-controls{border-bottom:1px solid var(--feedback-line);background:#f5faf9;flex:none;grid-template-columns:repeat(3,minmax(110px,1fr)) auto;align-items:end;gap:9px;padding:12px 20px;display:grid}.feedback-admin-controls label,.feedback-dialog label,.feedback-reply>label{color:#536779;gap:6px;font-size:11px;font-weight:700;display:grid}.feedback-admin-controls select{width:100%;height:36px;padding:0 9px;font-size:12px}.feedback-admin-controls .feedback-secondary-button{min-height:36px}.feedback-thread{flex:auto;min-height:0;padding:22px 22px 12px;overflow-y:auto}.feedback-thread-item{grid-template-columns:34px minmax(0,1fr);gap:10px;display:grid;position:relative}.feedback-thread-item+.feedback-thread-item{margin-top:20px}.feedback-thread-avatar{color:#08767e;background:#e7f4f2;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.feedback-thread-admin .feedback-thread-avatar{color:#684ca1;background:#e9e7f7}.feedback-thread-avatar svg{width:16px;height:16px}.feedback-thread-item>div{min-width:0}.feedback-thread-item p{align-items:center;gap:9px;margin:0 0 6px;display:flex}.feedback-thread-item p strong{font-size:12px}.feedback-thread-item p time{color:#8493a1;font-size:10px}.feedback-thread-item>div>div{color:#263d50;overflow-wrap:anywhere;white-space:pre-wrap;background:#f7fafb;border:1px solid #dbe7e9;border-radius:3px 8px 8px;max-width:min(720px,92%);padding:11px 13px;font-size:13px;line-height:1.65;display:inline-block}.feedback-thread-admin>div>div{background:#f7f5fc;border-color:#dcd7ed}.feedback-reply{border-top:1px solid var(--feedback-line);background:#fff;flex:none;padding:13px 20px 16px}.feedback-reply textarea{resize:vertical;width:100%;height:70px;margin-top:7px;padding:10px 12px;font-size:12px;line-height:1.5}.feedback-reply>div{justify-content:space-between;gap:12px;margin-top:8px}.feedback-reply>div>span{color:#8a98a4;font-size:10px}.feedback-reply .feedback-primary-button{min-height:34px}.feedback-loading,.feedback-empty,.feedback-detail-empty{color:#7a8d9b;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;min-height:180px;display:flex}.feedback-loading svg,.feedback-empty svg,.feedback-detail-empty svg{color:#6ca8aa;width:25px;height:25px}.feedback-loading span,.feedback-empty span,.feedback-detail-empty span{font-size:11px}.feedback-empty strong,.feedback-detail-empty strong{color:#526779;font-size:13px}.feedback-dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b1d2b8a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.feedback-dialog{background:#fff;border:1px solid #cbdde1;border-radius:8px;width:min(580px,100%);max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 28px 80px #081e2a40}.feedback-dialog>header{border-bottom:1px solid var(--feedback-line);justify-content:space-between;gap:20px;padding:20px 22px 16px}.feedback-dialog h3{letter-spacing:0;margin:0;font-size:20px}.feedback-dialog form{gap:15px;padding:19px 22px 22px;display:grid}.feedback-dialog input,.feedback-dialog select{width:100%;height:42px;padding:0 11px;font-size:13px}.feedback-dialog textarea{resize:vertical;width:100%;min-height:150px;padding:11px;font-size:13px;line-height:1.6}.feedback-dialog footer{justify-content:flex-end;gap:8px;padding-top:2px}.feedback-dialog-error{color:#a23929;align-items:center;gap:7px;font-size:12px;display:flex}.feedback-dialog-error svg{width:15px;height:15px}.is-spinning{animation:.8s linear infinite feedback-spin}@keyframes feedback-spin{to{transform:rotate(360deg)}}@media (max-width:1180px){.feedback-metrics-admin{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-toolbar{flex-wrap:wrap}.feedback-admin-controls{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media (max-width:820px){.feedback-page{padding:20px 16px 28px}.feedback-heading{align-items:flex-start}.feedback-heading h2{font-size:22px}.feedback-metrics,.feedback-metrics-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-workspace{grid-template-columns:1fr;height:auto;min-height:0;overflow:visible}.feedback-list-pane{border-right:0;border-bottom:1px solid var(--feedback-line)}.feedback-ticket-list{max-height:380px}.feedback-detail-pane,.feedback-detail{min-height:520px}}@media (max-width:520px){.feedback-page{padding:16px 12px 24px}.feedback-heading{gap:10px}.feedback-heading>div>p:last-child{display:none}.feedback-heading-actions .feedback-primary-button{padding:0 11px}.feedback-metric{min-height:68px;padding:10px}.feedback-metric>span{flex-basis:32px;width:32px;height:32px}.feedback-metric strong{font-size:19px}.feedback-toolbar select,.feedback-search{width:100%}.feedback-detail-header{align-items:flex-start;padding:15px}.feedback-detail-badges{flex-direction:column;align-items:flex-end}.feedback-admin-controls{grid-template-columns:1fr;padding:12px 15px}.feedback-thread{padding:17px 15px 10px}.feedback-thread-item>div>div{max-width:100%}.feedback-reply{padding:12px 15px 14px}.feedback-dialog-backdrop{padding:10px}.feedback-dialog>header,.feedback-dialog form{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){.feedback-icon-button,.feedback-primary-button,.feedback-secondary-button,.feedback-ghost-button{transition:none}}
.portal-shell,.portal-shell-student,.portal-shell-teacher,.portal-shell-admin{--workspace-bg:#eef6f8;--workspace-panel:#fff;--workspace-line:#d7e5e9;--workspace-ink:#102337;--workspace-muted:#62778a;--workspace-accent:#087f88;--workspace-accent-dark:#075c65;--workspace-mint:#dff5ed;background:var(--workspace-bg)!important;gap:0!important;padding:0!important}.portal-shell .portal-main,.portal-shell-student .portal-main,.portal-shell-teacher .portal-main,.portal-shell-admin .portal-main{position:relative;background-color:var(--workspace-bg)!important;background-image:linear-gradient(#5d919d09 1px,#0000 1px),linear-gradient(90deg,#5d919d09 1px,#0000 1px)!important;background-size:32px 32px!important;border-radius:0!important}.portal-shell .portal-main:before,.portal-shell .portal-main:after,.portal-shell-student .portal-main:before,.portal-shell-student .portal-main:after,.portal-shell-teacher .portal-main:before,.portal-shell-teacher .portal-main:after,.portal-shell-admin .portal-main:before,.portal-shell-admin .portal-main:after{display:none!important}.portal-shell .portal-topbar,.portal-shell-student .portal-topbar,.portal-shell-teacher .portal-topbar,.portal-shell-admin .portal-topbar{z-index:4;position:relative;border-bottom:1px solid var(--workspace-line)!important;-webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important;background:#ffffffeb!important;box-shadow:0 5px 18px #183d480b!important}.portal-shell .portal-mobile-header,.portal-shell-student .portal-mobile-header,.portal-shell-teacher .portal-mobile-header,.portal-shell-admin .portal-mobile-header{z-index:30;position:sticky;top:0;border-bottom:1px solid var(--workspace-line)!important;-webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important;background:#fffffff5!important;box-shadow:0 7px 20px #183d480f!important}.portal-shell .portal-sidebar,.portal-shell-student .portal-sidebar,.portal-shell-teacher .portal-sidebar,.portal-shell-admin .portal-sidebar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#081a28!important;border:0!important;border-right:1px solid #97d7e229!important;border-radius:0!important;width:244px!important;height:100dvh!important;min-height:100dvh!important;margin:0!important;position:relative!important;overflow:hidden!important;box-shadow:12px 0 32px #091e2c24!important}.portal-shell .portal-sidebar:before,.portal-shell .portal-sidebar:after,.portal-shell-student .portal-sidebar:before,.portal-shell-student .portal-sidebar:after,.portal-shell-teacher .portal-sidebar:before,.portal-shell-teacher .portal-sidebar:after,.portal-shell-admin .portal-sidebar:before,.portal-shell-admin .portal-sidebar:after{display:none!important}.portal-shell .portal-sidebar>a,.portal-shell-admin .portal-sidebar>a{border-bottom:1px solid #def6fa1a!important;height:5rem!important;padding-inline:1.15rem!important}.portal-shell .sidebar-brand-mark,.portal-shell-student .sidebar-brand-mark,.portal-shell-admin .sidebar-brand-mark{background:#087e8b!important;border:1px solid #e0fcff47!important;border-radius:8px!important;width:2.4rem!important;height:2.4rem!important;box-shadow:0 8px 22px #087e8b3d!important}.portal-shell-teacher .sidebar-brand-mark{background:#7550a8!important;border:1px solid #ede9fe61!important;border-radius:8px!important;width:2.4rem!important;height:2.4rem!important;box-shadow:0 8px 22px #7550a847!important}.portal-shell-admin .sidebar-brand-mark,.portal-shell-academic_admin .sidebar-brand-mark{background:#137e75!important}.portal-shell .portal-sidebar nav,.portal-shell-admin .portal-sidebar nav{align-content:start!important;gap:4px!important;padding:1rem .82rem!important;display:grid!important}.portal-shell .portal-sidebar .portal-nav-item,.portal-shell-student .portal-sidebar .portal-nav-item,.portal-shell-teacher .portal-sidebar .portal-nav-item,.portal-shell-admin .portal-sidebar .portal-nav-item{color:#e2eff9b8!important;letter-spacing:0!important;min-height:2.42rem!important;text-shadow:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;border:0!important;border-radius:7px!important;gap:.58rem!important;font-size:.85rem!important;font-weight:620!important;position:relative!important;overflow:hidden!important}.portal-shell .portal-sidebar .portal-nav-item:before,.portal-shell-admin .portal-sidebar .portal-nav-item:before{display:none!important}.portal-shell .portal-sidebar .portal-nav-item:after,.portal-shell-admin .portal-sidebar .portal-nav-item:after{content:""!important;opacity:0!important;background:#39c5b3!important;border-radius:2px!important;width:2px!important;display:block!important;position:absolute!important;inset:.52rem auto .52rem 0!important;transform:scaleY(.45)!important}.portal-shell .portal-sidebar .portal-nav-item svg,.portal-shell-admin .portal-sidebar .portal-nav-item svg{color:#74cfdbb8!important;filter:none!important;width:1rem!important;height:1rem!important}.portal-shell .portal-sidebar .portal-nav-item:hover,.portal-shell .portal-sidebar .portal-nav-item-active,.portal-shell-student .portal-sidebar .portal-nav-item:hover,.portal-shell-student .portal-sidebar .portal-nav-item-active,.portal-shell-teacher .portal-sidebar .portal-nav-item:hover,.portal-shell-teacher .portal-sidebar .portal-nav-item-active,.portal-shell-admin .portal-sidebar .portal-nav-item:hover,.portal-shell-admin .portal-sidebar .portal-nav-item-active{color:#fff!important;box-shadow:none!important;background:#5dcbc61f!important;border:0!important;transform:translate(2px)!important}.portal-shell .portal-sidebar .portal-nav-item:hover:after,.portal-shell .portal-sidebar .portal-nav-item-active:after,.portal-shell-admin .portal-sidebar .portal-nav-item:hover:after,.portal-shell-admin .portal-sidebar .portal-nav-item-active:after{opacity:1!important;transform:scaleY(1)!important}.portal-shell .portal-sidebar .portal-nav-item-active svg,.portal-shell-admin .portal-sidebar .portal-nav-item-active svg{color:#76e1d2!important}.portal-shell .portal-sidebar>div:last-child,.portal-shell-admin .portal-sidebar>div:last-child{border-top-color:#def6fa1a!important;padding:.75rem!important}.portal-shell .portal-sidebar>div:last-child a,.portal-shell .portal-sidebar>div:last-child button,.portal-shell-admin .portal-sidebar>div:last-child a,.portal-shell-admin .portal-sidebar>div:last-child button{box-shadow:none!important;background:#ffffff0e!important;border:0!important;border-radius:7px!important}.portal-mobile-tab{min-height:38px;border:1px solid var(--workspace-line)!important;box-shadow:none!important;border-radius:7px!important}.focus-page,.teacher-focus-page,.admin-focus-page{--focus-ink:var(--workspace-ink);--focus-muted:var(--workspace-muted);--focus-line:var(--workspace-line);--focus-paper:transparent;--focus-panel:#fff;--focus-blue:#087f88;--focus-coral:#c45d42;--focus-mint:#298066;min-height:100%;color:var(--workspace-ink);padding:28px 32px 42px;background:0 0!important}.focus-page *,.teacher-focus-page *,.admin-focus-page *{letter-spacing:0!important}.focus-page-header{max-width:1220px;margin-bottom:22px}.focus-eyebrow,.focus-section-label{color:#0b7b84;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.focus-page-header h1{max-width:760px;margin-top:7px;font-family:inherit;font-size:27px;font-weight:750;line-height:1.3}.focus-page-subtitle{max-width:720px;margin-top:7px;font-size:13px;line-height:1.65}.focus-privacy-note{background:#f2faf7;border:1px solid #c9e3dc;border-left:3px solid #3b9a7c;border-radius:7px;padding:9px 11px}.focus-start-grid,.focus-finish-layout,.focus-session-hero,.focus-camera-panel,.focus-state-panel,.focus-history-panel,.teacher-kpi,.teacher-trend-panel,.teacher-action-panel,.teacher-students-panel,.teacher-detail-panel,.teacher-plans-panel,.teacher-empty-state,.admin-health-strip,.admin-kpi,.admin-config-panel,.admin-save-bar{overflow:hidden;box-shadow:0 9px 28px #1d454f0e;border:1px solid var(--workspace-line)!important;background:#fffffff0!important;border-radius:8px!important}.focus-start-grid,.focus-finish-layout,.focus-session-hero,.focus-session-grid,.focus-history-grid,.teacher-toolbar,.teacher-kpi-grid,.teacher-overview-grid,.teacher-students-panel,.teacher-detail-panel,.teacher-plans-panel,.admin-health-strip,.admin-kpi-grid,.admin-config-grid,.admin-save-bar{max-width:1220px}.focus-start-panel h2,.focus-finish-main h2,.focus-session-heading h2,.focus-panel-heading h3,.focus-state-current,.focus-guidance-card p,.teacher-panel-heading h2,.teacher-action-panel h2,.teacher-empty-state h2,.teacher-composer-head h2,.admin-health-main h2{font-family:inherit!important;font-weight:720!important}.focus-start-panel h2,.focus-finish-main h2{font-size:26px}.focus-session-heading h2{font-size:20px}.focus-panel-heading h3,.teacher-panel-heading h2,.admin-health-main h2{font-size:18px}.teacher-action-panel h2{margin-top:24px;font-size:20px}.focus-start-aside,.focus-finish-aside,.teacher-action-panel,.admin-save-bar,.focus-session-controls{background:#f1f9f6!important}.focus-start-aside,.focus-finish-aside{border-left-color:var(--workspace-line)}.focus-aside-number{color:#0b7b84;letter-spacing:0!important}.focus-mode-switch button,.focus-state-options button,.focus-control-primary,.focus-control-secondary,.focus-control-quiet,.focus-start-button,.teacher-toolbar label,.teacher-toolbar>button,.teacher-plan-actions button,.teacher-composer-footer>button,.admin-health-meta button,.admin-save-bar button{border-radius:7px!important}.focus-mode-switch button,.focus-state-options button{background:#f7fafb}.focus-mode-switch button.is-active,.focus-start-button,.focus-control-primary,.teacher-toolbar .teacher-plan-trigger,.teacher-composer-footer>button,.admin-save-bar button{border-color:var(--workspace-accent-dark)!important;background:var(--workspace-accent-dark)!important}.focus-mode-switch button.is-active:hover,.focus-start-button:hover:not(:disabled),.focus-control-primary:hover:not(:disabled),.teacher-toolbar .teacher-plan-trigger:hover,.teacher-composer-footer>button:hover:not(:disabled),.admin-save-bar button:hover:not(:disabled){background:#064b53!important;border-color:#064b53!important}.focus-form-row input,.teacher-composer input,.teacher-composer select,.teacher-composer textarea,.admin-config-panel>label input,.admin-number-control input{border-radius:7px!important}.focus-timer-block>strong,.focus-score-line strong,.admin-retention-number strong{letter-spacing:0!important}.focus-progress-track,.focus-progress-track i,.focus-mini-bars i,.teacher-trend-chart i,.focus-history-chart i{border-radius:3px 3px 0 0}.focus-progress-track i{background:#0b8388}.focus-mini-bars i:nth-last-child(-n+3),.teacher-trend-chart i,.focus-history-chart i{background:#168892}.teacher-trend-chart>div:nth-last-child(-n+3) i,.focus-history-chart>div:nth-last-child(-n+3) i{background:#54aa8d}.focus-video-stage{background:#edf6f5;border-radius:7px}.focus-video-live-label{border-radius:5px}.focus-guidance-card,.focus-reminder{border-radius:0 7px 7px 0}.teacher-kpi,.admin-kpi{min-height:96px}.teacher-kpi svg,.admin-kpi svg,.admin-config-panel>.teacher-panel-heading>svg{color:#0b8388}.teacher-student-row{border-radius:6px}.teacher-student-row:hover,.teacher-student-row.is-selected{background:#edf7f4}.teacher-student-name b{border-radius:7px;font-family:inherit}.teacher-composer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#091c287a}.teacher-composer{border-radius:8px;box-shadow:0 24px 70px #09202d38}.admin-health-orb{border-radius:7px}.admin-toggle-row button{border-radius:12px}.feedback-page{background:0 0}@media (max-width:820px){.focus-page,.teacher-focus-page,.admin-focus-page{padding:20px 16px 30px}.focus-page-header h1{font-size:23px}}@media (max-width:520px){.focus-page,.teacher-focus-page,.admin-focus-page{padding:16px 12px 24px}.focus-start-panel h2,.focus-finish-main h2{font-size:22px}}@media (prefers-reduced-motion:reduce){.portal-shell .portal-sidebar .portal-nav-item{transition:none!important}}
