:root{--font:"Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--display:"Syne", "Pretendard", sans-serif;--bg:#ece8e1;--bg-accent:#c9a56a38;--bg-mist:#1a233212;--surface:#f7f4ee;--border:#d5cec2;--border-strong:#b5ab9c;--text:#141a22;--muted:#4a5360;--faint:#6b7380;--brand:#1a2332;--brand-strong:#0f1520;--accent:#9a7340;--accent-soft:#efe4d2;--shadow:0 1px 2px #141a220a, 0 12px 32px #141a220f;--error:#b42318;--radius:14px;--radius-sm:9px}:root[data-theme=dark]{--bg:#0d1117;--bg-accent:#c9a56a24;--bg-mist:#94a3b814;--surface:#161c26;--border:#2c3544;--border-strong:#4a5568;--text:#f0ebe3;--muted:#b8c0cc;--faint:#8b95a6;--brand:#e8d5b5;--brand-strong:#f3e6cf;--accent:#d4b078;--accent-soft:#2a2418;--shadow:0 1px 2px #00000059, 0 14px 36px #00000059;--error:#f97066}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:17px}html,body,#root{min-height:100%;margin:0;padding:0}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;background:radial-gradient(ellipse 90% 55% at 8% -8%, var(--bg-accent), transparent 55%), radial-gradient(ellipse 55% 40% at 100% 0%, var(--bg-mist), transparent 50%), linear-gradient(180deg, transparent 0%, #1a233208 100%), var(--bg);background-attachment:fixed}.wrap{width:min(720px,100%);padding:1rem 1.1rem 3.5rem;padding-top:max(1rem, env(safe-area-inset-top));padding-bottom:max(3.5rem, env(safe-area-inset-bottom));margin:0 auto}.header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.35rem;display:flex}.brand{align-items:center;gap:.7rem;min-width:0;display:flex}.brandMark{background:var(--brand);color:#f4ead8;width:2.35rem;height:2.35rem;font-family:var(--display);letter-spacing:-.03em;border-radius:.7rem;flex-shrink:0;place-items:center;font-size:1.05rem;font-weight:800;display:grid}:root[data-theme=dark] .brandMark{color:#121820}.title{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:1.2rem;font-weight:700;line-height:1.15}.subtitle{color:var(--faint);letter-spacing:.04em;text-transform:uppercase;margin:.12rem 0 0;font-size:.82rem}.headerRight{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.themeSeg{border:1px solid var(--border);background:var(--surface);border-radius:999px;display:inline-flex;overflow:hidden}.themeSeg button{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;width:2.1rem;height:2.1rem;padding:0;display:grid}.themeSeg button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.iconBtn{appearance:none;border:1px solid var(--border);background:var(--surface);width:2.35rem;height:2.35rem;color:var(--text);cursor:pointer;border-radius:999px;place-items:center;padding:0;display:grid}.iconBtn:disabled{opacity:.55;cursor:default}.iconBtn:focus-visible,.themeSeg button:focus-visible,.tab:focus-visible,.extLink:focus-visible,.rowBtn:focus-visible,.modalClose:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}.intro{margin-bottom:1.25rem;animation:.55s both fadeUp}.introArea{font-family:var(--display);letter-spacing:-.035em;margin:0 0 .35rem;font-size:1.55rem;font-weight:700;line-height:1.2}.introBlurb{color:var(--muted);max-width:36em;margin:0;font-size:.95rem;line-height:1.55}.tabs{border-bottom:1px solid var(--border);gap:.35rem;margin-bottom:1rem;padding-bottom:.15rem;animation:.55s 60ms both fadeUp;display:flex}.tab{appearance:none;color:var(--faint);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.55rem .7rem .7rem;font-size:.95rem;font-weight:600;display:inline-flex;position:relative}.tab.active{color:var(--text)}.tab.active:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:.55rem;right:.55rem}.tabCount{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.08rem .4rem;font-size:.75rem;font-weight:600}.list{flex-direction:column;gap:0;animation:.55s .1s both fadeUp;display:flex}.row{border-bottom:1px solid var(--border);padding:1.15rem 0}.row:last-child{border-bottom:0}.rowBtn{appearance:none;border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;margin:0;padding:1.15rem .15rem;transition:background .15s;display:block}.rowBtn:last-child{border-bottom:0}.rowBtn:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent)}.rowBtn:active{background:var(--accent-soft)}.rowBody.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.rowMore{color:var(--accent);margin-top:.65rem;font-size:.82rem;font-weight:600;display:inline-block}.rowTop{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.rowTitle{letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:650;line-height:1.3}.meta{color:var(--accent);flex-shrink:0;font-size:.78rem;font-weight:600}.rowJa{color:var(--faint);margin:.2rem 0 0;font-size:.82rem}.rowTier{color:var(--muted);margin:.35rem 0 0;font-size:.88rem}.rowBody{color:var(--text);margin:.55rem 0 0;font-size:.95rem;line-height:1.55}.rowNote{color:var(--faint);margin:.4rem 0 0;font-size:.82rem}.tipList{flex-wrap:wrap;gap:.35rem;margin:.55rem 0 0;padding:0;list-style:none;display:flex}.tipList li{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.22rem .55rem;font-size:.78rem}.extLink{color:var(--accent);align-items:center;gap:.25rem;margin-top:.7rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.extLink:hover{text-decoration:underline}.notes{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.25rem}.notesTitle{font-family:var(--display);margin:0 0 .55rem;font-size:1rem;font-weight:700}.notes ul{color:var(--muted);margin:0;padding-left:1.1rem;font-size:.88rem;line-height:1.55}.notes li+li{margin-top:.35rem}.updated{color:var(--faint);margin:.85rem 0 0;font-size:.75rem}.error{color:var(--error);font-size:.95rem}.muted{color:var(--muted);font-size:.95rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.introArea{font-size:1.35rem}.tab{padding-left:.45rem;padding-right:.45rem}}.modalRoot{z-index:40;place-items:end center;padding:0;display:grid;position:fixed;inset:0}@media (width>=640px){.modalRoot{place-items:center;padding:1.25rem}}.modalBackdrop{cursor:pointer;background:#0f15207a;border:0;margin:0;padding:0;animation:.2s both fadeIn;position:absolute;inset:0}.modalSheet{z-index:1;background:var(--surface);border:1px solid var(--border);width:min(560px,100%);max-height:min(88vh,900px);box-shadow:var(--shadow);border-radius:18px 18px 0 0;flex-direction:column;animation:.28s both sheetUp;display:flex;position:relative;overflow:hidden}@media (width>=640px){.modalSheet{border-radius:16px;max-height:min(82vh,760px);animation:.28s both fadeUp}}.modalHeader{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1.1rem 1.15rem .85rem;display:flex}.modalHeaderText{min-width:0}.modalMeta{color:var(--accent);margin:0;font-size:.78rem;font-weight:600}.modalTitle{font-family:var(--display);letter-spacing:-.03em;margin:.25rem 0 0;font-size:1.2rem;font-weight:700;line-height:1.25}.modalSub{color:var(--faint);margin:.2rem 0 0;font-size:.82rem}.modalClose{flex-shrink:0}.modalBody{-webkit-overflow-scrolling:touch;padding:1rem 1.15rem 1.5rem;padding-bottom:max(1.5rem, env(safe-area-inset-bottom));overflow:auto}.detailHours{color:var(--muted);margin:0 0 .65rem;font-size:.88rem;font-weight:550}.detailBody{color:var(--muted);margin:.55rem 0 0;font-size:.95rem;line-height:1.55}.detailSection{margin-top:1.15rem}.detailSectionTitle{letter-spacing:-.01em;color:var(--text);margin:0 0 .45rem;font-size:.88rem;font-weight:700}.feeList{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);margin:0;padding:0;list-style:none;overflow:hidden}.feeRow{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:.85rem;padding:.65rem .75rem;display:flex}.feeRow:last-child{border-bottom:0}.feeLabel{color:var(--text);font-size:.88rem;line-height:1.35}.feePrice{color:var(--accent);text-align:right;flex-shrink:0;font-size:.88rem;font-weight:650}.detailDisclaimer{color:var(--faint);margin:1rem 0 0;font-size:.75rem;line-height:1.4}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheetUp{0%{opacity:.6;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
