@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Bebas+Neue&display=swap');
:root{color-scheme:light;--forest:#102b22;--leaf:#1e4436;--sage:#dce994;--paper:#f3f0e7;--white:#fffefa;--ink:#173126;--muted:#53655d;--orange:#c77555;--line:#d9e0d3;--shadow:0 18px 55px rgba(12,36,27,.10)}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}a:hover{text-decoration-color:var(--orange)}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:.84rem}.mini{font-size:.72rem}.eyebrow{font-weight:800;letter-spacing:.17em;text-transform:uppercase;font-size:.72rem;color:var(--orange)}.caps{font-family:'Bebas Neue',Impact,sans-serif;letter-spacing:.02em;font-weight:400;line-height:.94}.topbar{min-height:70px;background:var(--forest);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px max(20px,calc((100vw - 1250px)/2));border-bottom:4px solid var(--sage)}.topbar .logo{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;letter-spacing:.04em}.topbar .logo-icon{width:32px;height:32px;background:var(--sage);color:var(--forest);display:grid;place-items:center;border-radius:9px;font-size:19px}.navlinks{display:flex;flex-wrap:wrap;gap:12px;font-size:.84rem}.navlinks a{text-decoration:none;color:#dce9df}.navlinks a:hover{color:var(--sage)}.container{max-width:1140px;margin:0 auto;padding:30px 20px 65px}.panel{background:var(--white);border:1px solid #e2e7dc;border-radius:20px;padding:25px;box-shadow:var(--shadow)}.display{font-size:clamp(3rem,6vw,5.6rem);margin:0}.headline{font-size:clamp(2.8rem,5vw,4.6rem);margin:8px 0}.subtitle{font-size:clamp(1.07rem,2vw,1.25rem);line-height:1.55;color:var(--muted);max-width:760px}.btn{border:0;border-radius:11px;padding:13px 18px;font-weight:800;letter-spacing:.01em;transition:transform .14s,background .14s;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;min-height:45px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:var(--leaf)}.btn-secondary{background:var(--sage);color:var(--forest)}.btn-ghost{background:#edf1e8;color:var(--forest)}.btn-danger{background:#9e4434;color:#fff}.btn-small{padding:8px 11px;min-height:34px;font-size:.84rem;border-radius:8px}.full{width:100%}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{font-size:.83rem;font-weight:800;color:var(--muted)}input,textarea,select{width:100%;background:#fff;border:1.5px solid #c5d1c3;border-radius:10px;padding:12px 13px;color:var(--ink);outline:none;min-width:0}input:focus,textarea:focus,select:focus{border-color:#447458;box-shadow:0 0 0 3px #b6d8b555}textarea{resize:vertical;min-height:85px;line-height:1.45}.hint{background:#f5f7f0;border:1px solid #dfebd5;border-radius:10px;padding:12px 14px;color:#345345;font-size:.87rem;line-height:1.5}.alert{padding:13px 16px;border-radius:11px;border:1px solid #e3b8ac;background:#fff0ea;color:#7d3023;line-height:1.45}.ok{padding:13px 16px;border-radius:11px;border:1px solid #b9d6ab;background:#eff7e8;color:#235235}.tag{display:inline-block;padding:5px 10px;border-radius:99px;background:#e3e9db;color:var(--leaf);font-size:.75rem;font-weight:800;letter-spacing:.03em}.tag.open{background:#daf0b6}.tag.closed{background:#f6dbcd}.tag.revealed{background:#f6e8b9}.hero-bg{background:var(--forest);color:white;padding:48px 20px 60px;position:relative;overflow:hidden}.hero-bg:after{content:'';position:absolute;width:550px;height:550px;border:1px solid #9dc48d66;border-radius:50%;right:-150px;bottom:-320px;box-shadow:0 0 0 80px #cde7a40d,0 0 0 150px #cde7a407;pointer-events:none}.hero-bg>.wrap{max-width:1100px;margin:auto;position:relative;z-index:2}.hero-bg .subtitle{color:#d9e6db}.hero-bg .eyebrow{color:var(--sage)}.hero-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.hero-card{padding:20px;border:1px solid #789a8377;background:#2b524066;border-radius:13px}.hero-card b{display:block;font-size:1.5rem;color:var(--sage)}.game-shell{min-height:calc(100dvh - 70px);display:grid;grid-template-columns:minmax(0,1fr) 330px;max-width:1050px;gap:28px;margin:0 auto;padding:34px 20px 70px;align-items:start}.game-card{padding:32px}.game-side{background:var(--forest);color:white;padding:30px;border-radius:20px;position:sticky;top:18px;overflow:hidden}.game-side h2{font-size:2.6rem;margin:4px 0 10px}.game-side p{color:#d5e5d7;line-height:1.6}.game-side .stat{border-top:1px solid #ffffff35;margin-top:16px;padding-top:16px}.big-question{font-size:clamp(1.28rem,2.5vw,1.65rem);line-height:1.42;font-weight:800;margin:15px 0 22px}.answers{display:flex;flex-direction:column;gap:11px}.answer{display:flex;align-items:flex-start;gap:13px;text-align:left;width:100%;padding:15px;border:1.5px solid #d9e2d3;border-radius:12px;background:#fff;color:var(--ink);line-height:1.45}.answer:hover{border-color:#9bbb9a;background:#fbfdf8}.answer.selected{background:#eaf2d8;border-color:var(--leaf);box-shadow:0 0 0 1px var(--leaf)}.letter{flex:0 0 30px;display:grid;place-items:center;border-radius:7px;background:#ecf0e6;font-weight:800;height:30px}.answer.selected .letter{background:var(--forest);color:#fff}.progress-bar{height:9px;border-radius:10px;background:#e4eadd;overflow:hidden}.progress-bar>span{display:block;background:var(--orange);height:100%;transition:width .4s}.separator{height:1px;background:var(--line);margin:20px 0}.dark-podium{background:var(--forest);color:white;min-height:100vh;padding:30px 20px;position:relative;overflow:hidden}.rank-container{max-width:1180px;margin:auto}.rank-head{text-align:center;padding:20px 0 30px}.rank-head .headline{font-size:clamp(3.5rem,7vw,7rem)}.rank-head p{color:#d4e1d8;font-size:1.2rem}.rank-qr{background:white;padding:15px;width:min(270px,80vw);border-radius:15px;margin:20px auto 8px}.rank-qr img{width:100%;display:block}.waiting-state{text-align:center;padding:24px 10px 40px}.waiting-state .big-count{font-size:clamp(5rem,17vw,12rem);color:var(--sage);line-height:1}.ranking-table{width:100%;border-collapse:collapse;text-align:left;margin-top:23px}.ranking-table th{font-size:.76rem;letter-spacing:.1em;color:#b9d7bf;text-transform:uppercase}.ranking-table th,.ranking-table td{padding:14px 18px;border-bottom:1px solid #ffffff2a}.ranking-table tbody tr:hover{background:#ffffff0d}.ranking-table strong{color:var(--sage);font-size:1.3rem}.podium{display:flex;align-items:end;justify-content:center;gap:16px;margin:20px 0 36px;min-height:230px}.podium-place{width:28%;max-width:245px;text-align:center;border:1px solid #bed7a954;background:#264b3d;border-radius:16px 16px 0 0;padding:22px 6px;animation:rise .8s ease backwards}.podium-place.first{min-height:205px;background:#dce994;color:var(--forest);animation-delay:.6s}.podium-place.second{min-height:160px;animation-delay:.35s}.podium-place.third{min-height:130px;animation-delay:.1s}.podium-place b{display:block;font-size:clamp(1rem,2vw,1.5rem);overflow-wrap:anywhere}.podium-place .num{display:block;font-family:'Bebas Neue';font-size:3rem}.podium-place .medal{font-size:2rem}@keyframes rise{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.admin-layout{max-width:1350px;margin:auto;padding:23px 20px 65px}.admin-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px}.admin-tabs{display:flex;gap:8px;overflow:auto;margin:16px 0 24px;padding-bottom:5px}.admin-tab{background:#e5ebde;color:var(--forest);border:0;border-radius:10px;padding:11px 16px;font-weight:800;white-space:nowrap}.admin-tab.active{background:var(--forest);color:white}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-box{border-radius:13px;padding:20px;background:#f1f4eb;border:1px solid #e0e8d8}.stat-box b{font-family:'Bebas Neue',sans-serif;font-size:3rem;line-height:1}.stat-box span{display:block;color:var(--muted);font-size:.8rem}.admin-section{display:none}.admin-section.active{display:block}.admin-section h2{margin:0 0 12px;font-size:1.45rem}.table-scroller{width:100%;overflow-x:auto}table.data{border-collapse:collapse;width:100%;min-width:620px}table.data th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#eaf0e7}table.data th,table.data td{padding:11px 12px;border-bottom:1px solid #e1e6db;vertical-align:top}table.data td{font-size:.88rem}table.data tr:hover{background:#f7f9f3}.tools{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.question-card{padding:16px 18px;border:1px solid #e1e8db;border-radius:12px;margin:10px 0;display:flex;align-items:start;gap:14px}.question-card .main{flex:1}.question-card h3{font-size:1rem;margin:5px 0 6px;line-height:1.4}.question-card p{font-size:.8rem;margin:0;color:var(--muted)}.qr-side{display:grid;grid-template-columns:215px minmax(0,1fr);gap:22px;align-items:center}.qr-side img{background:white;padding:10px;border-radius:12px;border:1px solid #e0e6d7;width:215px;height:215px}.mono{font-family:Consolas,monospace;word-break:break-all;font-size:.86rem}dialog{width:min(760px,95vw);max-height:92dvh;border:0;border-radius:18px;box-shadow:0 30px 120px #122b2370;padding:0}dialog::backdrop{background:#102b22a9}.dialog-inner{padding:28px;max-height:91dvh;overflow:auto}.dialog-grid{display:grid;grid-template-columns:1fr 120px;gap:10px}.center{text-align:center}.mt{margin-top:18px}.mb{margin-bottom:18px}.empty{padding:30px;text-align:center;border:1px dashed #bdcab6;border-radius:14px;color:var(--muted)}
@media(max-width:760px){.topbar{padding:12px 16px}.navlinks{gap:8px}.container{padding:20px 14px 45px}.game-shell{grid-template-columns:1fr;padding:20px 12px 45px;gap:15px}.game-card{padding:23px 18px}.game-side{position:static;padding:20px}.game-side h2{font-size:2rem}.hero-cards{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.qr-side{grid-template-columns:1fr;text-align:center}.qr-side img{margin:auto}.admin-layout{padding:18px 12px 45px}.admin-top{flex-wrap:wrap}.panel{padding:17px}.podium{gap:7px}.podium-place{padding:15px 5px;width:32%}.podium-place .medal{font-size:1.5rem}.dialog-inner{padding:19px}.row{gap:8px}}
