html{touch-action:manipulation}*{-webkit-tap-highlight-color:transparent}.hidden{display:none!important}.kit-series-edu{background:var(--surface,#fff);border:1px solid var(--border,#dde);box-shadow:var(--shadow,0 1px 2px #0000000f);border-radius:16px;flex-direction:column;margin-top:24px;padding:18px;display:flex}.kit-series-edu>*+*{margin-top:8px}.kit-series-title{letter-spacing:-.01em;font-size:16px;font-weight:800}.kit-series-desc{color:var(--text-sub,#667);font-size:14px}.kit-series-desc a{color:var(--accent,#06c);font-weight:700}.kit-series-cta{color:var(--accent,#06c);font-size:14px;font-weight:800;text-decoration:none}.kit-qr-open{border:1.5px solid var(--border,#dde);background:var(--surface,#fff);width:100%;min-height:52px;color:var(--text,#123);cursor:pointer;box-shadow:var(--shadow,0 1px 2px #0000000f);border-radius:12px;margin-top:18px;font-family:inherit;font-size:15px;font-weight:800;display:block}#kitQrOverlay{z-index:60;background:#0009;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;top:0;bottom:0;left:0;right:0}#kitQrOverlay.show{display:flex}.kit-qr-box{background:var(--surface,#fff);text-align:center;max-width:340px;box-shadow:var(--shadow,0 4px 16px #00000026);border-radius:18px;padding:22px}.kit-qr-box h2{color:var(--text,#123);margin:0 0 12px;font-size:17px}.kit-qr-box img{box-sizing:border-box;background:#fff;border-radius:10px;width:100%;max-width:240px;padding:8px}.kit-qr-url{color:var(--text-sub,#667);word-break:break-all;margin:10px 0 0;font-size:13px}.kit-qr-tip{color:var(--text-sub,#667);background:var(--accent-soft,#eef);text-align:left;border-radius:10px;margin:12px 0 0;padding:10px;font-size:13.5px;line-height:1.6}.kit-qr-tip b{color:var(--text,#123)}.kit-qr-close{background:var(--accent,#06c);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;min-height:46px;margin-top:14px;font-family:inherit;font-size:15px;font-weight:800}.kit-footer{text-align:center;color:var(--text-faint,#99a);margin-top:28px;font-size:12.5px}.kit-footer a{color:inherit}.kit-linklike{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}:root{--bg:#f4f5fa;--surface:#fff;--surface-2:#f7f7fc;--border:#dfe1ec;--text:#1b1d2b;--text-sub:#5a5f74;--text-faint:#8f93a8;--accent:#4f46e5;--accent-ink:#fff;--accent-soft:#eef0ff;--danger:#dc2626;--danger-soft:#fef2f2;--ok:#059669;--shadow:0 1px 2px #1416280d, 0 4px 16px #1416280a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#101119;--surface:#1a1c27;--surface-2:#222533;--border:#2f3245;--text:#eceef6;--text-sub:#a3a7bd;--text-faint:#6f7390;--accent:#818cf8;--accent-ink:#12132a;--accent-soft:#24264a;--danger:#f87171;--danger-soft:#3a1d22;--ok:#34d399;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Noto Sans KR,sans-serif}.wrap{max-width:1080px;margin:0 auto;padding:20px 16px 40px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}header.app{margin-bottom:18px}.brand{align-items:center;display:flex}.brand .logo{background:var(--accent);width:48px;height:48px;box-shadow:var(--shadow);border-radius:14px;flex:none;justify-content:center;align-items:center;margin-right:12px;font-size:26px;display:flex}.brand h1{letter-spacing:-.02em;margin:0;font-size:22px}.tagline{color:var(--text-sub);margin:3px 0 0;font-size:13px;line-height:1.45}.layout{grid-template-columns:232px minmax(0,1fr);align-items:start;gap:20px;display:grid}.menu{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:10px;position:-webkit-sticky;position:sticky;top:16px}.menu-group+.menu-group{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.menu-cap{color:var(--text-faint);letter-spacing:.02em;margin:6px 10px;font-size:12px;font-weight:700}.menu-item{min-height:44px;color:var(--text);border-radius:10px;align-items:center;padding:0 10px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.menu-item:hover{background:var(--surface-2)}.menu-item[aria-current=page]{background:var(--accent);color:var(--accent-ink)}.mi-icon{flex:none;width:26px}.mi-label{flex:1}.mi-count{text-align:center;background:var(--accent-soft);min-width:22px;color:var(--accent);border-radius:99px;padding:1px 6px;font-size:12px;font-weight:800}.mi-count:empty{display:none}.menu-item[aria-current=page] .mi-count{color:inherit;background:#ffffff38}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;min-width:0;padding:22px 24px 26px}.panel-head h2{letter-spacing:-.02em;margin:0;font-size:21px}.lede{color:var(--text-sub);margin:6px 0 0;font-size:14px;line-height:1.5}.tabs{border-bottom:1px solid var(--border);margin:18px 0 20px;display:flex}.tabs [role=tab]{font:inherit;color:var(--text-sub);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-height:44px;margin-bottom:-1px;margin-right:22px;padding:10px 4px;font-size:15px;font-weight:700}.tabs [aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.count{background:var(--surface-2);min-width:20px;color:var(--text-sub);border-radius:99px;margin-left:4px;padding:0 6px;font-size:12px;display:inline-block}.grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{border:0;grid-column:1/-1;min-width:0;margin:0;padding:0}.field.half{grid-column:span 1}.field>label,.field>legend{color:var(--text);margin-bottom:7px;padding:0;font-size:14px;font-weight:700;display:block}.req{color:var(--danger);margin-left:3px}input[type=text],input[type=date],input[type=time],input[type=url],input[type=tel],select,textarea{box-sizing:border-box;width:100%;min-height:46px;font:inherit;color:var(--text);background:var(--surface);border:1.5px solid var(--border);border-radius:11px;padding:10px 13px;font-size:15px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:120px;line-height:1.55}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[readonly]{background:var(--surface-2);color:var(--text-sub)}input[type=file]{font:inherit;color:var(--text-sub);font-size:14px}.inline{align-items:center;display:flex}.inline select{flex:none;width:auto;margin-right:8px}.inline input{flex:1;min-width:0}.suffix{color:var(--text-sub);white-space:nowrap;flex:none;margin-left:8px;font-size:14px}.computed{box-sizing:border-box;background:var(--accent-soft);min-height:46px;color:var(--accent);border-radius:11px;align-items:center;padding:0 14px;font-size:17px;font-weight:800;display:flex}.choices{flex-wrap:wrap;gap:8px;display:flex}.choice{cursor:pointer;border:1.5px solid var(--border);background:var(--surface);border-radius:11px;align-items:center;min-height:44px;padding:0 14px;font-size:15px;display:flex}.choice input{accent-color:var(--accent);width:18px;height:18px;margin:0 8px 0 0}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-soft)}.choices.cards .choice{flex-direction:column;flex:140px;justify-content:center;align-items:flex-start;padding:12px 14px;position:relative}.choices.cards .choice input{margin:0;position:absolute;top:12px;right:10px}.c-label{font-weight:700}.c-hint{color:var(--text-sub);margin-top:2px;font-size:13px}.check{cursor:pointer;align-items:center;min-height:46px;font-size:15px;font-weight:600;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);margin:0 10px 0 0}.field.solo{padding-top:28px}.hint{color:var(--text-faint);margin:6px 0 0;font-size:12.5px}.err{color:var(--danger);margin:6px 0 0;font-size:13px;font-weight:600}.err:empty{display:none}.field.invalid input:not([type=radio]):not([type=checkbox]),.field.invalid select,.field.invalid textarea,.field.invalid .choice{border-color:var(--danger)}.form-msg{background:var(--danger-soft);color:var(--danger);border-radius:10px;margin:20px 0 0;padding:10px 14px;font-size:14px;font-weight:700}.form-msg:empty{display:none}.form-actions{justify-content:flex-end;margin-top:22px;display:flex}.form-actions button+button{margin-left:10px}button.primary,button.ghost{font:inherit;cursor:pointer;border-radius:12px;min-height:48px;padding:0 22px;font-size:15px;font-weight:800}button.primary{background:var(--accent);color:var(--accent-ink);border:0}button.primary:hover{filter:brightness(1.06)}button.ghost{background:var(--surface);color:var(--text);border:1.5px solid var(--border)}button.ghost.danger{color:var(--danger)}button.armed{background:var(--danger);color:#fff;border-color:var(--danger)}#btn-submit{min-width:150px}.list-tools{justify-content:flex-end;margin-bottom:12px;display:flex}.list-tools button{min-height:40px;padding:0 14px;font-size:14px}.list-tools button+button{margin-left:8px}.table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 12px}th{background:var(--surface-2);color:var(--text-sub);font-size:13px;font-weight:700}tbody tr:last-child td{border-bottom:0}td{text-overflow:ellipsis;max-width:260px;overflow:hidden}.linklike{font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:3px;font-variant-numeric:tabular-nums;background:0 0;border:0;padding:4px 0;font-weight:700;text-decoration:underline}.empty{text-align:center;color:var(--text-sub);border:1.5px dashed var(--border);border-radius:12px;margin:0;padding:36px 12px;font-size:14px}.overlay{z-index:50;background:#0c0d188c;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.overlay.show{display:flex}.sheet{background:var(--surface);color:var(--text);box-sizing:border-box;border-radius:18px;width:100%;max-width:480px;max-height:calc(100vh - 32px);padding:26px 24px 22px;overflow-y:auto;box-shadow:0 20px 60px #00000040}.sheet h2{letter-spacing:-.02em;margin:0;font-size:19px}.done-mark{text-align:center;font-size:40px}#overlay-done .sheet{text-align:center}#overlay-done h2{margin-top:6px}.done-no{color:var(--text-sub);margin:14px 0 0;font-size:15px}.done-no strong{color:var(--accent);letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:22px;display:block}.done-summary{color:var(--text-sub);margin:12px 0 0;font-size:14px;line-height:1.5}.sheet-actions{margin-top:22px;display:flex}.sheet-actions button{flex:1}.sheet-actions button+button{margin-left:10px}.detail-meta{color:var(--text-sub);margin:6px 0 0;font-size:13px}.detail{grid-template-columns:120px 1fr;margin:16px 0 0;font-size:14px;display:grid}.detail dt,.detail dd{border-top:1px solid var(--border);margin:0;padding:9px 0}.detail dt{color:var(--text-sub);font-weight:700}.detail dd{white-space:pre-wrap;word-break:break-word}.muted{color:var(--text-faint)}@media (max-width:760px){.layout{grid-template-columns:1fr;gap:14px}.menu{-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:14px;padding:6px;display:flex;position:static;overflow-x:auto}.menu-group{flex:none;display:flex}.menu-group+.menu-group{border-top:0;border-left:1px solid var(--border);margin:0 0 0 6px;padding:0 0 0 6px}.menu-cap{display:none}.menu-item{white-space:nowrap;flex:none;padding:0 12px}.mi-icon{width:auto;margin-right:6px}.mi-count{margin-left:6px}.panel{padding:18px 16px 20px}.grid{grid-template-columns:1fr}.field.half{grid-column:1/-1}.form-actions button{flex:1}.field.solo{padding-top:0}.detail{grid-template-columns:96px 1fr}}
