/* Adventure presentation layer: original scenery, existing game interactions. */
:root{color:#f5f2df;background:#142824;--gold:#f0ce74;--green:#93d5a1;--muted:#b0c1ac;--line:#abc6a42b;--panel:#263e35}
body{background:radial-gradient(ellipse at 55% 10%,#7eae7680,transparent 65%),linear-gradient(150deg,#25463c,#122721);min-height:100vh}
body[data-screen=landing],body[data-screen=lobby]{background-image:linear-gradient(90deg,#142b244d,#142b2426),url('/assets/hoenn-night.svg');background-size:cover;background-attachment:fixed;background-position:center}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}button{background:#3c5747;border-color:#8c95bd30;border-radius:14px;font-weight:650;box-shadow:0 3px 0 #11152566,inset 0 1px 0 #ffffff0a;transition:background .15s,transform .15s}button:hover{background:#506e55}button:disabled{box-shadow:none}.primary{color:white;background:repeating-linear-gradient(135deg,#ffffff12 0 12px,transparent 12px 24px),linear-gradient(110deg,#d5aa55,#efd083);box-shadow:0 4px 0 #8a6834, inset 0 2px 0 #ffffff3d;text-shadow:0 2px #71532155}.primary:hover{background:repeating-linear-gradient(135deg,#ffffff20 0 12px,transparent 12px 24px),linear-gradient(110deg,#e0bc68,#f3d994)}input,select{background:#172b25;border:2px solid #526951;border-radius:13px;color:#f5f1db}input::placeholder{color:#a6b5a1}
header{height:80px;background:#1b3028e6;border-bottom:1px solid #8a88b82a;box-shadow:0 4px 24px #090b192b}.brand strong{letter-spacing:1px}.brand small{color:#b1c6a7}.badge{background:#526548;color:#e8e5b8;border:0;border-radius:20px}.connection{color:#d1d9be}.logo{background:linear-gradient(#d7ae61 0 46%,#294132 46% 55%,#faf2dd 55%);border:3px solid #20253d;box-shadow:0 0 0 2px #ffffff55}.logo:before{border:0}.logo:after{background:#faf2dd;border-color:#294132;top:9px;left:9px}
.landing{max-width:1220px;min-height:calc(100vh - 160px);margin:0 auto;grid-template-columns:1.35fr 1fr;gap:90px;padding:42px 28px}.adventure-label{display:inline-block;padding:9px 14px;border-radius:20px;background:#294536bd;letter-spacing:2px;color:#e3e6c9;font-weight:750}.landing h1{position:relative;font-size:clamp(52px,5.6vw,80px);line-height:1.16;letter-spacing:1px;color:#fff;font-weight:950;text-shadow:0 5px 0 #233b2a,3px 0 #233b2a,-3px 0 #233b2a;transform:rotate(-2deg);margin:20px 0 24px}.landing h1 em{color:#f1cd70}.hero-version{display:inline-block;font-size:11px;letter-spacing:0;vertical-align:middle;padding:7px 10px;border-radius:16px;background:#647b4f;color:#fff;text-shadow:none;margin-left:12px;transform:rotate(2deg)}.landing p{color:#dce3cd;font-size:15px;text-shadow:0 2px 4px #183025}.hero-pokemon{gap:20px;margin:30px 0;align-items:center}.hero-pokemon img{border-radius:22px;outline:1px solid #ffffff33;box-shadow:0 8px 0 #11132355;transform:rotate(-7deg);width:96px;height:96px}.hero-pokemon img:nth-child(2){width:120px;height:120px;transform:rotate(3deg)}.hero-pokemon img:nth-child(3){transform:rotate(8deg)}.feature-tiles{display:flex;gap:12px}.feature-tiles>div{background:#263e35e8;border-radius:16px;border-bottom:4px solid #72bda0;padding:14px 18px;min-width:120px;box-shadow:0 6px 16px #07091b44}.feature-tiles>div:nth-child(2){border-color:#a7c878}.feature-tiles>div:nth-child(3){border-color:#e1b968}.feature-tiles b{display:block;color:#fff;font-size:25px}.feature-tiles span{font-size:12px;color:#c5c8de}.form-card{background:#263f33f2;border:1px solid #8a8fb847;border-radius:25px;padding:28px;box-shadow:0 12px 0 #122b2266,0 24px 60px #10291f55;overflow:hidden}.form-banner{margin:-28px -28px 25px;padding:20px 28px;background:repeating-linear-gradient(135deg,#ffffff12 0 14px,transparent 14px 28px),linear-gradient(110deg,#b9974e,#dfc47c)}.form-banner>span{font-size:10px;font-weight:800;letter-spacing:3px;color:#fff6}.form-banner h2{margin:5px 0 0;color:white;font-size:28px;text-shadow:0 2px 0 #77603144}.field{color:#d7dfc8;font-weight:650}.form-card .primary{min-height:56px;font-size:18px}.divider{color:#a8bba2}.landing .hint{font-size:12px;color:#b6c7ab;text-shadow:none}.footer{color:#acbba0;margin:16px 10px 24px}
.panel{background:linear-gradient(145deg,#2e473a,#22392f);border:1px solid #8b93ba30;border-radius:18px;box-shadow:0 6px 18px #080c1a33}.section-label{color:#cbd8bc;font-weight:750;letter-spacing:1px}.rank-row .num{color:#a9c09b}.rank-row .health{color:#88e5b1}.rank-row.me{background:#f0ce740c;border-radius:9px}.hp{background:#151c30}.hp i{background:#79dca2}.trainer-icon{background:#536744;border:1px solid #b8cd925c}.hint,.roomline,.bench-label{color:#afc2a4}.trainer-desc{color:#b9cbb0}.arena-top{padding:12px 16px;background:#344e3d;border-radius:15px}.timer{padding:5px 12px;background:#203728;border-radius:10px;font-weight:800}.arena{border:2px solid #849777;background:radial-gradient(ellipse at 50% 60%,#607658,#405b44 60%,#2e4937);box-shadow:0 6px 0 #141a2b,0 15px 35px #080d1c55;border-radius:22px}.hex{fill:#c6cee90c;stroke:#cad6ff30}.hex.enemy{fill:#1b17362b}.hex.home:hover{fill:#ffcf6630;stroke:#f0ce74}.pokemon text{stroke:#22273e}.midline{stroke:#b8b3df66}.arena-caption{color:#bfc8e188}.battle-label{color:#e1e4f5}.bench-slot{background:#2d4536;border-color:#676e953d;border-radius:12px}.bench-slot.empty:after{color:#677095}.bench-slot.active{border-color:#f0ce74;background:#6b6140}.bench-slot img{border-radius:8px}.bench-slot small{color:#fff}.shop-card{background:linear-gradient(145deg,#455e46,#2b4434);border-radius:15px;box-shadow:0 4px 0 #12182b}.shop-card:hover{background:linear-gradient(145deg,#577252,#3c5840)}.shop-card img{border-radius:12px;outline:1px solid #ffffff1a}.shop-card .cost{border-radius:12px;padding:3px 7px;background:#203526}.shop-card.sold{color:#a6acc7}.unit-portrait{border-radius:15px;outline:2px solid #979fc14d}.type{background:#506943;color:#e6edce;border-radius:12px}.stats b{color:#fff}.move-slot{background:#203729;border-color:#69729a33;border-radius:11px}.gym{background:linear-gradient(135deg,#586843,#354c36)}.gym p{color:#c4c2de}.empty-detail{color:#a8b0cd}.log{color:#c5cbe3}.modal{background:#2c4334;border:1px solid #8a90bb66;border-radius:24px;box-shadow:0 20px 70px #080818aa}.modal p{color:#bec5df}.modal-overlay{background:#101124bd}.pool-entry{background:#3b543e;border-radius:14px}.pool-entry img{border-radius:10px}.pool-modal [aria-pressed=true]{background:#554c38}.evolution-route summary{color:#d2d7ef}.lobby{max-width:1160px}.lobby h1{text-shadow:0 3px #27213e}.trainer-card{background:linear-gradient(140deg,#3c5540,#294132);border-radius:18px;border-bottom:4px solid #747ca7;min-height:150px}.trainer-card.active{background:linear-gradient(140deg,#6d7448,#465b39);border-color:#f0ce74;box-shadow:0 0 0 2px #f0ce7435,0 8px 24px #100d2944}.trainer-card strong{font-size:21px}.trainer-card .eyebrow{font-size:10px;letter-spacing:1px}.trainer-card small{line-height:1.7}.lobby-players span{background:#213929}.lobby-bottom .primary{padding:15px 22px}.evolution-preview .hint{color:#b6bfd9}
@media(max-width:1150px){.landing{gap:35px}.feature-tiles>div{min-width:100px;padding:12px}.hero-version{display:table;margin:12px 0 0}.workspace{gap:14px}}
@media(max-width:700px){header{height:auto;min-height:72px;padding:12px;gap:8px}.brand{gap:8px}.brand strong{font-size:13px}.brand small{font-size:8px;letter-spacing:2px}.connection{font-size:10px;max-width:140px}.connection button{margin:0 4px 4px 0;padding:8px;font-size:11px}.landing{display:block;padding:28px 18px;min-height:0}.landing h1{font-size:52px}.landing-hero{margin-bottom:30px}.hero-version{display:inline-block;font-size:9px;margin:0 0 0 10px}.hero-pokemon{margin:24px 0}.hero-pokemon img{width:72px;height:72px}.hero-pokemon img:nth-child(2){width:94px;height:94px}.feature-tiles{gap:8px}.feature-tiles>div{flex:1;min-width:0;padding:12px 8px}.feature-tiles span{font-size:11px}.form-card{padding:22px}.form-banner{margin:-22px -22px 20px;padding:18px 22px}.arena-top{padding:10px}.round strong{font-size:19px}.round small{font-size:10px}.bench{gap:4px}.bench-slot{min-height:32px;border-radius:8px}.shop{gap:5px}.shop-card{border-radius:10px}.shop-card img{width:40px;height:40px}.shop-card .cost{right:3px;top:3px;font-size:10px;padding:2px 5px}.toolbar{flex-wrap:wrap}.trainer-card{padding:14px}.lobby{padding:16px}.unit-actions button,.bag button{min-height:44px}}
