.written-identity{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}.written-identity label{display:block}.written-identity input{width:100%;margin-top:8px}.written-identity p{margin:0}.written-identity strong,.written-identity small{display:block}.written-identity small{font-size:11px;color:var(--muted)}
.written-tools{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:28px 0}.written-tools nav{display:flex;flex-wrap:wrap;gap:10px;flex-basis:100%}.written-tools nav a{background:#eee8f8;padding:8px 13px;border-radius:9px;font-size:13px}.written-tools label{font-size:13px}.written-tools select{display:block;margin-top:7px}
#written-progress{padding:14px 18px;background:#ede6f8;border-radius:12px;font-size:14px}
.written-sheet{background:white;border:1px solid var(--line);border-radius:18px;padding:38px;margin:38px 0;scroll-margin-top:120px}.written-sheet-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:22px;border-bottom:2px solid #7051d4}.written-sheet-header span{font-size:10px;color:var(--blue);letter-spacing:.12em}.written-sheet-header h2{font-size:27px;margin:12px 0 0}.written-sheet-header>strong{text-align:right;font-size:13px;white-space:nowrap}
.written-sheet-meta{display:flex;flex-wrap:wrap;gap:12px 26px;margin:20px 0 28px;font-size:12px}.written-sheet-meta>span:first-child{flex-basis:100%}.written-question{padding:26px 0;border-bottom:1px solid var(--line)}.written-question h3{font-size:19px;line-height:1.4;margin:0 0 16px}.written-prompt{font-size:15px;line-height:1.85}.written-question pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.written-question>label{display:block;font-size:12px;color:var(--muted);margin:18px 0 8px}.written-question textarea{min-height:160px;width:100%;resize:vertical}.written-solution{padding:18px;background:#f3eefb;border-radius:12px;margin-top:20px}.written-solution summary{font-size:14px;color:#5e369a;font-weight:700;cursor:pointer}.written-solution p,.written-solution li{font-size:14px;line-height:1.85}.written-seen{display:block;margin-top:18px;color:var(--muted)}.written-sheet-footer{font-size:11px;color:var(--muted);margin:24px 0 0}.written-print-answer{display:none}
@media(max-width:700px){.written-identity{grid-template-columns:1fr}.written-sheet{padding:22px}.written-sheet-header h2{font-size:23px}.written-sheet-header{align-items:flex-start}.written-question h3{font-size:18px}.written-tools select{max-width:100%}}
@page{size:A4;margin:12mm}
@media print{
 html,body{background:white!important;font:10pt/1.35 Arial,sans-serif!important;color:#000!important;margin:0!important;padding:0!important}
 body[data-page=written-exam]>.top,body[data-page=written-exam]>.skip,body[data-page=written-exam]>footer,.written-intro,.written-solution,.written-question textarea,.written-question>label{display:none!important}
 body[data-page=written-exam] main{display:block!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
 .written-sheet{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:0!important;break-after:page;break-inside:auto!important;page-break-after:always}
 .written-sheet:last-child{break-after:auto;page-break-after:auto}.written-sheet-header{padding-bottom:3mm;border-bottom:1px solid #000;gap:5mm}.written-sheet-header span{font-size:7pt;color:#000}.written-sheet-header h2{font-size:15pt;margin:2mm 0 0;line-height:1.2}.written-sheet-header>strong{font-size:8pt;color:#000}
 .written-sheet-meta{margin:3mm 0;font-size:8pt;gap:2mm 6mm}.written-question{padding:3mm 0;break-inside:avoid!important;border-bottom:1px solid #aaa}.written-question h3{font-size:10pt;line-height:1.3;margin:0 0 2mm}.written-question .written-prompt{font-size:9pt;line-height:1.4;margin:0 0 2mm}.written-question pre{font:8pt/1.3 Consolas,monospace;margin:1.5mm 0;padding:2mm;border:1px solid #ccc;background:white;white-space:pre-wrap}
 .written-print-answer{display:block;min-height:31mm;white-space:pre-wrap;overflow-wrap:anywhere;background:repeating-linear-gradient(to bottom,transparent 0,transparent 6mm,#ddd 6mm,#ddd 6.2mm);font:9pt/6.2mm Arial;padding:0 1mm}
 body[data-print-answers=blank] .written-print-answer{font-size:0;color:transparent}
 .written-sheet-footer{font-size:7pt;line-height:1.3;margin:3mm 0 0;color:#000}
}
