@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(./newsreader-vietnamese-400-normal-DdKr49mV.woff2) format("woff2"),url(./newsreader-vietnamese-400-normal-BekUZro8.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(./newsreader-latin-ext-400-normal-svq1FPys.woff2) format("woff2"),url(./newsreader-latin-ext-400-normal-DYA1XoQK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(./newsreader-latin-400-normal-BFBkh4jY.woff2) format("woff2"),url(./newsreader-latin-400-normal-gRTjlS2D.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:600;src:url(./newsreader-vietnamese-600-normal-CaH84vfx.woff2) format("woff2"),url(./newsreader-vietnamese-600-normal-CVAR0otO.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:600;src:url(./newsreader-latin-ext-600-normal-BXv5iMHi.woff2) format("woff2"),url(./newsreader-latin-ext-600-normal-BrbfzHZ5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:600;src:url(./newsreader-latin-600-normal-30OJ_TG_.woff2) format("woff2"),url(./newsreader-latin-600-normal-DUnT2r2g.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./public-sans-vietnamese-400-normal-TxZB8OSn.woff2) format("woff2"),url(./public-sans-vietnamese-400-normal-BO1meqcx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./public-sans-latin-ext-400-normal-mk90oQqJ.woff2) format("woff2"),url(./public-sans-latin-ext-400-normal-B02wwOdZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./public-sans-latin-400-normal-8Rpg0ruU.woff2) format("woff2"),url(./public-sans-latin-400-normal-SBbinRkI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./public-sans-vietnamese-500-normal-DjztbcKe.woff2) format("woff2"),url(./public-sans-vietnamese-500-normal-CXYe29CY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./public-sans-latin-ext-500-normal-DC-z7ASZ.woff2) format("woff2"),url(./public-sans-latin-ext-500-normal-BHCCp-na.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./public-sans-latin-500-normal-NlrCPXnF.woff2) format("woff2"),url(./public-sans-latin-500-normal-vCxiVFAq.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./public-sans-vietnamese-700-normal-D97ShjGS.woff2) format("woff2"),url(./public-sans-vietnamese-700-normal-Dq5VrXjD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./public-sans-latin-ext-700-normal-CgolUQuG.woff2) format("woff2"),url(./public-sans-latin-ext-700-normal-jWHjnMgZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Public Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./public-sans-latin-700-normal-BqJmxWdE.woff2) format("woff2"),url(./public-sans-latin-700-normal-Dm-oTPSL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;font-family:Public Sans,sans-serif;line-height:1.5;font-weight:400;color:#1f2a31;background:radial-gradient(circle at top left,rgba(39,96,103,.18),transparent 28%),radial-gradient(circle at top right,rgba(185,112,68,.18),transparent 24%),linear-gradient(180deg,#f6f0e7,#efe6d8);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--paper: rgba(255, 251, 245, .84);--paper-strong: rgba(255, 251, 245, .96);--line: rgba(32, 44, 56, .12);--ink: #1f2a31;--muted: #5d6a73;--accent: #1c5d63;--accent-soft: rgba(28, 93, 99, .12);--accent-warm: #a6582d;--success: #2b6f46;--danger: #a64040;--shadow: 0 24px 64px rgba(33, 34, 37, .12)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:320px minmax(0,1fr);height:100vh;overflow:hidden}.app-shell.editor-mode{grid-template-columns:1fr}.sidebar{padding:28px;border-right:1px solid var(--line);background:linear-gradient(180deg,#fffbf5cc,#f2eadee0);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:24px;min-height:0;overflow:auto}.sidebar-hero h1,.review-header h2,.status-card h1,.empty-state h2{font-family:Newsreader,serif}.sidebar-hero h1{margin:10px 0 6px;font-size:2.6rem;line-height:.95;letter-spacing:-.04em}.sidebar-hero p,.status-card p,.empty-state p{color:var(--muted)}.hero-chip,.question-kicker,.reveal-badge,.set-year,.reference-block span{text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700}.hero-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;color:var(--accent);background:#1c5d6317}.set-list{display:grid;gap:12px}.set-card{display:grid;gap:8px;padding:16px 18px;border:1px solid transparent;border-radius:20px;background:#ffffff8c;color:var(--ink);text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease}.set-card strong{display:block;margin-top:2px;font-size:1.05rem}.set-card:hover,.set-card.active{transform:translateY(-1px);border-color:#1c5d634d;background:#ffffffd1}.set-meta,.summary-row span,.rail-copy span,.reveal-hint,.reference-block p{color:var(--muted)}.sidebar-summary{margin-top:auto;display:grid;gap:12px;padding:18px;border-radius:22px;background:#192a30e6;color:#f7f1e6;box-shadow:var(--shadow)}.summary-row{display:flex;justify-content:space-between;gap:12px}.reset-progress{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#ffffff14;color:#f7f1e6}.workspace{padding:26px;display:flex;flex-direction:column;gap:18px;min-width:0;min-height:0}.workspace-header{display:flex;justify-content:space-between;gap:16px;align-items:center}.session-chip{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;border-radius:18px;background:#1c5d6317;border:1px solid rgba(28,93,99,.14);color:var(--accent);flex-wrap:wrap}.session-chip.offline{background:#ffffffb8;border-color:#202c3814;color:var(--ink)}.session-chip-copy,.session-chip-action{display:inline-flex;align-items:center;gap:8px}.session-chip-copy{font-weight:700}.session-chip-note{color:var(--muted);font-size:.9rem}.session-chip-action{padding:8px 12px;border-radius:12px;border:1px solid rgba(28,93,99,.14);background:#ffffffad;color:inherit}.sync-banner{padding:14px 16px;border-radius:18px;border:1px solid rgba(166,88,45,.18);background:#a6582d1a;color:var(--accent-warm)}.mode-switcher{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:6px;border-radius:18px;background:#fffbf5e6;border:1px solid rgba(32,44,56,.08);box-shadow:0 12px 26px #21222514}.mode-switch{padding:10px 14px;border-radius:14px;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:600}.mode-switch.active{background:#1c5d631f;border-color:#1c5d632e;color:var(--accent)}.compact-topbar{display:none}.toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center}.search-field{display:flex;align-items:center;gap:10px;flex:1;padding:14px 16px;border-radius:18px;background:var(--paper);border:1px solid rgba(32,44,56,.08);box-shadow:0 10px 24px #252a2e14}.search-field input{width:100%;border:none;outline:none;background:transparent;color:var(--ink)}.toolbar-stats{display:flex;gap:10px}.stat-pill{display:inline-flex;align-items:center;gap:8px;padding:12px 14px;border-radius:16px;background:#ffffffad;border:1px solid rgba(32,44,56,.08);color:var(--muted)}.mobile-action,.mobile-sheet-close{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border-radius:14px;border:1px solid rgba(32,44,56,.1);background:#ffffffbf;color:var(--ink)}.cleanup-shell{min-height:0;display:flex;flex-direction:column;gap:18px;flex:1}.cleanup-header{display:flex;justify-content:space-between;gap:18px;align-items:start}.cleanup-header h2{margin:10px 0 6px;font-family:Newsreader,serif;font-size:clamp(2rem,3vw,2.8rem);line-height:.98;letter-spacing:-.04em}.cleanup-header p,.cleanup-queue-item p,.cleanup-audit-copy p,.cleanup-details pre,.cleanup-status-card p{color:var(--muted)}.cleanup-summary{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.cleanup-grid{min-height:0;display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px;flex:1}.cleanup-queue,.cleanup-editor{min-height:0;background:var(--paper-strong);border:1px solid rgba(32,44,56,.08);box-shadow:var(--shadow)}.cleanup-queue{border-radius:26px;padding:16px;display:flex;flex-direction:column;gap:14px}.cleanup-queue-toolbar{display:grid;gap:12px}.cleanup-search{min-width:0}.cleanup-filter{display:grid;gap:8px;color:var(--muted);font-size:.94rem}.cleanup-filter select,.cleanup-field input,.cleanup-field textarea,.cleanup-field select{width:100%;border:1px solid rgba(32,44,56,.1);border-radius:16px;background:#ffffffc7;color:var(--ink)}.cleanup-filter select,.cleanup-field input,.cleanup-field select{padding:12px 14px}.cleanup-field textarea{min-height:110px;padding:14px;resize:vertical}.cleanup-queue-list{min-height:0;overflow:auto;display:grid;gap:10px;padding-right:4px}.cleanup-queue-item{display:grid;gap:10px;text-align:left;padding:14px;border-radius:18px;border:1px solid transparent;background:#ffffff94;color:var(--ink)}.cleanup-queue-item.active{border-color:#1c5d633d;background:#1c5d631a}.cleanup-queue-meta{display:grid;gap:4px}.cleanup-queue-meta span,.cleanup-page-card figcaption span{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.cleanup-queue-meta strong{font-size:1rem}.cleanup-queue-item p{margin:0;line-height:1.45}.cleanup-queue-footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.cleanup-queue-footer em{color:var(--muted);font-style:normal;font-size:.84rem}.cleanup-status-pill{display:inline-flex;align-items:center;width:fit-content;padding:7px 10px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.status-pending_review{color:var(--accent-warm);background:#a6582d1f}.status-looks_good{color:var(--success);background:#2b6f461f}.status-needs_follow_up{color:var(--danger);background:#a640401f}.cleanup-editor{border-radius:30px;padding:24px;overflow:auto;display:grid;gap:18px}.cleanup-editor-header,.cleanup-save-bar,.cleanup-section-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.cleanup-editor-header h3,.cleanup-section-header h4{margin:8px 0 0;font-family:Newsreader,serif;font-size:1.85rem;line-height:1.05;letter-spacing:-.03em}.cleanup-section-header h4{font-size:1.35rem}.cleanup-editor-actions,.cleanup-save-bar{flex-wrap:wrap;justify-content:flex-end}.cleanup-editor-actions button,.cleanup-primary,.cleanup-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border-radius:14px;border:1px solid rgba(32,44,56,.1)}.cleanup-primary{background:#1c5d631c;color:var(--accent)}.cleanup-secondary,.cleanup-editor-actions button{background:#ffffffc7;color:var(--ink)}.cleanup-editor-actions button:disabled,.cleanup-primary:disabled,.cleanup-secondary:disabled{opacity:.45;cursor:not-allowed}.cleanup-audit-strip,.cleanup-banner{border-radius:20px;padding:16px 18px}.cleanup-audit-strip{display:flex;gap:16px;align-items:start;border:1px dashed rgba(28,93,99,.2);background:#1c5d630d}.cleanup-audit-copy strong{display:block;margin-bottom:6px}.cleanup-audit-copy p{margin:0}.cleanup-banner{border:1px solid rgba(32,44,56,.08)}.cleanup-banner.success{background:#2b6f461f;border-color:#2b6f462e;color:var(--success)}.cleanup-banner.error{background:#a640401a;border-color:#a640402e;color:var(--danger)}.cleanup-form{display:grid;gap:16px}.cleanup-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cleanup-row{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:14px}.cleanup-field{display:grid;gap:8px}.cleanup-field span{font-size:.93rem;color:var(--muted)}.cleanup-field-full{grid-column:1 / -1}.cleanup-field-wide{min-width:0}.cleanup-source-section{display:grid;gap:16px;margin-top:4px}.cleanup-source-group{display:grid;gap:12px}.cleanup-subsection-header h5{margin:0;font-size:1rem;letter-spacing:-.01em}.cleanup-subsection-header p{margin:4px 0 0;color:var(--muted);font-size:.95rem}.cleanup-page-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.cleanup-page-card{margin:0;border-radius:22px;overflow:hidden;background:#ffffffb8;border:1px solid rgba(32,44,56,.08)}.cleanup-page-card img{width:100%;display:block;height:auto}.cleanup-page-card figcaption{padding:12px 14px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center}.cleanup-raw-grid{display:grid;gap:12px}.cleanup-source-empty{border-radius:18px;border:1px dashed rgba(32,44,56,.14);background:#ffffff85;padding:16px 18px;color:var(--muted)}.cleanup-source-empty p{margin:0}.cleanup-details{border-radius:18px;border:1px solid rgba(32,44,56,.08);background:#ffffffb3;overflow:hidden}.cleanup-details summary{cursor:pointer;padding:14px 16px;font-weight:700}.cleanup-details pre{margin:0;padding:0 16px 16px;white-space:pre-wrap;font-family:Public Sans,sans-serif;font-size:.95rem;line-height:1.55}.cleanup-empty,.cleanup-status-card{max-width:none}.content-grid{min-height:0;display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;flex:1}.question-rail,.review-card,.status-card,.empty-state{background:var(--paper-strong);border:1px solid rgba(32,44,56,.08);box-shadow:var(--shadow)}.question-rail,.review-card{min-height:0;max-height:100%}.question-rail{border-radius:26px;padding:12px;overflow:auto;display:flex;flex-direction:column;gap:10px;scrollbar-gutter:stable both-edges;scrollbar-width:thin;scrollbar-color:rgba(28,93,99,.38) rgba(28,93,99,.08);overscroll-behavior:contain}.question-rail::-webkit-scrollbar{width:12px}.question-rail::-webkit-scrollbar-track{background:#1c5d6314;border-radius:999px}.question-rail::-webkit-scrollbar-thumb{background:#1c5d6352;border-radius:999px;border:2px solid rgba(255,251,245,.7)}.question-rail::-webkit-scrollbar-thumb:hover{background:#1c5d6375}.rail-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid transparent;border-radius:18px;background:transparent;text-align:left;color:var(--ink);transition:background .16s ease,border-color .16s ease;scroll-margin-block:45%}.rail-item:hover,.rail-item.active{background:#1c5d6314;border-color:#1c5d6333}.rail-copy strong{display:block;margin-top:4px;font-size:.93rem;line-height:1.35}.rail-marker{color:var(--muted)}.review-card{border-radius:30px;padding:28px;overflow:auto;position:relative}.celebration-burst{position:absolute;inset:18px 18px auto 18px;min-height:132px;border-radius:26px;background:linear-gradient(180deg,#fffbf5f0,#fff4e2db);border:1px solid rgba(28,93,99,.14);overflow:hidden;pointer-events:none;box-shadow:0 22px 54px #2122251f;animation:celebration-fade 2.2s ease forwards;z-index:2}.celebration-copy{position:absolute;left:22px;top:18px;display:grid;gap:2px;z-index:2}.celebration-copy strong{color:var(--success);font-size:1.15rem}.celebration-copy span{color:var(--muted)}.confetti-piece,.celebration-balloon{position:absolute;display:block}.confetti-piece{top:-10px;width:12px;height:20px;border-radius:999px;opacity:0;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.18,.82,.3,1);animation-fill-mode:forwards}.confetti-piece:nth-of-type(4n+1){background:#f4be4a}.confetti-piece:nth-of-type(4n+2){background:#ed7d54}.confetti-piece:nth-of-type(4n+3){background:#3e9d78}.confetti-piece:nth-of-type(4n+4){background:#2d8ea2}.celebration-balloon{bottom:-42px;width:42px;height:52px;border-radius:50% 50% 46% 46%;background:var(--balloon-color, var(--accent));opacity:0;animation:balloon-rise 1.8s ease forwards}.celebration-balloon:before{content:"";position:absolute;left:50%;bottom:-34px;width:2px;height:36px;background:#202c383d;transform:translate(-50%)}.review-header{display:flex;justify-content:space-between;gap:20px;align-items:start}.question-kicker{color:var(--accent)}.review-header h2{margin:10px 0 0;font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1.08;letter-spacing:-.03em;max-width:18ch}.question-nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.question-nav button,.reveal-panel,.reveal-hint,.status-card,.empty-state{border-radius:20px}.question-nav button{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid rgba(32,44,56,.1);background:#ffffffbf}.question-nav button:disabled{cursor:not-allowed;opacity:.45}.image-strip{margin:28px 0;display:grid;gap:16px}.prompt-block{margin-top:22px;display:grid;gap:14px;max-width:90ch}.prompt-block p{margin:0;font-size:1.03rem;color:#28343d}.question-figure{margin:0;overflow:hidden;border-radius:24px;background:#f0ede8;border:1px solid rgba(32,44,56,.08)}.question-figure img{display:block;width:100%;height:auto}.figure-caption{padding:14px 18px 18px;display:flex;justify-content:space-between;gap:18px;align-items:end;background:#fffbf5d1}.figure-caption span,.figure-fallback strong{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--accent)}.figure-caption p,.figure-fallback p{margin:6px 0 0;color:var(--muted)}.figure-source-link{flex-shrink:0;align-self:center;padding:10px 14px;border-radius:14px;border:1px solid rgba(28,93,99,.18);background:#1c5d6314;color:var(--accent)}.figure-fallback{margin:28px 0 0;padding:18px 20px;border-radius:22px;border:1px dashed rgba(28,93,99,.22);background:#1c5d630d}.answer-grid{display:grid;gap:12px}.choice-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:18px;border-radius:20px;border:1px solid rgba(32,44,56,.08);background:#ffffffb8;color:var(--ink);text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease}.choice-card:hover{transform:translateY(-1px);border-color:#1c5d633d}.choice-card.selected{border-color:#1c5d6370;background:#1c5d6317}.choice-card.correct{border-color:#2b6f4659;background:#2b6f461a}.choice-card.incorrect{border-color:#a6404059;background:#a6404014}.choice-key{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#192a3014;font-weight:700;color:var(--accent)}.choice-text{padding-top:8px}.reveal-panel,.reveal-hint{margin-top:22px;padding:20px 22px}.reveal-panel{border:1px solid rgba(32,44,56,.08);background:linear-gradient(180deg,#ffffffe0,#faf3eaeb)}.reveal-panel.success{border-color:#2b6f4640}.reveal-panel.miss{border-color:#a6582d33}.reveal-badge{color:var(--accent-warm)}.reveal-panel h3{margin:10px 0 14px;font-size:1.2rem}.explanation-copy{display:grid;gap:14px}.explanation-copy p,.reference-block p{margin:0}.reference-block{margin-top:18px;padding-top:18px;border-top:1px dashed rgba(32,44,56,.16)}.reveal-hint{color:var(--muted);background:#1c5d630f;border:1px dashed rgba(28,93,99,.18)}.status-screen{min-height:100vh;display:grid;place-items:center;padding:28px}.auth-shell{min-height:100vh;padding:28px;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(360px,.95fr);gap:22px}.auth-panel{border-radius:32px;border:1px solid rgba(32,44,56,.08);box-shadow:var(--shadow);min-width:0}.auth-panel-brand,.auth-panel-form{padding:34px}.auth-panel-brand{background:radial-gradient(circle at top left,rgba(28,93,99,.16),transparent 34%),linear-gradient(180deg,#fffbf5f5,#f5ece0f0);display:grid;align-content:start;gap:20px}.auth-panel-brand h1,.auth-panel-form h2{margin:0;font-family:Newsreader,serif;line-height:.98;letter-spacing:-.04em}.auth-panel-brand h1{font-size:clamp(2.8rem,5vw,4.4rem);max-width:9ch}.auth-panel-brand p,.auth-copy p{margin:0;color:var(--muted);font-size:1.02rem}.auth-feature-list{display:grid;gap:14px;margin-top:12px}.auth-feature{display:grid;grid-template-columns:18px minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border-radius:22px;background:#ffffffb3;border:1px solid rgba(32,44,56,.07)}.auth-feature svg{color:var(--accent);margin-top:2px}.auth-feature strong{display:block;margin-bottom:4px}.auth-feature span{color:var(--muted)}.auth-panel-form{background:#fffbf5f5;display:grid;align-content:start;gap:22px}.auth-tabs{display:inline-flex;gap:8px;width:fit-content;padding:6px;border-radius:18px;background:#ffffffd6;border:1px solid rgba(32,44,56,.08)}.auth-copy{display:grid;gap:10px}.auth-copy h2{font-size:clamp(2rem,4vw,2.8rem)}.auth-form{display:grid;gap:14px}.auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 16px;border-radius:16px;border:1px solid rgba(28,93,99,.18);background:linear-gradient(180deg,#1c5d6324,#1c5d6317);color:var(--accent);font-weight:700}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.status-card,.empty-state{max-width:620px;padding:30px}.mobile-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:grid;place-items:center;padding:18px;background:#12181d5c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-sheet{width:min(720px,100%);max-height:min(92vh,900px);display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;padding:20px;border-radius:26px;background:#fffbf5fa;border:1px solid rgba(32,44,56,.08);box-shadow:0 32px 80px #0f121538}.mobile-sheet-header{display:flex;justify-content:space-between;gap:14px;align-items:center}.mobile-sheet-header h3{margin:8px 0 0;font-family:Newsreader,serif;font-size:1.8rem;line-height:1.05;letter-spacing:-.03em}.mobile-sheet-body{min-height:0;overflow:auto}.sidebar-sheet-panel{padding:0;border:none;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible}.sidebar-sheet-panel .sidebar-summary{margin-top:0}.source-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:28px;background:#12181d7a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.source-viewer{width:min(1080px,100%);max-height:min(92vh,1100px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;padding:22px;border-radius:28px;background:#fffbf5fa;border:1px solid rgba(32,44,56,.08);box-shadow:0 32px 80px #0f121538}.source-viewer-header,.source-viewer-nav{display:flex;justify-content:space-between;gap:14px;align-items:center}.source-viewer-header h3{margin:8px 0 0;font-family:Newsreader,serif;font-size:1.6rem;line-height:1.05;letter-spacing:-.03em}.source-viewer-close{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:14px;border:1px solid rgba(32,44,56,.1);background:#ffffffbf}.source-viewer-frame{min-height:0;overflow:auto;border-radius:22px;border:1px solid rgba(32,44,56,.08);background:linear-gradient(180deg,#f7f0e3,#f0e8da);display:grid;place-items:start center;padding:20px}.source-viewer-frame img{width:100%;height:auto;border-radius:18px;box-shadow:0 24px 54px #161c201f}.status-icon{color:var(--accent)}.spin{animation:spin .9s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes celebration-fade{0%{opacity:0;transform:translateY(-8px) scale(.98)}14%,78%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-4px) scale(.995)}}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-8px) rotate(0)}12%{opacity:1}to{opacity:0;transform:translateY(168px) translate(8px) rotate(180deg)}}@keyframes balloon-rise{0%{opacity:0;transform:translateY(16px) scale(.9)}18%{opacity:.95}to{opacity:0;transform:translateY(-122px) scale(1.05)}}@media (max-width: 1100px){.auth-shell{grid-template-columns:1fr;padding:20px}.auth-panel-brand,.auth-panel-form{padding:26px}.app-shell{display:block;min-height:100vh;height:auto;overflow:visible}.workspace{padding:20px}.compact-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:24px;background:#fffbf5eb;border:1px solid rgba(32,44,56,.08);box-shadow:0 16px 36px #2122251a;position:sticky;top:12px;z-index:5}.compact-context{min-width:0;display:grid;gap:3px}.compact-context span,.compact-context em{color:var(--muted);font-style:normal}.compact-context strong{font-size:1.08rem}.compact-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.toolbar-stats{flex-wrap:wrap}.content-grid{grid-template-columns:1fr}.content-grid.compact{display:block}.cleanup-header,.cleanup-grid,.cleanup-row,.cleanup-choice-grid{grid-template-columns:1fr}.cleanup-header,.cleanup-editor-header,.cleanup-save-bar,.cleanup-section-header,.cleanup-audit-strip,.toolbar,.review-header,.workspace-header{flex-direction:column;align-items:stretch}.toolbar-stats,.question-nav{justify-content:space-between}.session-chip{width:100%;justify-content:space-between}.review-card{padding:24px}.figure-caption,.mobile-sheet-header,.source-viewer-header,.source-viewer-nav{flex-direction:column;align-items:stretch}.mobile-sheet{width:min(760px,100%)}.mobile-sheet .question-rail{max-height:none;height:100%}.cleanup-queue,.cleanup-editor{max-height:none}.source-viewer-backdrop{padding:16px}.source-viewer{max-height:96vh;padding:18px}}@media (max-width: 760px){.auth-shell{padding:14px;gap:14px}.auth-panel-brand,.auth-panel-form{padding:20px;border-radius:24px}.auth-tabs{width:100%}.auth-tabs .mode-switch{flex:1}.workspace{padding:16px;gap:14px}.compact-topbar{top:8px;padding:16px;flex-direction:column;align-items:stretch}.compact-actions{justify-content:stretch}.compact-actions button,.question-nav button,.mobile-sheet-close{width:100%}.toolbar{gap:12px}.search-field,.stat-pill,.choice-card,.reveal-panel,.reveal-hint,.question-rail,.review-card{border-radius:18px}.review-card{padding:18px}.celebration-burst{inset:14px 14px auto 14px;min-height:118px}.celebration-copy{left:16px;top:14px}.mode-switcher{width:100%;justify-content:space-between}.mode-switch{flex:1}.review-header h2{font-size:clamp(1.45rem,7vw,2rem);max-width:none}.choice-card{grid-template-columns:40px minmax(0,1fr);padding:16px}.choice-key{width:40px;height:40px}.mobile-sheet,.source-viewer{padding:16px;border-radius:22px}.cleanup-queue,.cleanup-editor{border-radius:22px;padding:16px}.cleanup-page-grid{grid-template-columns:1fr}.mobile-sheet-backdrop,.source-viewer-backdrop{padding:12px}}
