:root{--ink:#182326;--muted:#788486;--line:#e3e9e8;--paper:#fbfcfb;--orange:#ef6339;--orange-soft:#fff1ea;--teal:#087f79;--teal-soft:#e6f4f1;--navy:#263f54;--shadow:0 12px 30px rgba(21,47,45,.06)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.sidebar{width:230px;flex-shrink:0;background:#f3f7f5;border-right:1px solid var(--line);padding:27px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 11px 35px}.brand-mark{width:31px;height:31px;border-radius:9px;background:var(--orange);color:#fff;font:800 18px Georgia;text-align:center;line-height:32px}.brand strong{display:block;font-size:17px;letter-spacing:-.5px}.brand span{display:block;font-size:10px;color:#84918e;margin-top:2px}.main-nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#778582;text-align:left;padding:12px 14px;border-radius:8px;font-weight:600;display:flex;gap:12px;align-items:center}.nav-item:hover{background:#e8f0ed}.nav-item.active{background:#fff;color:var(--orange);box-shadow:0 4px 12px rgba(48,82,74,.06)}.nav-icon{font-size:16px;width:18px;text-align:center}.sidebar-bottom{margin-top:auto;padding:0 11px}.mini-label{font-size:10px;letter-spacing:1px;color:#9aa6a3;text-transform:uppercase;margin-bottom:9px}.grade-select{background:#fff;border:1px solid var(--line);border-radius:7px;padding:10px 12px;display:flex;justify-content:space-between;font-weight:600;font-size:12px}.sidebar-note{color:#9aa6a3;font-size:11px;line-height:1.7;margin-top:27px}.main-content{width:calc(100% - 230px);max-width:1370px;margin:0 auto;padding:0 48px 60px}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.breadcrumb{color:#9aa6a3;font-size:12px}.breadcrumb span{margin:0 8px;color:#c1cac7}.breadcrumb b{color:#3f4f4d;font-weight:600}.topbar-actions{display:flex;align-items:center;gap:21px}.sync-status{font-size:11px;color:#96a19f}.sync-status i{display:inline-block;width:6px;height:6px;background:#64b99a;border-radius:50%;margin-right:6px}.avatar{width:31px;height:31px;border-radius:50%;background:#f4d7ca;color:#b75334;text-align:center;line-height:31px;font-weight:700}.view{display:none;padding-top:43px}.active-view{display:block}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:37px}.page-heading.compact{align-items:center;margin-bottom:31px}.eyebrow{font:500 10px 'DM Mono',monospace;letter-spacing:1.7px;color:var(--orange);margin:0 0 10px}.page-heading h1{font-size:31px;line-height:1.2;letter-spacing:-1.4px;margin:0}.heading-sub{margin:9px 0 0;color:#889492;font-size:13px}.primary-btn{border:0;border-radius:7px;background:var(--orange);color:#fff;padding:12px 18px;font-weight:700;font-size:12px;box-shadow:0 5px 12px rgba(239,99,57,.17)}.primary-btn:hover{background:#d9532c}.primary-btn span{font-size:15px;margin-left:6px}.outline-btn{background:#fff;border:1px solid #d7e0de;border-radius:7px;padding:11px 17px;color:#596967;font-weight:700;font-size:12px}.text-btn{border:0;background:transparent;color:var(--orange);font-weight:700;font-size:12px;padding:3px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:37px}.stat-card,.panel,.recommend-card{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.stat-card{height:165px;padding:20px 20px;position:relative;overflow:hidden}.stat-card.accent{background:var(--orange);border-color:var(--orange);color:#fff}.stat-label{font-size:11px;color:#879391}.accent .stat-label{color:#ffe3d8}.stat-value{font-size:33px;font-weight:700;letter-spacing:-1px;margin-top:15px}.stat-value small{font-size:12px;font-weight:600;margin-left:5px;letter-spacing:0}.stat-foot{font-size:11px;color:#9ba5a3;margin-top:11px}.accent .stat-foot{color:#ffd8ca}.trend{font-weight:700}.trend.up{color:#299b78}.accent .trend.up{color:#fff}.sparkline{position:absolute;right:18px;bottom:19px;height:47px;display:flex;align-items:end;gap:4px}.sparkline i{display:block;width:5px;background:rgba(255,255,255,.55);border-radius:3px}.bar-track{height:6px;background:#edf1ef;border-radius:5px;margin-top:19px}.bar-track div{height:100%;border-radius:5px;background:#5db49d}.week-dots{display:flex;gap:6px;margin-top:16px}.week-dots b{font-size:9px;font-weight:600;color:#9ea8a6;background:#f0f4f2;width:17px;height:17px;text-align:center;line-height:17px;border-radius:50%}.week-dots .today{background:var(--teal);color:#fff}.ring{position:absolute;right:20px;bottom:19px;width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--orange) 86%,#edf1ef 0);display:grid;place-items:center}.ring:after{content:'';position:absolute;background:#fff;width:37px;height:37px;border-radius:50%}.ring span{position:relative;z-index:1;font-size:10px;font-weight:700}.dashboard-grid{display:grid;grid-template-columns:1fr 1.45fr;gap:14px;margin-bottom:36px}.panel{padding:23px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between}.panel h2{font-size:16px;margin:0;letter-spacing:-.3px}.panel-head p{font-size:11px;color:#9ba6a4;margin:7px 0 0}.progress-pill{background:var(--orange-soft);color:var(--orange);border-radius:20px;padding:6px 9px;font:500 10px 'DM Mono'}.task-list{margin-top:20px}.task-row{border:0;background:transparent;width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 0;border-top:1px solid #eef2f0}.task-row:first-child{border-top:0}.task-check{font-size:20px;color:#c1cbc7}.task-check.done{color:#53a982}.task-copy{display:grid;gap:4px;flex:1}.task-copy strong{font-size:12px}.task-copy small{font-size:10px;color:#9aa5a2}.task-arrow{color:#b3bfbc;font-size:16px}.activity-chart{display:flex;height:176px;margin-top:16px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;color:#adb8b5;font:9px 'DM Mono';padding:3px 9px 20px 0}.chart-area{flex:1;position:relative}.grid-lines{position:absolute;inset:0 0 21px;display:flex;flex-direction:column;justify-content:space-between}.grid-lines i{height:1px;background:#eff3f1}.chart-area svg{position:absolute;left:0;right:0;top:0;height:145px;width:100%;overflow:visible}.chart-labels{display:flex;justify-content:space-between;color:#adb8b5;font:9px 'DM Mono';position:absolute;bottom:0;left:0;right:0}.section-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:17px}.section-title h2{font-size:17px;margin:0}.section-title p{font-size:11px;color:#9ba6a4;margin:6px 0 0}.recommend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.recommend-card{padding:20px 21px;min-height:185px;position:relative;overflow:hidden}.recommend-card.orange{background:#fff4ed;border-color:#ffe2d2}.recommend-card.teal{background:#eaf6f3;border-color:#d3eeea}.recommend-card.navy{background:#eef3f6;border-color:#dbe6eb}.recommend-icon{font:bold 20px Georgia;margin-bottom:17px;color:var(--orange)}.teal .recommend-icon{color:var(--teal)}.navy .recommend-icon{color:var(--navy)}.card-tag{font:500 9px 'DM Mono';letter-spacing:1px;color:#9ba6a4;text-transform:uppercase}.recommend-card h3{font-size:16px;margin:8px 0 5px}.recommend-card p{font-size:11px;color:#869390;margin:0}.card-action{border:0;background:transparent;padding:0;position:absolute;bottom:20px;left:21px;color:var(--orange);font-size:11px;font-weight:700}.card-action span{font-size:15px;margin-left:5px}.recommend-card.teal .card-action{color:var(--teal)}.recommend-card.navy .card-action{color:var(--navy)}.session-meta{text-align:right}.session-meta span{display:block;font:bold 21px 'DM Mono';color:var(--orange)}.session-meta small{font-size:10px;color:#9ca8a5}.control-panel{display:flex;gap:25px;align-items:end;background:#f1f6f4;border:1px solid #e4eeeb;border-radius:9px;padding:18px 21px;margin-bottom:20px}.control-panel label,.reading-filter label{display:block;color:#84918f;font-size:10px;margin-bottom:8px}.segmented{display:flex;background:#fff;border:1px solid #dce6e3;border-radius:6px;padding:3px}.segmented button{border:0;background:transparent;border-radius:4px;min-width:44px;padding:7px 10px;color:#869390;font-size:12px}.segmented button.selected{background:var(--orange);color:#fff;font-weight:700}.control-panel select,.reading-filter select{border:1px solid #dce6e3;border-radius:6px;background:#fff;padding:9px 25px 9px 11px;color:#4e5e5b;font-size:11px;min-width:184px}.control-panel .primary-btn{margin-left:auto}.vocab-layout{display:grid;grid-template-columns:1fr 265px;gap:14px}.word-stage,.session-sidebar{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.word-stage{min-height:482px;padding:28px 35px;display:flex;flex-direction:column}.stage-top{display:flex;justify-content:space-between;color:#a1aaa7;font:500 10px 'DM Mono'}.word-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.word-main{font-size:58px;font-weight:800;letter-spacing:-3px;color:#1d2d2d}.phonetic{font:13px 'DM Mono';color:#95a09e;margin:12px 0 22px}.word-senses{font-size:16px;font-weight:600}.word-senses span{font:11px 'DM Mono';color:var(--orange);margin-right:8px}.word-example{font-size:13px;color:#64716e;margin-top:28px}.example-cn{font-size:11px;color:#a2adab;margin-top:8px}.word-actions{display:flex;justify-content:center;gap:11px}.session-sidebar{padding:22px}.mini-progress h3{font-size:13px;margin:0}.mini-progress .panel-head span{font:10px 'DM Mono';color:var(--orange)}.progress-bar{height:5px;background:#f0f2f1;border-radius:6px;margin:13px 0 19px}.progress-bar i{display:block;height:100%;width:0;background:var(--orange);border-radius:6px;transition:width .25s}.word-list{display:grid;gap:3px;max-height:267px;overflow:auto;padding-right:3px}.word-item{border:0;background:transparent;border-radius:5px;padding:8px 7px;display:flex;justify-content:space-between;color:#86918f;font-size:11px}.word-item.current{background:#fff1ea;color:var(--orange);font-weight:700}.word-item.done{color:#4a9b7c}.word-item .word-num{font:10px 'DM Mono';color:#afb9b6}.tip-box{display:flex;gap:9px;background:#f6f8f7;border-radius:7px;padding:11px;margin-top:18px}.tip-box span{color:var(--orange)}.tip-box p{font-size:10px;color:#8d9996;line-height:1.6;margin:0}.reading-filter{display:flex;align-items:center;gap:10px}.reading-filter label{margin:0}.reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.article-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;min-height:205px;box-shadow:var(--shadow);display:flex;flex-direction:column}.article-card h3{margin:10px 0 7px;font-size:18px}.article-card p{font-size:11px;color:#85918f;line-height:1.7;margin:0;flex:1}.article-meta{font:10px 'DM Mono';color:#a0aba8;margin:15px 0}.article-card .card-action{position:static;align-self:flex-start}.article-card.easy .card-tag{color:var(--teal)}.article-card.medium .card-tag{color:var(--orange)}.hidden{display:none!important}.reading-workspace{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px 38px;box-shadow:var(--shadow)}.back-link{border:0;background:transparent;color:#84918f;font-size:11px;padding:0;margin-bottom:25px}.reading-header{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px}.reading-header h2{font-size:25px;margin:10px 0 6px}.reading-header p{font-size:11px;color:#9ba6a4;margin:0}.timer{font:20px 'DM Mono';color:var(--orange)}.article-text{font:17px/2 Georgia,serif;max-width:850px;margin:30px auto;color:#2f3d3b}.questions{border-top:1px solid var(--line);padding-top:22px;max-width:850px;margin:0 auto}.question-block{padding:15px 0;border-bottom:1px solid #eef2f0}.question-block h4{font-size:13px;margin:0 0 11px;line-height:1.6}.question-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.option-label{border:1px solid #e2e9e7;border-radius:6px;padding:9px 11px;font-size:11px;color:#5d6b69}.option-label input{margin-right:7px;accent-color:var(--orange)}.option-label.correct{border-color:#69b99a;background:#effaf5}.option-label.wrong{border-color:#ee9279;background:#fff3ef}.reading-submit{display:flex;align-items:center;gap:15px;margin-top:23px}.reading-submit span{font-size:12px;font-weight:700}.teacher-layout{display:grid;grid-template-columns:.9fr 1.5fr;gap:14px}.library-panel,.editor-panel{min-height:550px}.search-box{border:1px solid #e0e8e5;border-radius:5px;color:#a5afac;padding:5px 8px;font-size:13px}.search-box input{border:0;outline:0;width:100px;font-size:11px}.library-list{margin-top:19px}.library-item{width:100%;background:transparent;border:0;border-top:1px solid #edf1ef;padding:16px 3px;text-align:left}.library-item:first-child{border-top:0}.library-item strong{display:block;font-size:13px}.library-item small{display:block;color:#9aa5a3;font-size:10px;margin-top:7px}.library-item.active strong{color:var(--orange)}.empty-editor{min-height:500px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#9ba7a4}.empty-icon{font-size:30px;color:#ccd5d2;margin-bottom:12px}.empty-editor h2{font-size:16px;color:#5e6b69;margin:0}.empty-editor p{font-size:11px;margin:9px 0 20px}.editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.editor-head h2{font-size:17px}.icon-btn{border:0;background:transparent;font-size:23px;color:#a3aeab}.editor-panel form label{display:block;font-size:11px;color:#71807d;margin-bottom:15px}.editor-panel input,.editor-panel select,.editor-panel textarea{display:block;width:100%;border:1px solid #dfe7e4;border-radius:5px;padding:9px 10px;margin-top:7px;outline:0;font-size:12px;color:#3f4f4c;background:#fff}.editor-panel textarea{resize:vertical;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.question-editor{border-top:1px solid var(--line);padding-top:16px;margin-top:4px}.question-editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.question-editor-head h3{font-size:13px;margin:0}.question-field{border:1px solid #e9efed;border-radius:6px;padding:12px;margin-bottom:9px;position:relative}.question-field .remove-q{position:absolute;top:7px;right:8px;border:0;background:transparent;color:#bdc6c3}.question-field input{padding:7px;margin-top:5px}.question-field .question-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.form-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:17px;margin-top:17px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#233a39;color:#fff;padding:11px 17px;border-radius:6px;font-size:12px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:950px){.sidebar{width:190px}.main-content{width:calc(100% - 190px);padding:0 25px 45px}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.teacher-layout{grid-template-columns:1fr}.vocab-layout{grid-template-columns:1fr}.session-sidebar{display:none}}@media(max-width:650px){.sidebar{width:60px;padding:18px 8px}.brand{padding:0 6px 28px}.brand>div:last-child,.nav-item:not(.active)::after,.nav-item{font-size:0}.brand-mark{width:35px}.nav-item{justify-content:center;padding:12px 0}.nav-icon{font-size:16px}.sidebar-bottom{display:none}.main-content{width:calc(100% - 60px);padding:0 14px 35px}.topbar{height:60px}.page-heading{display:block}.page-heading .primary-btn{margin-top:20px}.page-heading h1{font-size:27px}.stat-grid,.recommend-grid,.reading-grid{grid-template-columns:1fr}.stat-card{height:150px}.control-panel{display:grid;grid-template-columns:1fr 1fr;gap:14px}.control-panel .primary-btn{grid-column:1/-1;margin:0}.word-stage{padding:22px 18px;min-height:430px}.word-main{font-size:45px}.word-actions{flex-direction:column}.word-actions button{width:100%}.reading-workspace{padding:21px 16px}.reading-header h2{font-size:20px}.article-text{font-size:15px}.question-options{grid-template-columns:1fr}.teacher-layout{display:block}.editor-panel{margin-top:14px}.library-panel{min-height:auto}.search-box input{width:80px}}
/* Teacher backend and printable worksheet surfaces */
.filter-panel{display:flex;align-items:end;gap:14px;background:#fff;border:1px solid var(--line);padding:17px 20px;border-radius:8px;margin-bottom:14px}.filter-panel label{font-size:11px;color:#72817e;font-weight:600;min-width:150px}.filter-panel input,.filter-panel select{display:block;width:100%;margin-top:7px;border:1px solid #dfe7e4;border-radius:5px;background:#fff;padding:9px 10px;font-size:11px;color:#62716e}.filter-panel label:first-child{min-width:180px}.query-btn{border:0;border-radius:5px;background:#198ef0;color:#fff;padding:10px 17px;font-size:11px;font-weight:700}.reset-btn{border:1px solid #dce5e2;background:#fff;color:#81908d;border-radius:5px;padding:9px 14px;font-size:11px}.student-toolbar{display:flex;justify-content:space-between;align-items:center;margin:18px 0 13px}.student-toolbar .outline-btn{margin-right:8px;border-color:#86d264;color:#5aaf3b;background:#f7fff4;padding:9px 14px}.toolbar-hint{font-size:11px;color:#9ba6a4}.toolbar-hint b{color:var(--orange)}.student-table-wrap{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:auto;box-shadow:var(--shadow)}.student-table{width:100%;min-width:1060px;border-collapse:collapse;font-size:11px}.student-table th{background:#f5f8fa;color:#7e8d8c;text-align:left;font-weight:600;padding:15px 12px;white-space:nowrap}.student-table td{padding:22px 12px;border-top:1px solid #edf1ef;color:#657370;vertical-align:middle;white-space:nowrap}.student-table tr:hover{background:#fcfefd}.student-table input[type=checkbox]{accent-color:var(--orange)}.student-name strong{display:block;color:#4d5d5a;font-size:12px}.student-name small{display:block;margin-top:6px;color:#a1aca9}.status-dot{display:inline-block;width:11px;height:11px;border-radius:3px;background:#63c33b;margin-right:7px;vertical-align:middle}.status-dot.recent{background:#3c98ed}.status-text{display:inline-block;vertical-align:middle}.status-text small{display:block;color:#9ea9a6;margin-top:5px}.study-good{color:#43ab84;font-weight:700}.study-warn{color:#ef6339;font-weight:700}.study-muted{color:#f0a23a;font-weight:700}.table-link{border:0;background:transparent;color:#3298ed;padding:2px;font-size:11px}.worksheet-preview{background:#fbfcfb;border:1px solid #edf1ef;border-radius:7px;padding:19px 24px;max-width:680px;margin:20px auto 17px;box-shadow:0 5px 17px rgba(21,47,45,.04)}.worksheet-cover{text-align:center;border-bottom:1px solid #e7ecea;padding-bottom:13px}.worksheet-brand{font-size:10px;color:var(--orange);font-weight:700}.worksheet-cover h2{font:700 21px Georgia,serif;margin:9px 0 5px}.worksheet-cover p{font-size:11px;color:#7e8b88;margin:0}.worksheet-rule{height:2px;background:var(--orange);width:40px;margin:10px auto}.worksheet-meta-line{display:flex;justify-content:center;gap:18px;color:#9ba6a3;font:10px 'DM Mono'}.preview-section{padding-top:15px}.preview-section>b{font-size:12px;color:#334441}.preview-section>small{display:block;color:#9da8a5;font-size:10px;margin-top:5px}.preview-words{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px;margin-top:13px}.preview-word{font-size:11px;border-bottom:1px dashed #d5dfdc;padding-bottom:6px}.preview-word b{display:inline-block;width:23px;color:#abb6b2;font:10px 'DM Mono'}.preview-word span{color:#6e7c79}.preview-lines{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px;margin-top:13px;color:#8b9794;font-size:10px}.print-outline{display:grid;gap:12px;color:#6e7c79;font-size:11px;padding:20px 2px}.print-outline div:first-letter{color:#4da47d}.role-label{font-size:12px;color:#72817e;border-left:1px solid var(--line);padding-left:16px}@media print{body.print-mode *{visibility:hidden!important}body.print-mode #print-sheet,body.print-mode #print-sheet *{visibility:visible!important}body.print-mode #print-sheet{display:block!important;position:absolute;left:0;top:0;width:100%;padding:26px 35px;color:#222;background:#fff;font-family:Arial,sans-serif}.print-sheet-header{text-align:center;border-bottom:2px solid #222;padding-bottom:12px;margin-bottom:18px}.print-sheet-header h1{font:700 22px Georgia,serif;margin:7px 0}.print-sheet-header p{font-size:11px;margin:3px}.print-sheet-section{margin:18px 0}.print-sheet-section h2{font-size:14px;border-left:4px solid #ef6339;padding-left:8px}.print-sheet-words{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border:1px solid #bbb;padding:12px}.print-sheet-words div{font-size:11px;border-bottom:1px dashed #ccc;padding-bottom:5px}.print-sheet-lines{display:grid;grid-template-columns:1fr 1fr;gap:19px 35px;font-size:11px}.print-sheet-reading{font:13px/1.8 Georgia,serif;border:1px solid #bbb;padding:15px;white-space:pre-line}.print-sheet-question{font-size:11px;margin:11px 0}.print-sheet-answer{font-size:11px;border-top:1px solid #ccc;padding-top:12px}.print-sheet-answer li{margin:6px 0}.app-shell{display:block}.view{display:none!important}}
@media(max-width:950px){.filter-panel{flex-wrap:wrap}.filter-panel label{flex:1;min-width:135px}.query-btn,.reset-btn{align-self:end}.worksheet-preview{padding:15px}.preview-words{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.filter-panel{display:grid;grid-template-columns:1fr 1fr;gap:11px}.filter-panel label,.filter-panel label:first-child{min-width:0}.query-btn,.reset-btn{width:100%}.worksheet-meta-line{gap:8px;font-size:9px}.preview-words{grid-template-columns:1fr}.preview-lines{grid-template-columns:1fr}.role-label{display:none}}
/* Vocabulary library */
.library-stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.library-stage-card{display:flex;align-items:center;gap:15px;padding:19px 22px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.library-stage-card.active{border-color:#f1b59f;box-shadow:0 0 0 2px #fff1ea,var(--shadow)}.stage-symbol{width:39px;height:39px;border-radius:9px;display:grid;place-items:center;font-size:18px;font-weight:800}.primary-stage .stage-symbol{background:#eef4fb;color:#4b83bd}.middle-stage .stage-symbol{background:#fff0e8;color:var(--orange)}.high-stage .stage-symbol{background:#edf5ef;color:#4d9b70}.library-stage-card span{display:block;color:#879390;font-size:11px}.library-stage-card strong{display:block;font-size:18px;margin:4px 0 3px}.library-stage-card small{display:block;color:#a1aca9;font-size:10px}.library-toolbar{display:flex;align-items:end;justify-content:space-between;background:#f2f7f5;border:1px solid #e4eeeb;border-radius:8px;padding:15px 18px;margin-bottom:13px}.library-toolbar>div{display:flex;gap:15px}.library-toolbar label{font-size:10px;color:#84918f}.library-toolbar select,.library-toolbar input{display:block;margin-top:6px;border:1px solid #dce6e3;background:#fff;border-radius:5px;padding:8px 10px;font-size:11px;color:#64726f;min-width:160px}.library-toolbar input{min-width:220px}.library-toolbar>span{font-size:11px;color:#9ca8a5}.library-table-wrap{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:auto;box-shadow:var(--shadow)}.library-table{width:100%;border-collapse:collapse;min-width:760px;font-size:11px}.library-table th{background:#f5f8fa;color:#7d8c89;font-weight:600;text-align:left;padding:14px 15px}.library-table td{padding:12px 15px;border-top:1px solid #edf1ef;color:#63716e}.library-table td:first-child{font:10px 'DM Mono';color:#a0aba8}.library-table td:nth-child(3){font-weight:700;color:#344542}.library-table td:nth-child(4){font:10px 'DM Mono';color:#8a9894}.library-table tr:nth-child(even){background:#fcfdfd}@media(max-width:650px){.library-stage-grid{grid-template-columns:1fr}.library-toolbar{display:block}.library-toolbar>div{display:grid;grid-template-columns:1fr}.library-toolbar input,.library-toolbar select{width:100%}.library-toolbar>span{display:block;margin-top:12px}}
.audio-btn{border:1px solid #d6e4e0;background:#f7fbfa;color:#287f72;border-radius:4px;padding:3px 6px;margin-left:4px;font-size:9px;font-weight:700;cursor:pointer}.audio-btn:hover{background:#e6f4f1;color:#0d665e}.preview-word{display:flex;align-items:center;gap:3px;flex-wrap:wrap}.preview-word span{flex:1;min-width:130px}.library-more{text-align:center;color:#9ba6a4!important;padding:18px!important}
.audio-btn{display:inline-flex;align-items:center;gap:3px;min-width:53px;justify-content:center}.speaker-icon{font-size:12px;line-height:1}.uk-audio{color:#bf633f;border-color:#f0c2ae;background:#fff7f2}.uk-audio:hover{background:#ffeadf;color:#a64d2e}.us-audio{color:#3976a8;border-color:#b9d2e8;background:#f3f8fd}.us-audio:hover{background:#e3f0fb;color:#225f90}.accent-name{font-size:9px}

/* Printable vocabulary preview: reference list plus an independently shuffled dictation list. */
.worksheet-preview .preview-words{grid-template-columns:1fr;gap:8px;margin-top:13px}
.worksheet-preview .preview-word{display:grid;grid-template-columns:24px minmax(82px,.7fr) minmax(95px,.9fr) minmax(130px,1.5fr);align-items:baseline;gap:7px;min-width:0}
.worksheet-preview .preview-word b{width:auto}
.worksheet-preview .preview-word strong{color:#263734;font-size:11px;overflow-wrap:anywhere}
.worksheet-preview .preview-word .preview-phonetic{min-width:0;color:#73817e;font-family:'DM Mono',monospace}
.worksheet-preview .preview-word .preview-meaning{min-width:0;color:#566663}
.worksheet-preview .preview-lines{grid-template-columns:1fr;gap:11px;margin-top:13px}
.preview-dictation-item{display:grid;grid-template-columns:20px minmax(130px,1fr) minmax(140px,1.15fr);align-items:end;gap:7px;min-width:0}
.preview-dictation-item b{color:#8e9a97;font:10px 'DM Mono',monospace}
.preview-dictation-item span{color:#566663;overflow-wrap:anywhere}
.preview-dictation-item i{display:block;height:15px;border-bottom:1px solid #9eaaa7}
@media(max-width:650px){.worksheet-preview .preview-word{grid-template-columns:22px minmax(70px,.8fr) minmax(80px,1fr) minmax(100px,1.3fr)}.preview-dictation-item{grid-template-columns:20px minmax(90px,1fr) minmax(100px,1fr)}}
@media print{.print-sheet-words{grid-template-columns:repeat(2,minmax(0,1fr))}.print-word-item{display:grid;grid-template-columns:25px minmax(60px,.7fr) minmax(75px,.9fr) minmax(100px,1.5fr);align-items:baseline;gap:6px;break-inside:avoid}.print-word-number{color:#777;font:10px 'DM Mono'}.print-word-text{font-weight:700}.print-word-phonetic{color:#555;font-family:Arial,sans-serif}.print-word-meaning{color:#333}.print-dictation-item{display:grid;grid-template-columns:24px minmax(100px,1fr) minmax(120px,1fr);align-items:baseline;gap:6px;break-inside:avoid}.print-dictation-meaning{color:#222}.print-dictation-line{color:#777;letter-spacing:1px}}
.resource-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.resource-module-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:16px;min-height:126px;padding:22px 24px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.resource-module-card:hover{transform:translateY(-2px);border-color:#efb49f;box-shadow:0 9px 24px rgba(21,47,45,.09)}.resource-module-card .module-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;font-weight:800;font-size:18px}.resource-module-card b{display:block;color:#30413e;font-size:16px}.resource-module-card small{display:block;margin-top:8px;color:#8b9895;font-size:11px}.resource-module-card i{font-style:normal;color:#9aa7a3;font-size:22px}.words-module .module-icon{background:#fff0e8;color:var(--orange)}.reading-module .module-icon{background:#eaf5f1;color:#368f7b}.cloze-module .module-icon{background:#eef3fb;color:#4a79ad}.grammar-module .module-icon{background:#f3eefb;color:#8061a7}.resource-page-shell{min-height:390px;padding:30px 34px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.resource-page-shell .back-link{display:block;margin-bottom:35px}.resource-page-shell h1{margin:14px 0 8px;font-size:28px;color:#2e403d}.resource-page-shell p{max-width:600px;color:#879390;font-size:12px;line-height:1.8}.resource-page-stat{display:flex;align-items:baseline;gap:10px;margin:28px 0;color:#91a09b}.resource-page-stat strong{font:800 34px 'DM Mono';color:var(--orange)}.resource-page-shell .primary-btn,.resource-page-shell .outline-btn{margin-top:12px}@media(max-width:650px){.resource-module-grid{grid-template-columns:1fr;gap:12px}.resource-module-card{min-height:104px;padding:17px}.resource-page-shell{padding:22px 18px;min-height:350px}.resource-page-shell h1{font-size:24px}}
.range-hint{align-self:center;background:#fff1ea;color:#c45632;border:1px solid #f4d2c3;border-radius:5px;padding:9px 11px;font-size:10px;white-space:nowrap}.study-sub{display:block;color:#9ea9a6;font-size:10px;margin-top:5px}.modal{position:fixed;inset:0;background:rgba(25,42,42,.34);z-index:20;display:grid;place-items:center;padding:20px}.modal-card{width:min(620px,100%);background:#fff;border-radius:11px;box-shadow:0 20px 60px rgba(19,39,39,.22);padding:26px}.modal-head{display:flex;justify-content:space-between;align-items:flex-start}.modal-head h2{font-size:21px;margin:8px 0 5px}.modal-head p:last-child{font-size:11px;color:#9aa6a3;margin:0}.screening-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:23px 0 17px}.screening-levels button{border:1px solid #dfe8e5;background:#fbfdfc;border-radius:7px;padding:13px 7px;color:#71807d}.screening-levels button:hover{border-color:#ef9b7c;background:#fff5f0}.screening-levels strong{display:block;color:var(--orange);font:800 21px Georgia}.screening-levels span{display:block;font-size:9px;line-height:1.5;margin-top:5px}.screening-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.screening-form label{font-size:10px;color:#73817f}.screening-form input,.screening-form select{display:block;width:100%;margin-top:7px;border:1px solid #dfe7e4;border-radius:5px;padding:9px 10px;font-size:12px;background:#fff}.screening-explain{font-size:11px;color:#8e9997;line-height:1.7;margin:19px 0 0}.modal-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:17px;margin-top:19px}@media(max-width:650px){.screening-levels{grid-template-columns:repeat(2,1fr)}.screening-form{grid-template-columns:1fr}.range-hint{white-space:normal}}
.bank-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:16px}.bank-tab{border:0;background:transparent;color:#85928f;padding:11px 16px;font-size:12px;font-weight:700;border-bottom:2px solid transparent}.bank-tab.active{color:var(--orange);border-color:var(--orange)}.bank-tab b{display:inline-grid;place-items:center;min-width:20px;height:18px;border-radius:10px;background:#edf2f0;color:#879390;font:10px 'DM Mono';margin-left:6px}.bank-tab.active b{background:var(--orange-soft);color:var(--orange)}.empty-bank{text-align:center;padding:80px 15px;color:#96a29f}.empty-bank h3{font-size:15px;color:#5f6d69;margin:11px 0 6px}.empty-bank p{font-size:11px;margin:0 0 18px}.worksheet-checks{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:24px 0 16px}.worksheet-checks label{display:flex;align-items:flex-start;gap:10px;border:1px solid #dfe8e5;border-radius:7px;padding:13px 12px;cursor:pointer}.worksheet-checks label:has(input:checked){border-color:#ef9b7c;background:#fff5f0}.worksheet-checks input{margin-top:2px;accent-color:var(--orange)}.worksheet-checks b{display:block;font-size:12px;color:#4d5d5a}.worksheet-checks small{display:block;color:#9aa6a3;font-size:10px;margin-top:5px;line-height:1.5}.worksheet-modal-note{font-size:11px;color:#8d9996;margin:4px 0 0}@media(max-width:650px){.worksheet-checks{grid-template-columns:1fr}}

/* Reading comprehension library */
.reading-library-layout{display:grid;grid-template-columns:minmax(270px,.82fr) minmax(520px,1.55fr);gap:16px;align-items:start}.reading-library-list-panel,.reading-library-editor-panel{min-height:560px}.reading-library-list-panel{padding:0;overflow:hidden}.reading-library-list-panel .panel-head{padding:22px 22px 17px;border-bottom:1px solid var(--line)}.reading-library-list-panel .panel-head b{color:var(--orange)}.reading-library-list-panel .search-box{display:flex;align-items:center;width:155px;background:#fff}.reading-library-list-panel .search-box input{width:100%;min-width:0;background:transparent}.reading-library-item{display:block;width:100%;padding:17px 22px;border:0;border-bottom:1px solid #edf1ef;background:#fff;text-align:left;transition:background .16s,border-color .16s}.reading-library-item:hover{background:#fbfdfc}.reading-library-item.active{background:#fff6f1;box-shadow:inset 3px 0 var(--orange)}.reading-library-item .reading-list-id{display:block;color:#98a4a1;font:9px 'DM Mono';letter-spacing:.4px;margin-bottom:7px}.reading-library-item strong{display:block;color:#354542;font-size:13px;line-height:1.45}.reading-library-item.active strong{color:#ce4f2b}.reading-library-item small{display:flex;gap:10px;flex-wrap:wrap;color:#8e9a97;font-size:10px;margin-top:8px}.reading-library-item small span+span{padding-left:10px;border-left:1px solid #dfe7e4}.reading-list-empty{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#96a29f;padding:20px}.reading-list-empty>span{font-size:25px;color:#ced7d4;margin-bottom:9px}.reading-list-empty b{font-size:13px;color:#667471}.reading-list-empty small{margin-top:7px;font-size:10px}.reading-library-editor-panel{padding:26px 28px}.reading-library-editor-panel .empty-editor{min-height:505px}.reading-library-editor-panel form>label,.reading-library-editor-panel .form-row>label,.reading-library-editor-panel .question-field label{display:block;font-size:11px;color:#71807d;margin-bottom:15px}.reading-library-editor-panel input,.reading-library-editor-panel select,.reading-library-editor-panel textarea{display:block;width:100%;border:1px solid #dfe7e4;border-radius:5px;padding:10px 11px;margin-top:7px;outline:0;font-size:12px;color:#3f4f4c;background:#fff}.reading-library-editor-panel input:focus,.reading-library-editor-panel select:focus,.reading-library-editor-panel textarea:focus{border-color:#ee9d80;box-shadow:0 0 0 3px #fff3ed}.reading-library-editor-panel input[readonly]{background:#f5f8f7;color:#8d9996}.reading-library-editor-panel textarea{resize:vertical;line-height:1.7}.reading-library-editor-panel .editor-head{border-bottom:1px solid var(--line);padding-bottom:16px}.reading-library-editor-panel .editor-head .eyebrow{margin-bottom:6px}.reading-library-editor-panel .editor-head h2{margin:0}.reading-meta-preview{display:flex;align-items:center;gap:0;background:#f3f8f6;border:1px solid #e1ebe8;border-radius:7px;margin:0 0 20px;padding:12px 14px;color:#6e7d79;font:10px 'DM Mono'}.reading-meta-preview>span{padding:0 13px;border-left:1px solid #d7e3df}.reading-meta-preview .reading-book-icon{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:#e3f1ed;color:#268573;font-size:15px}.reading-meta-preview b{color:#334542}.reading-number-row{grid-template-columns:1fr 1fr 1fr}.reading-library-editor-panel .question-editor-head p{margin:5px 0 0;color:#96a29f;font-size:10px}.reading-library-editor-panel .question-field{padding:16px 16px 4px;background:#fbfcfc;border-color:#e1e9e6}.reading-question-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.reading-question-title b{font-size:12px;color:#40504d}.reading-question-title .remove-q{position:static;color:#a7796a;font-size:10px;padding:4px 7px;border-radius:4px}.reading-question-title .remove-q:hover{background:#fff0e9;color:#c44e2a}.reading-library-editor-panel .question-grid label{margin-bottom:10px}.reading-library-editor-panel .question-grid label span{font-size:9px;color:#98a39f}.reading-library-editor-panel .question-grid input{margin-top:5px}.reading-library-editor-panel .question-field .form-row{align-items:start}.reading-library-editor-panel .form-actions{position:sticky;bottom:0;background:#fff;padding-bottom:2px;z-index:2}
@media(max-width:1050px){.reading-library-layout{grid-template-columns:1fr}.reading-library-list-panel,.reading-library-editor-panel{min-height:auto}.reading-library-editor-panel .empty-editor{min-height:330px}}
@media(max-width:650px){.reading-library-list-panel .panel-head{display:block}.reading-library-list-panel .search-box{width:100%;margin-top:14px}.reading-library-editor-panel{padding:20px 16px}.reading-number-row{grid-template-columns:1fr}.reading-meta-preview{display:grid;grid-template-columns:28px 1fr 1fr;gap:8px}.reading-meta-preview>span{padding:0 8px}.reading-meta-preview>span:last-child{grid-column:2/-1;border-left:0;padding-left:8px}.reading-library-editor-panel .question-grid{grid-template-columns:1fr}.reading-library-editor-panel .form-actions{position:static}}

/* Dedicated reading article editor */
.reading-library-layout{grid-template-columns:1fr}.reading-library-list-panel{min-height:440px}.reading-library-editor-panel{width:min(980px,100%);margin:0 auto;padding:30px 34px}.reading-library-editor-panel form{width:100%}.reading-editor-status{display:inline-flex;align-items:center;gap:7px;color:#788683;background:#f2f7f5;border:1px solid #e1e9e6;border-radius:6px;padding:9px 12px;font-size:10px}.reading-editor-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#58b391}.reading-library-list-panel .reading-library-item{display:grid;grid-template-columns:140px minmax(220px,1fr) auto auto;align-items:center;gap:18px;padding:18px 22px}.reading-library-list-panel .reading-library-item .reading-list-id{margin:0}.reading-library-list-panel .reading-library-item small{margin:0;justify-content:flex-end}.reading-library-list-panel .reading-library-item strong{font-size:14px}.reading-library-actions{display:flex;gap:7px}.reading-library-actions button{height:30px;padding:0 12px;border-radius:5px;font-size:10px;font-weight:700;cursor:pointer}.reading-preview-btn{border:1px solid #e99778;background:#fff4ee;color:#c95430}.reading-preview-btn:hover{background:#ffe8dc}.reading-edit-btn{border:1px solid #d7e3df;background:#fff;color:#60706c}.reading-edit-btn:hover{border-color:#9eb6af;background:#f4f8f7}
@media(max-width:760px){.reading-library-editor-panel{padding:22px 18px}.reading-library-list-panel .reading-library-item{display:block}.reading-library-list-panel .reading-library-item .reading-list-id{margin-bottom:7px}.reading-library-list-panel .reading-library-item small{justify-content:flex-start;margin-top:8px}.reading-editor-status{margin-top:16px}}

/* A4 vocabulary worksheet, modeled after the supplied four-column reference. */
#vocabulary-view .vocab-layout{grid-template-columns:minmax(0,1fr)}
#vocabulary-view .session-sidebar{display:none}
#vocabulary-view .worksheet-preview{width:min(100%,794px);max-width:none;min-height:0;aspect-ratio:210/297;padding:28px 30px;background:#fff;overflow:hidden;scroll-behavior:smooth}
.worksheet-preview-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px auto 0}
.worksheet-preview-nav button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #d9e2df;border-radius:6px;background:#fff;color:#43534f;font:24px/1 Georgia,serif;box-shadow:0 2px 7px rgba(21,47,45,.05)}
.worksheet-preview-nav button:hover:not(:disabled){border-color:#ef6339;color:#ef6339}
.worksheet-preview-nav button:disabled{cursor:default;color:#bdc7c4;background:#f5f7f6}
.worksheet-preview-nav span{min-width:92px;text-align:center;color:#63716e;font:600 11px 'DM Mono',monospace}
.worksheet-preview-track{width:100%;height:100%;column-count:1;column-width:auto;column-gap:60px;column-fill:auto;overflow:visible}
.worksheet-preview-track>.worksheet-cover{break-inside:avoid-column}
.worksheet-preview-track>.preview-section{break-inside:auto}
#vocabulary-view .preview-words{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:22px 24px;margin-top:18px}
.preview-word-card{min-width:0;break-inside:avoid;color:#222}
.preview-word-title{display:flex;align-items:baseline;gap:4px;line-height:1.15}
.preview-word-title span{color:#8b8b8b;font:9px Georgia,serif}
.preview-word-title strong{font:700 16px Georgia,serif;overflow-wrap:anywhere}
.preview-word-phonetic{margin:3px 0 5px;color:#555;font:9px/1.3 Arial,sans-serif}
.preview-word-meanings{font:11px/1.55 SimSun,'Songti SC',serif}
.preview-meaning-line{overflow-wrap:anywhere}
#vocabulary-view .preview-lines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:18px 24px;margin-top:17px}
.preview-dictation-card{min-width:0;color:#333;font:10px/1.45 SimSun,'Songti SC',serif;break-inside:avoid}
.preview-dictation-card span{color:#888;font-size:9px}
.preview-dictation-card i{display:block;height:17px;border-bottom:1px solid #222}
.worksheet-reading-selection{margin-top:22px;padding-top:18px;border-top:2px solid #e7ecea}
.worksheet-reading-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;margin-top:12px;padding:12px 0;border-top:1px dashed #d7dfdd;border-bottom:1px dashed #d7dfdd}
.worksheet-reading-copy strong{color:#263734;font:700 15px Georgia,'Times New Roman',serif;overflow-wrap:anywhere}
.worksheet-reading-copy span{color:#c45632;font:9px 'DM Mono',monospace;white-space:nowrap}
.worksheet-reading-copy p{grid-column:1/-1;margin:2px 0 0;color:#65736f;font-size:10px;line-height:1.6}
.worksheet-preview-article+.worksheet-preview-article{margin-top:26px;padding-top:18px;border-top:1px solid #e2ebe8}
.worksheet-preview-article .worksheet-preview-passage{margin-top:12px}
.worksheet-reading-copy strong{line-height:1.45}
.worksheet-preview-reading-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin:16px 0 14px;color:#6f7c79;font:9px 'DM Mono',monospace}
.worksheet-preview-passage{color:#26312f;font:14px/1.9 Georgia,'Times New Roman',serif;text-align:justify}
.worksheet-preview-passage p{margin:0 0 9px;text-indent:2em}
.worksheet-preview-reading-hint{margin:17px 0 12px;text-align:center;color:#9a6c59;font-size:9px}
.worksheet-preview-questions{border-top:1px solid #dfe6e4;padding-top:4px}
.worksheet-preview-question{padding:13px 0;border-bottom:1px solid #e8edeb;break-inside:avoid}
.worksheet-preview-question h4{margin:0 0 8px;color:#293633;font:600 12px/1.55 Georgia,'Times New Roman',serif}
.worksheet-preview-question>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 20px}
.worksheet-preview-question p{margin:0;color:#4f5d5a;font:11px/1.5 Georgia,'Times New Roman',serif}
.worksheet-preview-question b{font-weight:700}

@media(max-width:800px){#vocabulary-view .preview-words,#vocabulary-view .preview-lines{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#vocabulary-view .preview-words,#vocabulary-view .preview-lines,.worksheet-preview-question>div{grid-template-columns:1fr}.worksheet-reading-copy{grid-template-columns:1fr}.worksheet-reading-copy span{white-space:normal}.worksheet-reading-copy p{grid-column:1}}

@page{size:A4 portrait;margin:12mm}
@media print{
  html,body{width:auto;min-height:0;margin:0;background:#fff}
  body.print-mode>:not(#print-sheet){display:none!important}
  body.print-mode #print-sheet{position:static!important;box-sizing:border-box;width:186mm;min-height:273mm;margin:0 auto;padding:0;overflow:visible;color:#111;background:#fff;font-family:SimSun,'Songti SC','Times New Roman',serif}
  .print-vocab-page{width:100%;overflow:visible;break-inside:auto;page-break-inside:auto}
  .print-other-page{width:100%;min-height:273mm;overflow:visible;break-inside:auto;page-break-inside:auto;break-after:page;page-break-after:always}
  #print-sheet>:last-child{break-after:auto;page-break-after:auto}
  .print-sheet-header{padding:0 0 3.2mm;margin:0 0 5mm;border-bottom:.35mm solid #222;text-align:center;break-inside:avoid-page;page-break-inside:avoid;break-after:avoid-page;page-break-after:avoid}
  .print-sheet-header>div{font:8pt Arial,sans-serif;letter-spacing:.4pt;color:#555}
  .print-sheet-header h1{margin:1.5mm 0 1mm;font:700 16pt SimSun,'Songti SC',serif}
  .print-sheet-header p{margin:0;font:8.5pt/1.4 SimSun,'Songti SC',serif}
  .print-sheet-section{margin:0 0 8mm}
  .print-sheet-section h2{margin:0 0 2.5mm;padding:0;border:0;font:700 13pt SimSun,'Songti SC',serif;break-after:avoid-page;page-break-after:avoid}
  .print-instruction{margin:0 0 5mm;color:#444;font:italic 8.5pt/1.55 SimSun,'Songti SC',serif}
  .print-sheet-words{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:6mm 7mm;padding:0;border:0;break-inside:auto;page-break-inside:auto}
  .print-sheet-words .print-word-card{min-width:0;padding:0;border:0;break-inside:avoid-page;page-break-inside:avoid}
  .print-sheet-words .print-word-card div{padding-bottom:0;border-bottom:0}
  .print-word-title{display:flex;align-items:baseline;gap:1.2mm;line-height:1.12}
  .print-word-title span{color:#777;font:8pt Georgia,serif}
  .print-word-title strong{font:700 13pt Georgia,'Times New Roman',serif;overflow-wrap:anywhere}
  .print-word-phonetic{margin:1mm 0 1.2mm;color:#333;font:8.5pt/1.25 Arial,sans-serif}
  .print-word-meanings{font:10pt/1.5 SimSun,'Songti SC',serif}
  .print-meaning-line{overflow-wrap:anywhere}
  .print-dictation-section{margin-top:7mm}
  .print-sheet-lines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:5mm 7mm;font-size:10pt;break-inside:auto;page-break-inside:auto}
  .print-sheet-lines .print-dictation-card{display:block;min-width:0;break-inside:avoid-page;page-break-inside:avoid;font:9.5pt/1.35 SimSun,'Songti SC',serif}
  .print-dictation-card span{color:#666;font-size:8pt}
  .print-dictation-card i{display:block;height:7mm;border-bottom:.35mm solid #111}
  .print-sheet-reading{font:10.5pt/1.75 Georgia,'Times New Roman',serif;overflow:visible;break-inside:auto;page-break-inside:auto;-webkit-box-decoration-break:clone;box-decoration-break:clone}
  .print-reading-meta{margin:-1mm 0 4mm;color:#555;font:8.5pt/1.4 SimSun,'Songti SC',serif}
  .print-sheet-question,.print-sheet-answer li{break-inside:avoid-page;page-break-inside:avoid}
  .print-sheet-question{orphans:3;widows:3}
  .print-sheet-answer{break-inside:auto;page-break-inside:auto}
  .print-reading-translation{margin-top:5mm;padding-top:4mm;border-top:.2mm solid #bbb;font:9.5pt/1.7 SimSun,'Songti SC',serif}
  .print-reading-document{width:100%;overflow:visible;break-inside:auto;page-break-inside:auto}
  .print-reading-answer-page{width:100%;min-height:273mm;break-before:page;page-break-before:always;break-after:page;page-break-after:always}
  .reference-reading-layout{width:100%;border:0;border-collapse:collapse;border-spacing:0}
  .reference-reading-layout thead{display:table-header-group}
  .reference-reading-layout tbody,.reference-reading-layout tr,.reference-reading-layout td{padding:0;border:0;break-inside:auto;page-break-inside:auto}
  .reference-reading-layout thead td{padding-bottom:7mm}
  .reference-reading-header{display:flex;align-items:center;min-height:18mm;padding:0 0 4.5mm;border-bottom:.35mm solid #111}
  .reference-reading-brand{display:flex;align-items:center;gap:2.2mm;font-family:Arial,sans-serif}
  .reference-reading-brand>span{display:grid;place-items:center;width:10mm;height:10mm;border-radius:50%;background:#ef531d;color:#fff;font:bold 16pt Georgia,serif}
  .reference-reading-brand strong{display:block;color:#ef531d;font:bold 18pt Arial,sans-serif;line-height:1}
  .reference-reading-brand small{display:block;margin-top:.7mm;color:#333;font:bold 7pt SimSun,'Songti SC',serif}
  .reference-reading-header h1{margin:0 0 0 8mm;font:700 15pt SimSun,'Songti SC',serif}
  .reference-reading-body>h2,.reference-reading-answer-body>h2{margin:0 0 2.5mm;font:700 13.5pt SimSun,'Songti SC',serif}
  .reference-reading-instruction{margin:0 0 4mm;font:italic 8.7pt/1.55 SimSun,'Songti SC',serif}
  .reference-reading-meta{display:flex;align-items:center;justify-content:space-between;gap:5mm;margin:0 0 3.5mm;font:7.8pt/1.4 SimSun,'Songti SC',serif;break-after:avoid-page;page-break-after:avoid}
  .reference-reading-meta>div{display:flex;align-items:center;gap:4mm;flex-wrap:wrap}
  .reference-reading-meta>div:last-child{justify-content:flex-end;white-space:nowrap}
  .reference-book-mark{display:inline-grid;place-items:center;width:5mm;height:5mm;border-radius:50%;background:#ef531d;color:#fff;font:bold 7pt Arial,sans-serif}
  .reference-reading-passage{margin:0;font:11.5pt/1.9 Georgia,'Times New Roman',serif;text-align:justify;orphans:3;widows:3}
  .reference-reading-passage p{margin:0 0 1mm;text-indent:2em}
  .reading-focus-word{color:#7c2f19;font-weight:700}
  .reference-reading-hint{margin:5mm 0 4mm;text-align:center;color:#765747;font:7.5pt SimSun,'Songti SC',serif;break-after:avoid-page;page-break-after:avoid}
  .reference-reading-question{margin:0 0 3.5mm;break-inside:avoid-page;page-break-inside:avoid}
  .reference-question-stem{display:flex;align-items:baseline;gap:1.5mm;font:10pt/1.4 Georgia,'Times New Roman',serif}
  .reference-question-stem>span{flex:0 0 auto;font-family:SimSun,'Songti SC',serif}
  .reference-question-stem>strong{font-weight:400}
  .reference-question-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5mm 5mm;margin-top:1mm;font:9pt/1.3 Georgia,'Times New Roman',serif}
  .reference-question-options div{min-width:0;overflow-wrap:anywhere}
  .reference-question-options b{font-weight:400}
  .reference-reading-answer-body{padding-top:1mm}
  .reference-answer-meta{margin:0 0 5mm;color:#555;font:8.5pt SimSun,'Songti SC',serif}
  .reference-reading-answer-body ol{margin:0;padding-left:0;list-style:none}
  .reference-reading-answer-body li{margin:0 0 4mm;padding-left:2mm;font:10pt/1.65 SimSun,'Songti SC',serif;break-inside:avoid-page;page-break-inside:avoid}
  .reference-reading-answer-body li strong{display:inline-block;min-width:12mm;margin-right:2mm}
  .reference-reading-answer-body li span{color:#333}
  .reference-reading-translation{margin-top:7mm;padding-top:5mm;border-top:.25mm solid #bbb}
  .reference-reading-translation h2{margin:0 0 3mm;font:700 12pt SimSun,'Songti SC',serif}
  .reference-reading-translation p{margin:0;font:9.5pt/1.8 SimSun,'Songti SC',serif}
}

/* Worksheet pronunciation QR and the mobile page opened by scanning it. */
.has-pronunciation-qr{position:relative;padding-right:92px;min-height:92px}
.preview-pronunciation-qr{position:absolute;top:10px;right:0;width:78px;margin:0;text-align:center}
.preview-pronunciation-qr img{display:block;width:72px;height:72px;margin:0 auto;border:1px solid #dce3e1;background:#fff}
.preview-pronunciation-qr figcaption{margin-top:4px;color:#64726f;font-size:8px;line-height:1.3}

.pronunciation-page-body{min-height:100vh;margin:0;background:#f4f7f6;color:#1f2f2c;font-family:Manrope,Arial,sans-serif}
.pronunciation-page{width:min(720px,100%);margin:0 auto;padding:24px 16px 48px}
.pronunciation-page header{padding:23px 21px;background:#fff;border:1px solid #e0e8e5;border-top:4px solid #ef6339;border-radius:8px}
.pronunciation-page header>span{color:#ef6339;font:600 10px 'DM Mono',monospace;letter-spacing:1.2px}
.pronunciation-page h1{margin:8px 0 6px;font-size:25px;letter-spacing:0}
.pronunciation-page header p{margin:0;color:#7d8a87;font-size:12px}
.pronunciation-list{display:grid;gap:8px;margin-top:14px}
.pronunciation-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 14px;background:#fff;border:1px solid #e0e8e5;border-radius:7px}
.pronunciation-number{color:#a2adaa;font:10px 'DM Mono',monospace}
.pronunciation-copy{min-width:0}
.pronunciation-copy strong{display:block;font:700 20px Georgia,serif;overflow-wrap:anywhere}
.pronunciation-copy small{display:block;margin-top:4px;color:#76837f;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.pronunciation-actions{display:flex;gap:7px}
.mobile-audio-btn{display:grid;place-items:center;min-width:48px;height:47px;padding:4px 7px;border-radius:6px;cursor:pointer}
.mobile-audio-btn span{font-size:17px;line-height:1}
.mobile-audio-btn small{font-size:9px;font-weight:700}
@media(max-width:480px){.pronunciation-page{padding:12px 10px 36px}.pronunciation-page h1{font-size:22px}.pronunciation-row{grid-template-columns:26px minmax(0,1fr);padding:12px 10px}.pronunciation-actions{grid-column:2;justify-content:flex-start}.mobile-audio-btn{min-width:62px;height:42px;display:flex;gap:5px}}

@media print{
  .print-section-heading{display:grid;grid-template-columns:minmax(0,1fr) 24mm;align-items:start;gap:5mm;margin-bottom:4mm;break-inside:avoid-page;page-break-inside:avoid;break-after:avoid-page;page-break-after:avoid}
  .print-section-heading .print-instruction{margin-bottom:0}
  .print-pronunciation-qr{width:24mm;margin:0;text-align:center;break-inside:avoid}
  .print-pronunciation-qr img{display:block;width:22mm;height:22mm;margin:0 auto}
  .print-pronunciation-qr figcaption{margin-top:1mm;font:7pt/1.25 SimSun,'Songti SC',serif}
}

/* Interactive breadcrumb navigation */
.breadcrumb{display:flex;align-items:center}
.breadcrumb button{border:0;background:transparent;padding:4px 2px;color:#9aa6a3;font:inherit;cursor:pointer}
.breadcrumb button:hover{color:var(--orange)}
.breadcrumb button:focus-visible{outline:2px solid #ef9b7c;outline-offset:2px;border-radius:3px}

/* Authentication and database-backed student management */
.login-view{min-height:100vh;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);background:#f5f8f7;color:#2e403d}
.login-brand{display:flex;align-items:center;justify-content:center;gap:13px;background:#233a39;color:#fff}
.login-brand .brand-mark{width:54px;height:54px;font-size:26px}
.login-brand strong{display:block;font-size:25px}
.login-brand span{display:block;margin-top:4px;color:#a9b9b6;font-size:12px}
.login-card{width:min(410px,calc(100% - 48px));align-self:center;justify-self:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:38px;box-shadow:0 18px 45px rgba(28,52,50,.1)}
.login-card h1{margin:8px 0 7px;font-size:28px}
.login-card>p:not(.eyebrow):not(.login-error){margin:0 0 28px;color:#85928f;font-size:12px}
.login-card label,.student-form-grid label,.student-notes{display:block;color:#657471;font-size:11px;font-weight:600}
.login-card input,.student-form-grid input,.student-form-grid select,.student-notes textarea{display:block;width:100%;margin-top:8px;border:1px solid #dce5e2;border-radius:5px;background:#fff;padding:11px 12px;color:#344441;font-size:12px;outline:0}
.login-card input:focus,.student-form-grid input:focus,.student-form-grid select:focus,.student-notes textarea:focus{border-color:#ef9a7a;box-shadow:0 0 0 3px #fff1eb}
.login-card label+label{margin-top:17px}
.login-error{min-height:18px;margin:11px 0 5px;color:#c8482c;font-size:11px}
.login-submit{width:100%;justify-content:center;margin-top:6px}
.campus-label{color:#71807d;font-size:11px}
.logout-btn{border:1px solid #dce5e2;border-radius:5px;background:#fff;color:#697875;padding:7px 10px;font-size:10px}
.logout-btn:hover{border-color:#ef9a7a;color:#c85231}
.student-modal-card{width:min(700px,100%)}
.student-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px;margin-top:24px}
.student-notes{margin-top:16px}
.student-notes textarea{resize:vertical;line-height:1.55}
.table-actions{display:flex;align-items:center;gap:5px}
@media(max-width:700px){.login-view{grid-template-columns:1fr}.login-brand{min-height:155px}.login-card{margin:30px auto}.campus-label{display:none}.student-form-grid{grid-template-columns:1fr}}

/* Super administrator workspace */
.admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 22px}
.admin-summary article{border-left:3px solid var(--orange);background:#fff;padding:18px 20px;border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.admin-summary span{display:block;color:#85928f;font-size:10px}
.admin-summary strong{display:block;margin-top:7px;color:#2f413e;font:700 24px 'DM Mono',monospace}
.admin-section{margin-top:25px}
.admin-section>.panel-head{padding:0 2px 12px;border-bottom:1px solid var(--line)}
.admin-section>.panel-head h2{margin:0;font-size:17px}
.admin-section>.panel-head p{margin:5px 0 0;color:#909c99;font-size:10px}
.admin-section>.panel-head>span{color:#788783;font-size:11px}
.admin-table-wrap{overflow:auto;background:#fff;border-bottom:1px solid var(--line)}
.admin-table{width:100%;min-width:850px;border-collapse:collapse;font-size:11px}
.admin-table th{background:#f5f8f7;padding:13px 15px;color:#7a8986;text-align:left;font-weight:600}
.admin-table td{padding:15px;border-top:1px solid #e9efed;color:#5f6e6a}
.admin-table strong{color:#334441}
.account-status{display:inline-flex;align-items:center;gap:6px}
.account-status:before{content:'';width:7px;height:7px;border-radius:50%;background:#61b68f}
.account-status.disabled:before,.account-status.locked:before{background:#d67b60}
.checkbox-line{display:flex;align-items:center;gap:7px;margin-top:12px;color:#53635f;font-weight:500}
.checkbox-line input{width:auto;margin:0;accent-color:var(--orange)}
@media(max-width:700px){.admin-summary{grid-template-columns:1fr}}

/* Seven-day campus learning overview */
.overview-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.overview-metric{min-height:132px;padding:19px 20px;background:#fff;border:1px solid var(--line);border-top:3px solid #ef6339;border-radius:6px;box-shadow:var(--shadow)}
.overview-metric:nth-child(2){border-top-color:#16867a}.overview-metric:nth-child(3){border-top-color:#4d7590}.overview-metric:nth-child(4){border-top-color:#9b6d9a}
.overview-metric>span{display:block;color:#7d8b88;font-size:11px}
.overview-metric>strong{display:inline-block;margin-top:16px;color:#2a3b38;font:700 31px 'DM Mono',monospace}
.overview-metric>small{margin-left:5px;color:#899592;font-size:11px}
.overview-metric>p{margin:8px 0 0;color:#9aa5a2;font-size:10px;line-height:1.5}
.overview-metric.loading{grid-column:1/-1;display:grid;place-items:center;border-top-color:#dfe6e4;color:#8d9996}
.overview-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.75fr);gap:14px;margin-bottom:28px}
.overview-trend-panel,.overview-recent-panel{min-height:315px}
.overview-legend{display:flex;gap:13px;color:#7d8a87;font-size:9px}
.overview-legend span:before{content:'';display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:2px;vertical-align:-1px;background:#ef6339}
.overview-legend .completion-legend:before{background:#19877a}
.weekly-bars{height:226px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:13px;align-items:end;padding-top:24px}
.weekly-bar{height:100%;display:grid;grid-template-rows:1fr auto;gap:10px;align-items:end;text-align:center}
.weekly-bar-columns{height:100%;display:flex;align-items:end;justify-content:center;gap:5px;border-bottom:1px solid #dde5e2;background:repeating-linear-gradient(to top,transparent 0,transparent 24%,#f0f3f2 25%)}
.weekly-bar-columns i{display:block;width:min(16px,38%);min-height:2px;border-radius:3px 3px 0 0;background:#ef6339}
.weekly-bar-columns i:last-child{background:#19877a}
.weekly-bar label{color:#8b9794;font:9px 'DM Mono',monospace}
.weekly-bar label b{display:block;margin-bottom:3px;color:#50605d;font-size:10px}
.overview-activity-list{margin-top:15px}
.overview-activity-item{padding:11px 0;border-top:1px solid #edf1ef}
.overview-activity-item:first-child{border-top:0}
.overview-activity-item strong{display:block;color:#3b4c48;font-size:11px;line-height:1.45}
.overview-activity-item span{display:block;margin-top:4px;color:#929e9b;font-size:9px;line-height:1.5}
.overview-empty{display:grid;place-items:center;min-height:200px;color:#9aa5a2;font-size:11px;text-align:center}
.overview-module-section{margin-top:4px}
.overview-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.overview-module-grid article{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:5px;padding:19px 20px;background:#f5f8f7;border-top:1px solid #dfe7e4;border-bottom:1px solid #dfe7e4}
.overview-module-grid span{color:#546460;font-size:12px;font-weight:700}
.overview-module-grid strong{color:#263a36;font:700 25px 'DM Mono',monospace}
.overview-module-grid small{color:#899692;font-size:10px}
@media(max-width:950px){.overview-metric-grid{grid-template-columns:repeat(2,1fr)}.overview-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:650px){.overview-metric-grid,.overview-module-grid{grid-template-columns:1fr}.overview-metric{min-height:112px}.weekly-bars{gap:5px}.overview-module-grid article{padding:15px}}

/* Vocabulary screening sheet library */
.screening-result-card{width:min(900px,100%);max-height:calc(100vh - 40px);overflow:auto}
.screening-score-layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:22px 0 15px;border:1px solid #e1e8e6;border-radius:7px;overflow:hidden}
.screening-score-layers article{min-width:0;padding:16px 17px;background:#fff;border-left:1px solid #e5ebe9}
.screening-score-layers article:first-child{border-left:0}
.screening-score-layers article header{display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:9px}
.screening-score-layers article header>span{display:grid;place-items:center;width:27px;height:27px;border-radius:5px;background:#fff0e8;color:#ce5532;font:800 12px 'DM Mono',monospace}
.screening-score-layers article:nth-child(2) header>span{background:#eaf5f1;color:#278370}
.screening-score-layers article:nth-child(3) header>span{background:#eef3f8;color:#4d7590}
.screening-score-layers article strong{display:block;color:#344542;font-size:12px}
.screening-score-layers article small{display:block;margin-top:3px;color:#96a19e;font-size:9px}
.screening-layer-rate{color:#a1aba8;font:600 10px 'DM Mono',monospace}.screening-layer-rate.measured{color:#168572}
.screening-score-layers article>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px;margin-top:15px}
.screening-score-layers label{color:#7d8a87;font-size:9px}
.screening-score-layers input{display:block;width:100%;height:35px;margin-top:6px;padding:0 9px;border:1px solid #dce5e2;border-radius:5px;background:#fff;color:#344542;font-size:12px}
.screening-score-layers article>div>span{padding-bottom:9px;color:#a2ada9}
.screening-calculation{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-top:1px solid #dfe7e4;border-bottom:1px solid #dfe7e4;background:#f5f8f7}
.screening-calculation>div{padding:14px 16px;border-left:1px solid #dfe7e4}.screening-calculation>div:first-child{border-left:0}
.screening-calculation span{display:block;margin-bottom:7px;color:#7c8a87;font-size:9px}
.screening-calculation strong{color:#ef6339;font:800 27px 'DM Mono',monospace}.screening-calculation small{margin-left:5px;color:#84918e;font-size:10px}
.screening-calculation b{color:#3e504c;font-size:13px}
.screening-recommendation{margin:12px 0;padding-left:10px;border-left:3px solid #ef6339;color:#6f7d79;font-size:10px;line-height:1.55}
.screening-wrong-ranks{display:block;color:#71807d;font-size:10px}
.screening-wrong-ranks input{display:block;width:100%;margin-top:7px;padding:10px 11px;border:1px solid #dfe7e4;border-radius:5px;background:#fff;color:#3f4f4c;font-size:11px}
.screening-module .module-icon{background:#eef3fb;color:#4d7590}
.screening-sheet-stages{display:grid;gap:18px}
.screening-stage-panel{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}
.screening-stage-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 23px;border-bottom:1px solid var(--line)}
.screening-stage-panel>header>div{display:flex;align-items:center;gap:13px;min-width:0}
.screening-stage-symbol{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:6px;background:#fff0e8;color:var(--orange);font-size:16px;font-weight:800}
.screening-stage-panel:nth-child(1) .screening-stage-symbol{background:#eef4fb;color:#4b83bd}
.screening-stage-panel:nth-child(3) .screening-stage-symbol{background:#edf5ef;color:#4d9b70}
.screening-stage-panel h2{margin:0;color:#31423f;font-size:15px}
.screening-stage-panel header p{margin:5px 0 0;color:#8b9794;font-size:10px;line-height:1.5}
.screening-stage-total{flex:0 0 auto;color:#788682;font:600 11px 'DM Mono',monospace}
.screening-stage-table-wrap{overflow-x:auto}
.screening-stage-table{width:100%;min-width:720px;border-collapse:collapse;font-size:11px}
.screening-stage-table th{padding:12px 17px;background:#f6f8f7;color:#7e8b88;text-align:left;font-weight:600}
.screening-stage-table td{padding:14px 17px;border-top:1px solid #edf1ef;color:#697773}
.screening-stage-table td:first-child{display:flex;align-items:center;gap:10px;color:#344542}
.screening-level-mark{display:grid;place-items:center;width:27px;height:27px;border:1px solid #efb49f;border-radius:5px;background:#fff6f1;color:#cf5632;font:800 13px 'DM Mono',monospace}
.screening-sheet-status{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700}
.screening-sheet-status:before{content:'';width:6px;height:6px;border-radius:50%}
.screening-sheet-status.ready{color:#27856e}.screening-sheet-status.ready:before{background:#55b494}
.screening-sheet-status.pending{color:#9aa5a2}.screening-sheet-status.pending:before{background:#c7cfcc}
.screening-preview-button{height:31px;padding:0 12px;border:1px solid #e59a7f;border-radius:5px;background:#fff5f0;color:#c85431;font-size:10px;font-weight:700}
.screening-preview-button:hover{background:#ffe8dd}
.screening-preview-button:disabled{cursor:not-allowed;border-color:#e1e7e5;background:#f5f7f6;color:#a5afac}
.screening-sheet-modal-card{width:min(850px,100%);max-height:calc(100vh - 40px);display:flex;flex-direction:column}
.screening-sheet-modal-card .modal-head{flex:0 0 auto;padding-bottom:15px;border-bottom:1px solid var(--line)}
.screening-sheet-preview{overflow:auto;margin-top:14px;border:1px solid #e1e8e6;border-radius:6px}
.screening-sheet-preview table{width:100%;min-width:650px;border-collapse:collapse;font-size:11px}
.screening-sheet-preview th{position:sticky;top:0;z-index:1;padding:11px 12px;background:#f4f7f6;color:#788682;text-align:left;font-weight:600}
.screening-sheet-preview td{padding:10px 12px;border-top:1px solid #e8eeec;color:#5f6e6a;vertical-align:top}
.screening-sheet-preview td:first-child{width:54px;color:#9aa5a2;font:10px 'DM Mono',monospace}
.screening-sheet-preview td:nth-child(2){width:145px}
.screening-sheet-preview td:nth-child(3){width:150px;font-family:'DM Mono',monospace;color:#778581}
.screening-sheet-preview td:last-child{width:60px;text-align:center}
.screening-sheet-preview strong{display:block;color:#31423f;font-size:12px}
.screening-sheet-preview small{display:block;margin-top:4px;color:#9aa5a2;font-size:9px}
.screening-check-box{display:inline-block;width:15px;height:15px;border:1px solid #9ba8a4;border-radius:2px;background:#fff}
.screening-sheet-modal-card .modal-actions{flex:0 0 auto;margin-top:14px}
@media(max-width:720px){.screening-score-layers{grid-template-columns:1fr}.screening-score-layers article{border-left:0;border-top:1px solid #e5ebe9}.screening-score-layers article:first-child{border-top:0}.screening-calculation{grid-template-columns:1fr}.screening-calculation>div{border-left:0;border-top:1px solid #dfe7e4}.screening-calculation>div:first-child{border-top:0}}
@media(max-width:650px){.screening-stage-panel>header{align-items:flex-start;padding:17px}.screening-stage-total{padding-top:4px}.screening-sheet-modal-card,.screening-result-card{padding:20px 15px}.screening-sheet-preview{max-height:60vh}}
.library-stage-card{font:inherit;text-align:left;cursor:pointer}.library-stage-card:hover{border-color:#f1b59f}
