:root{--bg:#07080d;--panel:#11141d;--panel2:#171b26;--ink:#f5f7fb;--muted:#9da6b7;--line:#2a3040;--accent:var(--brand-text);--accentInk:var(--brand-on-primary);--danger:#ff7a86;--focus:var(--brand-focus);--shadow:0 16px 50px rgba(0,0,0,.22)}
:root[data-theme=light]{--bg:#f4f6fc;--panel:#fff;--panel2:#f1f4f8;--ink:#15202b;--muted:#5d6878;--line:#d9dee8;--accent:var(--brand-text);--accentInk:var(--brand-on-primary);--danger:#b42332;--focus:var(--brand-focus);--shadow:0 16px 45px rgba(25,35,55,.1)}
*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--bg);color:var(--ink);font-family:Inter,Pretendard,"Noto Sans KR",system-ui,sans-serif}body{margin:0;background:var(--bg);min-height:100vh}button,input,select,textarea{font:inherit}a{color:inherit}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:8px;z-index:1000;transform:translateY(-150%);background:var(--accent);color:var(--accentInk);padding:10px 14px;border-radius:8px}.skip-link:focus{transform:none}.candidate-banner{padding:7px 16px;background:#543c00;color:#fff2bb;text-align:center;font-size:11px;font-weight:800;letter-spacing:.05em}.global-nav{position:relative;display:flex;align-items:center;gap:26px;min-height:68px;padding:12px max(24px,calc((100% - 1240px)/2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand span:last-child{display:grid}.brand small{font-size:9px;color:var(--muted)}.logo{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent);color:var(--accentInk);font-weight:900}.service-nav{display:flex;gap:8px}.service-nav a,.nav-login,.account-menu a{text-decoration:none}.service-nav a,.nav-login,.account-button,.icon-button{min-height:40px;padding:10px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink);font-weight:750}.nav-actions{display:flex;align-items:center;gap:5px;margin-left:auto}.icon-button,.account-button{cursor:pointer;border-color:var(--line);background:var(--panel)}.account-menu{position:absolute;right:max(24px,calc((100% - 1240px)/2));top:62px;z-index:20;min-width:180px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:var(--shadow)}.account-menu a,.account-menu button{display:block;width:100%;padding:10px;border:0;border-radius:7px;background:transparent;color:var(--ink);text-align:left}.account-menu a:hover,.account-menu button:hover{background:var(--panel2)}main{min-height:calc(100vh - 100px)}.landing{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;max-width:1240px;margin:auto;padding:90px 24px}.hero h1{max-width:720px;margin:12px 0 22px;font-size:clamp(44px,5vw,76px);line-height:1.03;letter-spacing:-.055em}.hero>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:17px;line-height:1.75}.eyebrow{margin:0;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.15em}.preview{display:grid;gap:14px}.preview article,.panel{border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}.preview article{padding:28px}.preview span{color:var(--accent);font-weight:900}.preview strong{display:block;margin:16px 0 8px;font-size:23px}.preview p,.aside p{color:var(--muted);line-height:1.65}.page-shell{max-width:1040px;margin:auto;padding:55px 24px 90px}.page-heading{margin-bottom:22px}.page-heading h1{margin:8px 0 0;font-size:32px;letter-spacing:-.035em}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}.content-grid>.panel:only-child{grid-column:1/-1;max-width:620px;width:100%;justify-self:center}.panel{padding:28px}.aside{position:sticky;top:24px}.field{display:grid;gap:8px;margin-bottom:18px}.field>span,fieldset legend{font-size:13px;font-weight:800}.field input,.field select,select{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink)}fieldset{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:12px}.primary,.secondary,.danger-button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 16px;border-radius:10px;font-weight:850;text-decoration:none;cursor:pointer}.primary{border:1px solid var(--accent);background:var(--accent);color:var(--accentInk)}.secondary{border:1px solid var(--line);background:var(--panel2);color:var(--ink)}button:disabled,input:disabled{opacity:.58;cursor:wait}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.form-error{min-height:22px;color:var(--danger);font-weight:700}.help,.form-tail{color:var(--muted);font-size:13px;line-height:1.55}.form-tail{text-align:center;margin-top:24px}.invite-summary,.summary-card,.balance-card{display:grid;gap:5px;margin-bottom:24px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.balance-card strong{font-size:38px;color:var(--accent)}.success-state,.state,.empty-state{padding:28px;text-align:center}.success-state strong{display:block;color:var(--accent);font-size:28px}.spinner{display:inline-block;width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.location-search{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.location-search .field{margin:0}.result-list{display:grid;gap:7px;margin-top:12px}.result-list button{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--ink);text-align:left}.result-list button[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.result-list small,.card-list small,.ledger small{display:block;color:var(--muted);margin-top:5px}.card-list,.ledger{display:grid;gap:10px;padding:0;list-style:none}.card-list li,.ledger li{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:11px}.ledger b{color:var(--accent)}.status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:var(--panel2);font-size:11px;font-weight:850;white-space:nowrap}.status-pill.available,.status-pill.accepted{color:var(--accent)}.status-pill.reviewing{color:#e6ad3b}.status-pill.used,.status-pill.expired,.status-pill.revoked,.status-pill.rejected{color:var(--muted)}hr{margin:30px 0;border:0;border-top:1px solid var(--line)}.toast{position:fixed;right:22px;bottom:22px;z-index:50;max-width:min(390px,calc(100vw - 32px));padding:14px 16px;border-radius:11px;background:var(--ink);color:var(--bg);box-shadow:var(--shadow);font-weight:750}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media(max-width:700px){.candidate-banner{font-size:9px}.global-nav{padding:10px 14px;gap:8px;flex-wrap:wrap}.brand small{display:none}.service-nav{order:3;width:100%;display:grid;grid-template-columns:1fr 1fr}.service-nav a{text-align:center}.nav-login{padding-inline:8px}.landing{grid-template-columns:1fr;gap:30px;padding:52px 18px}.hero h1{font-size:41px}.hero>p:not(.eyebrow){font-size:15px}.preview{grid-template-columns:1fr}.page-shell{padding:34px 14px 72px}.page-heading h1{font-size:27px}.content-grid{grid-template-columns:1fr}.panel{padding:20px}.aside{position:static}.button-row{display:grid;grid-template-columns:1fr}.button-row>*{width:100%}.location-search{grid-template-columns:1fr}.card-list li,.ledger li{align-items:flex-start}.account-menu{right:12px;top:58px}.toast{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}}
.search-combobox{position:relative;min-width:0}.search-combobox>.field{margin-bottom:0}.search-results{position:absolute;inset:calc(100% + 6px) 0 auto;z-index:30;display:grid;max-height:min(19rem,42vh);overflow-y:auto;overscroll-behavior:contain;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);box-shadow:var(--shadow);scrollbar-color:var(--line) transparent}.search-results[hidden]{display:none}.search-option{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;width:100%;min-height:56px;padding:10px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.search-copy{display:grid;min-width:0;gap:4px}.search-copy strong,.search-copy small{overflow-wrap:anywhere;white-space:normal}.search-copy small{color:var(--muted);font-size:12px;line-height:1.45}.search-check{color:var(--accent);font-size:18px;font-weight:900;text-align:center}.search-option:hover,.search-option.is-active{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.search-option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 17%,var(--panel))}.search-option:focus-visible{position:relative;z-index:1;outline:3px solid var(--focus);outline-offset:-2px}.search-state{display:flex;align-items:center;justify-content:center;gap:9px;min-height:64px;padding:12px;color:var(--muted);font-size:13px;line-height:1.5;text-align:center}.search-state.is-error{color:var(--danger)}.search-spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.field-status{min-height:20px;margin:7px 0 16px;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:700px){.search-results{max-height:min(17rem,40vh);border-radius:12px}.search-option{min-height:56px;padding:10px}.search-copy strong{font-size:14px}.search-copy small{font-size:11px}}
.is-onboarding .brand{pointer-events:none}.is-onboarding .global-nav{position:sticky;top:0;z-index:40}.onboarding-shell{max-width:760px;padding-top:28px}.onboarding-progress{position:sticky;top:68px;z-index:20;margin-bottom:18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.onboarding-progress>div:first-child{display:flex;justify-content:space-between;gap:12px}.onboarding-progress>div:first-child span{color:var(--accent);font-weight:900}.onboarding-progress ol{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0 8px;padding:0;list-style:none}.onboarding-progress li{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted);font-size:11px}.onboarding-progress li span{display:grid;place-items:center;flex:0 0 22px;height:22px;border:1px solid var(--line);border-radius:50%;font-style:normal}.onboarding-progress li em{overflow:hidden;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.onboarding-progress li.is-current,.onboarding-progress li.is-done{color:var(--ink);font-weight:800}.onboarding-progress li.is-current span,.onboarding-progress li.is-done span{border-color:var(--accent);background:var(--accent);color:var(--accentInk)}.progress-track{height:3px;overflow:hidden;border-radius:99px;background:var(--line)}.progress-track span{display:block;height:100%;background:var(--accent);transition:width .2s ease}.progress-track .step-1{width:25%}.progress-track .step-2{width:50%}.progress-track .step-3{width:75%}.progress-track .step-4{width:100%}.field-feedback{min-height:21px;margin:-11px 0 14px;font-size:12px;font-weight:750}.field-feedback.is-neutral{color:var(--muted)}.field-feedback.is-error{color:var(--danger)}.field-feedback.is-success{color:var(--accent)}.field:has(+.field-feedback.is-error) input{border-color:var(--danger)}.field:has(+.field-feedback.is-success) input{border-color:var(--accent)}.password-field{position:relative}.password-field .field input{padding-right:72px}.password-toggle{position:absolute;right:7px;bottom:25px;min-width:54px;min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font-size:12px;font-weight:800}.invite-summary{grid-template-columns:auto 1fr;align-items:center;color:var(--accent)}
@media(max-width:700px){.onboarding-shell{padding:14px 12px calc(76px + env(safe-area-inset-bottom))}.onboarding-progress{top:57px;margin-inline:-2px;padding:11px 12px}.onboarding-progress li em{display:none}.onboarding-progress ol{justify-items:center}.onboarding-progress li{justify-content:center}.is-onboarding .global-nav{flex-wrap:nowrap}.is-onboarding .nav-actions{margin-left:auto}}
.bound-phone{display:grid;gap:5px;margin-bottom:16px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.bound-phone span{color:var(--muted);font-size:12px}.bound-phone strong{font-size:21px}
.field-status.is-neutral{color:var(--muted)}.field-status.is-error{color:var(--danger)}.field-status.is-success{color:var(--accent)}.password-field .field{margin-bottom:0}.password-field .field input{padding-right:80px}.password-toggle{right:4px;bottom:2px;display:grid;place-items:center;min-width:60px;min-height:44px;height:44px;padding:0 10px}.password-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media(max-width:700px){.password-toggle{min-width:62px;min-height:44px}}
.onboarding-progress ol{grid-template-columns:repeat(3,1fr)}.progress-track .step-1{width:33.333%}.progress-track .step-2{width:66.666%}.progress-track .step-3{width:100%}
:root{--field-label-gap:8px;--field-feedback-gap:7px;--field-group-gap:18px;--page-content-max:1040px;--accessible-success:var(--brand-text)}:root[data-theme=light]{--accessible-success:var(--brand-text)}.page-shell{width:min(100%,var(--page-content-max))}.field{gap:var(--field-label-gap);margin-bottom:var(--field-group-gap)}.field-feedback,.field-status{margin-top:var(--field-feedback-gap)}.field-feedback.is-success,.field-status.is-success,.persistent-status.is-success{color:var(--accessible-success)}:where(input,select,textarea):focus-visible{outline:0;border-color:var(--accessible-success);box-shadow:0 0 0 1px var(--accessible-success)}textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);resize:vertical}label[for=addressDetail]{margin-top:28px}.account-email-current{display:grid;gap:5px;margin-bottom:20px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.account-email-current span{color:var(--muted);font-size:12px}.persistent-status{margin:0 0 18px;padding:12px;border:1px solid color-mix(in srgb,var(--accessible-success) 55%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--accessible-success) 10%,var(--panel))}.welcome-copy{color:var(--muted);font-size:17px}.welcome-points{display:grid;gap:10px;margin:28px 0}.welcome-points>div{display:flex;justify-content:space-between;gap:20px;padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--panel2)}.welcome-points strong{color:var(--accessible-success)}.welcome-points .total{border-color:var(--accessible-success);font-size:18px}.suggestion-result{display:grid;gap:7px;justify-items:end}.correction-dialog{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}.correction-dialog::backdrop{background:rgba(0,0,0,.62)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-heading h2{margin:0}.correction-context{display:grid;gap:8px;margin:18px 0;padding:14px;border-radius:10px;background:var(--panel2)}.correction-context div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px}.correction-context dt{color:var(--muted)}.correction-context dd{margin:0;overflow-wrap:anywhere}.correction-dialog .button-row{position:sticky;bottom:0;padding-top:10px;background:var(--panel)}
@media(max-width:700px){.correction-dialog{padding:18px;margin:auto}.correction-dialog .button-row{padding-bottom:max(4px,env(safe-area-inset-bottom))}.welcome-points>div{min-height:52px}.password-toggle{right:4px;top:28px;bottom:auto}}

