.privacy-container{min-height:100vh;padding:2rem 1rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.privacy-card{max-width:900px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000026;padding:3rem;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.privacy-header{text-align:center;margin-bottom:3rem;border-bottom:3px solid #667eea;padding-bottom:1.5rem}.privacy-logo{height:80px;object-fit:contain;margin-bottom:1rem}.privacy-header h1{font-size:2.5rem;color:#1f2937;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.last-updated{color:#9ca3af;font-size:.95rem;font-style:italic;margin:0}.privacy-section{margin:2rem 0;padding:1.5rem;background:#f9fafb;border-left:4px solid #667eea;border-radius:8px}.privacy-section h2{font-size:1.5rem;color:#1f2937;margin:0 0 1rem}.privacy-section h3{font-size:1.2rem;color:#374151;margin:1.5rem 0 .5rem}.privacy-section p{color:#4b5563;line-height:1.8;margin:.5rem 0}.privacy-section ul{list-style:none;padding-left:1rem;margin:1rem 0}.privacy-section ol{padding-left:2.5rem;margin:1rem 0}.privacy-section li{color:#4b5563;line-height:1.8;margin:.5rem 0}.privacy-section ul li{position:relative;padding-left:1.5rem}.privacy-section ul li:before{content:"✓";position:absolute;left:0;color:#667eea;font-weight:700}.privacy-section ol li{padding-left:.25rem}.privacy-highlight{background:linear-gradient(135deg,#667eea15,#764ba215);padding:1rem;border-radius:8px;border-left:4px solid #667eea;color:#1f2937;font-weight:500}.privacy-contact{background:linear-gradient(135deg,#667eea15,#764ba215);border-left-color:#764ba2}.privacy-contact h2{color:#667eea}.privacy-contact p{font-size:1.05rem;font-weight:500;margin:.5rem 0}.privacy-actions{margin-top:3rem;padding-top:2rem;border-top:2px solid #e5e7eb;display:flex;flex-direction:column;gap:1.5rem;align-items:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 30px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-primary:active{transform:translateY(0)}.privacy-acknowledgment{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f0f9ff;border-radius:8px;border:2px solid #93c5fd}.privacy-acknowledgment input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#667eea}.privacy-acknowledgment label{cursor:pointer;color:#374151;font-weight:500;margin:0;flex:1}.privacy-back{margin-top:2.5rem;padding-top:1.5rem;border-top:2px solid #e5e7eb;display:flex;justify-content:flex-start}.back-button{display:inline-flex;align-items:center;gap:8px;background:#f3f4f6;border:1.5px solid #d1d5db;border-radius:10px;padding:12px 24px;font-size:1rem;font-weight:600;color:#374151;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#e5e7eb;border-color:#9ca3af;transform:translate(-2px)}@media(max-width:768px){.privacy-card{padding:1.5rem}.privacy-header h1{font-size:2rem}.privacy-section{padding:1rem}.privacy-section h2{font-size:1.3rem}.privacy-section h3{font-size:1.1rem}.privacy-actions{flex-direction:column;align-items:stretch}.btn-primary{width:100%}.privacy-acknowledgment{flex-direction:column;align-items:flex-start}}[dir=rtl] .privacy-section{border-left:none;border-right:4px solid #667eea;padding-left:1.5rem;padding-right:1.5rem}[dir=rtl] .privacy-section li{padding-left:0;padding-right:1.5rem;text-align:right}[dir=rtl] .privacy-section li:before{left:auto;right:0}[dir=rtl] .privacy-contact{border-left:none;border-right:4px solid #764ba2}[dir=rtl] .privacy-highlight{border-left:none;border-right:4px solid #667eea}[dir=rtl] .privacy-acknowledgment{text-align:right}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#213547;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}html[dir=rtl]{direction:rtl}html[dir=rtl] body{text-align:right}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);transition:direction .3s ease}#root{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:2rem 1rem}:root{--bg: #ece4f2;--paper: #ffffff;--ink: #141321;--muted: #5a556a;--purple: #5b0e8a;--purple-600: #6b1d9f;--purple-050: #f4ecf7;--ring: rgba(91,14,138,.18);--ballot-w: 420px;--radius: 18px;--shadow-soft: 0 10px 40px -20px rgba(60, 20, 90, .35), 0 1px 0 rgba(255,255,255,.9) inset;--font-display: "Instrument Serif", "Fraunces", Georgia, serif;--font-sans: "Inter Tight", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{margin:0}html{overscroll-behavior:none;overflow-x:hidden;scrollbar-gutter:stable}#root{display:block;padding:0;min-height:100vh}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);background-image:radial-gradient(1200px 800px at 70% -10%,#e8d8f3 0%,transparent 60%),radial-gradient(900px 700px at -10% 90%,#f4ecf7 0%,transparent 60%);font-feature-settings:"ss01";-webkit-font-smoothing:antialiased}.pinky-shell{padding:0;position:relative}.pre-ballot{padding:0;background:transparent}.ballot-paper{position:relative;min-height:100vh;width:100%;padding:24px 0 20px}.ballot-strip{position:fixed;top:0;bottom:0;width:16px;pointer-events:none;background:radial-gradient(circle at 50% 10px,rgba(91,14,138,.14) 3.5px,transparent 4px) 0 0 / 16px 22px repeat-y;z-index:1}.ballot-strip-left{left:5px}.ballot-strip-right{right:5px}.ballot-stack{display:flex;flex-direction:column;border-radius:var(--radius);overflow:hidden;background:var(--paper);box-shadow:var(--shadow-soft)}.ballot{background:var(--paper);display:flex;flex-direction:column;gap:16px;position:relative;border-top:1px dashed rgba(91,14,138,.14);min-height:100dvh;width:100%;align-items:center;overflow:hidden;-webkit-clip-path:inset(0);clip-path:inset(0)}.ballot:first-child{border-top:10px}.ballot-share{max-height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-clip-path:none;clip-path:none}.share-nav{display:flex;flex-direction:column;gap:10px;width:min(90vw,560px);padding-bottom:8px}.share-nav .btn{width:100%}.ballot-share .ballot-footer-band{align-self:stretch;margin-top:auto}.ballot-head{position:relative;display:flex;justify-content:center;align-items:center;margin-top:max(20px,3vh)}.lang-pill-wrap{position:fixed;top:5vh;right:5vw;z-index:20}.lang-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:999px;box-shadow:0 4px 14px #0000000f;font:600 13px/1 var(--font-sans);color:var(--ink);cursor:pointer}.lang-pill:hover{border-color:var(--purple)}.lang-pill-caret{margin-left:2px;color:var(--muted);transition:transform .15s;display:block}.lang-pill-caret.open{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;box-shadow:0 12px 32px -8px #3c145a38;overflow:hidden;min-width:150px;z-index:21}.lang-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border:0;background:transparent;font:500 14px/1 var(--font-sans);color:var(--ink);cursor:pointer;text-align:left}.lang-option:hover{background:var(--purple-050)}.lang-option.is-active{color:var(--purple);font-weight:700}.lang-option-code{font-weight:700;width:28px}.lang-option-label{color:var(--muted);font-size:13px}.btn{appearance:none;border:1px solid rgba(0,0,0,.06);background:#fff;padding:18px 22px;font:600 16px/1.1 var(--font-sans);color:var(--ink);border-radius:14px;cursor:pointer;box-shadow:0 1px #ffffffb3 inset,0 6px 18px -10px #0000002e;transition:transform .12s ease,box-shadow .12s ease}.btn:hover{transform:translateY(-1px)}.btn-globe{background:var(--purple);color:#fff;border-color:transparent;box-shadow:0 4px 20px #5b0e8a59}.btn-globe:hover{background:var(--purple-600);box-shadow:0 6px 24px #5b0e8a73}.btn-primary{background:var(--purple);color:#fff;border-color:transparent;box-shadow:0 4px 20px #5b0e8a59}.btn-primary:hover{background:var(--purple-600);box-shadow:0 6px 24px #5b0e8a73}.btn-shareprimary{background:var(--purple);color:#fff;border-color:transparent;box-shadow:0 4px 20px #5b0e8a59}.btn-shareprimary:hover{background:var(--purple-600);box-shadow:0 6px 24px #5b0e8a73}.btn-ghost,.btn-shareghost{background:#fff;color:var(--ink)}.btn-wide{width:min(90vw,380px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-on-color{background:#fff;color:var(--ink);width:95%;position:absolute;bottom:2vh}.ballot-nav{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding:16px 0 max(28px,env(safe-area-inset-bottom));width:min(90vw,560px)}.ballot-nav .btn{width:100%}.gutter{position:absolute;top:50%;width:36px;height:36px;transform:translateY(-50%);display:grid;place-items:center;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px #0000001a;font:600 20px/1 var(--font-sans);color:var(--purple);cursor:pointer;z-index:4;transition:box-shadow .15s ease,transform .15s ease}.gutter:hover{box-shadow:0 4px 14px #5b0e8a33;transform:translateY(-50%) scale(1.08)}.gutter:disabled{opacity:.25;cursor:default}.gutter-left,.gutter-right{position:relative}.ballot-country{padding:0;overflow:hidden;background:linear-gradient(180deg,#1a0e3a,#2a1655 55%,#321a60);border-top:0;gap:0;height:100dvh;min-height:600px;position:relative;justify-content:flex-end;align-items:stretch}.country-header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:center;align-items:center;padding:5vh 5vw 0;z-index:10;pointer-events:none}.country-header>*{pointer-events:auto}.country-loading{color:#c8aaffb3;font:500 15px/1 var(--font-sans);margin:auto}.globe-hero{position:absolute;top:-8vh;left:50%;transform:translate(-50%);z-index:1}.globe-hero .globe-canvas{display:block;border-radius:50%;cursor:grab}.globe-hero .globe-canvas:active{cursor:grabbing}.globe-fade{position:absolute;bottom:0;left:0;right:0;height:52%;background:linear-gradient(to bottom,#0c052000,#0c05208c 50%,#140830f2 80%,#160a34);pointer-events:none;z-index:2}.country-bottom{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:20px;padding:28px 0 40px;width:100%}.country-select-label{font:600 11px/1 var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:#c8a0ffa6}.country-carousel-row{position:relative;width:100vw}.country-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 30vw;scroll-padding:0 30vw}.country-track::-webkit-scrollbar{display:none}.country-card{flex:0 0 calc(100% - 140px);scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;background:#ffffff0d;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:20px 18px 22px;opacity:.45;transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}.country-card.is-current{opacity:1;transform:scale(1.04);box-shadow:0 0 0 1px #ffffff2e,0 20px 48px -12px #00000080}.country-flag{width:160px;height:96px;border-radius:10px;overflow:hidden;background:#ffffff14;box-shadow:0 4px 16px #00000059}.country-flag img{width:100%;height:100%;object-fit:cover;display:block}.country-name{font:700 13px/1.2 var(--font-sans);letter-spacing:.09em;text-transform:uppercase;color:#f0dcffeb}.btn-country-cta{appearance:none;border:1px solid rgba(160,100,255,.25);background:#ffffff1a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;font:700 16px/1 var(--font-sans);padding:18px 52px;border-radius:50px;cursor:pointer;box-shadow:0 4px 20px #0000004d,0 1px #ffffff1a inset;transition:transform .12s ease,box-shadow .12s ease,background .12s ease;letter-spacing:.02em}.btn-country-cta:hover{transform:translateY(-2px);background:#ffffff26;box-shadow:0 8px 28px #00000059}.btn-country-cta:active{transform:translateY(0)}.btn-country-cta:disabled{opacity:.35;pointer-events:none}.ballot-country .gutter{position:absolute;top:50%;transform:translateY(-50%);z-index:6;background:#ffffff14;border:1px solid rgba(200,160,255,.2);color:#dcbeffd9;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ballot-country .gutter:disabled{opacity:.25;pointer-events:none}.ballot-country .gutter-left{left:14px}.ballot-country .gutter-right{right:14px}.ballot-footer-band{background:#1a0a2e;color:#9880b8;padding:40px 24px 36px;display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;width:100%}.ballot-footer-band .tagline{font:italic 400 18px/1.4 var(--font-sans);color:#e2d4f0}.social-row{display:flex;gap:20px;align-items:center}.social-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#9880b8;padding:0;transition:color .15s}.social-icon:hover{color:#e2d4f0}.social-icon svg{width:28px;height:28px}.legal-row{display:flex;gap:36px;align-items:center}.footer-link{font-size:13px;color:#c4a0e8;text-decoration:none}.footer-link:hover{text-decoration:underline}.ballot-footer-band .copy{font-size:11px;color:#7a6890}.footer-mini{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 24px 16px;width:100%}.footer-mini-links{display:flex;align-items:center;gap:10px}.footer-mini .footer-link{font-size:12px;color:#ffffff73}.footer-mini .footer-link:hover{color:#ffffffbf}.footer-mini-dot{color:#ffffff40;font-size:12px}.footer-mini-copy{font-size:10px;color:#ffffff40}.ballot-election{background:linear-gradient(180deg,#e8ddf5 0%,#f3ecf9 18%,var(--paper) 42%)}.election-head{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:6px}.election-country{font:700 30px/1.1 var(--font-sans);letter-spacing:-.02em}.election-flag{font-size:32px}.election-date{position:relative;display:inline-block;font-size:14px;font-weight:600;color:var(--ink);background:linear-gradient(135deg,#f0f4ff,#e8d5f5);border:1.5px solid #667eea55;border-radius:10px;padding:.45rem 1rem;margin-top:4px}.election-date:before{content:"📅";margin-right:.4rem;font-size:13px}.election-prompt{font-size:15px;color:var(--ink);margin-top:6px}.election-carousel-row{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.election-carousel-row .gutter-left{position:absolute;left:10vw;top:50%;transform:translateY(-50%);z-index:4}.election-carousel-row .gutter-right{position:absolute;right:10vw;top:50%;transform:translateY(-50%);z-index:4}.election-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 30vw;width:100%}.election-track::-webkit-scrollbar{display:none}.election-card{flex:0 0 40vw;scroll-snap-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;background:#fff;border-radius:var(--radius);padding:28px 18px 24px;box-shadow:0 8px 20px -12px #5b0e8a2e;opacity:.6;transition:opacity .2s ease,transform .2s ease;cursor:pointer}.election-card.is-current{opacity:1;transform:scale(1.04);box-shadow:0 16px 36px -16px #5b0e8a61}.election-name{font:700 20px/1.2 var(--font-sans);text-align:center}.q-carousel-row{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;flex:1}.q-carousel-row .gutter-left{position:absolute;top:50%;left:max(4px,calc(50% - min(calc(50vw - 48px),480px) - 44px));transform:translateY(-50%);z-index:4}.q-carousel-row .gutter-right{position:absolute;top:50%;right:max(4px,calc(50% - min(calc(50vw - 48px),480px) - 44px));transform:translateY(-50%);z-index:4}.q-track{width:min(calc(100vw - 96px),960px);flex:1;display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 0 16px;margin-top:8px;box-sizing:border-box;align-items:stretch}.q-track::-webkit-scrollbar{display:none}.q-card{flex:0 0 100%;scroll-snap-align:start;background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:var(--radius);padding:28px 32px;display:flex;flex-direction:column;gap:16px;box-shadow:0 10px 30px -18px #0000002e;opacity:.55;transition:opacity .2s ease,transform .2s ease;box-sizing:border-box;min-height:0}.q-card.is-current{opacity:1}.q-meta{font-size:14px;color:var(--muted);text-align:center}.q-progress-bar{width:100%;height:4px;background:#5b0e8a1a;border-radius:99px;overflow:hidden}.q-progress-fill{height:100%;background:var(--purple);border-radius:99px;transition:width .35s ease}.q-title{font:700 16px/1.4 var(--font-sans);text-align:center;text-wrap:pretty;word-break:break-word}.q-opts{display:flex;flex-direction:column;gap:10px}.q-opt{appearance:none;border:1px solid rgba(0,0,0,.08);background:#fff;padding:14px 16px;border-radius:14px;font:500 14px/1.35 var(--font-sans);color:var(--ink);text-align:center;cursor:pointer;transition:all .15s ease}.q-opt:hover{border-color:var(--purple)}.q-opt.is-selected{background:var(--purple);color:#fff;border-color:var(--purple)}.q-importance-label{font-size:13px;text-align:center;color:var(--muted);margin-top:4px}.q-importance-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%}.q-imp{appearance:none;border:1px solid rgba(0,0,0,.08);background:#fff;padding:9px 12px;font:500 12px/1 var(--font-sans);border-radius:10px;cursor:pointer;white-space:nowrap}.q-imp:hover{border-color:var(--purple)}.q-imp.is-selected{background:var(--purple-050);color:var(--purple);border-color:var(--purple);font-weight:700}.ballot-reveal{padding:0;background:#fff;display:flex;justify-content:center;align-items:stretch}.story-card{width:100vw;min-height:100dvh;position:relative;overflow:hidden;color:#fff;background:var(--match-color, #1d4ed8)}.story-bg{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 120%,rgba(255,255,255,.45) 0%,transparent 60%),linear-gradient(180deg,var(--match-color, #1d4ed8) 0%,color-mix(in oklab,var(--match-color, #1d4ed8) 60%,#fff 40%) 100%);height:100%;width:100%}.story-inner{position:absolute;inset:0;padding:28px 24px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;height:100%}.story-heading{font:700 16px/1 var(--font-sans);letter-spacing:.02em;margin-bottom:14px}.story-leader{font:800 48px/1.02 var(--font-sans);letter-spacing:-.02em;max-width:300px}.story-party-ghost{font:800 44px/1 var(--font-sans);letter-spacing:-.02em;color:#ffffff38;margin-top:18px}.story-at{margin-top:14px;font-size:14px;opacity:.95}.story-pct{font:800 44px/1 var(--font-mono);letter-spacing:-.01em;margin-top:2px}.story-portrait{position:relative;height:72%;width:82%;display:grid}.portrait-placeholder{width:75%;height:90%;border-radius:12px;background:repeating-linear-gradient(135deg,#ffffff1f 0 8px,#ffffff0a 8px 16px);display:grid;place-items:center;position:absolute;color:#ffffffe6;font-family:var(--font-mono);font-size:12px;text-align:center;border:1px dashed rgba(255,255,255,.35);bottom:0;left:0}.portrait-initial{font:800 72px/1 var(--font-sans);letter-spacing:-.02em;color:#ffffff61}.portrait-caption{position:absolute;bottom:10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.portrait-photo{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:12px}.portrait-img{position:absolute;bottom:0;left:0;width:100%;height:98%;object-fit:contain;object-position:bottom center}.story-badge{position:absolute;right:5vw;bottom:5vh;display:flex;flex-direction:column;align-items:center;gap:6px}.story-badge-text{font-size:12px;line-height:1.25;color:#fff;text-align:center}@media(min-width:768px){.story-inner{align-items:flex-start;text-align:left;padding:0 8vw;padding-right:50%;justify-content:center}.story-heading{font-size:clamp(18px,1.6vw,28px);margin-bottom:20px}.story-leader{font-size:clamp(56px,5.2vw,130px);max-width:none;line-height:1}.story-party-ghost{font-size:clamp(44px,4vw,100px);margin-top:14px}.story-at{font-size:clamp(16px,1.4vw,24px);margin-top:18px}.story-pct{font-size:clamp(56px,5.5vw,130px);margin-top:6px}.story-portrait{position:absolute;inset:0 0 0 50%;width:auto;height:auto;display:flex;align-items:flex-end;justify-content:center}.portrait-img{position:static;width:auto;height:92%;max-width:100%;object-fit:unset;object-position:unset}.story-badge{right:3vw;bottom:4vh}}.confirm-prompt{font-size:15px;text-align:center;color:var(--ink)}.confirm-carousel-row{position:relative;width:100%;padding:48px 0 12px}.confirm-carousel-row .gutter-left{position:absolute;left:10vw;top:50%;transform:translateY(-50%);z-index:4}.confirm-carousel-row .gutter-right{position:absolute;right:10vw;top:50%;transform:translateY(-50%);z-index:4}.confirm-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px max(20px,calc(50% - min(30vw,200px)));width:100%}.confirm-track::-webkit-scrollbar{display:none}.confirm-card{flex:0 0 min(60vw,400px);scroll-snap-align:center;color:#fff;border-radius:var(--radius);padding:28px 20px 24px;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:380px;box-shadow:0 20px 40px -24px #00000059;opacity:.55;transition:opacity .2s ease,transform .2s ease;position:relative;overflow:hidden}.confirm-card.is-current{opacity:1}.confirm-card-special{justify-content:center;gap:12px}.confirm-card:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,rgba(255,255,255,.18) 0%,transparent 60%);pointer-events:none}.confirm-rank{font:600 18px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#ffffff2e;white-space:nowrap}.confirm-leader{font:600 32px/1.1 var(--font-sans);opacity:.95;text-align:center}.confirm-party{font:800 32px/1.18 var(--font-sans);letter-spacing:-.01em;text-align:center;text-wrap:balance}.confirm-tag{font-size:13px;opacity:.85;text-align:center}.confirm-pct{font:800 32px/1 var(--font-mono);margin:6px 0 10px}.demo-field{display:flex;flex-direction:column;gap:12px;align-items:center}.demo-label{font:500 15px/1 var(--font-sans);text-align:center;color:var(--ink)}.demo-input{width:min(90vw,380px);padding:18px 20px;border-radius:14px;border:1px solid rgba(0,0,0,.08);background:#fff;font:500 16px/1 var(--font-sans);box-shadow:0 1px #ffffffb3 inset,0 6px 18px -10px #0000001f;outline:none}.demo-input:focus{border-color:var(--purple);box-shadow:0 0 0 4px var(--ring)}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:center;width:min(90vw,380px)}.demo-tile{appearance:none;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:20px 14px 18px;display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;box-shadow:0 6px 18px -12px #0000002e;transition:all .15s ease;min-height:90px}.demo-tile:hover{border-color:var(--purple)}.demo-tile.is-selected{border-color:var(--purple);background:var(--purple-050)}.demo-tile-label{font:600 15px/1 var(--font-sans)}.share-title{font:700 18px/1 var(--font-sans);text-align:center}.share-row{display:flex;justify-content:center;gap:12px}.share-dot{width:52px;height:52px;border-radius:999px;background:var(--purple);border:0;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 20px -10px #5b0e8a80;transition:transform .12s ease}.share-dot:hover{transform:translateY(-2px)}.share-hint{font-size:13px;color:var(--muted);text-align:center;line-height:1.35}.share-email-head{font:700 16px/1 var(--font-sans);text-align:center;margin-top:4px}.share-foot-note{font-size:13px;color:var(--muted);text-align:center;line-height:1.35;margin-top:4px}.modal-overlay{position:fixed;inset:0;background:#140a288c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:flex-end;justify-content:center}.modal-sheet{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:520px;max-height:82vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .22s cubic-bezier(.32,.72,0,1)}@keyframes slideUp{0%{transform:translateY(60px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:28px 24px 24px;color:#fff;position:relative;flex-shrink:0}.modal-party-name{font:800 26px/1.1 var(--font-sans);letter-spacing:-.01em}.modal-leader{font:500 15px/1 var(--font-sans);opacity:.85;margin-top:6px}.modal-pct{font:700 18px/1 var(--font-mono);margin-top:12px;opacity:.95}.modal-close{position:absolute;top:20px;right:20px;background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:999px;font-size:14px;cursor:pointer;display:grid;place-items:center}.modal-close:hover{background:#ffffff59}.modal-body{overflow-y:auto;padding:20px 24px 36px;display:flex;flex-direction:column;gap:16px}.modal-section-label{font:600 12px/1 var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.modal-row{display:flex;flex-direction:column;gap:5px}.modal-row-q{font:500 14px/1.35 var(--font-sans);color:var(--ink)}.modal-row-bar{height:6px;background:#ece4f2;border-radius:999px;overflow:hidden}.modal-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.modal-row-label{font:600 12px/1 var(--font-sans)}.modal-label-dist-0{color:#16a34a}.modal-label-dist-1{color:#d97706}.modal-label-dist-2{color:#dc2626}.modal-issue-row{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-top:1px solid rgba(0,0,0,.06)}.modal-issue-q{font:600 14px/1.35 var(--font-sans);color:var(--ink)}.modal-issue-answers{display:flex;flex-wrap:wrap;gap:6px}.modal-issue-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font:500 12px/1 var(--font-sans);border:1.5px solid transparent}.chip-match{background:#dcfce7;border-color:#16a34a;color:#166534}.chip-mismatch{background:#fee2e2;border-color:#dc2626;color:#991b1b}.chip-party{background:#0000000a;color:var(--ink)}.chip-icon{font-size:11px;font-weight:700}.modal-issue-reasoning{font:400 13px/1.45 var(--font-sans);color:var(--muted);padding:6px 10px;background:#00000008;border-radius:8px}.modal-issue-evidence{display:flex;flex-wrap:wrap;gap:6px;font-size:12px}.modal-evidence-link{color:var(--purple);text-decoration:underline;word-break:break-all}.globe-wrap{position:relative;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.globe-wrap:active{cursor:grabbing}.globe-clean{position:relative;border-radius:999px;filter:drop-shadow(0 20px 40px rgba(91,14,138,.18));transition:transform .6s cubic-bezier(.4,.7,.2,1)}.globe-clean.dragging{transition:none}.globe-shadow{position:absolute;left:50%;bottom:-14px;transform:translate(-50%);height:16px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(60,20,90,.18) 0%,transparent 70%);filter:blur(1px)}html{scroll-behavior:smooth}@media(max-width:460px){:root{--ballot-w: 100vw}.ballot-paper{padding:0}.ballot-strip{display:none}.ballot-stack{border-radius:0}.q-track{width:calc(100vw - 80px)}.q-card{padding:20px 18px;gap:14px}.q-carousel-row .gutter-left{left:4px}.q-carousel-row .gutter-right{right:4px}}body.is-rtl .q-title,body.is-rtl .q-opt,body.is-rtl .q-imp,body.is-rtl .q-importance-label,body.is-rtl .q-meta{direction:rtl;text-align:right}body.is-rtl .country-name,body.is-rtl .election-name{direction:rtl}body.is-rtl .demo-label,body.is-rtl .demo-input{direction:rtl;text-align:right}body.is-rtl .demo-tile-label,body.is-rtl .confirm-party,body.is-rtl .confirm-tag,body.is-rtl .confirm-rank,body.is-rtl .share-title,body.is-rtl .share-hint,body.is-rtl .share-email-head,body.is-rtl .share-foot-note{direction:rtl}body.is-rtl .modal-party-name,body.is-rtl .modal-leader,body.is-rtl .modal-section-label,body.is-rtl .modal-row-q,body.is-rtl .modal-issue-q,body.is-rtl .modal-issue-reasoning{direction:rtl;text-align:right}body.is-rtl .election-country,body.is-rtl .election-date,body.is-rtl .election-prompt,body.is-rtl .tagline,body.is-rtl .copy{direction:rtl}
