:root{--cardinal: #7c2529;--cardinal-2: #9a1b30;--gold: #f1be48;--cream: #fff7e6;--ink: #21181a;--muted: #6f5a5d;--surface: rgba(255, 255, 255, .9);--border: rgba(124, 37, 41, .16);--shadow: 0 24px 60px rgba(33, 24, 26, .16);color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);background:radial-gradient(circle at top left,rgba(241,190,72,.42),transparent 28rem),radial-gradient(circle at bottom right,rgba(124,37,41,.2),transparent 30rem),linear-gradient(135deg,#fffaf0,#fff4db 48%,#fff)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.shell{width:min(100%,960px);margin:0 auto;padding:24px}.hero-card,.results-card,.notice-card{border:1px solid var(--border);border-radius:28px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-card{overflow:hidden;padding:clamp(28px,6vw,56px);position:relative}.hero-card:after{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-100px;border-radius:999px;background:#f1be4852}.eyebrow{display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border-radius:999px;background:#7c252914;color:var(--cardinal);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:12ch;margin-bottom:18px;font-size:clamp(2.7rem,11vw,5.8rem);line-height:.9;letter-spacing:-.08em}h2{font-size:clamp(1.7rem,5vw,3.1rem);line-height:1;letter-spacing:-.045em}.lede{max-width:62ch;margin-bottom:28px;color:var(--muted);font-size:clamp(1.04rem,2.5vw,1.28rem);line-height:1.6}.button-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 18px;background:var(--cardinal);color:#fff;cursor:pointer;font:inherit;font-weight:800;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px #7c252938}.btn.secondary{border:1px solid var(--border);background:#fff;color:var(--cardinal)}.status{display:flex;gap:14px;align-items:center;margin-bottom:18px;color:var(--muted);font-weight:700}.spinner{width:22px;height:22px;border:3px solid rgba(124,37,41,.18);border-top-color:var(--cardinal);border-radius:999px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.results-card,.notice-card{padding:clamp(22px,5vw,36px)}.notice-card.success{border-color:#2a79463d;background:#f5fff8eb}.notice-card.warning{border-color:#f1be486b;background:#fff9e7f0}.notice-card.error{border-color:#9a1b3042;background:#fff4f6f0}.option-list{display:grid;gap:16px;margin:24px 0}.option-row{display:grid;gap:8px}.option-meta{display:flex;justify-content:space-between;gap:12px;font-weight:800}.option-votes{color:var(--muted);font-weight:700}.progress-track{height:16px;overflow:hidden;border-radius:999px;background:#7c252914}.progress-fill{height:100%;border-radius:inherit;transition:width .38s ease}.social-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.social-links a{border:1px solid var(--border);border-radius:999px;padding:10px 14px;background:#fff;color:var(--cardinal);font-weight:800;text-decoration:none}.footer-note{margin-top:22px;color:var(--muted);font-size:.95rem;line-height:1.5}button:disabled{cursor:wait;opacity:.68}.admin-shell{width:min(100%,1180px)}.admin-hero h1{max-width:none}.admin-status-row,.panel-heading,.button-row.compact-buttons{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:18px;margin:18px 0}.admin-panel{border:1px solid var(--border);border-radius:26px;background:#ffffffeb;box-shadow:0 18px 42px #21181a1a;padding:clamp(18px,4vw,28px)}.admin-panel h2{margin-bottom:0;font-size:clamp(1.5rem,4vw,2.2rem)}.panel-heading.small{margin-top:8px}.panel-heading.small h3,.qr-list h3{margin-bottom:0}.form-grid,.option-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field,.check-field{display:grid;gap:7px;margin:14px 0;color:var(--muted);font-weight:800}.field input,.field textarea{width:100%;border:1px solid var(--border);border-radius:16px;background:#fff;color:var(--ink);font:inherit;font-weight:650;outline:none;padding:12px 14px}.field input:focus,.field textarea:focus{border-color:#7c252980;box-shadow:0 0 0 4px #f1be4838}.field small{color:var(--muted);font-weight:650}.token-field{max-width:560px}.check-field{align-items:center;grid-template-columns:auto 1fr}.check-field input{width:20px;height:20px;accent-color:var(--cardinal)}.option-editor{position:relative;grid-template-columns:minmax(120px,.8fr) minmax(170px,1fr) 84px 34px;align-items:end;border:1px solid rgba(124,37,41,.1);border-radius:20px;margin-top:12px;padding:12px}.option-editor .field{margin:0}.color-field input{min-height:47px;padding:6px}.icon-btn{width:34px;height:34px;border:0;border-radius:999px;background:#7c25291a;color:var(--cardinal);cursor:pointer;font-size:1.5rem;font-weight:900;line-height:1}.compact{margin:18px 0;padding:16px 18px;font-weight:800}.qr-list{display:grid;gap:14px;margin-top:20px}.qr-card{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;border:1px solid rgba(124,37,41,.1);border-radius:20px;padding:12px}.qr-card img{width:120px;height:120px;border:8px solid #fff;border-radius:14px;box-shadow:0 8px 20px #21181a1f}.qr-card code,.field code{display:inline-block;border-radius:8px;background:#7c252914;color:var(--cardinal);font-size:.84rem;font-weight:800;padding:4px 7px}.qr-card strong{display:block;margin-bottom:6px}.compact-buttons{justify-content:flex-start;margin-top:10px}.compact-buttons .btn{min-height:36px;padding:8px 11px;font-size:.88rem}@media(max-width:620px){.shell{padding:16px}.hero-card,.results-card,.notice-card{border-radius:22px}.option-meta{align-items:flex-start;flex-direction:column}.admin-grid,.form-grid,.option-editor,.qr-card{grid-template-columns:1fr}.qr-card img{width:min(180px,100%);height:auto}}
