/* Quiet jade felt, warm brass and clear surfaces; the table keeps its existing geometry. */
:root{--bg:#0d1212;--panel:#17201e;--line:#35423d;--text:#edece3;--muted:#a6b2ab;--gold:#dcc18d;--mint:#a8d4bd}
body{background:radial-gradient(ellipse at 85% 0,#24473c42,transparent 48%),radial-gradient(ellipse at 0 40%,#72604012,transparent 50%),var(--bg)}
header{background:#101817f5;border-bottom-color:#46514a;box-shadow:0 1px 0 #ffffff03}
.brandMark{background:linear-gradient(145deg,#35483b,#17241e);box-shadow:inset 0 0 15px #d5bc7820;border-color:#b4a171}
.brand b{color:#b7c1ad}nav button{border-color:#394640;color:#cbd5cc}nav button:hover:not(:disabled){background:#273b31;border-color:#829c87}
button{background:#212d28;border-color:#425248;color:#e5e8df;box-shadow:inset 0 1px #ffffff04}
button:hover:not(:disabled){background:#304239;border-color:#8aab95}
button.gold{background:linear-gradient(115deg,#efd9ac,#cfaf74);border-color:#e5c78e;color:#251e13;box-shadow:inset 0 1px #fff6,0 3px 12px #d2b17812}
button.gold:hover:not(:disabled){background:linear-gradient(115deg,#f7e5c5,#e0c18b);border-color:#f4dfb5}
button.active{background:linear-gradient(140deg,#354838,#25392d)!important;border-color:#cbb984!important}
input,select,textarea{background:#111b17;border-color:#46564a;color:#eeefe7;box-shadow:inset 0 2px 5px #0002}
input::placeholder,textarea::placeholder{color:#a1aea4}.pill{color:#b1d5be;border-color:#4b6856;background:#17261c}
.panel{background:linear-gradient(145deg,#1c2822,#141d18);border-color:#3e4d42;box-shadow:inset 0 1px #ffffff04,0 10px 30px #0002}
.hero{background:radial-gradient(ellipse at 75% 35%,#466b4250,transparent 60%),linear-gradient(115deg,#23362b,#111b17);border-color:#65745a;box-shadow:inset 0 1px #d7d1ac15,0 22px 60px #0002}
.hero h1{color:#f0ecdb;text-shadow:0 2px 20px #0002}.hero h1 em{color:#e7cb97}.hero p:not(.eyebrow){color:#bccabb}.heroBadges{color:#d3d8c2}.heroBadges span{border-color:#65765b}.heroArt img{box-shadow:0 28px 45px #0008,0 0 0 1px #ead09c30}.artCaption{color:#c2c7a2}
.mode{background:linear-gradient(140deg,#25372c,#18251d);border-color:#425b49;box-shadow:inset 0 1px #ffffff05}.mode.active{box-shadow:inset 0 2px #cbb984,0 9px 28px #0002}.modeIcon{color:#d8c38a}
.statsStrip>div{border-color:#879a74}.statsStrip strong{color:#e1d9b9;font-variant-numeric:tabular-nums}.statsStrip span{color:#a9b8ad}
.deckBox{background:linear-gradient(100deg,#192b22ef,#17291dc9),var(--deck-art) center 30%/cover;border-color:#475c49}.deckBox span{color:#c7d2c5}
.room{background:linear-gradient(115deg,#1c3125,#17271d);border-color:#4d6753;box-shadow:inset 0 1px #ffffff04}.roomFormat{color:#f1dfb7;background:#3e3826;border-color:#a09361}.room small{color:#bdc8b9}.room[data-state=playing]{border-left-color:#9bcaad;box-shadow:inset 3px 0 #729a7e,inset 0 1px #ffffff04}.room[data-state=finished]{background:linear-gradient(115deg,#212a22,#19221b)}
.personRow{background:#192d22;border-color:#425e4c}.personRow small{color:#b5cbbb}.rankRow{border-color:#46543f}.rankRow strong{color:#e1e5d5}.rankRow b{color:#e3cd94}.rankRow small{color:#b4c1ae}
#table .tableHeader{background:#17211df7;border-color:#61725c;box-shadow:0 8px 24px #0004,inset 0 1px #ffffff04}
#table .decisionBlock{border-color:#56654d}#table .decisionBlock #prompt{color:#d7dfd0}#table .decisionBlock.needsDecision #prompt{color:#f0d5a3}#table #phase{color:#bec7b6}
#table .turnRail{background:linear-gradient(160deg,#1c2821f5,#131d17f5);border-color:#46543d;box-shadow:inset 0 1px #ffffff04}
#table .phaseDescription{color:#c5d0bf}.timelineStep.current{background:linear-gradient(110deg,#3d4930,#2b382a);border-color:#ccbc83;box-shadow:inset 2px 0 #d6c590}.timelineStep.current .phaseReadout{color:#eee2b9}.phaseReadout:hover{background:#b5cca610}
#table .board{border-color:#526149;box-shadow:0 18px 60px #0006,inset 0 1px #ffffff04}
#table .board:not([data-mat]),#table .board[data-mat=classic]{background:radial-gradient(ellipse at 50% 48%,#4a614020,transparent 75%),repeating-linear-gradient(30deg,#ffffff01 0 1px,transparent 1px 5px),#18251d}
#table .battlefieldViewport{border-color:#59664b;box-shadow:inset 0 0 28px #0002}
#table .enemyRow{background:linear-gradient(180deg,#694b3322,transparent);border-color:#7e705455}#table .ownRow{background:linear-gradient(0deg,#3a61402b,transparent);border-color:#80967455}
#table .field .cardRow>.rowLabel{color:#c3c6a5}#table .emptyField{color:#9aa78a}
#table .playerBar .life{background:linear-gradient(135deg,#354735,#233323);border-color:#849673;color:#ece1bd;text-shadow:0 1px #0005;font-variant-numeric:tabular-nums}
#table .playerBar.activeTurn.ownTurn{background:linear-gradient(90deg,#3a674a55,transparent);border-left-color:#a6d7ad}#table .playerBar.activeTurn.opponentTurn{background:linear-gradient(90deg,#77503944,transparent);border-left-color:#d6ac87}
#table .playerBar small{color:#c1c9b9}#table .playerBar .seatLabel{color:#c3c7aa}
#table .card{box-shadow:0 4px 10px #0007,inset 0 0 0 1px #ffffff0a;border-color:#afa580}
#table .card .stats{background:#16241ef2;border-color:#acbb90;color:#fff4dc;text-shadow:0 1px #0008}.tile.targetChosen .card{box-shadow:0 0 0 2px #ead7bc55,0 0 18px #ead7bc25}
#table .card .zoom{background:#17221eed;border-color:#899883;color:#edecd9}.tile.targetable::before{background:#213b2fea;color:#c8ecd5}.tile.targetChosen::before{background:#4c422bea;color:#f1dfb7}
#table .landRow .landName{background:#10231fed;color:#e1e8d4}
#table .zonePile{border-color:#939b75;background:#101c17;box-shadow:2px 2px #8b927055,4px 4px #0a140e,0 5px 10px #0003}.zonePile .pileCount{background:#17291f;color:#e6e8cb;border-color:#a5af81}#table .zoneLabel{color:#d1d6b7}.pileEmpty{color:#92a481}
#table .combat{color:#d9c49a;background:#111c16b5}#table .combat:empty::after{color:#9ba67e}
#table .gameAside{background:linear-gradient(150deg,#1d2a21,#131d17);border-color:#47583e}.stackItem{background:linear-gradient(120deg,#33402b,#263322);border-color:#84936a}.stackItem span{color:#d9dfc8}.emptyStack{color:#a8b79e}
#table .commandDock{background:linear-gradient(110deg,#1a2a20fa,#142019fa);border-color:#8b9670;box-shadow:0 -8px 35px #0004,inset 0 1px #ffffff07}.commandSummary #commandHint{color:#c0c9b4}.commandState{color:#e8dec0}.dockReadout{color:#c3cfb9}
.advancedActions{background:#1d2c20;border-color:#8b9670}#advancedControls>summary{background:#263528;border-color:#677951;color:#dfdfc5}
dialog,.choice>.panel,.spellWindow{background:radial-gradient(ellipse at 80% 0,#64734620,transparent 70%),#19251c;border-color:#8b9970;box-shadow:inset 0 1px #ffffff05,0 30px 90px #0009}.choice,.spellOverlay{background:#09130ed9}.option,.targetCandidate{background:#253a2b;border-color:#637e5c}.option.chosen,.targetCandidate.chosen{background:#414b2e;border-color:#dcca8e}#previewText,.spellInfo #spellDescription{color:#d4dec9}.choice>.panel .muted{color:#c1cdb6}
#resultModal{background:radial-gradient(ellipse at 50% 0,#78824b33,transparent 65%),#18211a}
#table .handSizeButton{background:#253729;border-color:#657451;color:#dbe0c8}
@media(prefers-reduced-motion:reduce){button{transition:none}}

.flowPreference select{background:#1b2d22;border-color:#829674;color:#e5e4ce}.stackOrder,.blockedReasons,.blockSummary{background:#213528;border-color:#647c55;color:#d4dfc8}.interactionBanner{background:linear-gradient(110deg,#293c29,#233222);border-color:#8b9870}.interactionBanner strong{color:#e7d4a7}.interactionBanner>span{color:#d4dcc4}
