:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17313b;background:#f3f7f8;font-synthesis:none;--navy:#123b4a;--teal:#137c78;--line:#dce6e9;--muted:#627780;--paper:#fff;--soft:#eaf4f3}
*{box-sizing:border-box}body{margin:0}.topbar{background:var(--navy);color:white;padding:15px max(20px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px}.brandmark{width:42px;height:42px;border-radius:12px;background:#d3eeea;color:var(--navy);display:grid;place-items:center;font-weight:900}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:#c8dce0;margin-top:3px}.top-actions{display:flex;align-items:center;gap:12px}.save-state{font-size:12px;color:#d0e4e5}.shell{max-width:1120px;margin:0 auto;padding:30px 22px 20px}.intro{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:center;margin-bottom:25px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--teal);margin:0 0 8px}h1{font-size:clamp(26px,4vw,36px);letter-spacing:-1px;margin:0 0 8px;color:#102f3a}h2{font-size:20px;margin:0 0 5px}.muted{color:var(--muted);font-size:13px;line-height:1.55;margin:4px 0}.score-card{background:var(--navy);color:white;padding:18px 20px;border-radius:16px;box-shadow:0 8px 24px #123b4a1a}.score-card>span{font-size:11px;color:#c5dcdf}.score-card>div:nth-child(2){margin:4px 0 10px}.score-card strong{font-size:38px;letter-spacing:-1px}.score-card small{color:#b9d0d4}.score-card #scoreHint{display:block;margin-top:9px;font-size:10px}.progress{height:5px;background:#45636b;border-radius:5px;overflow:hidden}.progress i{display:block;width:0;height:100%;background:#75d5c3;transition:width .2s}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:20px;overflow-x:auto}.tab{white-space:nowrap;background:transparent;border:0;padding:13px 16px;color:var(--muted);font-weight:700;cursor:pointer;border-bottom:3px solid transparent}.tab.active{color:var(--teal);border-bottom-color:var(--teal)}.count{background:#e1efed;border-radius:10px;padding:2px 7px;font-size:11px}.panel{background:white;border:1px solid var(--line);border-radius:16px;padding:25px;margin-bottom:18px;box-shadow:0 5px 20px #193d4707}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:25px}.form-grid.compact{margin-bottom:12px}.form-grid label,.criterion label,.setting-item label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#37515a}.span2{grid-column:span 2}input,textarea,select{width:100%;border:1px solid #d5e1e5;border-radius:9px;padding:11px 12px;background:#fff;color:#193942;font:inherit;font-size:13px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #137c7818}textarea{resize:vertical}.criteria-section{border:1px solid var(--line);border-radius:12px;margin:18px 0;overflow:hidden}.criteria-title{background:#f5f9fa;padding:15px 17px;display:flex;justify-content:space-between;align-items:center;gap:12px}.criteria-title h3{font-size:14px;margin:0}.section-total{font-size:12px;color:var(--muted);white-space:nowrap}.criterion{display:grid;grid-template-columns:42px 1fr 104px;align-items:center;gap:12px;padding:13px 16px;border-top:1px solid #edf2f3}.criterion-num{font-size:11px;font-weight:800;color:var(--teal);background:var(--soft);border-radius:7px;padding:7px 5px;text-align:center}.criterion p{font-size:13px;line-height:1.4;margin:0}.criterion .max-label{font-size:10px;color:var(--muted);margin-top:4px}.criterion input{padding:9px 10px;text-align:center;font-weight:800}.criterion input.invalid{border-color:#c44545;background:#fff4f4}.subpanel{border-top:1px solid var(--line);padding-top:23px;margin-top:24px}.note{background:#fff8e9;border-left:3px solid #d8a63c;padding:11px 13px;color:#6f5a2d;font-size:12px;line-height:1.5;border-radius:0 8px 8px 0}.bottom-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.btn{border:1px solid transparent;border-radius:9px;padding:11px 15px;font-size:12px;font-weight:800;cursor:pointer;transition:transform .12s,opacity .12s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--teal);color:white}.btn-outline{background:white;border-color:#cbdadd;color:#23444e}.btn-light{background:#e3f4f1;color:var(--navy)}.hidden{display:none!important}.toolbar{display:flex;gap:10px;margin:16px 0}.record{border:1px solid var(--line);border-radius:11px;padding:15px;display:flex;justify-content:space-between;gap:15px;align-items:center;margin:10px 0}.record h3{margin:0 0 5px;font-size:14px}.record p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.record-actions{display:flex;gap:6px;flex-wrap:wrap}.record-actions button{font-size:11px;padding:8px 10px}.empty{padding:30px;text-align:center;color:var(--muted);font-size:13px;background:#f7fafb;border-radius:10px}.settings-section{border:1px solid var(--line);border-radius:12px;padding:15px;margin:14px 0}.settings-section-head{display:flex;gap:8px;margin-bottom:10px}.settings-section-head input{font-weight:800}.setting-item{display:grid;grid-template-columns:70px 1fr 95px 38px;gap:9px;align-items:end;padding:9px 0;border-top:1px solid #edf2f3}.setting-item input{padding:9px}.btn-danger{color:#a52e2e;border-color:#efcaca;background:#fff8f8}footer{display:flex;justify-content:space-between;gap:10px;padding:18px 2px;color:#7b8d93;font-size:11px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#123b4a;color:white;padding:12px 18px;border-radius:10px;box-shadow:0 8px 30px #0002;font-size:13px;z-index:9;max-width:90vw}.toast.error{background:#8e2c2c}@media(max-width:700px){.topbar{padding:12px 16px}.save-state{display:none}.shell{padding:22px 13px}.intro{grid-template-columns:1fr;gap:15px}.score-card{display:grid;grid-template-columns:1fr auto;align-items:center}.score-card>div:nth-child(2){grid-column:2;grid-row:1/3;margin:0}.score-card .progress,.score-card #scoreHint{grid-column:1/-1}.panel{padding:16px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.span2{grid-column:span 2}.criterion{grid-template-columns:32px 1fr 82px;gap:8px;padding:12px 9px}.criterion p{font-size:12px}.criteria-title{padding:13px}.section-head{align-items:flex-start}.setting-item{grid-template-columns:55px 1fr 72px 34px;gap:5px}.setting-item input{font-size:11px;padding:8px 5px}.toolbar{flex-wrap:wrap}.record{align-items:flex-start;flex-direction:column}.record-actions{width:100%}footer{flex-direction:column}}@media print{body{background:white}.topbar,.tabs,.intro .score-card,.section-head button,.bottom-actions,.note,.toolbar,.record-actions,footer{display:none!important}.shell{max-width:none;padding:0}.panel{border:0;box-shadow:none;padding:0}.hidden{display:none!important}#evaluationPanel{display:block!important}.form-grid input,.criterion input{border:0;border-bottom:1px solid #bbb;border-radius:0;padding:3px}.criteria-section{break-inside:avoid}.criterion{padding:6px}.criteria-title{padding:8px;background:#eee!important}h1{font-size:22px}.section-head{margin-bottom:8px}.subpanel{margin-top:12px}.eyebrow{margin-top:10px}}

.section-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){.section-head-actions{flex-direction:column;align-items:stretch}.section-head-actions .btn{white-space:nowrap}}
