:root{--bg:#f4f6f9;--surface:#fff;--ink:#1b2433;--muted:#5e6b7e;--line:#dde3ec;--brand:#1f3a68;--accent:#2f5fb3;--accent-soft:#e9f0fb;--ok:#1b7a4b;--ok-soft:#e4f4ec;--warn:#9a6200;--warn-soft:#fdf3df;--bad:#b3261e;--bad-soft:#fcebea;--radius:10px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}.btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:0 16px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:#f0f3f8}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:#274f97}.btn.danger{color:var(--bad);border-color:#eec4c1}.btn.small{min-height:32px;padding:0 10px;font-size:13px}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.input,.textarea,.select{background:#fff;border:1px solid #c9d2df;border-radius:8px;width:100%;min-height:42px;padding:8px 12px}.textarea{resize:vertical;min-height:90px}.input:focus,.textarea:focus,.select:focus,.score:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.label{margin-bottom:6px;font-weight:600;display:block}.hint{color:var(--muted);font-size:13px}.error{color:var(--bad);font-size:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.notice{background:var(--accent-soft);color:#1d3f7a;border-radius:8px;padding:12px 14px;font-size:14px}.notice.warn{background:var(--warn-soft);color:var(--warn)}.notice.bad{background:var(--bad-soft);color:var(--bad)}.notice.ok{background:var(--ok-soft);color:var(--ok)}.badge{white-space:nowrap;border-radius:99px;padding:2px 9px;font-size:12.5px;font-weight:700;display:inline-block}.badge.todo{color:#55627a;background:#edf0f4}.badge.draft{background:var(--warn-soft);color:var(--warn)}.badge.submitted{background:var(--ok-soft);color:var(--ok)}.badge.reopened{background:var(--bad-soft);color:var(--bad)}.login-wrap{place-items:center;min-height:100dvh;padding:16px;display:grid}.login{width:100%;max-width:440px}.login h1{margin-bottom:4px;font-size:22px}.login .org{color:var(--muted);margin-bottom:20px;font-size:14px}.login form{gap:14px;display:grid}.login .sabun{letter-spacing:.25em;text-align:center;font-size:20px}.top{background:var(--brand);color:#fff}.top-in{align-items:center;gap:12px;max-width:1120px;margin:0 auto;padding:12px 16px;display:flex}.top h1{white-space:nowrap;font-size:16px}.top .who{opacity:.92;margin-left:auto;font-size:14px}.top .btn{white-space:nowrap;color:#fff;background:0 0;border-color:#fff6;min-height:32px;padding:0 10px;font-size:13px}.top .btn:hover:not(:disabled){background:#ffffff1f}.page{gap:16px;max-width:1120px;margin:0 auto;padding:20px 16px 48px;display:grid}.progress-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.progress-head strong{font-size:20px}.bar{background:#e6ebf2;border-radius:99px;height:8px;overflow:hidden}.bar>i{background:var(--accent);height:100%;display:block}.group h2{align-items:baseline;gap:8px;margin-bottom:8px;font-size:15px;display:flex}.group h2 span{color:var(--muted);font-size:13px;font-weight:500}.rows{gap:6px;display:grid}.row{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:12px;padding:12px 14px;display:flex}.row:hover{border-color:var(--accent)}.row .name{font-weight:700}.row .meta{color:var(--muted);font-size:13.5px}.row .right{align-items:center;gap:8px;margin-left:auto;display:flex}.eval{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;max-width:1120px;margin:0 auto;padding:16px 16px 110px;display:grid}.side{max-height:calc(100dvh - 24px);padding:10px;position:sticky;top:12px;overflow:auto}.side a,.side button.link{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;width:100%;padding:7px 8px;font-size:14px;display:flex}.side a:hover,.side button.link:hover{background:#f0f3f8}.side button.link.on{background:var(--accent-soft);font-weight:700}.side .gt{color:var(--muted);margin:10px 8px 4px;font-size:12.5px;font-weight:700}.side .dot{border-radius:50%;flex:none;width:9px;height:9px;margin-left:auto}.dot.todo{background:#c8d0dc}.dot.draft{background:#e0a100}.dot.submitted{background:var(--ok)}.who-card{flex-wrap:wrap;align-items:baseline;gap:6px 16px;display:flex}.who-card .big{font-size:20px;font-weight:800}.section{padding:0;overflow:hidden}.section-head{border-bottom:1px solid var(--line);background:#f1f4f9;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.section-head h3{font-size:15.5px}.section-head .sum{white-space:nowrap;font-weight:800}.item{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:16px;padding:14px 16px;display:grid}.item:last-child{border-bottom:0}.item .n{font-weight:700}.item .d{color:var(--muted);margin-top:2px;font-size:13.5px}.bh{margin-top:6px;font-size:13.5px}.bh summary{cursor:pointer;color:var(--accent);width:fit-content;font-weight:600}.bh ol{color:#3d4a5e;gap:3px;margin:6px 0 0;padding-left:20px;display:grid}.score-box{align-items:center;gap:6px;display:flex}.score{text-align:center;background:#fff;border:1px solid #c9d2df;border-radius:8px;width:72px;min-height:44px;font-size:18px;font-weight:700}.score.bad{border-color:var(--bad);background:var(--bad-soft)}.score:disabled{color:#4b576b;background:#f0f2f6}.of{color:var(--muted);white-space:nowrap;font-size:13.5px}.guide summary{cursor:pointer;font-size:14px;font-weight:600}.guide table{margin-top:10px}.foot{background:var(--surface);border-top:1px solid var(--line);z-index:20;position:fixed;bottom:0;left:0;right:0}.foot-in{flex-wrap:wrap;align-items:center;gap:8px;max-width:1120px;margin:0 auto;padding:10px 16px;display:flex}.foot .state{color:var(--muted);font-size:13.5px}.foot .total{font-weight:800}.foot .sp{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.table-wrap{overflow-x:auto}table.t{border-collapse:collapse;width:100%;font-size:14px}table.t th{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;background:#f1f4f9;padding:8px 10px;font-size:13px}table.t td{border-bottom:1px solid var(--line);padding:8px 10px}table.t .num{text-align:right;font-variant-numeric:tabular-nums}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:10px 14px;font-weight:600}.tabs a.on{color:var(--accent);border-bottom-color:var(--accent)}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px}.stat b{font-size:24px;display:block}.stat span{color:var(--muted);font-size:13px}.grid2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.stack{gap:12px;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card h2{margin-bottom:10px;font-size:16px}.formgrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.check{align-items:center;gap:8px;display:flex}.list-msg{max-height:240px;margin:6px 0 0;padding-left:18px;font-size:14px;overflow:auto}@media (max-width:860px){.top-in{flex-wrap:wrap;justify-content:space-between}.top .who{order:3;width:100%;margin-left:0;font-size:13px}.eval{grid-template-columns:minmax(0,1fr)}.side{display:none}.item{grid-template-columns:minmax(0,1fr);gap:8px}.row{flex-wrap:wrap}}
