:root{color-scheme:dark;--gold:#edca79;--line:#8f6d35;--panel:rgba(10,8,6,.9)}
*{box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}body{margin:0;min-height:100vh;font-family:Georgia,serif;color:#fff;background:#080706 url("../assets/board/indigotales_board_bg.webp") center/cover fixed}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle,transparent,#000b);z-index:-1}
button,input,select{font:inherit}.hidden{display:none!important}.screen{min-height:100vh}.panel{width:min(850px,94vw);min-height:auto;margin:5vh auto;padding:34px;border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:0 20px 80px #000}
.eyebrow,.subtitle{color:var(--gold);letter-spacing:3px;text-transform:uppercase}h1{font-size:clamp(36px,6vw,66px);margin:.1em 0}.columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}form{padding:20px;border:1px solid #735b33;border-radius:14px;background:#0006}label{display:block;margin:14px 0;color:#ddcfaa}input,select{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:8px;background:#17120b;color:#fff}.check{display:flex;gap:10px;align-items:center}.check input{width:auto;margin:0}
button{padding:11px 18px;border:0;border-radius:9px;background:linear-gradient(#efd07d,#a87029);color:#170e04;font-weight:bold;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}
#lobby-code{letter-spacing:10px;color:var(--gold)}.lobby-player{display:flex;justify-content:space-between;padding:13px;border-bottom:1px solid #735b33}
#game-screen{position:relative;overflow:hidden;padding:18px}header{display:flex;justify-content:space-between;gap:14px}header>div,.timer{padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}header span{display:block;color:#bba978;font-size:12px;text-transform:uppercase}.timer strong{font-size:28px;color:#8ee28e}.timer.danger strong{color:#ff635c}
#opponents{display:flex;justify-content:center;gap:12px;margin:20px}.opponent{padding:10px 15px;border:1px solid #745b31;border-radius:999px;background:#000a}.opponent.active{box-shadow:0 0 18px var(--gold);color:var(--gold)}
.board{display:flex;align-items:center;justify-content:center;gap:36px;min-height:340px}.pile,.card{width:155px;height:238px}.pile{border:2px solid #a47b3b;background:repeating-linear-gradient(45deg,#1c1610,#1c1610 10px,#2d2215 10px,#2d2215 20px);color:var(--gold)}
.card{padding:8px;border:1px solid #947039;border-radius:13px;background:#130f0a;text-align:center}.card img{width:100%;height:100%;object-fit:cover;border-radius:9px}.card span{display:block}.faction-choice{width:170px}.hand{position:fixed;left:10%;right:10%;bottom:8px;height:240px;display:flex;justify-content:center;align-items:flex-end}.hand .card{position:relative;width:130px;height:202px;margin-left:-28px;padding:5px;transition:.2s}.hand .card:first-child{margin-left:0}.hand .card:hover{transform:translateY(-30px);z-index:5}.hand button.card{color:#fff}
.log{position:fixed;right:15px;bottom:15px;width:280px;max-height:190px;overflow:auto;padding:12px;background:#000d;border:1px solid var(--line);border-radius:12px}.log h2{font-size:16px;color:var(--gold)}.log p{font-size:12px}
#message{position:fixed;left:50%;top:15px;transform:translateX(-50%);padding:10px 18px;color:#ffcf70;background:#250d08e8;border-radius:8px;z-index:10}#message:empty{display:none}#connection{position:fixed;left:10px;bottom:10px;color:#9a9a9a;font-size:12px}
@media(max-width:760px){.columns{grid-template-columns:1fr}.log{display:none}.hand{left:4%;right:4%}.board{gap:12px}.faction-choice{position:absolute;top:90px;right:8px}}


/* Spielgefühl, Karteninformationen und Gegnerhände */
.singleplayer{display:block;width:100%;margin:22px 0;padding:16px;font-size:21px}
.mode-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:#bba978;text-transform:uppercase;letter-spacing:2px;font-size:12px}
.mode-divider:before,.mode-divider:after{content:"";height:1px;background:#735b33;flex:1}
#opponents{align-items:flex-start;min-height:135px}.opponent-zone{min-width:190px;padding:10px;border:1px solid #745b31;border-radius:14px;background:#000a;text-align:center;transition:.4s}
.opponent-zone.active{box-shadow:0 0 24px #edca7988;transform:translateY(5px)}.opponent-name{color:#ddcfaa;margin-bottom:9px}
.opponent-hand{display:flex;justify-content:center;height:76px;padding-left:18px}.opponent-card-back{display:block;width:48px;height:72px;margin-left:-18px;border:1px solid #a47b3b;border-radius:5px;background:url("../assets/cards/card_back.webp") center/cover;box-shadow:0 3px 8px #000;transform:rotate(var(--turn,0deg))}
.card-copy{position:absolute;left:5px;right:5px;bottom:5px;padding:7px;background:linear-gradient(transparent,#050403 18%);border-radius:0 0 8px 8px;text-align:left;opacity:0;transform:translateY(8px);transition:.28s;pointer-events:none}
.card-copy strong,.card-copy em,.card-copy small{display:block}.card-copy strong{color:#f3d585;font-size:15px}.card-copy em{color:#fff;font-size:11px;font-style:normal}.card-copy small{margin-top:3px;color:#ddd0af;font-size:9px;line-height:1.25}
.hand-card:hover .card-copy,.detailed-card .card-copy{opacity:1;transform:none}.hand-card:hover{transform:translateY(-45px) scale(1.16)!important}.card,.detailed-card{position:relative;overflow:hidden}
#top-card>.detailed-card{width:100%;height:100%;border:0;padding:0}.target-choice,.faction-choice{width:170px}
.action-stage{position:fixed;inset:0;z-index:80;pointer-events:none;display:flex;align-items:center;justify-content:center}.action-scene{display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;transform:translateY(-80px) scale(.65) rotate(-8deg);transition:1.15s cubic-bezier(.16,.8,.22,1);padding:16px;border-radius:18px;background:#050403d9;box-shadow:0 0 70px #e0b75c66}
.action-scene.settle{opacity:1;transform:translateY(0) scale(1) rotate(0)}.action-scene img,.animated-back{width:180px;height:279px;border-radius:12px;object-fit:cover;box-shadow:0 15px 45px #000}.action-scene strong,.action-scene span{color:#f3d585;font-size:18px}
.animated-back{background:url("../assets/cards/card_back.webp") center/cover}.private-reveal{position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-50%);padding:24px;border:2px solid #d7ae59;border-radius:18px;background:#080604f2;box-shadow:0 0 90px #000}.private-reveal .card{width:200px;height:310px}.reveal-close{position:absolute;right:8px;top:8px;border-radius:50%}


.quick-match{display:block;width:100%;margin:12px 0 24px;padding:16px;font-size:20px;background:linear-gradient(#8de0c0,#34866d);box-shadow:0 0 24px #65c6a044}


/* Desktop-Tisch wie in der ursprünglichen HTML-Version */
#game-screen{height:100vh;min-height:720px;overflow:hidden}
.board{position:fixed;left:50%;top:48%;transform:translate(-50%,-50%);display:grid;grid-template-columns:210px 155px 210px;align-items:center;gap:36px;min-height:0;z-index:12}
.table-slot{display:flex;flex-direction:column;align-items:center;gap:8px;color:#f0d083;text-transform:uppercase;letter-spacing:1px;font-size:12px}
.pile,#top-card{width:190px;height:294px;margin:0}.pile{padding:0;background:none;border:0}.pile img{display:block;width:100%;height:100%;object-fit:cover;border-radius:13px;box-shadow:0 14px 35px #000}
.active-faction{width:145px;height:145px;border:2px solid #a47b3b;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#050403d9;box-shadow:0 0 35px #d6a95544}
.active-faction img{width:108px;height:108px;object-fit:contain}.active-faction span{position:absolute;margin-top:-190px;width:180px;text-align:center;color:#f0d083;font-size:12px;text-transform:uppercase}
#opponents{position:fixed;inset:0;margin:0;min-height:0;display:block;pointer-events:none;z-index:10}
.opponent-zone{position:absolute;width:290px;min-height:120px;pointer-events:auto}.opponent-zone.position-0{top:18px;left:50%;transform:translateX(-50%)}.opponent-zone.position-1{left:18px;top:42%;transform:translateY(-50%)}.opponent-zone.position-2{right:18px;top:42%;transform:translateY(-50%)}
.opponent-zone.position-0.active{transform:translateX(-50%) translateY(5px)}.opponent-zone.position-1.active,.opponent-zone.position-2.active{transform:translateY(-50%) translateY(5px)}
.opponent-hand{height:92px}.opponent-card-back{width:59px;height:91px;margin-left:-22px}
.hand{left:6%;right:6%;bottom:4px;height:305px;z-index:30}.hand .card{width:178px;height:276px;margin-left:-44px;padding:0;border:0;background:transparent;overflow:visible}.hand .card:first-child{margin-left:0}.hand .card img,#top-card>img,.reveal-card>img,.action-card>img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.hand-card:hover{transform:translateY(-55px) scale(1.13)!important;z-index:50}
.card-nameplate{position:absolute;left:15%;right:15%;top:59.5%;height:8%;display:flex;align-items:center;justify-content:center;color:#17100a;font-size:clamp(10px,1vw,16px);font-weight:bold;text-align:center;text-shadow:0 1px #fff8;z-index:2}
.card-description{position:absolute;left:10%;right:10%;top:69%;bottom:8%;display:flex;flex-direction:column;justify-content:center;text-align:center;color:#eee;z-index:2;text-shadow:0 1px 3px #000}.card-description em{display:block;color:#f0d083;font-size:12px;font-style:normal;font-weight:bold}.card-description small{display:block;margin-top:5px;font-size:10px;line-height:1.25}
#top-card{padding:0;overflow:visible;background:transparent}.reveal-card{width:220px!important;height:341px!important;padding:0}.action-card{position:relative;width:220px;height:341px}.action-card .card-nameplate{font-size:17px}.action-card .card-description small{font-size:11px}
.action-caption{max-width:420px;text-align:center;color:#e5d6b4!important}.action-scene{transition-duration:1.3s}.action-scene img,.animated-back{width:220px;height:341px}
.choice-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#000b}.choice-dialog{width:min(560px,92vw);padding:28px;border:2px solid #b78a43;border-radius:20px;background:#0b0805;box-shadow:0 0 80px #000;text-align:center}.choice-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.choice-options button.selected{outline:3px solid #80d9b4;filter:brightness(1.25)}.secondary{background:#332b22;color:#eee}
.ranking-row{display:flex;gap:20px;padding:14px;border-bottom:1px solid #735b33;font-size:20px}
#end-screen button{margin:20px 8px 0}
@media(max-width:900px){
 #game-screen{min-height:100vh;overflow:auto}.board{position:relative;left:auto;top:auto;transform:none;margin:12px auto;grid-template-columns:105px 85px 105px;gap:10px}.pile,#top-card{width:105px;height:163px}.active-faction{width:78px;height:78px}.active-faction img{width:58px;height:58px}.active-faction span{margin-top:-112px;width:100px;font-size:9px}
 #opponents{position:relative;inset:auto;display:flex;margin:8px;min-height:120px}.opponent-zone{position:relative!important;inset:auto!important;transform:none!important;min-width:170px;width:auto}.opponent-hand{height:66px}.opponent-card-back{width:42px;height:64px}
 .hand{position:relative;left:auto;right:auto;bottom:auto;height:230px;margin-top:8px}.hand .card{width:132px;height:205px;margin-left:-34px}.card-description small{font-size:7px}.card-description em{font-size:9px}.card-nameplate{font-size:10px}.log{display:none}
}


/* Magisches Visual-Novel-Hauptmenü */
.main-menu-screen{position:relative;display:grid;grid-template-columns:minmax(360px,1fr) minmax(440px,620px);align-items:center;gap:6vw;min-height:100vh;padding:5vh 6vw;overflow:hidden;background:radial-gradient(circle at 24% 45%,#17366188,transparent 30%),linear-gradient(105deg,#020713ee 0 45%,#071324cc 70%,#02050bee)}
.main-menu-screen:before{content:"";position:absolute;inset:-18%;background:url("../assets/board/runecircle.webp") 14% 52%/650px no-repeat;opacity:.25;filter:drop-shadow(0 0 28px #4b9ce0);animation:menuRune 28s linear infinite;pointer-events:none}
.main-menu-screen:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 40%,#bcdcff12 40.2%,transparent 40.6%),repeating-linear-gradient(90deg,transparent 0 90px,#8dc9ff08 91px,transparent 92px);pointer-events:none}
@keyframes menuRune{to{transform:rotate(360deg)}}
.menu-brand{position:relative;z-index:3;align-self:center}.menu-brand h1{font-size:clamp(58px,7vw,112px);line-height:.78;text-transform:uppercase;letter-spacing:-5px;text-shadow:0 0 28px #4f9ee0,4px 5px #000}.menu-brand h1 span{color:#d7eaff;font-size:.74em;letter-spacing:2px}.menu-brand .subtitle{color:#89bfe8;margin-top:24px}.identity{width:min(330px,100%);padding:12px 16px;border-left:2px solid #72b8ef;background:linear-gradient(90deg,#17345d99,transparent);text-transform:uppercase;letter-spacing:2px;font-size:11px}.identity input{font-size:18px;text-transform:none}
.arcane-menu{position:relative;z-index:4;display:flex;flex-direction:column;gap:8px}.arcane-menu button{position:relative;display:grid;grid-template-columns:52px 1fr;align-items:center;min-height:68px;padding:0 22px 0 0;border:1px solid #477aa8;border-left:4px solid #9ad8ff;border-radius:0;clip-path:polygon(0 0,96% 0,100% 50%,96% 100%,0 100%,3% 50%);background:linear-gradient(90deg,#102c50ee,#07101ddd);color:#e9f5ff;text-align:left;box-shadow:inset 0 0 25px #4d9ee022,0 5px 18px #000;transition:.28s}.arcane-menu button:before{content:"";position:absolute;inset:4px;border-top:1px solid #d4edff44;border-bottom:1px solid #74b7ea33;pointer-events:none}.arcane-menu button:hover{transform:translateX(-18px);filter:none;background:linear-gradient(90deg,#24568a,#0a1728);box-shadow:0 0 35px #69b9ef66}.arcane-menu b{display:grid;place-items:center;height:100%;color:#7fc5f3;font-size:13px;border-right:1px solid #5189b3}.arcane-menu span{padding-left:20px;font-size:20px;letter-spacing:1px}.arcane-menu small{display:block;margin-top:3px;color:#83a9c6;font-size:10px;text-transform:uppercase;letter-spacing:2px}
.card-fan{position:absolute;left:27%;bottom:-18%;z-index:1;width:430px;height:520px;opacity:.48;filter:drop-shadow(0 20px 30px #000)}.card-fan img{position:absolute;width:210px;border-radius:14px}.card-fan img:nth-child(1){left:0;transform:rotate(-18deg)}.card-fan img:nth-child(2){left:105px;top:-34px}.card-fan img:nth-child(3){left:210px;transform:rotate(18deg)}
.menu-status{position:absolute;z-index:4;left:6vw;bottom:24px;display:flex;align-items:center;gap:8px;color:#89a8c2;font-size:12px}.menu-status i{width:8px;height:8px;border-radius:50%;background:#58e5b1;box-shadow:0 0 12px #58e5b1}

.menu-page{position:relative;min-height:100vh;padding:45px 5vw 80px;overflow:auto;background:radial-gradient(circle at 80% 15%,#19396666,transparent 28%),linear-gradient(145deg,#020713f2,#071425e8)}
.menu-page:before{content:"";position:fixed;right:-180px;bottom:-230px;width:720px;height:720px;background:url("../assets/board/runecircle.webp") center/contain no-repeat;opacity:.13;pointer-events:none}
.back-button{position:relative;z-index:2;border:1px solid #5e96bd;background:#0b2037;color:#d8efff}.page-title{position:relative;z-index:2;margin:20px 0 30px;border-bottom:1px solid #467ca4}.page-title h1{margin:0;color:#e7f5ff;text-transform:uppercase;text-shadow:0 0 22px #4c9ad7}.page-title .eyebrow{color:#70b8e9}
.menu-page-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:18px}.fate-panel{position:relative;padding:24px;border:1px solid #477ba4;clip-path:polygon(0 0,96% 0,100% 12%,100% 100%,4% 100%,0 88%);background:linear-gradient(145deg,#102a46dd,#050b14ee);box-shadow:inset 0 0 35px #4d9de519,0 15px 40px #000}.fate-panel.featured{grid-column:1/-1;border-color:#76bde9}.fate-panel h2{color:#cceaff}
.fate-tabs{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.fate-tabs button{border:1px solid #41779e;background:#0b1c30;color:#a9cce4}.fate-tabs button.selected{background:#276397;color:#fff;box-shadow:0 0 18px #5bb7ed55}
.wiki-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.wiki-card{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px;border:1px solid #345f81;background:#07111de8}.wiki-card-image{position:relative;width:150px;height:232px}.wiki-card-image img{width:100%;height:100%;object-fit:cover;border-radius:8px}.wiki-card-image strong{position:absolute;left:14%;right:14%;top:59.5%;height:8%;display:grid;place-items:center;color:#17100a;font-size:12px;text-align:center}.wiki-card>div:last-child>span{color:#75bae8;font-size:11px;text-transform:uppercase}.wiki-card h3{color:#efd284}.wiki-card p{color:#d4e3ed;line-height:1.4}.wiki-card small{color:#7f9aaf;font-style:italic}.combo-section{position:relative;z-index:2;margin-top:50px}.combo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.combo-grid article{padding:12px;border:1px solid #5c7690;background:#050b13}.combo-grid img{width:100%;aspect-ratio:16/9;object-fit:cover}.combo-grid h3{color:#efd284}
.wiki-loading,.wiki-error{grid-column:1/-1;padding:24px;border:1px solid #765b2c;background:#100d09;color:#ddc078;text-align:center}.wiki-error{border-color:#8f332b;color:#f2aaa3}
.settings-grid{max-width:760px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-grid label{padding:14px;border-bottom:1px solid #315778}
.hall-page{background:radial-gradient(circle at 50% 40%,#49341666,transparent 30%),linear-gradient(#020713ee,#090b13ee)}.hall-podium{display:flex;align-items:flex-end;justify-content:center;gap:14px;margin:60px auto 30px;max-width:850px}.hall-podium article{width:220px;height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #7994aa;background:linear-gradient(#1c2d3c,#070b10);clip-path:polygon(8% 0,92% 0,100% 12%,100% 100%,0 100%,0 12%)}.hall-podium article.first{height:235px;border-color:#e3bd65;box-shadow:0 0 45px #c9a34c44}.hall-podium b{font-size:60px;color:#d8c28a}.hall-podium span{color:#b9cad6}.empty-state{max-width:850px;margin:auto;text-align:center}
.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,380px));gap:24px}.set-card{padding:18px;border:1px solid #5d8db1;background:#081422}.set-card img{width:100%;height:420px;object-fit:cover;object-position:top;border-radius:10px}.set-card h2{color:#e2c67e}.set-card span{display:inline-block;padding:6px 10px;background:#1a684f;color:#caffea}.set-card.locked{filter:saturate(.3);opacity:.7}
.profile-layout{display:grid;grid-template-columns:330px 1fr;gap:24px}.profile-card{text-align:center}.profile-sigil{width:120px;height:120px;margin:auto;display:grid;place-items:center;border:2px solid #83c8f1;border-radius:50%;font-size:60px;color:#d9efff;background:#102b4b;box-shadow:0 0 35px #4aa6df}.profile-card dl{display:flex;justify-content:space-around}.profile-card dt{color:#7fa8c4;font-size:11px}.profile-card dd{margin:4px;font-size:22px}.owned-set{display:flex;gap:20px;align-items:center;padding:14px;border:1px solid #3e6c8e}.owned-set img{width:90px;border-radius:7px}.owned-set strong{color:#e6cf91;font-size:18px}

.no-animations *{animation:none!important;transition:none!important}.large-cards .hand .card{width:205px;height:318px}body[data-animation-speed="slow"] .action-scene{transition-duration:1.8s}body[data-animation-speed="fast"] .action-scene{transition-duration:.65s}
@media(max-width:900px){.main-menu-screen{display:block;padding:38px 20px;overflow:auto}.menu-brand h1{font-size:58px}.arcane-menu{margin-top:35px}.arcane-menu button:hover{transform:translateX(5px)}.card-fan{display:none}.menu-status{position:relative;left:auto;bottom:auto;margin-top:25px}.menu-page-grid,.settings-grid,.profile-layout{grid-template-columns:1fr}.combo-grid{grid-template-columns:1fr}.wiki-grid{grid-template-columns:1fr}.hall-podium article{width:30%;font-size:11px}.shop-grid{justify-content:center}}

/* Ragnarök-Artwork: gemeinsamer Stil für Hauptmenü und Unterseiten */
.main-menu-screen{grid-template-columns:minmax(300px,1fr) minmax(420px,570px);background:#030403 url("../assets/menu/fenrirs_ragnarok_cardgame.webp") center/cover fixed}
.main-menu-screen:before{inset:0;background:linear-gradient(90deg,#0004 0,#0002 42%,#020403bb 62%,#020302f5 100%);opacity:1;filter:none;animation:none}
.main-menu-screen:after{background:radial-gradient(circle at 50% 14%,#8dab3326,transparent 28%),linear-gradient(0deg,#000b,transparent 35%,#0004);box-shadow:inset 0 0 150px #000}
.menu-brand{align-self:end;padding-bottom:70px;text-shadow:0 3px 15px #000}.menu-brand h1{font-size:clamp(44px,5.2vw,82px);letter-spacing:-2px;color:#eee0c8;text-shadow:0 2px 2px #000,0 0 25px #a11212}.menu-brand h1 span{color:#d7c09b}.menu-brand .subtitle{color:#d4b26b;text-shadow:0 2px 7px #000}.identity{border-left-color:#a81e18;background:linear-gradient(90deg,#260a09dd,transparent);color:#e6cf9f}
.arcane-menu{padding:22px;border:1px solid #85632f;background:linear-gradient(145deg,#070806e8,#100c08e8);box-shadow:0 20px 70px #000,0 0 50px #7e161622;backdrop-filter:blur(4px)}
.arcane-menu button{grid-template-columns:52px 1fr;border-color:#735a30;border-left-color:#b59451;clip-path:polygon(0 0,97% 0,100% 50%,97% 100%,0 100%,2% 50%);background:linear-gradient(90deg,#20180edd,#090b09ed);color:#eee0c2;box-shadow:inset 0 0 22px #90702912,0 4px 14px #000}
.arcane-menu button:before{border-color:#d8bd7540}.arcane-menu button:hover{transform:translateX(-12px);background:linear-gradient(90deg,#562016,#17230d);box-shadow:0 0 28px #a5222260}.arcane-menu b{color:#c7a85d;border-right-color:#735a30}.arcane-menu small{color:#a99a77}.card-fan{display:none}.menu-status{color:#baaa86;text-shadow:0 2px 4px #000}.menu-status i{background:#91b846;box-shadow:0 0 12px #91b846}
.menu-page{background:linear-gradient(#030403e9,#080804f5),url("../assets/menu/fenrirs_ragnarok_cardgame.webp") center/cover fixed}.menu-page:before{right:-130px;bottom:-180px;opacity:.09;filter:hue-rotate(55deg)}
.back-button{border-color:#8c6b36;background:#24180d;color:#ead9b5}.page-title{border-bottom-color:#80632e}.page-title h1{color:#ede0c9;text-shadow:0 0 22px #8b201d}.page-title .eyebrow{color:#b79b56}
.fate-panel,.wiki-card{border-color:#765b2c;background:linear-gradient(145deg,#17130eea,#060705f2)}.fate-panel.featured{border-color:#aa853d}.fate-panel h2,.wiki-card h3{color:#ddc078}.wiki-card>div:last-child>span{color:#91ac51}.wiki-card p{color:#ddd4c4}.fate-tabs button{border-color:#75592b;background:#19130d;color:#c9b486}.fate-tabs button.selected{background:#64211c;color:#fff;box-shadow:0 0 18px #9d1e1e66}.combo-grid article{border-color:#74592c;background:#080805}.settings-grid label{border-bottom-color:#5f4926}
.game-menu-button{border:1px solid #8c6b36;background:#24180de8;color:#ead9b5}.game-menu-overlay{position:fixed;inset:0;z-index:500;display:grid;place-items:center;background:#000c;backdrop-filter:blur(5px)}.game-menu-dialog{width:min(480px,92vw);padding:32px;border:2px solid #9a773a;background:linear-gradient(145deg,#17130ff5,#050604f8);box-shadow:0 0 80px #000,0 0 35px #6e151544;text-align:center}.game-menu-dialog h2{margin-top:0;color:#e7cf95;font-size:32px}.game-menu-actions{display:grid;gap:11px;margin-top:20px}.quick-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.quick-settings label{padding:10px;border:1px solid #584523;background:#080805}.danger-button{border:1px solid #a53b33;background:linear-gradient(#7a2822,#3b100e);color:#fff}.revealed-card-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.private-reveal{max-width:94vw}.private-reveal .revealed-card-row .card{width:180px;height:279px}
@media(max-width:900px){.main-menu-screen{background-position:38% center}.main-menu-screen:before{background:linear-gradient(#0005 0 28%,#020302e9 58%,#020302f8)}.menu-brand{padding-bottom:0}.menu-brand h1{font-size:47px}.arcane-menu{padding:14px}.arcane-menu button{min-height:62px}.quick-settings{grid-template-columns:1fr}}

/* Karten skalieren als eine Einheit: Grafik, Namensfeld und Beschreibung */
.card,.hand .card,#top-card,.action-card,.reveal-card,.wiki-card-image{container-type:inline-size;aspect-ratio:155/238;height:auto}.reveal-card{height:auto!important}
.card>img,.hand .card>img,#top-card>img,.action-card>img,.reveal-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.card-nameplate{top:59.2%;height:8.2%;left:14%;right:14%;padding:0 2cqw;font-size:8.2cqw;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-description{top:68.5%;bottom:7.5%;left:9%;right:9%;padding:1.5cqw;overflow:hidden;text-shadow:0 .5cqw 1.4cqw #000}
.card-description em{font-size:6.8cqw;line-height:1.05}.card-description small{margin-top:1.4cqw;font-size:5.25cqw;line-height:1.15;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.hand{height:clamp(180px,28vw,305px);padding-inline:2vw}.hand .card{width:clamp(112px,11.6vw,178px);height:auto;flex:0 0 auto;margin-left:clamp(-48px,-3vw,-25px);overflow:hidden;isolation:isolate}
.hand .card:hover{transform:translateY(clamp(-42px,-3.5vw,-24px)) scale(1.1)!important}.pile,#top-card{aspect-ratio:155/238;height:auto}
.hand .card:disabled{opacity:.86;filter:saturate(.82) brightness(.88);cursor:not-allowed}.hand .card:disabled:hover{transform:none!important;z-index:auto}
.card-description{justify-content:flex-start}.card-description em{flex:0 0 auto;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-description small{min-height:0;max-width:100%}
.faction-symbol-options{grid-template-columns:repeat(4,1fr);gap:14px}.faction-symbol-options button{aspect-ratio:1;padding:10px;border:1px solid #80632e;border-radius:50%;background:radial-gradient(circle,#263018,#080905 68%);box-shadow:inset 0 0 18px #000,0 5px 18px #000}.faction-symbol-options button img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 8px #d7b55d66)}.faction-symbol-options button.selected{outline:3px solid #d9be6d;box-shadow:0 0 28px #91b84699}
.action-scene.is-combo{width:min(760px,92vw);padding:20px;border:2px solid #aa853d;background:radial-gradient(circle,#34130ee8,#030403f5 72%)}.combo-effect-visual{position:relative;width:min(680px,86vw);aspect-ratio:16/9;overflow:hidden;border:1px solid #c29a4e;box-shadow:0 0 55px #a51f1f77}.combo-effect-visual img{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important}.combo-effect-title{position:absolute;inset:auto 0 0;padding:22px 14px 12px;background:linear-gradient(transparent,#050403eF);color:#f2d68f!important;font-size:clamp(20px,4vw,38px)!important;text-transform:uppercase;letter-spacing:3px;text-shadow:0 2px 8px #000}.action-scene.is-combo .action-caption{font-size:clamp(13px,2vw,18px)}
@media(max-width:900px){.hand{height:clamp(175px,42vw,235px);overflow:visible}.hand .card{width:clamp(105px,25vw,145px);margin-left:clamp(-44px,-8vw,-24px)}.board{margin-top:30px}.faction-symbol-options{gap:8px}.faction-symbol-options button{padding:6px}}

/* Das quadratische Titelmotiv vollständig und ohne doppelten Schriftzug zeigen */
.main-menu-screen{background-size:auto 100%;background-repeat:no-repeat;background-position:left center;background-color:#020302}
.main-menu-screen:before{background:linear-gradient(90deg,transparent 0 48%,#020302a8 65%,#020302f2 100%)}
.main-menu-screen .menu-brand>.eyebrow,.main-menu-screen .menu-brand>h1,.main-menu-screen .menu-brand>.subtitle{display:none}
.main-menu-screen .menu-brand{position:absolute;z-index:6;right:6vw;top:3vh;width:min(570px,40vw);padding:0}.main-menu-screen .identity{width:100%;border:1px solid #85632f;border-left:4px solid #a81e18;background:#090806dc;box-shadow:0 8px 28px #000}
.main-menu-screen .arcane-menu{margin-top:clamp(88px,12vh,135px)}
@media(max-width:900px){.main-menu-screen{display:block;padding:100vw 16px 30px;background-size:100% auto;background-position:top center}.main-menu-screen:before{background:linear-gradient(180deg,transparent 0 48vw,#020302dc 82vw,#020302 100vw)}.main-menu-screen .menu-brand{position:absolute;left:16px;right:16px;top:calc(100vw - 74px);width:auto}.main-menu-screen .arcane-menu{margin-top:0}.menu-status{margin-top:18px}}

/* Frei skalierbares Desktopfenster und Vollbild */
.main-menu-screen,.menu-page,#game-screen{height:100vh;min-height:0}
.menu-page{overflow:auto;overscroll-behavior:contain}
.screen.panel{max-height:90vh;overflow:auto}

@media(min-width:761px){
  .board{top:46%;grid-template-columns:min(14.6vw,23vh,210px) min(10.8vw,17vh,155px) min(14.6vw,23vh,210px);gap:clamp(14px,4vh,36px)}
  .pile,#top-card{width:min(13.2vw,21vh,190px)}
  .active-faction{width:min(10vw,16vh,145px);height:min(10vw,16vh,145px)}
  .active-faction img{width:74%;height:74%}.active-faction span{margin-top:max(-190px,-19vh)}
  .hand{height:clamp(175px,31vh,305px)}
  .hand .card{width:min(12.4vw,18vh,178px)}
  .large-cards .hand .card{width:min(14.2vw,22vh,205px)}
  .opponent-zone{width:clamp(180px,min(20vw,30vh),290px);min-height:clamp(82px,14vh,120px)}
  .opponent-zone.position-0{top:clamp(66px,9vh,92px)}
  .opponent-hand{height:clamp(58px,10vh,92px)}
  .opponent-card-back{width:clamp(38px,6vh,59px);height:auto;aspect-ratio:48/72;margin-left:clamp(-22px,-2vh,-12px)}
}

@media(min-width:761px) and (max-height:820px){
  .main-menu-screen{grid-template-columns:minmax(260px,1fr) minmax(380px,520px);padding:2vh 4vw}
  .main-menu-screen .menu-brand{right:4vw;top:2vh;width:min(520px,42vw)}
  .main-menu-screen .arcane-menu{margin-top:clamp(66px,10vh,84px);padding:clamp(10px,1.8vh,15px);gap:4px}
  .arcane-menu button{min-height:clamp(46px,7.4vh,58px)}
  .arcane-menu span{padding-left:15px;font-size:clamp(15px,2.35vh,18px)}
  .arcane-menu small{margin-top:1px;font-size:clamp(7px,1.2vh,9px)}
  .identity{padding:8px 12px}.identity input{padding:8px;font-size:15px}
  .menu-status{bottom:12px}
  #game-screen{padding:clamp(8px,1.5vh,18px)}
  #game-screen>header>div,#game-screen .timer{padding:6px 11px}
  #game-screen .timer strong{font-size:clamp(20px,3.5vh,28px)}
  .log{max-height:22vh;width:240px;padding:8px}
}

@media(min-width:761px) and (max-height:650px){
  .main-menu-screen .arcane-menu{margin-top:60px;padding:9px}
  .arcane-menu button{min-height:44px}.arcane-menu small{display:none}
  .main-menu-screen .menu-brand{top:8px}.menu-status{bottom:7px}
  .log{display:none}
}

@media(max-width:900px){
  .main-menu-screen{height:100vh;min-height:0;overflow:auto}
  .menu-page{height:100vh;min-height:0}
  #game-screen{height:100vh;min-height:0;overflow:auto}
}

@media(min-width:761px) and (max-width:900px){
  .main-menu-screen{display:grid;grid-template-columns:minmax(240px,1fr) minmax(360px,430px);align-items:center;height:100vh;padding:2vh 3vw;overflow:hidden;background-size:auto 100%;background-position:left center}
  .main-menu-screen:before{background:linear-gradient(90deg,transparent 0 42%,#020302b8 62%,#020302f4 100%)}
  .main-menu-screen .menu-brand{position:absolute;left:auto;right:3vw;top:8px;width:min(430px,48vw)}
  .main-menu-screen .arcane-menu{margin-top:60px;padding:9px;gap:4px}
  .arcane-menu button{min-height:44px}.arcane-menu span{padding-left:13px;font-size:15px}.arcane-menu small{display:none}
  .menu-status{position:absolute;left:3vw;bottom:7px;margin:0}
  #game-screen{overflow:hidden}
  .board{position:fixed;left:50%;top:46%;transform:translate(-50%,-50%);margin:0}
  #opponents{position:fixed;inset:0;display:block;margin:0;min-height:0}
  .opponent-zone{position:absolute!important;inset:auto!important}
  .opponent-zone.position-0{top:66px!important;left:50%!important;transform:translateX(-50%)!important}
  .opponent-zone.position-1{left:10px!important;top:42%!important;transform:translateY(-50%)!important}
  .opponent-zone.position-2{right:10px!important;top:42%!important;transform:translateY(-50%)!important}
  .hand{position:fixed;left:4%;right:4%;bottom:0;height:clamp(175px,31vh,305px);margin:0}
}
