@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css";
:root{--lam-rose-500:#b52f4b;--lam-rose-600:#96243d;--lam-rose-100:#fbe9ec;--lam-pink-500:#e23d7d;--lam-ink-900:#251714;--lam-ink-600:#6f625d;--lam-ink-500:#786a65;--lam-paper-100:#fffdfa;--lam-paper-200:#faf6f1;--lam-paper-300:#f4eee7;--lam-green-600:#237a58;--lam-amber-700:#9a5a10;--lam-red-600:#a8213f;--surface-page:var(--lam-paper-300);--surface-raised:var(--lam-paper-100);--surface-muted:var(--lam-paper-200);--surface-inverse:var(--lam-ink-900);--text-primary:var(--lam-ink-900);--text-secondary:var(--lam-ink-600);--text-tertiary:var(--lam-ink-500);--text-on-inverse:var(--lam-paper-100);--border-default:#25171421;--border-strong:#2517143d;--action-primary:var(--lam-rose-500);--action-hover:var(--lam-rose-600);--action-subtle:var(--lam-rose-100);--accent-decorative:var(--lam-pink-500);--status-success:var(--lam-green-600);--status-warning:var(--lam-amber-700);--status-error:var(--lam-red-600);--radius-control:8px;--radius-card:10px;--radius-panel:12px;--radius-round:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--type-ui-h1-size:24px;--type-ui-h2-size:18px;--type-ui-h3-size:16px;--type-ui-body-size:14px;--type-ui-body-sm-size:13px;--type-ui-caption-size:12px;--type-ui-metric-size:28px;--type-ui-weight-regular:500;--type-ui-weight-bold:700}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:var(--surface-page);--ivory:#f8eee8;--silk:#f8eee7;--silk-warm:#f2dfd6;--white:var(--surface-raised);--ink:var(--text-primary);--muted:var(--text-secondary);--line:#211c1924;--soft-line:#be3a522e;--brand-rose:var(--accent-decorative);--brand-rose-deep:var(--action-primary);--brand-rose-dark:var(--action-hover);--brand-blush:#e5a2ad;--brand-cream:#f8ded8;--champagne:#b98b67;--champagne-ink:#916849;--olive:#6f7655;--success:#52755f;--warning:#8b642e;--danger:#a33d52;--info:#76523c;--bg:var(--surface-page);--surface:var(--surface-raised);--fg:var(--text-primary);--fg-soft:#584b46;--border:var(--line);--accent:var(--accent-decorative);--accent-strong:var(--action-primary);--accent-soft:#f8e1df;--accent-faint:#fff3f2;--success-soft:#f2f7f2;--warning-soft:#fff5e6;--danger-soft:#fff0f2;--info-soft:#fff6f0;--focus:var(--action-primary);--font-body:"Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--font-display:var(--font-body);--font-brand:Georgia, "Times New Roman", serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-shell:var(--radius-panel);--shadow-card:0 10px 28px #7e534417;--shadow-panel:0 28px 76px #7e534424;--shadow-control:0 14px 30px #aa4c5e38;--shadow-focus:0 0 0 4px #c85e7224;--ease-out:cubic-bezier(.32, .72, 0, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-fast:.1s;--duration-base:.18s;--duration-page:.26s;--z-sticky:20;--z-toast:100}*,:before,:after{box-sizing:border-box}html{background:var(--paper);min-width:320px;min-height:100%;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{background:var(--paper);min-width:320px;min-height:100%;color:var(--ink);margin:0;overflow-x:hidden}button,input{font:inherit}button,a,input,label{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}svg{flex:none;width:1.25em;height:1.25em;display:block}h1,h2,h3,p{margin-block:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance}p,li{text-wrap:pretty;word-break:keep-all}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{z-index:var(--z-toast);border:1px solid var(--brand-rose-deep);border-radius:var(--radius-control);background:var(--white);min-height:44px;box-shadow:var(--shadow-card);color:var(--brand-rose-dark);transition:transform var(--duration-base) var(--ease-out);align-items:center;padding:0 16px;font-size:14px;font-weight:800;display:inline-flex;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{border-radius:var(--radius-round);width:fit-content;color:var(--brand-rose-dark);letter-spacing:0;background:#f8ded8b8;padding:7px 12px;font-size:12px;font-weight:850;line-height:1}
.match-page{background:linear-gradient(90deg, #b7815e14 1px, transparent 1px), linear-gradient(180deg, #ffffffe0, #f8eee770 46%, #fff8f3f0), radial-gradient(ellipse at 2% 0%, #fffffff5 0 18%, transparent 44%), radial-gradient(ellipse at 96% 9%, #f0d5cd75 0 12%, transparent 38%), linear-gradient(168deg, #ffffff85, #f6e2da61 45%, #fffaf7e6), var(--paper);background-size:42px 42px,auto,auto,auto,auto;place-items:center;min-height:100svh;padding:24px 14px 54px;display:grid;position:relative;overflow:hidden}.match-page:before,.match-page:after{pointer-events:none;content:"";position:fixed}.match-page:before{opacity:.55;background:linear-gradient(118deg,#0000 0 32%,#fffc 33%,#0000 40%),radial-gradient(at 8% 13%,#d2a58f2e,#0000 16rem),radial-gradient(at 88% 74%,#d577891c,#0000 18rem);inset:0}.match-page:after{opacity:.38;background:linear-gradient(34deg,#0000 0 35%,#c1795b33 36% 41%,#0000 42%),linear-gradient(152deg,#0000 0 43%,#c1795b29 44% 49%,#0000 50%);width:248px;height:180px;bottom:-42px;left:-62px}.match-shell{z-index:1;width:min(100%,424px);position:relative}.brand-header{min-height:96px;color:var(--champagne-ink);text-align:center;align-content:center;justify-items:center;gap:4px;padding:0 20px 16px;display:grid}.brand-mark{border-radius:var(--radius-round);width:32px;height:32px;color:var(--champagne);background:#ffffffad;border:1px solid #b7815e47;place-items:center;display:inline-grid}.brand-mark svg{stroke-width:1.45px;width:21px;height:21px}.brand-name{color:var(--champagne-ink);font-family:var(--font-brand);font-size:21px;font-weight:500;line-height:1.05}.brand-kicker{color:var(--champagne-ink);order:3;margin-top:-1px;font-size:12px;font-weight:750}.brand-tagline{display:none}.flow-panel{border-radius:var(--radius-shell);background:linear-gradient(180deg, #fffffff7, #fffaf7ed), var(--white);min-height:558px;box-shadow:var(--shadow-panel);border:1px solid #ffffffdb;position:relative;overflow:hidden}.flow-panel:before{pointer-events:none;content:"";background:linear-gradient(128deg,#ffffffc2,#0000 28%),radial-gradient(at 50% 0,#ffffffd1,#0000 17rem),linear-gradient(90deg,#b7815e0d 1px,#0000 1px) 0 0/36px 36px;position:absolute;inset:0}.workspace{z-index:1;min-width:0;position:relative}.workspace-inner{min-width:0;animation:page-enter var(--duration-page) var(--ease-out) both;flex-direction:column;padding:22px 26px 28px;display:flex}.login-step,.events-step,.ballot-step,.review-step{flex-direction:column;min-width:0;display:flex}.workspace-header{gap:12px;margin-bottom:24px;display:grid}.login-ornament{width:30px;height:30px;color:var(--champagne);align-self:center;place-items:center;margin-bottom:2px;display:grid}.login-ornament svg{stroke-width:1.45px;width:20px;height:20px}.login-step .workspace-header{text-align:center;justify-items:center;margin-bottom:0}.login-step .workspace-header .eyebrow{display:none}.login-step .workspace-header h1{max-width:none}.workspace-header.with-back{grid-template-columns:auto minmax(0,1fr);column-gap:12px}.workspace-header.with-back .back-button{grid-row:1/span 3;align-self:start}.workspace-header h1{max-width:15ch;color:var(--ink);letter-spacing:-.025em;overflow-wrap:anywhere;font-size:clamp(26px,8vw,30px);font-weight:900;line-height:1.28}.workspace-header h1:focus-visible,.completion-view h1:focus-visible{outline:none}.workspace-header>p:last-child{color:var(--muted);font-size:14px;font-weight:620;line-height:1.68}.back-button{border-radius:var(--radius-control);width:44px;height:44px;color:var(--muted);cursor:pointer;transition:background-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);background:#ffffffc7;border:1px solid #b7815e3d;place-items:center;display:inline-grid}.back-button:hover,.back-button:focus-visible{background:var(--accent-faint);color:var(--brand-rose-dark)}.login-step{gap:17px}.login-intro{justify-items:center;gap:17px;display:grid}.trust-note{border-radius:var(--radius-card);color:var(--muted);background:#fffaf7d1;border:1px solid #b7815e2e;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;margin-top:22px;padding:15px;display:grid}.phone-form .trust-note{margin-top:0}.trust-note svg{width:18px;height:18px;color:var(--success)}.trust-note strong{color:var(--ink);margin-bottom:4px;font-size:13px;display:block}.trust-note span{font-size:12px;line-height:1.6;display:block}.salon-footer{color:var(--muted);text-align:center;justify-items:center;gap:5px;margin-top:2px;display:grid}.salon-footer strong{font-family:var(--font-brand);font-size:14px;font-weight:500}.salon-footer span{font-size:12px;font-weight:650}.salon-footer svg{width:17px;height:17px;color:var(--champagne);stroke-width:1.45px}
.progress-panel{z-index:1;background:#fff8f3b8;border-bottom:1px solid #b7815e2e;gap:12px;padding:18px 26px 16px;display:grid;position:relative}.progress-caption{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:700;display:flex}.progress-caption>span{color:var(--brand-rose-dark);font-weight:850}.progress-caption strong{color:var(--muted);font-size:12px}.progress-list{grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.progress-list:before{content:"";background:#b7815e38;height:1px;position:absolute;top:13px;left:10%;right:10%}.progress-item{justify-items:center;gap:6px;min-width:0;display:grid;position:relative}.progress-dot{z-index:1;border-radius:var(--radius-round);background:var(--white);width:27px;height:27px;color:var(--muted);border:1px solid #b7815e52;place-items:center;font-size:10px;font-weight:850;display:grid;position:relative}.progress-dot svg{width:14px;height:14px}.progress-label{max-width:100%;color:var(--muted);text-align:center;font-size:12px;font-weight:700;line-height:1.3}.progress-item.is-complete .progress-dot{border-color:var(--brand-blush);background:var(--accent-soft);color:var(--brand-rose-dark)}.progress-item.is-current .progress-dot{border-color:var(--brand-rose-deep);background:var(--brand-rose-deep);color:var(--white);box-shadow:0 0 0 4px #c85e7221}.progress-item.is-current .progress-label{color:var(--brand-rose-dark);font-weight:850}
.button{border-radius:var(--radius-control);cursor:pointer;min-height:52px;transition:transform var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:850;line-height:1;display:inline-flex}.button svg{width:18px;height:18px}.button:active,.event-card:active,.candidate-card:active{transform:translateY(1px)scale(.99)}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.58}.button[aria-disabled=true]{pointer-events:none}.button-primary{border-color:var(--brand-rose-deep);background:var(--brand-rose-deep);color:var(--white);box-shadow:var(--shadow-control)}.button-primary:hover,.button-primary:focus-visible{background:var(--brand-rose-dark);color:var(--white);transform:translateY(-1px);box-shadow:0 18px 38px #89364945}.button-secondary{border-color:var(--brand-rose-deep);color:var(--brand-rose-dark);background:#ffffffd1}.button-secondary:hover,.button-secondary:focus-visible{background:var(--accent-faint);box-shadow:0 10px 24px #aa4c5e1a}.button-wide{width:100%}.button-spinner{border-radius:var(--radius-round);border:2px solid;border-right-color:#0000;width:18px;height:18px;animation:.72s linear infinite spin}.submit-button,.retry-action{min-width:0}.phone-form,.form-field{gap:14px;display:grid}.form-field{gap:9px}.field-label,.section-label{color:var(--ink);font-size:13px;font-weight:850}.input-control{border:1px solid var(--brand-rose-deep);border-radius:var(--radius-control);width:100%;min-height:52px;color:var(--ink);font-variant-numeric:tabular-nums;transition:border-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);background:#ffffffd6;padding:0 16px;font-size:15px;font-weight:650}.input-control::placeholder{color:var(--muted)}.input-control:hover,.input-control:focus-visible{border-color:var(--brand-rose-dark);background:var(--white);box-shadow:var(--shadow-focus);outline:none}.event-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.event-card{border:1px solid var(--brand-rose-deep);border-radius:var(--radius-card);text-align:left;cursor:pointer;width:100%;min-height:92px;transition:transform var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);background:linear-gradient(135deg,#f8eee7e6,#fffffff0);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;display:grid}.event-card-copy{gap:9px;min-width:0;display:grid}.event-card-copy>strong{overflow-wrap:anywhere;font-size:16px;font-weight:900;line-height:1.4}.event-card-meta{color:var(--muted);gap:5px;font-size:11px;font-weight:650;display:grid}.event-card-meta span{align-items:center;gap:5px;display:inline-flex}.event-card-meta svg{width:14px;height:14px}.badge{border:1px solid var(--soft-line);border-radius:var(--radius-round);background:var(--white);min-height:28px;color:var(--brand-rose-dark);white-space:nowrap;justify-content:center;align-items:center;padding:4px 9px;font-size:10px;font-weight:850;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--brand-rose-dark);border-color:#a9475b47}.workspace-actions{justify-content:flex-end;gap:10px;margin-top:auto;padding-top:26px;display:flex}.workspace-actions .button-primary{flex:1}
.identity-card{border-radius:var(--radius-card);background:linear-gradient(135deg,#f6faf4e6,#ffffffe6);border:1px solid #5b806738;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:15px;display:grid}.identity-seal{border-radius:var(--radius-round);background:var(--success-soft);width:38px;height:38px;color:var(--success);place-items:center;display:grid}.identity-seal svg{width:20px;height:20px}.identity-card-copy{gap:4px;min-width:0;display:grid}.identity-card-copy strong{font-size:13px;font-weight:850;line-height:1.45}.identity-card-copy span{color:var(--muted);font-size:11px;line-height:1.5}.selection-counter{color:var(--brand-rose-dark);font-variant-numeric:tabular-nums;grid-column:2;font-size:12px;font-weight:850}.candidate-fieldset{border:0;gap:13px;min-width:0;margin:22px 0 0;padding:0;display:grid}.candidate-fieldset legend{width:100%;padding:0}.section-label-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.section-label-row small{color:var(--muted);font-size:10px;font-weight:650}.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.candidate-card{border-radius:var(--radius-card);text-align:left;cursor:pointer;min-width:0;min-height:82px;transition:transform var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);background:#ffffffdb;border:1px solid #a9475b3d;align-content:center;justify-items:start;gap:6px;padding:13px;display:grid;position:relative}.candidate-card strong{overflow-wrap:anywhere;max-width:calc(100% - 26px);font-size:15px;font-weight:900}.candidate-card small{color:var(--muted);font-size:10px}.candidate-card.is-selected{border-color:var(--brand-rose-deep);box-shadow:inset 0 0 0 1px var(--brand-rose-deep), 0 8px 20px #aa4c5e1a;background:linear-gradient(135deg,#fff1f0f5,#fffafae6)}.candidate-rank{border-radius:var(--radius-round);background:var(--brand-rose-deep);width:25px;height:25px;color:var(--white);place-items:center;font-size:10px;font-weight:900;display:grid;position:absolute;top:10px;right:10px}.benefit-card{border-radius:var(--radius-card);background:linear-gradient(135deg,#fffaf2eb,#ffffffd6);border:1px solid #a9475b57;gap:14px;margin-top:20px;padding:16px;display:grid}.benefit-card.is-active{border-color:var(--brand-rose-deep);background:linear-gradient(135deg,#fff1f0f5,#fffafae6);box-shadow:0 12px 28px #aa4c5e1a}.benefit-toggle{border-radius:var(--radius-control);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;min-height:48px;padding:0;display:grid}.benefit-toggle:disabled{cursor:not-allowed}.toggle-box{border:1px solid var(--brand-rose-deep);background:var(--white);width:30px;height:30px;color:var(--white);border-radius:11px;place-items:center;display:grid}.benefit-toggle[aria-pressed=true] .toggle-box{background:var(--brand-rose-deep)}.toggle-box svg{width:17px;height:17px}.benefit-copy{gap:4px;min-width:0;display:grid}.benefit-copy strong{font-size:14px;font-weight:900}.benefit-copy small{color:var(--muted);font-size:11px;line-height:1.55}.toggle-state{color:var(--brand-rose-dark);grid-column:2;font-size:10px;font-weight:850}.upload-control{border:1px dashed var(--brand-rose-deep);min-height:104px;color:var(--muted);text-align:center;cursor:pointer;background:#ffffffd6;border-radius:20px;place-items:center;gap:7px;padding:16px;display:grid;position:relative}.upload-control:hover,.upload-control:focus-within{background:var(--white);box-shadow:var(--shadow-focus)}.upload-control input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-control svg{width:22px;height:22px;color:var(--champagne)}.upload-control strong{max-width:100%;color:var(--ink);overflow-wrap:anywhere;font-size:12px}.upload-control span{color:var(--muted);font-size:10px}
.selection-summary{border-top:1px solid #b7815e33;gap:11px;margin-top:18px;padding-top:15px;display:grid}.selection-summary>p{color:var(--muted);font-size:12px;line-height:1.55}.selection-summary ol{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.selection-summary li{border-radius:var(--radius-round);background:#ffffffd6;border:1px solid #a9475b33;align-items:center;gap:7px;min-height:34px;padding:3px 11px 3px 5px;font-size:11px;display:inline-flex}.selection-summary b{border-radius:var(--radius-round);background:var(--brand-rose-deep);color:var(--white);padding:5px 7px;font-size:9px}.review-summary{gap:14px;display:grid}.review-layout,.review-choice-column,.review-decision{min-width:0;display:grid}.review-layout{gap:18px}.review-decision{align-content:start}.review-decision .workspace-actions{margin-top:0}.review-event{border-bottom:1px solid #b7815e33;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding-bottom:16px;display:grid}.review-event strong{overflow-wrap:anywhere;margin-bottom:6px;font-size:16px;font-weight:900;display:block}.review-event span{color:var(--muted);font-size:11px}.ranked-list{gap:9px;margin:0;padding:0;list-style:none;display:grid;position:relative}.ranked-list:before{content:"";background:#b7815e38;width:1px;position:absolute;top:21px;bottom:21px;left:21px}.ranked-item{border-radius:var(--radius-card);background:#ffffffe0;border:1px solid #a9475b2e;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;min-height:58px;padding:7px 12px 7px 7px;display:grid;position:relative}.ranked-number{z-index:1;border-radius:var(--radius-round);background:var(--brand-rose-deep);width:42px;height:42px;color:var(--white);place-items:center;font-size:11px;font-weight:900;display:grid;position:relative}.ranked-item strong{overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:900}.ranked-item small{color:var(--muted);white-space:nowrap;font-size:10px}.attachment-row{border-radius:var(--radius-control);background:var(--surface-muted);border:1px solid #b7815e33;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:50px;padding:11px 13px;display:grid}.attachment-row svg{color:var(--champagne)}.attachment-row strong{overflow-wrap:anywhere;min-width:0;font-size:12px}.attachment-row span{color:var(--muted);font-size:10px}.completion-view{text-align:center;align-content:center;justify-items:center;gap:16px;min-height:440px;display:grid}.completion-view h1{letter-spacing:-.025em;max-width:15ch;font-size:28px;font-weight:900;line-height:1.25}.completion-view>p{max-width:34ch;color:var(--muted);font-size:13px;line-height:1.65}.status-seal{border-radius:var(--radius-round);background:var(--surface-muted);width:64px;height:64px;color:var(--champagne);border:1px solid #b7815e38;place-items:center;display:grid}.status-seal svg{width:28px;height:28px}.status-seal.is-success{background:var(--success-soft);color:var(--success);border-color:#5b806747;box-shadow:0 0 0 8px #5b80670f}.status-seal.is-warning{background:var(--warning-soft);color:var(--warning);border-color:#8b642e4d}.completion-card{border-radius:var(--radius-card);text-align:left;background:linear-gradient(135deg,#fff1f0f0,#ffffffe6);border:1px solid #a9475b33;gap:13px;width:100%;margin-top:4px;padding:16px;display:grid}.completion-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.completion-card-header strong{font-size:13px}.completion-card .event-caption{color:var(--muted);font-size:11px}.submission-time{color:var(--muted);border-top:1px solid #b7815e2e;border-bottom:1px solid #b7815e2e;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding-block:10px;font-size:12px;display:grid}.submission-time svg{width:16px;height:16px;color:var(--champagne)}.submission-time time{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.completion-card .ranked-list:before{display:none}.completion-card .ranked-item{background:var(--white)}
.notice{border:1px solid #b7815e38;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin:14px 0 0;padding:13px;font-size:12px;font-weight:650;line-height:1.55;display:grid}.notice svg{width:18px;height:18px;margin-top:1px}.notice-info{background:var(--info-soft);color:var(--info);border-color:#b7815e47}.notice-error{background:var(--danger-soft);color:var(--danger);border-color:#a33d5257}.notice-warning{background:var(--warning-soft);color:var(--warning);border-color:#8b642e52}.irreversible-notice{background:var(--danger-soft);color:var(--danger);border-color:#a33d527a;margin-top:0}.irreversible-notice span,.irreversible-notice strong,.irreversible-notice small{display:block}.irreversible-notice strong{margin-bottom:7px;font-size:13px}.irreversible-notice small{font-size:12px;font-weight:650}.submission-feedback{border-radius:var(--radius-control);color:var(--fg-soft);margin:0;font-weight:700}.submission-feedback[role=alert]{color:var(--danger)}.feedback-stack{gap:10px;margin-top:14px;display:grid}.feedback-stack .notice,.phone-form .feedback-stack{margin-top:0}.error-message,.notice-message{scroll-margin-block:20px}.error-message:focus,.notice-message:focus,.submission-feedback:focus{outline:3px solid var(--focus);outline-offset:3px}.inline-error{color:var(--danger);margin:13px 0 0;font-size:12px;font-weight:750;line-height:1.5}.empty-state{border-radius:var(--radius-card);text-align:center;background:#fffaf7c2;border:1px dashed #b7815e4d;align-content:center;justify-items:center;gap:14px;min-height:300px;padding:24px;display:grid}.empty-state h2{font-size:21px;font-weight:900}.empty-state p{max-width:32ch;color:var(--muted);font-size:13px;line-height:1.65}.empty-state .status-seal{width:58px;height:58px}.empty-state .status-seal svg{width:26px;height:26px}.empty-state:focus{outline:3px solid var(--focus);outline-offset:3px}.empty-candidates{min-height:260px;margin-top:18px}.skeleton-stack{gap:12px;width:100%;margin-top:12px;display:grid}.skeleton-line,.skeleton-card{border-radius:var(--radius-control);background:var(--ivory);position:relative;overflow:hidden}.skeleton-line:after,.skeleton-card:after{animation:shimmer 1.35s var(--ease-in-out) infinite;content:"";background:linear-gradient(100deg,#0000 20%,#ffffffc7 48%,#0000 76%);position:absolute;inset:0;transform:translate(-100%)}.skeleton-line{width:62%;height:15px}.skeleton-line.short{width:38%}.skeleton-card{border:1px solid #b7815e2e;height:92px}
@media (hover:hover) and (pointer:fine){.event-card:hover,.event-card:focus-visible,.candidate-card:hover,.candidate-card:focus-visible{border-color:var(--brand-rose-deep);transform:translateY(-1px);box-shadow:0 12px 26px #aa4c5e1a}}@media (min-width:900px){.match-page{padding:32px 24px 64px}.match-shell{width:min(100%,960px)}.brand-header{min-height:112px;padding-bottom:20px}.brand-name{font-size:24px}.brand-tagline{color:var(--champagne-ink);margin-top:3px;font-size:12px;font-weight:700;display:block}.progress-panel{padding-inline:40px}.workspace-inner{padding:32px 40px 40px}.login-step{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);align-items:center;gap:40px;min-height:360px;display:grid}.login-intro{align-content:center;justify-items:start}.login-ornament{align-self:auto}.login-step .workspace-header{text-align:left;justify-items:start}.login-step .workspace-header .eyebrow{display:inline-flex}.login-step .phone-form{border-radius:var(--radius-card);background:#fffaf7bd;border:1px solid #b7815e2e;padding:24px}.login-step .salon-footer{text-align:left;justify-items:start}.event-list{grid-template-columns:repeat(3,minmax(0,1fr))}.event-list>li{min-width:0;display:flex}.event-card{grid-template-columns:minmax(0,1fr);align-content:space-between;align-items:start;gap:18px;min-height:184px}.event-card .badge{order:-1;justify-self:start}.event-card-meta{gap:8px;font-size:12px}.events-step>.skeleton-stack{grid-template-columns:repeat(3,minmax(0,1fr));min-height:184px}.events-step>.skeleton-stack .skeleton-line{grid-column:1/-1}.events-step>.empty-state,.ballot-step>.empty-state{width:min(100%,620px);margin-inline:auto}.ballot-step{grid-template-columns:minmax(0,1fr) 300px;align-items:start;column-gap:24px;display:grid}.ballot-step>.workspace-header,.ballot-step>.identity-card,.ballot-step>.empty-state,.ballot-step>.inline-error,.ballot-step>.feedback-stack,.ballot-step>.notice,.ballot-step>.workspace-actions{grid-column:1/-1}.candidate-fieldset{grid-area:3/1/span 2}.candidate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.candidate-card{min-height:100px}.selection-summary{border-radius:var(--radius-card);background:#fffaf7c2;border:1px solid #a9475b33;grid-area:3/2;align-self:start;margin-top:22px;padding:18px}.selection-summary ol{display:grid}.selection-summary li{border-radius:var(--radius-control);width:100%;min-height:44px;font-size:12px}.benefit-card{grid-area:4/2;align-self:start}.review-layout{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);align-items:start;gap:32px}.review-decision{border-radius:var(--radius-card);background:#fffaf7c2;border:1px solid #a9475b2e;padding:20px}.review-decision .workspace-actions{flex-direction:column;padding-top:16px}.review-decision .button{width:100%}.completion-view{max-width:560px;margin-inline:auto}}@media (max-width:420px){.match-page{padding:18px 10px 48px}.brand-header{min-height:94px;padding-bottom:14px}.flow-panel{border-radius:var(--radius-panel)}.progress-panel{padding-inline:22px}.workspace-inner{padding:22px 22px 25px}.workspace-header h1,.completion-view h1{font-size:27px}.workspace-actions{flex-direction:column;padding-top:22px}.workspace-actions .button{width:100%}}@media (max-width:360px){.progress-panel{padding-inline:18px}.progress-caption strong{text-overflow:ellipsis;white-space:nowrap;max-width:58%;overflow:hidden}.progress-label{letter-spacing:-.04em;font-size:12px}.workspace-inner{padding-inline:18px}.candidate-grid{gap:8px}.candidate-card{min-height:80px;padding:11px}.review-event,.ranked-item,.attachment-row{grid-template-columns:auto minmax(0,1fr)}.review-event .badge,.ranked-item small,.attachment-row span{grid-column:2;justify-self:start}.workspace-actions{flex-direction:column}.workspace-actions .button{width:100%}.completion-card-header{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
[data-app=vote]{--surface-page:#fff8f3;--surface-raised:#fff;--surface-muted:#fffaf7;--text-primary:#211c19;--text-secondary:#746762;--action-primary:#a9475b;--action-hover:#893649;--accent-decorative:#c85e72;--radius-control:14px;--radius-card:18px;--radius-panel:30px}
