:root{--ink:#152f3c;--muted:#526774;--accent:#f66b35;--paper:#f4f6f8;--line:#dce3e8;--white:#fff;--blue:#eaf0f5;--green:#276b50;--red:#a92e22;font-family:Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #eb783d;outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}h1{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.055em;line-height:1.07;font-weight:800}h2{font-size:1.5rem;letter-spacing:-.035em}h3{font-size:1.05rem}p{line-height:1.65}small,.small{font-size:.875rem;line-height:1.6;color:var(--muted)}[hidden]{display:none!important}.top{height:94px;display:flex;align-items:center;gap:42px;padding:0 4vw;border-bottom:1px solid var(--line);background:white}.brand{text-decoration:none;font-size:2rem;font-weight:900;letter-spacing:-.08em;display:flex;align-items:baseline;gap:4px}.brand-dot{width:7px;height:7px;background:var(--accent);border-radius:50%}.header-label{font-size:.75rem;letter-spacing:.13em;font-weight:700;color:var(--muted)}.header-label span{margin:0 10px;color:#adb8c0}.header-tag{margin-left:auto;font-size:.75rem;letter-spacing:.09em;background:var(--blue);padding:10px 14px;border-radius:4px;font-weight:700}footer{display:flex;justify-content:space-between;gap:20px;padding:26px 4vw;font-size:.8rem;color:var(--muted);border-top:1px solid var(--line)}main{min-height:calc(100vh - 165px)}.loading{padding:80px;text-align:center;color:var(--muted)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-bottom:18px}.intro{max-width:1180px;margin:0 auto;padding:58px 28px 64px;display:grid;grid-template-columns:1.05fr 1fr;gap:65px}.intro h1{max-width:540px}.intro .lead{margin:24px 0;color:var(--muted);font-size:1.06rem;max-width:560px}.orange{color:var(--accent)}.facts{display:flex;gap:36px;margin:30px 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fact strong{font-size:1.75rem;display:block;letter-spacing:-.04em}.fact span{font-size:.875rem;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 23px;border-radius:6px;font-weight:700;background:var(--ink);color:#fff;gap:10px;text-decoration:none}.btn:hover{background:#284b5d}.btn.primary{background:var(--accent);color:#172d39}.btn.primary:hover{background:#ff8658}.btn.secondary{background:white;border:1px solid var(--line);color:var(--ink)}.btn.danger{background:#fceae6;color:var(--red)}.text-button{background:none;color:var(--muted);padding:10px;text-decoration:underline;text-underline-offset:4px;font-size:.875rem}.intro-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px}.program{background:var(--ink);border-radius:12px;padding:28px;color:white;align-self:start}.program .eyebrow{color:#b9c9d3}.program-row{display:grid;grid-template-columns:32px 1fr auto;gap:13px;align-items:center;padding:14px 0;border-bottom:1px solid #36505d;font-size:.9rem}.program-row:last-child{border-bottom:0}.program-row .num{color:#ff976e;font-size:.75rem;letter-spacing:.05em}.program-row .duration{color:#bacbd5;font-size:.8rem}.notice{padding:16px 18px;background:var(--blue);border-left:3px solid #65859a;border-radius:0 5px 5px 0;line-height:1.6;font-size:.875rem;margin:20px 0}.notice.warning{background:#fff1e8;border-color:var(--accent)}.notice.error{background:#fceae6;border-color:var(--red);color:var(--red)}.workspace{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1520px;margin:auto}.sidebar{padding:35px 20px 35px 30px;border-right:1px solid var(--line)}.sidebar .eyebrow{padding-left:12px}.stepnav{display:flex;flex-direction:column;gap:5px}.step-link{display:grid;grid-template-columns:25px 1fr auto;gap:9px;text-align:left;padding:13px 12px;background:transparent;color:var(--muted);border-radius:6px;font-size:.875rem;line-height:1.4;align-items:center}.step-link .num{font-size:.75rem;opacity:.7}.step-link:hover{background:#e7edf2}.step-link.active{background:var(--ink);color:white}.check{color:#528970;font-size:.8rem}.step-link.active .check{color:#a8d7c1}.sidebar-bottom{margin:32px 12px 0;font-size:.8rem;color:var(--muted);line-height:1.7}.exercise{padding:35px 4vw 48px;max-width:1100px;width:100%}.exercise-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:7px 10px;background:#e6edf2;font-size:.75rem;border-radius:4px;font-weight:700}.chip.level{background:#fff0e9;color:#9f431d}.timer-box{text-align:right;min-width:125px}.timer{font-size:1.85rem;letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-weight:700}.timer-box small{display:block;font-size:.75rem}.overtime{color:#a64919}.exercise h1{font-size:clamp(1.8rem,3.2vw,2.55rem);max-width:820px}.exercise .lead{color:var(--muted);margin:16px 0 25px;max-width:760px}.brief{background:#fff;border:1px solid var(--line);border-radius:8px;padding:23px 26px;margin-bottom:24px}.brief .eyebrow{margin-bottom:12px}.context{white-space:pre-line;font-size:.94rem;line-height:1.75;color:#3e5563}.tasks{list-style:none;counter-reset:task;margin:24px 0 0;padding:0;display:grid;gap:16px}.tasks li{counter-increment:task;display:flex;gap:13px;line-height:1.6;font-size:.94rem}.tasks li:before{content:counter(task);width:24px;height:24px;flex:0 0 24px;border:1px solid #d7e1e8;border-radius:50%;text-align:center;font-size:.75rem;line-height:23px;font-weight:700;color:var(--muted);margin-top:1px}.answer-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.answer-head label{font-weight:700;font-size:.94rem}.save-status{font-size:.8rem;color:var(--green)}.save-status.error{color:var(--red)}textarea{display:block;width:100%;padding:20px;border:1px solid #bacbd6;border-radius:7px;background:#fff;color:var(--ink);line-height:1.7;resize:vertical;min-height:280px;font-size:1rem}textarea::placeholder{color:#8a9ba6}.answer-meta{display:flex;justify-content:space-between;gap:20px;margin-top:9px;color:var(--muted);font-size:.8rem}.bottom-actions{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:25px}.progress-line{height:3px;background:#e0e7ed}.progress-line div{height:100%;background:var(--accent)}.table-wrap{overflow-x:auto;margin-top:20px}table{border-collapse:collapse;width:100%;font-size:.875rem;text-align:left}th{background:var(--paper);color:var(--muted);font-weight:700}td,th{padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}.video-frame{aspect-ratio:16/9;background:#112632;border-radius:9px;overflow:hidden;position:relative;display:grid;place-items:center;color:#bdccd4;margin:20px 0}.video-frame video{width:100%;height:100%;object-fit:contain}.video-empty{position:absolute;text-align:center;padding:25px}.video-empty strong{display:block;font-size:1.3rem;color:white;margin-bottom:10px}.record-badge{position:absolute;top:16px;left:16px;background:#ac2f23;padding:8px 13px;border-radius:5px;color:white;font-variant-numeric:tabular-nums}.record-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.consent{display:flex;align-items:flex-start;gap:12px;font-size:.875rem;line-height:1.6}.consent input{margin-top:5px;width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}details{margin:20px 0;border:1px solid var(--line);border-radius:6px;background:#fff;padding:16px}summary{cursor:pointer;font-weight:700;font-size:.9rem}.strategy-copy{white-space:pre-wrap;line-height:1.7;font-size:.9rem;margin-top:18px;max-height:300px;overflow:auto}.short-text{min-height:100px}.center-card{max-width:740px;margin:0 auto;padding:65px 25px}.center-card h1{margin-bottom:22px}.center-card .lead{color:var(--muted);margin-bottom:25px}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:.9rem}.summary-row button{background:none;text-decoration:underline;color:var(--ink)}.done-mark{height:55px;width:55px;border-radius:50%;background:#dfefe7;color:var(--green);font-size:1.8rem;display:grid;place-items:center;margin-bottom:25px}.form-field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}.form-field label{font-size:.875rem;font-weight:700}input,select{padding:13px 14px;background:white;border:1px solid #bacbd6;border-radius:6px;color:var(--ink);max-width:100%}.admin-shell{max-width:1260px;padding:45px 28px;margin:auto}.admin-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:30px}.admin-heading h1{font-size:2.5rem}.create-form{display:flex;align-items:flex-end;gap:15px;flex-wrap:wrap}.create-form .form-field{margin:0;flex:1;min-width:220px}.admin-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.candidate-card{padding:23px;border:1px solid var(--line);background:white;border-radius:9px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.candidate-card h3{overflow-wrap:anywhere}.status{font-size:.75rem;font-weight:700;padding:6px 9px;border-radius:4px;background:var(--blue)}.status.sent{background:#e0f0e8;color:var(--green)}.candidate-card .btn{margin-top:auto;width:100%}.admin-detail{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.evaluation{position:sticky;top:25px;align-self:start}.evaluation .score{font-size:2.4rem;letter-spacing:-.05em;margin:20px 0}.score-field{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;font-size:.85rem}.score-field select{padding:7px;min-width:64px}.answer-copy{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;margin-top:20px;font-size:.94rem}.review-block{margin-bottom:18px}.rubric{font-size:.85rem;color:var(--muted);line-height:1.7;margin-top:15px}.link-result{overflow-wrap:anywhere}.readonly-video{width:100%;max-height:450px;background:#142e3a;border-radius:7px;margin-top:16px}.empty-state{text-align:center;padding:60px 20px;color:var(--muted)}.info-line{display:flex;gap:15px;flex-wrap:wrap;align-items:center;margin:15px 0}.stretch{width:100%}.review-notes{min-height:140px;font-size:.875rem;padding:12px}.admin-video{margin-bottom:20px}.logout-space{margin-left:auto}dialog{max-width:500px;width:calc(100% - 40px);border:1px solid var(--line);border-radius:12px;padding:30px;color:var(--ink)}dialog::backdrop{background:#142e3a80}dialog h2{margin-bottom:15px}dialog .bottom-actions{margin-top:25px}.message{min-height:24px;margin-top:12px;font-size:.875rem;color:var(--red)}.print-only{display:none}
@media(max-width:1000px){.top{gap:25px}.header-tag{display:none}.intro{gap:35px}.workspace{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-left:12px}.exercise{padding:30px 24px}.admin-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-detail{grid-template-columns:minmax(0,1fr)}.evaluation{position:static;grid-row:1}.score-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}}
@media(max-width:700px){.top{height:75px;padding:0 22px;gap:20px}.brand{font-size:1.8rem}.header-label{font-size:.65rem;line-height:1.6;max-width:180px;letter-spacing:.07em}.intro{display:block;padding:35px 22px}.program{margin-top:32px;padding:24px}.facts{gap:25px}.workspace{display:block}.sidebar{padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .eyebrow,.sidebar-bottom{display:none}.stepnav{flex-direction:row;overflow-x:auto;gap:8px;padding:3px}.step-link{display:flex;white-space:nowrap;padding:10px 13px}.step-link .check{display:none}.exercise{padding:25px 20px}.exercise-top{margin-bottom:23px}.brief{padding:20px}.timer{font-size:1.55rem}.timer-box{min-width:105px}.exercise h1{font-size:2rem}.bottom-actions{align-items:stretch}.bottom-actions .btn{padding:12px 15px}.answer-head{align-items:flex-start;flex-direction:column}.answer-meta{font-size:.75rem}footer{font-size:.75rem;flex-direction:column;gap:8px;padding:22px}.admin-shell{padding:30px 20px}.admin-list{grid-template-columns:1fr}.admin-heading{align-items:flex-start;flex-direction:column}.admin-heading h1{font-size:2rem}.score-fields{display:block}.create-form{align-items:stretch}.create-form .btn{width:100%}.record-controls .btn{flex:1}.center-card{padding:40px 22px}.header-label+.text-button{margin-left:auto}.fact strong{font-size:1.5rem}}
@media(prefers-reduced-motion:no-preference){.btn,.step-link{transition:background .15s ease} .intro,.exercise,.center-card{animation:appear .2s ease}@keyframes appear{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media print{.top,footer,.sidebar,.btn,.evaluation,.admin-heading button,.video-frame{display:none!important}.admin-detail{display:block}.card{break-inside:avoid}.admin-shell{padding:0}.print-only{display:block}body{background:white}}

.share-card{margin-bottom:28px}.share-card h2{margin-bottom:12px}.share-choice{margin:18px 0}.share-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.share-actions a.text-button{cursor:pointer}.share-card .message:empty{display:none}@media(max-width:700px){.share-actions .btn{width:100%}}@media print{.share-card{display:none!important}}
.editor-shell{max-width:1420px}.editor-grid{display:grid;grid-template-columns:265px minmax(0,1fr);gap:25px}.editor-sidebar{align-self:start;position:sticky;top:20px}.editor-sidebar nav{display:grid;gap:5px;margin-bottom:20px}.editor-sidebar .step-link{grid-template-columns:25px 1fr;width:100%;min-width:0}.editor-item-meta{display:block;font-size:.75rem}.active .editor-item-meta{color:#c2d3df}.editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.editor-moves{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.editor-moves .btn{font-size:.875rem;min-height:40px;padding:8px 15px}.editor-text{min-height:80px;padding:14px;resize:vertical}.settings-fields{padding-top:24px}.test-settings{margin-bottom:30px}.private-criteria{border-top:1px solid var(--line);padding-top:24px;margin-top:25px}.test-preview{max-width:900px;max-height:90vh;overflow:auto}.preview-exercise{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.preview-exercise h2{margin-bottom:18px}.preview-exercise .context{margin-top:18px}.preview-exercise li{margin:12px 0}.editor-form .admin-heading{margin-bottom:18px}.editor-form .admin-heading h2{overflow-wrap:anywhere}@media(max-width:900px){.editor-grid{grid-template-columns:1fr}.editor-sidebar{position:static}.editor-sidebar nav{display:flex;overflow-x:auto}.editor-sidebar .step-link{min-width:185px}.editor-fields{grid-template-columns:1fr}.editor-shell .admin-heading{align-items:flex-start;flex-direction:column}}
