:root{font-family:system-ui,-apple-system,sans-serif;color:#28293e;background:#f6f3ec;--purple:#5b477e;--gold:#ffdb8c}*{box-sizing:border-box}body{margin:0}main{max-width:1240px;margin:auto;padding:24px 28px}header{display:flex;justify-content:space-between;font-size:13px;color:#726b7e}a{color:inherit;text-underline-offset:4px}.intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:38px 0 28px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:2px;color:#78678b}h1{font-size:clamp(32px,4vw,51px);letter-spacing:-2px;margin:8px 0}.star{color:#b88b40;margin-left:20px}.intro p:last-child{color:#6e6976;line-height:1.6}.host{font-size:12px;font-weight:750;letter-spacing:1px;border-left:2px solid #d8cba9;padding:12px 18px;white-space:nowrap}.host small{font-weight:400;letter-spacing:0;display:inline-block;margin-top:8px}.scorebar{background:#fffdf8;border:1px solid #ded8e5;border-radius:14px;padding:16px;margin-bottom:22px}#scores{display:flex;gap:12px;flex-wrap:wrap}.score{display:flex;align-items:center;gap:16px;border:1px solid #ddd4e9;background:#f3eef8;border-radius:9px;padding:10px 14px;flex:1;min-width:150px}.score input{width:110px;min-width:0;border:0;background:transparent;font:650 16px system-ui;color:#514267}.score strong{margin-left:auto;font-size:25px}.tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}button,select{font:inherit;cursor:pointer;border:1px solid #d7cfe0;border-radius:8px;background:white;color:#514267;padding:10px 14px}button:hover{background:#eee8f5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c18a27;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.tools button{font-size:12px;padding:7px 12px}.board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;background:#292940;border:10px solid #292940;border-radius:17px;box-shadow:0 12px 32px #25233c19}.category{color:#f2edf8;text-align:center;padding:17px 3px;font-size:17px;letter-spacing:2px;font-weight:750}.tile{background:#584779;border:1px solid #72628f;color:var(--gold);border-radius:7px;min-height:84px;font-size:clamp(24px,3vw,36px);font-weight:750;box-shadow:inset 0 1px #ffffff16}.tile:hover{background:#71608f;transform:translateY(-1px)}.tile:disabled{background:#343448;color:#a9a5b5;opacity:1;font-size:16px;border-color:#474559}.tile:disabled:hover{transform:none}footer{display:flex;justify-content:space-between;gap:12px;color:#78717f;font-size:12px;padding:20px 2px}details{font-size:13px;line-height:1.7;border-top:1px solid #ded8e0;padding-top:15px;color:#6e6775}summary{cursor:pointer;font-weight:650}dialog{width:min(850px,94vw);border:0;border-radius:22px;padding:28px 36px;color:#29293c;background:#fffdf7;box-shadow:0 25px 100px #15112655}dialog::backdrop{background:#181626bb;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;color:#77648c;font-weight:700}#close{border:0;background:transparent;font-size:21px}dialog>.eyebrow{margin-top:28px}h2{font-size:clamp(29px,4vw,48px);line-height:1.3;margin:22px 0;letter-spacing:-.8px}.instruction{font-size:18px;color:#706779}.suggestion{margin:30px 0;padding:18px 0;border-top:1px solid #e4dce8;border-bottom:1px solid #e4dce8}#question{font-size:24px;color:#574176;font-weight:650}.suggestion small{color:#81788a}.judging{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.judging label{font-size:13px}.primary{background:#5b477e;color:white}.primary:hover{background:#715b95}#feedback{color:#74508c;min-height:20px}@media(max-width:650px){main{padding:16px 10px}.intro{margin:24px 4px}.host{display:none}.board{gap:5px;border-width:6px}.category{font-size:11px;letter-spacing:1px;padding:14px 0}.tile{min-height:70px;padding:6px}.score{padding:8px;gap:6px}.score input{width:90px}.dialog-top{font-size:14px}dialog{padding:20px}.judging{align-items:stretch}.judging button{flex-grow:1}footer{line-height:1.6}.star{margin-left:10px}header{font-size:11px}}
@media(min-width:651px){.intro{margin:22px 0 18px}h1{font-size:42px}.intro p:last-child{margin-bottom:5px}.scorebar{padding:12px;margin-bottom:16px}.tile{min-height:62px;font-size:30px}.category{padding:12px 3px}.board{gap:8px}main{padding-top:18px}footer{padding:14px 2px}}
