.practice-page{max-width:1120px;margin:auto;line-height:1.65;padding:8px 0 40px}.practice-page h1{font-size:1.8rem;margin-bottom:12px}.practice-page h2{font-size:1.3rem}.practice-page label{display:block;margin:10px 0}.practice-page input:not([type=checkbox]):not([type=radio]),.practice-page select,.practice-page textarea{display:block;width:100%;padding:10px 12px;border:1px solid var(--border,#CFCABD);border-radius:8px;background:var(--surface,#fff);color:inherit;font:inherit;box-sizing:border-box}.practice-page select[multiple]{min-height:150px}.practice-page fieldset{border:1px solid var(--border,#CFCABD);border-radius:10px;padding:14px}.practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}.practice-grid .wide{grid-column:1/-1}.practice-card{border:1px solid var(--border,#E2DFD6);border-radius:14px;padding:22px;margin:18px 0;background:var(--surface,#fff)}.practice-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}.practice-stats article{border:1px solid var(--border,#E2DFD6);padding:16px;border-radius:12px}.practice-stats strong{display:block;font-size:2rem;color:#1e5a7a}.practice-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.practice-page .check-label{display:inline-flex;align-items:center;gap:8px;margin:8px 18px 8px 0}.practice-page input[type=checkbox],.practice-page input[type=radio]{width:18px;height:18px;flex-shrink:0}.practice-error{padding:14px;background:#fff1f2;color:#9f1239;border:1px solid #fda4af;border-radius:8px;margin:12px 0}.level-inputs{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.level-inputs label{width:90px}.rich-content{overflow-wrap:anywhere}.rich-content p{margin:8px 0}.rich-content img,.question-image{max-width:100%;max-height:480px;height:auto;object-fit:contain}.rich-content table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.rich-content td,.rich-content th{border:1px solid #CFCABD;padding:10px}.rich-content .katex-display{overflow-x:auto;overflow-y:hidden}.practice-page .answer-option{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--border,#E2DFD6);border-radius:8px;cursor:pointer}.statement{padding:14px 0;border-bottom:1px solid var(--border,#E2DFD6)}.question-navigation{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.question-navigation button{min-width:42px;padding:10px;border:1px solid #CFCABD;border-radius:8px;cursor:pointer}.question-navigation .active{background:#1e5a7a;color:#fff}.feedback{border-left:4px solid #1E5A7A;padding:10px 18px;margin:18px 0;background:#eff6ff;color:#153f57}.practice-page details{margin:14px 0}.practice-page summary{cursor:pointer;font-weight:600}.practice-page progress{display:block;width:100%;height:16px;margin:10px 0}.practice-page figure{margin:18px 0}.practice-page figure svg{max-width:600px;width:100%;max-height:250px}.table-scroll{overflow:auto}.practice-page table{width:100%;border-collapse:collapse}.practice-page th,.practice-page td{padding:12px;text-align:left;border-bottom:1px solid var(--border,#CFCABD)}.practice-page :focus-visible{outline:3px solid #1E5A7A;outline-offset:3px}@media(max-width:680px){.practice-grid{grid-template-columns:1fr}.practice-stats{grid-template-columns:repeat(2,1fr)}.practice-card{padding:14px}.practice-page h1{font-size:1.5rem}.practice-actions .btn{flex:1}.practice-page{padding:4px}.level-inputs{gap:6px}}.learning-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0 20px}.learning-header h1{font-size:30px;letter-spacing:-.7px;margin:8px 0;color:#1c1b17}.learning-header p{color:#5e5b52;margin:0;max-width:620px}.eyebrow{display:block;font-size:11px;font-weight:750;letter-spacing:1.7px;color:#1e5a7a}.back-link{display:inline-block;margin-bottom:20px;color:#5e5b52;font-size:13px}.mode-badge,.soft-badge{display:inline-block;padding:7px 12px;border-radius:8px;background:#eaf5f2;color:#176b60;font-size:12px;font-weight:600}.mode-badge{max-width:225px;flex-shrink:0;border:1px solid #bfe4d8}.player-page,.students-page,.student-home{--learning-accent:#1E5A7A;--learning-ink:#1C1B17;--learning-line:#E2DFD6}.player-page .btn.primary,.students-page .btn.primary,.student-home .btn.primary{background:var(--learning-accent);border-color:var(--learning-accent);color:#fff}.player-page .btn,.students-page .btn,.student-home .btn{min-height:42px;border-radius:10px}.practice-progress{padding:18px 22px;border:1px solid #E2DFD6;border-radius:16px;background:#fff;margin:0 0 24px}.practice-progress strong{color:#1e5a7a;font-size:22px}.practice-progress span{float:right;color:#62737f;font-size:13px;padding-top:8px}.practice-progress progress{accent-color:#1E5A7A;height:9px;border-radius:8px;overflow:hidden}.player-workspace{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:24px;align-items:start}.question-stage{grid-column:1;grid-row:1;min-width:0}.journey-panel{grid-column:2;grid-row:1;background:#f3f7f9;border:1px solid #E2DFD6;border-radius:18px;padding:20px;position:sticky;top:20px}.journey-panel h2{font-size:16px;margin:0}.journey-panel p,.journey-panel>a{font-size:12px;line-height:1.65;color:#42636a}.journey-panel .question-navigation{gap:8px;margin:16px 0;display:grid;grid-template-columns:repeat(4,1fr)}.journey-panel .question-navigation button{min-width:0;min-height:42px;padding:8px 0;background:#fff;color:#35535f;border:1px solid #c3d7db;font-weight:600}.journey-panel .question-navigation .answered{background:#dff2e9;color:#126449;border-color:#a7d5bc}.journey-panel .question-navigation .marked{background:#fff2cd;color:#775407;border-color:#e8cd80}.journey-panel .question-navigation .active{background:#1e5a7a;color:#fff;border-color:#1e5a7a;box-shadow:0 0 0 3px #cae7e3}.journey-legend{display:flex;flex-direction:column;gap:6px;border-top:1px solid #E2DFD6;padding-top:14px;font-size:12px;color:#425e67}.player-page .question-card{margin:0;padding:30px;border:1px solid #E2DFD6;border-radius:20px;box-shadow:0 6px 28px #19374608}.question-kicker{font-weight:700;font-size:12px;color:#1e5a7a;letter-spacing:.5px;margin-bottom:20px}.question-stem{font-size:19px;line-height:1.85;font-weight:500;color:#183e4b;margin-bottom:24px}.player-page fieldset{border:0;padding:0;margin:0}.player-page legend{font-size:13px;color:#56717a;margin-bottom:8px}.player-page .answer-option{position:relative;padding:16px;gap:13px;border:1px solid #d3e0e4;border-radius:12px;margin:10px 0;background:#fff;transition:border-color .15s,background .15s;min-height:64px}.player-page .answer-option:hover{background:#f5faf9;border-color:#1e5a7a}.player-page .answer-option.selected{border:2px solid #1E5A7A;background:#ebf8f3;padding:15px}.player-page .answer-option>strong{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;background:#eef3f5;border-radius:8px;color:#3e5b67}.player-page .answer-option.selected>strong{background:#1e5a7a;color:#fff}.player-page .answer-option .rich-content{flex:1;min-width:0;font-size:16px}.player-page .answer-option p{margin:1px 0}.player-page input[type=radio],.player-page input[type=checkbox]{accent-color:#1E5A7A;margin-top:6px}.save-status{font-size:12px;color:#47676c;margin:10px 0;min-height:20px}.player-footer{position:sticky;bottom:8px;padding:12px;background:#ffffffef;border:1px solid #E2DFD6;border-radius:14px;box-shadow:0 4px 18px #173d4710;justify-content:space-between}.player-page .feedback{border-radius:12px;margin-top:20px;background:#f3f7fc;color:#294867}.player-page .feedback.correct{background:#eaf8ef;border-color:#198359;color:#21523e}.player-page .feedback.review{background:#fff7e5;border-color:#b88318;color:#695224}.result-summary{background:linear-gradient(115deg,#e5f4ed,#f4faf7);border-color:#bbdccc}.result-summary h2{font-size:32px;color:#1e5a7a}.student-home .practice-stats article{background:#fff;border-color:#e2dfd6}.student-home .practice-stats strong{color:#1e5a7a}.student-toolbar{display:grid;grid-template-columns:2fr 1.2fr 1fr;gap:18px;padding:14px 20px;background:#fff;border:1px solid #E2DFD6;border-radius:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0}.section-heading h2{margin:0}.student-table{border:1px solid #E2DFD6;border-radius:14px;background:#fff}.student-table small{display:block;margin-top:4px;color:#627680}.student-table th{background:#f1f7f6;color:#47676c}.student-table td{vertical-align:middle}.student-table .soft-badge{margin:3px}.student-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:230px}.student-actions .btn{font-size:12px;padding:6px 10px}.status-pill{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;white-space:nowrap}.status-pill.enabled{background:#e6f5ed;color:#206541}.status-pill.disabled{background:#fbece9;color:#9a3732}.credential-card,.success-note{padding:16px 20px;border:1px solid #b8d9c6;border-radius:14px;background:#edf8f1;color:#23543d}.credential-card code{padding:3px 8px;border-radius:6px;background:#fff;font-size:17px}.student-editor:focus{outline:2px solid #1E5A7A;outline-offset:4px}.membership-timeline{padding-left:24px}.membership-timeline li{padding:8px 0 16px 8px;border-left:2px solid #cce4dc}.membership-timeline p{margin:5px 0;color:#627680}.learning-empty{text-align:center;background:#f3f7f9;padding:40px;border-radius:16px;color:#42636a}@media(max-width:1050px){.player-workspace{grid-template-columns:minmax(0,1fr) 205px;gap:16px}.journey-panel{padding:14px}.learning-header{align-items:flex-start;flex-direction:column;gap:12px}.mode-badge{max-width:none}}@media(max-width:680px){.learning-header{padding:12px 0 20px}.learning-header h1{font-size:25px}.learning-header p{font-size:14px}.eyebrow{font-size:10px;letter-spacing:1px}.player-workspace{display:flex;flex-direction:column;gap:16px}.journey-panel{position:static;width:100%;box-sizing:border-box}.journey-panel .question-navigation{display:flex;flex-wrap:wrap}.journey-panel .question-navigation button{width:42px}.journey-legend{flex-direction:row;flex-wrap:wrap;gap:10px}.journey-panel p{display:none}.question-stage{width:100%}.player-page .question-card{padding:20px 16px}.question-stem{font-size:17px}.practice-progress{padding:14px 16px}.practice-progress span{float:none;display:block;padding:0}.player-footer{bottom:4px;gap:8px;padding:10px}.player-footer .btn{font-size:12px}.player-footer .btn.primary{flex-basis:100%}.student-toolbar{grid-template-columns:1fr;gap:0}.section-heading{align-items:flex-start;flex-direction:column}.mode-badge{font-size:11px}.student-home .practice-stats{gap:8px}.student-actions{min-width:190px}}@media(prefers-reduced-motion:reduce){.player-page *{transition:none!important;scroll-behavior:auto!important}}.practice-page details.journey-panel{margin:0}.journey-panel>summary{font-size:15px;color:#1c1b17}.practice-progress progress::-webkit-progress-bar{background:#e2eeea;border-radius:8px}.practice-progress progress::-webkit-progress-value{background:#1e5a7a;border-radius:8px}.practice-progress progress::-moz-progress-bar{background:#1e5a7a;border-radius:8px}.content-picker{min-width:0;background:#fff}.scope-modes,.scope-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.scope-modes .btn[aria-pressed=true]{background:#1e5a7a;color:#fff;border-color:#1e5a7a}.scope-toolbar{margin:14px 0}.scope-toolbar span{font-weight:600;color:#1e5a7a;margin-right:auto}.scope-options{display:grid;gap:8px;max-height:390px;overflow-y:auto;padding:4px}.practice-page .scope-option{display:flex;gap:12px;align-items:flex-start;margin:0;padding:14px;border:1px solid #d4e3e6;border-radius:12px;cursor:pointer;min-height:52px;box-sizing:border-box}.scope-option.selected{border-color:#1e5a7a;background:#edf8f5}.scope-option input{margin-top:4px;accent-color:#1E5A7A}.scope-option span{min-width:0;overflow-wrap:anywhere}.scope-option small{display:block;color:#536b79;font-size:.85rem}.scope-empty{padding:16px;border-radius:10px;background:#f1f6f8}@media(max-width:680px){.scope-modes .btn,.scope-toolbar .btn{flex:1;white-space:normal}.scope-toolbar span{width:100%}.scope-options{max-height:420px}}.app-nav-v4{--portfolio-primary:#1E5A7A;--portfolio-ink:#1C1B17;--portfolio-muted:#5E5B52;--portfolio-border:#E2DFD6}.app-nav-v4 .sidebar{width:245px;flex-shrink:0;overflow-y:auto}.app-nav-v4 .sidebar .logo strong{display:block;font-size:19px;color:var(--portfolio-primary)}.app-nav-v4 .sidebar .logo small{display:block;color:var(--portfolio-muted)}.app-nav-v4 .main-content{min-width:0}.app-nav-group>button{display:flex;justify-content:space-between;align-items:center;gap:8px;border:0;background:transparent;padding:15px 16px;width:100%;text-align:left;font-weight:650;color:var(--portfolio-ink);cursor:pointer;min-height:48px}.app-nav-group>button[aria-expanded=true]{background:#e3eef3;color:#153f57}.app-nav-v4 .app-nav-group a{padding-left:26px;font-size:13px}.app-nav-v4 .sidebar nav a.active{background:#e3eef3;color:#1e5a7a;border-left-color:#1e5a7a}.app-nav-v4 :focus-visible{outline:3px solid #1E5A7A;outline-offset:2px}.app-nav-v4 .user-box>a{display:block;font-size:12px;padding:10px 0}.app-nav-v4 .hamburger-btn{min-width:44px;min-height:44px}.app-nav-group [hidden]{display:none}.workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.workspace-grid>.practice-card{margin:0}.workspace-page li{padding:7px 0}.workspace-page ul{padding-left:20px}.workspace-page .btn.primary,.portfolio-page .btn.primary{background:#1e5a7a;color:#fff}.portfolio-page{--learning-accent:#1E5A7A;color:#1c1b17}.portfolio-page small{display:block;color:#5e5b52}.portfolio-page .practice-card{background:#fff;border-color:#e2dfd6}.portfolio-breadcrumb{font-size:12px;color:#5e5b52;margin-bottom:10px}.portfolio-actions{display:flex;gap:12px;flex-wrap:wrap}.portfolio-actions details a{display:block;padding:9px}.portfolio-tabs{display:flex;gap:6px;overflow-x:auto;border-bottom:1px solid #E2DFD6;margin-bottom:24px;padding:4px 2px;white-space:nowrap}.portfolio-tabs a{padding:12px 16px;border-radius:9px;font-weight:600;color:#5e5b52;min-height:44px;box-sizing:border-box}.portfolio-tabs a[aria-current=page]{background:#e3eef3;color:#1e5a7a}.portfolio-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.portfolio-stats article{border:1px solid #E2DFD6;border-radius:14px;background:#fff;padding:18px;min-width:0}.portfolio-stats strong{display:block;color:#1e5a7a;font-size:25px}.portfolio-stats span{color:#5e5b52;font-size:13px}.portfolio-period{font-size:12px;color:#5e5b52}.portfolio-signal{padding:20px;border-radius:14px;background:#eef6f3}.portfolio-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portfolio-advanced{background:#fff;padding:12px 18px;border-radius:12px;border:1px solid #E2DFD6}.portfolio-history-table{overflow-x:auto;border:1px solid #E2DFD6;border-radius:12px;background:#fff}.portfolio-history-table table{font-size:13px}.portfolio-history-table td{vertical-align:top}.portfolio-history-cards{display:none}.portfolio-heatmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.portfolio-level{padding:12px;background:#f2f6f8;border:1px solid #E2DFD6;border-radius:10px;min-width:0}.portfolio-level.strong{background:#e6f5ea}.portfolio-level.provisional{background:#fff8e9}.portfolio-level summary{font-size:14px}.portfolio-level svg{width:100%}.portfolio-result{font-size:32px;color:#1e5a7a}.review-question summary{padding:4px;line-height:1.7}.review-question>.rich-content{margin:16px 0}.portfolio-loading{padding:24px;color:#5e5b52}.portfolio-loading div{height:55px;border-radius:10px;background:#eaf0f2;margin-top:16px}.student-table .student-actions{min-width:0;display:block}.student-actions details{margin:4px 0}.student-actions details .btn{display:block;width:100%;text-align:left}.student-actions summary{cursor:pointer;padding:10px}.student-table .btn,.portfolio-page .btn{min-height:44px}@media(max-width:1050px){.portfolio-heatmap,.portfolio-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}.portfolio-mobile-extra{display:none}@media(max-width:768px){.portfolio-mobile-extra{display:block;padding:12px;background:#fff;border-radius:12px}.workspace-grid{grid-template-columns:1fr}.portfolio-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portfolio-stats article{padding:13px}.portfolio-stats strong{font-size:22px}.portfolio-overview>.portfolio-stats article:nth-child(n+5){display:none}.portfolio-history-table{display:none}.portfolio-history-cards{display:block}.portfolio-tabs a{padding:12px}.portfolio-filters{grid-template-columns:1fr;gap:2px}.portfolio-tabs{margin-bottom:16px}.portfolio-breadcrumb{line-height:1.6}.student-table table,.student-table tbody,.student-table tr,.student-table td{display:block;width:100%;box-sizing:border-box}.student-table thead{display:none}.student-table tr{padding:12px;border-bottom:1px solid #E2DFD6}.student-table td{border:0;padding:5px}.student-table .student-actions{display:flex;align-items:flex-start;justify-content:space-between}.student-actions details{min-width:150px}.portfolio-heatmap{grid-template-columns:1fr}.portfolio-actions{width:100%}}@media print{.app-nav-v4 .sidebar,.hamburger-btn,.sidebar-backdrop,.portfolio-tabs,.portfolio-actions,.portfolio-breadcrumb,.portfolio-page .btn,.portfolio-page a{display:none!important}.app-nav-v4,.app-nav-v4 .main-content{display:block;height:auto;overflow:visible;padding:0}.portfolio-page{max-width:none;color:#000}.portfolio-stats article:nth-child(n+5){display:block}.portfolio-stats,.workspace-grid{grid-template-columns:repeat(2,1fr)}.portfolio-page article,.portfolio-page section{break-inside:avoid;background:#fff!important;box-shadow:none}.portfolio-page{font-size:11pt}.portfolio-page h1{font-size:22pt}.portfolio-page .learning-header{padding:0}.portfolio-period{display:block}.portfolio-overview .practice-card{padding:12px}}.submit-dialog{border:0;border-radius:20px;padding:28px;max-width:min(520px,90vw);box-shadow:0 20px 80px #142b4540}.submit-dialog::backdrop{background:#142b4580}.class-filters{margin:20px 0}.class-filters>summary{cursor:pointer;font-weight:600;padding:12px 0}.student-toolbar{flex-wrap:wrap}.student-toolbar>label{min-width:140px;flex:1}@media(min-width:769px){.app-nav-v4 .sidebar{position:sticky;top:0;align-self:flex-start;height:100dvh;box-sizing:border-box}.app-nav-v4 .sidebar nav{flex:1;overflow-y:auto}.app-nav-v4 .sidebar .user-box{flex-shrink:0}}@media(max-width:768px){.app-nav-v4 .sidebar .logo{padding-top:48px}}@page{size:A4;margin:12mm}@media print{html,body,.app-nav-v4,.main-content{background:#fff!important}.portfolio-mobile-extra{display:none!important}.portfolio-overview>.portfolio-stats article:nth-child(n+5){display:block}}.route-loading{padding:32px;color:#4a473f}.practice-page a{color:#1e5a7a}.practice-page .btn.primary{background:#1e5a7a;color:#fff}.practice-page :is(button,.btn,select,summary){min-height:44px}.practice-page summary{cursor:pointer;align-content:center}.practice-page :is(input,select,textarea){font-size:16px}.practice-page :focus-visible,.portfolio-tab-select select:focus-visible{outline:3px solid #1E5A7A;outline-offset:3px}.portfolio-overview>.portfolio-stats,.decision-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.decision-stats a{display:block;font-size:14px;line-height:1.6}.resume-priority{border-left:5px solid #1E5A7A!important;background:#e3eef3!important}.portfolio-extra{margin:12px 0;padding:12px;border:1px solid #E2DFD6;border-radius:12px;background:#fff}.portfolio-tab-select{display:none}.portfolio-tabs{scroll-snap-type:x mandatory}.portfolio-tabs a{scroll-snap-align:start}.question-card,.review-question{max-width:900px;min-width:0}.question-card .rich-content,.review-question>.rich-content{font-size:18px;line-height:1.65;overflow-wrap:anywhere}.rich-content table{display:block;max-width:100%;overflow-x:auto}.rich-content img,.question-image{max-width:100%;height:auto}.rich-content .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:6px 0}.review-metadata{margin-top:20px;border-top:1px solid #E2DFD6;color:#5e5b52;font-size:13px}.portfolio-activity li{padding-bottom:10px}@media(max-width:768px){.portfolio-overview>.portfolio-stats,.decision-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-focus .portfolio-signal:nth-child(n+3),.portfolio-activity li:nth-child(n+4){display:none}.teacher-class-table table,.teacher-class-table tbody,.teacher-class-table tr,.teacher-class-table td{display:block;box-sizing:border-box;width:100%}.teacher-class-table thead{display:none}.teacher-class-table tr{padding:14px;border-bottom:1px solid #E2DFD6}.teacher-class-table td{border:0;padding:5px}.teacher-class-table td:nth-child(2):before{content:"Lượt hoàn thành: "}.teacher-class-table td:nth-child(3):before{content:"Gần nhất: "}.teacher-class-table td:nth-child(4):before{content:"Thành thạo: "}.teacher-class-table td:nth-child(5):before{content:"Thay đổi: "}.teacher-class-table td:nth-child(6):before{content:"Độ tin cậy: "}.student-home .learning-header{padding-bottom:8px}.student-home .practice-card{padding:18px}.question-card .rich-content{font-size:18px}.question-card{padding:18px}}@media(max-width:479px){.portfolio-tab-select{display:block;margin-bottom:18px}.portfolio-tabs{display:none}}@media print{.portfolio-tab-select,.portfolio-extra{display:none!important}.portfolio-focus .portfolio-signal,.portfolio-activity li{display:block!important}.portfolio-page details>summary{font-weight:700}.portfolio-page .practice-card,.portfolio-page .portfolio-signal{border:1px solid #aab8bc!important;box-shadow:none!important}}.app-nav-v4 .hamburger-btn{background:#1e5a7a;color:#fff}.practice-page .check-label{min-height:44px;box-sizing:border-box}.practice-page a:not(.btn){min-height:44px;display:inline-flex;align-items:center}.app-nav-v4 .user-box>a{min-height:44px;box-sizing:border-box;color:#1e5a7a}.queue-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.workspace-header{border-bottom:1px solid rgba(128,128,128,.3);margin-bottom:.75rem}.workspace-header h1{margin-bottom:.35rem}.workspace-tabs{display:flex;flex-wrap:wrap;gap:.25rem}.workspace-tab{padding:.4rem .9rem;border-radius:.4rem .4rem 0 0;text-decoration:none;color:inherit;border:1px solid transparent;border-bottom:0}.workspace-tab:hover{background:#1e5a7a14}.workspace-tab.active{background:#1e5a7a24;border-color:#8080804d;font-weight:600}.workspace-subhead{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.filter-bar{margin-bottom:.75rem}.filter-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.filter-row label{margin:0}.filter-row .filter-search{flex:1 1 16rem;min-width:12rem}.filter-row .filter-search input{width:100%}.filter-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.filter-chip{border:1px solid rgba(128,128,128,.45);border-radius:1rem;padding:.1rem .6rem;font-size:.82rem;background:#1e5a7a14;cursor:pointer}.filter-advanced{margin-top:.6rem}.status-pill{display:inline-block;padding:0 .5rem;border-radius:.75rem;font-size:.78rem;white-space:nowrap;border:1px solid currentColor}.tone-ok{color:#256d43}.tone-info{color:#1e5a7a}.tone-warn{color:#8a4b00}.tone-danger{color:#a5281b;font-weight:600}.tone-muted{opacity:.7}.import-steps{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;padding:0;margin:0 0 .75rem;font-size:.9rem}.import-steps li{opacity:.55}.import-steps li.active{opacity:1;font-weight:600}.import-steps li.done{opacity:.8}.import-summary{font-size:1rem}.recent-jobs{list-style:none;padding:0;margin:0}.recent-jobs li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;padding:.3rem 0;border-bottom:1px solid rgba(128,128,128,.2)}.select-actions{align-items:center;gap:.5rem;flex-wrap:wrap}.review-counter{margin:0 0 .25rem;font-weight:600}.queue-meta{margin:.75rem 0 0;font-size:.85rem;border-top:1px solid rgba(128,128,128,.25);padding-top:.5rem}.queue-meta>div{display:flex;gap:.5rem}.queue-meta dt{flex:0 0 6rem;opacity:.7}.queue-meta dd{margin:0}.queue-code{white-space:nowrap;font-variant-numeric:tabular-nums}.lesson-group{border-top:1px solid rgba(128,128,128,.25);padding-top:.5rem;margin-top:.5rem}.queue-hint{font-size:.85rem;opacity:.75}.queue-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:1rem;align-items:start}.queue-table-wrap{min-width:0;overflow-x:auto}.queue-table{width:100%;border-collapse:collapse;font-size:.88rem}.queue-table th,.queue-table td{padding:.35rem .5rem;border-bottom:1px solid rgba(128,128,128,.28);text-align:left;vertical-align:top}.queue-table thead th{position:sticky;top:0;z-index:1;background:Canvas;white-space:nowrap}.queue-table .queue-check{width:2.2rem}.queue-table .queue-stem{max-width:26rem}.queue-row{cursor:pointer}.queue-row:hover{background:#1e5a7a0f}.queue-row.active{background:#1e5a7a24;outline:2px solid rgba(30,90,122,.55);outline-offset:-2px}.queue-pager{align-items:center;gap:.75rem;flex-wrap:wrap}.queue-preview{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;border:1px solid rgba(128,128,128,.35);border-radius:.5rem;padding:.75rem}.queue-preview-body{margin-top:.5rem}.queue-answer{white-space:pre-wrap;word-break:break-word;font-size:.82rem}.risk-badge{display:inline-block;padding:0 .4rem;margin-right:.25rem;border-radius:.75rem;font-size:.75rem;white-space:nowrap;border:1px solid currentColor}.risk-badge.risk-ok{opacity:.6}.risk-badge.risk-mid{color:#8a4b00}.risk-badge.risk-high{color:#a5281b;font-weight:600}.bulk-toolbar fieldset{margin:.5rem 0}.bulk-plan ul{margin:.25rem 0 .25rem 1rem;padding:0}.bulk-plan li{font-size:.85rem}.import-status{white-space:nowrap;font-weight:600}.import-status.status-ERROR{color:#a5281b}.import-status.status-WARNING{color:#8a4b00}.import-status.status-NEEDS_REVIEW{color:#6d28d9}.import-status.status-VALID{opacity:.7}@media(max-width:1024px){.queue-layout{grid-template-columns:1fr}.queue-preview{position:static;max-height:none}}@media(max-width:720px){.queue-table,.queue-table tbody,.queue-table tr,.queue-table td{display:block;width:100%}.queue-table thead{display:none}.queue-table tr{border:1px solid rgba(128,128,128,.35);border-radius:.5rem;margin-bottom:.5rem;padding:.35rem}.queue-table td{border-bottom:0;display:flex;gap:.5rem;padding:.15rem .25rem}.queue-table td:before{content:attr(data-label) ":";flex:0 0 8rem;opacity:.7;font-size:.8rem}.queue-table .queue-stem{max-width:none}}.bulk-bar{position:sticky;bottom:0;z-index:3;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin:.5rem 0;border:1px solid rgba(128,128,128,.4);border-radius:.5rem;background:Canvas;box-shadow:0 -2px 8px #0000001f}.bulk-bar-actions{display:flex;flex-wrap:wrap;gap:.35rem}.bulk-sheet fieldset{margin:.5rem 0}.reject-popover{border:1px solid rgba(128,128,128,.4);border-radius:.5rem;padding:.6rem;margin-top:.5rem;background:Canvas}.reject-popover label.scope-v2-tick{display:block}@media(max-width:720px){.bulk-bar{flex-direction:column;align-items:stretch}}.dropzone{border:2px dashed rgba(128,128,128,.55);border-radius:.6rem;padding:1.4rem 1rem;margin:.75rem 0;text-align:center;cursor:pointer;transition:border-color .15s,background-color .15s}.dropzone:hover,.dropzone:focus-visible,.dropzone.over{border-color:#1e5a7a;background:#1e5a7a0f;outline:none}.dropzone.has-file{border-style:solid;border-color:#256d43}.dropzone p{margin:0}.muted{opacity:.7}.import-options{margin:.5rem 0 .75rem}.import-options>summary{cursor:pointer;font-weight:600}.context-chip{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:1rem;border:1px solid rgba(128,128,128,.4);font-size:.85rem}.btn.link{background:none;border:none;padding:0 .2rem;text-decoration:underline;cursor:pointer;color:inherit}.status-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 .75rem}.status-tab{border:1px solid currentColor;border-radius:1rem;padding:.2rem .75rem;background:transparent;cursor:pointer;font:inherit}.status-tab.active{box-shadow:inset 0 0 0 2px currentColor}.status-tab strong{margin-left:.25rem}.row-issue{display:block;font-size:.75rem;opacity:.8;margin-top:.15rem}.issue-list{list-style:none;padding:0;margin:.5rem 0;display:grid;gap:.35rem}.issue-list li{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:space-between;padding:.4rem .55rem;border-radius:.4rem;border-left:4px solid currentColor;background:#80808012}.issue-list .issue-blocking{color:#a5281b}.issue-list .issue-review{color:#8a4b00}.issue-list .issue-info{color:inherit;opacity:.8}.issue-text{color:var(--text, inherit);flex:1 1 14rem}.issue-actions{display:inline-flex;flex-wrap:wrap;gap:.3rem}.issue-actions .btn{font-size:.8rem;padding:.15rem .5rem}.inline-code-edit{display:flex;flex-wrap:wrap;gap:.4rem;align-items:flex-end;margin:.5rem 0}.inline-code-edit input{min-width:16rem;font-family:ui-monospace,Consolas,monospace}.import-bulk{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}.machine-checks{list-style:none;padding:0;margin:.4rem 0;display:flex;flex-wrap:wrap;gap:.3rem}.machine-checks li{font-size:.78rem;padding:0 .45rem;border-radius:.7rem;border:1px solid currentColor;white-space:nowrap}.machine-checks .check-ok{color:#256d43}.machine-checks .check-bad{color:#a5281b;font-weight:600}.machine-checks .check-na{opacity:.5}.machine-checks.compact li{font-size:.72rem}.exception-filters{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}kbd{font-family:ui-monospace,Consolas,monospace;font-size:.75rem;border:1px solid rgba(128,128,128,.5);border-radius:.25rem;padding:0 .25rem}@media(max-width:720px){.inline-code-edit input{min-width:0;width:100%}.status-tab{flex:1 1 45%}}.workbench{display:grid;grid-template-columns:196px minmax(0,1fr);gap:1rem;align-items:start}.workbench-main{min-width:0}.work-views{position:sticky;top:.5rem;display:flex;flex-direction:column;gap:.35rem;font-size:.88rem}.work-views ul{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}.work-views-title{margin:.6rem 0 .15rem;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.7}.work-view{display:flex;align-items:center;gap:.2rem}.work-view-btn{flex:1;display:flex;justify-content:space-between;gap:.5rem;align-items:center;min-height:2.4rem;padding:.3rem .6rem;border:1px solid transparent;border-radius:.45rem;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.work-view-btn:hover,.work-view-btn:focus-visible{border-color:#80808073;outline:none}.work-view-btn.active{background:#1e5a7a1a;border-color:#1e5a7a73;font-weight:600}.work-views-save{margin-top:.4rem}.work-views-name{display:flex;gap:.3rem;margin-top:.4rem}.work-views-name input{min-width:0;flex:1}.work-views-keys{margin-top:.8rem;font-size:.75rem;line-height:1.9;opacity:.8}.row-badge{display:inline-block;margin-left:.4rem;padding:0 .4rem;border-radius:.6rem;font-size:.7rem;font-weight:600;color:#6b3fa0;border:1px solid currentColor}.keep-overrides{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem}.quick-inspector{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(128,128,128,.3);display:grid;gap:.6rem}.quick-field{display:grid;gap:.3rem}.quick-label{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.75}.scope-toggle,.seg-group{display:flex}.seg{flex:1;min-height:2.5rem;padding:0 .6rem;font:inherit;font-weight:600;cursor:pointer;border:1px solid rgba(128,128,128,.55);background:transparent;color:inherit}.seg+.seg{margin-left:-1px}.seg:first-child{border-radius:.45rem 0 0 .45rem}.seg:last-child{border-radius:0 .45rem .45rem 0}.seg.on{background:var(--primary-hover, #153F57);border-color:var(--primary-hover, #153F57);color:#fff}.seg:disabled{opacity:.55;cursor:wait}.small{font-size:.8rem}.override-note{margin:0;font-size:.82rem;font-weight:600;color:#6b3fa0}.mono{font-family:ui-monospace,Consolas,monospace}.undo-toast{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:.75rem;max-width:min(92vw,44rem);padding:.55rem .6rem .55rem 1rem;border-radius:.6rem;background:#1d4a30;color:#fff;box-shadow:0 10px 30px #00000040;font-size:.92rem}.undo-toast.error{background:#7a2419}.undo-toast .btn{background:#fff;color:#111}.undo-toast .btn.link{background:none;color:#fff;font-size:1.2rem}.undo-toast kbd{color:#111}.palette-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;justify-content:center;align-items:flex-start;padding:10vh 1rem 1rem}.palette-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0f0f0f73;cursor:default}.palette{position:relative;width:min(640px,100%);max-height:75vh;display:flex;flex-direction:column;background:var(--bg-card, #fff);color:var(--text, #111);border-radius:.8rem;overflow:hidden;box-shadow:0 24px 60px #00000059}.palette-input{font:inherit;font-size:1.05rem;border:0;border-bottom:1px solid rgba(128,128,128,.35);padding:.9rem 1rem;outline:none;background:transparent;color:inherit}.palette-list{list-style:none;margin:0;padding:.3rem 0;overflow:auto}.palette-group{padding:.6rem 1rem .25rem;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.65}.palette-item{display:flex;align-items:center;gap:.75rem;min-height:2.6rem;padding:0 1rem;cursor:pointer}.palette-item.active{background:#1e5a7a1f}.palette-label{flex:1}.palette-hint{font-size:.8rem;opacity:.7}.palette-empty{padding:1rem;opacity:.7}.palette-foot{margin:0;padding:.5rem 1rem;font-size:.75rem;opacity:.75;border-top:1px solid rgba(128,128,128,.3)}.clean-batch{display:grid;gap:.5rem}.clean-batch .big{font-size:1.6rem;font-weight:700;color:#256d43;margin:0}.reason-chips{display:flex;flex-wrap:wrap;gap:.35rem}.reason-chip{font:inherit;font-size:.82rem;min-height:2.2rem;padding:0 .7rem;border-radius:1.1rem;border:1px solid rgba(128,128,128,.55);background:transparent;color:inherit;cursor:pointer}.reason-chip.on{background:#1f2937;border-color:#1f2937;color:#fff}.reason-chip.suggested:not(.on){border-style:dashed;border-color:#8a4b00}.issue-groups{display:grid;gap:.5rem;margin:.5rem 0 .75rem}.issue-group{border:1px solid rgba(128,128,128,.35);border-radius:.6rem;padding:.6rem .75rem}.issue-group-head{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.issue-count{min-width:2.4rem;height:2.4rem;border-radius:.5rem;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.issue-group.blocking .issue-count{background:#b91c1c1f;color:#a5281b}.issue-group.review .issue-count{background:#b453091f;color:#8a4b00}.issue-group.done{opacity:.6}.issue-group-title{flex:1 1 16rem}.issue-group-title strong{display:block}.issue-group-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.issue-group-items{list-style:none;margin:.5rem 0 0;padding:0;border-top:1px solid rgba(128,128,128,.25)}.issue-group-items li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.4rem 0;border-bottom:1px solid rgba(128,128,128,.15)}.issue-group-items .mono{min-width:13rem}.issue-group-items input{min-width:15rem;font-family:ui-monospace,Consolas,monospace}@media(max-width:1280px){.workbench{grid-template-columns:1fr}.work-views{position:static}.work-views ul{display:flex;flex-wrap:wrap;gap:.3rem}.work-view-btn{border-color:#80808059}.work-views-keys{display:none}}.reason-inline{display:grid;gap:.45rem;margin-top:.6rem}.reason-inline input{min-height:2.4rem}.reason-inline .btn{justify-self:start}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/lexend-vietnamese-300-normal-BkyiKD57.woff2) format("woff2"),url(/assets/lexend-vietnamese-300-normal-Bvq1pCw4.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:Lexend;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/lexend-latin-ext-300-normal-DZKhWvmP.woff2) format("woff2"),url(/assets/lexend-latin-ext-300-normal-DJx7rAFT.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:Lexend;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/lexend-latin-300-normal-pH_8eE6B.woff2) format("woff2"),url(/assets/lexend-latin-300-normal-DghY_3bB.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-vietnamese-400-normal-DoLa7jNB.woff2) format("woff2"),url(/assets/lexend-vietnamese-400-normal-mPlHoWg5.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-ext-400-normal-D38JI5AK.woff2) format("woff2"),url(/assets/lexend-latin-ext-400-normal-D9P7pMo-.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:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-400-normal-CwRJVcUA.woff2) format("woff2"),url(/assets/lexend-latin-400-normal-CHypAkT3.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-vietnamese-500-normal-Bos7Oy9U.woff2) format("woff2"),url(/assets/lexend-vietnamese-500-normal-EFAPmUTE.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-ext-500-normal-Bo17xs96.woff2) format("woff2"),url(/assets/lexend-latin-ext-500-normal-DbCmXT_D.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:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-500-normal-Dl-X5nog.woff2) format("woff2"),url(/assets/lexend-latin-500-normal-D9x1QWTH.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:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-vietnamese-600-normal-Cr1ePs6O.woff2) format("woff2"),url(/assets/lexend-vietnamese-600-normal-BxEVPgxw.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:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-latin-ext-600-normal-hDcqLAH9.woff2) format("woff2"),url(/assets/lexend-latin-ext-600-normal-BXtyp5LP.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:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-latin-600-normal-DdvlkEkX.woff2) format("woff2"),url(/assets/lexend-latin-600-normal-DSBzZxpA.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-vietnamese-700-normal-BrGlFDtO.woff2) format("woff2"),url(/assets/lexend-vietnamese-700-normal-NEp7hM5T.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-ext-700-normal-CcWyeg4T.woff2) format("woff2"),url(/assets/lexend-latin-ext-700-normal-iR1cPiNX.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:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-700-normal-DqO8md6r.woff2) format("woff2"),url(/assets/lexend-latin-700-normal-DVyJlN8t.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAASUABAAAAAACRAAAAQ3AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3oLIAABNgIkAzoEIAWFHgeBFAwHG3AHKB4HzukrRjyF5Gb4kQ/B873d17mv8TWkoqUUGaHodJCtoqntw7m8tiPWyGkfWDU/IMpzVk4zAs9Czv3c7Os5NvKFG1Ht9vBVXySRZpJc4tTrbM3sTRFcLa3zVboKWRIoAksKSKgqUQWEwlSoqjp44V5J9/kjd0+Fi5xaFjwJArgBAIJgIAgCCAI4CdNMqGuYXYUKdADLAkAAJwl6iX0+bZqEm1AH0Hu9rvrJHwxQG1Q/gFYwWYbgTRWgwEESVzbmtjQAt3DXO7Tu/+9Q/KNKWhTCgZ8fQSWoL0CUUgTBjgL8iEAcce7YHBeA8ZvogieCnxI0BCVeACCAAhBD/oDcAdUPABSgAX4kBPBTwjCAjwYSCneiqF65LUo/qXdYFrRwTujtMrKm07plTbSqLQFAiHBN7E4DG5wkiGXhCYBNETh3K/AciHN69iFfQjFOr9EXQQAAQXRNszs8PR0OH4fDV/dwGe76CHdj1MQa11DXYGcfZ6+B1X0OfwjY+i7KpQ1w9d+1z3/HydCB1f3U8A0fRFv+0bXxPWrZu3d9Nn4UcbLs/QCXLH/j3PCKblKOiZxLOR78W9brPo7eGTLz/F27ZPmePQdCB1YP4nJU91o4gU9cy64L3c3SPu8GfDn6ZXD2cGmllVqSxtD5vCXHm5xaeHlnpffx7DcPvXog5NnjA//cPz2btsz3yf+0MI8ri33tuv7upNbYmW5STbosW8bYItV/SPzxvXC0KnpWnFdC91oojit5Lyo6WcJQ1YzwBYbi52ohJVpcxfcHBqsv0nFz8U74rzS6M7r0RVlXZ3jJC4G92O//7Lm78VOtnUx+aQxAzsqPnrRr1t9zDrezKePvZ027x+fGte4s4NXu7/jEp3G9cM1bICYgACbuETUUD5wmenGXA/IBpAKVrl0AEJ5cqr6Q89tGq+SpqkDfX2DtG+pZ9teuae0AX98c301CX179InyErnSG8WCiABB4HFbVrw/lpTdBIOk82nXbpHKoQGyBpUovAAD4XQA8ZTUCeBJHIpI0v0FRrgcnckV3ANckrwYJKXEihQfdSKPER6XeExmEeEMmSe6QBwWmkZdmSOSthhibgIkBlUYreBKd/0NeVAE9WAyEaQpH6KikDWlUVg43Jy2FOmaYlsZhDEGZXO3mWEyWHI6zuaJkMlcSQ9k4F+KidIiFyZItGDc7r1pUj6wP6zrWB0/fbeeFeHl4YOvETMNiM8Ny+7OO6Qh2wur20YVxFts5dlORdl5Kwd5utR7SRcxqX8RA5Ehacha76hg7c6yzNm/Xf6vOLNrv544lIEkWg7xWo/ItBAeIJEmt0XgBwgM8gTifoiiLJroYYooNTeziEKe4zOoR/wvIKp89hSr+6jFAqw/LaonjmZHSscMNg4iPlWpFrO1RN3zkMU+/xUP+JQ99TbvTl1Vg0gtirT6lbwYAAAA=) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.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{--primary: #1E5A7A;--primary-hover: #153F57;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--text: #1f2937;--text-muted: #6b7280;--text-light: #9ca3af;--bg: #f9fafb;--bg-card: #ffffff;--border: #e5e7eb;--border-strong: #d1d5db;--radius: 8px;--radius-lg: 12px;--shadow: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1)}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;color:var(--text);background:var(--bg);line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:#fff;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius);font-weight:500;font-size:13px;transition:all .15s;border:1px solid transparent;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover:not(:disabled){background:var(--primary-hover)}.btn.secondary{background:#fff;color:var(--text);border-color:var(--border-strong)}.btn.secondary:hover:not(:disabled){background:#f3f4f6}.btn.danger{background:var(--danger);color:#fff}.btn.danger:hover:not(:disabled){background:#dc2626}.btn.ghost{background:transparent;color:var(--text-muted)}.btn.ghost:hover:not(:disabled){background:#f3f4f6;color:var(--text)}.btn.sm{padding:4px 10px;font-size:12px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow)}.label{display:block;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:4px}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500;background:#f3f4f6;color:var(--text-muted)}.badge.success{background:#d1fae5;color:#065f46}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.info{background:#dbeafe;color:#153f57}.badge.purple{background:#ede9fe;color:#5b21b6}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:8px}.space-between{justify-content:space-between}table{width:100%;border-collapse:collapse;font-size:13px}table th,table td{padding:10px;text-align:left;border-bottom:1px solid var(--border)}table th{font-weight:600;background:#f9fafb;font-size:12px;color:var(--text-muted);text-transform:uppercase}table tr:hover{background:#fafafa}.app-layout{display:flex;min-height:100vh}.hamburger-btn{display:none;position:fixed;top:10px;left:10px;z-index:200;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);padding:8px 12px;font-size:18px;cursor:pointer;box-shadow:var(--shadow-md)}.sidebar{width:220px;background:var(--bg-card);border-right:1px solid var(--border);padding:16px 0;display:flex;flex-direction:column;flex-shrink:0;transition:transform .25s ease}.sidebar .logo{padding:0 20px 16px;border-bottom:1px solid var(--border);margin-bottom:12px}.sidebar .logo h1{margin:0;font-size:18px;color:var(--primary)}.sidebar .logo small{color:var(--text-muted);font-size:11px}.sidebar nav a{display:block;padding:9px 20px;color:var(--text);font-size:13px;border-left:3px solid transparent;transition:all .1s}.sidebar nav a:hover{background:#f3f4f6;text-decoration:none}.sidebar nav a.active{background:#e3eef3;color:var(--primary);border-left-color:var(--primary);font-weight:500}.sidebar .user-box{margin-top:auto;padding:16px 20px;border-top:1px solid var(--border)}.sidebar .user-box .name{font-weight:500;font-size:13px}.sidebar .user-box .role{font-size:11px;color:var(--text-muted)}.sidebar .user-box .subject-tag{font-size:11px;color:var(--primary);background:#e3eef3;padding:2px 8px;border-radius:4px;margin-top:4px;display:inline-block}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:99}.main-content{flex:1;padding:24px;overflow-y:auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{margin:0;font-size:22px}.login-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e5a7a,#8b5cf6)}.login-card{width:380px;background:#fff;padding:32px;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a}.login-card h1{margin:0 0 4px;text-align:center;color:var(--primary)}.login-card p{text-align:center;color:var(--text-muted);margin:0 0 24px;font-size:13px}.login-card .form-group{margin-bottom:14px}.login-card input{width:100%;padding:10px 12px}.login-card .btn{width:100%;padding:11px;font-size:14px;justify-content:center}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px}.stat-card .label{font-size:11px;text-transform:uppercase;color:var(--text-muted)}.stat-card .value{font-size:28px;font-weight:600;margin-top:4px}.wizard-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto}.wizard-tab{padding:8px 14px;border-radius:var(--radius);background:#fff;border:1px solid var(--border-strong);cursor:pointer;font-weight:500;font-size:13px;transition:all .1s;white-space:nowrap}.wizard-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.wizard-tab:hover:not(.active){background:#f3f4f6}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.config-item{display:flex;flex-direction:column}.config-item label{font-size:11px;color:var(--text-muted);margin-bottom:3px}.ratio-box{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#f9fafb;padding:12px;border-radius:var(--radius);margin-bottom:12px}.ratio-item{display:flex;flex-direction:column;align-items:center;padding:8px;background:#fff;border-radius:6px;border:1px solid var(--border)}.ratio-item .label{font-weight:600;font-size:13px;color:var(--text)}.ratio-item input{width:56px;text-align:center;padding:4px}.branch-config{background:#f9fafb;padding:12px;border-radius:var(--radius);border-left:4px solid var(--primary);margin-bottom:8px}.branch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.branch-name{font-weight:600}.branch-qtypes{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.branch-qtype{display:flex;flex-direction:column;align-items:center;padding:6px;background:#fff;border-radius:6px;border:1px solid var(--border)}.branch-qtype .qlabel{font-size:10px;font-weight:600}.branch-qtype input{width:50px;text-align:center;padding:3px;font-size:13px}.score-check{text-align:center;padding:8px;border-radius:6px;font-weight:500;font-size:13px;margin-top:8px}.score-check.ok{background:#d1fae5;color:#065f46}.score-check.bad{background:#fee2e2;color:#991b1b}.matrix-table-wrap{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin-top:12px;overflow-x:auto}.matrix-table{width:100%;border-collapse:collapse;font-size:12px}.matrix-table th,.matrix-table td{padding:8px 6px;border-bottom:1px solid var(--border);text-align:center;vertical-align:top}.matrix-table th.branch-col{text-align:left;min-width:140px}.matrix-table td.branch-col{text-align:left;font-weight:600}.matrix-table td.branch-col small{color:var(--text-muted);font-weight:400;display:block;margin-top:2px}.matrix-cell-item{display:inline-flex;align-items:center;gap:4px;padding:2px 4px;margin:2px;background:#f3f4f6;border-radius:4px;font-size:11px}.matrix-cell-item.locked{background:#ede9fe;border:1px dashed var(--primary)}.matrix-cell-item .lock-btn{background:none;border:none;cursor:pointer;padding:0;font-size:11px}.matrix-cell-item input{width:38px;text-align:center;padding:1px 2px;font-size:11px;border-radius:3px}.matrix-totals{font-weight:600;background:#f9fafb}.matrix-totals .pct{font-size:10px;color:var(--text-muted);font-weight:400}.topic-picker{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:12px;max-height:400px;overflow-y:auto}.topic-chapter{margin-bottom:8px}.topic-chapter-head{display:flex;align-items:center;gap:6px;cursor:pointer;padding:4px;font-weight:600;font-size:13px;border-radius:4px}.topic-chapter-head:hover{background:#f3f4f6}.topic-list{display:flex;flex-wrap:wrap;gap:4px;padding-left:22px;margin-top:4px}.topic-item{display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:12px;cursor:pointer;border:1px solid transparent}.topic-item.selected{background:#ede9fe;border-color:var(--primary)}.topic-item:hover{background:#f3f4f6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background:#fff;border-radius:var(--radius-lg);padding:24px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto}.modal-lg{max-width:900px}.modal-xl{max-width:1200px}.modal h3{margin:0 0 16px}.import-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.import-stat{text-align:center;padding:10px 8px;background:#f9fafb;border-radius:var(--radius);border:1px solid var(--border)}.import-stat-value{font-size:24px;font-weight:700}.import-stat-label{font-size:11px;color:var(--text-muted);margin-top:2px}.resolve-section{display:flex;flex-direction:column;gap:10px}.resolve-group{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid var(--warning);border-radius:var(--radius);padding:12px}.resolve-group-header{margin-bottom:8px}.resolve-options{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.resolve-opt select{font-size:12px;padding:5px 8px;max-width:250px}.empty-state{text-align:center;padding:40px;color:var(--text-muted)}.loading{text-align:center;padding:30px;color:var(--text-muted)}.error-box{background:#fee2e2;color:#991b1b;padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.warn-box{background:#fef3c7;color:#92400e;padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.info-box{background:#dbeafe;color:#153f57;padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.ok-box{background:#d1fae5;color:#065f46;padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.level-chip{display:inline-block;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:600}.level-chip.M1{background:#dbeafe;color:#153f57}.level-chip.M2{background:#d1fae5;color:#065f46}.level-chip.M3{background:#fef3c7;color:#92400e}.level-chip.M4{background:#fee2e2;color:#991b1b}.q-type-chip{font-size:10px;padding:1px 5px;border-radius:3px;background:#f3f4f6;color:var(--text-muted)}.bulk-bar{position:sticky;bottom:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;margin-bottom:12px;background:linear-gradient(135deg,#e3eef3,#e3eef3);border:1px solid var(--primary);border-radius:var(--radius-lg);box-shadow:0 -2px 12px #6366f126;animation:slideUp .2s ease}.bulk-bar span{font-size:13px;color:var(--text);white-space:nowrap}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}table tr.row-selected,table tr.row-selected:hover{background:#e3eef3!important}table input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}@media(max-width:768px){.hamburger-btn{display:block}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:100;transform:translate(-100%);box-shadow:4px 0 20px #00000026}.sidebar.open{transform:translate(0)}.sidebar-backdrop.open{display:block}.main-content{padding:52px 12px 16px;width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:10px}.page-header h2{font-size:18px}.page-header .row{width:100%}.btn{padding:10px 14px;font-size:13px}.btn.sm{padding:8px 12px;font-size:12px}.card .row{flex-direction:column;gap:8px}.card .row>*{width:100%!important;min-width:unset!important}.card .row input,.card .row select{width:100%}table{font-size:12px}table th,table td{padding:8px 6px}.card{padding:12px}.modal-overlay{padding:8px;align-items:flex-end}.modal,.modal-lg,.modal-xl{max-width:100%;max-height:92vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.import-summary{grid-template-columns:repeat(2,1fr)}.import-stat-value{font-size:20px}.resolve-options{flex-direction:column;align-items:stretch}.resolve-opt select{max-width:100%;width:100%}.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card .value{font-size:22px}.wizard-tabs{gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch}.wizard-tab{flex-shrink:0}.config-grid,.ratio-box{grid-template-columns:repeat(2,1fr)}.branch-qtypes{grid-template-columns:repeat(3,1fr)}.login-card{width:100%;margin:16px;padding:24px}.matrix-table-wrap{padding:8px}.modal .row{flex-direction:column;gap:8px}.modal .row>.col,.modal .row>div{width:100%!important;flex:unset!important}}@media(max-width:400px){html{font-size:13px}.page-header h2{font-size:16px}.import-summary{grid-template-columns:repeat(2,1fr)}.stat-grid{grid-template-columns:1fr}}.scope-v2{width:100%;min-width:0}.scope-v2-tabs{display:flex;gap:8px;flex-wrap:wrap}.scope-v2 button,.scope-v2 summary{min-height:44px}.scope-v2-tabs [aria-pressed=true]{background:#e3eef3;color:#153f57;border-color:#8fb3c7}.scope-v2-tick{display:flex!important;align-items:center;gap:12px;min-height:48px;padding:10px;cursor:pointer;margin:0!important}.scope-v2-tick input{width:20px!important;min-width:20px;height:20px;accent-color:#1E5A7A}.scope-v2-tick span{min-width:0}.scope-v2 small{display:block;color:#5e5b52;margin-top:4px}.scope-v2-chapter{margin:16px 0}.scope-v2-lesson{border:1px solid #E2DFD6;border-radius:14px;margin:8px 0;background:#fff;overflow:hidden}.scope-v2-lesson.selected{border-color:#8fb3c7;background:#f3f7f9}.scope-v2-lesson>details{padding:0 14px 8px 42px}.scope-v2 summary{cursor:pointer;padding:10px 0}.scope-v2-standards details{border-left:3px solid #E2DFD6;padding-left:8px;margin:6px 0}.scope-v2-standards summary>.scope-v2-tick{display:inline-flex!important}.scope-v2-summary{background:#e3eef3;border-radius:12px;padding:16px;margin-top:16px}.scope-v2-summary li{margin-bottom:8px}.scope-v2-summary .btn{margin-left:10px}.scope-v2-summary ul{padding-left:20px}@media(max-width:600px){.scope-v2-lesson>details{padding-left:12px}.scope-v2-tick{align-items:flex-start}.scope-v2-summary{padding:12px}}.review-diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.review-diff-grid>section{min-width:0;border:1px solid #E2DFD6;padding:16px;border-radius:12px}.review-version img{max-width:100%}.review-version h4{padding-top:14px;border-top:1px solid #dde3ef}.curriculum-impact dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.curriculum-impact dd{font-size:24px;margin:0}@media(max-width:760px){.review-diff-grid{grid-template-columns:1fr}}@media(max-width:768px){.app-nav-v4 .sidebar:not(.open){visibility:hidden;pointer-events:none}.app-nav-v4 .sidebar.open{visibility:visible}}.scope-v2 .scope-v2-tick{flex-direction:row;justify-content:flex-start;text-align:left}.scope-v2 .scope-v2-tick input{flex:0 0 20px}:root{--ink: #1C1B17;--muted: #5E5B52;--faint: #8A867B;--ground: #F4F3EE;--surface: #FFFFFF;--surface-2: #FAF9F6;--surface-3: #EDEBE4;--line: #E2DFD6;--line-soft: #EEEBE3;--line-strong: #CFCABD;--accent: #1E5A7A;--accent-ink: #153F57;--accent-soft: #E3EEF3;--accent-ring: rgba(30, 90, 122, .24);--ok: #256D43;--ok-soft: #E4F1E8;--warn: #8A4B00;--warn-soft: #FBEEDB;--danger: #A5281B;--danger-soft: #FBE3DF;--special: #6B3FA0;--font-sans: "Lexend", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Consolas, monospace;--primary: var(--accent);--primary-hover: var(--accent-ink);--success: var(--ok);--warning: #B7791F;--text: var(--ink);--text-muted: var(--muted);--text-light: var(--faint);--bg: var(--ground);--bg-card: var(--surface);--border: var(--line);--border-strong: var(--line-strong);--radius: 8px;--radius-lg: 12px;--shadow: 0 1px 2px rgba(28, 27, 23, .05);--shadow-md: 0 8px 24px -12px rgba(28, 27, 23, .25)}html,body{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--ink);background:var(--ground);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-sans);color:var(--ink);font-weight:600;letter-spacing:-.012em}h1{font-weight:700}code,kbd,pre,samp,.mono{font-family:var(--font-mono)}a{color:var(--accent)}a:hover{color:var(--accent-ink)}::selection{background:var(--accent-soft);color:var(--ink)}kbd{font-size:.72rem;font-weight:500;line-height:1.5;padding:0 .35rem;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:4px;background:var(--surface);color:#3d3a33;white-space:nowrap}input,select,textarea{font-family:inherit;color:var(--ink);background:var(--surface);border-color:var(--line-strong);border-radius:8px}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}:focus-visible{outline-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:38px;padding:0 14px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-family:inherit;font-size:13px;font-weight:500;line-height:1.2;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s}.btn:hover:not(:disabled){background:var(--surface-2);border-color:#bdb7a8;text-decoration:none;color:var(--ink)}.btn:disabled{opacity:.5}.btn.primary,.practice-page .btn.primary,.player-page .btn.primary,.students-page .btn.primary,.student-home .btn.primary,.workspace-page .btn.primary,.portfolio-page .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled),.practice-page .btn.primary:hover:not(:disabled){background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.btn.link{background:transparent;border-color:transparent;color:var(--accent);min-height:0;padding:0 .2rem}.btn.link:hover:not(:disabled){background:transparent;color:var(--accent-ink);text-decoration:underline}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover:not(:disabled){background:#8a2016;border-color:#8a2016}.btn.sm{min-height:32px;padding:0 10px;font-size:12px}.btn.icon{width:38px;padding:0}.btn kbd{font-size:.68rem}.btn.primary kbd{background:transparent;color:#fff;border-color:#ffffff73}.card,.practice-card,.stat-card,.staff-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:none}.practice-card{padding:18px 20px}.stat-card .value,.practice-stats strong{font-family:var(--font-sans);color:var(--accent)}table th{background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}table th,table td{border-bottom-color:var(--line-soft)}table tr:hover{background:#fbfaf7}.badge{background:var(--surface-3);color:var(--muted);font-weight:600}.badge.success{background:var(--ok-soft);color:var(--ok)}.badge.warning{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.info{background:var(--accent-soft);color:var(--accent-ink)}.badge.purple{background:#efe7f7;color:var(--special)}.ok-box{background:var(--ok-soft);color:#1d5535;border:1px solid #C4DFCD;border-radius:10px;padding:10px 14px}.warn-box{background:var(--warn-soft);color:#6e3b00;border:1px solid #F0D5AC;border-radius:10px;padding:10px 14px}.practice-error,.staff-error{background:var(--danger-soft);color:#7a2419;border:1px solid #F1BDB3;border-radius:10px}.staff-success{background:var(--ok-soft);color:#1d5535;border-radius:10px}.tone-ok{color:var(--ok)}.tone-info{color:var(--accent)}.tone-warn{color:var(--warn)}.tone-danger{color:var(--danger)}.feedback{border-left-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.question-navigation .active{background:var(--accent);border-color:var(--accent);color:#fff}.sidebar,.app-nav-v4 .sidebar{background:var(--surface);border-right:1px solid var(--line)}.app-nav-v4{--portfolio-primary: var(--accent);--portfolio-ink: var(--ink);--portfolio-muted: var(--muted);--portfolio-border: var(--line)}.player-page,.students-page,.student-home{--learning-accent: var(--accent);--learning-ink: var(--ink);--learning-line: var(--line)}.sidebar .logo h1,.app-nav-v4 .sidebar .logo strong{color:var(--ink);font-weight:700;letter-spacing:-.015em}.sidebar .logo small,.app-nav-v4 .sidebar .logo small{color:var(--muted)}.app-nav-group>button{font-family:inherit;font-weight:600;color:var(--ink)}.app-nav-group>button:hover{background:var(--surface-2)}.app-nav-group>button[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.sidebar nav a{color:var(--ink)}.sidebar nav a:hover{background:var(--surface-2);color:var(--ink)}.sidebar nav a.active,.app-nav-v4 .sidebar nav a.active{background:var(--accent-soft);color:var(--accent-ink);border-left-color:var(--accent);font-weight:600}.app-nav-v4 .hamburger-btn,.hamburger-btn{background:var(--ink);color:#fff}.app-nav-v4 .user-box>a{color:var(--accent)}.main-content{background:var(--ground)}.login-bg{background:radial-gradient(1200px 600px at 20% 0%,#2A6F93 0%,var(--accent) 35%,var(--accent-ink) 70%,var(--ink) 100%)}.login-card{border-radius:16px;box-shadow:0 30px 60px -30px #00000073}.login-card h1,.learning-header h1{color:var(--ink)}.learning-header p{color:var(--muted)}.practice-page.workspace{max-width:1560px;padding-top:4px}.workspace-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 14px 10px 18px;margin:0 0 14px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.workspace-header h1{margin:0;font-size:18px;font-weight:700}.workspace-tabs{display:flex;gap:2px;padding:3px;background:var(--surface-3);border-radius:10px}.workspace-tab{padding:7px 14px;border:0;border-radius:8px;color:var(--muted);font-weight:500;font-size:13px;text-decoration:none}.workspace-tab:hover{background:#ffffffa6;color:var(--ink);text-decoration:none}.workspace-tab.active{background:var(--surface);color:var(--ink);font-weight:600;border:0;box-shadow:0 1px 2px #1c1b171a}.workspace-actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.workspace-subhead{margin-bottom:10px}.workspace-subhead h2{margin:0}.palette-trigger{min-width:16rem;justify-content:space-between;background:var(--surface-2);color:var(--muted);font-weight:400}.palette-trigger:hover:not(:disabled){color:var(--ink)}.workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:13.5px;padding:8px 11px;border-radius:8px}.workspace .filter-row{gap:8px}.workspace .filter-row :is(input,select){min-height:40px}.workspace .filter-search input{padding-left:12px}.workspace .filter-chip{background:var(--accent-soft);color:var(--accent-ink);border-color:#c6dae5;font-size:12px;padding:3px 10px}.chip{display:inline-flex;align-items:center;gap:.45rem;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.chip:hover{border-color:#bdb7a8}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.chip-count{font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.chip[aria-pressed=true] .chip-count{color:#ffffffb8}.chip-sm{min-height:30px;padding:0 10px;font-size:12px}.exception-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0}.exception-filters .palette-trigger{margin-left:auto}@media(min-width:1025px){.practice-page.workspace :is(.chip,.work-view-btn,.seg,.reason-chip,.queue-pager .btn,.preview-footer .btn,.inspector-nav .btn,.issue-group .btn,.bulk-bar .btn){min-height:34px}.practice-page.workspace .btn{min-height:38px}.practice-page.workspace :is(.chip-sm,.btn.link){min-height:28px}}.work-views{gap:4px;font-size:13px;top:12px}.work-views-title{margin:12px 8px 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);opacity:1}.work-views-title:first-child{margin-top:2px}.work-view-btn{min-height:36px;padding:0 10px;border-radius:8px;color:var(--ink);font-weight:400}.work-view-btn strong{font-weight:600;font-variant-numeric:tabular-nums;color:var(--muted)}.work-view-btn:hover,.work-view-btn:focus-visible{background:var(--surface);border-color:var(--line)}.work-view-btn.active{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink);font-weight:600}.work-view-btn.active strong{color:var(--accent-ink)}.facet-chips{display:flex;flex-wrap:wrap;gap:5px;padding:0 4px 4px}.work-views-save{margin-top:10px;width:100%}.work-views-keys{margin:14px 6px 0;font-size:11.5px;line-height:2;color:var(--muted);opacity:1}.workspace .queue-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:auto hidden}.workspace .queue-table{font-size:13px}.workspace .queue-table thead th{position:sticky;top:0;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:10px 12px;border-bottom:1px solid var(--line)}.workspace .queue-table td{padding:11px 12px;border-bottom:1px solid var(--line-soft);vertical-align:top}.workspace .queue-table .queue-check{width:44px;text-align:center}.workspace .queue-row:hover{background:#fbfaf7}.workspace .queue-row.selected{background:#f4f7f9}.workspace .queue-row.active{background:var(--accent-soft);outline:0;box-shadow:inset 3px 0 0 var(--accent)}.q-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.q-code{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--accent);letter-spacing:-.01em}.q-stem{margin-top:4px;font-size:13px;line-height:1.5;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.workspace .col-lesson{width:186px;font-size:12.5px;line-height:1.45}.workspace .col-lesson.is-missing{color:var(--warn);font-weight:600}.q-curriculum{display:block;margin-top:3px;font-family:var(--font-mono);font-size:11px;font-weight:400;color:var(--muted)}.workspace .col-level,.workspace .col-form{width:58px;font-weight:600}.workspace .col-level.is-bad{color:var(--danger)}.workspace .col-checks{width:150px}.check-summary{font-size:12px;font-weight:600;color:var(--muted)}.check-summary.ok{color:var(--ok)}.check-summary.bad{color:var(--warn)}.queue-empty{margin:0;padding:22px 16px;color:var(--muted)}.workspace .queue-pager{margin:0;padding:10px 12px;gap:10px;border-top:1px solid var(--line-soft);font-size:12.5px;color:var(--muted)}.workspace .queue-pager label{display:inline-flex;align-items:center;gap:8px;margin:0}.workspace .queue-pager select{width:auto;min-height:32px;padding:4px 8px}.status-pill{border:0;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--surface-3);color:var(--muted)}.status-pill.tone-ok{background:var(--ok-soft);color:var(--ok)}.status-pill.tone-info{background:var(--accent-soft);color:var(--accent-ink)}.status-pill.tone-warn{background:var(--warn-soft);color:var(--warn)}.status-pill.tone-danger{background:var(--danger-soft);color:var(--danger)}.status-pill.tone-muted{opacity:1}.row-badge{color:var(--special);border-color:#cdb8e6;background:#f5effb}.bulk-bar{background:var(--ink);color:#fff;border:0;border-radius:12px;padding:10px 12px 10px 16px;margin:10px 0;box-shadow:0 16px 32px -18px #1c1b17b3}.bulk-bar span,.bulk-bar strong,.bulk-bar label{color:#fff}.bulk-bar .btn{background:transparent;color:#fff;border-color:#5f5b51}.bulk-bar .btn:hover:not(:disabled){background:#ffffff14;border-color:#8a867b;color:#fff}.bulk-bar .btn.primary{background:#fff;border-color:#fff;color:var(--ink)}.bulk-bar kbd{background:transparent;color:#fff;border-color:#fff6}.bulk-sheet{border-color:var(--line)}.workspace .queue-preview{display:flex;flex-direction:column;padding:0;overflow:hidden;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}.queue-preview-empty{margin:0;padding:28px 18px;color:var(--muted)}.queue-preview-scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 16px 16px;display:grid;gap:14px;align-content:start}.inspector-nav{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface);border-bottom:1px solid var(--line)}.inspector-nav .pos{flex:1;text-align:center;font-size:12px;color:var(--muted)}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.preview-head .q-code{font-size:13px}.workspace .queue-preview-body{margin:0;font-size:15px;line-height:1.6;max-height:18rem;overflow:auto}.workspace .queue-preview-body .rich-content p:first-child{margin-top:0}.preview-option{margin:4px 0;font-size:14px}.workspace .queue-answer{margin:8px 0 0;font-size:12.5px;color:var(--muted)}.workspace .queue-meta{display:grid;gap:4px;margin:0;padding-top:10px;border-top:1px solid var(--line);font-size:12px}.workspace .queue-meta>div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:8px}.workspace .queue-meta dt{color:var(--muted)}.workspace .queue-meta dd{margin:0}.preview-footer{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;background:var(--surface);border-top:1px solid var(--line)}.preview-footer .btn{flex:1 1 auto}.machine-checks li{border:0;padding:2px 8px;font-weight:600}.machine-checks .check-ok{background:var(--ok-soft);color:var(--ok)}.machine-checks .check-bad{background:var(--warn-soft);color:var(--warn)}.machine-checks .check-na{background:var(--surface-3);color:var(--muted);opacity:1}.quick-inspector{margin:0;padding:12px;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.quick-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);opacity:1}.seg{border-color:var(--line-strong);background:var(--surface);color:var(--ink);font-size:13px}.seg:hover:not(:disabled){background:var(--surface-2)}.seg.on{background:var(--accent);border-color:var(--accent);color:#fff}.override-note{color:var(--special)}.reason-inline{margin:0;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.reason-chip{border-color:var(--line-strong);font-size:12px}.reason-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.reason-chip.suggested:not(.on){border-style:dashed;border-color:#c98a2e;color:var(--warn)}.undo-toast{background:var(--ink);border-radius:12px;font-size:13px}.undo-toast.error{background:var(--danger)}.undo-toast .btn{background:#fff;color:var(--ink);border-color:#fff;min-height:32px}.undo-toast .btn.link{background:none;border:0;color:#fff}.palette{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.palette-input{font-family:inherit}.palette-item.active{background:var(--accent-soft);color:var(--accent-ink)}.palette-group{color:var(--muted);opacity:1}.palette-backdrop{background:#1c1b1773}.import-steps{gap:6px;margin-bottom:14px}.import-steps li{padding:5px 12px;border-radius:999px;background:var(--surface-3);color:var(--muted);opacity:1;font-size:12.5px;font-weight:500}.import-steps li.active{background:var(--ink);color:#fff;font-weight:600}.import-steps li.done{background:var(--ok-soft);color:var(--ok)}.dropzone{border:2px dashed var(--line-strong);background:var(--surface-2);border-radius:12px;padding:26px 18px}.dropzone:hover,.dropzone:focus-visible,.dropzone.over{border-color:var(--accent);background:var(--accent-soft)}.dropzone.has-file{border:2px solid var(--ok);background:#f3f9f5}.context-chip{background:var(--surface);border-color:var(--line)}.status-tabs{gap:6px}.status-tab{display:inline-flex;align-items:center;gap:.4rem;min-height:34px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font-size:12.5px}.status-tab.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:none}.status-tab strong{margin:0;font-variant-numeric:tabular-nums}.issue-groups{gap:10px}.issue-group{background:var(--surface);border-color:var(--line);border-radius:12px;padding:12px 14px}.issue-group.blocking .issue-count{background:var(--danger-soft);color:var(--danger)}.issue-group.review .issue-count{background:var(--warn-soft);color:var(--warn)}.issue-list li{border-left:0;background:var(--surface-2);border:1px solid var(--line-soft)}.issue-list .issue-blocking{border-color:#f1bdb3;background:#fdf3f1}.issue-list .issue-review{border-color:#f0d5ac;background:#fef8ee}.issue-list .issue-text{color:var(--ink)}.queue-tabs .btn[aria-current=true]{background:var(--ink);border-color:var(--ink);color:#fff}.clean-batch .big{color:var(--ok);font-size:30px;line-height:1.1}.clean-batch fieldset{border-color:var(--line);background:var(--surface-2)}.queue-hint{color:var(--muted);font-size:12px}@media(max-width:1280px){.workspace-actions{margin-left:0;width:100%}.palette-trigger{flex:1}}@media(max-width:720px){.workspace-header{padding:10px 12px}.workspace-tabs{width:100%}.workspace-tab{flex:1;text-align:center;padding:8px 6px}.palette-trigger{min-width:0}.workspace .queue-table td{padding:6px 10px}}[hidden]{display:none!important}.workspace .col-lesson{width:150px}.workspace .col-level,.workspace .col-form{width:50px}.workspace .col-checks{width:112px}.workspace .col-result{width:150px}.q-code{white-space:nowrap;font-weight:600}.q-code.is-raw{color:var(--danger)}.workspace .row-issue{margin-top:4px;font-size:11.5px;line-height:1.4;color:var(--muted);opacity:1}.status-tab.tone-muted{opacity:1}.practice-page .import-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;justify-content:flex-start}.practice-page .import-bulk .inline-field{display:inline-flex;align-items:center;gap:8px;margin:0;color:#fff;font-size:12.5px}.practice-page .import-bulk select{width:auto;min-width:190px;display:inline-block;background:#fff;color:var(--ink)}.import-bulk strong{margin-right:6px}.workspace .queue-preview>.queue-preview-scroll{padding-bottom:18px}.workspace .queue-preview .ok-box{margin:0;font-size:13px}@media(max-width:1600px){.workbench{grid-template-columns:minmax(0,1fr);gap:10px}.work-views{position:static;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.work-views-title,.work-views-title:first-child{margin:0 2px 0 6px}.work-views ul{display:flex;flex-wrap:wrap;gap:4px}.work-view-btn{min-height:32px;gap:8px;padding:0 11px;border:1px solid var(--line);border-radius:999px}.work-view-btn.active{border-color:transparent}.facet-chips{padding:0}.work-views-save{width:auto;margin:0 0 0 auto;min-height:32px}.work-views-name{margin:0 0 0 auto}.work-views-keys{display:none}}.workspace .col-lesson{width:176px}@media(min-width:1025px){.practice-page.workspace .status-tab{min-height:34px}}@media(min-width:1025px){.workbench{grid-template-columns:190px minmax(0,1fr);gap:16px}.workspace .queue-layout{grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:14px}.workspace .queue-preview{top:12px;max-height:calc(100vh - 24px)}}@media(min-width:1025px)and (max-width:1600px){.workbench{grid-template-columns:minmax(0,1fr);gap:10px}}@media(max-width:1024px){.workspace .queue-preview-body{max-height:none}}@media(max-width:720px){.workspace .queue-table td,.workspace .queue-table th{width:auto}.workspace .queue-table tr{border-bottom:1px solid var(--line-soft);padding:8px 4px}.workspace .queue-table .queue-check{text-align:left}.q-code{white-space:normal}}@media(max-width:1024px){.workbench .queue-layout,.workspace .queue-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.workspace .queue-table td.queue-question{flex-direction:column;align-items:stretch;gap:4px}.workspace .queue-table td.queue-question:before{margin-bottom:0}}.env-badge{display:flex;justify-content:flex-end;gap:6px;margin:-8px 0 8px;font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--muted)}.env-badge span{padding:2px 8px;border-radius:999px;background:var(--surface-3)}.env-badge .env-version{font-family:var(--font-mono);font-weight:500;letter-spacing:0;background:transparent}.env-banner{margin-bottom:16px;padding:10px 16px;border-radius:10px;background:var(--warn-soft);border:1px solid #F0D5AC;color:#6e3b00;font-size:12.5px;letter-spacing:.03em}.env-banner p{margin:4px 0 0;font-weight:600}.overlap-hint{display:inline-flex;align-items:center;gap:4px;margin-left:4px;font-size:11.5px;color:var(--muted)}@media(max-width:720px){.overlap-hint span{display:none}}
