/* v0.2.0 Premium Table Edition — original high-end jewel guild art direction. */
:root{
  --bg:#03070d;
  --panel:#07131fef;
  --panel2:#0b1c2bee;
  --line:#4e4430;
  --gold:#f1cf79;
  --gold2:#9d6c20;
}
body{
  background:
    radial-gradient(ellipse at 48% 0%,rgba(36,75,112,.34),transparent 48%),
    radial-gradient(circle at 82% 30%,rgba(104,59,112,.13),transparent 32%),
    linear-gradient(160deg,#050a12,#02050a 72%)!important;
}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:url('art/velvet-pattern.svg') center/180px;opacity:.55}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 42%,transparent 0 38%,rgba(0,0,0,.72) 100%)}
.ambient{background:
  linear-gradient(120deg,transparent 0 41%,rgba(239,197,102,.06) 41.2% 41.35%,transparent 41.55%),
  radial-gradient(circle at 50% 30%,rgba(255,219,135,.08),transparent 42%)!important;
  background-size:auto!important;mask-image:none!important
}
.topbar{border-bottom-color:rgba(201,155,71,.45)!important;background:linear-gradient(90deg,rgba(4,9,17,.96),rgba(10,24,38,.94),rgba(4,8,15,.98))!important;box-shadow:0 10px 34px rgba(0,0,0,.68),inset 0 -1px rgba(255,220,145,.05)!important}
.brand-gem{position:relative;border:2px solid #edcb77!important;background:radial-gradient(circle at 34% 28%,#fff5bd,#c3912c 53%,#57340b)!important;box-shadow:0 0 24px rgba(226,177,72,.38),inset 0 0 0 3px rgba(40,20,4,.35)!important}
.brand-gem::after{content:"";position:absolute;inset:5px;border:1px solid rgba(255,243,185,.7);transform:rotate(45deg)}
.brand b{color:#f4d991!important;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.ghost,.primary{border-radius:8px!important}
.ghost{border-color:#635334!important;background:linear-gradient(180deg,#132534,#08131d)!important;color:#eadab7!important}
.ghost:hover,.ghost:focus-visible{border-color:#d6ac53!important;background:linear-gradient(180deg,#1d3a50,#0a1723)!important}
.primary{border-color:#f0ca71!important;background:linear-gradient(180deg,#f3d582,#b98227 58%,#6d4512)!important;color:#171008!important;text-shadow:0 1px rgba(255,255,255,.35);box-shadow:0 7px 18px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.65),inset 0 -2px rgba(61,32,4,.42)!important}
.panel{border-color:rgba(164,126,61,.5)!important;background:
  linear-gradient(145deg,rgba(13,31,47,.95),rgba(4,10,18,.96)),
  url('art/velvet-pattern.svg') center/180px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.64),inset 0 1px rgba(255,236,190,.08),inset 0 0 0 1px rgba(0,0,0,.4)!important
}
.hero{min-height:250px!important;border-radius:20px!important}
.hero::before{content:"";position:absolute;inset:12px;border:1px solid rgba(218,171,77,.2);border-radius:14px;pointer-events:none}
.hero::after{background:
  radial-gradient(circle at 17% 50%,rgba(232,194,104,.18),transparent 26%),
  url('art/guild-pattern.svg') right 6% center/210px auto no-repeat,
  linear-gradient(105deg,transparent 43%,rgba(255,255,255,.035) 43.2%,transparent 43.5%)!important;opacity:.9}
.crest{border:2px solid rgba(222,183,99,.65)!important;background:radial-gradient(circle,rgba(39,67,84,.7),rgba(3,9,15,.85));box-shadow:0 0 0 10px rgba(209,162,65,.06),0 0 0 26px rgba(209,162,65,.035),0 0 38px rgba(226,183,89,.18),inset 0 0 38px rgba(0,0,0,.8)!important}
.crest::before{content:"";position:absolute;inset:18px;border:1px dashed rgba(230,190,101,.35);border-radius:50%;animation:premiumSpin 24s linear infinite}
.crest i{border-color:#d4aa56!important;background:linear-gradient(145deg,#17364b,#06111c)!important;box-shadow:0 7px 16px rgba(0,0,0,.65),inset 0 1px rgba(255,255,255,.08)}
.hero h2{color:#f3e7cc!important;text-shadow:0 3px 18px rgba(0,0,0,.85)}
.hero p{color:#b8c8cf!important}
.entry-card,.leaderboard-panel{position:relative;overflow:hidden}
.entry-card::before,.leaderboard-panel::before{content:"";position:absolute;inset:0;background:url('art/guild-pattern.svg') right -40px bottom -90px/190px auto no-repeat;opacity:.14;pointer-events:none}
.entry-card>* ,.leaderboard-panel>*{position:relative;z-index:1}
.entry-card input,.entry-card select{border-color:#4f4935!important;background:linear-gradient(180deg,#07131e,#03090f)!important;box-shadow:inset 0 2px 8px rgba(0,0,0,.55)}
.lb-card{border-color:#4c432e!important;background:linear-gradient(145deg,#091924,#040b12)!important;box-shadow:inset 0 0 18px rgba(0,0,0,.36)}

/* Premium game table */
.hud-box{border-color:rgba(164,126,61,.5)!important;background:linear-gradient(180deg,rgba(11,27,42,.97),rgba(4,10,17,.97))!important;box-shadow:inset 0 1px rgba(255,229,173,.06),0 6px 16px rgba(0,0,0,.35)}
.table{position:relative;border:1px solid rgba(190,145,65,.58)!important;background:
  radial-gradient(ellipse at 50% 46%,rgba(22,55,76,.92),rgba(6,17,28,.97) 58%,rgba(2,7,12,.99)),
  url('art/velvet-pattern.svg') center/180px!important;
  box-shadow:inset 0 0 0 2px rgba(2,3,5,.8),inset 0 0 75px rgba(0,0,0,.84),0 9px 26px rgba(0,0,0,.55)!important
}
.table::before{content:"";position:absolute;inset:8px;border:1px solid rgba(220,173,81,.16);border-radius:8px;pointer-events:none}
.bank{position:relative;z-index:1;padding:3px;border-right:1px solid rgba(211,166,78,.14)}
.bank-token{border-color:#51462f!important;background:radial-gradient(circle at 50% 35%,#14283a,#050c13 72%)!important;box-shadow:inset 0 0 16px rgba(0,0,0,.9),0 2px 6px rgba(0,0,0,.45)!important}
.bank-token .chip,.gem-dot,.selection-chips i,.action-gems i,.my-token i,.bonus-pill i,.token-pill i{position:relative;border-radius:50%;border:3px double rgba(255,255,255,.54)!important;box-shadow:inset 0 5px 7px rgba(255,255,255,.38),inset 0 -5px 7px rgba(0,0,0,.34),0 5px 9px rgba(0,0,0,.68)!important}
.bank-token .chip::after,.bonus-gem::after{content:"";position:absolute;left:18%;top:13%;width:28%;height:18%;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(.4px)}
.market-zone{position:relative;z-index:1;padding:2px 4px}
.noble{border:2px solid #caa352!important;background:
  linear-gradient(90deg,rgba(226,210,171,.88),rgba(171,141,86,.92)),
  url('art/noble-medallion.svg') center/cover!important;
  box-shadow:0 6px 13px rgba(0,0,0,.68),inset 0 0 0 1px rgba(255,246,211,.4)!important
}
.noble::before{background:url('art/noble-medallion.svg') center/cover no-repeat!important;opacity:.24!important}
.noble .vp{color:#4d2912!important;text-shadow:0 1px rgba(255,246,205,.65)}
.tier-row{position:relative;padding:2px 3px;border-radius:8px;background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(255,255,255,.015),rgba(0,0,0,.18));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.tier-label b{color:#e2bd68!important;text-shadow:0 0 10px rgba(222,177,74,.3)}
.tier-deck{position:relative;overflow:hidden;border:2px solid #b89044!important;background:linear-gradient(145deg,#243b69,#091325 65%,#02050b)!important;box-shadow:5px 5px 0 #101b32,8px 8px 0 #050912,0 8px 18px rgba(0,0,0,.65)!important}
.tier-deck::before{content:"";position:absolute;inset:8%;border:1px solid rgba(239,205,123,.55);transform:rotate(45deg)}
.tier-deck::after{content:"✦";position:absolute;inset:0;display:grid;place-items:center;color:#d9ae52;font-size:clamp(20px,2.5vw,36px);text-shadow:0 0 14px rgba(223,176,67,.5)}
.tier-deck b{position:absolute;z-index:2;right:3px;bottom:2px;min-width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#090b11;border:1px solid #d2a749;color:#f1d38c}
.dev-card{position:relative;border:2px solid #a88850!important;background:
  linear-gradient(170deg,rgba(240,228,202,.98),rgba(185,158,115,.96) 65%,rgba(111,84,51,.98)),
  url('art/guild-pattern.svg') center/cover!important;
  box-shadow:0 8px 17px rgba(0,0,0,.66),inset 0 0 0 1px rgba(255,255,255,.45)!important;transition:transform .17s ease,filter .17s ease,border-color .17s ease!important
}
.dev-card::before{content:"";position:absolute;inset:0;background:url('art/guild-pattern.svg') center/cover no-repeat;opacity:.42;mix-blend-mode:multiply}
.dev-card::after{content:"";position:absolute;inset:4px;border:1px solid rgba(102,72,39,.35);border-radius:5px;pointer-events:none}
.dev-card.tier-1{background:linear-gradient(170deg,#efe6d0,#c7ad82 68%,#84623e)!important}
.dev-card.tier-2{background:linear-gradient(170deg,#d9e2df,#9eb4ae 64%,#536a67)!important;border-color:#9bb3ac!important}
.dev-card.tier-3{background:linear-gradient(170deg,#ead8b0,#b58742 61%,#5e3514)!important;border-color:#e0b45e!important;box-shadow:0 8px 18px rgba(0,0,0,.72),0 0 13px rgba(218,164,61,.14),inset 0 0 0 1px rgba(255,247,205,.48)!important}
.card-pattern{position:relative;height:32%!important;font-size:0!important;opacity:.8!important}
.card-pattern::before{content:"";position:absolute;inset:-4px 12%;background:linear-gradient(180deg,transparent,rgba(47,35,23,.08)),url('art/guild-pattern.svg') center/contain no-repeat;opacity:.75}
.card-pattern::after{content:"GEM GUILD";position:absolute;left:0;right:0;bottom:0;color:#6d5738;font:800 clamp(5px,.55vw,8px)/1 Georgia,serif;letter-spacing:.14em;text-align:center}
.card-vp{color:#402817!important;text-shadow:0 1px rgba(255,255,255,.55)!important}
.bonus-gem{position:relative;border:3px double rgba(255,255,255,.72)!important;box-shadow:inset 0 5px 7px rgba(255,255,255,.42),inset 0 -5px 8px rgba(0,0,0,.33),0 4px 7px rgba(0,0,0,.62)!important}
.cost-chip{border:1px solid rgba(255,255,255,.14);box-shadow:0 2px 4px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.09)}
.players-rail{padding:1px}
.player-panel{border-color:#493f2d!important;background:linear-gradient(145deg,rgba(10,26,39,.97),rgba(3,9,15,.98))!important;box-shadow:inset 0 0 20px rgba(0,0,0,.45)}
.player-panel::before{content:"";position:absolute;inset:0;background:url('art/guild-pattern.svg') right -55px center/130px auto no-repeat;opacity:.1;pointer-events:none}
.player-panel>*{position:relative;z-index:1}
.player-panel.active{border-color:#e2b85e!important;box-shadow:0 0 18px rgba(225,181,82,.28),inset 0 0 26px rgba(221,172,67,.1)!important}
.player-head .avatar,.my-head .avatar{border:2px solid #c59845;background:radial-gradient(circle at 36% 28%,#4f7891,#142c3b 62%,#061019)!important;box-shadow:0 4px 8px rgba(0,0,0,.55)}
.personal-dock{border-color:rgba(190,145,65,.58)!important;background:linear-gradient(145deg,#0d2231,#040b12)!important;box-shadow:0 -6px 24px rgba(0,0,0,.62),inset 0 1px rgba(255,232,177,.05)!important}
.my-summary,.my-engine,.my-reserved{border-color:#493f2c!important;background:linear-gradient(145deg,rgba(7,21,31,.98),rgba(2,8,13,.98))!important}
.engine-stack{border-color:#463d2b!important;background:radial-gradient(circle at 50% 28%,#10293a,#030a10 72%)!important}
.reserved-empty{border-color:#5b4a2c!important;background:rgba(209,159,60,.025)}
.action-tray{border-color:#c39949!important;background:linear-gradient(180deg,rgba(12,31,44,.98),rgba(3,9,15,.98))!important;box-shadow:0 14px 36px rgba(0,0,0,.75),0 0 18px rgba(213,167,69,.15)!important}
.action-overlay{background:radial-gradient(circle at 50% 45%,rgba(44,80,104,.2),rgba(0,3,6,.84))!important}
.action-card,.modal-card{position:relative;overflow:hidden;border-color:#dbb45f!important;background:
  linear-gradient(145deg,rgba(12,32,47,.98),rgba(2,8,14,.99)),
  url('art/velvet-pattern.svg') center/180px!important;
  box-shadow:0 35px 110px rgba(0,0,0,.9),0 0 42px rgba(220,175,76,.18),inset 0 0 0 1px rgba(255,232,176,.06)!important
}
.action-card::before,.modal-card::before{content:"";position:absolute;inset:9px;border:1px solid rgba(224,177,79,.16);border-radius:12px;pointer-events:none}
.action-card>* ,.modal-card>*{position:relative;z-index:1}
.score-row{border-color:#473e2c!important;background:linear-gradient(145deg,#091923,#030a10)!important}
.score-row.winner{border-color:#e1b75a!important;background:linear-gradient(145deg,#243523,#0b1713)!important;box-shadow:0 0 18px rgba(220,176,77,.13)}
@keyframes premiumSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.crest::before{animation:none}}
