:root{--color-primary:#1e4646;--color-primary-active:#163636;--color-canvas:#fbf8f6;--color-surface-soft:#f4ecea;--color-surface-strong:#e9dcd8;--color-surface-dark:var(--color-primary);--color-surface-dark-elevated:#2a5656;--color-hairline:#e6d9d5;--color-ink:var(--color-primary);--color-body:#3a4a4b;--color-muted:#7a6a6e;--color-border-strong:#b49a9f;--color-on-primary:#fbf8f6;--color-on-dark:var(--color-canvas);--color-accent-soft:#f3e4e6;--color-teal:#1e6464;--color-rose:#aa6e78;--color-plum:#8c5a64;--color-beige:#c8b4a0;--color-beige-soft:#f3ece3;--color-signature-coral:var(--color-rose);--color-signature-forest:var(--color-primary-active);--color-signature-cream:var(--color-beige-soft);--color-signature-peach:var(--color-accent-soft);--color-signature-mint:var(--color-surface-soft);--color-signature-yellow:var(--color-beige-soft);--color-signature-mustard:var(--color-beige);--color-link:var(--color-plum);--color-link-active:var(--color-primary);--color-info:var(--color-primary);--color-info-border:var(--color-teal);--color-success:var(--color-teal);--color-success-border:var(--color-teal);--color-danger:#a33333;--color-pricing-ink:var(--color-primary);--color-focus-ring:#aa6e7866;--font-brand:"Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-display:var(--font-brand);--font-text:var(--font-brand);--font-pricing:var(--font-brand);--weight-thin:100;--weight-extralight:200;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--weight-black:900;--weight-pricing-display:500;--weight-pricing-body:600;--type-display-xl-size:48px;--type-display-xl-lh:1.1;--type-display-xl-ls:0;--type-display-xl-weight:500;--type-display-lg-size:40px;--type-display-lg-lh:1.2;--type-display-lg-ls:0;--type-display-lg-weight:400;--type-display-md-size:32px;--type-display-md-lh:1.2;--type-display-md-ls:0;--type-display-md-weight:400;--type-title-lg-size:24px;--type-title-lg-lh:1.35;--type-title-lg-ls:.12px;--type-title-lg-weight:400;--type-title-md-size:20px;--type-title-md-lh:1.5;--type-title-md-ls:0;--type-title-md-weight:400;--type-title-sm-size:18px;--type-title-sm-lh:1.4;--type-title-sm-ls:0;--type-title-sm-weight:500;--type-label-md-size:16px;--type-label-md-lh:1.4;--type-label-md-ls:0;--type-label-md-weight:500;--type-button-size:16px;--type-button-lh:1.4;--type-button-ls:0;--type-button-weight:500;--type-body-md-size:14px;--type-body-md-lh:1.25;--type-body-md-ls:0;--type-body-md-weight:400;--type-caption-size:14px;--type-caption-lh:1.35;--type-caption-ls:.16px;--type-caption-weight:500;--type-legal-size:13.12px;--type-legal-lh:1.2;--type-legal-ls:0;--type-legal-weight:600;--type-pricing-display-size:44.8px;--type-pricing-display-lh:1.1;--type-pricing-display-weight:500;--type-pricing-section-size:28px;--type-pricing-section-lh:1.2;--type-pricing-section-weight:500;--type-pricing-card-title-size:20px;--type-pricing-card-title-lh:1.3;--type-pricing-card-title-weight:500;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--space-section:96px;--container-max:1280px;--container-gutter:48px;--nav-height:64px;--radius-xs:2px;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--radius-pill:9999px;--radius-full:9999px;--border-hairline:1px solid var(--color-hairline);--border-strong:1px solid var(--color-border-strong);--elevation-flat:none;--elevation-button-rest:0 1px 2px #181d2629, 0 0 0 1px #1b61c90a;--elevation-button-focus:0 0 0 2px var(--color-focus-ring);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{font-family:var(--font-text);font-size:var(--type-body-md-size);line-height:var(--type-body-md-lh);font-weight:var(--weight-regular);color:var(--color-body);background:var(--color-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-link-active)}*,:before,:after{box-sizing:border-box}:root{--color-scrim:#1e46468c;--color-on-video:#fff;--glass-border:#ffffff73;--glass-fill:#ffffff12;--glass-fill-pressed:#fff3;--glass-shine-from:#ffffff61;--glass-shine-to:#fff0;--video-shade:#00000073;--video-shade-bottom:#00000080;--logo-disc:#ffffffeb;--shadow-glass:inset 0 1px 1px #ffffffbf, inset 0 -2px 4px #0000001a, 0 12px 32px #00000047;--shadow-glass-pressed:inset 0 1px 1px #ffffffb3, inset 0 -1px 2px #0000001f, 0 4px 14px #00000038;--color-kakao:#fee500;--color-kakao-ink:#191919;--tap-min:44px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-surface-strong);color:var(--color-ink);font-family:var(--font-brand);-webkit-tap-highlight-color:transparent}button{font-family:inherit}:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.app{background:var(--color-canvas);flex-direction:column;width:100%;max-width:480px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.cta{border-radius:var(--radius-lg);background:var(--color-signature-coral);width:100%;min-height:54px;color:var(--color-signature-cream);font-size:15px;font-weight:var(--weight-medium);cursor:pointer;border:none}.cta:disabled{background:var(--color-surface-strong);color:var(--color-muted);cursor:default}.link-btn{min-height:var(--tap-min);padding:0 var(--space-sm);color:var(--color-link);cursor:pointer;background:0 0;border:none;font-size:14px}.link-btn:disabled{color:var(--color-muted);cursor:default}.err{color:var(--color-danger);margin:0;font-size:14px;line-height:1.5}.notice{border-radius:var(--radius-md);background:var(--color-beige-soft);color:var(--color-ink);text-align:center;white-space:pre-line;margin:0;padding:10px 12px;font-size:13.5px;line-height:1.5}.skeleton-page{padding:calc(var(--space-lg) + env(safe-area-inset-top)) var(--space-lg) var(--space-lg);gap:var(--space-md);flex-direction:column;flex:1;display:flex}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-surface-soft) 25%, var(--color-surface-strong) 50%, var(--color-surface-soft) 75%);background-size:200% 100%;animation:1.4s linear infinite shimmer}.skeleton-line{width:60%;height:20px}.skeleton-card{height:168px}@keyframes shimmer{to{background-position:-200% 0}}.intro{background:var(--color-primary);flex:1;min-height:100dvh;position:relative;overflow:hidden}.intro-media{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.intro-shade{background:linear-gradient(to bottom, var(--video-shade) 0%, transparent 26%, transparent 70%, var(--video-shade-bottom) 100%);position:absolute;inset:0}.intro-brand{top:max(env(safe-area-inset-top), 24px);left:var(--space-lg);right:var(--space-lg);color:var(--color-on-video);align-items:center;gap:10px;display:flex;position:absolute}.logo-disc{background:var(--logo-disc);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 2px 10px #0000002e}.logo-disc img{object-fit:contain;width:38px;height:38px}.intro-name{letter-spacing:.24em;font-size:13px;font-weight:var(--weight-semibold)}.intro-start-wrap{justify-content:center;display:flex;position:absolute;top:75%;left:0;right:0;transform:translateY(-50%)}.glass-btn{border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--glass-fill);-webkit-backdrop-filter:blur(8px)saturate(115%);backdrop-filter:blur(8px)saturate(115%);min-height:66px;box-shadow:var(--shadow-glass);color:var(--color-on-video);font-size:21px;font-weight:var(--weight-bold);letter-spacing:.06em;text-shadow:0 1px 2px #00000059,0 2px 12px #00000073;cursor:pointer;padding:0 48px;transition:transform .14s ease-out,opacity .26s .14s,box-shadow .14s ease-out,background .14s ease-out;position:relative;overflow:hidden}.glass-btn[data-pressed=true]{background:var(--glass-fill-pressed);box-shadow:var(--shadow-glass-pressed);transform:scale(.9)}.glass-btn[data-spread=true]{opacity:0}.glass-shine{border-radius:var(--radius-full);background:linear-gradient(to bottom, var(--glass-shine-from), var(--glass-shine-to));pointer-events:none;height:46%;position:absolute;top:3px;left:12%;right:12%}.glass-label{position:relative}.intro-tagline{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 22px);text-align:center;color:var(--color-on-video);opacity:.85;font-size:12px;position:absolute}.intro-spread{background:var(--color-canvas);position:absolute;inset:0}.login{padding:env(safe-area-inset-top) var(--space-lg) env(safe-area-inset-bottom);flex-direction:column;flex:1;display:flex}.login-body{justify-content:center;gap:var(--space-lg);padding:var(--space-xl) 0;flex-direction:column;flex:1;animation:.65s ease-out 80ms both reveal;display:flex}.login-brand{align-items:center;gap:10px;display:flex}.login-brand img{object-fit:contain;width:44px;height:44px}.login-brand span{letter-spacing:.2em;font-size:12px;font-weight:var(--weight-medium);color:var(--color-ink)}.login-title{font-size:24px;font-weight:var(--weight-regular);color:var(--color-ink);text-wrap:pretty;margin:0;line-height:1.3}.login-actions{flex-direction:column;gap:14px;display:flex}@keyframes reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.kakao-btn{border-radius:var(--radius-lg);background:var(--color-kakao);width:100%;min-height:52px;color:var(--color-kakao-ink);font-size:16px;font-weight:var(--weight-bold);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;display:flex}.kakao-btn:disabled{opacity:.6;cursor:default}.kakao-btn svg{fill:var(--color-kakao-ink)}.sheet-backdrop{z-index:90;background:var(--color-scrim);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:480px;max-height:88dvh;padding:22px var(--space-lg) calc(var(--space-md) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-canvas);flex-direction:column;gap:10px;animation:.26s ease-out both sheet-up;display:flex;overflow-y:auto}.sheet:focus{outline:none}.sheet-title{font-size:19px;font-weight:var(--weight-regular);color:var(--color-ink);margin:0;line-height:1.4}.sheet-lead{color:var(--color-body);text-wrap:pretty;margin:0;font-size:13px;line-height:1.6}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.consent{border:var(--border-hairline);border-radius:var(--radius-md);background:var(--color-canvas);margin-top:4px}.consent-all{border-bottom:var(--border-hairline);padding:4px 12px}.consent-list{padding:2px 12px 6px}.consent-row{align-items:center;gap:6px;display:flex}.consent-check{min-width:0;min-height:var(--tap-min);text-align:left;cursor:pointer;color:var(--color-body);background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:0;font-size:13px;line-height:1.4;display:flex}.consent-all .consent-check{font-size:14px;font-weight:var(--weight-semibold);color:var(--color-ink)}.consent-tag-required{color:var(--color-ink)}.consent-tag-optional{color:var(--color-muted)}.check-box{border:1.5px solid var(--color-border-strong);background:var(--color-canvas);width:20px;height:20px;color:var(--color-on-primary);text-align:center;border-radius:4px;flex:none;font-size:13px;line-height:17px}.check-box[data-on=true]{border-color:var(--color-signature-coral);background:var(--color-signature-coral)}.consent-toggle{min-height:var(--tap-min);min-width:var(--tap-min);color:var(--color-link);cursor:pointer;background:0 0;border:none;flex:none;padding:0 4px;font-size:12px}.consent-detail{background:var(--color-surface-soft);border-radius:var(--radius-sm);margin:0 0 8px 30px;padding:8px 10px;font-size:12px;line-height:1.5}.consent-detail div{gap:8px;padding:2px 0;display:flex}.consent-detail dt{width:64px;color:var(--color-muted);flex:none}.consent-detail dd{color:var(--color-body);margin:0}.page{padding:calc(var(--space-md) + env(safe-area-inset-top)) var(--space-lg) calc(var(--space-lg) + env(safe-area-inset-bottom));gap:var(--space-lg);flex-direction:column;flex:1;display:flex}.topbar{align-items:center;gap:var(--space-sm);display:flex}.topbar img{object-fit:contain;flex:none;width:40px;height:40px}.topbar-greeting{min-width:0;font-size:16px;font-weight:var(--weight-medium);color:var(--color-ink);overflow-wrap:anywhere;flex:1;margin:0}.topbar .link-btn{flex:none}.card{gap:var(--space-sm);padding:var(--space-lg);border-radius:var(--radius-lg);background:var(--color-surface-soft);border:var(--border-hairline);flex-direction:column;display:flex}.card-title{font-size:22px;font-weight:var(--weight-medium);color:var(--color-ink);margin:0;line-height:1.35}.card-text{margin:0 0 var(--space-xs);color:var(--color-body);font-size:14px;line-height:1.6}.card-done{background:var(--color-beige-soft)}.empty{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-lg);text-align:center;flex-direction:column;flex:1;display:flex}.empty p{color:var(--color-body);margin:0;line-height:1.6}@media (prefers-reduced-motion:reduce){.login-body,.sheet,.skeleton{animation:none}.glass-btn{transition:none}}
