:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,PingFang TC,sans-serif;color:#15201c;background:#f4f6f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #15201c;--muted: #66716c;--line: #d6ddda;--soft: #edf2f0;--paper: #ffffff;--green: #176a57;--green-dark: #105545;--green-soft: #e5f2ed;--blue: #245985;--blue-soft: #e9f1f8;--red: #b84339;--red-soft: #f9e8e5;--amber: #9a681b;--amber-soft: #fff7e8}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#f4f6f5}body{margin:0;min-width:320px;min-height:100vh;background:#f4f6f5}button,input,select,textarea{font:inherit;letter-spacing:0}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,89,133,.25);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{min-height:100vh;display:grid;grid-template-columns:276px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;padding:22px 18px;background:#f8faf9;border-right:1px solid var(--line);z-index:20}.sidebar-head,.brand-lockup,.mobile-brand,.account-row,.sync-status,.answer-heading,.quiz-header,.position-line,.answer-actions,.jump-controls{display:flex;align-items:center}.sidebar-head,.quiz-header,.position-line{justify-content:space-between}.brand-lockup{gap:11px}.brand-lockup>div{display:grid;gap:2px}.brand-lockup strong{color:var(--ink);font-size:17px;font-weight:650}.brand-lockup span:not(.brand-mark){color:var(--muted);font-size:13px}.brand-mark{width:42px;height:42px;display:inline-grid;place-items:center;flex:0 0 42px;border-radius:6px;background:var(--green);color:#fff;font-weight:750;letter-spacing:0;overflow:hidden}.brand-mark img,.brand-mark svg{width:100%;height:100%;display:block}.brand-mark.small{width:32px;height:32px;flex-basis:32px;font-size:13px}.filters-panel,.sidebar-stats{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.control-label,.filters-panel label{color:var(--muted);font-size:13px;font-weight:600}.progress-track{overflow:hidden;background:#dfe6e3}.progress-track i{height:100%;display:block;background:var(--green);transition:width .18s ease}.filters-panel{display:grid;gap:9px}.filters-panel select,.auth-panel input,.jump-controls input,.note-area textarea{color:var(--ink);background:#fff;border:1px solid #bfc9c5;border-radius:5px}.filters-panel select{width:100%;height:42px;padding:0 34px 0 11px;margin-bottom:6px}.segmented{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #bfc9c5;border-radius:5px;overflow:hidden;background:#fff}.segmented.two{grid-template-columns:repeat(2,1fr)}.segmented button{min-width:0;height:38px;padding:0 8px;color:#47534e;background:transparent;border:0;border-right:1px solid var(--line)}.segmented button:disabled{color:#98a4a0;background:#f2f5f4;cursor:not-allowed}.segmented button:last-child{border-right:0}.segmented button.active{color:#fff;background:var(--blue)}.sidebar-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sidebar-stats>div{display:grid;gap:4px;min-width:0}.sidebar-stats span{color:var(--muted);font-size:12px}.sidebar-stats strong{color:var(--ink);font-size:19px;font-weight:650}.account-row{gap:8px;margin-top:24px;padding-top:18px;color:var(--muted);border-top:1px solid var(--line);font-size:12px}.account-row .account-copy{min-width:0;flex:1;display:grid;gap:1px;overflow:hidden}.account-copy strong,.account-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-copy strong{color:var(--ink);font-size:13px;font-weight:600}.account-copy small{color:var(--muted);font-size:11px}.account-avatar{width:34px;height:34px;display:inline-grid;place-items:center;flex:0 0 34px;border-radius:50%;color:#4f5d56;background:#e9efec}.admin-entry{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;margin-top:20px;padding:0 11px;color:var(--blue);background:var(--blue-soft);border:1px solid #c8d9e8;border-radius:5px;font-weight:600}.quiz-main{width:min(1180px,100%);margin:0 auto;padding:34px 38px 72px}.quiz-header{min-height:62px;gap:20px}.quiz-header>div:first-child{min-width:0}.quiz-header-tools{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.script-toggle{display:grid;grid-template-columns:44px 1px 44px;align-items:center}.script-toggle button{min-width:44px;min-height:36px;padding:4px 6px;border:0;background:transparent;color:#68736e;font-size:13px;font-weight:400}.script-toggle-divider{width:1px;height:20px;display:block;background:var(--line)}.script-toggle button.active{color:#36443d;font-weight:600;text-decoration:underline;text-underline-offset:5px}.script-toggle button:hover{color:#23352b}.script-toggle button:focus-visible{outline:2px solid #68736e;outline-offset:1px}.eyebrow{display:block;margin-bottom:4px;color:var(--blue);font-size:13px;font-weight:650}.quiz-header h1{margin:0;color:var(--ink);font-size:24px;line-height:1.25;font-weight:650;letter-spacing:0}.sync-status{gap:7px;color:var(--muted);font-size:13px;white-space:nowrap}.navigation-strip{margin-top:20px;padding:16px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.position-line{gap:16px;color:var(--muted);font-size:14px}.position-line strong{color:var(--ink);font-size:16px;font-weight:650}.progress-track{height:4px;margin-top:11px}.jump-controls{flex-wrap:wrap;gap:9px;margin-top:14px}.jump-controls label{height:40px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.jump-controls input{width:78px;height:40px;padding:0 8px}.primary-button,.secondary-button,.icon-text-button,.flag-button,.icon-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:5px;font-weight:600}.primary-button{padding:0 15px;color:#fff;background:var(--blue);border:1px solid var(--blue)}.primary-button:hover{background:#194b76}.primary-button:disabled,.secondary-button:disabled,.icon-text-button:disabled,.flag-button:disabled{color:#8c9994;background:#eef2f0;border-color:#cbd4d0;cursor:not-allowed}.secondary-button,.icon-text-button{padding:0 14px;color:var(--ink);background:#fff;border:1px solid #b8c3c9}.compact-button{min-height:40px}.icon-button{width:40px;min-width:40px;padding:0;color:#48544f;background:transparent;border:1px solid transparent}.icon-button:hover{background:var(--soft)}.error-banner{min-height:46px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-top:18px;padding:10px 13px;color:#7a2a25;background:var(--red-soft);border:1px solid #e0aaa5;border-radius:5px}.error-banner button{width:32px;height:32px;display:grid;place-items:center;color:inherit;background:transparent;border:0}.question-frame{margin-top:22px;padding:26px 28px 30px;background:var(--paper);border:1px solid #cfd7d4;border-radius:6px}.mock-frame{border-color:#bdd0dc}.mock-timer{padding:3px 8px;color:#1f5f55;background:#e7f3ef;border:1px solid #afd0c6;border-radius:4px;font-variant-numeric:tabular-nums;font-weight:650}.mock-timer.expired{color:#8a312b;background:var(--red-soft);border-color:#e0aaa5}.mock-start-panel{display:grid;gap:8px;margin:18px 0;padding:16px;background:#f4f8fa;border:1px solid #bdd0dc;border-radius:5px}.mock-start-panel span{color:var(--muted);line-height:1.55}.mock-start-panel button{width:fit-content;margin-top:4px}.mock-time-expired{margin:18px 0;padding:12px 14px;color:#7a2a25;background:var(--red-soft);border:1px solid #e0aaa5;border-radius:5px;font-weight:650}.mock-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px;padding:14px;background:#f4f8fa;border:1px solid #cddae2;border-radius:5px}.mock-summary>div{display:grid;gap:3px}.mock-summary span{color:var(--muted);font-size:12px}.mock-summary strong{color:var(--blue);font-size:18px;font-weight:650}.mock-summary.pass strong{color:var(--green)}.mock-summary.fail strong{color:var(--red)}.mock-validation{display:grid;gap:13px;margin-top:12px;padding:15px;background:#f7f9f8;border:1px solid #c8d3d0;border-left:4px solid var(--green);border-radius:5px}.mock-validation.fail{border-left-color:var(--red)}.mock-validation-heading{display:grid;gap:4px}.mock-validation-heading strong{color:var(--ink);font-size:16px}.mock-validation-heading span,.mock-validation-grid span{color:var(--muted);line-height:1.5}.mock-validation-grid{display:flex;flex-wrap:wrap;gap:8px 18px}.mock-competence-summary{display:grid;gap:7px}.mock-competence-summary>div{display:flex;justify-content:space-between;gap:18px;padding-top:7px;border-top:1px solid var(--line)}.mock-competence-summary span{color:var(--ink)}.mock-competence-summary strong,.mock-competence-summary .pass strong{color:var(--green);white-space:nowrap}.mock-competence-summary .fail strong{color:var(--red)}.question-meta{display:flex;flex-wrap:wrap;gap:8px}.question-meta span{padding:5px 9px;color:var(--blue);background:var(--blue-soft);border-radius:4px;font-size:13px;font-weight:600}.question-stem{margin:28px 0 26px;color:#111916;font-size:20px;line-height:1.65}.question-stem p{margin:0 0 6px}.question-images{display:grid;gap:14px;margin:-8px 0 26px}.question-images img{display:block;max-width:min(100%,680px);height:auto;border:1px solid #d8dfdc;background:#fff}.options{display:grid;gap:10px}.option-button{width:100%;min-height:68px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:15px;padding:14px 17px;text-align:left;color:#17211d;background:#fff;border:1px solid #cbd4d0;border-radius:5px;font-size:17px;line-height:1.45}.choice-text{min-width:0;padding-top:3px}.option-button:hover{border-color:#8ba6b9;background:#f9fbfc}.choice-key{width:36px;height:36px;display:grid;place-items:center;color:#2b3732;background:#f4f7f6;border:1px solid #b9c5c0;border-radius:50%;font-weight:700}.option-button.selected{background:#eef5fb;border-color:var(--blue)}.option-button.selected .choice-key{color:#fff;background:var(--blue);border-color:var(--blue)}.option-button.correct{background:var(--green-soft);border-color:var(--green)}.option-button.correct .choice-key{color:#fff;background:var(--green);border-color:var(--green)}.option-button.wrong{background:var(--red-soft);border-color:var(--red)}.option-button.wrong .choice-key{color:#fff;background:var(--red);border-color:var(--red)}.answer-actions{flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.action-button{min-height:42px}.flag-button{min-height:42px;padding:0 15px;color:var(--amber);background:var(--amber-soft);border:1px solid #dfbd7d}.flag-button.active{color:#fff;background:var(--amber);border-color:var(--amber)}.answer-panel{margin-top:26px;padding-top:24px;border-top:1px solid var(--line);color:#24302b;line-height:1.65}.answer-heading{gap:9px;color:var(--green);font-size:17px}.answer-panel h2{margin:22px 0 7px;color:var(--ink);font-size:16px;font-weight:650}.answer-panel>p,.manual-matches p{margin:0;white-space:pre-wrap}.manual-matches{display:grid;gap:10px}.mock-wrong-list{display:flex;flex-wrap:wrap;gap:8px}.mock-wrong-list button,.mock-wrong-list span{min-height:34px;display:inline-flex;align-items:center;padding:0 10px;color:var(--ink);background:#fff;border:1px solid #c8d3d0;border-radius:4px;font-size:13px}.mock-wrong-list button{color:#8a312b;border-color:#e0aaa5}.mock-flagged-list button,.icon-text-button.flagged{color:#8a5a12;background:#fff8e8;border-color:#dfbd76}.manual-matches article{min-width:0;padding:13px 15px;background:#f7f9f8;border-left:3px solid #8ba79d}.manual-matches strong{display:block;margin-bottom:4px;color:#35423d;font-size:14px}.note-area{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.note-area label{display:block;margin-bottom:8px;color:var(--ink);font-size:14px;font-weight:600}.note-area textarea{width:100%;min-height:90px;padding:11px 12px;resize:vertical;line-height:1.5}.empty-state{min-height:320px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--muted);text-align:center}.empty-state h2,.empty-state p{margin:0}.empty-state h2{color:var(--ink);font-size:19px}.auth-page,.loading-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#eef2f0}.auth-panel{width:min(430px,100%);padding:30px;background:#fff;border:1px solid #cbd4d0;border-radius:6px}.auth-panel h1{margin:30px 0 10px;color:var(--ink);font-size:24px;font-weight:650;letter-spacing:0}.auth-panel p{margin:0 0 22px;color:var(--muted);line-height:1.6}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:22px;border:1px solid #bfc9c5;border-radius:5px;overflow:hidden}.auth-tabs button{height:42px;color:#4b5752;background:#fff;border:0;border-right:1px solid #bfc9c5;font-weight:600}.auth-tabs button:last-child{border-right:0}.auth-tabs button.active{color:#fff;background:var(--blue)}.auth-panel form{display:grid;gap:10px;margin-top:18px}.auth-panel form label{color:var(--ink);font-size:14px;font-weight:600}.auth-panel input{width:100%;height:46px;padding:0 12px}.auth-panel .primary-button,.auth-panel .secondary-button{min-height:46px;margin-top:5px}.form-error{color:var(--red)!important;font-size:13px}.auth-panel .auth-hint{margin:2px 0 0;color:var(--muted);font-size:13px}.auth-recovery-link,.auth-back-button{width:fit-content;display:inline-flex;align-items:center;gap:4px;padding:4px 0;color:#5f6b66;background:transparent;border:0;font-size:13px;text-align:left}.auth-recovery-link:hover,.auth-back-button:hover{color:var(--blue)}.auth-back-button{margin-top:14px}.recovery-result{display:grid;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.recovery-result>svg,.recovery-result>span{color:var(--green)}.recovery-result>span{font-size:13px;font-weight:700}.recovery-result>strong{color:var(--ink);font-size:22px;letter-spacing:0}.recovery-result>p{margin:0 0 4px;font-size:14px}.recovery-result .secondary-button,.recovery-result .primary-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:0}.waiting-actions{display:flex;gap:10px}.waiting-actions button{flex:1}.admin-overlay{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px;background:#111b177a}.admin-dialog{width:min(760px,100%);max-height:min(760px,calc(100dvh - 48px));overflow:hidden;display:flex;flex-direction:column;padding:26px;color:var(--ink);background:#fff;border:1px solid #bfc9c5;border-radius:6px;box-shadow:0 18px 50px #111b1733}.admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.admin-head span{color:var(--blue);font-size:12px;font-weight:650}.admin-head h2{margin:2px 0 0;font-size:23px;letter-spacing:0}.admin-intro{margin:14px 0 18px;color:var(--muted);line-height:1.55}.invite-maker{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:18px;padding:15px;background:#f5f8fa;border:1px solid #d3dce2;border-radius:5px}.invite-maker>div:first-child{display:grid;gap:3px}.invite-maker strong{font-size:15px}.invite-maker span{color:var(--muted);font-size:12px}.invite-control-block{display:grid;gap:8px;padding-top:12px;border-top:1px solid #d3dce2}.invite-control-label{color:var(--ink)!important;font-size:13px!important;font-weight:650}.invite-buttons,.invite-paper-options{display:flex;flex-wrap:wrap;gap:7px}.invite-paper-options button{min-height:34px;padding:0 11px;color:var(--ink);background:#fff;border:1px solid #b7c3cb;border-radius:4px;font-weight:600}.invite-paper-options button:before{content:"";width:8px;height:8px;margin-right:7px;display:inline-block;border:1px solid #8ea0aa;border-radius:999px;background:#fff}.invite-paper-options button.active{color:#fff;background:var(--green);border-color:var(--green)}.invite-paper-options button.active:before{border-color:#fff;background:#fff;box-shadow:inset 0 0 0 2px var(--green)}.invite-buttons button,.generated-invite button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;color:#fff;background:var(--blue);border:1px solid var(--blue);border-radius:4px;font-weight:600}.generated-invite{grid-column:1 / -1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding-top:12px;border-top:1px solid #d3dce2}.generated-invite code{color:var(--blue);font-size:20px;font-weight:700;letter-spacing:1px}.admin-loading{padding:30px 0;color:var(--muted)}.admin-list{min-height:0;flex:1;overflow-y:auto;border-top:1px solid var(--line)}.admin-user{display:grid;grid-template-columns:minmax(150px,.75fr) auto auto minmax(360px,1.4fr) minmax(320px,auto);align-items:start;gap:14px;padding:16px 2px;border-bottom:1px solid var(--line)}.admin-identity{min-width:0;display:grid;gap:2px}.admin-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.admin-identity span{color:var(--muted);font-size:12px}.admin-status{padding:4px 7px;color:#815e20;background:var(--amber-soft);border-radius:4px;font-size:12px;white-space:nowrap}.admin-status.active{color:#246b59;background:var(--green-soft)}.admin-paper-status{padding:4px 7px;color:var(--blue);background:var(--blue-soft);border-radius:4px;font-size:12px;white-space:nowrap}.admin-progress{display:grid;grid-template-columns:repeat(4,minmax(70px,1fr));gap:8px;min-width:0}.admin-progress>div{min-width:0;padding:8px 9px;background:#f7f9f8;border:1px solid #d9e1de;border-radius:4px}.admin-progress span,.admin-progress em{display:block;overflow:hidden;color:var(--muted);font-size:11px;font-style:normal;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.admin-progress strong{display:block;margin:2px 0;color:var(--ink);font-size:15px;font-weight:650;line-height:1.25}.admin-warning{margin:0 0 14px;padding:10px 12px;color:#765117;background:var(--amber-soft);border:1px solid #e2c68d;border-radius:5px;font-size:13px}.admin-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.admin-actions button{min-height:34px;padding:0 9px;color:var(--ink);background:#fff;border:1px solid #b8c3c9;border-radius:4px;font-size:12px}.admin-actions button:last-child{color:#8a312b}.loading-page{align-content:center;gap:14px;color:var(--muted)}.mobile-header,.mobile-only,.sidebar-backdrop{display:none}@media(max-width:820px){.app-shell{display:block}.mobile-header{position:sticky;top:0;z-index:15;height:56px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:8px;padding:0 12px;background:#fffffffa;border-bottom:1px solid var(--line)}.mobile-brand{gap:8px;color:var(--ink)}.mobile-position{color:var(--muted);font-size:13px}.sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,330px);height:100dvh;transform:translate(-102%);transition:transform .18s ease;box-shadow:8px 0 24px #14201b1f}.sidebar.open{transform:translate(0)}.sidebar-backdrop{position:fixed;inset:0;z-index:18;display:block;width:100%;height:100%;padding:0;background:#111b1759;border:0}.mobile-only{display:inline-flex}.quiz-main{padding:22px 14px 88px}.quiz-header{min-height:auto}.quiz-header h1{font-size:20px}.sync-status{display:none}.question-frame{padding:20px 15px 24px}.question-stem{margin:22px 0;font-size:18px;line-height:1.6}.question-images{margin:-4px 0 22px}.option-button{min-height:62px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:12px;font-size:16px}.choice-key{width:34px;height:34px}.answer-actions{display:grid;grid-template-columns:1fr 1fr}.answer-actions button{width:100%}.admin-dialog{max-height:calc(100dvh - 28px);padding:20px}.admin-user{grid-template-columns:1fr auto;gap:10px}.admin-progress{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.invite-maker{grid-template-columns:1fr}.invite-buttons{justify-content:flex-start}.generated-invite{grid-column:1}.admin-actions{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}.mock-summary{grid-template-columns:1fr}}@media(max-width:500px){.jump-controls{display:grid;grid-template-columns:1fr 1fr}.jump-controls label{grid-column:1 / 2}.jump-controls .compact-button{grid-column:2 / 3}.jump-controls .icon-text-button:last-child{grid-column:1 / -1}.question-meta span{font-size:12px}.auth-panel{padding:24px 20px}.admin-overlay{padding:14px}.admin-dialog{padding:17px}.admin-head h2{font-size:20px}.generated-invite{grid-template-columns:1fr auto}.generated-invite span{grid-column:1 / -1;grid-row:2}}.question-table{margin:1.25rem 0;min-width:0}.question-table figcaption{font-weight:700;margin-bottom:.6rem}.table-scroll{max-width:100%;overflow-x:auto;border:1px solid #cadbd3;border-radius:8px}.question-table table{border-collapse:collapse;width:100%;min-width:380px}.question-table th,.question-table td{padding:.7rem .85rem;text-align:left;border-bottom:1px solid #dce5df;white-space:normal;min-width:90px}.question-table th{background:#e9f3ed;font-weight:700}.question-table p,.history-help{font-size:.85rem;color:#56675e;line-height:1.6}.history-banner{background:#fff5de;border:1px solid #e7ce8d;padding:1rem;border-radius:10px;margin:1rem 0}.history-banner p{line-height:1.65}.option-button:disabled{opacity:1;cursor:default}.question-frame,.question-stem{min-width:0}.note-area textarea[readonly]{background:#f3f4f1}.manual-quote{margin:12px 0 0;padding:0;border:0}.manual-quote p{white-space:pre-line}.manual-original-scroll{max-width:100%;overflow-x:auto;margin:10px 0}.manual-original-scroll img{display:block;max-width:none;height:auto}.manual-image-block{min-width:0;margin:10px 0}.manual-image-block>a{font-size:13px;color:#176a57}:root{--font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "PingFang TC", "PingFang SC", sans-serif;--type-caption: 14px;--type-control: 14px;--type-section: 16px;--type-reading: 20px;--type-title: 30px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-ui: 1.4;--leading-reading: 1.68;--ink: #1d1d1f;--muted: #6e6e73;--line: #d2d2d7;--soft: #f2f2f4;--paper: #fff;--green: #248a3d;--green-dark: #1d7132;--green-soft: #dff3e4;--blue: #0071e3;--blue-soft: #edf6ff;--blue-selected: #dceeff;--red: #d70015;--red-soft: #ffe2e5;--amber: #a05a00;--amber-soft: #fff8ea;font-family:var(--font-ui);color:var(--ink);background:#f5f5f7}html,body{background:#f5f5f7}.app-shell{grid-template-columns:288px minmax(0,1fr);background:#f5f5f7}.sidebar{width:288px;padding:24px 20px;background:#fbfbfdf0;border:0;box-shadow:none;backdrop-filter:saturate(180%) blur(28px)}.brand-lockup{gap:12px}.brand-lockup strong{color:var(--ink);font-size:var(--type-section);line-height:var(--leading-ui);font-weight:var(--weight-semibold)}.brand-lockup span:not(.brand-mark),.control-label,.filters-panel label,.sidebar-stats span,.account-row,.eyebrow,.script-toggle button,.sync-status,.question-meta span,.position-line,.note-area label{font-size:var(--type-caption);line-height:var(--leading-ui)}.brand-mark{width:42px;height:42px;flex-basis:42px;color:var(--ink);background:transparent;border:0;border-radius:0;font-size:var(--type-control);font-weight:var(--weight-bold);box-shadow:none}.brand-mark-word{fill:#18324b}:root[data-theme=dark] .app-shell .brand-mark-word,:root[data-theme=dark] .auth-panel .brand-mark-word,:root[data-theme=dark] .loading-page .brand-mark-word{fill:#f5f5f7}.sidebar-controls{margin-top:27px}.filter-group{display:grid;background:#76768013;border-radius:11px}.filter-row{position:relative;min-width:0;padding:10px 12px 9px;display:grid;gap:3px}.filter-row+.filter-row{border-top:1px solid rgba(60,60,67,.1)}.filter-label,.field-label{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-ui);font-weight:var(--weight-medium)}.filter-select-trigger{width:100%;min-height:30px;padding:0;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink);background:transparent;border:0;text-align:left;font-size:var(--type-control);line-height:var(--leading-ui);font-weight:var(--weight-medium)}.filter-select-trigger svg{flex:0 0 auto;color:var(--muted);transition:transform .16s ease}.filter-select.open .filter-select-trigger svg{transform:rotate(180deg)}.filter-select-menu{position:absolute;z-index:60;top:calc(100% - 3px);left:0;right:0;padding:5px;overflow:hidden;background:#fffffffa;border:1px solid rgba(0,0,0,.08);border-radius:10px;box-shadow:0 12px 32px #00000024,0 2px 8px #0000000f;backdrop-filter:saturate(180%) blur(24px)}.filter-select-menu button{width:100%;min-height:40px;padding:0 10px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;color:var(--ink);background:transparent;border:0;border-radius:7px;text-align:left;font-size:var(--type-control);line-height:var(--leading-ui)}.filter-select-menu button:hover{background:#7676801a}.filter-select-menu button.selected{color:var(--blue);font-weight:var(--weight-semibold)}.filter-select-menu button svg{justify-self:end}.study-mode-group,.mode-group{margin-top:15px;padding-top:18px;border-top:1px solid #e8e8ed}.mode-group .segmented,.study-mode-group .segmented{margin:7px 0 0}.history-help{margin:8px 2px 0;color:var(--muted);font-size:12px;line-height:1.5}.filters-panel{margin-top:27px;padding:0;gap:0;overflow:hidden;background:#76768013;border:0;border-radius:11px}.filters-panel>label,.filters-panel>.control-label,.filters-panel>.history-help{margin:0;padding:10px 12px 0}.filters-panel select{width:calc(100% - 16px);height:38px;margin:0 8px 8px;padding-inline:8px 28px;color:var(--ink);background-color:#ffffffc2;border:0;border-radius:7px;font-size:var(--type-control);line-height:var(--leading-ui);font-weight:var(--weight-medium)}.segmented{margin:7px 8px 9px;padding:3px;gap:2px;overflow:visible;background:#7676801a;border:0;border-radius:10px}.segmented button{min-height:38px;height:auto;padding:0 4px;color:var(--muted);background:transparent;border:0;border-radius:7px;font-size:var(--type-control);line-height:var(--leading-ui);font-weight:var(--weight-medium)}.segmented button.active{color:var(--ink);background:#fffffff5;box-shadow:0 1px 3px #0000001f}.sidebar-stats{margin-top:22px;padding-top:20px;border-top-color:#e8e8ed}.sidebar-stats span{color:#86868b;font-weight:var(--weight-medium)}.sidebar-stats strong{color:var(--ink);font-size:var(--type-reading);font-weight:var(--weight-semibold)}.account-row{margin-top:25px;min-height:55px;padding-top:16px;color:#86868b;border-top-color:#e8e8ed}.quiz-main{width:min(1300px,100%);padding:18px 26px 88px}.quiz-header{min-height:66px;align-items:flex-end}.eyebrow{margin-bottom:3px;color:var(--blue);font-weight:var(--weight-medium)}.quiz-header h1{color:var(--ink);font-size:var(--type-title);line-height:1.2;font-weight:var(--weight-bold)}.quiz-header-tools{align-self:stretch;justify-content:space-between}.display-preferences{display:flex;align-items:center;justify-content:flex-end;gap:10px}.mobile-action-label{display:none}.theme-toggle{display:flex;align-items:center;gap:2px;padding:2px;background:#7676801a;border-radius:8px}.theme-toggle button{width:30px;height:28px;display:grid;place-items:center;padding:0;color:var(--muted);background:transparent;border:0;border-radius:6px}.theme-toggle button:hover{color:var(--ink)}.theme-toggle button.active{color:var(--ink);background:#fffffff5;box-shadow:0 1px 3px #0000001f}.script-switch{min-width:48px;height:32px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--muted);background:transparent;border:0;border-radius:8px;font-size:13px;line-height:1;font-weight:var(--weight-semibold)}.script-switch:hover{color:var(--ink);background:#76768014}.script-toggle button{width:44px;min-width:44px;min-height:26px;padding:0;color:#86868b;font-weight:var(--weight-medium);text-align:center}.script-toggle button+button{margin-left:0;border-left:0}.script-toggle button.active{color:var(--ink);font-weight:var(--weight-semibold);text-decoration:none}.sync-status{color:var(--muted);font-weight:var(--weight-medium)}.progress-sync{min-height:20px;margin-top:7px;display:flex;align-items:center;justify-content:flex-end;gap:6px}.release-notice{min-height:40px;margin-top:14px;padding:4px 5px 4px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#064f9e;background:var(--blue-soft);border-radius:8px;font-size:var(--type-caption);line-height:var(--leading-ui);font-weight:var(--weight-medium)}.release-notice button{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;padding:0;color:#276aa9;background:transparent;border:0;border-radius:50%}.release-notice button:hover{background:#0071e314}.navigation-strip{margin-top:14px;padding:0;border:0}.position-line{margin-bottom:10px;color:var(--muted);font-weight:var(--weight-medium)}.position-line strong{color:var(--ink);font-size:var(--type-control);font-weight:var(--weight-semibold)}.progress-track{height:4px;margin:0;background:#dedee3;border-radius:4px}.progress-track i{background:var(--blue);border-radius:inherit}.jump-controls{width:max-content;max-width:100%;margin-top:10px;padding:4px;gap:2px;background:#76768013;border-radius:10px}.jump-controls label{height:36px;flex:0 0 auto;padding-left:4px;color:var(--muted);font-size:var(--type-caption);font-weight:var(--weight-medium);white-space:nowrap}.jump-controls input{width:64px;height:36px;flex:0 0 64px;padding-inline:10px;color:var(--ink);background:#ffffffb8;border:0;border-radius:7px;appearance:textfield;-moz-appearance:textfield}.jump-controls input::-webkit-inner-spin-button,.jump-controls input::-webkit-outer-spin-button{margin:0;appearance:none;-webkit-appearance:none}.primary-button,.secondary-button,.icon-text-button,.flag-button,.icon-button{min-height:40px;border-radius:8px;font-size:var(--type-control);line-height:var(--leading-ui);font-weight:var(--weight-semibold)}.jump-controls .secondary-button,.jump-controls .icon-text-button{flex:0 0 auto;min-height:36px;padding:0 11px;background:transparent;border:0}.primary-button{color:#fff;background:var(--blue);border-color:var(--blue)}.primary-button:hover{background:#0077ed}.question-frame{margin-top:26px;padding:34px 38px;background:var(--paper);border:0;border-radius:8px;box-shadow:0 14px 38px #0000000f}.question-meta{gap:8px}.question-meta span{padding:5px 8px;color:#515154;background:#f2f2f4;border-radius:6px;font-weight:var(--weight-medium)}.question-table{margin:-4px 0 28px;min-width:0}.question-table figcaption{margin:0 0 9px;color:#515154;font-size:14px;line-height:1.45;font-weight:var(--weight-semibold)}.table-scroll{max-width:100%;overflow-x:auto;background:#7676800e;border:0;border-radius:8px}.question-table table{width:100%;min-width:100%;border-collapse:collapse;table-layout:auto}.question-table .table-scroll.compact table{table-layout:fixed}.question-table .table-scroll.wide table{min-width:560px}.question-table th,.question-table td{min-width:0;padding:12px 16px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid rgba(60,60,67,.11);text-align:left;vertical-align:top;white-space:normal;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums}.question-table th{color:#515154;background:#7676800f;font-weight:var(--weight-semibold)}.question-table tbody tr:last-child td{border-bottom:0}.question-table p{margin:8px 0 0;color:#6e6e73;font-size:14px;line-height:1.55}.question-images{gap:12px;margin:-4px 0 28px}.question-images img{max-width:min(100%,760px);border:0;border-radius:8px;background:#f5f5f7}.question-stem{max-width:1160px;margin:34px 0 30px;color:var(--ink);font-size:var(--type-reading);line-height:var(--leading-reading);font-weight:var(--weight-regular)}.question-stem p{margin:8px 0}.options{gap:0;overflow:hidden;background:#76768011;border-radius:12px}.option-button{min-height:80px;grid-template-columns:42px minmax(0,1fr);align-content:center;gap:15px;padding:15px 22px;color:var(--ink);background:transparent;border:0;border-radius:0;font-size:var(--type-reading);line-height:var(--leading-reading);font-weight:var(--weight-regular)}.option-button:hover{background:#76768013}.choice-key{width:40px;height:40px;color:var(--ink);background:#7676801a;border:0;font-size:var(--type-section);font-weight:var(--weight-semibold)}.option-button.correct,.option-button.wrong,.option-button.selected{border:0}.option-button.selected,.option-button.selected:hover{color:#075caa;background:var(--blue-selected);font-weight:var(--weight-medium)}.option-button.correct,.option-button.correct:hover{color:var(--green-dark);background:var(--green-soft);font-weight:var(--weight-medium)}.option-button.wrong,.option-button.wrong:hover{color:#b42318;background:var(--red-soft);font-weight:var(--weight-medium)}.answer-actions{margin-top:26px;padding:0;gap:10px;border:0}.answer-actions .secondary-button,.answer-actions .icon-text-button{color:var(--ink);background:#f2f2f4;border:0}.flag-button,.answer-actions .flag-button{color:var(--amber);background:var(--amber-soft);border:0}.flag-button:hover,.answer-actions .flag-button:hover{background:#ffefc9}.flag-button.active,.flag-button.active:hover,.answer-actions .flag-button.active,.answer-actions .flag-button.active:hover,.icon-text-button.flagged,.icon-text-button.flagged:hover{color:#5c3500;background:#f5bd4f}.answer-panel{margin-top:28px;padding:24px;color:var(--ink);background:#f7f7f9;border:0;border-radius:12px;font-size:var(--type-reading);line-height:var(--leading-reading)}.practice-answer-panel{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:14px}.practice-answer-panel .answer-heading{display:contents}.answer-icon{width:34px;height:34px;display:grid;place-items:center;align-self:center;color:#fff;background:var(--green);border-radius:50%}.practice-answer-panel .answer-heading>div{grid-column:2;display:grid;align-content:center;gap:2px}.practice-answer-panel .answer-heading small,.manual-source-heading{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-ui);font-weight:var(--weight-semibold)}.practice-answer-panel .answer-heading strong{color:var(--ink);font-size:var(--type-section);line-height:var(--leading-ui);font-weight:var(--weight-semibold)}.practice-answer-panel>p{grid-column:2;margin-top:18px}.manual-source{grid-column:1 / -1;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.manual-source-title{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:14px;align-items:center;min-height:34px}.manual-source-title>svg{justify-self:center;color:var(--blue)}.manual-source .manual-matches{margin-left:48px;max-width:78ch}.answer-heading{gap:10px;color:var(--green);font-size:var(--type-section);line-height:var(--leading-ui)}.answer-panel h2,.manual-matches article>strong{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-ui);font-weight:var(--weight-semibold)}.answer-panel h2{margin:20px 0 8px}.answer-panel>p,.manual-matches p{max-width:78ch;color:var(--ink);font-size:var(--type-reading);line-height:var(--leading-reading);font-weight:var(--weight-regular)}.manual-matches{gap:14px}.manual-matches article{padding:0;background:transparent;border:0}.note-area{margin-top:34px;padding:0;border:0}.note-area label{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:var(--type-section);font-weight:var(--weight-semibold)}.note-area textarea{min-height:118px;margin-top:13px;padding:16px 17px;color:var(--ink);background:#f5f5f7;border:0;border-radius:8px;font-size:var(--type-section);line-height:var(--leading-ui)}.note-area textarea:focus{background:#fff}.auth-page,.loading-page{background:#f5f5f7}.loading-page p{margin:0;color:var(--muted);font-size:var(--type-control);line-height:var(--leading-ui);white-space:nowrap}.loading-status{width:max-content;max-width:calc(100vw - 64px);display:grid;gap:10px;justify-items:stretch}.loading-progress{width:100%;height:4px;overflow:hidden;background:#76768029;border-radius:999px}.loading-progress span{width:42%;height:100%;display:block;background:var(--blue);border-radius:inherit;animation:loading-progress-slide 1.15s ease-in-out infinite}@keyframes loading-progress-slide{0%{transform:translate(-70%)}to{transform:translate(168%)}}@media(prefers-reduced-motion:reduce){.loading-progress span{animation:none;transform:translate(70%)}}.auth-panel{border-color:transparent;border-radius:8px;box-shadow:0 20px 58px #00000014}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed}.quiz-main{padding:16px 20px 64px}}@media(max-width:640px){.quiz-header{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;align-items:start}.quiz-header h1{font-size:27px}.quiz-header-tools{width:100%;flex-direction:row;align-items:center;justify-content:flex-end}.question-frame{margin-inline:-8px;padding:25px 18px}.question-stem,.option-button,.answer-panel,.answer-panel>p,.manual-matches p{font-size:18px;line-height:1.65}.option-button{min-height:62px;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:10px 12px}.choice-text{padding-top:1px}.choice-key{width:32px;height:32px}.answer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.answer-actions button{width:100%;min-width:0}}:root[data-theme=dark]{--ink: #f5f5f7;--muted: #a1a1a6;--line: #3a3a3c;--soft: #2c2c2e;--paper: #1c1c1e;--green: #2f9855;--green-dark: #8bd6a4;--green-soft: #193a27;--blue: #2b82c9;--blue-soft: #102b46;--blue-selected: #173e60;--red: #ff453a;--red-soft: #45191c;--amber: #ffd60a;--amber-soft: #3a2d0d;background:#111113}:root[data-theme=dark] body,:root[data-theme=dark] .app-shell,:root[data-theme=dark] .auth-page,:root[data-theme=dark] .loading-page{background:#111113}:root[data-theme=dark] .loading-progress{background:#ffffff1f}:root[data-theme=dark] .sidebar{background:#1c1c1ef5;border-right:0;box-shadow:none}:root[data-theme=dark] .filter-select-menu,:root[data-theme=dark] .auth-panel{background:#2c2c2e;border-color:#3a3a3c}:root[data-theme=dark] .filter-group,:root[data-theme=dark] .filters-panel,:root[data-theme=dark] .segmented,:root[data-theme=dark] .jump-controls,:root[data-theme=dark] .theme-toggle{background:#ffffff13}:root[data-theme=dark] .filter-row+.filter-row,:root[data-theme=dark] .study-mode-group,:root[data-theme=dark] .mode-group,:root[data-theme=dark] .sidebar-stats,:root[data-theme=dark] .account-row{border-color:#ffffff0e}:root[data-theme=dark] .filter-select-menu{box-shadow:0 12px 32px #0000006b,0 2px 8px #0000004d}:root[data-theme=dark] .filter-select-menu button:hover,:root[data-theme=dark] .option-button:hover{background:#ffffff14}:root[data-theme=dark] .filters-panel select,:root[data-theme=dark] .segmented button.active,:root[data-theme=dark] .theme-toggle button.active,:root[data-theme=dark] .jump-controls input{color:var(--ink);background:#3a3a3c;box-shadow:none}:root[data-theme=dark] .script-switch:hover{background:#ffffff14}:root[data-theme=dark] .mobile-header{background:#1c1c1efa}:root[data-theme=dark] .progress-track{background:#3a3a3c}:root[data-theme=dark] .question-frame{border:0;box-shadow:0 18px 48px #0000003d}:root[data-theme=dark] .question-meta span,:root[data-theme=dark] .answer-actions .secondary-button,:root[data-theme=dark] .answer-actions .icon-text-button{color:#d1d1d6;background:#2c2c2e}:root[data-theme=dark] .flag-button,:root[data-theme=dark] .answer-actions .flag-button{color:#f1c64b;background:#3a2d0d}:root[data-theme=dark] .flag-button:hover,:root[data-theme=dark] .answer-actions .flag-button:hover{background:#493914}:root[data-theme=dark] .flag-button.active,:root[data-theme=dark] .flag-button.active:hover,:root[data-theme=dark] .answer-actions .flag-button.active,:root[data-theme=dark] .answer-actions .flag-button.active:hover,:root[data-theme=dark] .icon-text-button.flagged,:root[data-theme=dark] .icon-text-button.flagged:hover{color:#241a00;background:#e3b62f}:root[data-theme=dark] .question-table figcaption,:root[data-theme=dark] .question-table th{color:#d1d1d6}:root[data-theme=dark] .table-scroll,:root[data-theme=dark] .options{background:#ffffff0e}:root[data-theme=dark] .question-table th{background:#ffffff0f}:root[data-theme=dark] .question-table th,:root[data-theme=dark] .question-table td{border-bottom-color:#ffffff1a}:root[data-theme=dark] .choice-key{background:#ffffff17}:root[data-theme=dark] .option-button.selected,:root[data-theme=dark] .option-button.selected:hover{color:#a4d3fb;background:var(--blue-selected)}:root[data-theme=dark] .option-button.correct,:root[data-theme=dark] .option-button.correct:hover{color:var(--green-dark);background:var(--green-soft)}:root[data-theme=dark] .option-button.wrong,:root[data-theme=dark] .option-button.wrong:hover{color:#ff8a83;background:var(--red-soft)}:root[data-theme=dark] .answer-panel{background:#252527}:root[data-theme=dark] .note-area textarea,:root[data-theme=dark] .question-images img{color:var(--ink);background:#252527}:root[data-theme=dark] .note-area textarea:focus{background:#2c2c2e}:root[data-theme=dark] .release-notice{color:#9ccfff}:root[data-theme=dark] .primary-button{background:#2877b8;border-color:#2877b8}:root[data-theme=dark] .primary-button:hover{background:#3185c9}@media(max-width:820px){.progress-sync{display:flex}}.auth-page{position:relative}.auth-preferences{position:fixed;top:24px;right:28px;z-index:2}.auth-panel input{height:52px;margin-top:8px;padding:0 15px;color:var(--ink);background:#f2f3f3;border:0;border-radius:8px;box-shadow:none;outline:0;font-size:16px;transition:background-color .18s ease,box-shadow .18s ease,color .18s ease}.auth-panel input:hover{background:#edeff0;box-shadow:none}.auth-panel input:focus{background:#fff;box-shadow:0 0 0 1px #1d1d1f47,0 6px 18px #0000000f}.auth-panel input::placeholder{color:#858b88}.auth-input-control,.password-control{position:relative;margin-top:8px}.auth-input-control input,.password-control input{margin-top:0;padding-left:45px}.auth-input-icon{position:absolute;z-index:1;top:50%;left:15px;transform:translateY(-50%);color:#8a908d;pointer-events:none;transition:color .18s ease}.auth-input-control:focus-within .auth-input-icon,.password-control:focus-within .auth-input-icon{color:#515654}.password-control input{padding-right:48px}.password-visibility{position:absolute;top:50%;right:7px;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;padding:0;color:var(--muted);background:transparent;border:0;border-radius:6px}.password-visibility:hover{color:var(--ink);background:#76768017}.password-visibility:focus-visible{color:var(--ink);outline:2px solid #7b7f7d;outline-offset:1px}.auth-tabs{gap:2px;padding:2px;margin-top:28px;background:#edf0ef;border:0;border-radius:8px}.auth-tabs button,.auth-tabs button:last-child{color:#626966;background:transparent;border:0;border-radius:6px}.auth-tabs button.active{color:#1d2421;background:#fff;box-shadow:0 1px 4px #0000001a}.auth-panel form{gap:0;margin-top:18px}.auth-panel form label{margin-top:16px;font-size:14px;line-height:1.35}.auth-panel form label:first-child{margin-top:0}.auth-panel form .primary-button{min-height:48px;margin-top:22px}.auth-panel .auth-preview-note{margin:13px 0 0;color:var(--muted);font-size:12px;line-height:1.5;text-align:center}.auth-panel .auth-recovery-link{justify-self:end;margin-top:18px;padding:2px 0;color:var(--muted);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}:root[data-theme=dark] .auth-panel{background:#1d1e20;border-color:transparent;box-shadow:0 24px 70px #00000061}:root[data-theme=dark] .auth-panel input{color:#f5f5f7;background:#27282b;border:0;box-shadow:none}:root[data-theme=dark] .auth-panel input:hover{background:#2c2d30;box-shadow:none}:root[data-theme=dark] .auth-panel input:focus{background:#303135;box-shadow:0 0 0 1px #ffffff3d,0 8px 22px #00000040}:root[data-theme=dark] .auth-panel input::placeholder{color:#8f9297}:root[data-theme=dark] .auth-input-icon{color:#8f9297}:root[data-theme=dark] .auth-input-control:focus-within .auth-input-icon,:root[data-theme=dark] .password-control:focus-within .auth-input-icon{color:#d1d1d6}:root[data-theme=dark] .password-visibility:hover{background:#ffffff14}:root[data-theme=dark] .auth-tabs{background:#26272a}:root[data-theme=dark] .auth-tabs button{color:#a7aaae}:root[data-theme=dark] .auth-tabs button.active{color:#f5f5f7;background:#414347;box-shadow:0 1px 4px #0000004d}:root[data-theme=dark] .auth-panel .primary-button{color:#171918;background:#dfe6e3;border-color:#dfe6e3}:root[data-theme=dark] .auth-panel .primary-button:hover{background:#eef2f0;border-color:#eef2f0}:root[data-theme=dark] .auth-recovery-link,:root[data-theme=dark] .auth-back-button{color:#a7aaa8}:root[data-theme=dark] .auth-recovery-link:hover,:root[data-theme=dark] .auth-back-button:hover{color:#f5f5f7}@media(max-width:640px){.auth-page{align-items:start;padding-top:84px}.auth-preferences{top:16px;right:16px}}.admin-page{position:fixed;inset:0;z-index:100;overflow:hidden;color:var(--ink);background:#f5f5f7}.admin-workspace{width:100%;height:100%;display:flex;flex-direction:column}.admin-overlay{z-index:100;padding:22px;background:#1d1d1f57;backdrop-filter:blur(10px)}.admin-dialog{width:min(1040px,100%);max-height:min(860px,calc(100dvh - 44px));padding:0;background:var(--paper);border:0;border-radius:8px;box-shadow:0 24px 70px #0000002e}.admin-workspace .admin-head{width:min(1280px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);flex:0 0 auto;align-items:center;gap:28px;padding:22px 26px 20px;border-bottom:1px solid rgba(60,60,67,.12)}.admin-title-row{min-width:0;display:flex;align-items:center;gap:18px}.admin-back-button{min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 11px 0 8px;color:var(--ink);background:#76768017;border:0;border-radius:7px;font-size:13px;font-weight:var(--weight-medium)}.admin-back-button:hover{background:#76768026}.admin-head h1{margin:0;font-size:28px;line-height:1.25}.admin-summary{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 0;background:#76768011;border-radius:8px}.admin-summary>div{min-width:0;padding:0 15px;border-right:1px solid rgba(60,60,67,.11)}.admin-summary>div:last-child{border-right:0}.admin-summary span,.admin-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-summary span{color:var(--muted);font-size:11px}.admin-summary strong{margin-top:2px;font-size:18px;line-height:1.3}.admin-body{width:min(1280px,calc(100% - 48px));margin:0 auto;min-height:0;overflow-y:auto;padding:22px 0 56px}.invite-maker{grid-template-columns:minmax(0,1fr) 180px;gap:18px 24px;margin:0 0 22px;padding:0 0 22px;background:transparent;border:0;border-bottom:1px solid rgba(60,60,67,.12);border-radius:0}.admin-section-heading{grid-column:1 / -1;display:flex;align-items:start;justify-content:space-between;gap:16px}.admin-section-heading h2,.admin-list-heading h2{margin:0;color:var(--ink);font-size:16px;line-height:1.35}.admin-section-heading p,.admin-list-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.invite-control-block{align-content:start;gap:8px;padding:0;border:0}.invite-control-label{font-size:12px!important;line-height:1.4}.invite-paper-options{gap:6px}.invite-paper-options button{min-height:34px;padding:0 11px;color:var(--ink);background:#76768014;border:0;border-radius:7px;font-size:12px;font-weight:var(--weight-medium)}.invite-paper-options button:before{display:none}.invite-paper-options button:hover{background:#76768024}.invite-paper-options button.active{color:#fff;background:var(--blue);border-color:transparent}.invite-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.invite-buttons button,.generated-invite button{min-height:36px;padding:0 12px;color:#fff;background:var(--blue);border:0;border-radius:7px;font-size:13px}.invite-buttons button:hover,.generated-invite button:hover{background:#0077ed}.generated-invite{grid-column:1 / -1;grid-template-columns:minmax(190px,auto) 1fr auto;gap:14px;padding:14px 15px;background:var(--blue-soft);border:0;border-radius:8px}.generated-invite>div{display:grid;gap:2px}.generated-invite>div>span{font-size:11px}.generated-invite code{color:var(--blue);font-size:19px;font-weight:var(--weight-bold);letter-spacing:1px}.admin-list-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:8px}.admin-list-heading>div{display:flex;align-items:baseline;gap:9px}.admin-list-heading span{color:var(--muted);font-size:12px}.admin-list-heading p{margin:0;text-align:right}.admin-list{overflow:visible;border-top:1px solid rgba(60,60,67,.12)}.admin-user{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:18px 0;border-bottom-color:#3c3c431f}.admin-user-top{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-identity strong{font-size:15px}.admin-user-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.admin-status,.admin-paper-status{padding:4px 8px;border-radius:6px;font-size:11px}.admin-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:11px 0;background:#76768011;border-radius:8px}.admin-progress>div{padding:0 14px;background:transparent;border:0;border-right:1px solid rgba(60,60,67,.11);border-radius:0}.admin-progress>div:last-child{border-right:0}.admin-actions{display:grid;grid-template-columns:auto minmax(180px,260px) auto;align-items:end;justify-content:start;gap:12px}.admin-action-group,.admin-paper-select{display:grid;gap:6px}.admin-action-group>span,.admin-paper-select>span{color:var(--muted);font-size:11px;font-weight:var(--weight-medium)}.admin-action-group>div{display:flex;gap:6px}.admin-actions button,.admin-paper-select select{min-height:36px;color:var(--ink);background:#76768014;border:0;border-radius:7px;font-size:12px;font-weight:var(--weight-medium)}.admin-actions button{padding:0 12px}.admin-actions button:hover,.admin-paper-select select:hover{background:#76768024}.admin-paper-select select{width:100%;padding:0 32px 0 11px}.admin-actions .admin-disable-button{color:var(--red);background:transparent}.admin-actions .admin-disable-button:hover{background:var(--red-soft)}.admin-actions button:disabled,.admin-paper-select select:disabled,.invite-maker button:disabled{opacity:.55;cursor:wait}.admin-loading{margin:0;padding:44px 0;text-align:center}.logout-overlay{z-index:120}.logout-dialog{position:relative;width:min(420px,100%);padding:26px;color:var(--ink);background:var(--paper);border:0;border-radius:8px;box-shadow:0 24px 70px #0003}.logout-close{position:absolute;top:14px;right:14px;color:var(--muted);background:#76768017}.logout-dialog-icon{width:42px;height:42px;display:grid;place-items:center;color:var(--red);background:var(--red-soft);border-radius:8px}.logout-dialog h2{margin:18px 0 7px;font-size:21px;line-height:1.35}.logout-dialog p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}.logout-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:24px}.logout-dialog-actions button{min-height:42px;border-radius:7px;font-weight:var(--weight-semibold)}.logout-confirm-button{color:#fff;background:var(--red);border:0}.logout-confirm-button:hover{filter:brightness(.94)}:root[data-theme=dark] .admin-overlay{background:#0000008a}:root[data-theme=dark] .admin-page{background:#111113}:root[data-theme=dark] .admin-dialog,:root[data-theme=dark] .logout-dialog{background:#1c1c1e;box-shadow:0 28px 80px #00000080}:root[data-theme=dark] .admin-head,:root[data-theme=dark] .invite-maker,:root[data-theme=dark] .admin-list,:root[data-theme=dark] .admin-user{border-color:#ffffff17}:root[data-theme=dark] .admin-head .icon-button,:root[data-theme=dark] .logout-close,:root[data-theme=dark] .admin-back-button,:root[data-theme=dark] .invite-paper-options button,:root[data-theme=dark] .admin-actions button,:root[data-theme=dark] .admin-paper-select select,:root[data-theme=dark] .admin-progress{color:var(--ink);background:#ffffff13}:root[data-theme=dark] .invite-paper-options button:hover,:root[data-theme=dark] .admin-actions button:hover,:root[data-theme=dark] .admin-paper-select select:hover{background:#ffffff1f}:root[data-theme=dark] .invite-paper-options button.active{color:#fff;background:var(--blue)}:root[data-theme=dark] .generated-invite{background:var(--blue-soft)}:root[data-theme=dark] .admin-progress>div{border-color:#ffffff17}:root[data-theme=dark] .admin-status.active{color:#8bd6a4}:root[data-theme=dark] .admin-paper-status{color:#91c9fa}:root[data-theme=dark] .admin-actions .admin-disable-button{color:#ff6961;background:transparent}:root[data-theme=dark] .admin-actions .admin-disable-button:hover{background:var(--red-soft)}@media(max-width:820px){.admin-overlay{padding:12px}.admin-dialog{max-height:calc(100dvh - 24px)}.admin-workspace .admin-head{width:calc(100% - 32px);grid-template-columns:1fr;gap:14px;padding:17px 0}.admin-title-row{justify-content:space-between}.admin-body{width:calc(100% - 32px);padding:18px 0 44px}.invite-maker{grid-template-columns:1fr}.admin-section-heading,.generated-invite{grid-column:1}.invite-buttons{max-width:260px}.admin-user{grid-template-columns:1fr}.admin-actions{grid-column:auto;grid-template-columns:auto minmax(170px,1fr) auto}}@media(max-width:560px){.admin-head h1{font-size:23px}.admin-summary>div{padding:0 9px}.admin-summary strong{font-size:16px}.invite-paper-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.invite-paper-options button{width:100%}.generated-invite{grid-template-columns:1fr auto}.generated-invite>span{grid-column:1 / -1;grid-row:auto}.admin-user-top{align-items:flex-start}.admin-progress{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:13px}.admin-progress>div:nth-child(2){border-right:0}.admin-actions{grid-template-columns:1fr;align-items:stretch}.admin-action-group>div,.admin-action-group button,.admin-disable-button{width:100%}.logout-dialog{padding:22px}}@media(max-width:640px){:root{--mobile-type-body: 16px;--mobile-type-meta: 14px}.mobile-header{height:44px;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:0 9px;background:#f5f5f7f0;border-bottom:0;box-shadow:none;backdrop-filter:saturate(180%) blur(18px)}.mobile-header .icon-button{width:34px;min-width:34px;min-height:34px;color:var(--muted);background:transparent}.mobile-context{display:contents}.mobile-context strong{position:absolute;left:50%;max-width:48vw;overflow:hidden;font-size:var(--mobile-type-body);line-height:1.2;font-weight:var(--weight-semibold);text-overflow:ellipsis;transform:translate(-50%);white-space:nowrap}.mobile-context span{grid-column:3;justify-self:end;flex:0 0 auto;color:var(--muted);font-size:var(--mobile-type-body);font-variant-numeric:tabular-nums;font-weight:var(--weight-regular);white-space:nowrap}.quiz-main{padding:8px 10px 56px}.quiz-header{display:none}.navigation-strip{margin-top:0}.position-line,.progress-sync{display:none}.progress-track{height:3px}.practice-navigation .jump-controls{width:max-content;max-width:none;margin:6px 0 0 auto;padding:0;display:grid;grid-template-columns:58px auto auto;align-items:center;gap:2px;background:transparent;border-radius:0;-webkit-text-size-adjust:100%}.practice-navigation .jump-controls label{grid-column:auto;min-width:0;height:32px;padding-left:0;gap:0;font-size:var(--mobile-type-body)}.practice-navigation .jump-controls input{width:58px;height:32px;flex:0 0 58px;padding:0 6px;-webkit-appearance:none;appearance:textfield;font:inherit;font-size:var(--mobile-type-body);font-weight:var(--weight-medium);line-height:1;text-align:center}.practice-navigation .jump-controls .secondary-button,.practice-navigation .jump-controls .icon-text-button{grid-column:auto;min-height:32px;padding:0 6px;gap:3px;font-size:var(--mobile-type-body);white-space:nowrap}.practice-navigation .jump-controls .icon-text-button:last-child{grid-column:auto}.practice-navigation .jump-controls svg{width:15px;height:15px}.question-frame{margin:10px 0 0;padding:13px 11px 18px;border-radius:8px}.question-meta{gap:5px}.question-meta span{padding:0;color:var(--muted);background:transparent;font-size:var(--mobile-type-meta);border-radius:0}.question-meta{display:none}.question-stem,.option-button,.answer-panel,.answer-panel>p,.manual-matches p{font-size:var(--mobile-type-body);line-height:1.52}.question-stem{margin:16px 0 14px}.option-button{min-height:50px;grid-template-columns:29px minmax(0,1fr);gap:8px;padding:8px 9px}.choice-key{width:29px;height:29px}.choice-text{padding-top:0}.answer-actions{display:flex;flex-wrap:nowrap;gap:0;margin-top:14px;padding:3px;background:#76768016;border-radius:8px;-webkit-text-size-adjust:100%}.answer-actions button{width:auto;min-width:0;flex:1 1 0;min-height:38px;padding-inline:3px;gap:3px;color:var(--ink);background:transparent;border:0;border-radius:6px;box-shadow:none;font-size:var(--mobile-type-meta);font-weight:var(--weight-medium);white-space:nowrap}.answer-actions button svg{width:15px;height:15px}.answer-actions .primary-button,.answer-actions .secondary-button,.answer-actions .icon-text-button,.answer-actions .flag-button{color:var(--ink);background:transparent;border:0}.answer-actions button+button{border-left:1px solid rgba(60,60,67,.12);border-radius:0}.answer-actions button:first-child{border-radius:6px 0 0 6px}.answer-actions button:last-child{border-radius:0 6px 6px 0}.answer-actions .primary-button:last-child{color:var(--blue)}.answer-actions .flag-button.active{color:var(--amber);background:var(--amber-soft)}.desktop-action-label{display:none}.mobile-action-label{display:inline}.answer-panel{margin-top:18px;padding:16px 13px}.practice-answer-panel{display:block}.practice-answer-panel .answer-heading{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:9px}.answer-icon{width:30px;height:30px;align-self:start}.practice-answer-panel .answer-heading>div{grid-column:auto}.practice-answer-panel .answer-heading small,.manual-source-heading,.manual-matches article>strong,.note-area label{font-size:var(--mobile-type-meta)}.practice-answer-panel .answer-heading strong,.note-area textarea{font-size:var(--mobile-type-body)}.practice-answer-panel>p{margin-top:12px}.manual-source{margin-top:16px;padding-top:14px}.manual-source-title{grid-template-columns:30px minmax(0,1fr);column-gap:9px;min-height:30px}.manual-source .manual-matches{max-width:none;margin:9px 0 0}.manual-matches{gap:10px}.note-area{margin-top:22px}.sidebar-display-settings{width:100%;padding:14px 2px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}.sidebar-display-settings .display-preferences{gap:6px}.sidebar{width:min(84vw,312px);padding:0 14px 14px;display:flex;flex-direction:column;overscroll-behavior:contain;background:#fbfbfdfb}.sidebar-head{position:sticky;top:0;z-index:3;min-height:58px;padding:8px 0;background:#fbfbfdfb;border-bottom:1px solid var(--line)}.sidebar-head .brand-lockup{gap:8px}.sidebar-head .brand-mark{width:30px;height:30px;flex-basis:30px}.sidebar-head .brand-lockup strong{font-size:var(--mobile-type-body)}.sidebar-head .brand-lockup span:not(.brand-mark){font-size:var(--mobile-type-meta)}.sidebar-head .icon-button{width:34px;min-width:34px;min-height:34px}.sidebar-controls{margin-top:10px}.study-mode-group,.mode-group{margin-top:12px;padding-top:0;border-top:0}.study-mode-group:first-child{margin-top:0}.study-mode-group>.field-label,.mode-group>.field-label{display:block;margin:0 2px 5px;font-size:var(--mobile-type-meta)}.mode-group .segmented,.study-mode-group .segmented{margin:0;padding:2px;border-radius:8px}.mode-group .segmented button,.study-mode-group .segmented button{min-height:33px;font-size:var(--mobile-type-meta);border-radius:6px}.filter-group{overflow:visible;background:#7676800b;border:1px solid rgba(60,60,67,.11);border-radius:8px}.filter-row{min-height:47px;padding:5px 9px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:8px}.filter-label{font-size:var(--mobile-type-meta)}.filter-select-trigger{min-height:34px;justify-content:flex-end;text-align:right;font-size:var(--mobile-type-body)}.filter-select-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-select-menu{top:calc(100% - 1px)}.sidebar-stats{margin-top:14px;padding-top:13px;gap:4px}.sidebar-stats>div{gap:1px}.sidebar-stats span{font-size:var(--mobile-type-meta)}.sidebar-stats strong{font-size:var(--mobile-type-body)}.admin-entry{min-height:36px;margin-top:12px;padding:0 9px;border:0;border-radius:7px;font-size:var(--mobile-type-meta)}.sidebar-display-settings{margin-top:12px;padding:11px 2px}.sidebar-display-settings>.field-label{font-size:var(--mobile-type-meta)}.sidebar-display-settings .theme-toggle button{width:28px;height:27px}.sidebar-display-settings .script-switch{height:30px}.account-row{min-height:48px;margin-top:auto;padding-top:10px}.account-avatar{width:30px;height:30px;flex-basis:30px}.account-row,.account-copy strong,.script-switch,.theme-toggle button,.filter-select-menu button{font-size:var(--mobile-type-meta)}:root[data-theme=dark] .answer-actions{background:#ffffff13}:root[data-theme=dark] .answer-actions .primary-button,:root[data-theme=dark] .answer-actions .secondary-button,:root[data-theme=dark] .answer-actions .icon-text-button,:root[data-theme=dark] .answer-actions .flag-button{color:var(--ink);background:transparent;border:0}:root[data-theme=dark] .answer-actions .primary-button:last-child{color:#64b5f6}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .sidebar-head{background:#1c1c1efb}:root[data-theme=dark] .mobile-header{background:#111113f0}}@media(max-width:374px){.quiz-header h1{font-size:20px}.practice-navigation .jump-controls label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.practice-navigation .jump-controls .secondary-button,.practice-navigation .jump-controls .icon-text-button{padding-inline:5px;font-size:12px}}
