/* Invasive Species: night streets, hazard paint, and rat-colony command panels. */
:root{color-scheme:dark;--ink:#f1f0e6;--muted:#a2a5b1;--forest:#c6f36b;--forest-dark:#dbff94;--cream:#171026;--paper:#281e3c;--line:#49385f;--gold:#ba9afa;--ocean:#221437;--ocean-deep:#140c22;--shadow:0 14px 42px #0005;font-family:'Segoe UI',Arial,sans-serif}
body{background:#120c20}h1,h2,h3,.serif,.logo-title,.status-card h3,.dice-sum,.points,.resource-title h3,.resource-card strong,.rules-section h3,.winner-name,.result-row .result-points,.stepper input,.boot-mark{font-family:'Segoe UI',Arial,sans-serif;font-weight:850;letter-spacing:-.035em}
.rat-mark{width:40px;height:40px;flex-shrink:0;filter:drop-shadow(0 3px 8px #c6f36b18)}
.logo-title{font-size:21px!important;text-transform:uppercase;font-weight:950;letter-spacing:-.6px}.logo-sub{font:700 8px/1.2 'Segoe UI',sans-serif;letter-spacing:.16em;color:#c6f36b;opacity:1}
.home{background:radial-gradient(ellipse at 75% 35%,#7045a455,transparent 58%),#120c20}.home-header{padding:24px 4%;max-width:1600px;border-bottom:1px solid #ffffff0c}.home-header-right{gap:12px}.home-main{max-width:1600px;grid-template-columns:minmax(330px,.8fr) minmax(420px,1.35fr);padding:40px 4%;gap:36px}.home-copy h1{font-size:clamp(46px,4.5vw,76px);font-weight:950;line-height:.99;letter-spacing:-.055em;text-transform:uppercase}.home-copy h1 em{color:#c6f36b;font-weight:950;font-style:normal}.home-copy>.eyebrow{color:#ba9afa;font-size:10px;margin-bottom:18px}.home-copy>.eyebrow:before{background:#ba9afa;width:18px;height:3px}.hero-description{color:#b6b7c2;font-size:14px;line-height:1.65;max-width:410px;margin:19px 0 23px}.entry-card{max-width:460px;border:1px solid #41424c;border-top:3px solid #c6f36b;background:#281e3c;border-radius:9px;padding:20px;box-shadow:0 18px 35px #0003}.entry-tab{color:#a6a8b4}.entry-tab.active{color:#c6f36b;border-color:#c6f36b}.entry-tabs{gap:24px}.entry-footnote{color:#a6a8b4}.home-features{color:#bfc2cc;gap:20px;margin-top:20px}.home-feature .icon{color:#c6f36b}.home-footer{max-width:1600px;padding:0 4% 22px;color:#7f8494;font-weight:700;letter-spacing:.1em}
.invasion-art{align-self:stretch;display:flex;flex-direction:column;justify-content:center;max-width:none!important}.invasion-cover{display:block;width:100%;height:auto;border:1px solid #43404d;border-radius:12px;box-shadow:0 20px 80px #0006}.invasion-art-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:17px;padding:15px 0;border-top:1px solid #ffffff15}.invasion-art-footer .eyebrow{color:#ba9afa;font-size:10px}.invasion-art-footer strong{font-size:16px;color:#e8e6df}
.btn{border-radius:6px;font-weight:800}.btn-primary{background:#c6f36b;color:#161b0b;box-shadow:0 3px 0 #70882c}.btn-primary:hover:not(:disabled){background:#dbff94}.btn-secondary,.icon-btn{background:#302343;border-color:#444652;color:#e9e9df}.btn-secondary:hover:not(:disabled),.icon-btn:hover{background:#343742}.btn-ghost{color:#bec0cb}.btn-gold{background:#ba9afa;color:#25170c}.btn-danger{background:#643b38;color:#ffd9cb}.field label,.field-label{color:#c9ccd5}.field input:not([type=color]),.field select,.text-input,.color-control{background:#15161d;border-color:#444652;color:#f1f0e6}.field input::placeholder{color:#858a9a}.pill{background:#c6f36b14;color:#c6f36b;border:1px solid #c6f36b30;border-radius:5px}.pill.dot:before{background:#c6f36b}.connection{background:#c6f36b}.boot{color:#c6f36b}.boot-mark{font-size:34px}
.game-header{background:#171026;border-bottom:2px solid #3b3e49}.game-header .logo-title{font-size:18px!important}.game-header .rat-mark{width:34px;height:34px}.sidebar,.sidebar.right{background:#1c142d;scrollbar-color:#484b59 transparent}.section-title h2{font-size:17px;letter-spacing:-.025em;text-transform:uppercase;font-weight:850}.status-card{background:#302343;border-radius:7px;border-color:#414552;border-left:3px solid #74778a}.status-card.my-turn{background:linear-gradient(120deg,#c6f36b13,#20242a);border-color:#65773c;border-left-color:#c6f36b}.status-label{color:#c6f36b;letter-spacing:.09em}.status-card h3{font-size:21px}.status-card p{color:#b5b9c7}.turn-timer{color:#ba9afa;font-weight:800}.template-btn{background:#2b213e;color:#adb4c3;border-radius:6px}.template-btn.active{background:#c6f36b14;color:#d0f888;border-color:#adc957}.template-btn:hover:not(:disabled){border-color:#c6f36b}.editor-panel{background:#252c26;border:1px solid #4d5e3b}.editor-step>.icon{background:#c6f36b20;color:#c6f36b}.tip-box{color:#b6bdca;border-color:#525c48}.board-caption strong{font-family:'Segoe UI',sans-serif;font-weight:900;text-transform:uppercase}.board-controls .icon-btn,.board-instruction span,.board-badge{background:#181b26ed;border-color:#65734c;color:#f2f2d6}.board-caption .eyebrow{color:#c6f36b}
.build-button,.dev-card,.player-card,.trade-card{background:#2b213e;border-color:#3b3e4b;border-radius:6px}.build-button .build-icon{color:#c6f36b}.build-button.active,.player-card.active{background:#2b3126;border-color:#9fb952}.build-button .available,.player-name small,.player-stats,.points small{color:#b3b8c7}.points{color:#d1f777}.player-card.active:before{content:'';position:absolute;left:-1px;top:12px;bottom:12px;width:3px;background:#c6f36b;border-radius:2px}.invite-card{color:#c6f36b;border-color:#5e703e}.trade-empty,.trade-empty .icon{color:#a1a8b9}.activity-item{color:#a4aaba}.activity-item:first-child{color:#d6e4bd}.mini-resource{color:#d2d7d8}.trade-line>span:first-child{color:#a5a9ba}.achievement{background:#ba9afa20;color:#ffbd73}.die{background:#ebeee0;border-color:#adba96;box-shadow:0 3px 0 #75805d,0 6px 12px #0003}.die i{background:#1b2117}.dice-sum{font-size:28px;color:#c6f36b}
.resource-bar{background:#13151c;border-top:2px solid #454b37}.resource-title h3{font-size:18px;text-transform:uppercase}.resource-card{background:#262932;border-color:#464b58;border-radius:6px}.resource-card strong{font-size:26px;color:#f4f4e8}.resource-card small{color:#bec4d0}.lobby-resource strong{color:#a2a9b6}.resource-card:before{width:calc(100% - 2px);left:1px;top:0;height:3px}.resource-card .resource-glyph{filter:brightness(1.35)}
.modal-backdrop{background:#080910b8}.modal{border-color:#4b505e;background:#241a36;border-radius:10px}.modal-header h2{font-size:28px}.modal>.modal-footer{background:#241a36}.rules-section p,.rules-section li{color:#b8bdcb}.rules-section h3{font-size:18px}.trade-resource{background:#222631}.trade-resource.selected{background:#333d27;border-color:#819453;border-top-color:var(--resource)}.trade-resource label{color:#c1c7d2}.stepper button{background:#363d49;color:#e3f0d0}.stepper button:hover:not(:disabled){background:#526044}.trade-arrow .icon{background:#323b2b;color:#c6f36b}.trade-summary,.bank-rate{background:#272f23;border-color:#526443;color:#d4ddc9}.bank-rate strong{color:#c6f36b}.resource-choice .btn.active{background:#37422a;border-color:#c6f36b}.notice{background:#453522;border-color:#84613b;color:#f4d39d}.share-link input{color:#d4dfcc}.toast{background:#292e22;color:#effad5;border-color:#7b944c}.toast.error{background:#693d3c;border-color:#b16b5b}.empty-lobby-note{color:#b3b9c7}.turn-arrival{background:#c6f36b;color:#19210d;font:900 24px 'Segoe UI',sans-serif;border-color:#ecffc2;text-transform:uppercase}.material-gain{background:#242b1d;color:#e7ffb8}.end-turn-highlight:not(:disabled){animation:invasion-ready 2.4s ease-in-out infinite}@keyframes invasion-ready{0%,100%{box-shadow:0 3px 0 #70882c,0 0 0 0 #c6f36b00}50%{box-shadow:0 3px 0 #70882c,0 0 0 4px #c6f36b50,0 0 22px #c6f36b30}}
@media(max-width:1100px){.home-main{gap:25px;grid-template-columns:minmax(300px,.9fr) minmax(340px,1fr)}.home-copy h1{font-size:52px}.game-header{gap:10px;padding:0 16px}.game-header .logo-title{font-size:16px!important}.game-header .logo-sub{font-size:6px}.game-header .rat-mark{width:29px;height:29px}.invasion-art-footer{flex-direction:column;align-items:start}}
@media(max-width:800px){.home-main{display:flex;flex-direction:column;padding:28px 5%;gap:28px}.home-copy{width:100%}.home-copy h1{font-size:52px}.entry-card{max-width:none}.hero-description{max-width:520px}.invasion-art{width:100%}.invasion-art-footer{flex-direction:row}.home-header{padding:17px 5%;gap:10px}.home-header .logo-title{font-size:19px!important}.home-header .rat-mark{width:32px;height:32px}.home-header-right{gap:5px}.game-header .logo-sub,.game-header .rat-mark{display:none}.game-header .logo-title{font-size:15px!important}.sidebar{background:#1c142d}.resource-card strong{font-size:22px}.section-title h2{font-size:15px}.home-footer{padding:0 5% 20px}}
@media(max-width:500px){.logo{gap:7px}.game-header{padding:0 8px;gap:6px}.game-header .logo-title{font-size:12px!important;max-width:95px;white-space:normal;line-height:1.05}.game-menu{gap:8px}.game-menu-trigger{width:36px;height:38px}.home-header .logo-title{font-size:16px!important}.home-header .logo-sub{font-size:6px}.home-header-right .btn{font-size:9px}.home-copy h1{font-size:47px}.invasion-art-footer strong{font-size:13px}.invasion-art-footer .eyebrow{font-size:8px}.status-card h3{font-size:18px}.modal-header h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.end-turn-highlight:not(:disabled){animation:none;box-shadow:0 0 0 3px #c6f36b80}}

/* Trash Kingdoms */
.home-copy h1{text-shadow:0 3px 0 #0003}.invasion-cover{border-color:#805ca3;box-shadow:0 20px 80px #0006,0 0 35px #9852e51a}.entry-card{border-radius:14px}.home-header .pill{font-size:9px}.game-header{border-bottom-color:#624681}.board-stage{background:#1b102c}.invasion-art-footer strong{color:#c6f36b}
