:root{--navy:#071d34;--blue:#234b73;--ink:#172536;--muted:#64788c;--line:#cad5de;--silver:#edf1f5;--paper:#fff}

*{box-sizing:border-box}

html,body{margin:0;background:#e3e8ed;color:var(--ink);font-family:"Pretendard",Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}

.assessment-toolbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;border-bottom:1px solid #c0cbd5;background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}
.assessment-brand{display:flex;align-items:center;gap:11px;color:var(--navy);text-decoration:none}
.assessment-brand img{width:42px;height:42px;border:1px solid #bcc8d2;border-radius:12px}
.assessment-brand span{display:grid;gap:2px}
.assessment-brand small{font:800 8px "Lexend",sans-serif;letter-spacing:1.2px}
.assessment-brand b{font-size:14px}
.toolbar-actions{display:flex;gap:8px}
.toolbar-actions a,.toolbar-actions button{display:grid;place-items:center;min-height:40px;padding:0 15px;border:1px solid #afbdc9;border-radius:999px;background:#fff;color:var(--navy);font:800 12px "Pretendard",sans-serif;text-decoration:none;cursor:pointer}
.toolbar-actions button{border-color:var(--navy);background:var(--navy);color:#fff}
.print-notice{width:210mm;margin:18px auto 0;padding:11px 14px;border:1px solid #bac6d0;border-radius:12px;background:#f8fafb;color:#5b7084;font-size:12px}
.assessment-stack{display:grid;gap:18px;padding:18px 0 55px}
.assessment-page{position:relative;width:210mm;height:297mm;margin:auto;overflow:hidden;background:var(--paper);box-shadow:0 20px 50px -30px rgba(7,29,52,.58)}
.page-strip{height:10mm;padding:0 17mm;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#b6c3cf;font:800 7px "Lexend",sans-serif;letter-spacing:.3px}
.page-content{padding:9mm 17mm 18mm}
.page-head{display:grid;grid-template-columns:1fr 28mm;gap:8mm;align-items:end;margin-bottom:4mm}
.page-head small{color:#72869a;font:800 8px "Lexend",sans-serif;letter-spacing:1px}
.page-head h1{margin:1.5mm 0;color:var(--navy);font-size:21pt;line-height:1.05}
.page-head p{margin:0;color:#5f7488;font-size:8.5pt}
.phase-score{display:grid;place-items:center;width:28mm;height:28mm;border:1px solid var(--line);background:var(--silver);color:var(--navy);text-align:center}
.phase-score b{display:block;font:900 12pt "Lexend",sans-serif}
.phase-score span{font-size:7pt;font-weight:800}
.student-fields{display:grid;grid-template-columns:12mm 43mm 13mm 35mm 17mm 1fr;height:9mm;margin-bottom:4mm;border:1px solid var(--line)}
.student-fields span{display:flex;align-items:center;padding:0 5px;border-right:1px solid var(--line);font-size:8pt}
.student-fields .label{background:var(--silver);color:#687d91;font-weight:800}
.level-guide{display:grid;grid-template-columns:25mm repeat(4,1fr);height:12mm;border:1px solid var(--line);background:#f8fafb}
.level-guide>*{display:grid;place-items:center;padding:1.5mm;border-right:1px solid var(--line);font-size:7pt;text-align:center}
.level-guide b{background:var(--navy);color:#fff}
.level-guide strong{display:block;color:var(--navy);font:850 7.5pt "Lexend",sans-serif}
.rubric{margin-top:3mm;border:1px solid var(--line)}
.rubric-row{display:grid;grid-template-columns:31mm repeat(4,1fr);min-height:26mm;border-bottom:1px solid var(--line)}
.rubric-row:last-child{border-bottom:0}
.criterion{display:flex;flex-direction:column;justify-content:center;padding:3mm;background:var(--silver);border-right:1px solid var(--line)}
.criterion small{color:#708599;font:800 7px "Lexend",sans-serif}
.criterion b{margin-top:1.5mm;color:var(--navy);font-size:9pt}
.descriptor{position:relative;padding:3.5mm 2.5mm 2.5mm;border-right:1px solid var(--line);font-size:7pt;line-height:1.35}
.descriptor:last-child{border-right:0}
.descriptor span{position:absolute;top:1.5mm;right:1.5mm;color:#6d8295;font-size:8pt}
.summary-title{margin:5mm 0 2mm;color:var(--navy);font-size:12pt}
.summary-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}
.summary-box{min-height:24mm;padding:3mm;border-right:1px solid var(--line)}
.summary-box:last-child{border-right:0}
.summary-box b{color:var(--navy);font-size:8pt}
.write-lines{height:15mm;margin-top:1mm;background:repeating-linear-gradient(to bottom,transparent 0,transparent 6mm,var(--line) 6mm,var(--line) calc(6mm + .4px))}
.parent-comment{display:grid;grid-template-columns:31mm 1fr;min-height:28mm;margin-top:3mm;border:1px solid var(--line)}
.parent-comment b{display:grid;place-items:center;padding:3mm;background:var(--navy);color:#fff;font-size:8.5pt;text-align:center}
.parent-comment .write-lines{height:24mm;margin:0 4mm}
.sign-row{display:grid;grid-template-columns:1fr 1fr;gap:7mm;margin-top:3mm;color:#607589;font-size:8pt}
.sign-row span{padding-bottom:2mm;border-bottom:1px solid var(--line)}
.page-footer{position:absolute;left:17mm;right:17mm;bottom:9mm;display:flex;align-items:center;justify-content:space-between;padding-top:3mm;border-top:1px solid var(--line);color:#718397;font-size:7pt}
.page-footer span:first-child{display:flex;align-items:center;gap:3mm}
.page-footer img{width:8mm;height:8mm}

@page{size:A4 portrait;margin:0}

@media print{html,body{background:#fff}
.assessment-toolbar,.print-notice{display:none!important}
.assessment-stack{display:block;padding:0}
.assessment-page{margin:0;box-shadow:none;break-after:page;page-break-after:always}
.assessment-page:last-child{break-after:auto;page-break-after:auto}
}

@media(max-width:850px){.print-notice{width:calc(100% - 20px)}
.assessment-page{width:calc(100vw - 20px);height:auto;min-height:calc((100vw - 20px) * 1.414)}
.page-content{padding:6vw}
.page-strip{padding:0 6vw}
.page-footer{left:6vw;right:6vw}
.assessment-toolbar{padding:9px 12px}
.assessment-brand small,.assessment-brand b,.toolbar-actions a{display:none}
.rubric-row{grid-template-columns:24% repeat(4,1fr)}
.criterion,.descriptor{padding:2vw;font-size:1.8vw}
.level-guide{grid-template-columns:20% repeat(4,1fr)}
.student-fields{grid-template-columns:12% 21% 13% 18% 16% 20%}
}
