:root{--ink:#1d1b2e;--muted:#5d5a70;--line:#d8d6e3;--surface:#fff;--accent:#3f3a8c;--accent-ink:#fff;--danger:#a4262c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);word-break:keep-all;background:#f6f5fa;font-family:Apple SD Gothic Neo,Pretendard,Noto Sans KR,system-ui,sans-serif;line-height:1.55}*{box-sizing:border-box}body{margin:0}.page{background:var(--surface);flex-direction:column;gap:1rem;max-width:28rem;min-height:100dvh;margin:0 auto;padding:2rem 1.25rem;display:flex}h1{margin:0;font-size:1.5rem;line-height:1.3}h2{margin:.5rem 0 0;font-size:1.05rem}p{margin:0}ol{margin:0;padding-left:1.25rem}form{flex-direction:column;gap:1rem;display:flex}label{flex-direction:column;gap:.35rem;font-weight:600;display:flex}input{border:1px solid var(--line);min-height:3rem;font:inherit;border-radius:.5rem;padding:0 .85rem;font-size:1rem;font-weight:400}button{min-height:3rem;font:inherit;cursor:pointer;border-radius:.5rem;padding:0 1rem;font-weight:600}button.primary{background:var(--accent);color:var(--accent-ink);border:0}button.secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}button:disabled{opacity:.55;cursor:default}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.error{color:var(--danger);font-weight:600}.eyebrow{color:var(--muted);font-size:.9rem}.footnote{color:var(--muted);font-size:.875rem}.footnote a{color:inherit}.qr{align-self:center}.secret{overflow-wrap:anywhere;font-size:.875rem}.secret code{font-size:.95rem}.list{border:1px solid var(--line);border-radius:.5rem;margin:0;padding:0;list-style:none}.list li{padding:.8rem .9rem}.list li+li{border-top:1px solid var(--line)}.shell{background:var(--surface);max-width:36rem;min-height:100dvh;margin:0 auto}.shell .page{max-width:none;min-height:0;padding-top:1.25rem;padding-bottom:1.25rem}.topbar{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem .5rem;display:flex}.who{font-weight:600}.tabs{border-bottom:1px solid var(--line);gap:.25rem;padding:0 1rem;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:3px solid #0000;padding:.75rem .5rem;text-decoration:none}.tabs a.active{color:var(--ink);border-bottom-color:var(--accent);font-weight:700}.foot{padding:0 1.25rem 1.5rem}.crumb{font-size:.9rem}.crumb a{color:var(--muted)}section{flex-direction:column;gap:.75rem;display:flex}fieldset{border:0;flex-direction:column;gap:1rem;min-width:0;margin:0;padding:0;display:flex}legend{margin-bottom:.5rem;padding:0;font-size:1.05rem;font-weight:700}select{border:1px solid var(--line);background:var(--surface);min-height:3rem;font:inherit;border-radius:.5rem;padding:0 .6rem;font-size:1rem;font-weight:400}input[type=file]{padding:.65rem}input:disabled,select:disabled{color:var(--ink);background:#f6f5fa}input,select{width:100%;min-width:0}input[type=checkbox]{width:1.35rem;height:1.35rem;min-height:0;accent-color:var(--accent)}.card{border:1px solid var(--line);border-radius:.5rem;flex-direction:column;gap:1rem;padding:1rem;display:flex}.card h2{margin:0}.inline{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.75rem;display:grid}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.actions>*{flex:8rem}a.button{text-align:center;border-radius:.5rem;justify-content:center;align-items:center;min-height:3rem;padding:0 1rem;font-weight:600;text-decoration:none;display:inline-flex}a.button.secondary{border:1px solid var(--line);color:var(--ink)}.link-button{min-height:2.75rem;color:var(--muted);white-space:nowrap;background:0 0;border:0;padding:0 .25rem;font-weight:400;text-decoration:underline}.list li a{color:inherit;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin:-.8rem -.9rem;padding:.8rem .9rem;text-decoration:none;display:flex}.list .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.list .stack{flex-direction:column;gap:.5rem;display:flex}.list small{color:var(--muted)}.check{flex-direction:row;align-items:center;gap:.5rem;min-height:2.75rem;font-weight:400}.compact{white-space:nowrap;flex-direction:row;align-items:center;gap:.5rem;font-size:.9rem;font-weight:400}.compact input{width:4.5rem;min-height:2.5rem}.compact select{width:auto;min-height:2.5rem}.decision{color:var(--danger);font-size:.9rem}.badge{color:var(--accent);white-space:nowrap;background:#ececf6;border-radius:1rem;padding:.1rem .5rem;font-size:.8rem;font-weight:600}.badge.warn{color:var(--danger);background:#fdecec}.badge.muted{color:var(--muted);background:#f0f0f3}.hint{color:var(--muted);font-size:.875rem;font-weight:400}.warn-text{color:var(--danger)}.ok{color:#1c6b3c;font-weight:600}textarea{border:1px solid var(--line);width:100%;font:inherit;resize:vertical;border-radius:.5rem;padding:.6rem .85rem;font-size:1rem;font-weight:400}.plan-text{white-space:pre-line}.students{flex-direction:column;gap:.75rem;display:flex}.student{border:1px solid var(--line);border-radius:.5rem;flex-direction:column;gap:.75rem;padding:.9rem;display:flex}.student.absent{background:#f6f5fa}.student-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.student-head strong{font-size:1.05rem}.item-row{flex-direction:column;gap:.35rem;display:flex}.item-label{font-size:.9rem;font-weight:600}.segments{flex-wrap:wrap;gap:.35rem;display:flex}.segments button{border:1px solid var(--line);background:var(--surface);min-height:2.75rem;color:var(--ink);flex:4rem;padding:0 .5rem;font-weight:400}.segments button[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:600}.score{align-items:center;gap:.5rem;display:flex}.score input{width:5rem}.below-half input:first-child{border-color:var(--danger);border-width:2px}details>summary{cursor:pointer;min-height:2.75rem;color:var(--muted);align-items:center;display:flex}details[open]>summary{color:var(--ink)}.save-bar{z-index:1;padding:.75rem 1.25rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);flex-direction:column;gap:.5rem;margin:0 -1.25rem -1.25rem;display:flex;position:sticky;bottom:0}.save-bar .counts{color:var(--muted);justify-content:space-between;gap:.5rem;font-size:.875rem;display:flex}.over{color:var(--danger);font-weight:700}.link-button.left{align-self:flex-start}.left-gap{margin-left:.5rem}.preview{border:1px solid var(--accent);border-radius:.5rem;padding:1rem}.preview h2{margin:0}.message-text{white-space:pre-line;overflow-wrap:anywhere;background:#f6f5fa;border-radius:.5rem;margin:.25rem 0 .75rem;padding:.75rem;font-size:.925rem}.send-results{margin:0;padding:0;list-style:none}.send-results li{border-top:1px solid var(--line);padding:10px 0}.send-row{margin:0 0 .5rem 1.6rem}
