
:root{color-scheme:light;--ink:#202d3a;--muted:#627282;--accent:#196b61;--line:#dce5e6;--paper:#fff;--bg:#f3f6f5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.7 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--accent);text-underline-offset:4px}header,main,footer{max-width:1000px;margin:auto;padding:28px}header{padding-top:42px}nav{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}h1{font-size:clamp(30px,5vw,46px);line-height:1.16;letter-spacing:-1px;margin:22px 0 14px}h2{font-size:25px;line-height:1.35;margin-top:0}h3{font-size:18px;margin:26px 0 8px}p{margin:12px 0}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;font-weight:700;color:var(--accent)}.lead,.muted{color:var(--muted)}main{padding-top:0}article,.card,details{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px;margin-bottom:22px;min-width:0}.condition{background:#f4f7fa;border-left:3px solid #8da3b5;padding:14px 18px;margin:18px 0}.note{background:#fff8e8;border-left:3px solid #dbad47;padding:12px 18px;margin:20px 0}.answer{background:#eaf6f0;border:1px solid #bcdfce;border-radius:12px;padding:14px 18px;margin:20px 0}.answer strong{color:#23664e}.math{overflow-x:auto;overflow-y:hidden;padding:6px 0}.katex-display{margin:.6em 0!important}.katex{font-size:1.12em!important}summary{cursor:pointer;font-weight:600}details img{display:block;max-width:100%;max-height:800px;object-fit:contain;margin:20px auto 0}ol,ul{padding-left:24px}li{margin:8px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards .card{margin:0;display:flex;flex-direction:column}.card h2{font-size:22px;margin-top:14px}.card a{margin-top:auto;font-weight:600}.tag{font-size:13px;color:var(--muted)}.toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap}button{font:inherit;font-size:14px;padding:8px 14px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);cursor:pointer}figure{margin:22px 0}svg{max-width:100%;height:auto}figcaption{font-size:14px;color:var(--muted)}footer{font-size:13px;color:var(--muted);padding-top:0}.error{color:#a12a24}.noscript{background:#fff0dd;padding:16px}@media(max-width:720px){header,main,footer{padding-left:16px;padding-right:16px}article,.card,details{padding:20px}.cards{grid-template-columns:1fr}body{font-size:16px}}@media print{body{background:white;font-size:11pt}header,main,footer{max-width:none;padding:8px}nav,.toolbar,details,footer{display:none}article{border:0;border-radius:0;padding:8px;margin-bottom:16px}.answer,.note,.condition{break-inside:avoid}h2,h3{break-after:avoid}.math{overflow:visible}.katex{font-size:1em!important}h1{font-size:26pt}}

.solution{padding:0;margin:20px 0 0;overflow:hidden;border-radius:12px}.solution>summary{padding:18px 22px;font-size:19px;list-style-position:inside}.solution>summary span{display:block;font-size:13px;font-weight:400;color:var(--muted);padding-top:3px}.solution-body{padding:0 22px 20px}.student-solution{background:#f5f8ff;border-color:#c8d7eb}.student-solution>summary{color:#365f92}.detailed-solution{background:#fff}.solution[open]>summary{border-bottom:1px solid var(--line);margin-bottom:18px}.logout-form{margin-left:auto}.logout-form button{padding:3px 10px;font-size:13px}body.local-file .logout-form{display:none}@media(max-width:720px){.solution>summary{padding:16px;font-size:18px}.solution-body{padding:0 16px 16px}.logout-form{margin-left:0}}@media print{details.solution{display:block;border:0;margin:12px 0}.solution>summary{padding:8px 0;font-size:15pt}.solution>summary span{display:none}.solution-body{padding:0}.solution::details-content{display:block;content-visibility:visible}.solution:not([open])>.solution-body{display:block}}
.primary{display:inline-block;background:var(--accent);color:white;border:0;border-radius:10px;padding:12px 20px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}.primary:hover{background:#12564e}button:disabled{opacity:.6;cursor:wait}.task-form-card label{display:block;font-weight:600;margin:22px 0 8px}.task-form-card label:first-child{margin-top:0}.task-form-card label .muted{font-size:13px;font-weight:400;margin-left:8px}.task-form-card input:not([type=file]),.task-form-card textarea{width:100%;padding:12px 14px;border:1px solid #b6c7c3;border-radius:10px;font:inherit;background:white;color:var(--ink)}.task-form-card textarea{resize:vertical;min-height:150px}.task-form-card input:focus,.task-form-card textarea:focus{outline:3px solid #cde9df;border-color:var(--accent)}.field-foot{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:12px;margin-top:4px}.upload-zone{border:1px dashed #9bb6b0;background:#f7faf9;border-radius:12px;padding:22px;margin-top:26px}.upload-zone p{font-size:14px}.upload-zone input{max-width:100%;font:inherit;font-size:14px}.upload-zone input::file-selector-button{background:white;border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit;margin-right:12px;cursor:pointer}#preview-image{display:block;max-width:100%;max-height:360px;object-fit:contain;margin:18px auto}#photo-name{overflow-wrap:anywhere;font-size:13px}.form-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}.form-actions .muted{font-size:13px}.section-toolbar{margin-bottom:24px}.task-list{display:grid;gap:16px}.task-item{background:white;border:1px solid var(--line);border-radius:14px;padding:22px;display:block;text-decoration:none;color:var(--ink)}.task-item h2{font-size:21px;margin:10px 0;overflow-wrap:anywhere}.task-item p{color:var(--muted);font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.task-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.badge{background:#edf2f8;color:#466b9c;padding:3px 9px;border-radius:20px}.badge.completed{background:#eaf6f0;color:#23664e}.badge.error,.badge.needs_clarification{background:#fff3de;color:#795915}.task-progress{background:#edf5f2;border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:22px}.task-progress h2{font-size:21px;margin:0 0 8px}.task-progress p{margin:0}.task-progress.error{background:#fff8e8;color:var(--ink)}#task-controls{margin:0 0 22px}#task-source pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}#task-source img{max-width:100%;max-height:650px;object-fit:contain;display:block;margin:auto}#task-result p{white-space:pre-wrap;overflow-wrap:anywhere}.empty-state{padding:32px;text-align:center;background:white;border:1px dashed var(--line);border-radius:16px}.task-form-card [hidden],[hidden]{display:none!important}@media(max-width:720px){.upload-zone{padding:16px}.form-actions .primary{width:100%}.field-foot{flex-wrap:wrap;gap:4px}.task-item{padding:18px}}@media print{.section-toolbar,#task-controls,.task-progress{display:none}}
.field-hint{font-size:13px;color:var(--muted);margin:8px 0 18px}.course-options{margin:20px 0;padding:18px;background:#f7faf9}.course-options label{margin-top:18px!important}.solution-table{overflow:auto;max-width:100%;margin:18px 0}.solution-table table{border-collapse:collapse;min-width:100%;font-size:14px}.solution-table caption{text-align:left;font-weight:600;padding-bottom:10px;color:var(--ink)}.solution-table th,.solution-table td{border:1px solid var(--line);padding:8px 12px;text-align:left;white-space:normal;min-width:55px}.solution-table th{background:#eaf1f6}.verification{border:1px solid #cbd9e8;border-radius:12px;padding:16px 20px;margin-top:22px;background:#f4f7fb;font-size:14px}.verification.passed{background:#eff8f2;border-color:#bfdcc9}.verification.failed,.verification.invalid{background:#fff4e6;border-color:#e4c58e}.verification details{background:transparent;border:0;padding:12px 0 0;margin:0}.verification p{margin:10px 0}.verification .field-hint{font-size:12px}.task-progress.needs_review{background:#fff4e6}@media print{.verification details{display:block}.solution-table{overflow:visible}.solution-table table{font-size:9pt}}
.task-pipeline{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:22px;overflow-wrap:anywhere}.task-pipeline h2{font-size:21px;margin-top:0}.pipeline-steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;gap:12px}.pipeline-steps li{border-top:3px solid var(--line);padding-top:10px;font-size:14px}.pipeline-steps span{display:block;font-size:12px;color:var(--muted)}.pipeline-steps .active{border-color:#366eab}.pipeline-steps .done{border-color:#34836c}.pipeline-steps .error{border-color:#b97736}.task-pipeline details{padding:14px;margin:12px 0}.material-card{border-top:1px solid var(--line);padding-top:12px;margin-top:18px}.material-card h3{font-size:17px}.review-summary{padding-top:16px;border-top:1px solid var(--line);margin-top:16px}.review-summary p{margin:8px 0}.verification.uncertain,.badge.needs_review{background:#fff4e6;border-color:#e4c58e}@media(max-width:720px){.pipeline-steps{grid-template-columns:repeat(2,1fr)}.task-pipeline{padding:16px}}@media print{.task-pipeline{display:none}}
