*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top,#17255b,#080b18 75%);color:white;min-height:100vh;font:18px/1.5 system-ui,sans-serif}header{text-align:center;padding:15px}header img{width:min(680px,95%);height:auto}main{max-width:1200px;margin:auto;padding:20px}h1{font-size:clamp(26px,4vw,46px)}a{color:#ffd477}button{padding:12px 20px;background:#d82c97;color:white;border:0;border-radius:8px;font:inherit;cursor:pointer}input{font:inherit;padding:9px;border-radius:7px;border:1px solid #53638c}input[type=number]{width:100px}table{width:100%;border-collapse:collapse;font-size:clamp(20px,3vw,38px)}th,td{text-align:left;padding:16px;border-bottom:1px solid #354568}th{color:#ffd477}td:first-child{color:#f568c1}details,.settings{padding:20px;background:#141c35;border:1px solid #354568;border-radius:12px;margin-bottom:15px}summary{cursor:pointer;font-weight:700}.answer-list{columns:2;font-size:16px}.answer-list li{break-inside:avoid;padding:5px;overflow-wrap:anywhere}.controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffd477;outline-offset:3px}@media(max-width:650px){.answer-list{columns:1}th,td{padding:10px}main{padding:12px}}
.quiz-nav{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:18px auto}.quiz-nav a,.quiz-nav button{display:block;border:1px solid #55567d;border-radius:30px;padding:9px 17px;text-decoration:none;background:#171b35;color:#fff;font-size:15px}.quiz-nav form{margin:0}.quiz-nav a:hover{background:#683586}.leader-card{position:relative;overflow:hidden;text-align:center;padding:55px 25px;margin:22px auto 35px;border:2px solid #ffd477;border-radius:26px;background:radial-gradient(ellipse at top,#603367,#18162e 75%);box-shadow:0 0 55px #ffba4522}.leader-card h1,.leader-card h2{font-size:clamp(35px,6vw,85px);line-height:1.1;overflow-wrap:anywhere;margin:20px 0}.leader-card p{font-size:clamp(22px,3vw,40px);color:#ffd477;margin:0}.eyebrow{letter-spacing:.19em;color:#ffd477;font-size:16px;font-weight:800}.leader-card.compact{padding:25px}.compact h2{font-size:clamp(26px,4vw,55px)}.compact p{font-size:23px}.celebrate{animation:champion 1s ease-out}.score-pulse{animation:scorepulse .7s ease-out}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;left:var(--x);top:-20px;width:9px;height:16px;animation:fall 2.5s var(--delay) linear forwards}.admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.admin-cards a{background:#171e38;border:1px solid #595077;border-radius:18px;padding:30px;text-decoration:none;display:grid;gap:12px}.admin-cards strong{font-size:25px}.admin-cards span{color:#ced3e9}.login-card{max-width:550px;margin:40px auto;padding:35px;border:1px solid #ffd477;border-radius:24px;background:#171e38}.login-card label,.key-row label{display:grid;gap:8px;margin-bottom:16px}.login-card input,.key-row input{width:100%}.key-row{border:1px solid #58577c;border-radius:16px;padding:20px;margin:18px 0}.answer-row{position:relative}.answer-row input{transition:background .2s,border .2s}.answer-row.mark-correct input{background:#d8ffe9;border:3px solid #32bb78}.answer-row.mark-wrong input,.answer-row.mark-duplicate input{background:#ffe4e8;border:3px solid #ee586d}.answer-strap{grid-column:2;font-weight:850;font-size:13px;text-align:center;letter-spacing:.08em;border-radius:4px;color:#fff}.mark-correct .answer-strap{background:#147645}.mark-wrong .answer-strap,.mark-duplicate .answer-strap{background:#b7203d;animation:scorepulse .5s}.mark-correct{color:#57efa9}.mark-wrong,.mark-duplicate{color:#ff8599}.answer-row.mark-correct,.answer-row.mark-wrong,.answer-row.mark-duplicate{color:white}.answer-panel label.answer-row{display:grid}footer{text-align:center;padding:28px;font-size:14px;color:#ced3e9}button:disabled{opacity:.5;cursor:wait}@keyframes champion{0%{transform:scale(.93);filter:brightness(1.8)}50%{transform:scale(1.03)}100%{transform:scale(1)}}@keyframes scorepulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.7)}}@keyframes fall{to{transform:translateY(550px) rotate(650deg);opacity:0}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}@media(max-width:650px){.quiz-nav{gap:6px}.quiz-nav a{font-size:13px;padding:8px 12px}.leader-card{padding:30px 15px}td{overflow-wrap:anywhere}}
#clue-overlay{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none;z-index:2}#clue-overlay[hidden]{display:none}.clue-dot{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;border-style:solid;border-color:#fff7d8;border-radius:50%;padding:0;background:rgba(237,49,153,.75);color:#fff;font-weight:900;line-height:1;box-shadow:0 4px 14px #0008;pointer-events:auto;touch-action:none;cursor:pointer}.clue-dot:hover,.clue-dot:focus-visible{background:rgba(255,212,119,.75);color:#1b1531;outline:3px solid #fff;outline-offset:3px}.dot-editor-panel{padding:20px;background:#171e38;border:1px solid #ffd477;border-radius:15px;margin:15px 0}.dot-editor-panel input{width:100px}.dot-editor-panel button{margin:8px}.editing-dots .answer-panel{display:none}.editing-dots .quiz-layout{grid-template-columns:minmax(0,1fr)}.editing-dots #viewer{height:70vh}.editing-dots .clue-dot{cursor:move}#toggle-dots{margin-bottom:12px}.clue-selected{animation:scorepulse .8s ease-in-out}
.answer-card-grid{--grid-height:clamp(610px,68vh,760px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:calc((var(--grid-height) - 28px)/3);gap:14px;height:var(--grid-height);overflow-y:auto;padding:2px 10px 2px 2px;align-content:start;scrollbar-gutter:stable}.answer-key-card{margin:0;padding:12px 15px;background:#171e38;border:1px solid #535071;border-radius:14px;min-width:0;display:flex;flex-direction:column;gap:6px}.answer-key-card h2{display:flex;align-items:center;gap:12px;margin:0;font-size:16px;line-height:1}.answer-key-number{font-size:38px;font-weight:900;color:#ffd477;font-variant-numeric:tabular-nums}.answer-key-card label{display:grid;gap:2px;font-size:12px;line-height:1.2}.answer-key-card input{width:100%;min-width:0;padding:6px 9px;font-size:15px;line-height:1.2;height:31px}.answer-card-controls{display:flex;gap:8px;margin-top:auto}.answer-card-controls button{font-size:13px;padding:5px 14px;border-radius:6px}.clear-answer{background:#303a55;border:1px solid #647191}.answer-card-status{margin:0;min-height:16px;font-size:11px;line-height:1.2;overflow-wrap:anywhere}.answer-key-card.unsaved{border-color:#ffd477}.answer-guide{font-size:14px;color:#ced3e9}@media(max-width:900px){.answer-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:205px}}@media(max-width:560px){.answer-card-grid{grid-template-columns:1fr;grid-auto-rows:205px;height:70vh}}

/* Full-page quiz watermark; opacity applies only to the background layer. */
body{position:relative;isolation:isolate;background:radial-gradient(ellipse at top,#17255b,#080b18 75%)}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:url("assets/vectors/quiz-watermark.svg?v=8");background-position:center;background-size:cover;background-repeat:no-repeat;opacity:1}

/* Compact controls across the charity quiz. Keep artwork clue dots unchanged. */
button:not(.clue-dot),.file-button{padding:6px 16px;line-height:1.35}
.quiz-nav a,.quiz-nav button{padding:6px 14px;line-height:1.35}
.answer-card-controls button{padding:5px 14px}
.quiz-page-heading{margin:0 0 16px;line-height:1.15}
.tools{padding:10px 14px;gap:8px}
@media(max-width:650px){.quiz-nav a,.quiz-nav button{padding:6px 12px}}
