:root{--ink:#172026;--muted:#64717b;--line:#d9e1e7;--paper:#f8fafb;--soft:#edf4f3;--brand:#176b6a;--brand-dark:#0f5150;--danger:#b84632;--ok:#217447;--warn:#9a6414;--white:#fff;--shadow:0 12px 32px #18202614}*{box-sizing:border-box}body{color:var(--ink);background:linear-gradient(#edf4f3 0,#f8fafb 360px);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fafbe6;border-bottom:1px solid #d9e1e7db;justify-content:space-between;align-items:center;gap:18px;padding:16px clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.brand-title{font-size:17px;font-weight:780}.brand-subtitle,.muted{color:var(--muted)}.brand-subtitle{margin-top:3px;font-size:13px}.shell{width:min(1180px,100% - 32px);margin:0 auto;padding:32px 0 64px}.hero{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:end;gap:22px;margin-bottom:22px;display:grid}h1{letter-spacing:0;margin:0;font-size:clamp(34px,5vw,58px);line-height:1.05}h2,h3{letter-spacing:0;margin:0}.hero p{max-width:720px;color:var(--muted);font-size:16px;line-height:1.75}.grid{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:18px;display:grid}.two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.panel,.card{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:8px}.panel,.card,.question-card,.detail-item{padding:18px}.stack{gap:14px;display:grid}.section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:16px;padding-bottom:14px;display:flex}.hint{color:var(--muted);font-size:14px;line-height:1.55}.pill{background:var(--soft);min-height:26px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.pill.ok{color:var(--ok);background:#e3f3ea}.pill.warn{color:var(--warn);background:#fff0d5}.btn{background:var(--brand);min-height:40px;color:var(--white);text-align:center;border-radius:8px;justify-content:center;align-items:center;padding:0 15px;font-weight:760;text-decoration:none;display:inline-flex}.btn.secondary{color:var(--ink);background:#e7eef1}.btn.danger{background:var(--danger)}.btn.ghost{border:1px solid var(--line);color:var(--brand);background:0 0}label{color:var(--muted);margin-bottom:7px;font-size:13px;font-weight:760;display:block}input,textarea{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);border-radius:8px;outline:none;padding:12px}textarea{resize:vertical;min-height:126px;line-height:1.6}input:focus,textarea:focus{border-color:#176b6aa6;box-shadow:0 0 0 3px #176b6a1f}.question-card,.detail-item{border:1px solid var(--line);background:var(--paper);border-radius:8px;gap:12px;display:grid}.question-title{white-space:pre-line;font-weight:760;line-height:1.55}.recorder-row{grid-template-columns:auto auto minmax(180px,1fr) auto;align-items:center;gap:10px;display:grid}audio{width:100%;min-width:180px}.timer{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-weight:760}.submission-row{border:1px solid var(--line);background:var(--white);text-align:left;border-radius:8px;gap:8px;padding:14px;display:grid}.submission-row.active{background:var(--soft);border-color:#176b6a8c}.overall{border:1px solid var(--line);background:var(--paper);border-radius:8px;gap:12px;padding:14px;display:grid}.overall-score{color:var(--muted);justify-content:space-between;gap:12px;font-weight:760;display:flex}.overall-score strong{color:var(--brand);font-size:34px;line-height:1}.detail-head{justify-content:space-between;align-items:center;gap:12px;font-weight:760;display:flex}.detail-score{max-width:110px}.question-edit-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.error{color:var(--danger)}@media (max-width:900px){.topbar,.hero,.grid,.two{grid-template-columns:1fr}.topbar{display:grid}.recorder-row,.question-edit-row{grid-template-columns:1fr}audio{min-width:0}.btn{width:100%}.section-head{display:grid}}
