/* Electoral · application screens. Loaded after Cars and arcade-review styles. */
.app-body{min-height:100dvh;overflow-x:hidden;--surface:#fffef9;--surface-soft:#edf0e9;--edge:#cad4ce;--danger:#b8223c;--shadow:0 12px 32px #2741460c}
.app-body #app{width:100%;min-width:0}.app-body button,.app-body input,.app-body select,.app-body textarea{font:inherit;color:inherit}.app-body button{cursor:pointer}.app-body button:disabled{cursor:not-allowed}.app-body h2,.app-body h3,.app-body h4{margin:0}.app-body a,.app-body button,.app-body input,.app-body select,.app-body textarea,.app-body summary{outline-offset:4px}.app-body :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #007e8a}.app-body input,.app-body select,.app-body textarea{max-width:100%;border:1px solid #aabbb3;background:#fffefb;border-radius:4px;padding:10px 12px;min-height:44px}.app-body input[type=checkbox],.app-body input[type=radio]{min-height:20px;width:20px;accent-color:#006e78}.app-body label{font-size:14px}.app-body fieldset{border:1px solid var(--edge);border-radius:6px;padding:18px;min-width:0}.app-body legend{font-family:var(--font-mono);font-size:12px;padding:0 7px}.app-body svg{flex-shrink:0}.app-body p{overflow-wrap:break-word}.app-body img{max-width:100%}
.app-body .app-header{position:relative;z-index:30}.app-body .main-nav a[aria-current=page]{background:linear-gradient(125deg,#fff,#e8eeec99);border-color:#9cb0b3;color:#00636e}.app-body .main-nav button{min-height:40px;padding:10px 15px;border:1px solid transparent;border-radius:3px;background:transparent;font-family:var(--font-display);font-weight:800;font-size:11px;font-style:italic;text-transform:uppercase}.app-body .main-nav button.active{background:#e8eeec;border-color:#9cb0b3;color:#00636e}.app-body .home{padding-bottom:28px}.app-body .coverflow-stage,.app-body .coverflow-card{cursor:grab}.app-body .coverflow-card:active{cursor:grabbing}.app-body .arcade-start-btn{cursor:pointer}.app-body .cf-nav-btn{cursor:pointer}.app-body .cf-count-pill{white-space:nowrap}.app-body .cf-card-name{letter-spacing:.025em}.app-body .preview-status{text-align:center}.app-body .coverflow-card:focus-visible{outline:none}.app-body .coverflow-card:focus-visible .cf-card-frame{outline:3px solid #007e8a;outline-offset:-6px}.app-body .creator-socials a{min-height:35px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.app-body .creator-socials svg{width:14px;height:14px}
.page-shell{width:min(1100px,100%);margin:auto;padding:36px 28px 48px;min-width:0}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 25px}.page-heading h1{font-family:var(--font-display);font-size:clamp(24px,3vw,34px);font-weight:900;font-style:italic;letter-spacing:.015em;line-height:1.22;text-transform:uppercase}.page-heading p{font-size:14px;color:var(--muted);margin-top:9px;max-width:680px}.eyebrow{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#006b75;margin-bottom:8px}.section-heading{font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:.025em;margin:28px 0 16px!important}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:var(--font-mono)}
.notice{padding:14px 18px;border:1px solid #bed0ca;border-left:3px solid #007c87;border-radius:4px;background:linear-gradient(130deg,#ffffffc9,#eaf0e999);font-size:13px;line-height:1.6;margin:18px 0;color:#415a57}.notice.warning{border-color:#dacdb0;border-left-color:#967239;background:linear-gradient(135deg,#fffdf5,#f4eedf80);color:#75613d}.notice p+p{margin-top:8px}.notice strong{font-weight:700}.notice a{text-decoration:underline;text-underline-offset:3px}.tab-row{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 24px}.tab-row button,.tab-row a{min-height:42px;padding:10px 15px;border:1px solid #c3cec7;border-radius:4px;background:linear-gradient(130deg,#ffffffd9,#e7ece5a6);box-shadow:inset 0 1px #fff;font-family:var(--font-mono);font-size:12px}.tab-row :is(button,a):is(.active,[aria-selected=true]){border-color:#007783;box-shadow:inset 0 -2px #007783;color:#006b75;background:#f6fffc}.topic-chips{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.topic-chips>*{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;background:#e9eee6;border:1px solid #cbd5cb;border-radius:3px;font-family:var(--font-mono);font-size:10px;line-height:1.5;color:#56675d}.topic-chips button{min-height:35px;cursor:pointer}.topic-chips .active{border-color:#007783;color:#006b75;background:#f7fffb}
.app-body .button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;gap:9px;padding:11px 18px;border:1px solid #a9bdb5;color:#31534f;background:linear-gradient(125deg,#fffefcf5,#dfe9e0a8);box-shadow:inset 0 1px #fff,0 3px 10px #264f3a0a;font-size:11px;line-height:1.45;letter-spacing:.035em;text-transform:uppercase;text-align:center;cursor:pointer;text-decoration:none;white-space:normal;transition:border-color .2s,box-shadow .2s,background-color .2s}.app-body .button.primary{background-color:#ff1e42;background-image:linear-gradient(112deg,transparent 36%,#ffffff59 48%,#ffffff1a 56%,transparent 68%);background-size:260% 100%;background-position:160% 0;background-repeat:no-repeat;color:#fff;border-color:#ff5c77;box-shadow:0 0 18px #ff1e4236}.app-body .button.primary.lilac-action{animation:arcade-shine 5.5s ease-in-out infinite}.app-body .button.secondary{background:linear-gradient(125deg,#ffffffed,#e6ece580);color:#375b54;border-color:#a9bdb5;box-shadow:inset 0 1px #fff}.app-body .button.danger{color:#a51e37;border-color:#d2a4aa;background:#fff6f4}.app-body .button:disabled{opacity:.5;box-shadow:none;animation:none;cursor:not-allowed;filter:saturate(.3)}.app-body .button[aria-disabled=true]{opacity:.5;pointer-events:none}.app-body .arcade-start-btn{display:flex;min-height:58px;font-size:15px;padding:12px 20px}.app-body .arcade-start-btn .start-btn-text{font-size:16px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;margin:22px 0}.panel{min-width:0;background:linear-gradient(145deg,#fffefaeb,#f0f1e9db);border:1px solid #c7d2ca;border-radius:6px;padding:24px;box-shadow:var(--shadow);container-type:inline-size}.panel h2{font-family:var(--font-display);font-size:16px;font-style:italic;line-height:1.4;letter-spacing:.02em}.panel h3{font-family:var(--font-display);font-size:14px;line-height:1.45}.panel p{font-size:14px;line-height:1.65;color:#58675e;margin:10px 0}.panel ul{font-size:13px;line-height:1.7;padding-left:20px;color:#526358}.panel .button{margin-top:12px}.program-card{display:flex;flex-direction:column;align-items:flex-start;gap:9px;position:relative}.program-card .party-logo{height:62px;width:94px;object-fit:contain;object-position:left center;mix-blend-mode:multiply;margin:3px 0 12px}.program-card p{margin:0 0 6px}.program-card .button:last-child{margin-top:auto}.program-card .topic-chips{margin:6px 0 12px}.party-logo{width:56px;height:46px;object-fit:contain;flex-shrink:0;display:block}.program-status{font-family:var(--font-mono);font-size:10px;padding:4px 8px;border:1px solid #c7d4c9;color:#57715e;background:#eaf1e5;border-radius:3px}.program-status.pending{border-color:#d9ccb0;background:#f5efdf;color:#7a673f}
.quiz-shell{max-width:850px;width:100%;margin:auto;padding:28px 24px 48px}.quiz-hud{display:flex;align-items:center;justify-content:space-between;gap:18px;font-family:var(--font-mono);font-size:12px;color:#51685c;margin:0 0 18px;flex-wrap:wrap}.quiz-hud>div{min-width:0}.quiz-hud progress{height:7px;width:100%;display:block;flex-basis:100%;border:1px solid #bccdc0;background:#dce6d9;border-radius:2px;overflow:hidden;accent-color:#007d87}.quiz-hud progress::-webkit-progress-bar{background:#dde7da}.quiz-hud progress::-webkit-progress-value{background:linear-gradient(90deg,#006c79,#52a996)}.quiz-hud progress::-moz-progress-bar{background:linear-gradient(90deg,#006c79,#52a996)}.quiz-hud .progress-track{width:100%;height:6px;flex-basis:100%;background:#d9e4d6;border:1px solid #bfcdbb;border-radius:2px;overflow:hidden}.quiz-hud .progress-fill{height:100%;background:linear-gradient(90deg,#006d79,#50a58c)}
.question-card{position:relative;padding:35px 40px 32px;background:linear-gradient(145deg,#fffefcf5,#f4f5edeb);border:1px solid #b8c9c0;border-top:3px solid #007f89;border-radius:6px;box-shadow:0 15px 40px #284b3c0d;min-width:0}.question-topic{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;font-family:var(--font-mono);text-transform:uppercase;font-size:11px;letter-spacing:.08em;color:#006c77}.question-card h1{font-family:var(--font-display);font-size:clamp(21px,3.2vw,29px);font-weight:800;font-style:italic;letter-spacing:.015em;text-transform:uppercase;line-height:1.42;margin:0 0 20px;color:#293b36;overflow-wrap:break-word}.question-copy{font-size:19px;line-height:1.75;color:#364b40;letter-spacing:.003em}.question-copy p+p{margin-top:15px}.conditions{padding:17px 20px;margin-top:25px;background:#eaf0e599;border:1px solid #cbd8c5;border-left:3px solid #91a98f;border-radius:4px;font-size:14px;line-height:1.7;color:#52624b}.conditions strong{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#496544;margin-bottom:6px}.conditions ul{margin:0;padding-left:18px}.conditions li+li{margin-top:5px}.conditions p+p{margin-top:9px}.question-card details{font-size:13px;line-height:1.6;color:#5b6b61;margin-top:20px}.question-card summary{cursor:pointer;min-height:36px;align-content:center}.question-card details a{color:#006c77;text-decoration:underline;text-underline-offset:3px}
.responses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.response{min-height:64px;padding:13px 10px;display:flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,#fffefbe6,#e5ece2c9);border:1px solid #b5c8bc;border-radius:5px;box-shadow:inset 0 1px #fff,0 5px 15px #2f4d3c09;font-family:var(--font-display)!important;font-size:11px!important;font-weight:800;font-style:italic;letter-spacing:.02em;text-transform:uppercase;text-align:center;color:#3c574a!important;position:relative;transition:border-color .16s,background-color .16s,box-shadow .16s}.response:is(.selected,[aria-pressed=true]){background:#e1eee6;border-color:#007b84;box-shadow:inset 0 -3px #007b84,0 0 0 1px #007b8430;color:#005d65!important}.response:is(.selected,[aria-pressed=true])::after{content:'✓';position:absolute;right:8px;top:5px;font-family:var(--font-mono);font-size:11px}.response kbd{font-family:var(--font-mono);font-style:normal;font-size:10px;color:#738273;padding:2px 5px;border:1px solid #becbbf;border-radius:2px}.quiz-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0}.quiz-actions .button{min-height:46px}.quiz-actions .button.primary{margin-left:auto;min-width:190px}.quiz-actions p{font-size:12px;color:var(--muted)}.quiz-help{font-family:var(--font-mono);font-size:11px;line-height:1.6;color:#6b786d;text-align:center;margin-top:16px}
.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 34px;align-items:stretch}.result-party{padding:23px 18px;min-width:0;background:linear-gradient(145deg,#fffefb,#edf1e7);border:1px solid #c5d3c4;border-radius:6px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:9px;box-shadow:var(--shadow);position:relative}.result-party.first{border-color:#007d85;border-top:3px solid #007d85;background:linear-gradient(145deg,#fffefa,#e4eee5);box-shadow:0 9px 30px #007d8514}.result-party .party-logo{height:48px;width:82px;margin:5px auto 7px;mix-blend-mode:multiply}.result-party h2,.result-party h3{font-family:var(--font-display);font-style:italic;font-size:15px;line-height:1.4}.result-party .score{font-family:var(--font-display);font-size:clamp(26px,4vw,41px);font-weight:900;line-height:1.2;color:#33564b;letter-spacing:-.02em;margin:4px 0}.result-party.first .score{color:#006b76}.result-party p{font-size:12px;color:#67796a;line-height:1.55}.result-party .rank{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:#61766a}.result-list{display:flex;flex-direction:column;gap:12px;margin:22px 0}.result-list details{border:1px solid #cbd5ca;border-radius:5px;background:#fffef9b8;padding:0 20px;min-width:0}.result-list summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;padding:17px 0;font-size:14px;line-height:1.6;list-style:none}.result-list summary::-webkit-details-marker{display:none}.result-list summary::after{content:'+';color:#547562;font-family:var(--font-mono);font-size:19px;flex-shrink:0}.result-list details[open] summary::after{content:'−'}.result-list details[open] summary{border-bottom:1px solid #d9e0d5;margin-bottom:14px}.result-list details>p,.result-list details>div,.result-list details>ul{font-size:14px;color:#52664f;line-height:1.7;margin:13px 0 17px}.result-list details a{text-decoration:underline;text-underline-offset:3px;color:#006c77}.answer-badge{font-family:var(--font-mono);font-size:10px;padding:4px 8px;border:1px solid #b9c9bb;border-radius:3px;white-space:nowrap;background:#e9f0e5;color:#486c4e}.answer-badge[data-value="0"]{color:#676d64;background:#edf0e9}.answer-badge[data-value="-1"]{background:#edf0e9;color:#596857}
.history-list{display:grid;gap:12px;margin:24px 0}.history-card{padding:19px 22px;border:1px solid #c8d3c6;background:linear-gradient(130deg,#fffefbe6,#edf0e6b3);border-radius:5px;display:flex;align-items:center;gap:18px;min-width:0;container-type:inline-size}.history-card>div{min-width:0}.history-card h2,.history-card h3{font-family:var(--font-display);font-size:14px;line-height:1.5;font-style:italic}.history-card p{font-family:var(--font-mono);font-size:11px;line-height:1.65;color:#6b796b;margin:5px 0}.history-card .score{font-family:var(--font-display);font-size:23px;font-weight:800;color:#006d75;margin-left:auto;white-space:nowrap}.history-card .button{margin-left:auto;flex-shrink:0;font-size:10px}.history-card.general{border-left:3px solid #007c87;background:linear-gradient(130deg,#fffefbee,#e2eee2b3);padding-block:25px}.history-card.general h2{font-size:18px}.empty-state{padding:45px 28px;text-align:center;background:#f7f9f0a3;border:1px dashed #b9cabc;border-radius:6px;margin:25px 0}.empty-state h2{font-family:var(--font-display);font-size:20px;font-style:italic;margin:0 0 12px}.empty-state p{font-size:15px;color:#6c796b;max-width:540px;margin:0 auto 24px;line-height:1.7}.empty-state .button{margin-top:0}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;margin:25px 0}.achievement{padding:24px;background:linear-gradient(145deg,#fffefbf5,#e8f0e2b3);border:1px solid #a9c0ad;border-top:3px solid #38836f;border-radius:5px;min-width:0}.achievement h2,.achievement h3{font-family:var(--font-display);font-style:italic;font-size:14px;line-height:1.5;margin:12px 0 8px}.achievement p{color:#596d56;font-size:14px;line-height:1.65;margin:8px 0}.achievement .achievement-icon,.achievement>svg{width:42px;height:42px;color:#3d7966;font-size:30px}.achievement .status{font-family:var(--font-mono);font-size:10px;color:#35745f;letter-spacing:.06em}.achievement.locked{background:linear-gradient(145deg,#fffef9bd,#eeefe8b3);border-color:#d0d7cc;border-top-color:#b8c4b5}.achievement.locked :is(.achievement-icon,svg){color:#899485}.achievement.locked .status{color:#798274}.achievement progress{width:100%;height:6px;accent-color:#527b5a;margin-top:12px}
.app-body dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:30px;border:1px solid #a1bbb0;border-top:3px solid #007f89;border-radius:6px;background:#fafbf3;color:#304a3d;box-shadow:0 30px 90px #17372c33}.app-body dialog::backdrop{background:#24352e66;backdrop-filter:blur(6px)}.app-body dialog h2{font-family:var(--font-display);font-size:19px;line-height:1.5;font-style:italic}.app-body dialog p{font-size:15px;color:#5c6b59;line-height:1.7;margin:17px 0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}.dialog-actions .button{min-height:44px}.app-body .page-footer a{text-decoration:underline;text-underline-offset:3px}.app-body .page-footer a:hover{color:#006c77}
@container(max-width:420px){.history-card .button{font-size:9px;padding:9px 11px}.panel .topic-chips{gap:5px}.panel .topic-chips>*{font-size:9px}}
@media(hover:hover) and (pointer:fine){.app-body .button:hover:not(:disabled){border-color:#007d87;box-shadow:inset 0 1px #fff,0 0 15px #00a8b520}.app-body .button.primary:hover:not(:disabled){border-color:#ff5c77;background-color:#ff3858;box-shadow:0 0 27px #ff1e4259}.response:hover{border-color:#568f79;box-shadow:0 0 0 1px #568f7925,0 6px 20px #274c3c10}.tab-row :is(button,a):hover{border-color:#007b84}.result-list summary:hover{color:#006c77}.history-card:hover{border-color:#a2b9a7}}
@media(max-width:760px){.page-shell{padding:28px 22px 40px}.page-heading{gap:15px;align-items:flex-start}.page-heading h1{font-size:26px}.page-heading>.button{font-size:9px;padding:10px 12px}.podium{gap:10px}.result-party{padding:20px 12px}.result-party h2,.result-party h3{font-size:12px}.quiz-shell{padding:25px 20px 40px}.question-card{padding:28px}.question-copy{font-size:18px}.history-card{gap:12px;padding:17px}.history-card .button{padding:10px 12px;font-size:9px}.achievement-grid{gap:13px}.panel{padding:22px}}
@media(max-width:650px){.app-body .main-nav button{font-size:9px;padding:9px 8px;min-height:37px}.app-body .app-header .brand{font-size:20px}.app-body .app-header{gap:12px}.app-body .page-shell{padding:25px 16px 35px}.page-heading{display:flex;flex-direction:column;gap:15px;margin-bottom:22px}.page-heading h1{font-size:25px}.page-heading p{font-size:13px;line-height:1.65;margin-top:8px}.page-heading>.button{align-self:flex-start}.eyebrow{font-size:10px}.notice{padding:12px 14px;font-size:12px;margin:16px 0}.tab-row{gap:6px;margin:18px 0}.tab-row button,.tab-row a{padding:9px 12px;font-size:11px;flex:1;white-space:normal;text-align:center}.card-grid{gap:14px;margin:18px 0}.panel{padding:21px}.panel h2{font-size:15px}.panel p{font-size:14px}.program-card .party-logo{height:52px;margin-bottom:7px}.app-body .button{font-size:10px;min-height:44px;padding:11px 15px}.app-body .arcade-start-btn{min-height:55px}.app-body .arcade-start-btn .start-btn-text{font-size:13px}.quiz-shell{padding:19px 14px 34px}.quiz-hud{font-size:10px;gap:12px;margin-bottom:16px}.quiz-hud .button{min-height:36px;padding:7px 10px;font-size:9px}.question-card{padding:25px 21px;border-top-width:2px}.question-topic{font-size:9px;letter-spacing:.06em;margin-bottom:17px;gap:8px}.question-card h1{font-size:21px;line-height:1.45;margin-bottom:17px}.question-copy{font-size:17px;line-height:1.75}.conditions{font-size:13px;line-height:1.7;padding:14px 15px;margin-top:20px}.conditions strong{font-size:9px}.responses{gap:7px;margin:16px 0}.response{font-size:9px!important;min-height:66px;padding:15px 7px 12px;line-height:1.5;flex-direction:column;gap:4px}.response kbd{display:none}.quiz-actions{flex-wrap:wrap;gap:10px}.quiz-actions .button{min-height:44px}.quiz-actions .button.primary{min-width:0;flex:1}.quiz-actions p{flex-basis:100%;font-size:11px;order:3;text-align:center}.quiz-help{font-size:10px}.podium{display:flex;flex-wrap:wrap;gap:10px;margin:21px 0 28px}.result-party{width:calc(50% - 5px);padding:18px 12px;gap:7px}.result-party.first{width:100%;order:-1;padding:23px 16px}.result-party.first .party-logo{height:49px;width:85px}.result-party.first .score{font-size:42px}.result-party .score{font-size:30px}.result-party h2,.result-party h3{font-size:12px}.result-party.first h2,.result-party.first h3{font-size:16px}.result-party p{font-size:11px}.result-list{gap:10px}.result-list details{padding:0 15px}.result-list summary{font-size:13px;gap:10px;padding:15px 0;flex-wrap:wrap}.result-list summary::after{margin-left:auto}.result-list details>p,.result-list details>div,.result-list details>ul{font-size:13px}.answer-badge{font-size:9px}.history-card{flex-wrap:wrap;gap:10px;padding:17px}.history-card>div:first-child{flex:1 1 65%}.history-card h2,.history-card h3{font-size:13px}.history-card.general h2{font-size:15px}.history-card p{font-size:10px}.history-card .score{font-size:20px}.history-card .button{font-size:9px;min-height:37px;margin-left:0}.history-card.general{padding-block:20px}.achievement{padding:20px}.achievement h2,.achievement h3{font-size:13px}.achievement p{font-size:13px}.empty-state{padding:33px 20px}.empty-state h2{font-size:17px}.empty-state p{font-size:14px}.app-body dialog{padding:25px 21px}.app-body dialog h2{font-size:17px}.app-body dialog p{font-size:14px}.dialog-actions .button{flex:1}.app-body .creator-socials a{min-height:35px}.section-heading{font-size:16px!important}}
@media(max-width:360px){.app-body .brand{font-size:18px}.app-body .app-header{padding-inline:14px}.app-body .main-nav a,.app-body .main-nav button{font-size:8px;padding-inline:5px;gap:4px}.app-body .main-nav svg{width:11px;height:11px}.app-body .edition{font-size:7px}.app-body .arcade-home{padding-inline:14px}.app-body .coverflow-section{width:calc(100% + 28px);max-width:calc(100% + 28px)}.page-heading h1{font-size:22px}.question-card{padding:22px 17px}.question-card h1{font-size:19px}.question-copy{font-size:16px}.response{font-size:8px!important;letter-spacing:0}.conditions{padding:12px}.app-body .start-arrow{right:11px}.app-body .arcade-start-btn .start-btn-text{font-size:12px}.route-stats strong{font-size:17px}.app-body .creator-socials a{font-size:9px}.quiz-actions .button{font-size:9px;padding-inline:12px}.result-party h2,.result-party h3{font-size:11px}}
@media(prefers-reduced-motion:reduce){.app-body *, .app-body *::before,.app-body *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.app-body .creator-shimmer-sweep{display:none}.app-body .cf-poster-scanline{opacity:0}.app-body .button.primary{background-image:none}}
@supports not (backdrop-filter:blur(10px)){.app-body dialog::backdrop{background:#24352eaa}.app-body .app-header,.app-body .panel,.app-body .question-card{background:#f9faf3}}
/* Application integration and source-led coverage. */
.page-heading{display:block}.page-heading .eyebrow{margin:0 0 9px}.page-heading>p:last-child{margin:12px 0 0}.page-shell>.panel+.panel{margin-top:20px}.page-shell>.page-heading+aside{margin-top:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;padding:12px 18px;background:#fff;border:2px solid #007e8a}.skip-link:focus{top:12px}#app:focus{outline:none}.home-edition{width:min(840px,100%);margin-top:10px}.notice.compact{font-size:12px}.notice p{margin:5px 0}.deck-coverage{font-size:11px;color:#63716b;text-align:center;margin-top:13px;line-height:1.7}.deck-coverage a{text-decoration:underline}.resume-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(840px,100%);padding:18px;border:1px solid #bacac2;background:#fff9;margin-top:18px}.resume-panel p{font-size:13px}.source-block{border-top:1px solid #d5ddd4;padding-top:20px;margin-top:22px}.source-block h3{font-size:17px;line-height:1.5}.source-year{font-family:var(--font-mono);font-size:10px;color:#006b75}.source-actions,.result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:16px}.program-heading{display:flex;align-items:center;gap:20px;min-height:65px}.program-heading .party-logo{width:85px;max-height:60px;object-fit:contain;margin:0;flex-shrink:0}.program-heading h2{font-size:17px}.program-heading p{font-size:12px}.program-card details{margin-top:24px;font-size:13px}.program-card li{margin:8px 0}.text-link{color:#006c75;background:transparent;border:0;padding:6px 0;text-decoration:underline;text-underline-offset:4px;font-family:var(--font-sans);font-size:13px}.danger{color:#ad233b}.quiz-shell>progress{width:100%;height:8px;accent-color:#007d87;display:block;margin:0 0 22px}.question-topic{display:flex;justify-content:space-between;gap:15px}.question-topic span{color:#75807a}.answer-fieldset{padding:0!important;border:0!important;margin:24px 0 0}.answer-fieldset legend{font-family:var(--font-sans);padding:0;font-size:15px;font-weight:600}.response-key{font-family:var(--font-mono);font-style:normal;color:#6d8177;font-size:10px}.response>span:last-child{min-width:10px}.response.selected::after{display:none}.quiz-note{font-size:12px;color:#6b786e;line-height:1.7;text-align:center;margin-top:22px}.quiz-actions>span{font-size:11px;color:#6b786e}.blind-badge{color:#006d77;font-size:10px}.general-result{margin-bottom:30px;border-left:3px solid #007d87;background:linear-gradient(130deg,#fff,#e3eee4);padding:25px}.history-card.general-result h2{font-size:20px}.count{font-family:var(--font-mono);color:#657c70;font-size:13px}.response-counts{font-size:11px;line-height:1.8;display:flex;flex-direction:column;color:#607369}.result-party .score small{font-family:var(--font-mono);font-size:12px;font-weight:400}.score-table{margin-top:20px}.score-table>div{display:grid;grid-template-columns:55px 1fr 100px 90px;align-items:center;gap:18px;border-top:1px solid #dce2d8;padding:12px 0;font-size:13px}.score-table .party-logo{width:50px;height:30px;object-fit:contain}.review-filters{display:flex;gap:20px;margin:20px 0}.review-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;min-width:150px}.review-author{display:flex;align-items:center;gap:10px;flex:0 0 165px;font-size:11px}.review-author .party-logo{width:55px;height:35px;object-fit:contain}.review-title{flex:1;min-width:0;font-size:14px}.review-title small{display:block;font-size:10px;color:#76816e;margin-top:5px}.review-question summary .answer-badge{white-space:nowrap}.review-question-body{padding:0 0 22px;line-height:1.7}.review-question-body p{margin:10px 0}.source-meta{font-family:var(--font-mono);font-size:11px;color:#66766b}.result-footer-actions{display:flex;justify-content:space-between;gap:20px;margin-top:30px;font-size:12px}.achievement-icon{display:block;height:auto!important}.methodology code{white-space:normal;overflow-wrap:anywhere;background:#e8eee4;padding:3px 5px}.methodology li{margin:9px 0;line-height:1.7}.coverage-table{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;border-bottom:1px solid #d4ddd2;padding:12px 10px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:100;max-width:calc(100% - 32px);width:max-content;padding:14px 20px;border:1px solid #8ea99d;background:#f9fff5;box-shadow:0 5px 30px #22392d26;border-radius:5px;font-size:13px}.toast[hidden]{display:none}.party-wordmark{font-family:var(--font-display);font-size:12px}.home .cf-nav-btn{background:#f7faf2ee;border-color:#789e9d;color:#006f79;box-shadow:0 4px 15px #223c3c18;font-size:30px}.home .cf-nav-btn:focus-visible{outline:3px solid #007e8a}.home .cf-poster-img{object-fit:cover}
.conditions dl{margin:14px 0 0}.conditions dt{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#496a58;margin:12px 0 4px}.conditions dd{margin:0;line-height:1.7;font-size:14px}.conditions dt:not(:first-child){border-top:1px solid #cfdbce;padding-top:13px;margin-top:13px}.review-question-body .conditions dd{font-size:13px}
@media(max-width:650px){.page-heading{display:block}.page-heading h1{font-size:25px}.page-heading .eyebrow{margin-bottom:8px}.quiz-actions>span{order:3;flex-basis:100%;text-align:center}.quiz-actions .button{flex:1}.quiz-hud{font-size:9px;gap:10px}.quiz-hud .blind-badge{flex-basis:100%;text-align:center}.response{min-height:78px}.response-key{display:none}.resume-panel{flex-direction:column;align-items:stretch;gap:10px}.review-filters{gap:12px}.review-filters label{min-width:0;flex:1}.review-filters select{padding:10px 7px;font-size:12px}.review-author{flex-basis:100%;font-size:11px}.review-title{font-size:13px;flex-basis:65%}.review-question summary .answer-badge{font-size:9px}.result-footer-actions{flex-direction:column;gap:10px}.score-table>div{grid-template-columns:40px 1fr 75px;gap:8px;font-size:11px}.score-table>div>span:last-child{grid-column:2/4}.score-table .party-logo{width:38px}.source-actions{gap:10px}.program-heading .party-logo{width:70px}.program-heading{gap:16px}.program-heading h2{font-size:14px}.notice.compact{font-size:11px}.home-edition{margin-top:5px}.toast{font-size:12px}}

/* Colores de respuesta: tinta del fondo de la página y contraste AA. */
:root{--answer-ink:#f5f3ed;--answer-like:#197344;--answer-neutral:#646970;--answer-dislike:#b52c42}
.response[data-value="1"],.quiz-actions .button[data-response="1"]{--answer-color:var(--answer-like)}
.response[data-value="0"],.quiz-actions .button[data-response="0"]{--answer-color:var(--answer-neutral)}
.response[data-value="-1"],.quiz-actions .button[data-response="-1"]{--answer-color:var(--answer-dislike)}
.app-body .response,.app-body .response:is(.selected,[aria-pressed=true]),.app-body .quiz-actions .button.primary[data-response]:not([data-response=""]){background:var(--answer-color);color:var(--answer-ink)!important;border-color:var(--answer-color);box-shadow:inset 0 1px #ffffff26,0 4px 12px #24302b15}
.app-body .response .response-key{color:inherit;opacity:.9}
.app-body .response:is(.selected,[aria-pressed=true]){outline:3px solid var(--answer-color);outline-offset:3px;box-shadow:inset 0 0 0 2px var(--answer-ink)}
.app-body .response:focus-visible{outline:3px solid #272c32;outline-offset:5px}
.app-body .quiz-actions .button.primary[data-response]:not([data-response=""]):hover{background-color:var(--answer-color);box-shadow:0 0 0 2px var(--answer-ink),0 0 0 4px var(--answer-color)}
.app-body .quiz-actions .button.primary[data-response=""]:disabled{background:#d9dcd8;background-image:none;color:#5e6564;border-color:#b8c0ba;opacity:1;filter:none}

/* Vista compacta: covers cuadradas y controles completos en una pantalla móvil. */
.app-body .brand{line-height:1.1}.app-body .app-header{min-height:62px;padding-block:12px}
.app-body .coverflow-section{padding:12px 0}.app-body .coverflow-stage{height:318px}.app-body .coverflow-track{width:250px;height:312px}.app-body .cf-poster-wrap{aspect-ratio:1/1}.app-body .cf-poster-img{object-fit:cover;object-position:center 53%}.app-body .coverflow-card[data-theme=vivienda] .cf-poster-img{object-position:center 63%}
.app-body .arcade-control-deck{padding:15px 20px}.deck-title-block{margin-bottom:9px}.app-body .deck-diff-header{display:none}.app-body .deck-difficulty{padding:8px 12px;margin-bottom:10px}.route-stats{grid-template-columns:repeat(2,1fr)}.app-body .deck-title{font-size:24px}.app-body .home .page-footer{margin-top:12px;padding-block:10px}.home .page-footer>span:first-child{display:none}.home .creator-banner-card p br{display:none}.app-body .creator-banner-card{padding-block:8px}.app-body .resume-panel{padding:9px 12px;margin-top:10px;gap:10px}.app-body .resume-panel .button{min-height:38px;padding:8px 12px}.app-body .resume-panel p{font-size:12px}
@media(max-width:650px){
 .app-body .app-header{min-height:0;padding:10px 14px 7px;gap:7px}.app-body .app-header .brand{font-size:19px}.app-body .main-nav{gap:3px}.app-body .main-nav a{min-height:34px;padding:8px 6px;font-size:8px}
 .app-body .arcade-home{padding:8px 12px 0}.app-body .home{padding-bottom:8px}.app-body .creator-banner-card{padding:6px 8px;gap:6px;flex-wrap:nowrap}.app-body .creator-avatar{display:none}.app-body .creator-banner-card p{font-size:9px;flex:0 0 auto;line-height:1.25}.app-body .creator-banner-card p strong{display:block}.app-body .creator-socials{width:auto;flex:1;margin:0;gap:4px}.app-body .creator-socials a{padding:6px 3px;font-size:9px;min-height:32px}
 .app-body .coverflow-section{width:calc(100% + 24px);max-width:calc(100% + 24px);padding:8px 0}.app-body .coverflow-stage{height:244px}.app-body .coverflow-track{width:202px;height:240px}.app-body .cf-card-frame{padding:7px}.app-body .cf-card-hud-top{margin-bottom:5px;min-height:15px}.app-body .cf-stage-num{font-size:8px}.app-body .cf-count-pill{font-size:7px;padding:1px 4px}.app-body .cf-card-footer{margin-top:6px}.app-body .cf-card-name{font-size:10px}.app-body .cf-nav-btn{width:34px;height:40px;font-size:24px}
 .app-body .arcade-control-deck{padding:11px 13px}.app-body .deck-title{font-size:20px;line-height:1.2;margin:0}.app-body .deck-title-block{margin-bottom:7px}.app-body .deck-difficulty{padding:5px 10px;margin-bottom:8px}.route-stats strong{font-size:17px}.route-stats span{font-size:8px}.app-body .arcade-start-btn{min-height:44px;padding:9px 12px}.app-body .arcade-start-btn .start-btn-text{font-size:11px}.app-body .start-arrow{font-size:21px;right:12px}
 .app-body .resume-panel{flex-direction:row;align-items:center;padding:6px 9px;margin-top:8px}.app-body .resume-panel p{font-size:10px}.app-body .resume-panel .button{font-size:8px;padding:7px 8px;min-height:34px}.app-body .home .page-footer{font-size:8px;margin-top:8px;padding:7px 0;gap:0;align-items:center}
 .app-body .quiz-shell{padding:10px 12px 14px}.app-body .quiz-hud{font-size:9px;gap:6px;margin-bottom:8px;flex-wrap:nowrap}.app-body .quiz-hud .text-link{font-size:10px;padding:4px 0}.app-body .quiz-hud .blind-badge{display:none}.app-body .quiz-shell>progress{height:4px;margin-bottom:10px}.app-body .question-card{padding:15px 16px;border-top-width:2px}.app-body .question-topic{font-size:8px;margin-bottom:9px}.app-body .question-card h1{font-size:17px;line-height:1.35;margin-bottom:10px}.app-body .question-copy{font-size:14px;line-height:1.45}.app-body .conditions{padding:10px 11px;margin-top:12px;font-size:12px;line-height:1.45}.app-body .conditions strong,.app-body .conditions dt{font-size:8px}.app-body .conditions dl{margin:7px 0 0}.app-body .conditions dd{margin:3px 0 0}.app-body .conditions dt:not(:first-child){margin-top:7px;padding-top:7px}.app-body .answer-fieldset{margin-top:12px}.app-body .answer-fieldset legend{font-size:12px}.app-body .responses{margin:8px 0;gap:7px}.app-body .response{min-height:50px;padding:9px 5px;font-size:8px!important;gap:2px}.app-body .quiz-actions{margin:10px 0 0;gap:10px}.app-body .quiz-actions>.button{min-height:40px;padding:9px 10px;font-size:9px}.app-body .quiz-actions>span,.app-body .quiz-note{display:none}
}
@media(max-width:650px) and (max-height:700px){.app-body .coverflow-stage{height:213px}.app-body .coverflow-track{width:174px;height:210px}.app-body .creator-banner-card{padding-block:4px}.app-body .question-card{padding:12px 14px}.app-body .conditions{margin-top:9px;padding:8px 10px}.app-body .question-copy{font-size:13px}.app-body .question-card h1{font-size:16px}.app-body .conditions{font-size:11px}.app-body .question-topic{margin-bottom:6px}.app-body .answer-fieldset{margin-top:9px}}
@media(max-width:650px) and (max-height:700px){.app-body .arcade-home{--compact-card:clamp(124px,calc(100svh - 493px),174px)}.app-body .coverflow-stage{height:calc(var(--compact-card) + 39px)}.app-body .coverflow-track{width:var(--compact-card);height:calc(var(--compact-card) + 36px)}}
@media(max-width:650px){.app-body .conditions dd{font-size:12px;line-height:1.45}.app-body .conditions dt{margin-top:7px;margin-bottom:3px}}
@media(max-width:650px) and (max-height:700px){.app-body .conditions dd{font-size:11px;line-height:1.4}.app-body .question-card h1{line-height:1.25}.app-body .question-copy{line-height:1.4}}
@media(max-width:650px) and (max-height:600px){
 .app-body.in-game .app-header .brand{display:none}.app-body.in-game .app-header{padding-block:5px}.app-body .quiz-shell{padding:6px 10px 8px}.app-body .quiz-hud{margin-bottom:4px}.app-body .quiz-shell>progress{margin-bottom:7px}.app-body .question-card{padding:10px 12px}.app-body .question-topic{margin-bottom:4px}.app-body .question-card h1{font-size:14px;margin-bottom:7px}.app-body .question-copy{font-size:12px;line-height:1.35}.app-body .conditions{padding:6px 8px;margin-top:8px}.app-body .conditions dd{font-size:11px;line-height:1.35}.app-body .conditions strong{margin-bottom:4px}.app-body .conditions dl{margin-top:5px}.app-body .conditions dt{margin-top:4px;margin-bottom:2px}.app-body .conditions dt:not(:first-child){padding-top:5px;margin-top:5px}.app-body .answer-fieldset{margin-top:8px}.app-body .answer-fieldset legend{font-size:11px}.app-body .responses{margin:6px 0}.app-body .response{min-height:44px}.app-body .quiz-actions{margin-top:8px}.app-body .quiz-actions>.button{min-height:38px}
}

/* Motion and mobile docking */
.app-body .app-header{justify-content:center;flex-wrap:wrap;gap:10px}.app-body .app-header .brand{display:block;flex-basis:100%;text-align:center;margin:0}.app-body .main-nav{margin:0 auto;justify-content:center}.app-body .creator-socials a{justify-content:space-between;gap:8px}
.quiz-progress{position:relative;height:7px;width:100%;margin:0 0 22px;border:1px solid #b3d7c2;border-radius:4px;background:#dbe9df;isolation:isolate}.quiz-progress-fill{display:block;height:100%;position:relative;border-radius:4px;background:linear-gradient(90deg,#16884d,#31e679 80%,#c8ffaf);box-shadow:0 0 7px #17e372aa,0 0 15px #20dc5a55;animation:progressGrow .42s cubic-bezier(.22,1,.36,1);overflow:hidden}.quiz-progress-fill::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff9,transparent);width:40%;animation:progressGlint 2s linear infinite}.quiz-progress.has-advanced{animation:progressPulse .65s ease-out}.progress-feedback{position:absolute;right:0;top:-21px;font:10px var(--font-mono);color:#147947;opacity:0;pointer-events:none}.has-advanced .progress-feedback{animation:progressFeedback .7s ease-out}
@keyframes progressGrow{from{width:var(--progress-from)}to{width:var(--progress-to)}}@keyframes progressGlint{from{left:-45%}to{left:145%}}@keyframes progressPulse{0%{box-shadow:0 0 0 0 #20eb7877}60%{box-shadow:0 0 13px 5px #20eb7840}100%{box-shadow:0 0 0 0 #20eb7800}}@keyframes progressFeedback{0%{opacity:0;transform:translateY(6px)}20%,65%{opacity:1}100%{opacity:0;transform:translateY(-6px)}}
.app-body .response[data-value="1"],.app-body .response[data-value="-1"]{overflow:hidden;isolation:isolate}.app-body .response[data-value="1"]::before,.app-body .response[data-value="-1"]::before{content:'';position:absolute;inset:0;transform:translateX(-150%);background:linear-gradient(105deg,transparent 25%,#ffffff0d 40%,#ffffff2b 50%,#ffffff0d 60%,transparent 75%);pointer-events:none;animation:answerSweep 3.8s ease-in-out infinite}.app-body .response[data-value="-1"]::before{animation-delay:1.1s}@keyframes answerSweep{0%,18%{transform:translateX(-150%)}65%,100%{transform:translateX(150%)}}
.splash{position:fixed;inset:0;z-index:10000;background:#f5f3ed;display:grid;place-items:center;padding:20px;overflow:hidden}.splash-player{width:min(600px,100%);pointer-events:none}.splash-wordmark{font:900 32px var(--font-display);letter-spacing:.12em;color:#007e88}.is-loading{overflow:hidden}
@media(max-width:650px){
 .app-body .app-header{gap:6px}.app-body .app-header .brand{font-size:19px}.app-body .main-nav{width:100%;justify-content:space-between}.app-body .home{height:calc(100dvh - 81px);min-height:440px;display:flex;flex-direction:column;padding:8px 12px calc(156px + env(safe-area-inset-bottom));position:relative;gap:0}.app-body .home .creator-banner-card{flex-shrink:0}.app-body .home .resume-panel{flex-shrink:0;margin-top:7px}.app-body .home .coverflow-section{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:10px 0;margin:0;overflow:hidden}.app-body .home .coverflow-stage{width:100%;height:100%;min-height:170px;max-height:340px;touch-action:pan-y;user-select:none;-webkit-user-select:none}.app-body .home .coverflow-track{width:clamp(150px,calc(100dvh - 405px),245px);height:calc(clamp(150px,calc(100dvh - 405px),245px) + 40px)}.app-body .home .cf-nav-btn{display:none}.app-body .home .arcade-control-deck{position:fixed;z-index:40;left:12px;right:12px;bottom:0;margin:0;max-width:none;width:auto;padding:11px 13px calc(11px + env(safe-area-inset-bottom));border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;background:linear-gradient(140deg,#fffffff5,#ebeee6f5);box-shadow:0 -5px 28px #27414612}.app-body .home .page-footer{display:none}.app-body .home .cf-card-frame{padding:7px}.app-body .quiz-progress{height:5px;margin-bottom:10px}
}
@media(max-width:650px) and (max-height:600px){.app-body.in-game .app-header .brand{display:none}.app-body .home{height:calc(100dvh - 81px);min-height:0;padding-bottom:calc(151px + env(safe-area-inset-bottom))}.app-body .home .coverflow-track{width:clamp(124px,calc(100dvh - 411px),174px);height:calc(clamp(124px,calc(100dvh - 411px),174px) + 36px)}.app-body .quiz-progress{margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){.quiz-progress,.quiz-progress-fill,.quiz-progress-fill::after,.progress-feedback,.app-body .response::before{animation:none!important}.quiz-progress-fill{transition:none}}
.creator-socials a::after{content:'↗';margin-left:auto}
/* Answer dock and continuous gesture motion */
.app-body .creator-socials a{position:relative;justify-content:center;text-align:center;padding-inline:14px}.creator-socials a::after{position:absolute;right:6px;top:50%;transform:translateY(-50%);margin:0}.coverflow-card{transition:none!important;will-change:transform,opacity}.coverflow-stage[data-motion=dragging],.coverflow-stage[data-motion=coasting]{cursor:grabbing}.quiz-bottom-dock{min-width:0}
@media(max-width:650px){.app-body .quiz-shell{padding-bottom:calc(152px + env(safe-area-inset-bottom))}.app-body .quiz-bottom-dock{position:fixed;z-index:40;left:0;right:0;bottom:0;padding:9px 12px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(140deg,#fffffff7,#ebeee6f5);border-top:1px solid #c5d2ca;box-shadow:0 -6px 25px #2741460c;backdrop-filter:blur(20px)}.app-body .quiz-bottom-dock .answer-fieldset{margin:0}.app-body .quiz-bottom-dock .answer-fieldset legend{font-size:11px}.app-body .quiz-bottom-dock .responses{margin:7px 0}.app-body .quiz-bottom-dock .quiz-actions{margin-top:8px}.app-body .quiz-bottom-dock .quiz-actions>.button{min-height:40px}.app-body .quiz-bottom-dock .response{min-height:50px}}
@media(max-width:650px) and (max-height:600px){.app-body .quiz-bottom-dock{padding:6px 10px calc(8px + env(safe-area-inset-bottom))}.app-body .quiz-bottom-dock .response{min-height:44px}.app-body .quiz-bottom-dock .responses{margin:5px 0}.app-body .quiz-bottom-dock .quiz-actions{margin-top:6px}.app-body .quiz-bottom-dock .quiz-actions>.button{min-height:38px}}
/* Five visible covers, General identity and comfortable reading */
.dismiss-draft{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #b8c6c1;border-radius:3px;background:#fff9;color:#53645d;font-size:23px!important;line-height:1}.dismiss-draft:hover{background:#f9e8e7;color:#a52b40;border-color:#c9959b}.app-body .resume-panel p{min-width:0;flex:1}.app-body .resume-panel .button{flex:0 0 auto}.app-body .creator-banner-card p strong{color:#006b75}.app-body .creator-banner-card p{line-height:1.3}
@media(max-width:650px){.app-body .home .coverflow-track{width:clamp(146px,48vw,200px);height:calc(clamp(146px,48vw,200px) + 40px)}.app-body .home .coverflow-stage{min-height:170px;max-height:320px}.app-body .creator-banner-card{flex-wrap:wrap;gap:4px;padding:6px 8px}.app-body .creator-banner-card p{flex:0 0 100%;text-align:center;font-size:10px}.app-body .creator-banner-card p strong{display:inline}.app-body .creator-socials{width:100%;flex:1 0 100%}.app-body .resume-panel{gap:6px}.app-body .resume-panel .button{font-size:8px;padding-inline:7px}.app-body .resume-panel p{font-size:10px;line-height:1.25}.app-body .question-card{--reading-scale:1;padding:calc(18px * var(--reading-scale));display:flex;flex-direction:column;justify-content:space-between;gap:calc(9px * var(--reading-scale));box-sizing:border-box}.app-body .question-card>*{flex:0 0 auto;margin:0}.app-body .question-card h1{font-size:calc(clamp(18px,4.8vw,25px) * var(--reading-scale));line-height:1.3;margin:0}.app-body .question-copy{font-size:calc(clamp(16px,4.3vw,21px) * var(--reading-scale));line-height:1.45}.app-body .question-topic{font-size:calc(9px * var(--reading-scale));margin:0}.app-body .question-card .conditions{padding:calc(11px * var(--reading-scale));margin:0;font-size:calc(13px * var(--reading-scale));line-height:1.45}.app-body .question-card .conditions dd{font-size:calc(clamp(13px,3.5vw,17px) * var(--reading-scale));line-height:1.45;margin:calc(4px * var(--reading-scale)) 0 0}.app-body .question-card .conditions strong,.app-body .question-card .conditions dt{font-size:calc(9px * var(--reading-scale));line-height:1.3}.app-body .question-card .conditions dl{margin:calc(8px * var(--reading-scale)) 0 0}.app-body .question-card .conditions dt{margin:0}.app-body .question-card .conditions dt:not(:first-child){margin-top:calc(8px * var(--reading-scale));padding-top:calc(8px * var(--reading-scale))}}
@media(max-width:650px) and (max-height:600px){.app-body .home .coverflow-track{width:clamp(132px,45vw,174px);height:calc(clamp(132px,45vw,174px) + 36px)}}
@media(max-width:650px){.app-body .home .coverflow-track{width:clamp(140px,43vw,184px);height:calc(clamp(140px,43vw,184px) + 40px)}}
@media(max-width:650px) and (max-height:600px){.app-body .home .coverflow-track{width:clamp(132px,43vw,174px);height:calc(clamp(132px,43vw,174px) + 36px)}}

/* Compressed side faces have disjoint bounds throughout the gesture. */
.app-body .home .coverflow-stage{perspective:none}.app-body .home .coverflow-track,.app-body .home .coverflow-card{transform-style:flat}.app-body .home .cf-card-frame{box-sizing:border-box}
@media(max-width:650px){.app-body .home .coverflow-stage{max-height:none;min-height:0}.app-body .home .coverflow-section{padding-block:4px}}

/* Proposal reading: natural height, centered labels and anonymous full text. */
.app-body .question-card{height:auto;overflow:visible;overflow-wrap:anywhere}
.app-body .question-card .conditions{min-width:0;max-width:100%;flex-shrink:0;overflow-wrap:anywhere}
.app-body .question-card h1{font-size:clamp(17px,2.4vw,22px);line-height:1.35;text-align:center}
.app-body .response{position:relative;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;text-align:center;padding-inline:24px}
.app-body .response .response-label{min-width:0;min-height:0;width:100%;text-align:center;overflow-wrap:anywhere}
.app-body .response .response-key{position:absolute;left:8px;top:50%;transform:translateY(-50%)}
.app-body .response .response-check{position:absolute;right:8px;top:50%;transform:translateY(-50%);min-width:0}
.app-body .proposal-read-more{display:block;width:fit-content;max-width:100%;min-height:36px;margin:5px auto 8px;padding:8px 4px;border:0;background:none;color:#52685c;font-size:12px;line-height:1.5;text-align:center;text-decoration:underline;text-underline-offset:3px}
.party-redaction{display:inline-block;vertical-align:-.08em;width:min(var(--mask-width,8ch),100%);height:.95em;border-radius:2px;background:#858b89;user-select:none}
.proposal-full-text{overflow-wrap:anywhere}
.app-body .proposal-full-text h3{text-align:center;font-size:17px;line-height:1.4;margin-top:18px}
.app-body dialog .proposal-reading-note{font-size:12px;color:#69756e}
@media(max-width:650px){
 .app-body .question-card{justify-content:flex-start;gap:calc(10px * var(--reading-scale,1))}
 .app-body .question-card h1{font-size:calc(clamp(16px,4.2vw,20px) * var(--reading-scale,1));text-align:center}
 .app-body .quiz-shell{overflow:visible}
 .app-body .quiz-bottom-dock .response{padding-inline:18px}
 .app-body dialog{max-height:calc(100dvh - 24px);width:calc(100% - 24px)}
}
@media(max-height:450px){.app-body .quiz-bottom-dock{position:static}.app-body .quiz-shell{padding-bottom:16px!important}}

/* General alone carries a rotating multicolor border; its surface stays white. */
.app-body .quiz-hud{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;flex-wrap:nowrap}
.quiz-hud-category{text-align:center;min-width:0;overflow-wrap:anywhere;font-size:10px;line-height:1.35;color:#006c77}
.quiz-hud-count{font-size:10px;white-space:nowrap;text-align:right}
.app-body .question-card h1{text-transform:none;font-size:clamp(17px,2.4vw,22px);line-height:1.35;text-align:center}
.app-body .question-card .conditions{display:grid;grid-template-columns:17px minmax(0,1fr);gap:0;padding:0;margin:0;border:1px solid #c5d5be;border-left:0;background:#edf3e6;overflow:visible}
.app-body .question-card .conditions>strong{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);font:7px/1 var(--font-mono);letter-spacing:.02em;text-transform:none;margin:0;padding:7px 3px;background:#a7bda0;color:#304e2a;border:0;border-right:3px solid #6d9464}
.app-body .question-card .conditions dl{margin:0;padding:0;min-width:0;display:block}
.app-body .question-card .condition-row{display:grid;grid-template-columns:16px minmax(0,1fr);min-width:0}
.app-body .question-card .condition-row+.condition-row{border-top:1px solid #c5d5be}
.app-body .question-card .conditions .condition-row>dt{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);font:6px/1 var(--font-mono);letter-spacing:0;text-transform:none;margin:0;padding:5px 3px;background:#e1eadb;color:#4e6747;border:0}
.app-body .question-card .conditions .condition-row>dd{font-size:14px;line-height:1.4;margin:0;padding:8px 9px;min-width:0}
@media(max-width:650px){
 .app-body .quiz-hud{gap:6px}
 .quiz-hud-category{font-size:9px}.quiz-hud-count{font-size:9px}
 .app-body .question-card h1{font-size:calc(clamp(16px,4.2vw,20px)*var(--reading-scale,1));text-transform:none}
 .app-body .question-card .conditions .condition-row>dd{font-size:calc(13px*var(--reading-scale,1));line-height:1.4;padding:7px 8px;margin:0}
}
.deck-source-note{font-size:10px;line-height:1.4;text-align:center;color:#5c6b64;margin:0 0 9px}
@property --general-border-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.app-body .coverflow-card[data-theme=general] .cf-card-frame,
.app-body .coverflow-card[data-theme=general].is-active .cf-card-frame{
 --general-border-angle:0deg;
 border-color:transparent;
 background:linear-gradient(#fffefa,#fffefa) padding-box,
  conic-gradient(from var(--general-border-angle),#64ac34,#17884d,#df3044,#1688c9,#eb7f27,#64ac34) border-box;
 box-shadow:0 16px 30px #23333826,inset 0 0 18px #ffffffa8;
 animation:generalBorderOrbit 6s linear infinite;
}
@keyframes generalBorderOrbit{to{--general-border-angle:360deg}}
@media(prefers-reduced-motion:reduce){
 .app-body .coverflow-card[data-theme=general] .cf-card-frame{animation:none}
}

/* Blur the chamfered silhouette, then let it fade beyond the original frame. */
.app-body .coverflow-card[data-theme=general]{isolation:isolate}
.app-body .general-halo{
 position:absolute;inset:0;z-index:-1;pointer-events:none;
 filter:blur(11px);opacity:.85;
}
.app-body .general-halo::before{
 content:'';position:absolute;inset:0;
 clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);
 background:conic-gradient(from var(--general-border-angle),#79f42c,#00d58b,#ff2547,#168fff,#ff8b1c,#79f42c);
 animation:generalBorderOrbit 6s linear infinite;
}
.app-body .coverflow-card[data-theme=general] .cf-card-frame,
.app-body .coverflow-card[data-theme=general].is-active .cf-card-frame{
 border-width:2px;
 background:linear-gradient(#fffefa,#fffefa) padding-box,
  conic-gradient(from var(--general-border-angle),#79f42c,#00d58b,#ff2547,#168fff,#ff8b1c,#79f42c) border-box;
 box-shadow:inset 0 0 8px #fff,0 0 8px #ffffffb3;
}

.app-body .creator-socials a{overflow:hidden;isolation:isolate;transition:box-shadow .2s,border-color .2s}
.app-body .creator-socials a[href*="instagram.com"]{
 --social-shine:linear-gradient(110deg,transparent 20%,#f33caa38 43%,#b164ef70 52%,transparent 80%);
}
.app-body .creator-socials a[href*="tiktok.com"]{
 --social-shine:linear-gradient(110deg,transparent 20%,#00e5dc65 44%,#ff315b55 57%,transparent 80%);
}
.app-body .creator-socials a[href*="x.com"]{
 --social-shine:linear-gradient(110deg,transparent 20%,#05091080 40%,#269bff70 54%,transparent 80%);
}
.app-body .creator-socials a::before{
 content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
 background:var(--social-shine);transform:translateX(-140%);
 animation:socialBrandShine 4.5s ease-in-out infinite;
}
.app-body .creator-socials a:nth-child(2)::before{animation-delay:.5s}
.app-body .creator-socials a:nth-child(3)::before{animation-delay:1s}
@keyframes socialBrandShine{0%,15%{transform:translateX(-140%)}70%,100%{transform:translateX(140%)}}
@media(prefers-reduced-motion:reduce){
 .app-body .general-halo::before,
 .app-body .creator-socials a::before{animation:none}
}


/* Stable centered HUD, illuminated answers and undistorted 3D cards. */
.app-body .quiz-hud{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr)}
.quiz-hud>button{justify-self:start;text-align:left;white-space:normal}.quiz-hud-count{justify-self:end}
.app-body .creator-socials a,.app-body .creator-socials a::before{animation:none!important}
.app-body .creator-socials a::before{display:none!important}
.app-body .response{transition:box-shadow .18s,filter .18s,transform .18s}
.app-body .response:is(.selected,[aria-pressed=true]){outline:none;outline-offset:0;transform:translateY(2px);filter:brightness(1.16);box-shadow:inset 0 3px 7px #0004,inset 0 -1px 5px #fff5,0 0 14px 3px color-mix(in srgb,var(--answer-color) 55%,transparent),0 0 28px color-mix(in srgb,var(--answer-color) 28%,transparent)}
.app-body .response:focus-visible{outline:2px solid #263c35;outline-offset:4px}
.app-body .home .coverflow-stage{perspective:none;isolation:isolate}
.app-body .home .coverflow-track,.app-body .home .coverflow-card{transform-style:flat}
.app-body .home .coverflow-card{transform-origin:center center;backface-visibility:hidden}
.app-body .home .cf-card-frame{background:#fffefa;backdrop-filter:none}
.app-body .home .coverflow-card .cf-poster-img{filter:none}
.app-body .home .cf-card-frame{position:relative}
.app-body .home .cf-card-frame::after{content:'';position:absolute;inset:0;z-index:10;pointer-events:none;background:#fff;opacity:var(--cover-white,0);transition:opacity .15s linear}
@media(prefers-reduced-motion:reduce){.app-body .home .cf-card-frame::after{transition:none}}

/* One mobile viewport: top information, flexible deck, bottom action in flow. */
@media(max-width:650px){
 .app-body:has(.home) .app-header{padding-block:5px;gap:4px;min-height:0}
 .app-body:has(.home) .main-nav a{min-height:33px;padding-block:6px}
 .app-body .home{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;align-items:stretch;gap:6px;height:calc(100svh - 70px);min-height:0;max-width:100%;padding:6px 12px max(6px,env(safe-area-inset-bottom));box-sizing:border-box}
 .app-body .home .creator-banner-card{grid-row:1;width:100%;padding:5px 7px;gap:3px;margin:0}
 .app-body .home .creator-socials a{min-height:30px;padding-block:5px}
 .app-body .home .resume-panel{grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:5px;padding:3px 6px;margin:0;min-width:0}
 .app-body .home .resume-panel p{font-size:9px;min-width:0}
 .app-body .home .resume-panel .button{font-size:8px;min-height:30px;padding:5px 6px}
 .app-body .home .resume-panel .dismiss-draft{width:28px;min-height:30px;padding:0}
 .app-body .home .coverflow-section{grid-row:3;width:100%;max-width:none;height:100%;min-height:0;padding:0;margin:0;overflow:hidden}
 .app-body .home .coverflow-stage{height:100%;min-height:0;max-height:none;min-width:0}
 .app-body .home .arcade-control-deck{grid-row:4;position:relative;inset:auto;align-self:end;width:100%;max-width:none;margin:0;padding:7px 10px;border:1px solid #bed0c9;border-radius:4px;box-shadow:0 -3px 16px #2741460c}
 .app-body .home .deck-title-block{height:24px;margin:0 0 4px;display:grid;place-items:center}
 .app-body .home .deck-title{font-size:clamp(13px,4.2vw,18px);line-height:1.2;white-space:nowrap}
 .app-body .home .deck-difficulty{padding:4px 8px;margin:0 0 6px}
 .app-body .home .route-stats strong{font-size:18px;line-height:1.15}
 .app-body .home .route-stats span{font-size:7px;line-height:1.3}
 .app-body .home .arcade-start-btn{min-height:44px;padding:8px 10px}
}
@media(max-width:650px) and (max-height:470px){
 .app-body .home{height:auto!important;grid-template-rows:auto auto 180px auto}
}
