.steps{display:flex;gap:8px;justify-content:center;margin-block-end:18px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.steps span{display:inline-flex;align-items:center;gap:6px}.steps .is-current{color:var(--gold-bright)}.category{border-top:1px solid var(--line-soft);padding-block-start:18px;margin-block-start:18px}.category:first-of-type{border-top:none;padding-block-start:0;margin-block-start:0}.category-name{font-family:var(--font-display);font-weight:700;font-size:17px;margin:0 0 2px}.category-prompt{color:var(--text-dim);font-size:13px;margin:0 0 14px}.category-optional{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-inline-start:6px}.confirm{text-align:center}.stamp{width:96px;height:96px;margin:0 auto 16px;border-radius:50%;border:3px solid var(--gold);display:flex;align-items:center;justify-content:center;transform:rotate(-8deg);background:var(--burgundy-soft)}.stamp span{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;color:var(--gold-bright);text-transform:uppercase;text-align:center;line-height:1.3}.confirm h2{font-family:var(--font-display);font-weight:700;font-size:22px;margin:0 0 8px}.confirm p{color:var(--text-dim);font-size:14px;line-height:1.5;margin:0}.recap{text-align:start;background:#00000040;border:1px solid var(--line-soft);border-radius:10px;padding:14px 16px;margin-block-start:16px;font-size:13.5px}.recap-group+.recap-group{border-top:1px solid var(--line-soft);margin-block-start:12px;padding-block-start:12px}.recap-category{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);margin-block-end:8px}.recap .k{color:var(--text-faint);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-block-end:2px}.recap .v{color:var(--text);margin-block-end:10px;line-height:1.45}.recap .v:last-child{margin-block-end:0}.panel-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-block-end:18px}.panel-nav{display:flex;gap:8px;flex-wrap:wrap}.panel-nav a{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);text-decoration:none;border:1px solid var(--line-soft);border-radius:999px;padding:7px 14px;transition:background .15s,color .15s}.panel-nav a:hover{background:var(--line-soft);color:var(--gold-bright)}.panel-nav a.is-active{border-color:var(--line);background:var(--burgundy-soft);color:var(--gold-bright)}.panel-user{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tally-category+.tally-category{border-top:1px solid var(--line);margin-block-start:20px;padding-block-start:16px}.tally-category-name{font-family:var(--font-display);font-weight:700;font-size:17px;margin:0 0 2px}.tally-row{border-top:1px solid var(--line-soft);padding-block:12px}.tally-row:first-of-type{border-top:none}.tally-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.tally-name{font-weight:600;font-size:14.5px}.tally-dept{color:var(--text-faint);font-size:12px;font-weight:400;margin-inline-start:6px}.tally-count{font-family:var(--font-mono);color:var(--gold-bright);font-size:13px;white-space:nowrap}.tally-bar{height:5px;border-radius:999px;background:var(--line-soft);margin-block:8px;overflow:hidden}.tally-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--burgundy),var(--gold))}.tally-reasons{list-style:none;padding:0;margin:0;display:grid;gap:6px}.tally-reasons li{font-size:12.5px;color:var(--text-dim);line-height:1.4;padding-inline-start:10px;border-left:2px solid var(--line-soft)}.reasons-toggle{background:none;border:none;color:var(--gold-bright);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;cursor:pointer;padding:6px 0 0}.reasons-toggle:hover{text-decoration:underline}.table-wrap{overflow-x:auto;margin-block-start:12px}table{width:100%;border-collapse:collapse;font-size:13.5px}th{text-align:start;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-weight:400;padding:8px 10px 8px 0;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:10px 10px 10px 0;border-bottom:1px solid var(--line-soft);vertical-align:middle;color:var(--text-dim)}td:first-child{color:var(--text)}tr.is-inactive td{opacity:.55}.cycle-item{border:1px solid var(--line-soft);border-radius:12px;padding:16px;margin-block-start:12px}.cycle-item header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.cycle-title{font-family:var(--font-display);font-weight:700;font-size:17px;margin:0}.cycle-edition{font-family:var(--font-mono);font-size:11px;color:var(--gold-bright);letter-spacing:.06em}.cycle-stats{font-size:12px;color:var(--text-faint);margin-block-start:4px}.category-item{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line-soft);padding-block:10px;font-size:13.5px}.subform{border:1px dashed var(--line-soft);border-radius:10px;padding:14px;margin-block-start:12px}.subform-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);margin-block-end:10px}.code-list{font-family:var(--font-mono);font-size:12.5px;line-height:1.9;background:#0000004d;border:1px solid var(--line-soft);border-radius:10px;padding:12px 14px;margin-block:12px;max-height:320px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:2px 12px;color:var(--text);-webkit-user-select:all;user-select:all}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-block-start:12px}.stat{border:1px solid var(--line-soft);border-radius:10px;padding:12px 14px}.stat-value{font-family:var(--font-mono);font-size:20px;color:var(--gold-bright)}.stat-label{font-size:11.5px;color:var(--text-faint)}.help-note{border:1px solid var(--line-soft);border-radius:10px;padding:10px 14px;margin-block-end:16px;background:#c9a22708}.help-note>summary{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-bright);cursor:pointer}.help-note>summary::marker{color:var(--gold)}.help-note[open]>summary{margin-block-end:8px}.help-note-body{display:grid;gap:8px;font-size:12.5px;line-height:1.5;color:var(--text-dim)}.help-note-body p{margin:0}.guide-overlap{display:grid;gap:8px}.guide-overlap-title{font-weight:600;margin:0}.guide-overlap p{margin:0}.guide-overlap-list{margin:0;padding-inline-start:18px;display:grid;gap:4px}.guide-overlap .btn{justify-self:start}.guide-status{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--line-soft);border-radius:12px;padding:14px 16px;margin-block:14px 4px;background:#00000026}.guide-status-name{font-family:var(--font-display);font-weight:700;font-size:18px;margin:0}.guide-steps{list-style:none;margin:0;padding:0}.guide-step{display:grid;grid-template-columns:30px 1fr;gap:12px;padding-block:16px;border-top:1px solid var(--line-soft)}.guide-step:first-child{border-top:none}.guide-step.is-next{background:#c9a2270d;border-radius:12px;border-top-color:transparent;padding-inline:12px}.guide-step-num{font-family:var(--font-mono);font-size:13px;width:30px;height:30px;border-radius:999px;border:1px solid var(--line-soft);color:var(--text-faint);display:grid;place-items:center}.guide-step.is-done .guide-step-num{border-color:#7fa87c80;color:var(--success)}.guide-step.is-next .guide-step-num{border-color:var(--gold);background:var(--burgundy-soft);color:var(--gold-bright)}.guide-step-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.guide-step-title{font-family:var(--font-display);font-weight:700;font-size:16.5px;margin:0}.guide-next{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);margin:6px 0 0}.guide-step-detail{font-size:13.5px;color:var(--text);margin:6px 0 0}.guide-step-why{font-size:12.5px;line-height:1.5;color:var(--text-dim);margin:8px 0 0;padding-inline-start:10px;border-left:2px solid var(--line-soft)}.guide-step-body .btn{display:inline-block;margin-block-start:10px;text-decoration:none}:root{--bg: #100e0c;--bg-card: #1b1712;--bg-card-2: #221c15;--line: rgba(201, 162, 39, .35);--line-soft: rgba(201, 162, 39, .16);--gold: #c9a227;--gold-bright: #e7c565;--burgundy: #7a1f2b;--burgundy-soft: rgba(122, 31, 43, .4);--text: #f4ecd8;--text-dim: #b7a996;--text-faint: #8a7d6c;--success: #7fa87c;--danger: #c97a6a;--radius: 16px;--font-display: "Playfair Display", Georgia, serif;--font-body: "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.5;padding-inline:16px;padding-block:40px;min-height:100vh;overflow-wrap:break-word}img{max-width:100%}::selection{background:var(--burgundy);color:var(--text)}.stage{position:relative;max-width:720px;margin:0 auto;isolation:isolate}.stage--wide{max-width:880px}.stage:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(ellipse 900px 600px at 50% -10%,rgba(201,162,39,.14),transparent 60%),repeating-linear-gradient(90deg,rgba(122,31,43,.1) 0 2px,transparent 2px 34px),var(--bg)}.stage .stage:before{display:none}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright);text-align:center;margin:0}.masthead{text-align:center;margin-block-end:28px}.masthead h1{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,5vw,42px);line-height:1.1;margin:8px 0 6px;text-wrap:balance}.masthead .sub{color:var(--text-dim);font-size:14px;margin:0}.masthead .sub b{color:var(--gold-bright);font-weight:600}.section-title{font-family:var(--font-display);font-weight:700;font-size:19px;margin:0 0 4px}.meta{font-size:12px;color:var(--text-faint);margin:0 0 16px}.mono{font-family:var(--font-mono)}.card{background:linear-gradient(160deg,var(--bg-card),var(--bg-card-2));border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 30px 60px -30px #0009;max-width:480px;margin:0 auto}.card--ballot{max-width:560px}.card--panel{max-width:100%}.card+.card{margin-block-start:18px}@media(max-width:420px){.card{padding:20px 18px}}.ticket{border:1px dashed var(--line);border-radius:10px;padding:16px 18px;margin-block-end:22px;background:#c9a2270d}.ticket-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);margin-block-end:10px}.rules{list-style:none;padding:0;margin:0;display:grid;gap:8px}.rules li{display:grid;grid-template-columns:20px 1fr;gap:8px;font-size:13.5px;color:var(--text-dim);line-height:1.4}.rules li b{color:var(--text);font-weight:600}.rules .num{font-family:var(--font-mono);color:var(--gold);font-size:12px}.deadline{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;color:var(--text-dim);border-top:1px solid var(--line-soft);margin-block-start:14px;padding-block-start:12px;flex-wrap:wrap}.deadline--tight{margin-block-start:6px;border-top:none;padding-block-start:0}.chip{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;background:var(--burgundy-soft);color:var(--gold-bright);border:1px solid var(--line);border-radius:999px;padding:4px 10px;white-space:nowrap}.chip--muted{background:transparent;color:var(--text-dim);border-color:var(--line-soft)}.chip--ok{color:var(--success)}label{display:block;font-size:12.5px;color:var(--text-dim);margin-block-end:6px;letter-spacing:.02em}.field{margin-block-end:16px}.field--inline{margin-block-end:0}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=datetime-local],select,textarea{width:100%;background:#00000040;border:1px solid var(--line);border-radius:10px;padding:11px 13px;color:var(--text);font-family:var(--font-body);font-size:14.5px;line-height:1.35}textarea{min-height:88px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23c9a227' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-inline-end:34px}select option{background:var(--bg-card);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}.code-input{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.hint{font-size:11.5px;color:var(--text-faint);margin-block-start:4px}.field-error{font-size:12px;color:var(--danger);line-height:1.4;margin-block-start:4px}.counter{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);text-align:end;margin-block-start:4px}.counter--warn{color:var(--danger)}.field-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.field-row>*{flex:1 1 180px;min-width:0}.btn{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#25190a;border:none;border-radius:999px;padding:13px 16px;font-family:var(--font-body);font-weight:700;font-size:14.5px;letter-spacing:.02em;cursor:pointer;transition:filter .15s}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--block{width:100%;margin-block-start:6px}.btn--ghost{background:none;border:1px solid var(--line);color:var(--gold-bright);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:8px 16px;font-weight:400;transition:background .15s}.btn--ghost:hover{background:var(--line-soft);filter:none}.btn--danger{border-color:#c97a6a80;color:var(--danger)}.btn--danger:hover{background:#c97a6a1f}.btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.status-line{font-size:12.5px;color:var(--danger);margin-block-start:8px;min-height:16px}.notice{font-size:12.5px;line-height:1.45;border:1px solid var(--line-soft);border-radius:10px;padding:10px 12px;margin-block:10px;color:var(--text-dim)}.notice--error{border-color:#c97a6a80;background:#c97a6a14;color:var(--danger)}.notice--ok{border-color:#7fa87c73;background:#7fa87c14;color:var(--success)}.notice--warn{border-color:var(--line);background:#c9a22714;color:var(--gold-bright)}.loading{text-align:center;color:var(--text-faint);font-size:13px;padding:20px 0}.empty{color:var(--text-faint);font-size:13px;text-align:center;padding:12px 0;line-height:1.5}.foot{text-align:center;margin-block-start:22px;display:flex;flex-direction:column;align-items:center;gap:10px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
