/* Spielzeit 2.2 – consistent, subdued forest-green theme */
:root{
 --bg:#0d281f;--white:#193b2e;--ink:#f5f6eb;--ink2:#c0d3c4;
 --forest:#173d2d;--forest2:#102c21;--line:#385a46;
 --sage:#7ca27e;--mint:#284b39;--lime:#c4dca4;--yellow:#e2c27a;
 --shadow:0 15px 40px rgba(0,12,8,.25);
 color-scheme:dark;
}
html{background:#0c261c}
body{color:var(--ink);background:radial-gradient(ellipse 65% 28% at 85% 0%,rgba(78,120,86,.2),transparent),linear-gradient(180deg,#15372a,#0c241b 55%,#0c241b);min-height:100vh}
h1,h2,h3,h4{color:#f7f7ec}
p,.muted,small{color:#bbd0bd}
a{color:#d8e8ca}
.sitebar{border-bottom:1px solid rgba(176,212,171,.14)}
.sitebar .logo{color:#f5f5e5}.topnav button{color:#d1decf}.topnav button:hover{color:#fff}
.navright .user-pill{background:#2b503c;color:#e5f1dc}
button, .btn{border-radius:12px;min-height:44px;max-width:100%;text-wrap:pretty}
button.primary,.btn.primary,.arrow-button{background:#b7cf99!important;color:#122d1f!important;border:1px solid #b7cf99!important;box-shadow:0 5px 15px rgba(10,31,18,.15)}
button.primary:hover:not(:disabled),.btn.primary:hover,.arrow-button:hover{background:#cce0af!important;border-color:#cce0af!important}
button.ghost,.btn.ghost{background:#244735;color:#ecf3e8;border-color:#4c7058}
button.ghost:hover{background:#305640}
button.soft,.btn.soft{background:#315943;color:#e8f4e3;border-color:#456d50}
button:disabled{opacity:.53}
.hero{border:1px solid #466e50;background:#204834 url('assets/forest.svg') center/cover no-repeat;box-shadow:0 16px 42px rgba(4,25,15,.27)}
.hero:before{background:linear-gradient(90deg,rgba(12,44,31,.96),rgba(19,51,34,.94) 47%,rgba(26,61,39,.65) 76%,rgba(26,61,39,.48));z-index:0}
.hero-content{z-index:2}.hero h1,.hero .lead{color:#f5f7eb}.hero .mini-note{color:#d4e4cc}
.hero-turtle{filter:drop-shadow(0 18px 13px rgba(0,12,7,.33))}
.sectiontitle h2{color:#f3f6ea}.sectiontitle p{color:#bdd1bf}
.badge{color:#cee1c0;background:#365943}.badge.gold{color:#f2db9b;background:#68582f}.badge.gray{color:#cedcc9;background:#325440}
.gamecard{background:#1e4432;border:1px solid #385c43;box-shadow:0 12px 28px rgba(0,14,8,.22)}
.gamecard .gameinfo h3,.gameinfo{color:#f2f5eb}.gameinfo p{color:#c8d8ca}.gamecard .cardfoot{color:#bcd3be}
.gameart{background:linear-gradient(135deg,#426d4a,#718f62);border-color:#5b8056}
.gameart:before{opacity:.4}.gameart .art-chip{background:#244d34;color:#e8f3df}
.gamecard.coming{opacity:.89}.gamecard.coming .arrow-button{background:#315842!important;color:#c9dac9!important;border-color:#507859!important}
.arrow-button{display:grid;place-items:center;width:43px;height:43px}
.paper,.game-shell .paper,.lobby-shell .paper{background:#1c4030;color:#f3f6ea;border:1px solid #3a6047;box-shadow:0 12px 30px rgba(0,16,9,.2)}
.paper h2,.paper h3,.paper h1{color:#f6f8ef}.paper p,.paper .muted{color:#c6d7c9}
.label{color:#b6d7a4}.code{color:#e4f0d9}
.field{color:#e2eee0}.field small{color:#b4cbb6}
.field input,.field select,.field textarea,.text-input{color:#19392a;background:#f6f8ee;border:1px solid #afc5ad}
.field input:focus,.field select:focus,.field textarea:focus,.text-input:focus{color:#133423}
.field input::placeholder,.text-input::placeholder{color:#7e9784}
.field select option{background:#f2f4e9;color:#173d2b}
.field-hint{color:#a9c5ab}
.player{background:#28503a;border-color:#406c4f;color:#e9f1e5}.player small{color:#bfceb8}.player-avatar{background:#b2ce93}
.player .right{color:#d3e5cd}
.setting-meta{border-color:#41664a;color:#b4cfb9}.setting-meta b{color:#edf3e8}
.checkitem{background:#294f3b;color:#e7f0e5}
.checkitem input{accent-color:#c4dda0}
.notice,.submitted-state,.host-wait{background:#315a43;color:#edf5e9;border-color:#5a835e}
.notice strong,.host-wait strong{color:#f4f8e9}.warning{background:#594d2b;color:#f7e9b7}.error{background:#6c3731;color:#fff0e9}
.sep{background:#3b634c}.coming-banner{background:#4a4530;color:#f6e2b3}
.lobby-shell .game-hero,.game-shell .game-hero{background-color:#183c2c;border-color:#496e54}
.lobby-shell,.game-shell{border-color:#395f46!important;background:linear-gradient(155deg,#103326,#0a241a)!important}
.lobby-shell .game-hero h1,.game-shell .game-hero h1{color:#f7faef}
.lobby-shell .game-hero p,.game-shell .game-hero p{color:#d5e6d4}
.game-shell .show-main,.game-shell .leader-panel{background:#1c4030;color:#f7f7ed}
.game-shell .leader-panel{border-color:#507157}.game-shell .leader-panel h3{color:#f7f7ed}
.leader-row{background:#264d38;border-color:#476951}
.leader-row.is-you{background:#365c45}
.game-progress .label{color:#c5d9b5}.game-progress .muted{color:#b0c9b3}
.progress-track{background:#3e624a}.progress-track>div{background:#b2d18f}
.category-tag{background:#315b43;color:#e4efda}.round-timer{background:#0d3023;color:#e9f4db;border:1px solid #446e51}
.game-shell .round-title,.game-shell .reveal-question{color:#f4f6e9}
.guess-form .answer-label{color:#d7e8d1}
.guess-control{border-color:#8cb19a}.guess-control input{background:#f6f7f0}
.guess-control .answer-suffix{color:#1a3b2a;background:#d5e3cf;border-color:#abc5a7}
.player-submission-status{color:#bad0ba}
.game-shell .reveal-answer{background:#2d533b;border-color:#537b56;color:#e7f2e1}
.reveal-answer .label{color:#bcdca8}.reveal-answer strong{color:#f1f7dc}
.reveal-answer p{color:#e1eddd}.reveal-answer a{color:#d1edb8}
.round-results h3{color:#f0f6ed}
.round-result-row{border-color:#426349;color:#d1e1d0}.round-result-row strong{color:#c8e6b6}
.result-history-item{border-color:#476650}.result-history-item b{color:#d7efcd}
.status-pill{background:#365f45;color:#deefd6}
.host-wait strong{color:#f6f5ea}
.lobby-shell #lobby-settings input,.lobby-shell #lobby-settings select{background:#f8f9f3;color:#153826}
.countdown{background:#315740;color:#f0f5e8}
.solution{background:#2c513b;color:#f0f7ed;border-color:#56745c}
.solution strong{color:#f1f9e9}
.scoreline{border-color:#44664c;color:#e6f3e4}.scoreline b{color:#f5f8ec}
.recovery{background:#2e5740;color:#f7f8f0}
.autharea .tabrow{background:#2a523a}.autharea .tabrow button{color:#c9ddca}.autharea .tabrow button.active{background:#adc995;color:#1b3929}
.footer{background:linear-gradient(transparent,rgba(60,91,67,.3));color:#c5d8c5}
.footer span{color:#c9d5c3}.toast{background:#b9d69d;color:#173a28}
.create-room-screen{display:flex;justify-content:center;align-items:flex-start;min-height:62vh;padding:clamp(16px,5vw,58px) 0}
.create-room-card{max-width:570px;width:100%;padding:clamp(23px,3.5vw,42px)}
.create-room-card h1{font-size:clamp(33px,4.4vw,52px);letter-spacing:-.04em;margin:10px 0}
.create-room-card p{max-width:480px}.create-main-button{min-height:55px;font-size:16px;margin-top:9px}
.howto{max-width:950px;margin:24px auto 65px}.howto-card{padding:clamp(24px,5vw,44px)}.howto h1{font-size:clamp(30px,5vw,53px)}
.how-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.how-steps>div{background:#28503b;border:1px solid #486d4d;padding:20px;border-radius:15px}
.how-steps b{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#aecf8e;color:#183a25;font-size:16px}
.how-steps h3{margin:14px 0 6px}.how-steps p{font-size:14px;margin:0;color:#c6d9c5}
.how-actions{margin-top:18px}.how-actions button{flex:1 1 150px}
.lobby-invite-actions{align-items:stretch}.lobby-invite-actions .invite-button{min-width:190px}
.invite-button{position:relative;isolation:isolate;overflow:hidden}
.invite-button.invite-celebrate{animation:invite-pop .65s cubic-bezier(.2,1.6,.3,1)}
.invite-button.invite-celebrate:after{content:'✦ ✧ ✦';position:absolute;inset:0;display:grid;place-items:center;background:#bfdca0;color:#1c4930;font-size:23px;animation:invite-spark 1.2s ease-out both}
@keyframes invite-pop{0%{transform:scale(1)}42%{transform:scale(1.065)}100%{transform:scale(1)}}
@keyframes invite-spark{0%{opacity:0;transform:translateY(13px)}28%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-12px)}}
@media(max-width:700px){
 .sitebar{gap:8px}.sitebar .logo{font-size:23px}
 .sitebar .navright .logout{display:inline-flex!important}
 .hero{min-height:358px}.hero:before{background:linear-gradient(180deg,rgba(16,49,33,.98),rgba(18,54,36,.94) 54%,rgba(18,54,36,.65))}
 .hero .hero-actions{gap:9px}
 .gamecard{border-radius:15px}.gameart{height:135px}
 .gamecard .gameinfo{padding:13px}
 .lobby-invite-actions .invite-button{flex:1 1 100%;min-height:54px}
 .how-steps{grid-template-columns:1fr}
 .create-room-card{padding:22px 17px}
}
@media(prefers-reduced-motion:reduce){
 .invite-button.invite-celebrate,.invite-button.invite-celebrate:after{animation:none}
}

.footer{flex-wrap:wrap;padding:12px 16px;text-align:center}.footer .version-tag{font-size:10px;color:#9eb89d;font-weight:700;white-space:nowrap}
