:root{font-family:Inter,Noto Sans JP,system-ui,sans-serif;color:#f4f3fa;background:#101227;font-synthesis:none;line-height:1.6}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 90% 10%,#34234066,transparent 45%),#101227}header{height:80px;max-width:1080px;margin:auto;padding:0 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff16}.brand{font-weight:900;letter-spacing:2px;color:#fff;text-decoration:none;font-size:22px}.brand>span:first-child{font-weight:400}.dot{color:#d8ef72;margin-left:10px;font-size:10px}.header-tag{color:#9496ae;font-size:12px}main{max-width:760px;margin:36px auto;padding:0 24px;min-height:70vh}.hero{padding:36px 0 44px}.eyebrow{color:#d8ef72;font-size:11px;letter-spacing:2px;font-weight:800}.hero h1{font-size:clamp(40px,8vw,64px);line-height:1.3;letter-spacing:-2px;margin:22px 0}.hero em{font-style:normal;color:#d8ef72}.hero p{color:#a6a8be;font-size:16px}.hero-badges{display:flex;gap:10px;margin-top:25px;flex-wrap:wrap}.hero-badges span,.pill{font-size:11px;border:1px solid #ffffff25;padding:4px 10px;border-radius:20px;color:#bbc0d4}.panel{background:#1c1f37;border:1px solid #ffffff12;border-radius:20px;padding:28px;margin-bottom:24px;box-shadow:0 12px 45px #07081725}.panel h2{font-size:21px;margin:0 0 12px}.panel p{color:#b8bbcf}.panel h3{font-size:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-heading h2{margin:0}label{display:block;color:#d6d7e5;font-size:13px;font-weight:600;margin-bottom:18px}input,select,textarea{display:block;width:100%;background:#11152c;color:#fff;border:1px solid #3c405b;border-radius:10px;padding:13px 14px;font:inherit;margin-top:7px;min-height:46px}textarea{resize:vertical;min-height:90px}input:focus,select:focus,textarea:focus{outline:2px solid #d8ef72;outline-offset:2px}button{background:#d8ef72;color:#1a2212;border:0;border-radius:10px;padding:13px 20px;font:inherit;font-size:14px;font-weight:750;cursor:pointer;min-height:46px;transition:background .15s,transform .15s}button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}button:focus-visible{outline:3px solid #fff;outline-offset:3px}button:disabled{cursor:default;opacity:.5}.wide{width:100%}.secondary{background:#363b57;color:#fff}.text-button{background:transparent;color:#d8ef72;font-size:12px;padding:6px 10px}.danger{background:#512d44;color:#ffc5d0}.alert,.notice{border-radius:12px;padding:12px 16px;margin-bottom:16px;background:#512d44;display:flex;justify-content:space-between;align-items:center}.notice{background:#34472d}.muted{font-size:12px;color:#9298b2!important}.error{color:#ffbdc8!important}.event-title{font-size:30px;margin:10px 0 22px}.eyebrow>span{float:right;letter-spacing:0;color:#a1a7bd}.identity{display:flex;gap:8px;margin-bottom:20px;font-size:13px;color:#a4abc4}.identity span{margin-left:auto}.share{display:flex;align-items:center;gap:10px}.share label{flex:1;min-width:0}.share input{font-size:11px;color:#aeb5d0}.share button{flex-shrink:0}.inline{display:flex;align-items:center;gap:12px;margin:20px 0}.inline label{flex:1}.player-list{display:flex;gap:8px;flex-wrap:wrap}.player-list span{border-radius:8px;background:#292e49;padding:8px 12px;font-size:13px}.question-row{border-top:1px solid #ffffff15;padding:12px 0;font-size:13px}.question-row>span{margin-right:8px}.question-row p{background:#11152c;padding:12px;border-radius:8px}.quiz{padding:30px}.timer{font-size:20px;color:#d8ef72;white-space:nowrap}.time-track{height:4px;background:#353951;border-radius:4px;margin:18px 0 30px;overflow:hidden}.time-track div{height:100%;background:#d8ef72;transition:width .1s linear}.question-text{font-size:25px!important;line-height:1.6;margin-bottom:28px!important;white-space:pre-wrap;overflow-wrap:anywhere}.choices{display:grid;gap:12px}.choice{display:flex;text-align:left;align-items:center;gap:16px;width:100%;background:#262b46;color:#fff;border:2px solid #414763;padding:16px;opacity:1!important}.letter{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#ffffff0d;color:#b8bed7;flex-shrink:0}.choice>span:last-child{overflow-wrap:anywhere;min-width:0}.choice small{display:block;font-size:11px;color:#d8ef72}.choice.selected{border-color:#d8ef72;background:#3b452f}.choice.correct{border-color:#72e7b0;background:#1b4b40}.choice.correct small{color:#a2ffd5}.choice.incorrect{border-color:#ee8c9c;background:#492e43}.choice.incorrect small{color:#ffc0cc}.answer-status{text-align:center;font-size:13px;min-height:24px}.explanation{padding:24px;border:1px solid #72e7b055;border-radius:12px;background:#173a37;animation:reveal .7s ease}.explanation h3{font-size:22px;white-space:pre-wrap}.explanation small{color:#abc8bf}.controls{border-color:#d8ef7230}.controls button{margin:8px 8px 0 0}.results{text-align:center}.results>h2{font-size:32px;margin-top:12px}.result-list{position:relative;max-height:min(52vh,480px);overflow-y:auto;scrollbar-gutter:stable;text-align:left}.ranking.result-list strong{color:inherit}.result-list .winner-row{background:#d8ef7218;border-color:#d8ef7260}.result-list .winner-row strong{color:#d8ef72}.winner-announcement{margin-top:22px;padding:18px;border:1px solid #d8ef7260;border-radius:12px;background:#d8ef7210;animation:reveal .6s ease}.winner-announcement span{display:block;color:#d8ef72;font-size:13px}.winner-announcement strong{display:block;font-size:22px;overflow-wrap:anywhere}.reveal-wait{padding:20px;color:#a6adc6;font-size:13px}.reveal-wait span{display:block;animation:pulse 1s infinite}.ranking>div{display:grid;grid-template-columns:32px 1fr 46px 86px;gap:8px;padding:14px 10px;text-align:left;border-bottom:1px solid #ffffff12;font-size:13px;align-items:center;animation:reveal .5s ease}.ranking>div span{overflow-wrap:anywhere}.ranking strong{color:#d8ef72}.ranking small{text-align:right;color:#b9bfd7}.ranking .mine{background:#d8ef7210}.create{border-top:3px solid #d8ef72}footer{text-align:center;padding:30px;color:#6c738e;font-size:11px;letter-spacing:1px}@keyframes reveal{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse{50%{opacity:.3}}@media(max-width:520px){header{height:66px;padding:0 20px}.header-tag{display:none}main{padding:0 16px;margin-top:24px}.panel,.quiz{padding:22px 18px;border-radius:16px}.hero{padding-top:16px}.event-title{font-size:25px}.question-text{font-size:21px!important}.inline{align-items:flex-end}.inline button{margin-bottom:18px}.share{gap:6px}.share button{padding:10px;font-size:12px}.ranking>div{gap:5px;grid-template-columns:25px 1fr 38px 76px;font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.event-title,.player-list span,.question-row,.identity strong{overflow-wrap:anywhere}.identity{flex-wrap:wrap}.identity strong,.inline label{min-width:0}@media(max-width:360px){.inline{flex-wrap:wrap}.inline label{flex-basis:100%;margin-bottom:0}.inline button{margin-bottom:0}}label[for=question-text],label[for=question-explanation]{margin-bottom:0}#question-text,#question-explanation{margin-bottom:18px}.ranking>.pending-row{color:#858da8;animation:none}.ranking>.mine{outline:2px solid #91caff;outline-offset:-2px;background:#91caff14}.you-badge{display:inline-block;margin-left:7px;padding:1px 6px;border-radius:4px;background:#91caff;color:#101227;font-size:10px;font-style:normal;white-space:nowrap}.my-result{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px 12px;margin:16px 0;padding:10px;border:1px solid #91caff80;border-radius:10px;background:#91caff10;font-size:12px}.my-result strong{color:#b9ddff;font-size:20px}.my-result .text-button{color:#b9ddff}.library-link{color:#d8ef72}.library-picker{margin:20px 0}.library-panel{margin-top:16px;padding:20px 16px}.library-panel details{margin:14px 0;overflow-wrap:anywhere}.library-panel summary{cursor:pointer;color:#c9d1ec}.library-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.stock-item{border-bottom:1px solid #ffffff25;padding:14px 0}.check-label{display:flex;align-items:center;gap:12px;margin-bottom:8px}.check-label input{width:22px;min-height:22px;height:22px;margin:0;flex-shrink:0;accent-color:#d8ef72}.check-label span{overflow-wrap:anywhere;min-width:0}.library-panel>.wide{margin-bottom:10px}.library-panel .panel{box-shadow:none}#initial-source{margin-bottom:18px}label[for=initial-source]{margin-bottom:0}