.ai-loading-region{position:relative;pointer-events:none}.ai-loading-region>*{visibility:hidden}.ai-loading-region::after{content:"";position:absolute;inset:0;border:1px solid var(--line);border-radius:12px;background:linear-gradient(100deg,var(--panel2) 20%,color-mix(in srgb,var(--brand-subtle) 35%,var(--panel)) 45%,var(--panel2) 70%);background-size:220% 100%;animation:ai-skeleton-shift 1.3s ease-in-out infinite}.ai-loading-region[data-load-state=error]::after{content:"설정을 불러오지 못했습니다. 다시 시도해 주세요.";display:grid;place-items:start;padding:18px;color:var(--muted);background:var(--panel2);animation:none}.story-region{display:grid;gap:12px}.story-skeleton{display:grid;gap:12px;min-block-size:178px;overflow:hidden}.story-skeleton>*{display:block;border-radius:7px;background:linear-gradient(100deg,var(--panel2) 20%,color-mix(in srgb,var(--brand-subtle) 35%,var(--panel)) 45%,var(--panel2) 70%);background-size:220% 100%;animation:ai-skeleton-shift 1.3s ease-in-out infinite}.story-skeleton span{inline-size:96px;block-size:24px}.story-skeleton h3{inline-size:min(78%,34rem);block-size:24px;margin:0}.story-skeleton p{inline-size:100%;block-size:44px;margin:0}.story-skeleton small{inline-size:55%;block-size:16px}@keyframes ai-skeleton-shift{to{background-position:-220% 0}}@media(prefers-reduced-motion:reduce){.ai-loading-region::after,.story-skeleton>*{animation:none}}@media(max-width:700px){.story-skeleton{min-block-size:196px}}
.story-region .summary-card.is-deep-linked{border-color:var(--brand-border);background:color-mix(in srgb,var(--brand-subtle) 42%,var(--panel));box-shadow:inset 3px 0 0 var(--brand-primary)}.story-region .summary-card>span:nth-child(2){color:var(--brand-text);font-weight:850}.story-region .summary-card .status-pill{border:1px solid var(--brand-border);background:var(--brand-subtle);color:var(--brand-text)}.story-region .summary-card h3 a{color:var(--brand-text);text-decoration-thickness:1px;text-underline-offset:3px}.story-region [data-story-read][aria-pressed=true]{border-color:var(--success-text);background:var(--success-subtle);color:var(--success-text)}.story-region [data-story-read][aria-pressed=false]{border-color:var(--line);background:var(--panel2);color:var(--ink)}
/* Input focus is shared with the keyword board in brand-tokens.css. */
:where(.service-nav a,.nav-login,.account-button,.icon-button,.account-menu a,.account-menu button){min-height:44px}:where(button,a,input,select,textarea){touch-action:manipulation}

