:root{font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0f172a;background:radial-gradient(1200px 800px at 10% 0%,#e0f2fe,transparent 60%),radial-gradient(900px 700px at 90% 20%,#ecfdf5,transparent 60%),#f8fafc}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{margin:0}a{color:inherit}button{font:inherit}:root{--ink-900: #0f172a;--ink-700: #334155;--ink-500: #64748b;--ink-400: #94a3b8;--surface: #ffffff;--surface-soft: #f8fbff;--surface-muted: #f1f5f9;--line: #dbe7f3;--line-strong: #bfd3e6;--brand-700: #0c4a6e;--brand-600: #0369a1;--brand-500: #0ea5e9;--accent-600: #0f766e;--accent-500: #14b8a6;--danger-700: #991b1b;--danger-600: #b91c1c;--danger-soft: #fff2f2;--success-700: #166534;--success-soft: #f0fdf4;--shadow-card: 0 16px 36px rgba(15, 23, 42, .1);--shadow-soft: 0 10px 24px rgba(15, 23, 42, .07);--radius-2xl: 20px;--radius-xl: 16px;--radius-lg: 12px;--radius-sm: 10px}.app-shell{margin:0 auto;width:min(760px,calc(100% - 1.5rem));min-height:100dvh;padding:1.1rem 0 2.4rem;display:grid;gap:.95rem}.app-shell :where(button,input,select,textarea,a){font:inherit}.app-shell :where(button,input,select,textarea,a):focus-visible{outline:3px solid rgba(14,165,233,.36);outline-offset:2px}.locale-switch{display:inline-flex;width:fit-content;gap:.25rem;border:1px solid var(--line-strong);border-radius:999px;background:#ffffffd6;padding:.2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.locale-switch button{border:0;border-radius:999px;padding:.38rem .82rem;background:transparent;color:var(--brand-700);font-size:.8rem;font-weight:700;cursor:pointer;transition:background-color .16s ease,color .16s ease}.locale-switch button.is-active{background:linear-gradient(120deg,var(--brand-600),var(--accent-600));color:#fff}.auth-top{margin-bottom:.1rem}.wizard-panel,.hero,.compliance-panel,.auth-panel,.payment-panel,.legal-page-card,.contact-card,.my-page-card,.announcement-card,.status-bar,.error-state,.empty-state{border-radius:var(--radius-xl);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft)}.wizard-panel{border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-card);background:linear-gradient(180deg,#fff,#f9fcff)}.wizard-header{padding:.95rem .95rem .45rem;display:grid;grid-template-columns:40px 1fr 40px;align-items:center}.wizard-title{margin:0;text-align:center;font-family:Outfit,Pretendard,Noto Sans KR,sans-serif;font-size:1.08rem;letter-spacing:.02em;font-weight:700;color:var(--ink-900)}.ghost-icon{border:1px solid transparent;border-radius:999px;width:40px;height:40px;font-size:1.3rem;color:var(--ink-700);background:transparent;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.ghost-icon:hover:not(:disabled){background:var(--surface-muted);border-color:var(--line)}.ghost-icon:disabled{opacity:.34;cursor:not-allowed}.wizard-progress{padding:0 1rem .75rem}.wizard-progress>div:first-child{display:flex;justify-content:space-between;margin-bottom:.36rem;color:var(--brand-700);font-size:.8rem;font-weight:700}.progress-track{height:8px;border-radius:999px;background:#e4ebf4;overflow:hidden}.progress-track>div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-500),var(--accent-500));transition:width .18s ease}.wizard-body{padding:.78rem 1rem 1rem}.wizard-body h1{margin:0;color:var(--ink-900);font-family:Outfit,Pretendard,Noto Sans KR,sans-serif;font-size:clamp(1.32rem,4.4vw,1.9rem);line-height:1.24;letter-spacing:.01em}.wizard-body p{margin:.52rem 0 .96rem;color:var(--ink-700);line-height:1.45}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.option-list{display:grid;gap:.7rem}.option-card{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:#fff;color:var(--ink-900);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.option-card:hover{border-color:#8ec9e9;box-shadow:0 8px 20px #0e749021;transform:translateY(-1px)}.option-card.is-selected{border-color:var(--brand-500);box-shadow:0 10px 22px #0e749033}.option-card--region{min-height:126px;padding:.88rem .7rem;display:grid;align-content:center;justify-items:center;gap:.35rem;position:relative;font-weight:700;font-size:1rem}.option-icon{width:44px;height:44px;border-radius:999px;display:inline-grid;place-items:center;font-size:1.28rem;background:#ecf8ff}.check-badge{position:absolute;right:.52rem;top:.52rem;border-radius:999px;padding:.18rem .5rem;background:var(--brand-600);color:#fff;font-size:.67rem;font-weight:700}.option-card--line{width:100%;text-align:left;padding:.88rem;display:grid;gap:.22rem}.line-title{color:var(--ink-900);font-size:1.03rem;font-weight:800}.line-subtitle{color:var(--brand-700);font-size:.86rem;font-weight:700}.line-description{color:var(--ink-500);font-size:.82rem}.policy-check{margin-top:.85rem;display:grid;grid-template-columns:18px 1fr;gap:.58rem;align-items:flex-start;color:var(--ink-700);font-size:.84rem;line-height:1.45}.policy-check input{margin-top:.1rem}.policy-link-row{margin-top:.64rem;display:flex;gap:.54rem;flex-wrap:wrap}.policy-link-row a,.contact-policy-nav a,.legal-page-nav a{border-radius:999px;border:1px solid var(--line-strong);padding:.34rem .78rem;background:#fff;color:var(--brand-600);text-decoration:none;font-size:.8rem;font-weight:700;transition:background-color .14s ease,border-color .14s ease}.policy-link-row a:hover,.contact-policy-nav a:hover,.legal-page-nav a:hover{background:#f0f9ff;border-color:#9ed4f1}.legal-page-nav a.is-active{border-color:var(--brand-500);background:#e0f2fe}.wizard-footer{padding:.78rem 1rem 1rem;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr;gap:.68rem}.wizard-footer--split{grid-template-columns:1fr 1.3fr}.primary-btn,.secondary-btn,.filter-actions button,.pagination button{border:1px solid transparent;min-height:48px;border-radius:var(--radius-lg);font:inherit;font-weight:700;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease,background-color .14s ease,border-color .14s ease}.primary-btn{background:linear-gradient(120deg,var(--brand-600),var(--accent-600));color:#fff;box-shadow:0 10px 22px #0e749045}.primary-btn:hover:not(:disabled),.purchase-btn:hover:not(:disabled),.pagination button:hover:not(:disabled){transform:translateY(-1px)}.primary-btn:disabled,.secondary-btn:disabled,.filter-actions button:disabled,.pagination button:disabled,.purchase-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.secondary-btn,.filter-actions button,.pagination button{border-color:var(--line-strong);background:#fff;color:var(--ink-900)}.ghost{background:transparent}.hero{padding:1rem;border-radius:var(--radius-xl);background:linear-gradient(180deg,#fff,#f8fcff)}.brand{margin:0 0 .3rem;color:var(--brand-700);letter-spacing:.12em;font-size:.75rem;font-weight:800;text-transform:uppercase}.hero h1,.contact-header h1,.my-page-header h1,.legal-page-header h1{margin:0;color:var(--ink-900);font-family:Outfit,Pretendard,Noto Sans KR,sans-serif;font-size:clamp(1.3rem,3.5vw,1.86rem);letter-spacing:.01em}.hero p,.contact-header p,.my-page-header p,.legal-page-header p{margin:.46rem 0 0;color:var(--ink-700);line-height:1.45}.result-actions{margin-top:.9rem;display:flex;gap:.6rem;flex-wrap:wrap}.result-actions .primary-btn,.result-actions .secondary-btn{flex:1 1 170px}.status-bar{margin:.05rem 0 0;padding:.72rem .9rem;display:flex;justify-content:space-between;gap:.7rem;color:var(--ink-700);font-size:.88rem;background:#f7fbff}.result-hint{margin:.25rem 0 .75rem;color:var(--ink-500);font-size:.88rem}.announcement-list,.skeleton-list,.legal-page-sections{display:grid;gap:.75rem}.announcement-card{padding:.95rem}.announcement-card-header{display:flex;justify-content:space-between;gap:.55rem;align-items:flex-start;margin-bottom:.4rem}.announcement-card h3{margin:0;font-size:1.02rem;line-height:1.3;overflow-wrap:anywhere}.announcement-card-summary{margin:0 0 .65rem;color:var(--ink-700);font-size:.88rem;overflow-wrap:anywhere}.announcement-meta{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem .8rem}.announcement-meta>div{margin:0;min-width:0}.announcement-meta dt{margin-bottom:.16rem;color:var(--ink-400);font-size:.75rem}.announcement-meta dd{margin:0;color:var(--ink-900);font-size:.86rem;font-weight:600;overflow-wrap:anywhere}.status{white-space:nowrap;border-radius:999px;padding:.28rem .62rem;font-size:.72rem;font-weight:800}.status.open{background:#dcfce7;color:#14532d}.status.upcoming{background:#dbeafe;color:#1e3a8a}.status.closed{background:#fee2e2;color:#991b1b}.detail-link{margin-top:.72rem;display:inline-flex;color:var(--brand-600);font-size:.86rem;font-weight:700;text-decoration:none}.detail-link:hover{text-decoration:underline}.empty-state{padding:.95rem;text-align:center;color:var(--ink-500);font-size:.88rem;background:#f9fbff}.pagination{margin-top:.95rem;display:flex;justify-content:center;align-items:center;gap:.7rem}.pagination span{color:var(--ink-700);font-size:.88rem;font-weight:600}.pagination button{min-height:40px;border-radius:999px;padding:0 .95rem;background:#fff}.error-state{margin:.6rem 0;padding:.9rem;background:var(--danger-soft);border-color:#fecaca;color:var(--danger-700)}.error-state h2{margin:0;font-size:1rem}.error-state p{margin:.42rem 0 .7rem}.skeleton-card{height:132px;border-radius:var(--radius-lg);background:linear-gradient(90deg,#eef3f8,#e2e9f2 48%,#eef3f8);background-size:220% 100%;animation:shimmer 1.15s linear infinite}.compliance-panel{margin-top:.2rem;padding:.92rem;background:linear-gradient(180deg,#fafdff,#f4f9ff)}.compliance-panel h2,.payment-panel h3,.auth-panel h3,.legal-page-section h2,.my-page-section h2{margin:0;color:var(--ink-900);font-size:.98rem}.compliance-panel p,.payment-panel p,.auth-panel>p{margin:.4rem 0 0;color:var(--ink-700);font-size:.84rem;line-height:1.45}.compliance-panel ul{margin:.5rem 0 0;padding-left:1rem;display:grid;gap:.3rem;color:var(--ink-700);font-size:.82rem;line-height:1.45}.payment-panel{margin-top:.75rem;padding:.78rem;background:#fff}.purchase-btn{margin-top:.62rem;width:100%;min-height:48px;border:none;border-radius:var(--radius-lg);background:linear-gradient(120deg,var(--brand-600),var(--accent-600));color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 22px #0e749040}.payment-message,.auth-error,.auth-success,.contact-error,.contact-success,.my-page-error,.my-page-success{margin:.62rem 0 0;font-size:.82rem;font-weight:700}.payment-message--error,.auth-error,.contact-error,.my-page-error{color:var(--danger-600)}.payment-message--success,.auth-success,.contact-success,.my-page-success{color:var(--success-700)}.auth-panel,.contact-card,.legal-page-card,.my-page-card{padding:.9rem;background:linear-gradient(180deg,#fff,#f9fcff)}.auth-warning,.my-page-warning{margin-top:.56rem;color:var(--danger-600);font-size:.82rem;font-weight:700}.auth-hint,.my-page-hint{margin-top:.56rem;color:var(--brand-700);font-size:.81rem}.auth-session-card,.auth-form,.auth-oauth,.contact-form,.my-page-form{margin-top:.6rem;display:grid;gap:.52rem}.auth-form label,.contact-form label,.my-page-form label,.my-page-section--danger label{color:var(--ink-900);font-size:.83rem;font-weight:700}.auth-form input,.contact-form input,.contact-form select,.contact-form textarea,.my-page-form input,.my-page-section--danger input,.filter-form input,.filter-form select{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--ink-900);padding:.68rem;transition:border-color .14s ease,box-shadow .14s ease}.auth-form input:focus,.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.my-page-form input:focus,.my-page-section--danger input:focus,.filter-form input:focus,.filter-form select:focus{border-color:#7cc2ea;box-shadow:0 0 0 4px #0ea5e921;outline:none}.contact-form textarea{min-height:140px;resize:vertical}.auth-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem}.auth-mode-tabs button{border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:var(--brand-700);min-height:38px;font-weight:700;cursor:pointer}.auth-mode-tabs button.is-active{border-color:#8ec9e9;background:#ebf7ff}.auth-action-btn{width:100%;min-height:44px}.auth-oauth-divider{margin:0;text-align:center;color:var(--ink-400);font-size:.74rem;font-weight:700;text-transform:uppercase}.auth-google-btn{border:1px solid var(--line-strong)}.contact-page-shell,.legal-page-shell,.my-page-shell{padding-top:.95rem}.legal-page-meta{font-size:.82rem;color:var(--ink-500)}.contact-policy-nav,.legal-page-nav{margin-top:.9rem;display:flex;gap:.52rem;flex-wrap:wrap}.legal-page-section{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;padding:.74rem .8rem}.legal-page-section ul{margin:.48rem 0 0;padding-left:1rem;display:grid;gap:.34rem;color:var(--ink-700);font-size:.88rem;line-height:1.45}.legal-page-footer,.contact-footer,.my-page-footer{margin-top:1rem;display:grid;gap:.58rem}.legal-page-footer p{margin:0;color:var(--ink-700);font-size:.84rem}.legal-page-footer a{color:var(--brand-600);overflow-wrap:anywhere}.legal-back-link,.contact-back-link,.my-page-back-link{min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.contact-input-hint{margin:0;color:var(--ink-500);font-size:.77rem}.contact-turnstile{margin-top:.24rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:#f4fbff;padding:.7rem}.contact-turnstile p{margin:0 0 .5rem;color:var(--brand-700);font-size:.81rem}.contact-turnstile-widget{min-height:68px}.contact-submit-btn,.my-page-action-btn{margin-top:.2rem}.my-page-section{margin-top:.95rem;border-radius:var(--radius-lg);border:1px solid var(--line);background:#fff;padding:.8rem}.my-page-profile-list{margin:.64rem 0 0;display:grid;gap:.52rem}.my-page-profile-list>div{display:grid;grid-template-columns:124px 1fr;gap:.6rem}.my-page-profile-list dt{color:var(--ink-500);font-size:.82rem}.my-page-profile-list dd{margin:0;color:var(--ink-900);font-size:.85rem;font-weight:600;overflow-wrap:anywhere}.my-page-section--danger{border-color:#fecaca;background:var(--danger-soft)}.my-page-section--danger p{margin:.42rem 0 .64rem;color:var(--danger-700);font-size:.83rem}.my-page-danger-btn{border:1px solid #ef4444;background:#fff3f3;color:var(--danger-700)}.filter-form{border-radius:var(--radius-lg);border:1px solid var(--line);background:#fff;padding:.9rem;display:grid;gap:.65rem}.filter-form--region-only{grid-template-columns:minmax(0,1fr)}.field-group{display:grid;gap:.34rem}.field-group label{color:var(--ink-700);font-size:.82rem;font-weight:700}.filter-actions{display:flex;gap:.48rem;flex-wrap:wrap}.filter-actions button{min-height:40px;padding:.2rem .75rem}.change-hint{margin:.1rem 0 0;color:var(--ink-500);font-size:.8rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:860px){.app-shell{width:min(700px,calc(100% - 1.2rem))}}@media(max-width:620px){.wizard-footer,.wizard-footer--split{grid-template-columns:1fr}.status-bar{flex-direction:column;gap:.3rem}.policy-link-row,.contact-policy-nav,.legal-page-nav{gap:.42rem}.policy-link-row a,.contact-policy-nav a,.legal-page-nav a{padding:.32rem .65rem;font-size:.77rem}}@media(max-width:520px){.app-shell{width:calc(100% - .9rem);padding-top:.9rem;gap:.8rem}.option-grid,.announcement-meta{grid-template-columns:1fr}.result-actions .primary-btn,.result-actions .secondary-btn{flex-basis:100%}.my-page-profile-list>div{grid-template-columns:1fr;gap:.26rem}.filter-actions{display:grid;grid-template-columns:1fr}}