/* Saved profile overview and trend-aligned inbox surfaces. */
.profile-intro{margin:0 0 24px;color:var(--muted);line-height:1.6}
.profile-details{margin:0}.profile-details>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.profile-details>div:first-child{padding-top:0}.profile-details dt{color:var(--muted);font-size:13px;font-weight:700}.profile-details dd{margin:0;overflow-wrap:anywhere;line-height:1.6}
.ai-news-page{--panel2:#0c0f16;--ink:#f7f8fc;--muted:#9299aa;--line:#272c3a;line-height:1.5}
html[data-theme=light] .ai-news-page{--panel2:#fff;--ink:#15204a;--muted:#667085;--line:#e3e7f0}
.ai-news-page .page-shell{width:min(100%,1500px);max-width:1500px;padding:26px 24px 60px}
.ai-news-page .page-heading{margin-bottom:20px}.ai-news-page .page-heading h1{margin:4px 0 8px;font-size:28px;letter-spacing:-.04em}
.ai-news-page #status{color:var(--muted);font-size:13px}.news-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;max-width:720px;margin:auto;align-items:start}
.news-layout>*{min-width:0}.ai-news-page #settings,.news-feed{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.ai-news-page fieldset{min-width:0;margin:0 0 24px;padding:0 0 24px;border:0;border-bottom:1px solid var(--line);border-radius:0}
.ai-news-page legend{margin-bottom:16px;padding:0;font-size:16px}.ai-news-page .field input{min-width:0;background:var(--bg)}
.ai-news-page .switch-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;margin:16px 0;cursor:pointer}
.ai-news-page .switch-row>span{min-width:0}.ai-news-page .switch-row small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:6px}
.ai-news-page .switch-row input{flex:none;width:24px;height:24px;margin:10px;accent-color:var(--brand-text)}
.news-feed h2{margin:0 0 20px;font-size:20px}.ai-news-page .summary-card{margin:0;padding:20px;background:var(--panel);border-radius:12px;overflow-wrap:anywhere}
.ai-news-page .summary-card h3{font-size:17px;line-height:1.5}.ai-news-page .summary-card p{color:var(--muted);line-height:1.7}
@media(min-width:801px) and (max-width:1199px){.ai-news-page .page-shell{padding-inline:32px}.news-layout{max-width:880px}}
@media(min-width:1101px){.news-layout{grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr)}}
@media(min-width:1200px){.ai-news-page .page-shell{padding-inline:40px}.news-layout{max-width:1420px}.ai-news-page #settings,.news-feed{padding:28px}}
@media(max-width:560px){.ai-news-page .page-shell{padding:18px 12px 90px}.ai-news-page .page-heading h1{font-size:23px}.news-layout{gap:16px}.ai-news-page #settings,.news-feed{padding:18px 16px;border-radius:14px}.ai-news-page .summary-card{padding:16px}.profile-details>div{grid-template-columns:1fr;gap:6px;padding:18px 0}}

@media(min-width:900px){html[data-theme=light] .ai-news-page{--bg:var(--app-desktop-background,#f0f0f0)}}
