
  /* ARENA_SLICE_START 01-chrome-avatar-studio -- spliced from arena-css/01-chrome-avatar-studio.css; edit that file, not this region */
  :root{
    --bg:#0d0a05; --bg-deep:#080603; --raised:#161009; --raised2:#1d150b;
    --line:#2a2113; --line2:#41321c; --ink:#f0e8d6; --soft:#c4b696; --mute:#8a7c60;
    --gold:#d4af37; --gold2:#f0c468; --pro:#5aa2ff; --con:#ff6b5e;
    --serif:Georgia,'Times New Roman',serif; --sans:-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    --mono:Consolas,Menlo,monospace;
  }
  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%;background:linear-gradient(180deg,#0d0a05,#080603 70%)}
  body{margin:0;background:transparent;color:var(--ink);font:16px/1.6 var(--sans)}
  /* the torchlight: slow-drifting glows behind everything */
  body::before{content:'';position:fixed;inset:-22%;z-index:-2;pointer-events:none;background:
    radial-gradient(42% 34% at 18% 8%, rgba(212,175,55,.13), transparent 60%),
    radial-gradient(36% 30% at 84% 90%, rgba(212,175,55,.09), transparent 60%),
    radial-gradient(30% 26% at 8% 92%, rgba(90,162,255,.05), transparent 60%),
    radial-gradient(30% 26% at 94% 6%, rgba(255,107,94,.05), transparent 60%);
    animation:drift 26s ease-in-out infinite alternate}
  @keyframes drift{from{transform:translate3d(-1.5%,-1%,0) scale(1)}to{transform:translate3d(1.5%,1.5%,0) scale(1.06)}}
  .embers{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
  .embers span{position:absolute;bottom:-12px;border-radius:50%;background:var(--gold2);opacity:0;animation:rise linear infinite;box-shadow:0 0 6px rgba(240,196,104,.8)}
  @keyframes rise{0%{transform:translateY(0) translateX(0);opacity:0}8%{opacity:.5}55%{opacity:.22}100%{transform:translateY(-105vh) translateX(26px);opacity:0}}
  @media (prefers-reduced-motion: reduce){body::before,.embers span{animation:none}}
  a{color:var(--gold2);text-decoration:none}
  .wrap{max-width:920px;margin:0 auto;padding:0 16px 80px}
  header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:18px}
  .brand{font-family:var(--serif);font-size:20px;letter-spacing:.02em}
  .brand small{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);margin-top:1px;line-height:1.1}
  .chip{font-size:12.5px;color:var(--soft);border:1px solid var(--line2);border-radius:999px;padding:5px 12px;background:var(--raised)}
  .chip b{color:var(--gold2)}
  h2{font-family:var(--serif);font-weight:400;font-size:24px;margin:26px 0 10px}
  .card{background:var(--raised);border:1px solid var(--line);border-radius:12px;padding:16px}
  .btn{display:inline-block;border:0;border-radius:6px;padding:9px 16px;font-weight:600;font-size:14px;cursor:pointer;background:linear-gradient(135deg,#f0c468,#d4af37 55%,#bb911f);color:#171105;box-shadow:0 2px 10px rgba(212,175,55,.22);transition:transform .12s ease, box-shadow .2s ease, filter .2s ease}
  .btn:hover{filter:brightness(1.08);box-shadow:0 4px 20px rgba(212,175,55,.42);transform:translateY(-1px)}
  .btn:active{transform:translateY(0) scale(.98)}
  .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line2);box-shadow:none}
  .btn.ghost:hover{border-color:var(--gold);color:var(--gold2);box-shadow:0 0 14px rgba(212,175,55,.15)}
  .btn.pro{background:var(--pro);color:#06101f}
  .btn.con{background:var(--con);color:#1f0806}
  .btn[disabled]{opacity:.45;cursor:not-allowed}
  input[type=text],textarea,select{width:100%;background:var(--bg-deep);border:1px solid var(--line2);border-radius:8px;color:var(--ink);padding:10px 12px;font:inherit}
  textarea{min-height:110px;resize:vertical}
  .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
  .muted{color:var(--mute);font-size:13px}
  .soft{color:var(--soft)}
  .badge{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line2);border-radius:4px;padding:2px 8px;color:var(--soft)}
  .badge.live{color:#7ee2a8;border-color:#2c5c40}
  .badge.judging{color:var(--gold2);border-color:var(--line2)}
  .badge.done{color:var(--mute)}
  .list{display:grid;gap:10px;margin-top:10px}
  .dcard{display:block;background:var(--raised);border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:var(--ink);transition:transform .15s ease, border-color .2s ease, box-shadow .25s ease}
  .dcard:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 6px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(212,175,55,.22)}
  .dcard .t{font-family:var(--serif);font-size:17.5px}
  .dcard .m{margin-top:6px;font-size:13px;color:var(--soft)}
  .dcard .trready{margin-top:8px;font-family:var(--mono);font-size:13px;font-weight:700;color:#140d04;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:999px;padding:5px 12px;display:inline-block;animation:trpulse 1.9s ease-in-out infinite}
  @keyframes trpulse{0%,100%{box-shadow:0 0 0 rgba(240,196,104,0)}50%{box-shadow:0 0 15px rgba(240,196,104,.6)}}
  @media (prefers-reduced-motion: reduce){.dcard .trready{animation:none}}
  /* The Avatar wardrobe */
  .avstage{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;border:1px solid var(--gold);border-radius:16px;background:radial-gradient(120% 130% at 50% 0%,#241a0b,#0f0b06 72%);margin-bottom:6px}
  /* Avatar figures are sprite-sheet windows: the viewBox IS the crop. Never let
     one render overflow:visible or the whole walk atlas spills (two tortoises in
     one seat). Emitters that need to paint outside their box say so themselves. */
  .avfig{display:block;overflow:hidden}
  .avfig .avrobe,.avfig .avface,.avfig .avhands{pointer-events:none}
  .avbig svg{filter:drop-shadow(0 8px 16px rgba(0,0,0,.5))}
  .avcoins{font-family:var(--mono);font-size:14px;color:var(--soft)} .avcoins b{color:var(--gold2)}
  .avslot{font-family:var(--serif);color:var(--gold2);font-size:16px;margin:16px 0 6px}
  .avgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:10px}
  .avitem{display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 6px;border:1px solid var(--line);border-radius:12px;background:var(--raised);transition:border-color .2s ease,transform .15s ease}
  .avitem:hover{transform:translateY(-2px);border-color:var(--line2)}
  .avitem.on{border-color:var(--gold);box-shadow:0 0 0 1px rgba(212,175,55,.28),0 0 16px rgba(212,175,55,.12);background:radial-gradient(120% 130% at 50% 0%,#241a0b,#120d07)}
  .avthumb{height:82px;display:flex;align-items:flex-end;justify-content:center}
  .avname{font-size:12px;text-align:center;color:var(--soft);line-height:1.25;min-height:30px;display:flex;align-items:center}
  .avact{min-height:26px;display:flex;align-items:center}
  .avbtn{padding:4px 12px;font-size:12.5px}
  .avworn{font-family:var(--mono);font-size:12px;color:var(--gold2)}
  /* The Atelier: full-screen character collecting, fitting, and ensemble memory */
  body.ateliermode{background:#120b18;overflow:hidden}
  body.ateliermode #view{padding:0!important;max-width:none!important;height:100dvh;overflow:hidden}
  body.ateliermode .top,body.ateliermode .sitefoot{display:none!important}
  .atelier{height:100dvh;display:flex;flex-direction:column;color:#f7ead5;background:radial-gradient(1100px 560px at 18% 14%,rgba(117,62,107,.34),transparent 68%),radial-gradient(800px 520px at 92% 92%,rgba(31,78,96,.25),transparent 65%),linear-gradient(145deg,#1a0d1d,#0d1019 72%);overflow:hidden}
  .atop{height:72px;flex:0 0 72px;display:flex;align-items:center;gap:16px;padding:0 22px;border-bottom:1px solid rgba(235,193,92,.28);background:rgba(10,7,13,.74);backdrop-filter:blur(18px);z-index:4}
  .atback{flex:0 0 auto}.atitle{min-width:0;display:flex;flex-direction:column;gap:2px}.atitle b{font:700 25px var(--serif);color:#ffe6a0}.atitle span{font-size:12px;color:#bbaebd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apurse{margin-left:auto;border:1px solid rgba(235,193,92,.45);border-radius:999px;padding:8px 13px;background:#17110c;font:13px var(--mono);color:#e2ceb0}.apurse b{color:#ffd76a}
  .atelierload{margin:auto;padding:26px 34px;border:1px solid rgba(235,193,92,.35);border-radius:18px;background:rgba(10,7,13,.72);font-family:var(--serif);color:#e8cf9d}.atelierload.error{border-color:#9d4b5b;color:#f2b7bf}
  .ateliergrid{min-height:0;flex:1;display:grid;grid-template-columns:minmax(250px,28vw) minmax(420px,1fr) minmax(270px,23vw);gap:12px;padding:12px;overflow:hidden}
  .amirrorpanel,.acatalogpanel,.asidepanel>section{border:1px solid rgba(224,176,192,.23);border-radius:18px;background:rgba(17,10,21,.76);box-shadow:0 18px 55px rgba(0,0,0,.24)}
  .amirrorpanel{min-height:0;display:flex;flex-direction:column;padding:14px;overflow:auto}.apanelhead,.asidehead{display:flex;align-items:center;justify-content:space-between;gap:10px}.akicker{font:700 10px var(--mono);letter-spacing:.16em;color:#dcad68}.amirrorsaved{font-size:11px;color:#a99daf}
  .amirror{position:relative;min-height:300px;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:10px 0;border-radius:140px 140px 28px 28px;border:1px solid rgba(224,176,192,.28);background-image:radial-gradient(circle at 50% 30%,rgba(255,224,159,.14),transparent 26%),linear-gradient(180deg,rgba(45,19,36,.16),rgba(8,7,11,.58)),url('room-bg-atelier-desktop-v1.jpg');background-position:center;background-size:cover;box-shadow:inset 0 0 70px rgba(0,0,0,.38)}
  .amirroreglow{position:absolute;inset:14% 17% 12%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,220,145,.16),transparent 68%);filter:blur(4px);transition:opacity .2s}.amirror.previewing .amirroreglow{opacity:1;animation:atmirrorPulse 1.8s ease-in-out infinite}.atelieravatar{position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);transform-origin:50% 0;transition:top .32s ease,bottom .32s ease,transform .32s ease}.atelieravatar svg{display:block;filter:drop-shadow(0 14px 15px rgba(0,0,0,.62))}.amirror[data-camera="full"] .atelieravatar{top:50%;bottom:auto;transform:translate(-50%,-50%) scale(.96)}.amirror[data-camera="torso"] .atelieravatar{top:1%;bottom:auto;transform:translateX(-50%) scale(1.32)}.amirror[data-camera="portrait"] .atelieravatar{top:-1%;bottom:auto;transform:translateX(-50%) scale(1.82)}.amirror[data-camera="feet"] .atelieravatar{top:auto;bottom:3%;transform:translateX(-50%) scale(1.38);transform-origin:50% 100%}.amirror[data-camera="portrait"] .atelierplinth,.amirror[data-camera="torso"] .atelierplinth{opacity:.18}.atelierplinth{position:absolute;left:22%;right:22%;bottom:9%;height:18px;border-radius:50%;border:2px solid rgba(243,199,100,.64);box-shadow:0 0 22px rgba(243,199,100,.32);background:rgba(5,4,7,.6);transition:opacity .2s}
  .acamerabar{position:relative;z-index:7;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 -3px;padding:0 2px}.acamerafocus{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 8px;border:1px solid rgba(255,229,169,.26);border-radius:999px;background:rgba(13,8,16,.72);color:#f6ddb0;font:700 8px var(--mono);letter-spacing:.08em;text-transform:uppercase}.acameramodes{display:flex;gap:3px;flex:none}.acamerabtn{min-width:34px;height:30px;padding:0 7px;border:1px solid rgba(255,229,169,.24);border-radius:999px;background:rgba(13,8,16,.76);color:#cbbcca;font-size:10px}.acamerabtn.on{border-color:#efc565;background:#3a281f;color:#ffe3a0;box-shadow:0 0 15px rgba(239,197,101,.16)}
  .awornsummary{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.awornchip{min-width:0;text-align:left;padding:8px;border:1px solid rgba(224,176,192,.19);border-radius:10px;background:#17101c;color:#eee0dc}.awornchip small{display:block;color:#9f91a3;font:9px var(--mono);text-transform:uppercase}.awornchip span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;margin-top:2px}.awear{width:100%;margin-top:10px}.asaverow{display:flex;gap:7px;margin-top:8px}.asaverow input,.asearch{min-width:0;flex:1;border:1px solid rgba(224,176,192,.28);border-radius:10px;background:#100b13;color:#f5e7df;padding:9px 10px;font:inherit}.asaverow input:focus,.asearch:focus{outline:none;border-color:#d9ad62}.amirronote{min-height:28px;margin-top:7px;color:#9f91a3;font-size:10px;line-height:1.35}
  .acatalogpanel{min-height:0;display:flex;flex-direction:column;overflow:hidden;background:rgba(12,9,16,.7)}.atoolbar{padding:12px;border-bottom:1px solid rgba(224,176,192,.14);display:flex;flex-direction:column;gap:9px}.atabs{display:flex;gap:5px;overflow:auto}.atab{white-space:nowrap;border:1px solid rgba(224,176,192,.2);border-radius:999px;background:#17101c;color:#bfb1c3;padding:7px 11px}.atab.on{border-color:#d9ad62;color:#ffe1a0;background:#302019}.acatalogtitle{display:flex;align-items:baseline;gap:10px;padding:11px 14px 4px}.acatalogtitle b{font:700 18px var(--serif);color:#f4dcaa}.acatalogtitle span{min-width:0;font-size:10px;color:#9f91a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acatalog{min-height:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:9px;padding:10px 12px 18px;overflow:auto;align-content:start}
  .aitem{position:relative;min-height:220px;display:flex;flex-direction:column;align-items:stretch;border:1px solid rgba(224,176,192,.18);border-radius:14px;background:linear-gradient(165deg,rgba(45,29,47,.86),rgba(18,13,22,.94));overflow:hidden;cursor:pointer;transition:transform .15s,border-color .16s,box-shadow .16s}.aitem:hover{transform:translateY(-2px);border-color:rgba(235,193,92,.55)}.aitem.selected{border-color:#f0c665;box-shadow:0 0 0 1px rgba(240,198,101,.35),0 8px 24px rgba(0,0,0,.3)}.aitem.locked .aithumb{filter:saturate(.7)}.awish{position:absolute;right:7px;top:7px;z-index:4;width:29px;height:29px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(10,7,13,.75);color:#ccbfc9;font-size:17px}.awish.on{color:#ff8ea5;border-color:#d75c79}.aithumb{position:relative;height:112px;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;padding:0;background:radial-gradient(circle at 50% 48%,rgba(237,198,119,.19),transparent 58%),linear-gradient(180deg,rgba(116,74,105,.2),rgba(12,10,16,.08))}.aithumb::after{content:"";position:absolute;inset:auto 16% 7px;height:6px;border-radius:50%;background:rgba(4,3,6,.42);filter:blur(2px)}.aithumb svg{position:relative;z-index:1;display:block;flex:none;max-width:none!important;filter:drop-shadow(0 7px 8px rgba(0,0,0,.45))}.aithumb.focus-full svg{width:54px!important;height:104px!important;margin-top:5px}.aithumb.focus-torso svg{width:84px!important;height:161px!important;margin-top:-2px}.aithumb.focus-portrait svg{width:124px!important;height:238px!important;margin-top:-3px}.aithumb.focus-feet svg{width:104px!important;height:200px!important;margin-top:-100px}.aithumb.focus-portrait::after,.aithumb.focus-torso::after{display:none}.aimeta{padding:8px 9px 4px;display:flex;flex-direction:column;gap:3px}.aimeta b{font:700 13px var(--serif);color:#f3e4d5}.aimeta small{height:30px;overflow:hidden;font-size:9px;line-height:1.35;color:#9f91a3}.airarity{align-self:flex-start;border-radius:999px;padding:2px 6px;background:#2b2230;color:#c9bacd;font:700 8px var(--mono);text-transform:uppercase;letter-spacing:.08em}.aifreeflag{align-self:flex-start;color:#ffe099;font:700 8px var(--mono);letter-spacing:.07em;text-transform:uppercase}.rarity-rare .airarity{color:#8bc9ff}.rarity-epic .airarity{color:#d69cff}.rarity-legendary .airarity{color:#ffd56f}.aiaction{min-height:34px;margin-top:auto;padding:5px 9px 9px;display:flex;align-items:center}.aiaction .btn{width:100%;padding:6px}.aiowned{font:700 9px var(--mono);color:#8fd4aa;text-transform:uppercase;letter-spacing:.08em}.aiunlock{width:100%;font-size:8px;line-height:1.3;color:#cbbdce}.aiunlock b{display:block;color:#e6cf9a;font-size:9px}.aiprogress{height:4px;margin-top:4px;border-radius:999px;background:#281d2c;overflow:hidden}.aiprogress i{display:block;height:100%;background:linear-gradient(90deg,#7e69b0,#e7bd60)}.anewlooks{border-color:rgba(239,190,91,.55)!important;background:linear-gradient(150deg,rgba(94,50,38,.92),rgba(36,19,42,.92))!important}.anewlooks p{margin:6px 0 0;color:#ead7bd;font-size:10px;line-height:1.45}.avaura{transform-origin:50px 88px;animation:avauraFloat 2.8s ease-in-out infinite}
  .asidepanel{min-height:0;display:flex;flex-direction:column;gap:10px;overflow:auto;padding-right:2px}.asidepanel>section{padding:12px;flex:0 0 auto}.astyleprompt{background:radial-gradient(110% 140% at 0 0,rgba(93,61,124,.54),rgba(17,10,21,.87))!important}.astyleprompt>b{display:block;margin-top:7px;font:700 17px var(--serif);color:#ffe1a0}.astyleprompt p{margin:5px 0 8px;color:#c4b4c8;font-size:11px;line-height:1.4}.atags{display:flex;flex-wrap:wrap;gap:4px}.atags span{padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.08);color:#d3c4d6;font-size:9px}.asidehead b{font:700 15px var(--serif);color:#f4dcaa}.asidehead span{font:10px var(--mono);color:#9f91a3}.acollection{width:100%;display:grid;grid-template-columns:32px 1fr;gap:7px;text-align:left;padding:7px 4px;border:0;border-bottom:1px solid rgba(224,176,192,.1);background:transparent;color:#eadde6}.acicon{font-size:20px}.acollection span:nth-child(2){min-width:0}.acollection b,.acollection small{display:block}.acollection b{font-size:11px}.acollection small{font-size:9px;color:#9f91a3}.acollection i{display:block;height:4px;margin-top:5px;border-radius:999px;background:#251a29;overflow:hidden}.acollection em{display:block;height:100%;background:linear-gradient(90deg,#9766a8,#efc568)}.acollection.complete b{color:#ffe092}.acreward{color:#d9bd7c!important;margin-top:2px}.aempty{grid-column:1/-1;padding:24px;text-align:center;color:#9f91a3;font-size:11px}.aoutfit{display:flex;align-items:center;gap:7px;padding:7px 0;border-bottom:1px solid rgba(224,176,192,.1)}.aoutfitmini{width:36px;height:48px;overflow:hidden;display:flex;align-items:flex-start;justify-content:center}.aoutfitname{min-width:0;flex:1}.aoutfitname b,.aoutfitname small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aoutfitname b{font-size:11px}.aoutfitname small{font-size:8px;color:#94879a}.aoutfit .btn{padding:5px 7px;font-size:9px}.aoutfitdel{width:24px;height:24px;border:0;background:transparent;color:#9f91a3;font-size:17px}.atspark{position:absolute;z-index:5;width:6px;height:6px;border-radius:50%;background:#ffe39a;box-shadow:0 0 8px #ffd675;pointer-events:none;animation:atelierSpark .72s ease-out forwards}
  .afinishpanel{margin-top:8px;padding:10px;border:1px solid rgba(224,176,192,.2);border-radius:14px;background:rgba(12,8,16,.72)}.afinishslots,.afinishrow{display:flex;gap:5px;overflow:auto;padding:6px 0}.afinishslots .atab{padding:5px 8px;font-size:9px}.afinishlabel{display:block;margin-top:4px;color:#b9a7bd;font:8px var(--mono);text-transform:uppercase;letter-spacing:.1em}.afinish{position:relative;min-width:72px;max-width:100px;min-height:46px;padding:5px;border:1px solid rgba(224,176,192,.18);border-radius:9px;background:#17101c;color:#d7c8d8;font-size:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.afinish.selected{border-color:#edc65d;box-shadow:0 0 0 1px rgba(237,198,93,.32)}.afinish.locked{opacity:.62}.afinish small{font-size:7px;color:#e4c46c}.adyeswatch{width:22px;height:15px;border-radius:999px;border:1px solid rgba(255,255,255,.35);box-shadow:inset 0 0 5px rgba(255,255,255,.3)}
  .aseason{background:radial-gradient(120% 150% at 100% 0,rgba(214,148,47,.3),rgba(27,14,27,.94))!important}.aseason>b{display:block;margin-top:6px;font:700 18px var(--serif);color:#ffe39a}.aseason p,.alookintro{margin:5px 0 8px;font-size:9px;line-height:1.4;color:#b9a9bd}.aseasonprogress{width:100%;padding:8px;border:1px solid rgba(236,193,90,.3);border-radius:10px;background:rgba(15,9,18,.62);color:#e9d6bb;text-align:left}.aseasonprogress span,.aseasonprogress b{display:block;font-size:9px}.aseasonprogress b{color:#f0cf7b;margin-top:2px}.aseasonprogress i{display:block;height:4px;margin-top:6px;border-radius:9px;background:#2b1a2d;overflow:hidden}.aseasonprogress em{display:block;height:100%;background:linear-gradient(90deg,#d08b38,#f0d778)}.achallengestate{display:block;margin:8px 0;color:#e7cf92;font-size:9px}.apublishrow{display:flex;gap:5px;margin-top:7px}.apublishrow input{min-width:0;flex:1;border:1px solid rgba(224,176,192,.24);border-radius:8px;background:#100b13;color:#f5e7df;padding:7px;font-size:9px}.apublishrow .btn{padding:6px 8px;font-size:9px}
  .acraft{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px 0;border-bottom:1px solid rgba(224,176,192,.1)}.acrafticon{font-size:18px}.acraftwords{min-width:0}.acraftwords b,.acraftwords small{display:block}.acraftwords b{font-size:10px}.acraftwords small{font-size:7px;line-height:1.35;color:#9e8fa2}.acraft.ready .acraftwords small{color:#e8c875}.acraft.done .acraftwords b{color:#9fd2ad}.acraft .btn{padding:5px 6px;font-size:8px}
  .alookcard{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px 0;border-bottom:1px solid rgba(224,176,192,.1)}.alookmini{width:38px;height:52px;display:flex;justify-content:center;overflow:hidden}.alookcopy{min-width:0}.alookcopy b,.alookcopy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alookcopy b{font-size:10px}.alookcopy small{color:#9d8ea2;font-size:8px}.alookaction{min-width:27px;height:27px;border:1px solid rgba(224,176,192,.22);border-radius:999px;background:#17101c;color:#cbbbcf;font-size:10px}.alookaction.on{color:#ff8ea5;border-color:#d75c79}
  .avmaterialshimmer{animation:avmaterialShine 3.4s ease-in-out infinite}
  @keyframes atelierSpark{0%{opacity:0;transform:translate(0,8px) scale(.3)}20%{opacity:1}100%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(1.4)}}@keyframes atmirrorPulse{50%{transform:scale(1.04);opacity:.72}}@keyframes avauraFloat{50%{transform:translateY(-2px);opacity:.62}}@keyframes avmaterialShine{0%,100%{opacity:1}50%{opacity:.82}}
  @media(max-width:960px){body.ateliermode{overflow:auto}body.ateliermode #view{height:auto;min-height:100dvh;overflow:visible}.atelier{height:auto;min-height:100dvh;overflow:visible}.atop{position:sticky;top:0;height:60px;flex-basis:60px;padding:0 10px}.atitle b{font-size:19px}.atitle span{display:none}.ateliergrid{display:flex;flex-direction:column;overflow:visible;padding:8px}.amirrorpanel{min-height:520px;overflow:visible}.amirror{min-height:340px}.acatalogpanel{min-height:620px;overflow:visible}.acatalog{max-height:none;overflow:visible}.asidepanel{overflow:visible}.asidepanel>section{overflow:visible}}
  @media(max-width:560px){.atop{gap:7px}.apurse{padding:6px 8px}.ateliergrid{gap:8px}.amirrorpanel{min-height:465px;padding:10px}.amirror{min-height:300px}.amirror[data-camera="portrait"] .atelieravatar{transform:translateX(-50%) scale(1.6)}.amirror[data-camera="torso"] .atelieravatar{transform:translateX(-50%) scale(1.2)}.amirror[data-camera="feet"] .atelieravatar{bottom:3%;transform:translateX(-50%) scale(1.24);transform-origin:50% 100%}.awornsummary{grid-template-columns:repeat(2,1fr);gap:3px}.awornchip{padding:6px 4px}.awornchip span{font-size:9px}.atabs{margin-right:-10px}.acatalog{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;gap:7px}.aitem{min-height:226px}.aithumb{height:106px}}
  @media(prefers-reduced-motion:reduce){.amirror.previewing .amirroreglow,.atspark,.avaura,.avmaterialshimmer{animation:none!important}.aitem{transition:none}}
  /* ── The Avatar Studio: stage, turntable, dice, history, codes, dock ── */
  .atelier{position:relative}
  .ahistbtns{display:flex;gap:4px;margin-left:auto}
  .ahistbtn{width:30px;height:30px;border:1px solid rgba(224,176,192,.28);border-radius:9px;background:#1b1220;color:#e8d9c4;font-size:14px;cursor:pointer;transition:border-color .15s}
  .ahistbtn:hover{border-color:#d9ad62}.ahistbtn:disabled{opacity:.32;cursor:default}
  .apanelhead .amirrorsaved{margin-left:8px}
  .astagebar{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:9px 0 2px}
  .astagebtn{border:1px solid rgba(224,176,192,.24);border-radius:999px;background:#17101c;color:#d9c8b2;padding:6px 10px;font-size:11px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
  .astagebtn:hover{border-color:#d9ad62;color:#ffe1a0}
  .astagebtn.on{border-color:#d9ad62;color:#ffe1a0;background:#302019}
  .astagebtn.stemote{padding:6px 8px;font-size:14px}
  .astagebtn.stdice{margin-left:auto;border-color:rgba(240,198,101,.5);color:#ffe1a0;background:#241626;font-weight:700}
  .amirror::after{content:"";position:absolute;left:50%;top:0;width:76%;height:100%;transform:translateX(-50%);background:radial-gradient(52% 36% at 50% 10%,rgba(255,214,140,.15),transparent 72%);pointer-events:none}
  .atelierplinth{background:radial-gradient(ellipse at 50% 38%,rgba(74,46,20,.85),rgba(5,4,7,.62) 72%);border-color:rgba(243,199,100,.72)}
  .amirror[data-facing="side"] .avdir,.amirror[data-facing="left"] .avdir,.amirror[data-facing="up"] .avdir{display:none}
  .amirror[data-facing="side"] .avdir-side,.amirror[data-facing="left"] .avdir-side{display:block}
  .amirror[data-facing="up"] .avdir-up{display:block}
  .atelieravatar>svg{transform:scaleX(var(--stflip,1));transform-origin:50% 92%;animation:stBreathe 4.2s ease-in-out infinite}
  .amirror[data-facing="left"] .atelieravatar>svg{--stflip:-1}
  @keyframes stBreathe{0%,100%{transform:scaleX(var(--stflip,1)) scaleY(1)}50%{transform:scaleX(var(--stflip,1)) scaleY(1.013) translateY(-.5px)}}
  .amirror.stwalk .avwalkframe{animation:avatarWalkFrame .64s steps(1,end) infinite}
  .amirror.stwalk .avwf1{animation-delay:-.16s}.amirror.stwalk .avwf2{animation-delay:-.32s}.amirror.stwalk .avwf3{animation-delay:-.48s}
  .atelieravatar.stbounce>svg{animation:stBounce .55s ease}
  @keyframes stBounce{0%{transform:scaleX(var(--stflip,1)) scaleY(1)}28%{transform:scaleX(var(--stflip,1)) scaleY(.93) translateY(2px)}62%{transform:scaleX(var(--stflip,1)) scaleY(1.06) translateY(-3px)}100%{transform:scaleX(var(--stflip,1)) scaleY(1)}}
  .atelieravatar.stshake>svg{animation:stShake .45s ease}
  @keyframes stShake{0%,100%{transform:scaleX(var(--stflip,1)) rotate(0)}22%{transform:scaleX(var(--stflip,1)) rotate(-2.4deg) scaleY(.97)}48%{transform:scaleX(var(--stflip,1)) rotate(2deg) scaleY(1.03)}74%{transform:scaleX(var(--stflip,1)) rotate(-1deg)}}
  .stemotefloat{position:absolute;z-index:6;top:32%;font-size:34px;animation:stEmoteUp 1.25s ease-out forwards;pointer-events:none;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}
  @keyframes stEmoteUp{0%{opacity:0;transform:translateY(14px) scale(.6)}18%{opacity:1;transform:translateY(0) scale(1.15)}30%{transform:translateY(-4px) scale(1)}100%{opacity:0;transform:translateY(-46px) scale(1)}}
  .astribbon{position:absolute;z-index:7;left:50%;top:15%;transform:translateX(-50%);background:linear-gradient(90deg,rgba(240,198,101,.14),rgba(240,198,101,.94) 18%,rgba(240,198,101,.94) 82%,rgba(240,198,101,.14));color:#2b1a09;font:700 12px var(--serif);padding:7px 26px;border-radius:4px;letter-spacing:.06em;animation:stRibbon 1.6s ease forwards;pointer-events:none;white-space:nowrap}
  @keyframes stRibbon{0%{opacity:0;transform:translateX(-50%) scaleX(.2)}16%{opacity:1;transform:translateX(-50%) scaleX(1.05)}26%{transform:translateX(-50%) scaleX(1)}76%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-12px)}}
  .asharerow{display:flex;gap:6px;margin-top:7px;align-items:stretch}
  .stsharebtn{flex:0 0 auto;font-size:11px;padding:7px 9px;white-space:nowrap}
  .astpaste{display:flex;flex:1;min-width:0;gap:5px}
  .astpaste .btn{flex:0 0 auto;padding:7px 9px;font-size:11px}
  .astcode{flex:1;min-width:0;border:1px solid rgba(224,176,192,.28);border-radius:10px;background:#100b13;color:#f5e7df;padding:8px 9px;font:11px var(--mono)}
  .astcode:focus{outline:none;border-color:#d9ad62}
  .arandrow{display:flex;gap:6px;align-items:stretch}
  .astabdice{flex:0 0 auto;width:40px;border:1px solid rgba(240,198,101,.42);border-radius:10px;background:#241626;color:#ffe1a0;font-size:17px;cursor:pointer;transition:transform .12s,border-color .15s}
  .astabdice:hover{transform:rotate(-12deg) scale(1.06);border-color:#f0c665}
  .astudiodock{display:none}
  .astcurtain{position:absolute;top:0;bottom:0;left:0;width:51%;z-index:60;background:repeating-linear-gradient(90deg,rgba(0,0,0,.24) 0 13px,rgba(255,205,130,.07) 13px 26px),linear-gradient(100deg,#4a1f2b,#6e2f42 46%,#3a1622);box-shadow:inset -18px 0 34px rgba(0,0,0,.55);transition:transform .9s cubic-bezier(.6,.05,.25,1);pointer-events:none}
  .astcurtainr{left:auto;right:0;box-shadow:inset 18px 0 34px rgba(0,0,0,.55)}
  .astcurtain.open{transform:translateX(-103%)}
  .astcurtainr.open{transform:translateX(103%)}
  .astour{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;background:rgba(8,5,11,.62);backdrop-filter:blur(3px)}
  .astourcard{width:min(92vw,360px);border:1px solid rgba(240,198,101,.4);border-radius:16px;background:linear-gradient(160deg,#241528,#140d19);padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.5)}
  .astourcard b{display:block;font:700 19px var(--serif);color:#ffe1a0}
  .astourcard p{margin:8px 0 12px;color:#cbbdce;font-size:12.5px;line-height:1.5}
  .astourdots{display:flex;gap:5px;margin-bottom:12px}
  .astourdots i{width:7px;height:7px;border-radius:50%;background:#3a2a40}
  .astourdots i.on{background:#f0c665}
  .astourrow{display:flex;justify-content:space-between;gap:8px}
  @media(max-width:700px){
    .astudiodock{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;gap:2px;overflow-x:auto;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(23,13,26,.9),rgba(12,7,15,.97));backdrop-filter:blur(8px);border-top:1px solid rgba(224,176,192,.25)}
    .astdockbtn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:52px;padding:4px 6px;border:0;border-radius:11px;background:transparent;color:#bfb1c3}
    .astdockbtn i{font-style:normal;font-size:19px;line-height:1.15}
    .astdockbtn small{font-size:8px;letter-spacing:.02em}
    .astdockbtn.on{background:#302019;color:#ffe1a0}
    .ateliergrid{padding-bottom:88px}
    .atabs{display:none}
    .astagebtn{padding:7px 11px}
    .astagebtn.stemote{padding:7px 9px}
  }
  @media(prefers-reduced-motion:reduce){.atelieravatar>svg,.atelieravatar.stbounce>svg,.atelieravatar.stshake>svg,.stemotefloat,.astribbon,.astcurtain,.amirror.stwalk .avwalkframe{animation:none!important;transition:none!important}}
  /* ── Character Renaissance: the wardrobe is a destination, not a parts wall ── */
  body.ateliermode{background:#17100a}
  .atelier{background-image:linear-gradient(115deg,rgba(19,12,8,.8),rgba(19,13,9,.55) 43%,rgba(10,8,7,.83)),url('room-bg-atelier-desktop-v2.jpg');background-size:cover;background-position:center;color:#f7ecd9}
  .atop{height:68px;flex-basis:68px;border-bottom-color:rgba(222,181,101,.42);background:linear-gradient(90deg,rgba(24,15,9,.93),rgba(15,12,9,.8));box-shadow:0 8px 30px rgba(17,10,4,.28)}
  .atitle b{color:#ffe6ad}.atitle span{color:#cabca5}.apurse{background:rgba(38,26,14,.9);border-color:rgba(229,190,111,.52)}
  .ateliergrid{grid-template-columns:minmax(310px,34vw) minmax(480px,1fr) minmax(250px,20vw);gap:14px;padding:14px}
  .amirrorpanel,.acatalogpanel,.asidepanel>section{border-color:rgba(222,181,101,.28);background:linear-gradient(165deg,rgba(35,23,15,.88),rgba(15,12,10,.9));box-shadow:0 22px 68px rgba(18,10,4,.34),inset 0 1px rgba(255,239,201,.035)}
  .amirrorpanel{padding:15px}.akicker{color:#e0b96f}.amirrorsaved{color:#bcae97}
  .acompare{flex:none;border:1px solid rgba(224,185,111,.35);border-radius:999px;background:rgba(27,19,13,.78);color:#d8c8ae;padding:5px 9px;font:700 9px var(--mono);letter-spacing:.04em;cursor:pointer}.acompare:hover,.acompare.on{border-color:#f0c66c;color:#ffe4a2;background:#3a291b}
  .amirror{min-height:350px;margin:10px 0 8px;border-radius:170px 170px 24px 24px;border-color:rgba(229,190,111,.52);background-image:radial-gradient(circle at 50% 26%,rgba(255,226,167,.11),transparent 29%),linear-gradient(180deg,rgba(39,24,13,.04),rgba(12,9,7,.43)),url('room-bg-atelier-desktop-v2.jpg');background-size:cover;background-position:center;box-shadow:inset 0 0 78px rgba(29,15,6,.32),0 9px 26px rgba(14,8,3,.24)}
  .amirror::after{background:radial-gradient(52% 36% at 50% 10%,rgba(255,221,154,.2),transparent 72%)}
  .atelieravatar svg{filter:drop-shadow(0 13px 13px rgba(22,12,5,.55))}
  .avgarmentfinish{filter:drop-shadow(0 .5px .4px rgba(24,12,5,.28))}
  .avensemblehero{display:block;overflow:hidden;filter:drop-shadow(0 14px 12px rgba(20,10,4,.52))}.ensembleturnbody{display:none;line-height:0}
  .amirror[data-render="authored-ensemble"][data-facing="side"] .avensemblehero,.amirror[data-render="authored-ensemble"][data-facing="left"] .avensemblehero,.amirror[data-render="authored-ensemble"][data-facing="up"] .avensemblehero,.amirror[data-render="authored-ensemble"].stwalk .avensemblehero{display:none}
  .amirror[data-render="authored-ensemble"][data-facing="side"] .ensembleturnbody,.amirror[data-render="authored-ensemble"][data-facing="left"] .ensembleturnbody,.amirror[data-render="authored-ensemble"][data-facing="up"] .ensembleturnbody,.amirror[data-render="authored-ensemble"].stwalk .ensembleturnbody{display:inline-block}
  .ensembleturnbody>svg{transform:scaleX(var(--stflip,1));transform-origin:50% 92%;animation:stBreathe 4.2s ease-in-out infinite}.amirror[data-facing="left"] .ensembleturnbody>svg{--stflip:-1}
  .amirror[data-facing="side"] .avfrontonly,.amirror[data-facing="left"] .avfrontonly,.amirror[data-facing="up"] .avfrontonly,.amirror[data-facing="side"] .avplaced-back,.amirror[data-facing="left"] .avplaced-back,.amirror[data-facing="up"] .avplaced-back{display:none}
  .acamerafocus,.acamerabtn,.astagebtn,.ahistbtn{background:rgba(29,20,14,.82);border-color:rgba(225,186,112,.3);color:#d8c9b0}.acamerabtn.on,.astagebtn.on{background:#49331f;border-color:#efc56e}
  .astudioactions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:10px}.astudioactions .awear{margin-top:0}.areset{padding-left:13px;padding-right:13px}
  .awornchip,.afinishpanel{background:rgba(22,16,12,.78);border-color:rgba(219,180,107,.22)}.awornchip small,.amirronote,.afinishlabel{color:#aa9a82}.awornchip span{color:#f2e6d2}
  .afinish{background:#211711;border-color:rgba(222,181,101,.22);color:#ddceb8}.afinish.selected{border-color:#efc568}.asaverow input,.asearch,.astcode{background:rgba(19,14,11,.9);border-color:rgba(223,183,109,.3);color:#f4e9d6}
  .acatalogpanel{background:linear-gradient(165deg,rgba(29,20,14,.9),rgba(13,11,9,.92))}.atoolbar{border-bottom-color:rgba(221,181,107,.2)}.atab{background:rgba(29,20,14,.86);border-color:rgba(222,182,109,.22);color:#c6b79f}.atab.on{background:#503820;border-color:#efc36a;color:#ffe4a2;box-shadow:inset 0 1px rgba(255,239,191,.09)}
  .acatalogtitle b{color:#f7dda1}.acatalogtitle span{color:#a99b85}
  .aitem{border-color:rgba(220,179,104,.2);background:linear-gradient(165deg,rgba(55,38,25,.92),rgba(22,16,12,.96))}.aitem:hover{border-color:rgba(239,197,107,.62)}.aitem.locked .aithumb{filter:saturate(.68) brightness(.86)}.aithumb{background:radial-gradient(circle at 50% 45%,rgba(244,206,132,.2),transparent 58%),linear-gradient(180deg,rgba(101,70,40,.2),rgba(17,13,10,.08))}.aimeta small{color:#a99983}.airarity{background:#302218;color:#c8b89f}.aiunlock{color:#bcae96}.aiprogress{background:#2d2016}.aiprogress i{background:linear-gradient(90deg,#9f6a38,#ecc66e)}
  .acatalog.ensemblecatalog{display:grid;grid-template-columns:1fr;gap:12px;padding:12px 14px 24px}
  .aensemble{position:relative;display:grid;grid-template-columns:142px minmax(0,1fr) 136px;align-items:center;gap:16px;min-height:224px;padding:10px 13px 10px 8px;overflow:hidden;border:1px solid rgba(225,184,107,.26);border-radius:18px;background:radial-gradient(80% 110% at 0 50%,rgba(174,119,60,.22),transparent 64%),linear-gradient(135deg,rgba(57,39,25,.96),rgba(20,15,12,.97));cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}
  .aensemble::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px rgba(255,238,194,.06)}.aensemble:hover{transform:translateY(-2px);border-color:rgba(240,198,105,.68);box-shadow:0 14px 30px rgba(13,8,4,.34)}.aensemble.selected{border-color:#f0c669;box-shadow:0 0 0 1px rgba(240,198,105,.32),0 14px 34px rgba(13,8,4,.38)}
  .aensemblevisual{height:204px;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;border-radius:90px 90px 15px 15px;background:radial-gradient(circle at 50% 32%,rgba(255,227,169,.2),transparent 38%),linear-gradient(180deg,rgba(154,107,59,.17),rgba(18,13,10,.06))}.aensemblevisual svg{display:block;filter:drop-shadow(0 10px 10px rgba(15,8,3,.48))}
  .aensemblecopy{min-width:0}.aensembleeyebrow{display:block;color:#d6ab61;font:800 9px var(--mono);letter-spacing:.14em}.aensemblecopy>b{display:block;margin-top:3px;color:#ffe6ad;font:700 23px var(--serif);line-height:1.05}.aensemblecopy p{margin:8px 0;color:#cdbfa8;font-size:11px;line-height:1.5}.aensembletags{display:flex;flex-wrap:wrap;gap:4px}.aensembletags span{padding:3px 7px;border:1px solid rgba(222,181,105,.18);border-radius:999px;background:rgba(255,255,255,.035);color:#d8c8ae;font-size:8px;text-transform:uppercase}.aensemblepieces{display:block;margin-top:8px;color:#9f9079;font-size:8px;line-height:1.45}
  .aensembleprogress{display:flex;flex-direction:column;align-items:stretch;gap:6px}.aensembleprogress strong{color:#f2dbab;font:700 12px var(--serif)}.aensembleprogress>span{min-height:26px;color:#ad9e86;font-size:8px;line-height:1.4}.aensembleprogress>i{display:block;height:5px;overflow:hidden;border-radius:999px;background:#2e2117}.aensembleprogress>i em{display:block;height:100%;background:linear-gradient(90deg,#a66c35,#f0c66b)}.aensembleprogress .btn{margin-top:4px;padding:8px 9px;font-size:10px}
  .asidepanel>section{background:linear-gradient(160deg,rgba(36,25,17,.94),rgba(17,13,10,.94))}.asidehead b{color:#f1d9a4}.aoutfits{order:-11}.atogether{order:-12}.aseason{order:-10;background:radial-gradient(120% 150% at 100% 0,rgba(190,123,38,.32),rgba(29,19,13,.96))!important}
  @media(max-width:1180px) and (min-width:961px){.ateliergrid{grid-template-columns:minmax(285px,31vw) minmax(430px,1fr) 250px}.aensemble{grid-template-columns:124px minmax(0,1fr);gap:12px}.aensemblevisual{height:190px}.aensembleprogress{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.aensembleprogress>i{grid-column:1/-1}.aensembleprogress .btn{grid-column:2;grid-row:1/3}}
  @media(max-width:960px){body.ateliermode{overflow:auto}body.ateliermode #view{height:auto;min-height:100dvh;overflow:visible}.atelier{height:auto;min-height:100dvh;overflow:visible}.ateliergrid{display:flex;flex-direction:column;overflow:visible;padding:9px}.amirrorpanel{min-height:560px;overflow:visible}.amirror{min-height:380px}.acatalogpanel{min-height:620px;overflow:visible}.acatalog{max-height:none;overflow:visible}.asidepanel{overflow:visible}.asidepanel>section{overflow:visible}.aensemble{grid-template-columns:150px minmax(0,1fr) 150px}}
  @media(max-width:700px){.atelier{background-image:linear-gradient(180deg,rgba(18,12,8,.72),rgba(13,10,8,.91)),url('room-bg-atelier-mobile-v2.jpg');background-position:center top}.atabs{display:none}.ateliergrid{padding-bottom:88px}.aensemble{grid-template-columns:126px minmax(0,1fr);gap:11px}.aensemblevisual{height:190px}.aensembleprogress{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.aensembleprogress>i{grid-column:1/-1}.aensembleprogress .btn{grid-column:2;grid-row:1/3}}
  @media(max-width:480px){.aensemble{grid-template-columns:104px minmax(0,1fr);padding:8px}.aensemblevisual{height:174px}.aensemblevisual svg{width:96px!important;height:auto!important}.aensemblecopy>b{font-size:19px}.aensemblecopy p{font-size:10px}.aensemblepieces{display:none}.aensembleprogress{display:flex}.astudioactions{grid-template-columns:1fr}.areset{width:100%}}
  .meavatar{display:flex;flex-direction:column;align-items:center;gap:8px;margin:12px 0}
  .journey-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:22px 0 10px}.journey-head h2{margin:0}.journey-head p{margin:3px 0 0;max-width:650px}.journey-legend{font:11px var(--mono);color:var(--soft);border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:rgba(0,0,0,.16)}
  .journey-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.journey-card{position:relative;min-height:206px;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(145deg,rgba(36,30,23,.96),rgba(19,18,18,.98));border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:inset 0 1px rgba(255,255,255,.025)}.journey-card::after{content:"";position:absolute;inset:auto -24px -35px auto;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.11),transparent 67%);pointer-events:none}.journey-title{display:flex;align-items:center;gap:9px}.journey-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(212,175,55,.35);border-radius:11px;background:rgba(212,175,55,.09);font-size:22px}.journey-title strong{display:block;font-family:var(--serif);font-size:17px}.journey-source{display:block;margin-top:2px;font:10px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--soft)}.journey-facts{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 8px}.journey-fact{font:11px var(--mono);color:#eadcb7;border:1px solid rgba(212,175,55,.23);border-radius:999px;padding:4px 7px;background:rgba(0,0,0,.18)}.journey-next{margin:0 0 12px;color:var(--soft);font-size:12.5px;line-height:1.45}.journey-card .btn{margin-top:auto;align-self:flex-start;min-height:38px;z-index:1}
  .life-chronicle{margin-top:10px;padding:11px;border:1px solid rgba(128,181,201,.24);border-radius:11px;background:linear-gradient(135deg,rgba(31,50,66,.34),rgba(27,26,31,.34))}.life-chronicle-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.life-chronicle-head b{color:#d9edf4;font:800 15px var(--serif)}.life-chronicle-head span{color:#9fc6d4;font:10px var(--mono)}.life-chronicle-facts{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.life-chronicle-facts span{padding:3px 6px;border:1px solid rgba(135,193,211,.18);border-radius:999px;color:#c7dce3;font:9px var(--mono)}.life-chronicle-day{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px;padding:5px 0;border-top:1px solid rgba(135,193,211,.12);font-size:10px}.life-chronicle-day time{color:#9fc6d4;font-family:var(--mono)}.life-chronicle-day span{color:#d5d3ca;line-height:1.35}
  .life-plan{margin-top:10px;padding:12px;border:1px solid rgba(226,178,59,.28);border-radius:12px;background:linear-gradient(145deg,rgba(75,55,22,.32),rgba(31,41,54,.38))}.life-plan-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.life-plan-head b{color:#f1d991;font:800 15px var(--serif)}.life-plan-head span{color:#c8ac65;font:10px var(--mono)}.life-plan-copy{margin:7px 0;color:#d8d2c2;font-size:11px;line-height:1.45}.life-plan-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.life-plan-choice{min-height:34px;text-align:left}.life-plan-draft{display:grid;gap:5px;margin:8px 0}.life-plan-slot,.life-plan-stop{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid rgba(226,178,59,.18);border-radius:9px;background:rgba(20,22,29,.28)}.life-plan-slot>span:first-child,.life-plan-stop>span:first-child{color:#c8ac65;font:10px var(--mono)}.life-plan-slot.empty{color:#958d7c;border-style:dashed}.life-plan-slot button{padding:2px 7px}.life-plan-stop.done{border-color:rgba(99,190,134,.3);background:rgba(33,78,52,.24)}.life-plan-stop.done strong{text-decoration:line-through;color:#9dbda8}.life-plan-stop small{display:block;color:#a9a392;margin-top:2px}.life-plan-note{margin-top:7px;color:#a9a392;font:9px var(--mono);line-height:1.4}
  .life-aspiration{margin-top:12px;padding:13px;border:1px solid rgba(192,142,232,.32);border-radius:13px;background:linear-gradient(145deg,rgba(78,42,91,.36),rgba(48,42,22,.32))}.life-aspiration-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.life-aspiration-kicker{color:#c7a8df;font:9px var(--mono);text-transform:uppercase;letter-spacing:.08em}.life-aspiration-title{margin-top:2px;color:#f0dfae;font:800 17px var(--serif)}.life-aspiration-count{color:#d2b5e8;font:10px var(--mono);text-align:right}.life-aspiration-copy{margin:7px 0;color:#d8d1df;font-size:11px;line-height:1.45}.life-aspiration-track{height:9px;overflow:hidden;border-radius:6px;background:rgba(15,12,22,.46);margin:8px 0}.life-aspiration-track i{display:block;height:100%;background:linear-gradient(90deg,#a774cb,#e2b23b)}.life-aspiration-milestones{display:grid;gap:5px}.life-aspiration-milestone{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid rgba(192,142,232,.16);border-radius:9px;background:rgba(18,17,25,.28)}.life-aspiration-milestone.done{border-color:rgba(99,190,134,.28);background:rgba(31,68,45,.2)}.life-aspiration-seal{color:#c7a8df;font:10px var(--mono);text-align:center}.life-aspiration-milestone.done .life-aspiration-seal{color:#91d2a9}.life-aspiration-milestone small{color:#aaa1af;font:9px var(--mono)}.life-aspiration-next{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(192,142,232,.15)}.life-aspiration-next small{display:block;color:#aaa1af;margin-top:2px}.life-aspiration-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.life-aspiration-note{margin-top:7px;color:#aaa1af;font:9px var(--mono);line-height:1.4}.life-aspiration-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.life-aspiration-choice{padding:9px;border:1px solid rgba(192,142,232,.18);border-radius:10px;background:rgba(18,17,25,.26)}.life-aspiration-choice.active{border-color:rgba(226,178,59,.45)}.life-aspiration-choice b{display:block;color:#eadcf3;font:700 13px var(--serif)}.life-aspiration-choice p{min-height:43px;margin:5px 0;color:#bcb4c1;font-size:10px;line-height:1.4}.life-aspiration-choice small{display:block;color:#c7a8df;font:9px var(--mono);margin-bottom:7px}.life-aspiration-choice button{width:100%}
  @media(max-width:600px){.journey-grid{grid-template-columns:1fr}.journey-card{min-height:184px}.journey-head{align-items:flex-start}.journey-legend{white-space:normal}}
  @media(max-width:600px){.life-chronicle-day{grid-template-columns:1fr;gap:2px}.life-chronicle-head,.life-plan-head{align-items:flex-start}.life-chronicle-head span,.life-plan-head span{text-align:right}.life-plan-choices{grid-template-columns:1fr}.life-plan-stop{grid-template-columns:23px minmax(0,1fr)}.life-plan-stop button{grid-column:2;width:100%}}
  @media(max-width:600px){.life-aspiration-head,.life-aspiration-next{align-items:flex-start}.life-aspiration-choices{grid-template-columns:1fr}.life-aspiration-choice p{min-height:0}.life-aspiration-next{flex-direction:column}.life-aspiration-next button{width:100%}.life-aspiration-milestone{grid-template-columns:23px minmax(0,1fr)}.life-aspiration-milestone small{grid-column:2}.life-aspiration-actions button{flex:1 1 100%}}
  .sitefoot{text-align:center;padding:24px 12px 34px;margin-top:26px;border-top:1px solid var(--line);font-size:12.5px}
  .sitefoot a{color:var(--mute)} .sitefoot a:hover{color:var(--gold2)}
  .fbkind.on{border-color:var(--gold);color:var(--gold2)}
  /* The Plaza */
  /* ARENA_SLICE_END 01-chrome-avatar-studio */
  /* ARENA_SLICE_START 02-painted-rooms-plaza -- spliced from arena-css/02-painted-rooms-plaza.css; edit that file, not this region */
  .plaza{position:relative;height:432px;border:1px solid var(--gold);border-radius:16px;overflow:hidden;margin:12px 0;background:linear-gradient(180deg,#403c60 0%,#5f4a5c 22%,#8f6340 48%,#a87a44 72%,#bd9055 100%)}
  .plazabgwrap{position:absolute;inset:0;pointer-events:none}
  .plazabg{width:100%;height:100%;display:block;opacity:.92}
  /* The Plaza is one illustrated place, not a field of app tiles. The wide
     and portrait paintings are separate compositions so phones keep every
     landmark instead of cropping the two sides off a desktop image. */
  .plaza.plaza-painted{background:#6f94ad}
  .plaza-painted .plazabgwrap{background:url('plaza-bg-desktop-v1.jpg') center center/cover no-repeat}
  .plaza-painted .plazabgwrap .plazabg{display:none}
  .plaza-painted .pportal .pbuild,.plaza-painted .pfountain,.plaza-painted .pstall>svg,.plaza-painted .mycitadel .cfig{visibility:hidden}
  .plaza-painted .pportal,.plaza-painted .pstall,.plaza-painted .mycitadel{border-radius:18px}
  .plaza-painted .pportal::before,.plaza-painted .pstall::before,.plaza-painted .mycitadel::before{content:"";position:absolute;inset:-8px;border:1px solid transparent;border-radius:18px;transition:border-color .16s,background .16s,box-shadow .16s;pointer-events:none}
  .plaza-painted .pportal:hover::before,.plaza-painted .pportal:focus-visible::before,.plaza-painted .pstall:hover::before,.plaza-painted .pstall:focus-visible::before,.plaza-painted .mycitadel:hover::before,.plaza-painted .mycitadel:focus-visible::before{border-color:rgba(255,220,139,.92);background:rgba(255,209,104,.09);box-shadow:0 0 22px rgba(255,197,80,.42)}
  .plaza-painted .pportal:focus-visible,.plaza-painted .pstall:focus-visible,.plaza-painted .mycitadel:focus-visible{outline:none}
  .plaza-painted .pportal .plabel,.plaza-painted .pstall .plabel,.plaza-painted .mycitadel .pname{width:max-content;max-width:150px!important;margin:4px auto 0!important;padding:3px 8px;border:1px solid rgba(242,201,105,.58);border-radius:999px;background:rgba(24,17,9,.78);color:#fff0c7;font-size:11px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;box-shadow:0 3px 10px rgba(0,0,0,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .plaza-painted .pportal[data-portal="mine"]{left:50%!important;top:31%!important}
  /* The Olympiad's semantic doorway belongs in the open triumphal arch, not
     down on its staircase. This moves its label and hover target together. */
  .plaza-painted .pportal[data-portal="arcade"]{left:20%!important;top:40%!important}
  /* The Harbor is a sea destination, so its marker floats over the open water
     immediately left of the Olympiad instead of pretending to be a building. */
  .plaza-painted .pportal[data-portal="harbor"]{left:9.5%!important;top:26%!important}
  .plaza-painted .pportal[data-portal="harbor"] .pbuild{visibility:visible!important;width:40px;height:40px;margin-bottom:2px;border:1px solid rgba(137,224,245,.82);border-radius:50%;background:radial-gradient(circle at 38% 30%,rgba(111,210,235,.96),rgba(18,83,117,.96) 52%,rgba(8,39,65,.98));box-shadow:inset 0 1px rgba(255,255,255,.42),0 5px 13px rgba(3,29,49,.55),0 0 14px rgba(91,204,236,.38);filter:none}
  .plaza-painted .pportal[data-portal="harbor"] .pbuild>svg{display:none}
  .plaza-painted .pportal[data-portal="harbor"] .pbuild::before{content:"⚓";position:absolute;inset:0;display:grid;place-items:center;color:#effcff;font:22px/1 "Apple Color Emoji","Segoe UI Emoji",sans-serif;text-shadow:0 2px 3px rgba(0,30,47,.74)}
  .plaza-painted .pportal[data-portal="harbor"] .pbuild::after{left:12%;right:12%;bottom:-6px;height:8px;background:rgba(0,39,67,.34);filter:blur(4px)}
  .plaza-painted .pportal[data-portal="harbor"] .plabel{margin-top:2px!important;border-color:rgba(119,218,242,.72);background:rgba(7,43,67,.86);color:#e5fbff;box-shadow:0 3px 12px rgba(0,0,0,.5),0 0 13px rgba(78,190,255,.2)}
  .plaza-painted .pportal[data-portal="casino"]{left:50%!important;top:65%!important}
  .plaza-painted .pportal[data-portal="theater"]{left:80%!important;top:58%!important}
  .plaza-painted .pportal[data-portal="orbital"]{left:28%!important;top:19%!important}
  .plaza-painted .pportal[data-portal="orbital"] .pbuild{visibility:visible!important;width:230px;height:129px;background:url('plaza-olympus-station-v1.webp') center/contain no-repeat;filter:drop-shadow(0 8px 11px rgba(8,23,57,.55)) drop-shadow(0 0 9px rgba(90,203,255,.42));animation:orbitalBeacon 3.8s ease-in-out infinite alternate}
  .plaza-painted .pportal[data-portal="orbital"] .pbuild>svg{display:none}
  .plaza-painted .pportal[data-portal="orbital"] .plabel{margin-top:-9px!important;max-width:170px!important;border-color:rgba(112,216,255,.72);background:rgba(8,22,43,.84);color:#dff8ff;box-shadow:0 3px 12px rgba(0,0,0,.5),0 0 13px rgba(78,190,255,.2)}
  .plaza-painted .mycitadel{left:18%!important;top:76%!important}
  .plaza-painted .pstall{left:84%!important;top:75%!important}
  @keyframes orbitalBeacon{from{filter:drop-shadow(0 8px 11px rgba(8,23,57,.55)) drop-shadow(0 0 5px rgba(90,203,255,.28));transform:translateY(0)}to{filter:drop-shadow(0 11px 13px rgba(8,23,57,.58)) drop-shadow(0 0 13px rgba(90,203,255,.58));transform:translateY(-3px)}}
  /* Portrait tablets need the portrait composition too. The old 3/4 cutoff
     left iPads on the wide painting, so the cropped architecture and the
     semantic hotspot layer described two different worlds. */
  @media (max-width:700px),(max-aspect-ratio:1/1){
    .plaza-painted .plazabgwrap{background-image:url('plaza-bg-mobile-v1.jpg');background-position:center center}
    .plaza-painted .pportal[data-portal="mine"]{left:50%!important;top:29%!important}
    .plaza-painted .pportal[data-portal="arcade"]{left:17%!important;top:29%!important}
    .plaza-painted .pportal[data-portal="harbor"]{left:8.5%!important;top:25%!important}
    .plaza-painted .pportal[data-portal="harbor"] .pbuild{width:34px;height:34px}
    .plaza-painted .pportal[data-portal="harbor"] .pbuild::before{font-size:19px}
    .plaza-painted .pportal[data-portal="casino"]{left:50%!important;top:49%!important}
    .plaza-painted .pportal[data-portal="theater"]{left:82%!important;top:49%!important}
    .plaza-painted .pportal[data-portal="orbital"]{left:50%!important;top:15%!important}
    .plaza-painted .pportal[data-portal="orbital"] .pbuild{width:176px;height:99px}
    .plaza-painted .pportal[data-portal="orbital"] .plabel{margin-top:-8px!important;max-width:130px!important}
    .plaza-painted .mycitadel{left:17%!important;top:64%!important}
    .plaza-painted .pstall{left:83%!important;top:76%!important}
    .plaza-painted .pportal .plabel,.plaza-painted .pstall .plabel,.plaza-painted .mycitadel .pname{font-size:9.5px;padding:3px 6px;max-width:90px!important}
  }
  /* The rooms behind the Plaza are composed paintings too. Their stations
     remain real walk-up controls, but repeated door widgets disappear so
     each destination reads as part of the architecture in the artwork. */
  .room-painted{background:#19140d!important}
  .room-painted .plazabgwrap{background-position:center;background-size:cover;background-repeat:no-repeat}
  .room-painted .plazabgwrap .plazabg{display:none}
  .room-painted .plazafloor::before,.room-painted .plazafloor::after{display:none!important}
  .room-painted .station .stenv,.room-painted .station .sticon,.room-painted .station .stmount{visibility:hidden!important}
  .room-painted .station{border:0!important;border-radius:20px;min-width:132px;min-height:92px;background:transparent!important;box-shadow:none!important;filter:none!important}
  .room-painted .station::before{content:"";position:absolute;inset:-9px;border:1px solid transparent;border-radius:20px;background:transparent;box-shadow:none;transition:border-color .16s,background .16s,box-shadow .16s;pointer-events:none}
  .room-painted .station:hover::before,.room-painted .station:focus-visible::before{border-color:rgba(255,220,139,.94);background:rgba(255,209,104,.08);box-shadow:0 0 24px rgba(255,197,80,.46),inset 0 0 22px rgba(255,219,135,.08)}
  .room-painted .station:focus-visible{outline:none}
  .room-painted .station .stlabel,.room-painted .station.st-door .stlabel,.room-painted .station.st-wing .stlabel,.room-painted .station.st-landmark .stlabel{visibility:visible!important;display:block!important;position:absolute!important;left:50%!important;top:auto!important;bottom:-17px!important;transform:translateX(-50%)!important;width:max-content!important;height:auto!important;max-width:164px!important;min-height:0!important;margin:0!important;padding:4px 10px 5px!important;border:1px solid rgba(242,201,105,.62)!important;border-radius:999px!important;background:rgba(22,15,8,.84)!important;color:#fff1cb!important;font:800 12px/1.05 Georgia,'Times New Roman',serif!important;letter-spacing:.15px!important;white-space:nowrap!important;text-shadow:0 1px 2px #000!important;box-shadow:0 4px 12px rgba(0,0,0,.5)!important;-webkit-backdrop-filter:blur(3px)!important;backdrop-filter:blur(3px)!important}
  .room-painted .station:hover .stlabel,.room-painted .station:focus-visible .stlabel{color:#ffe69d;text-shadow:0 1px 2px #000,0 0 10px rgba(255,205,93,.8)}
  .room-painted-olympiad .plazabgwrap{background-image:url('room-bg-olympiad-desktop-v1.jpg')}
  .room-painted-stoa .plazabgwrap{background-image:url('room-bg-stoa-desktop-v1.jpg')}
  .room-painted-wargrounds .plazabgwrap{background-image:url('room-bg-wargrounds-desktop-v1.jpg')}
  .room-painted-inventors .plazabgwrap{background-image:url('room-bg-inventors-desktop-v1.jpg')}
  .room-painted-scholars .plazabgwrap{background-image:url('room-bg-scholars-desktop-v1.jpg')}
  .room-painted-mine .plazabgwrap{background-image:url('room-bg-mine-desktop-v1.jpg')}
  .room-painted-cards .plazabgwrap{background-image:url('room-bg-cards-desktop-v1.jpg')}
  .room-painted-cardhall .plazabgwrap{background-image:url('room-bg-cardhall-desktop-v1.jpg')}
  .room-painted-shipdeck .plazabgwrap{background-image:url('room-bg-shipdeck-desktop-v1.jpg')}
  .room-painted-theater .plazabgwrap{background-image:url('room-bg-theater-desktop-v1.jpg')}
  .room-painted-palace .plazabgwrap{background-image:url('room-bg-palace-desktop-v1.jpg')}
  .room-painted-pethouse .plazabgwrap{background-image:url('room-bg-pethouse-desktop-v1.jpg')}
  .room-painted-wardrobe .plazabgwrap{background-image:url('room-bg-wardrobe-desktop-v1.jpg')}
  .room-painted-club .plazabgwrap{background-image:url('room-bg-club-desktop-v1.jpg')}
  .room-painted-cinema .plazabgwrap{background-image:url('room-bg-cinema-desktop-v1.jpg')}
  .room-painted-academy .plazabgwrap{background-image:url('room-bg-academy-desktop-v1.jpg')}
  .room-painted-court .plazabgwrap{background-image:url('room-bg-court-desktop-v1.jpg')}
  .room-painted-harbor .plazabgwrap{background-image:url('room-bg-harbor-desktop-v1.jpg')}
  .room-painted-forum .plazabgwrap{background-image:url('room-bg-forum-desktop-v1.jpg')}
  .room-painted-archives .plazabgwrap{background-image:url('room-bg-archives-desktop-v1.jpg')}
  .room-painted-orbital .plazabgwrap{background-image:url('room-bg-orbital-desktop-v1.jpg')}
  /* The Olympiad's inner districts are fully composed places. Contest nodes
     are large invisible walk targets over the pavilion, table, or gate that
     represents that game in the painting. */
  .room-painted-stoa .roomtitle,.room-painted-wargrounds .roomtitle,.room-painted-inventors .roomtitle,.room-painted-scholars .roomtitle{color:#fff3ca;text-shadow:0 2px 3px #28180b,0 0 18px rgba(255,199,91,.48)}
  .room-painted-stoa .station,.room-painted-wargrounds .station,.room-painted-inventors .station,.room-painted-scholars .station{min-width:150px;min-height:102px}
  .room-painted-stoa .station .stlabel,.room-painted-wargrounds .station .stlabel,.room-painted-inventors .station .stlabel,.room-painted-scholars .station .stlabel{width:142px!important;max-width:142px!important;white-space:normal!important;text-align:center!important}
  .room-painted-wargrounds .station{min-width:128px;min-height:96px}
  .room-painted-wargrounds .station[data-scene="pankration"]{left:50%!important;top:34%!important}
  .room-painted-wargrounds .station[data-scene="dominion"]{left:12%!important;top:68%!important}
  .room-painted-wargrounds .station[data-scene="phalanx"]{left:37%!important;top:69%!important}
  .room-painted-inventors .station{min-width:128px;min-height:96px}
  .room-painted-inventors .station[data-scene="cookhouse"]{left:12%!important;top:42%!important}
  .room-painted-inventors .station[data-scene="wanderers"]{left:12%!important;top:42%!important}
  .room-painted-inventors .station[data-scene="pontifex"]{left:37%!important;top:40%!important}
  .room-painted-inventors .station[data-scene="daedalus"]{left:63%!important;top:41%!important}
  .room-painted-inventors .station[data-scene="tarpits"]{left:21%!important;top:68%!important}
  .room-painted-inventors .station[data-scene="amphora"]{left:79%!important;top:67%!important}
  .room-painted-scholars .station[data-scene="lexicon"]{left:18%!important;top:41%!important}
  .room-painted-scholars .station[data-scene="petteia"]{left:50%!important;top:39%!important}
  .room-painted-scholars .station[data-scene="pente"]{left:82%!important;top:41%!important}
  .room-painted-scholars .station[data-scene="records"]{left:24%!important;top:68%!important}
  .room-painted-wargrounds .station[data-scene="phalanx"] .stlabel{top:40px!important;bottom:auto!important}
  /* The Pool Hall is a proper destination now: a composed walnut-and-marble
     club with its real tables serving as the controls. */
  .room-painted-poolhall .plazabgwrap{background-image:url('room-bg-poolhall-v1.webp');background-position:center center}
  .room-painted-poolhall .plazabgwrap::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 53%,rgba(255,206,105,.1),transparent 35%),linear-gradient(90deg,rgba(5,3,2,.24),transparent 20% 80%,rgba(5,3,2,.28));pointer-events:none}
  .room-painted-poolhall .plazabgwrap::after{content:"";position:absolute;inset:6% 11% 30%;background-image:radial-gradient(circle,rgba(255,224,151,.56) 0 1px,transparent 1.6px);background-size:83px 71px;opacity:.08;mix-blend-mode:screen;animation:poolHallMotes 12s ease-in-out infinite alternate;pointer-events:none}
  .room-painted-poolhall .roomtitle{color:#fff0c2;text-shadow:0 2px 3px #090503,0 0 18px rgba(225,167,69,.48)}
  .room-painted-poolhall .station[data-scene="live-pool"]{left:50%!important;top:63%!important;min-width:410px;min-height:154px}
  .room-painted-poolhall .station[data-scene="pool-cups"]{left:18%!important;top:63%!important;min-width:220px;min-height:126px}
  .room-painted-poolhall .station[data-scene="practice-pool"]{left:85%!important;top:63%!important;min-width:220px;min-height:126px}
  .room-painted-poolhall .station[data-scene="live-pool"]::before,.room-painted-poolhall .station[data-scene="pool-cups"]::before,.room-painted-poolhall .station[data-scene="practice-pool"]::before{inset:-4px;border-radius:15px}
  .room-painted-poolhall .station .stlabel,.room-painted-poolhall .station.st-tablet .stlabel{bottom:-19px!important;padding:6px 13px 7px!important;border:1px solid rgba(221,174,78,.74)!important;border-radius:5px!important;background:linear-gradient(180deg,rgba(49,34,20,.94),rgba(17,15,12,.96))!important;color:#fff0c1!important;font:900 11px/1 Georgia,'Times New Roman',serif!important;letter-spacing:.8px!important;text-transform:uppercase!important;box-shadow:inset 0 1px rgba(255,239,184,.13),0 5px 15px rgba(0,0,0,.58)!important}
  .room-painted-poolhall .station .stlabel::before{content:"◆";margin-right:7px;color:#d5a640;font-size:8px}
  @keyframes poolHallMotes{from{transform:translateY(5px);opacity:.05}to{transform:translateY(-9px);opacity:.11}}
  .room-painted-club .roomtitle,.room-painted-cinema .roomtitle{color:#fff0c8;text-shadow:0 2px 3px #080711,0 0 18px rgba(104,87,255,.42)}
  .room-painted-academy .roomtitle,.room-painted-court .roomtitle,.room-painted-harbor .roomtitle,.room-painted-forum .roomtitle,.room-painted-archives .roomtitle{color:#fff4cf;text-shadow:0 2px 3px #38415a,0 0 18px rgba(255,201,102,.52)}
  .room-painted-orbital .roomtitle{color:#dff8ff;text-shadow:0 2px 3px #07152b,0 0 18px rgba(76,198,255,.72)}
  .room-painted-orbital .plazabgwrap::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 53%,rgba(73,201,255,.16),transparent 19%),linear-gradient(112deg,rgba(255,222,155,.08),transparent 26%,rgba(63,177,255,.07) 74%,transparent);mix-blend-mode:screen;pointer-events:none;animation:orbitalRoomPulse 5.2s ease-in-out infinite alternate}
  .room-painted-orbital .station::before{border-color:rgba(98,213,255,.16);box-shadow:0 0 20px rgba(63,178,255,.12),inset 0 0 16px rgba(77,192,255,.08)}
  .room-painted-orbital .station .stlabel{border-color:rgba(103,216,255,.62)!important;background:rgba(5,20,40,.87)!important;color:#e5faff!important}
  @keyframes orbitalRoomPulse{from{opacity:.48;filter:brightness(.98)}to{opacity:.82;filter:brightness(1.05)}}
  .room-painted-pethouse .plazabgwrap::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 41%,rgba(255,220,142,.18),transparent 31%),radial-gradient(ellipse at 84% 47%,rgba(63,208,255,.13),transparent 24%);mix-blend-mode:screen;opacity:.58;animation:pethouseGlow 6.5s ease-in-out infinite alternate}
  .room-painted-pethouse .plazabgwrap::after{content:"";position:absolute;left:72%;top:18%;width:23%;height:35%;background:repeating-radial-gradient(circle at 40% 70%,rgba(185,240,255,.32) 0 1px,transparent 2px 16px);filter:blur(.2px);opacity:.22;animation:pethouseBubbles 9s linear infinite}
  .room-painted-pethouse .roomtitle{color:#fff1c7;text-shadow:0 2px 3px #16100b,0 0 16px rgba(90,205,255,.42)}
  .room-painted-pethouse .station[data-scene="menagerie"]{left:20%!important;top:55%!important}
  .room-painted-pethouse .station[data-scene="playgarden"]{left:50%!important;top:56%!important}
  .room-painted-pethouse .station[data-scene="petleague"]{left:38%!important;top:37%!important;z-index:540!important}
  .room-painted-pethouse .station[data-scene="gubbin-pen"]{left:8%!important;top:38%!important;z-index:530!important}
  /* Keep the glass conservatory and Inspector Cat in distinct walk-up zones.
     Inspector Cat's bounded painted-room target sits below the Aquarium, clear
     of both its label and the Play Garden target. */
  .room-painted-pethouse .station[data-scene="aquarium"]{left:80%!important;top:49%!important;z-index:650!important}
  .room-painted-pethouse .station[data-scene="inspector-cat"]{left:82%!important;top:82%!important;width:132px;height:92px;z-index:820!important}
  .room-painted-pethouse .station[data-scene="menagerie"]::before{border-radius:34% 34% 18px 18px}
  .room-painted-pethouse .station[data-scene="aquarium"]::before{border-color:rgba(123,218,255,.18);box-shadow:0 0 22px rgba(55,183,238,.12),inset 0 0 18px rgba(88,203,247,.08)}
  @keyframes pethouseGlow{from{opacity:.42;filter:brightness(.98)}to{opacity:.72;filter:brightness(1.06)}}
  @keyframes pethouseBubbles{from{transform:translateY(18px);opacity:.12}50%{opacity:.28}to{transform:translateY(-28px);opacity:.08}}
  /* Menagerie sanctuary: care is a tactile collection loop, not a utility modal. */
  .boardcard.pet-sanctuary{position:relative;width:min(1040px,96vw)!important;max-width:1040px!important;height:min(850px,92dvh);max-height:92dvh!important;padding:0!important;overflow:hidden!important;border:2px solid rgba(237,195,101,.62)!important;border-image:none!important;border-radius:22px!important;background:radial-gradient(circle at 74% 5%,rgba(95,205,203,.18),transparent 28%),linear-gradient(160deg,#34251b 0%,#1d1718 48%,#132428 100%)!important;color:#f1e4c7!important;box-shadow:0 30px 90px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,244,199,.12)!important}
  .boardcard.pet-sanctuary>div:first-child{position:relative;z-index:4;margin:0!important;padding:13px 17px 11px;border-bottom:1px solid rgba(238,196,104,.3);background:linear-gradient(180deg,rgba(63,42,26,.97),rgba(34,25,22,.93));box-shadow:0 5px 20px rgba(0,0,0,.22)}
  .boardcard.pet-sanctuary>div:first-child h3{margin:0!important;padding:0!important;background:none!important;color:#ffe3a0!important;font-family:var(--serif);letter-spacing:.25px;text-align:left;box-shadow:none;text-shadow:0 2px 4px rgba(0,0,0,.55)}
  .pet-sanctuary-body{height:calc(100% - 57px);overflow:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 50% 0,rgba(238,190,99,.12),transparent 42%),linear-gradient(160deg,#261d19,#142629 72%,#102025);color:#f1e4c7;scrollbar-color:#987138 #211811}
  .pet-house-hero{position:relative;display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.25fr);gap:18px;align-items:center;min-height:210px;padding:24px clamp(17px,4vw,44px) 18px;overflow:hidden;background:radial-gradient(circle at 18% 43%,rgba(255,218,134,.2),transparent 31%),linear-gradient(120deg,rgba(104,66,37,.53),rgba(16,48,51,.38));border-bottom:1px solid rgba(235,195,110,.2)}
  .pet-house-hero::after{content:"";position:absolute;right:-9%;bottom:-72px;width:56%;height:150px;border-radius:50%;background:radial-gradient(ellipse,rgba(73,171,164,.22),transparent 68%);pointer-events:none}
  .pet-hero-stage{position:relative;display:grid;place-items:center;min-height:160px}
  .pet-hero-halo{position:absolute;width:145px;height:145px;border-radius:50%;border:1px solid rgba(255,225,148,.32);background:radial-gradient(circle,rgba(255,219,124,.22),rgba(89,181,169,.08) 52%,transparent 70%);box-shadow:0 0 34px rgba(255,193,84,.15);animation:petHalo 3.6s ease-in-out infinite}
  .pet-hero-icon{position:relative;z-index:1;border:0;background:transparent;color:#fff;font-size:clamp(74px,10vw,112px);line-height:1;cursor:pointer;filter:drop-shadow(0 10px 8px rgba(0,0,0,.48));transition:transform .2s ease,filter .2s ease;touch-action:manipulation}
  .pet-hero-icon:hover,.pet-hero-icon:focus-visible{transform:translateY(-5px) scale(1.05);filter:drop-shadow(0 12px 10px rgba(0,0,0,.5)) drop-shadow(0 0 13px rgba(255,224,147,.42))}
  .pet-hero-icon.pet-bop{animation:petBop .62s cubic-bezier(.25,.8,.35,1)}
  .pet-hero-copy{position:relative;z-index:1;min-width:0}.pet-hero-kicker{color:#8de3d5;font-weight:900;font-size:11px;letter-spacing:1.4px;text-transform:uppercase}.pet-hero-name{margin:3px 0 4px;color:#fff2c9;font:900 clamp(25px,4vw,39px)/1 var(--serif);text-shadow:0 3px 8px #000}.pet-hero-lore{max-width:580px;color:#dfd2b5;font-size:13px;line-height:1.45}
  .pet-summary-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.pet-summary-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid rgba(241,206,126,.25);border-radius:999px;background:rgba(8,15,16,.42);color:#f2dfb4;font-size:11.5px;font-weight:800}.pet-summary-chip.ready{border-color:rgba(102,219,170,.46);color:#aef0ca}.pet-summary-chip.rare{border-color:rgba(198,137,255,.48);color:#e7c1ff}
  .pet-progress{height:9px;margin-top:10px;border-radius:999px;overflow:hidden;background:rgba(0,0,0,.36);box-shadow:inset 0 1px 3px rgba(0,0,0,.65)}.pet-progress>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d89e32,#ffe080 48%,#68d8b7);box-shadow:0 0 9px rgba(255,215,112,.4);transition:width .45s ease}
  .pet-tabs{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px clamp(12px,3vw,24px);background:rgba(22,18,17,.94);border-bottom:1px solid rgba(236,194,104,.19);backdrop-filter:blur(9px)}.pet-tab{min-height:43px;border:1px solid rgba(226,185,94,.25);border-radius:11px;background:rgba(255,255,255,.035);color:#d9caaa;font-weight:900;cursor:pointer}.pet-tab.active{color:#26180d;border-color:#e0b04f;background:linear-gradient(180deg,#f1d27c,#bc7c2d);box-shadow:0 4px 14px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.5)}
  .pet-pane{padding:17px clamp(12px,3vw,25px) 27px}.pet-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 10px}.pet-section-head h4{margin:0;color:#ffe8ae;font:900 21px/1.15 var(--serif)}.pet-section-head span{color:#aa9e88;font-size:11.5px;text-align:right}
  .pet-adventures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:16px}.pet-adventure{display:flex;align-items:center;gap:11px;min-height:66px;padding:10px 13px;border:1px solid rgba(116,207,190,.28);border-radius:13px;background:linear-gradient(135deg,rgba(43,111,103,.27),rgba(18,48,58,.45));color:#e9f7e7;text-align:left;cursor:pointer}.pet-adventure:last-child{border-color:rgba(95,196,234,.34);background:linear-gradient(135deg,rgba(25,104,137,.35),rgba(14,40,68,.5))}.pet-adventure b{display:block;color:#fff0be}.pet-adventure small{display:block;color:#b8cfc4;margin-top:2px}.pet-adventure>span{font-size:31px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.4))}.pet-adventure:hover{transform:translateY(-2px);filter:brightness(1.12)}
  .pet-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:10px}.pet-card{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;padding:13px;border:1px solid rgba(226,185,93,.24);border-radius:15px;background:linear-gradient(145deg,rgba(83,56,34,.42),rgba(13,28,29,.62));box-shadow:inset 0 1px rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.16);overflow:hidden}.pet-card.active{border-color:#e7bd5d;box-shadow:0 0 0 1px rgba(231,189,93,.24),0 9px 22px rgba(0,0,0,.25)}.pet-card.rare{background:radial-gradient(circle at 10% 10%,rgba(193,122,255,.16),transparent 38%),linear-gradient(145deg,rgba(76,48,70,.54),rgba(15,27,35,.68));border-color:rgba(207,153,255,.38)}
  .pet-card-icon{display:grid;place-items:center;align-self:start;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle,#e7bd6a33,#65cdb51a 60%,transparent 61%);font-size:48px;filter:drop-shadow(0 5px 4px rgba(0,0,0,.45));cursor:pointer}.pet-card-icon.pet-bop{animation:petBop .62s cubic-bezier(.25,.8,.35,1)}.pet-card-main{min-width:0}.pet-card-name{display:flex;align-items:center;gap:6px;color:#ffedbd;font-weight:900;font-size:17px}.pet-card-name button{margin-left:auto;border:0;background:none;color:#d5c295;cursor:pointer;font-size:13px}.pet-card-meta{margin-top:2px;color:#bfb39a;font-size:11px;line-height:1.35}.pet-care-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.pet-care-actions .btn{min-height:34px;padding:6px 8px;font-size:11.5px}.pet-walk-btn{position:absolute;right:10px;top:9px;z-index:1;border:0;background:rgba(7,12,12,.44);color:#f3cd6e;border-radius:999px;width:31px;height:31px;font-size:17px;cursor:pointer}.pet-walk-btn.active{background:#dfaa3e;color:#231408}
  .pet-quest{grid-column:1/-1;padding:9px 10px;border:1px solid rgba(111,211,170,.25);border-radius:10px;background:rgba(38,105,80,.14);color:#d9ead9;font-size:12px}.pet-quest strong{color:#aef0c9}.pet-quest-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.pet-quest-actions .btn{padding:5px 8px;font-size:11px}
  .pet-egg{grid-template-columns:82px minmax(0,1fr);background:radial-gradient(circle at 13% 38%,rgba(255,218,132,.19),transparent 24%),linear-gradient(145deg,rgba(83,57,37,.48),rgba(36,28,39,.67))}.pet-egg .pet-card-icon{font-size:54px;animation:eggWobble 2.4s ease-in-out infinite}.pet-countdown{color:#ffd989;font-weight:900;font-size:13px;margin:5px 0}.pet-nursery-call{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 16px;margin-bottom:13px;border:1px solid rgba(226,184,93,.34);border-radius:14px;background:radial-gradient(circle at 85% 50%,rgba(255,221,137,.14),transparent 27%),rgba(75,49,31,.33)}.pet-nursery-call h4{margin:0 0 3px;color:#ffe4a0}.pet-nursery-call p{margin:0;color:#c6b89c;font-size:12px;line-height:1.4}
  .pet-adopt-grid,.pet-discovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px}.pet-adopt-species,.pet-discovery{position:relative;min-height:132px;padding:11px 9px;border:1px solid rgba(224,185,98,.23);border-radius:13px;background:rgba(255,255,255,.035);color:#e7d8b8;text-align:center;cursor:pointer}.pet-adopt-species:hover,.pet-adopt-species.selected{border-color:#f0c660;background:rgba(216,161,57,.14);transform:translateY(-2px)}.pet-adopt-species .ico,.pet-discovery .ico{font-size:43px;line-height:1.1;filter:drop-shadow(0 4px 4px rgba(0,0,0,.42))}.pet-adopt-species b,.pet-discovery b{display:block;margin-top:4px;color:#f8e6b4}.pet-adopt-species small,.pet-discovery small{display:block;margin-top:3px;color:#aa9e88;font-size:10.5px;line-height:1.25}.pet-discovery.locked .ico{filter:grayscale(1) brightness(.35);opacity:.46}.pet-discovery.locked b{color:#766f66}.pet-discovery.rare{border-color:rgba(197,132,255,.28);background:rgba(100,52,130,.09)}.pet-rarity{position:absolute;right:6px;top:6px;border-radius:999px;padding:2px 6px;background:rgba(13,8,18,.68);color:#dbb4ff;font-size:8px;font-weight:900;letter-spacing:.7px}
  .pet-field-summary{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,minmax(95px,.28fr));gap:9px;align-items:stretch;margin-bottom:11px}.pet-field-title,.pet-field-stat{border:1px solid rgba(225,186,99,.26);border-radius:15px;background:linear-gradient(145deg,rgba(81,54,36,.55),rgba(14,37,39,.72));box-shadow:inset 0 1px rgba(255,255,255,.04)}.pet-field-title{padding:14px 16px}.pet-field-title h4{margin:0;color:#ffe3a0;font:900 24px var(--serif)}.pet-field-title p{margin:5px 0 0;color:#bdcfc1;font-size:11px;line-height:1.45}.pet-field-stat{display:grid;place-content:center;padding:9px;text-align:center}.pet-field-stat b{color:#ffe199;font:900 21px var(--serif)}.pet-field-stat small{margin-top:2px;color:#9fb5aa;font-size:9px;text-transform:uppercase;letter-spacing:.75px}.pet-field-layout{display:grid;grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);gap:10px;align-items:start}.pet-field-catalog{display:grid;gap:6px;max-height:650px;overflow:auto;padding-right:3px}.pet-field-entry{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center;min-height:67px;padding:8px;border:1px solid rgba(225,187,101,.2);border-radius:12px;background:linear-gradient(145deg,rgba(65,46,38,.54),rgba(17,38,41,.65));color:#e8ddc7;text-align:left;cursor:pointer}.pet-field-entry:hover,.pet-field-entry.on{border-color:#edc66c;background:linear-gradient(145deg,rgba(101,67,38,.7),rgba(20,60,59,.72));outline:none}.pet-field-entry.rare{border-color:rgba(202,146,255,.3);background:linear-gradient(145deg,rgba(77,45,84,.54),rgba(24,35,53,.7))}.pet-field-entry.locked{filter:saturate(.5)}.pet-field-entry-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle,rgba(243,202,112,.18),rgba(16,31,34,.66));font-size:30px;filter:drop-shadow(0 4px 3px rgba(0,0,0,.42))}.pet-field-entry.locked .pet-field-entry-icon{filter:grayscale(1) brightness(.55);opacity:.64}.pet-field-entry-copy{min-width:0}.pet-field-entry-copy b,.pet-field-entry-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pet-field-entry-copy b{color:#ffebbb;font-size:11px}.pet-field-entry-copy small{margin-top:2px;color:#a8b7ad;font-size:8.5px}.pet-field-pips{display:flex;gap:3px;margin-top:6px}.pet-field-pips i{width:12px;height:4px;border-radius:999px;background:#28363a}.pet-field-pips i.on{background:linear-gradient(90deg,#75ceb0,#efca6d);box-shadow:0 0 5px rgba(237,196,95,.35)}.pet-field-dossier{min-width:0;overflow:hidden;border:1px solid rgba(228,190,104,.27);border-radius:17px;background:radial-gradient(circle at 88% 0,rgba(88,184,160,.12),transparent 33%),linear-gradient(155deg,rgba(76,51,38,.72),rgba(14,36,41,.9));box-shadow:0 14px 32px rgba(0,0,0,.23)}.pet-field-hero{display:grid;grid-template-columns:110px minmax(0,1fr);gap:13px;align-items:center;padding:17px;border-bottom:1px solid rgba(227,190,105,.17)}.pet-field-portrait{display:grid;place-items:center;width:106px;height:106px;border:1px solid rgba(245,207,119,.31);border-radius:50%;background:radial-gradient(circle,rgba(235,200,111,.22),rgba(32,71,68,.34) 60%,rgba(9,25,29,.75) 61%);font-size:70px;filter:drop-shadow(0 7px 5px rgba(0,0,0,.42))}.pet-field-portrait.locked{filter:grayscale(1) brightness(.55)}.pet-field-copy h4{margin:0;color:#ffe6a8;font:900 27px var(--serif)}.pet-field-copy p{margin:5px 0 8px;color:#c0d0c6;font-size:11px;line-height:1.48}.pet-field-chips,.pet-field-roster{display:flex;flex-wrap:wrap;gap:5px}.pet-field-chips span,.pet-field-roster span{padding:4px 7px;border:1px solid rgba(112,204,177,.21);border-radius:999px;background:rgba(20,69,63,.36);color:#c8eadc;font-size:8.5px;font-weight:800}.pet-field-chips span.rare{border-color:rgba(204,150,255,.35);background:rgba(91,48,112,.31);color:#e5c3ff}.pet-field-body{display:grid;grid-template-columns:minmax(0,.72fr) minmax(270px,1.28fr);gap:11px;padding:13px}.pet-field-notes,.pet-field-research{min-width:0;padding:12px;border:1px solid rgba(229,192,108,.17);border-radius:13px;background:rgba(8,26,29,.34)}.pet-field-notes h5,.pet-field-research h5{margin:0 0 7px;color:#f6d98e;font:900 15px var(--serif)}.pet-field-personality{padding:9px;border-radius:11px;background:linear-gradient(125deg,rgba(80,119,95,.2),rgba(94,66,45,.23));color:#d8e4d9;font-size:10px;line-height:1.45}.pet-field-personality b{display:block;margin-bottom:3px;color:#fff0be;font-size:12px}.pet-field-facts{display:grid;gap:6px;margin-top:8px}.pet-field-fact{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:start;padding:7px;border-bottom:1px solid rgba(226,192,111,.1);color:#baccc1;font-size:9px;line-height:1.38}.pet-field-fact b{display:block;color:#eed89f;font-size:10px}.pet-field-seals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.pet-field-seal{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;min-height:69px;padding:8px;border:1px solid rgba(223,186,100,.15);border-radius:10px;background:rgba(255,255,255,.025);opacity:.64}.pet-field-seal.complete{border-color:rgba(105,207,172,.35);background:rgba(50,126,99,.14);opacity:1}.pet-field-seal>span{font-size:23px;filter:grayscale(.8)}.pet-field-seal.complete>span{filter:none}.pet-field-seal b,.pet-field-seal small{display:block}.pet-field-seal b{color:#e6d6b4;font-size:10px}.pet-field-seal.complete b{color:#baf0d7}.pet-field-seal small{margin-top:2px;color:#91a69c;font-size:8px;line-height:1.28}.pet-field-seal em{display:block;margin-top:4px;color:#d8be79;font-size:8px;font-style:normal;font-weight:900}.pet-field-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;margin-top:9px;padding:10px;border:1px solid rgba(239,198,103,.28);border-radius:11px;background:linear-gradient(120deg,rgba(110,73,38,.34),rgba(32,93,77,.28))}.pet-field-next b,.pet-field-next small{display:block}.pet-field-next b{color:#ffe19b;font-size:11px}.pet-field-next small{margin-top:2px;color:#bdd0c3;font-size:8.5px;line-height:1.35}.pet-field-complete{padding:12px;border:1px solid rgba(111,217,179,.35);border-radius:11px;background:rgba(53,135,105,.16);color:#bdf1dc;text-align:center;font-size:10px}.pet-field-law{margin:10px 0 0;color:#82998e;font-size:8.5px;line-height:1.4;text-align:center}.pet-field-locked-copy{padding:16px;text-align:center}.pet-field-locked-copy h5{margin:0;color:#ffe3a0;font:900 20px var(--serif)}.pet-field-locked-copy p{max-width:520px;margin:7px auto 12px;color:#b8c8bf;font-size:10px;line-height:1.5}
  /* ── The first companion ── The one screen a brand-new player meets in the Pet
     House, so it is a lit room with three creatures in it rather than a form.
     Everything is procedural: no new art, no new assets. */
  .pet-first{display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;
    min-height:100%;padding:26px clamp(14px,4vw,40px) 34px;text-align:center;
    background:radial-gradient(ellipse at 50% 42%,rgba(255,214,140,.11),transparent 64%)}
  .pet-first-kicker{color:#c9a353;font:800 10px/1 system-ui,sans-serif;letter-spacing:.24em;text-transform:uppercase}
  .pet-first-head h4{margin:11px 0 7px;color:#f6e5bc;font:700 clamp(21px,3vw,30px)/1.12 Georgia,'Times New Roman',serif}
  .pet-first-head p{max-width:47ch;margin:0 auto;color:#bdb3a0;font-size:13px;line-height:1.5}
  .pet-first-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.6vw,16px);margin:24px auto 0;max-width:760px}
  .pet-first-card{appearance:none;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    min-height:264px;padding:26px 14px 20px;border:1px solid rgba(216,178,99,.24);border-radius:18px;
    background:linear-gradient(170deg,rgba(38,33,25,.72),rgba(12,14,18,.86));color:#e8dcc2;cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .3s ease}
  .pet-first-card:hover,.pet-first-card:focus-visible{transform:translateY(-4px);border-color:#efc668;outline:none;
    box-shadow:0 16px 40px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,238,196,.08)}
  .pet-first-card b{color:#f7e7b8;font:700 17px Georgia,'Times New Roman',serif}
  .pet-first-card small{color:#a9a08f;font-size:11px;line-height:1.35}
  .pet-first-lore{margin-top:7px;color:#8a8375;font-size:9.5px;font-style:italic;line-height:1.3}
  .pet-first-card.picked{border-color:#ffd777;box-shadow:0 20px 52px rgba(0,0,0,.58),inset 0 0 0 1px rgba(255,222,150,.22);transform:translateY(-6px) scale(1.03)}
  .pet-first-card.dimmed{opacity:.34;filter:saturate(.5)}
  /* The creature breathes on its own, and perks up when noticed. */
  .pet-first-creature{font-size:82px;line-height:1;filter:drop-shadow(0 8px 10px rgba(0,0,0,.5));animation:petbreathe 3.4s ease-in-out infinite}
  @keyframes petbreathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.035)}}
  @keyframes petwake{0%{transform:scale(1)}30%{transform:scale(1.16) rotate(-5deg)}62%{transform:scale(.98) rotate(3deg)}100%{transform:scale(1)}}
  .pet-first-creature.awake{animation:petwake .44s cubic-bezier(.2,.85,.3,1)}
  .pet-first-foot{margin-top:20px;color:#8f8879;font-size:11px}
  .pet-first-skip{appearance:none;display:block;margin:9px auto 0;padding:6px 12px;border:0;border-radius:999px;
    background:transparent;color:#a9925f;font:600 11px system-ui,sans-serif;text-decoration:underline;cursor:pointer}
  .pet-first-skip:hover,.pet-first-skip:focus-visible{color:#e6c47a;outline:none}
  .pet-first-name{max-width:380px;margin:26px auto 0;text-align:left}
  .pet-first-label{display:block;margin-bottom:6px;color:#c9a353;font:800 9.5px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase}
  .pet-first-input{width:100%;min-height:52px;padding:11px 14px;border:1px solid rgba(227,187,99,.36);border-radius:12px;
    background:rgba(0,0,0,.32);color:#fff2c9;font:700 18px Georgia,'Times New Roman',serif}
  .pet-first-input:focus{border-color:#f0c665;outline:none;box-shadow:0 0 0 3px rgba(240,198,101,.16)}
  .pet-first-hint{margin-top:7px;color:#8f8879;font-size:10.5px;line-height:1.4}
  .pet-first-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:20px}
  .pet-first-actions .btn{min-height:50px;min-width:190px}
  @media(max-width:650px){.pet-first{padding:18px 12px 26px}.pet-first-row{grid-template-columns:1fr;gap:8px;margin-top:16px}
    .pet-first-card{flex-direction:row;justify-content:flex-start;gap:13px;min-height:0;padding:12px 14px;text-align:left}
    .pet-first-card b{font-size:15px}.pet-first-creature{font-size:40px;animation-duration:4s}
    .pet-first-lore{display:none}.pet-first-actions .btn{width:100%;min-width:0}}
  @media(prefers-reduced-motion:reduce){.pet-first-creature,.pet-first-creature.awake{animation:none}
    .pet-first-card:hover,.pet-first-card.picked{transform:none}}
  .pet-adopt-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px;margin-top:11px}.pet-adopt-form input{min-width:0;border:1px solid rgba(227,187,99,.32);border-radius:10px;background:rgba(0,0,0,.3);color:#fff0c4;padding:10px 12px;font:inherit}.pet-empty{padding:24px;border:1px dashed rgba(233,193,104,.28);border-radius:14px;text-align:center;color:#c9bda4;background:rgba(255,255,255,.025)}
  .pet-heart{position:fixed;z-index:7000;pointer-events:none;font-size:20px;animation:petHeart .9s ease-out forwards;filter:drop-shadow(0 3px 3px rgba(0,0,0,.4))}
  @keyframes petHalo{50%{transform:scale(1.07);opacity:.65}}@keyframes petBop{0%{transform:scale(1)}25%{transform:translateY(-14px) rotate(-7deg) scale(1.12)}53%{transform:translateY(2px) rotate(6deg) scale(.98)}76%{transform:translateY(-5px) rotate(-2deg) scale(1.04)}100%{transform:scale(1)}}@keyframes petHeart{0%{transform:translate(-50%,0) scale(.55);opacity:0}20%{opacity:1}100%{transform:translate(calc(-50% + var(--drift)), -76px) scale(1.3) rotate(var(--turn));opacity:0}}@keyframes eggWobble{0%,70%,100%{transform:rotate(0)}76%{transform:rotate(-7deg)}83%{transform:rotate(8deg)}90%{transform:rotate(-4deg)}}
  @media(max-width:650px){.pet-sanctuary-ovl{padding:0!important}.boardcard.pet-sanctuary{width:100vw!important;max-width:100vw!important;height:100dvh;max-height:100dvh!important;border:0!important;border-radius:0!important}.pet-sanctuary-body{height:calc(100% - 54px)}.pet-house-hero{grid-template-columns:112px minmax(0,1fr);gap:7px;min-height:174px;padding:14px 13px}.pet-hero-stage{min-height:125px}.pet-hero-halo{width:105px;height:105px}.pet-hero-icon{font-size:72px}.pet-hero-name{font-size:25px}.pet-hero-lore{font-size:11.5px;line-height:1.32}.pet-summary-row{gap:4px;margin-top:8px}.pet-summary-chip{font-size:10px;padding:4px 6px}.pet-tabs{padding:7px}.pet-tab{min-height:39px;font-size:11px}.pet-pane{padding:12px 8px 22px}.pet-adventures{gap:6px}.pet-adventure{padding:8px;min-height:58px}.pet-adventure>span{font-size:25px}.pet-adventure small{font-size:10px}.pet-card-grid{grid-template-columns:1fr}.pet-card{grid-template-columns:64px minmax(0,1fr);padding:10px}.pet-card-icon{width:60px;height:60px;font-size:41px}.pet-nursery-call{grid-template-columns:1fr}.pet-nursery-call .btn{width:100%}.pet-adopt-grid,.pet-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pet-adopt-species,.pet-discovery{min-height:125px;padding:9px 7px}.pet-adopt-species .ico,.pet-discovery .ico{font-size:38px}.pet-adopt-form{grid-template-columns:1fr}.pet-adopt-form .btn{width:100%}}
  @media(max-width:760px){.pet-field-summary{grid-template-columns:repeat(3,1fr)}.pet-field-title{grid-column:1/-1}.pet-field-title h4{font-size:21px}.pet-field-layout{grid-template-columns:1fr}.pet-field-catalog{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;padding:0}.pet-field-entry{min-height:62px}.pet-field-hero{grid-template-columns:82px minmax(0,1fr);padding:12px}.pet-field-portrait{width:78px;height:78px;font-size:52px}.pet-field-copy h4{font-size:22px}.pet-field-body{grid-template-columns:1fr;padding:9px}.pet-field-seals{grid-template-columns:1fr}.pet-field-next{grid-template-columns:1fr}.pet-field-next .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.pet-hero-halo,.pet-egg .pet-card-icon{animation:none}.pet-hero-icon.pet-bop,.pet-card-icon.pet-bop{animation:none}.pet-heart{display:none}.pet-game-coach{transition:none}}
  /* Companion regalia is one composed silhouette everywhere: Plaza follower,
     Menagerie, Atelier, and game companions all share these three layers. */
  .pet-dressed{--pet-preview:72px;position:relative;display:inline-grid;place-items:center;width:var(--pet-preview);height:var(--pet-preview);isolation:isolate;line-height:1}
  .pet-dressed-aspect-aura{position:absolute;z-index:0;inset:7%;border:2px solid transparent;border-radius:50%;opacity:0;pointer-events:none}.pet-dressed-aspect-seal{position:absolute;z-index:4;right:-7%;top:4%;display:none;place-items:center;width:calc(var(--pet-preview)*.27);height:calc(var(--pet-preview)*.27);border:1px solid rgba(255,239,188,.72);border-radius:50%;background:rgba(22,25,27,.9);font-size:calc(var(--pet-preview)*.15);box-shadow:0 4px 11px rgba(0,0,0,.46)}
  .pet-dressed[data-evolution="sunforged"] .pet-dressed-aspect-aura{opacity:1;border-color:rgba(255,202,81,.78);background:radial-gradient(circle,rgba(255,190,51,.26),transparent 66%);box-shadow:0 0 calc(var(--pet-preview)*.24) rgba(255,176,43,.55)}.pet-dressed[data-evolution="moonwoven"] .pet-dressed-aspect-aura{opacity:1;border-color:rgba(171,207,255,.74);background:radial-gradient(circle,rgba(112,132,232,.26),transparent 66%);box-shadow:0 0 calc(var(--pet-preview)*.24) rgba(130,153,255,.5)}.pet-dressed[data-evolution="heartbloom"] .pet-dressed-aspect-aura{opacity:1;border-color:rgba(255,164,204,.76);background:radial-gradient(circle,rgba(255,126,181,.22),transparent 66%);box-shadow:0 0 calc(var(--pet-preview)*.24) rgba(255,120,178,.48)}.pet-dressed:not([data-evolution="natural"]) .pet-dressed-aspect-seal{display:grid}
  .pet-dressed-body{position:relative;z-index:2;font-size:calc(var(--pet-preview)*.68);filter:drop-shadow(0 6px 5px rgba(0,0,0,.46))}
  /* Authored species art (today: the OSWT Gubbin impostor sheet) replaces the
     emoji glyph wherever a companion is painted. The 1em box inherits each
     site's own portrait sizing, so hero, cards, field guide, villa, and the
     walking companion all stay proportional without per-site rules. */
  .pet-art{display:inline-block;width:1em;height:1em;background-repeat:no-repeat;background-position:0% 0%;vertical-align:-.1em}
  .pet-dressed-head,.pet-dressed-neck,.pet-dressed-trail{position:absolute;z-index:3;display:grid;place-items:center;pointer-events:none;text-shadow:0 2px 4px rgba(0,0,0,.66)}
  .pet-dressed-head{left:50%;top:-1%;transform:translateX(-50%);font-size:calc(var(--pet-preview)*.29)}
  .pet-dressed-neck{left:50%;bottom:9%;transform:translateX(-50%);font-size:calc(var(--pet-preview)*.25)}
  .pet-dressed-trail{z-index:1;right:-20%;bottom:16%;font-size:calc(var(--pet-preview)*.23);color:#ffe18c;letter-spacing:2px;opacity:.9;animation:petRegaliaDrift 1.8s ease-in-out infinite alternate}
  .pet-dressed[data-trail-tone="spray"] .pet-dressed-trail{color:#9de8ff}.pet-dressed[data-trail-tone="embers"] .pet-dressed-trail{color:#ff9c5a}.pet-dressed[data-trail-tone="aurora"] .pet-dressed-trail{color:#c3a5ff}.pet-dressed[data-trail-tone="petals"] .pet-dressed-trail{color:#ffb7d6}
  .pet-style-hero{--pet-preview:128px}.pet-style-card{--pet-preview:66px}.pet-style-studio{max-width:920px!important}.pet-style-intro{margin:0;color:#c6bda8;font-size:12px;line-height:1.45}
  .pet-style-layout{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(330px,1.35fr);gap:18px;padding:18px}.pet-style-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;padding:18px;border:1px solid rgba(238,196,100,.3);border-radius:18px;background:radial-gradient(circle at 50% 40%,rgba(101,201,188,.23),transparent 46%),linear-gradient(160deg,rgba(95,61,34,.48),rgba(12,30,33,.7));text-align:center}.pet-style-stage .pet-dressed{--pet-preview:148px}.pet-style-stage h4{margin:10px 0 3px;color:#ffe7ac;font:900 27px var(--serif)}.pet-style-stage small{color:#a9c4b8}.pet-style-keeper{display:flex;align-items:flex-end;justify-content:center;gap:3px;min-height:190px}.pet-style-keeper-avatar{width:118px;height:158px;overflow:hidden;display:flex;align-items:flex-start;justify-content:center}.pet-style-keeper-avatar svg{filter:drop-shadow(0 10px 8px rgba(0,0,0,.55))}
  .pet-style-controls{min-width:0}.pet-style-slot{margin-bottom:14px}.pet-style-slot-head{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-bottom:7px}.pet-style-slot-head b{color:#ffe2a0;font:900 17px var(--serif)}.pet-style-slot-head span{color:#9fb8ae;font-size:10px}.pet-style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pet-style-item{position:relative;min-height:108px;padding:9px 7px;border:1px solid rgba(229,190,100,.23);border-radius:12px;background:rgba(255,255,255,.035);color:#e7dcc3;text-align:center;cursor:pointer}.pet-style-item:hover,.pet-style-item.selected{border-color:#efc45f;background:rgba(211,155,53,.15);transform:translateY(-2px)}.pet-style-item.locked{filter:saturate(.45);opacity:.58}.pet-style-item .ico{display:block;font-size:27px;min-height:30px}.pet-style-item b,.pet-style-item small{display:block}.pet-style-item b{font-size:10.5px;color:#ffe9b6}.pet-style-item small{margin-top:3px;color:#9fafa6;font-size:8.5px;line-height:1.25}.pet-style-item em{display:block;margin-top:5px;color:#e6c97f;font:800 8px system-ui;font-style:normal}.pet-style-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:3px}.pet-style-actions p{margin:0;color:#9fb4aa;font-size:10px;line-height:1.35}.pet-style-actions .btn{flex:none}
  .aoutfitpair{position:relative;width:58px;height:50px;flex:0 0 58px}.aoutfitpair .aoutfitmini{position:absolute;left:0;top:0}.aoutfitpet{position:absolute;right:0;bottom:0}.aoutfitpet .pet-dressed{--pet-preview:36px}.aoutfitbadge{color:#72d6bd!important}
  .atogether{background:radial-gradient(circle at 95% 10%,rgba(99,210,189,.2),transparent 38%),linear-gradient(145deg,rgba(74,48,79,.7),rgba(13,29,31,.82))!important}.atogether-row{display:flex;align-items:center;gap:9px;margin-top:8px}.atogether-copy{min-width:0;flex:1}.atogether-copy b,.atogether-copy small{display:block}.atogether-copy b{color:#ffe3a3;font:800 14px var(--serif)}.atogether-copy small{color:#9eb7ac;font-size:9px;line-height:1.3}.ateliercompanion{position:absolute;z-index:4;left:calc(50% + 72px);bottom:8%;transition:opacity .2s,transform .3s}.ateliercompanion .pet-dressed{--pet-preview:84px}.amirror[data-camera="portrait"] .ateliercompanion,.amirror[data-camera="torso"] .ateliercompanion,.amirror[data-camera="feet"] .ateliercompanion{opacity:0;transform:translateY(18px);pointer-events:none}
  @keyframes petRegaliaDrift{from{transform:translate(0,2px) rotate(-5deg);opacity:.52}to{transform:translate(8px,-3px) rotate(5deg);opacity:1}}
  @media(max-width:650px){.pet-style-layout{grid-template-columns:1fr;padding:10px}.pet-style-stage{min-height:245px}.pet-style-keeper{min-height:160px}.pet-style-stage .pet-dressed{--pet-preview:116px}.pet-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-style-item{min-height:101px}.pet-style-actions{align-items:stretch;flex-direction:column}.pet-style-actions .btn{width:100%}.ateliercompanion{left:calc(50% + 58px)}.ateliercompanion .pet-dressed{--pet-preview:68px}}
  @media(prefers-reduced-motion:reduce){.pet-dressed-trail{animation:none}.pet-style-item:hover{transform:none}}
  .pet-calling-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:13px;padding:14px;border:1px solid rgba(110,205,188,.28);border-radius:16px;background:linear-gradient(135deg,rgba(28,65,60,.64),rgba(55,39,26,.58))}.pet-calling-intro h4,.pet-calling-intro p{margin:0}.pet-calling-intro h4{color:#ffe3a1;font:900 22px var(--serif)}.pet-calling-intro p{margin-top:4px;color:#c6c0ac;font-size:11.5px;line-height:1.45}.pet-calling-seal{font-size:44px}.pet-calling-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pet-calling-card{position:relative;min-width:0;padding:14px;border:1px solid rgba(233,194,102,.24);border-radius:16px;background:rgba(255,255,255,.035)}.pet-calling-card.current{border-color:#f0c75e;background:linear-gradient(145deg,rgba(207,153,48,.18),rgba(63,130,117,.13));box-shadow:0 0 0 2px rgba(238,190,76,.09)}.pet-calling-card.locked{opacity:.72}.pet-calling-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center}.pet-calling-icon{font-size:34px}.pet-calling-head h5{margin:0;color:#ffe7ad;font:900 19px var(--serif)}.pet-calling-head small{display:block;color:#8fd0c0;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.pet-calling-motto{min-height:32px;margin:9px 0;color:#cfc5ad;font-size:11px;line-height:1.4}.pet-calling-help{margin:7px 0;padding:8px;border-radius:10px;background:rgba(10,22,20,.54);color:#bcd9cf;font-size:9.5px;line-height:1.35}.pet-calling-evidence{display:grid;gap:5px;margin:10px 0}.pet-calling-proof{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:5px;align-items:center;color:#b9ae97;font-size:9px}.pet-calling-proof.met{color:#d9eecb}.pet-calling-proof b{color:inherit}.pet-calling-card .btn{width:100%;margin-top:4px}.pet-calling-current{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;background:rgba(238,190,76,.16);color:#ffe19a;font-size:9px;font-weight:900}
  @media(max-width:650px){.pet-calling-intro{grid-template-columns:1fr}.pet-calling-seal{display:none}.pet-calling-grid{grid-template-columns:1fr}.pet-calling-card{padding:12px}.pet-sanctuary .pet-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
  /* Mythic Evolution: three evidence-earned identities with no gameplay power. */
  .pet-evolution-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:13px;padding:17px;border:1px solid rgba(224,193,116,.35);border-radius:18px;background:radial-gradient(circle at 88% 10%,rgba(173,139,239,.2),transparent 34%),linear-gradient(135deg,rgba(70,49,82,.68),rgba(20,53,55,.72))}.pet-evolution-intro h4{margin:0;color:#ffe7af;font:950 26px var(--serif)}.pet-evolution-intro p{max-width:680px;margin:5px 0 0;color:#c7c8ba;font-size:11.5px;line-height:1.48}.pet-evolution-mark{font-size:52px;filter:drop-shadow(0 7px 9px rgba(0,0,0,.42))}.pet-evolution-roster{display:flex;gap:7px;margin-bottom:12px;padding:8px;overflow-x:auto;border:1px solid rgba(231,193,102,.2);border-radius:14px;background:rgba(4,16,17,.4)}.pet-evolution-pet{flex:0 0 auto;display:grid;grid-template-columns:34px auto;gap:6px;align-items:center;min-width:112px;padding:7px 9px;border:1px solid rgba(226,190,104,.2);border-radius:11px;background:rgba(255,255,255,.035);color:#d9d0bb;text-align:left;cursor:pointer}.pet-evolution-pet.on{border-color:#edc565;background:rgba(202,150,54,.16)}.pet-evolution-pet>span{font-size:27px}.pet-evolution-pet b,.pet-evolution-pet small{display:block}.pet-evolution-pet b{color:#ffe8b4;font-size:10px}.pet-evolution-pet small{color:#9db4aa;font-size:8px}.pet-evolution-stage{display:grid;grid-template-columns:minmax(180px,.58fr) minmax(0,1.42fr);gap:13px}.pet-evolution-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:310px;padding:18px;border:1px solid rgba(232,196,111,.28);border-radius:18px;background:radial-gradient(circle at 50% 43%,rgba(154,132,228,.2),transparent 44%),linear-gradient(160deg,rgba(60,45,73,.65),rgba(15,40,41,.75));text-align:center}.pet-evolution-preview .pet-dressed{--pet-preview:150px}.pet-evolution-preview h5{margin:9px 0 2px;color:#ffebba;font:950 24px var(--serif)}.pet-evolution-preview small{color:#9fc3b6}.pet-evolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pet-evolution-card{position:relative;min-height:218px;padding:13px;border:1px solid rgba(231,195,110,.23);border-radius:16px;background:rgba(255,255,255,.035)}.pet-evolution-card.current{border-color:#f0cb6d;background:linear-gradient(145deg,rgba(191,143,51,.18),rgba(91,73,146,.15));box-shadow:0 0 0 2px rgba(238,194,91,.08)}.pet-evolution-card.locked{opacity:.7}.pet-evolution-head{display:grid;grid-template-columns:39px minmax(0,1fr);gap:8px;align-items:center}.pet-evolution-head>span{font-size:31px}.pet-evolution-head h5{margin:0;color:#ffe9b8;font:900 18px var(--serif)}.pet-evolution-head small{display:block;color:#8bd3c0;font-size:8.5px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.pet-evolution-card>p{min-height:45px;margin:8px 0;color:#bfc5b8;font-size:9.8px;line-height:1.4}.pet-evolution-proofs{display:grid;gap:4px;margin:8px 0}.pet-evolution-proof{display:grid;grid-template-columns:13px minmax(0,1fr) auto;gap:5px;color:#b3ac99;font-size:8.5px}.pet-evolution-proof.met{color:#d8edc9}.pet-evolution-card .btn{width:100%;margin-top:7px}.pet-evolution-law{margin:12px 0 0;padding:9px 11px;border:1px solid rgba(106,202,179,.24);border-radius:11px;background:rgba(25,76,67,.2);color:#bde0d4;font-size:9.5px;text-align:center}.pet-sanctuary .pet-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
  @media(max-width:720px){.pet-evolution-stage{grid-template-columns:1fr}.pet-evolution-preview{min-height:235px}.pet-evolution-preview .pet-dressed{--pet-preview:112px}}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-evolution-intro{grid-template-columns:1fr;padding:13px}.pet-evolution-mark{display:none}.pet-evolution-grid{grid-template-columns:1fr}.pet-evolution-card{min-height:0}.pet-evolution-roster{margin-left:-2px;margin-right:-2px}}
  /* Legacy Nests turn a mature household into a deliberate family tree. */
  .pet-dressed-lineage{position:absolute;z-index:5;left:-7%;bottom:5%;display:none;place-items:center;width:calc(var(--pet-preview)*.27);height:calc(var(--pet-preview)*.27);border:1px solid rgba(255,234,174,.72);border-radius:50%;background:rgba(25,31,27,.92);font-size:calc(var(--pet-preview)*.15);box-shadow:0 4px 11px rgba(0,0,0,.46)}.pet-dressed-lineage.on{display:grid}.pet-dressed[data-lineage-tone="sun"] .pet-dressed-lineage{box-shadow:0 0 13px rgba(255,184,61,.46)}.pet-dressed[data-lineage-tone="moon"] .pet-dressed-lineage{box-shadow:0 0 13px rgba(128,155,255,.46)}.pet-dressed[data-lineage-tone="heart"] .pet-dressed-lineage{box-shadow:0 0 13px rgba(255,129,183,.43)}
  .pet-lineage-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:13px;padding:17px;border:1px solid rgba(220,185,105,.34);border-radius:18px;background:radial-gradient(circle at 89% 10%,rgba(255,186,88,.19),transparent 34%),linear-gradient(135deg,rgba(78,48,35,.72),rgba(22,56,51,.72))}.pet-lineage-intro h4{margin:0;color:#ffe7af;font:950 26px var(--serif)}.pet-lineage-intro p{max-width:700px;margin:5px 0 0;color:#c8c9b8;font-size:11.5px;line-height:1.48}.pet-lineage-mark{font-size:52px;filter:drop-shadow(0 7px 9px rgba(0,0,0,.42))}
  .pet-lineage-builder{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:12px}.pet-lineage-form,.pet-lineage-preview,.pet-lineage-tree{padding:14px;border:1px solid rgba(228,191,103,.24);border-radius:17px;background:rgba(255,255,255,.035)}.pet-lineage-form h5,.pet-lineage-preview h5,.pet-lineage-tree h5{margin:0 0 8px;color:#ffe6aa;font:900 19px var(--serif)}.pet-lineage-selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pet-lineage-selector label{display:block;margin-bottom:4px;color:#9fc8b8;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.pet-lineage-selector select{width:100%;padding:9px;border:1px solid rgba(229,194,110,.34);border-radius:10px;background:#152622;color:#f6e6bd;font:800 10px system-ui,sans-serif}.pet-lineage-parents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:9px 0}.pet-lineage-parent{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;align-items:center;padding:9px;border:1px solid rgba(221,186,103,.2);border-radius:12px;background:rgba(9,27,26,.54)}.pet-lineage-parent>span{font-size:28px}.pet-lineage-parent b,.pet-lineage-parent small{display:block}.pet-lineage-parent b{color:#ffe9b7;font-size:10px}.pet-lineage-parent small{color:#aebcaf;font-size:8px;line-height:1.35}.pet-lineage-parent.ready{border-color:rgba(126,207,154,.45)}
  .pet-lineage-kicker{margin:11px 0 5px;color:#9fc8b8;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.pet-lineage-heritage,.pet-lineage-legacies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pet-lineage-legacies{grid-template-columns:repeat(3,minmax(0,1fr))}.pet-lineage-choice{padding:9px;border:1px solid rgba(228,191,103,.22);border-radius:11px;background:rgba(255,255,255,.035);color:#d8cfb8;text-align:left;cursor:pointer}.pet-lineage-choice.on{border-color:#efca70;background:rgba(196,145,49,.17)}.pet-lineage-choice span{font-size:20px}.pet-lineage-choice b,.pet-lineage-choice small{display:block}.pet-lineage-choice b{margin-top:3px;color:#ffe7ae;font-size:9px}.pet-lineage-choice small{margin-top:2px;color:#a9b8ae;font-size:7.5px;line-height:1.3}.pet-lineage-create{width:100%;margin-top:11px}.pet-lineage-law{margin:8px 0 0;color:#9eb9ae;font-size:8.5px;line-height:1.4}
  .pet-lineage-preview{display:flex;min-height:340px;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 38%,rgba(230,180,83,.2),transparent 41%),linear-gradient(160deg,rgba(71,46,36,.66),rgba(15,43,41,.76))}.pet-lineage-nest{position:relative;display:grid;place-items:center;width:145px;height:132px;font-size:78px}.pet-lineage-nest::after{content:"";position:absolute;left:18%;right:18%;bottom:13%;height:22%;border-radius:50%;background:radial-gradient(ellipse,rgba(203,151,70,.72),rgba(72,45,28,.85));box-shadow:0 8px 13px rgba(0,0,0,.4);z-index:-1}.pet-lineage-nest.ready{animation:lineageNest 1.8s ease-in-out infinite alternate}.pet-lineage-preview h4{margin:4px 0 2px;color:#ffedbd;font:950 24px var(--serif)}.pet-lineage-preview p{max-width:280px;margin:5px 0;color:#bfc8ba;font-size:9.5px;line-height:1.45}.pet-lineage-seal{display:inline-flex;gap:5px;align-items:center;margin-top:7px;padding:5px 9px;border:1px solid rgba(235,198,111,.35);border-radius:999px;color:#ffe4a4;font-size:9px}
  .pet-lineage-tree{grid-column:1/-1}.pet-lineage-tree-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pet-lineage-family{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:center;padding:10px;border:1px solid rgba(224,190,106,.2);border-radius:12px;background:rgba(8,28,27,.52)}.pet-lineage-family>span{font-size:35px}.pet-lineage-family b,.pet-lineage-family small{display:block}.pet-lineage-family b{color:#ffe7b0;font-size:10px}.pet-lineage-family small{margin-top:2px;color:#a7baae;font-size:8px;line-height:1.35}.pet-lineage-empty{padding:18px;color:#9fb2a8;text-align:center;font-size:10px}
  .ppet-lineage{position:absolute;left:-4px;bottom:0;display:none;place-items:center;width:16px;height:16px;border:1px solid rgba(255,234,174,.66);border-radius:50%;background:#1b2925;font-size:9px;box-shadow:0 2px 7px rgba(0,0,0,.48)}.ppet-lineage.on{display:grid}
  @keyframes lineageNest{from{transform:translateY(1px) rotate(-1deg)}to{transform:translateY(-5px) rotate(1deg)}}
  @media(max-width:720px){.pet-lineage-builder{grid-template-columns:1fr}.pet-lineage-preview{min-height:245px}.pet-lineage-tree{grid-column:auto}.pet-lineage-tree-grid{grid-template-columns:1fr}.pet-lineage-mark{display:none}.pet-lineage-intro{grid-template-columns:1fr;padding:13px}}
  @media(max-width:500px){.pet-lineage-selectors,.pet-lineage-parents{grid-template-columns:1fr}.pet-lineage-legacies{grid-template-columns:1fr}.pet-lineage-heritage{grid-template-columns:1fr}}
  @media(prefers-reduced-motion:reduce){.pet-lineage-nest.ready{animation:none}}
  /* Tester feedback release: naming and playable companion rooms are first-class. */
  .pet-hero-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.pet-hero-rename{min-height:31px;padding:5px 9px;border:1px solid rgba(238,199,112,.4);border-radius:999px;background:rgba(8,17,18,.5);color:#f5d88f;font-size:9.5px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;cursor:pointer}.pet-hero-rename:hover,.pet-hero-rename:focus-visible{border-color:#f1c65f;background:rgba(112,74,27,.48);outline:none}
  .pet-card-name{padding-right:27px}.pet-card-name button{margin-left:auto;padding:4px 8px!important;border:1px solid rgba(231,190,100,.35)!important;border-radius:999px!important;background:rgba(7,15,16,.42)!important;color:#edd28e!important;font-size:9px!important;font-weight:900;letter-spacing:.45px;text-transform:uppercase}.pet-card-name button:hover{border-color:#edc05f!important;background:rgba(116,77,28,.42)!important}
  /* ARENA_SLICE_END 02-painted-rooms-plaza */
  /* ARENA_SLICE_START 03-companion-household -- spliced from arena-css/03-companion-household.css; edit that file, not this region */
  .boardcard.pet-name-studio{max-width:540px!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(239,198,104,.6)!important;border-image:none!important;border-radius:20px!important;background:radial-gradient(circle at 75% 0,rgba(80,193,180,.16),transparent 34%),linear-gradient(150deg,#302218,#122629)!important}.pet-name-studio>div:first-child{padding:13px 16px;border-bottom:1px solid rgba(236,194,102,.28);background:rgba(23,20,19,.72)}
  .pet-name-stage{display:grid;grid-template-columns:105px minmax(0,1fr);gap:15px;align-items:center;padding:20px}.pet-name-pet{display:grid;place-items:center;width:98px;height:98px;border:1px solid rgba(245,210,128,.34);border-radius:50%;background:radial-gradient(circle,#4e7b6d,#172d2c 70%);font-size:64px;filter:drop-shadow(0 8px 6px rgba(0,0,0,.42))}.pet-name-copy h4{margin:0;color:#ffe7ab;font:900 25px/1 var(--serif)}.pet-name-copy p{margin:6px 0 12px;color:#b7c9bd;font-size:11px;line-height:1.4}
  .pet-name-input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid rgba(237,195,99,.38);border-radius:10px;background:rgba(3,12,13,.52);color:#fff1c9;font:800 16px var(--serif);outline:none}.pet-name-input:focus{border-color:#f2c860;box-shadow:0 0 0 3px rgba(233,183,71,.12)}.pet-name-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.pet-name-rule{color:#8fa59c;font-size:9px}.pet-name-error{min-height:15px;margin-top:5px;color:#ffb5a8;font-size:9.5px;font-weight:800}
  .pet-playroom-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 15px;border:1px solid rgba(104,208,181,.28);border-radius:15px;background:radial-gradient(circle at 85% 0,rgba(103,213,190,.16),transparent 35%),linear-gradient(130deg,rgba(62,97,68,.35),rgba(17,45,54,.58))}.pet-playroom-head h4{margin:0;color:#ffe8ad;font:900 23px/1 var(--serif)}.pet-playroom-head p{margin:5px 0 0;color:#b8cdc1;font-size:11px;line-height:1.4}.pet-playroom-pet{flex:none;font-size:56px;filter:drop-shadow(0 6px 5px rgba(0,0,0,.42))}
  .pet-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:11px}.pet-room{position:relative;min-height:170px;padding:15px;border:1px solid rgba(236,195,103,.25);border-radius:16px;background:linear-gradient(145deg,rgba(77,54,35,.55),rgba(17,43,47,.7));color:#eadfc7;text-align:left;cursor:pointer;overflow:hidden;box-shadow:0 9px 22px rgba(0,0,0,.2)}.pet-room::after{content:"ENTER ROOM";position:absolute;right:11px;bottom:10px;color:#f2cf78;font-size:8px;font-weight:1000;letter-spacing:1px}.pet-room:hover,.pet-room:focus-visible{transform:translateY(-3px);border-color:#edc260;outline:none;box-shadow:0 14px 29px rgba(0,0,0,.3)}.pet-room-icon{font-size:45px;filter:drop-shadow(0 5px 4px rgba(0,0,0,.4))}.pet-room b{display:block;margin-top:8px;color:#ffedbb;font:900 18px var(--serif)}.pet-room small{display:block;max-width:90%;margin-top:4px;color:#acbeb5;font-size:10px;line-height:1.35}
  .pet-room.agility{background:radial-gradient(circle at 90% 10%,rgba(122,215,111,.2),transparent 37%),linear-gradient(145deg,#314c31,#142f35)}.pet-room.tricks{background:radial-gradient(circle at 90% 10%,rgba(174,119,234,.19),transparent 37%),linear-gradient(145deg,#40304f,#172d38)}.pet-room.feast{background:radial-gradient(circle at 90% 10%,rgba(240,184,84,.2),transparent 37%),linear-gradient(145deg,#513921,#203135)}.pet-room.aquarium{background:radial-gradient(circle at 90% 10%,rgba(81,194,238,.2),transparent 37%),linear-gradient(145deg,#193f55,#172b43)}
  .pet-minigame{position:relative;min-height:350px;padding:14px;border:1px solid rgba(236,194,102,.28);border-radius:16px;background:radial-gradient(circle at 50% 0,rgba(91,202,172,.18),transparent 42%),linear-gradient(180deg,#20393a,#102124);overflow:hidden}.pet-minigame-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.pet-minigame-top h4{margin:0;color:#ffe5a3;font:900 22px var(--serif)}.pet-minigame-score{display:flex;gap:6px}.pet-minigame-score span{padding:5px 8px;border:1px solid rgba(235,195,103,.26);border-radius:999px;background:rgba(5,14,16,.45);color:#f2db9f;font-size:10px;font-weight:900}
  .pet-game-coach{position:absolute;z-index:3;left:50%;bottom:12px;max-width:min(420px,82%);transform:translateX(-50%);padding:7px 10px;border:1px solid rgba(255,224,145,.45);border-radius:999px;background:rgba(13,31,30,.9);color:#ffedb7;font-size:10px;font-weight:900;text-align:center;pointer-events:none;opacity:0;transition:opacity .2s}.pet-game-coach.on{opacity:1}
  .pet-agility-track{position:relative;height:125px;margin:38px 0 16px;border:1px solid rgba(121,213,178,.28);border-radius:18px;background:linear-gradient(180deg,#3b7152 0 61%,#88623e 62% 75%,#5f422e 76%);box-shadow:inset 0 18px 30px rgba(153,230,164,.12);overflow:hidden}.pet-agility-zone{position:absolute;top:8px;bottom:8px;width:18%;border:2px dashed rgba(255,225,135,.88);border-radius:13px;background:rgba(241,195,77,.14);box-shadow:0 0 18px rgba(243,199,85,.18)}.pet-agility-runner{position:absolute;left:0;bottom:17px;width:62px;height:62px;border:0;background:transparent;font-size:49px;transform:translateX(-50%);filter:drop-shadow(0 7px 5px rgba(0,0,0,.5));pointer-events:none}.pet-game-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.pet-game-actions .btn{min-width:135px;min-height:43px}.pet-game-note{margin:10px auto 0;max-width:570px;color:#a9bdb4;font-size:10px;line-height:1.4;text-align:center}
  .pet-trick-sequence{display:flex;justify-content:center;gap:8px;min-height:70px;margin:33px 0 19px}.pet-trick-sequence span{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(238,199,110,.25);border-radius:14px;background:rgba(4,12,16,.46);font-size:31px;transition:transform .16s,background .16s}.pet-trick-sequence span.flash{transform:translateY(-7px) scale(1.08);border-color:#f2cf77;background:rgba(150,99,35,.55);box-shadow:0 0 18px rgba(240,194,83,.3)}.pet-trick-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:430px;margin:0 auto}.pet-trick-key{min-height:62px;border:1px solid rgba(114,205,183,.28);border-radius:13px;background:rgba(17,52,56,.62);font-size:31px;cursor:pointer}.pet-trick-key:hover,.pet-trick-key:focus-visible{border-color:#e9c15f;background:rgba(91,67,33,.58);outline:none}.pet-trick-key:disabled{opacity:.45}
  .pet-academy-showcase{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:11px;padding:14px 15px;border:1px solid rgba(241,199,96,.4);border-radius:16px;background:radial-gradient(circle at 88% 10%,rgba(247,205,105,.2),transparent 34%),linear-gradient(135deg,rgba(87,51,37,.8),rgba(32,67,65,.82));box-shadow:0 12px 28px rgba(0,0,0,.22)}.pet-academy-showcase h4{margin:0;color:#ffe7a5;font:900 20px var(--serif)}.pet-academy-showcase p{margin:4px 0 0;color:#c8d5c7;font-size:10.5px;line-height:1.4}.pet-academy-showcase .btn{min-width:150px}.pet-academy-ribbons{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.pet-academy-ribbons span,.pet-room-mastery{display:inline-flex;align-items:center;gap:3px;padding:4px 7px;border:1px solid rgba(239,201,112,.25);border-radius:999px;background:rgba(5,15,16,.38);color:#f1dba4;font-size:9px;font-weight:900}.pet-room-mastery{margin-top:8px;color:#9be3cf;border-color:rgba(100,212,184,.28)}
  .pet-academy-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}.pet-academy-skill{padding:10px;border:1px solid rgba(111,208,180,.22);border-radius:12px;background:rgba(8,24,26,.42)}.pet-academy-skill-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.pet-academy-skill b{color:#ffebba;font-size:11px}.pet-academy-skill small{display:block;margin-top:3px;color:#aebfb5;font-size:9.5px}.pet-academy-meter{height:6px;margin-top:7px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.38)}.pet-academy-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#63c9af,#efd06e);box-shadow:0 0 8px rgba(102,213,181,.3)}.pet-academy-result{max-width:570px;margin:11px auto 0;padding:10px 12px;border:1px solid rgba(239,199,105,.35);border-radius:11px;background:rgba(85,60,33,.38);color:#ffe8ac;font-size:11px;font-weight:850;text-align:center}.pet-academy-result.success{border-color:rgba(99,218,183,.47);background:rgba(29,94,75,.35);color:#c6f3df}.pet-academy-result[aria-busy="true"]{color:#e7d7ab}.pet-room.daily-ready{border-color:rgba(241,198,91,.55);box-shadow:0 9px 24px rgba(233,183,67,.12)}.pet-room.daily-ready::after{content:"DAILY TRIAL READY"}.pet-room.daily-done::after{content:"PRACTICE OPEN";color:#92ddc9}
  .pet-dream-pane{padding:0!important;background:#10162b!important}.pet-dream-stage{position:relative;min-height:430px;padding:22px;border:1px solid rgba(216,191,255,.42);border-radius:18px;background:linear-gradient(180deg,rgba(9,13,34,.16),rgba(7,12,26,.9)),url('pet-dream-garden-v1.webp') center/cover no-repeat;box-shadow:inset 0 0 70px rgba(8,11,35,.5),0 18px 42px rgba(0,0,0,.34);overflow:hidden}.pet-dream-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 20%,rgba(170,190,255,.1),transparent 35%),linear-gradient(90deg,rgba(5,8,23,.36),transparent 34% 66%,rgba(5,8,23,.36));pointer-events:none}.pet-dream-stage>*{position:relative;z-index:1}.pet-dream-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}.pet-dream-kicker{color:#bde9ff;font-size:9px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}.pet-dream-head h4{margin:3px 0 5px;color:#fff0c8;font:950 30px/1 var(--serif);text-shadow:0 3px 12px rgba(0,0,0,.55)}.pet-dream-head p{max-width:610px;margin:0;color:#e1e3f3;font-size:11px;line-height:1.5;text-shadow:0 2px 5px rgba(0,0,0,.8)}.pet-dream-pet{display:grid;place-items:center;width:96px;height:96px;border:1px solid rgba(255,222,151,.46);border-radius:50%;background:radial-gradient(circle,rgba(255,224,151,.24),rgba(24,25,64,.6) 65%);font-size:64px;filter:drop-shadow(0 9px 8px rgba(0,0,0,.48));animation:pet-dream-float 3.6s ease-in-out infinite}.pet-dream-scene{max-width:660px;margin:72px auto 0;padding:18px 20px;border:1px solid rgba(228,213,255,.46);border-radius:16px;background:linear-gradient(135deg,rgba(13,19,52,.88),rgba(39,27,71,.78));box-shadow:0 16px 38px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(10px);text-align:center}.pet-dream-scene-icon{font-size:35px}.pet-dream-scene h5{margin:3px 0 7px;color:#ffedbd;font:900 23px var(--serif)}.pet-dream-scene p{margin:0;color:#e5e1ef;font-size:11.5px;line-height:1.55}.pet-dream-personality{display:inline-flex;margin-top:10px;padding:5px 9px;border:1px solid rgba(175,218,255,.35);border-radius:999px;background:rgba(12,23,52,.54);color:#c8ebff;font-size:9px;font-weight:900}.pet-dream-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.pet-dream-choice{position:relative;min-height:146px;padding:15px 13px;border:1px solid rgba(218,207,247,.28);border-radius:15px;background:linear-gradient(160deg,rgba(25,31,70,.94),rgba(14,18,43,.94));color:#ede9f6;text-align:left;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.pet-dream-choice:hover,.pet-dream-choice:focus-visible{transform:translateY(-3px);border-color:#ffe4a0;box-shadow:0 12px 28px rgba(0,0,0,.35);outline:none}.pet-dream-choice:disabled{opacity:.55;transform:none;cursor:wait}.pet-dream-choice.trait-brave{background:linear-gradient(160deg,rgba(92,56,44,.96),rgba(40,25,36,.95))}.pet-dream-choice.trait-curious{background:linear-gradient(160deg,rgba(26,75,96,.96),rgba(20,30,59,.95))}.pet-dream-choice.trait-gentle{background:linear-gradient(160deg,rgba(34,80,65,.96),rgba(24,35,51,.95))}.pet-dream-choice i{display:block;font-style:normal;font-size:30px}.pet-dream-choice b{display:block;margin-top:4px;color:#fff0c4;font:900 16px var(--serif)}.pet-dream-choice strong{display:block;margin-top:6px;color:#d7ecf5;font-size:9.5px}.pet-dream-choice small{display:block;margin-top:5px;color:#b9b9ca;font-size:9px;line-height:1.35}.pet-dream-status{margin:12px 0 0;padding:10px 12px;border:1px solid rgba(191,218,255,.32);border-radius:11px;background:rgba(12,20,48,.72);color:#e9e5f7;font-size:10px;font-weight:850;text-align:center}.pet-dream-status.success{border-color:rgba(137,222,178,.5);background:rgba(23,77,69,.72);color:#d4f7e7}.pet-dream-reveal{margin-top:15px;padding:16px;border:1px solid rgba(255,218,137,.46);border-radius:15px;background:linear-gradient(135deg,rgba(82,53,67,.88),rgba(24,46,66,.9));box-shadow:0 15px 34px rgba(0,0,0,.28)}.pet-dream-reveal b{display:block;color:#ffedbc;font:900 19px var(--serif)}.pet-dream-reveal p{margin:5px 0;color:#e4e1ed;font-size:11px;line-height:1.45}.pet-dream-memory-line{padding-top:8px;border-top:1px solid rgba(255,255,255,.1);font-style:italic}.pet-dream-profile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 17px;border:1px solid rgba(194,180,240,.25);border-radius:15px;background:linear-gradient(140deg,rgba(37,31,73,.9),rgba(18,42,55,.88))}.pet-dream-profile h5{margin:0;color:#ffe9af;font:900 20px var(--serif)}.pet-dream-profile p{margin:4px 0 0;color:#bfc6d8;font-size:10px}.pet-dream-total{min-width:110px;text-align:right}.pet-dream-total b{display:block;color:#f9d87c;font:950 25px var(--serif)}.pet-dream-total small{color:#aeb9cc;font-size:9px}.pet-dream-traits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.pet-dream-trait{padding:11px;border:1px solid rgba(177,200,225,.2);border-radius:12px;background:rgba(11,22,37,.62)}.pet-dream-trait-top{display:flex;justify-content:space-between;gap:7px;color:#f2e8ca;font-size:10px;font-weight:900}.pet-dream-trait small{display:block;margin-top:4px;color:#aeb8c7;font-size:8.5px}.pet-dream-meter{height:6px;margin-top:7px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.36)}.pet-dream-meter i{display:block;height:100%;border-radius:inherit;box-shadow:0 0 8px currentColor}.pet-dream-book{margin-top:10px;padding:14px;border:1px solid rgba(231,202,133,.25);border-radius:15px;background:linear-gradient(145deg,rgba(75,52,38,.72),rgba(26,32,48,.86))}.pet-dream-book h5{margin:0;color:#ffe7ad;font:900 18px var(--serif)}.pet-dream-book>p{margin:3px 0 9px;color:#bfb8ae;font-size:9.5px}.pet-dream-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pet-dream-page{padding:9px 10px;border:1px solid rgba(235,211,160,.17);border-radius:10px;background:rgba(18,18,30,.48)}.pet-dream-page b{color:#f4dfad;font-size:9.5px}.pet-dream-page small{display:block;margin-top:4px;color:#bbb9c7;font-size:8.5px;line-height:1.35}.pet-dream-empty{color:#aaa9b8;font-size:10px;font-style:italic}@keyframes pet-dream-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(2deg)}}
  /* Companion Household: permanent Sims-like relationships between every owned pair. */
  .pet-household-pane{background:radial-gradient(circle at 50% -12%,rgba(237,187,91,.16),transparent 32%),linear-gradient(155deg,#201c29,#13282b 66%,#101b1e)}
  .pet-household-shell{min-height:100%;color:#f2e5ca}.pet-household-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px;padding:15px 16px;border:1px solid rgba(235,194,102,.27);border-radius:16px;background:linear-gradient(120deg,rgba(92,58,38,.58),rgba(24,68,70,.55))}.pet-household-head h4{margin:0;color:#ffe5a5;font:950 27px/1 var(--serif)}.pet-household-head p{max-width:680px;margin:5px 0 0;color:#c5d5c9;font-size:11px;line-height:1.45}.pet-household-cap{flex:none;padding:8px 10px;border:1px solid rgba(116,216,183,.35);border-radius:12px;background:rgba(8,25,25,.5);color:#b9f0d9;font-size:10px;font-weight:900;text-align:center}.pet-household-cap b{display:block;color:#ffe4a2;font-size:18px}
  .pet-household-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;margin-bottom:12px}.pet-household-partner{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);gap:9px;align-items:center;min-height:91px;padding:10px;border:1px solid rgba(229,190,101,.23);border-radius:14px;background:linear-gradient(145deg,rgba(63,46,38,.62),rgba(18,44,48,.72));color:#e8ddc6;text-align:left;cursor:pointer}.pet-household-partner:hover,.pet-household-partner:focus-visible,.pet-household-partner.selected{border-color:#edc465;outline:none;transform:translateY(-2px);box-shadow:0 11px 24px rgba(0,0,0,.28)}.pet-household-partner.done{border-color:rgba(111,210,177,.42)}.pet-household-partner-icon{display:grid;place-items:center;width:55px;height:55px;border:1px solid rgba(255,220,138,.25);border-radius:50%;background:radial-gradient(circle,#456f65,#202d31 70%);font-size:38px}.pet-household-partner b{display:block;color:#ffebbb;font-size:13px}.pet-household-partner small{display:block;margin-top:2px;color:#aebfb5;font-size:9px;line-height:1.28}.pet-household-partner em{display:inline-flex;margin-top:5px;padding:3px 6px;border-radius:999px;background:rgba(233,188,89,.13);color:#f0d28e;font-size:8px;font-style:normal;font-weight:900}.pet-household-partner.done em{background:rgba(83,187,153,.14);color:#9ae1ca}
  .pet-household-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:11px;align-items:start}.pet-household-story,.pet-household-profile,.pet-household-book{min-width:0;border:1px solid rgba(224,190,116,.24);border-radius:16px;background:linear-gradient(150deg,rgba(74,48,43,.76),rgba(18,38,48,.86));box-shadow:0 14px 32px rgba(0,0,0,.2)}.pet-household-story{padding:16px}.pet-household-pair{display:flex;align-items:center;justify-content:center;gap:10px;min-height:96px;margin-bottom:10px;animation:petHouseholdGlow 3.5s ease-in-out infinite}.pet-household-pair>span{display:grid;place-items:center;width:78px;height:78px;border:1px solid rgba(255,220,143,.34);border-radius:50%;background:radial-gradient(circle,rgba(238,195,101,.22),rgba(25,53,56,.7) 68%);font-size:53px;filter:drop-shadow(0 7px 6px rgba(0,0,0,.45))}.pet-household-pair>i{font-style:normal;font-size:29px;filter:drop-shadow(0 0 9px rgba(255,190,100,.35))}.pet-household-chemistry{text-align:center}.pet-household-chemistry b{display:block;color:#ffe7aa;font:950 22px var(--serif)}.pet-household-chemistry small{display:block;max-width:580px;margin:4px auto 0;color:#b9cbc1;font-size:10px;line-height:1.4}.pet-household-scene{margin-top:11px;padding:13px 14px;border:1px solid rgba(123,213,188,.28);border-radius:13px;background:rgba(10,32,35,.48);text-align:center}.pet-household-scene h5{margin:2px 0 5px;color:#ffedbd;font:900 19px var(--serif)}.pet-household-scene p{margin:0;color:#d8e2da;font-size:10.5px;line-height:1.48}
  .pet-household-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.pet-household-choice{min-height:145px;padding:12px 10px;border:1px solid rgba(228,202,139,.23);border-radius:13px;background:linear-gradient(155deg,rgba(78,52,45,.86),rgba(23,37,46,.9));color:#e9dfcb;text-align:left;cursor:pointer}.pet-household-choice:hover,.pet-household-choice:focus-visible{border-color:#f0c96c;outline:none;transform:translateY(-2px)}.pet-household-choice:disabled{opacity:.55;cursor:wait;transform:none}.pet-household-choice.trait-mischief{background:linear-gradient(155deg,rgba(105,58,43,.9),rgba(49,33,41,.92))}.pet-household-choice.trait-trust{background:linear-gradient(155deg,rgba(40,91,71,.9),rgba(24,43,48,.92))}.pet-household-choice.trait-wonder{background:linear-gradient(155deg,rgba(39,72,101,.9),rgba(29,36,61,.92))}.pet-household-choice i{display:block;font-style:normal;font-size:27px}.pet-household-choice b{display:block;margin-top:3px;color:#fff0c2;font:900 14px var(--serif)}.pet-household-choice strong{display:block;margin-top:6px;color:#d7e9df;font-size:9px}.pet-household-choice small{display:block;margin-top:5px;color:#b6bcb8;font-size:8.5px;line-height:1.34}.pet-household-status,.pet-household-reveal{margin-top:10px;padding:9px 11px;border:1px solid rgba(123,211,185,.3);border-radius:10px;background:rgba(11,36,38,.62);color:#d6eee4;font-size:9.5px;font-weight:850;text-align:center}.pet-household-status.success,.pet-household-reveal{border-color:rgba(237,193,101,.42);background:rgba(80,58,37,.55);color:#ffe7ad}.pet-household-reveal b{display:block;font-size:11px}.pet-household-reveal p{margin:4px 0 0;font-weight:600;line-height:1.4}
  .pet-household-side{display:grid;gap:10px}.pet-household-profile,.pet-household-book{padding:13px}.pet-household-profile h5,.pet-household-book h5{margin:0;color:#ffe4a2;font:900 18px var(--serif)}.pet-household-profile>p,.pet-household-book>p{margin:4px 0 9px;color:#aebdb5;font-size:9px;line-height:1.35}.pet-household-total{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-bottom:9px;padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.035)}.pet-household-total b{color:#f5d477;font:950 24px var(--serif)}.pet-household-total small{color:#b5c4ba;font-size:8.5px;text-align:right}.pet-household-traits{display:grid;gap:7px}.pet-household-trait{padding:8px;border:1px solid rgba(157,203,187,.18);border-radius:10px;background:rgba(9,27,29,.48)}.pet-household-trait-top{display:flex;justify-content:space-between;gap:7px;color:#eee2c8;font-size:9px;font-weight:900}.pet-household-trait small{display:block;margin-top:3px;color:#9cafa6;font-size:8px}.pet-household-meter{height:6px;margin-top:6px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.38)}.pet-household-meter i{display:block;height:100%;border-radius:inherit;box-shadow:0 0 8px currentColor}.pet-household-chapters{display:grid;gap:6px}.pet-household-chapter{padding:8px;border:1px solid rgba(232,202,137,.16);border-radius:9px;background:rgba(25,21,29,.4)}.pet-household-chapter b{color:#f2dcaa;font-size:9px}.pet-household-chapter small{display:block;margin-top:3px;color:#aeb5b0;font-size:8px;line-height:1.3}.pet-household-empty{color:#98aaa2;font-size:9px;font-style:italic}
  @keyframes petHouseholdGlow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.08)}}
  @media(max-width:650px){.pet-household-layout,.pet-household-choices,.pet-household-grid{grid-template-columns:1fr}.pet-household-head{align-items:stretch;flex-direction:column;padding:12px}.pet-household-head h4{font-size:23px}.pet-household-cap{text-align:left}.pet-household-story{padding:11px}.pet-household-pair>span{width:65px;height:65px;font-size:44px}.pet-household-choice{min-height:116px}.pet-household-grid{gap:7px}.pet-household-partner{min-height:82px}.pet-household-side{gap:8px}}
  @media(prefers-reduced-motion:reduce){.pet-household-pair{animation:none}.pet-household-choice,.pet-household-partner{transition:none}.pet-household-choice:hover,.pet-household-partner:hover{transform:none}}
  .pet-sanctuary .pet-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.pet-room-grid,.pet-academy-skills{grid-template-columns:1fr}.pet-dream-choices,.pet-dream-traits,.pet-dream-pages{grid-template-columns:1fr}.pet-academy-showcase{grid-template-columns:1fr;padding:12px}.pet-academy-showcase .btn{width:100%}.pet-name-stage{grid-template-columns:78px minmax(0,1fr);padding:14px}.pet-name-pet{width:72px;height:72px;font-size:48px}.pet-minigame{min-height:380px}.pet-minigame-top{align-items:flex-start;flex-wrap:wrap}.pet-trick-sequence span{width:48px;height:48px;font-size:26px}.pet-dream-stage{min-height:520px;padding:15px;background-position:50% center}.pet-dream-head{grid-template-columns:minmax(0,1fr) 66px}.pet-dream-head h4{font-size:25px}.pet-dream-pet{width:64px;height:64px;font-size:43px}.pet-dream-scene{margin-top:82px;padding:15px}.pet-dream-profile{grid-template-columns:1fr}.pet-dream-total{text-align:left}.pet-dream-choice{min-height:122px}}
  @media(prefers-reduced-motion:reduce){.pet-dream-pet{animation:none}.pet-dream-choice{transition:none}.pet-dream-choice:hover,.pet-dream-choice:focus-visible{transform:none}}
  /* Companion Villa: a Sims-like home that grows from honest pet progress. */
  .pet-sanctuary .pet-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .pet-pane.pet-villa-pane{padding:0;background:#162124}
  .pet-villa{min-height:100%;background:linear-gradient(180deg,#18282b,#111a1d);color:#f5e6c3}
  .pet-villa-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px;border-bottom:1px solid rgba(239,199,107,.25);background:linear-gradient(100deg,rgba(74,48,29,.94),rgba(21,58,60,.94))}
  .pet-villa-title{min-width:0}.pet-villa-title h4{margin:0;color:#ffe6a2;font:900 23px/1.05 var(--serif)}.pet-villa-title p{margin:4px 0 0;color:#c7d7c9;font-size:11.5px;line-height:1.35}
  .pet-villa-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.pet-villa-stat{padding:5px 8px;border:1px solid rgba(245,207,120,.28);border-radius:999px;background:rgba(5,15,16,.42);color:#f7dfaa;font-size:10.5px;font-weight:900;white-space:nowrap}
  .pet-villa-themes{display:flex;gap:6px;padding:8px 11px;overflow-x:auto;background:rgba(8,16,17,.76);scrollbar-width:thin}.pet-villa-theme{flex:none;min-height:34px;padding:5px 10px;border:1px solid rgba(240,199,104,.22);border-radius:999px;background:#1d2b2c;color:#d8c9a6;font-weight:800;cursor:pointer}.pet-villa-theme.on{border-color:#e7b950;color:#24170c;background:linear-gradient(#f2d57f,#c48a38)}.pet-villa-theme.locked{opacity:.55}
  .pet-villa-living{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,292px);align-items:start;background:#101a1c}.pet-villa-living>*{min-width:0}
  .pet-villa-scene{position:relative;width:100%;max-width:100%;box-sizing:border-box;aspect-ratio:16/8.4;min-height:330px;overflow:hidden;background:#c7baa2 url('pet-villa-atrium-v1.webp') center 58%/cover no-repeat;isolation:isolate;touch-action:none;box-shadow:inset 0 -35px 70px rgba(7,18,18,.2)}
  .pet-villa-scene.theme-moon{filter:saturate(.88) hue-rotate(12deg)}.pet-villa-scene.theme-garden{filter:saturate(1.12) brightness(1.03)}.pet-villa-scene::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(14,36,34,.18))}.pet-villa-scene.theme-moon::after{background:linear-gradient(180deg,rgba(23,34,71,.4),rgba(11,30,39,.22))}.pet-villa-scene.theme-garden::after{background:radial-gradient(circle at 50% 28%,rgba(255,231,142,.14),transparent 48%)}
  .pet-villa-item{position:absolute;z-index:3;display:grid;place-items:center;width:64px;height:64px;transform:translate(-50%,-50%);border:1px solid transparent;border-radius:16px;background:transparent;color:#fff;font-size:42px;line-height:1;filter:drop-shadow(0 6px 5px rgba(0,0,0,.48));cursor:grab;touch-action:none;user-select:none}.pet-villa-item:hover,.pet-villa-item:focus-visible,.pet-villa-item.dragging{border-color:rgba(255,221,139,.72);background:rgba(24,50,48,.48);outline:none}.pet-villa-item.dragging{cursor:grabbing;z-index:8;transform:translate(-50%,-50%) scale(1.12)}
  .pet-villa-pet{position:absolute;z-index:6;display:grid;place-items:center;width:80px;height:80px;transform:translate(-50%,-50%);border:0;background:transparent;font-size:64px;line-height:1;filter:drop-shadow(0 8px 6px rgba(0,0,0,.5));transition:left .7s cubic-bezier(.2,.75,.28,1),top .7s cubic-bezier(.2,.75,.28,1),transform .2s;cursor:pointer}.pet-villa-pet.react{animation:petVillaJoy .72s cubic-bezier(.2,.8,.3,1)}.pet-villa-bubble{position:absolute;z-index:9;max-width:190px;transform:translate(-50%,-100%);padding:7px 9px;border:1px solid rgba(239,196,99,.42);border-radius:12px 12px 12px 3px;background:rgba(20,29,28,.93);color:#fff0c6;font-size:11px;font-weight:800;text-align:center;box-shadow:0 7px 18px rgba(0,0,0,.34);pointer-events:none;animation:petVillaBubble 1.6s ease both}
  .pet-life-book{display:flex;flex-direction:column;gap:10px;padding:14px 13px;border-left:1px solid rgba(237,196,101,.28);background:radial-gradient(circle at 80% 0,rgba(226,173,74,.13),transparent 32%),linear-gradient(165deg,#263638,#172426 62%,#111b1d);box-shadow:inset 12px 0 30px rgba(0,0,0,.18)}.pet-life-book h4{margin:0;color:#ffe6a2;font:900 20px/1 var(--serif)}.pet-life-book-kicker{color:#75d5c1;font-size:9px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}.pet-life-nature{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;padding:9px;border:1px solid rgba(232,192,99,.25);border-radius:12px;background:rgba(5,14,15,.3)}.pet-life-nature>span{font-size:29px;text-align:center}.pet-life-nature b{display:block;color:#fff0bd}.pet-life-nature small{display:block;margin-top:2px;color:#b9c8bd;font-size:10px;line-height:1.3}.pet-life-chips{display:flex;flex-wrap:wrap;gap:5px}.pet-life-chip{padding:4px 7px;border-radius:999px;background:rgba(234,191,93,.12);border:1px solid rgba(234,191,93,.25);color:#f1dba8;font-size:9.5px;font-weight:900}.pet-life-detail{padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.035);color:#c9d3c9;font-size:10.5px;line-height:1.35}.pet-life-detail b{display:block;margin-bottom:2px;color:#8fe0cd;font-size:9px;letter-spacing:.7px;text-transform:uppercase}.pet-life-wish{padding:9px;border:1px solid rgba(102,207,176,.27);border-radius:11px;background:rgba(38,112,89,.16)}.pet-life-wish b{display:block;color:#b7f0d4;font-size:11px}.pet-life-wish small{display:block;margin-top:2px;color:#c5d6cb;font-size:10px;line-height:1.3}.pet-life-milestone{margin-top:auto}.pet-life-milestone-row{display:flex;justify-content:space-between;gap:8px;color:#d9caa7;font-size:9.5px}.pet-life-meter{height:6px;margin-top:5px;border-radius:999px;overflow:hidden;background:rgba(0,0,0,.38)}.pet-life-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#63c8ae,#efd174);box-shadow:0 0 8px rgba(114,220,184,.35)}.pet-life-recent{display:grid;gap:5px}.pet-life-memory{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px;align-items:start;color:#bfcbbf;font-size:9.5px;line-height:1.25}.pet-life-memory>span{font-size:17px}.pet-life-memory b{display:block;color:#f0ddb0;font-size:10px}.pet-life-empty{color:#91a39b;font-size:10px;line-height:1.35;font-style:italic}
  .pet-villa-moment{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:10px 12px;padding:10px 12px;border:1px solid rgba(102,205,176,.3);border-radius:13px;background:linear-gradient(120deg,rgba(32,103,82,.25),rgba(26,55,68,.42))}.pet-villa-moment.done{border-color:rgba(239,199,107,.35);background:rgba(93,68,34,.3)}.pet-villa-moment>span{font-size:30px}.pet-villa-moment b{display:block;color:#fff0bd}.pet-villa-moment small{display:block;color:#b8cfbf;line-height:1.3}.pet-villa-moment .btn{padding:7px 10px;font-size:11px}
  .pet-villa-catalog{padding:0 12px 15px}.pet-villa-catalog-head{display:flex;align-items:end;justify-content:space-between;gap:8px;margin:0 0 7px}.pet-villa-catalog-head h4{margin:0;color:#ffe5a4;font:900 18px var(--serif)}.pet-villa-catalog-head span{color:#9fb1a9;font-size:10.5px}.pet-villa-shelf{display:flex;gap:7px;overflow-x:auto;padding:2px 1px 7px;scroll-snap-type:x proximity;scrollbar-color:#8a6632 #142123}.pet-villa-catalog-item{position:relative;flex:0 0 112px;min-height:104px;padding:9px 7px;border:1px solid rgba(231,190,96,.22);border-radius:12px;background:rgba(255,255,255,.035);color:#e9dcbd;text-align:center;cursor:pointer;scroll-snap-align:start}.pet-villa-catalog-item:hover,.pet-villa-catalog-item.placed{border-color:#e8bd5d;background:rgba(190,132,43,.13)}.pet-villa-catalog-item.locked{opacity:.48;filter:grayscale(.65)}.pet-villa-catalog-item .ico{font-size:34px;line-height:1}.pet-villa-catalog-item b{display:block;margin-top:4px;color:#f7e3ac;font-size:11.5px}.pet-villa-catalog-item small{display:block;margin-top:3px;color:#a99d86;font-size:9.5px;line-height:1.2}.pet-villa-catalog-item em{position:absolute;right:5px;top:5px;padding:1px 5px;border-radius:999px;background:#d9aa49;color:#1e1409;font-size:8px;font-style:normal;font-weight:900}
  @keyframes petVillaJoy{0%{transform:translate(-50%,-50%) scale(1)}28%{transform:translate(-50%,-72%) rotate(-8deg) scale(1.13)}55%{transform:translate(-50%,-48%) rotate(7deg) scale(.96)}100%{transform:translate(-50%,-50%) scale(1)}}@keyframes petVillaBubble{0%{opacity:0;transform:translate(-50%,-80%) scale(.8)}15%,78%{opacity:1;transform:translate(-50%,-100%) scale(1)}100%{opacity:0;transform:translate(-50%,-125%) scale(.95)}}
  @media(max-width:760px){.pet-villa-living{grid-template-columns:1fr}.pet-life-book{border-left:0;border-top:1px solid rgba(237,196,101,.28);box-shadow:inset 0 12px 30px rgba(0,0,0,.13)}.pet-life-book{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pet-life-book>h4,.pet-life-book>.pet-life-book-kicker,.pet-life-book>.pet-life-nature,.pet-life-book>.pet-life-chips,.pet-life-book>.pet-life-wish,.pet-life-book>.pet-life-milestone{grid-column:1/-1}}
  @media(max-width:650px){.pet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-villa-head{align-items:flex-start;padding:9px 10px}.pet-villa-title h4{font-size:19px}.pet-villa-title p{font-size:10px}.pet-villa-stats{gap:3px}.pet-villa-stat{padding:4px 6px;font-size:8.5px}.pet-villa-themes{padding:6px 8px}.pet-villa-theme{min-height:31px;font-size:10px}.pet-villa-scene{aspect-ratio:4/4.65;min-height:420px;background-position:center center}.pet-villa-item{width:54px;height:54px;font-size:36px}.pet-villa-pet{width:67px;height:67px;font-size:55px}.pet-life-book{padding:12px 10px}.pet-villa-moment{grid-template-columns:auto minmax(0,1fr);margin:8px;padding:9px}.pet-villa-moment .btn{grid-column:1/-1;width:100%}.pet-villa-catalog{padding:0 8px 12px}.pet-villa-catalog-item{flex-basis:101px}}
  @media(prefers-reduced-motion:reduce){.pet-villa-pet{transition:none}.pet-villa-pet.react,.pet-villa-bubble{animation:none}.pet-villa-item{transition:none}}
  /* Companion Neighborhood: accepted friends can visit a server-derived Villa portrait. */
  .pet-neighborhood{min-height:100%;padding:15px;background:radial-gradient(circle at 50% -10%,rgba(237,191,91,.18),transparent 34%),linear-gradient(155deg,#1c2f31,#121d20 62%,#101719)}
  .pet-neighbor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.pet-neighbor-head h4{margin:0;color:#ffe4a1;font:900 23px/1.05 var(--serif)}.pet-neighbor-head p{max-width:650px;margin:5px 0 0;color:#b9cbc1;font-size:11.5px;line-height:1.4}.pet-neighbor-cap{flex:none;padding:7px 10px;border:1px solid rgba(233,191,94,.3);border-radius:12px;background:rgba(8,19,20,.5);color:#f0d89f;font-size:10.5px;font-weight:900;text-align:center}
  .pet-neighbor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pet-neighbor-card{position:relative;display:grid;grid-template-columns:66px minmax(0,1fr);gap:9px;align-items:center;min-height:112px;padding:11px;border:1px solid rgba(229,190,99,.25);border-radius:15px;background:linear-gradient(145deg,rgba(68,48,31,.6),rgba(18,49,50,.72));color:#eadfc7;text-align:left;cursor:pointer;box-shadow:0 9px 20px rgba(0,0,0,.2)}.pet-neighbor-card:hover,.pet-neighbor-card:focus-visible{border-color:#e6bd61;outline:none;transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.28),0 0 20px rgba(227,178,69,.1)}.pet-neighbor-card.done{border-color:rgba(102,205,176,.44)}.pet-neighbor-avatar{display:grid;place-items:center;width:62px;height:62px;border:1px solid rgba(255,222,139,.26);border-radius:50%;background:radial-gradient(circle,#3b665e,#192b2c 70%);font-size:42px;filter:drop-shadow(0 5px 4px rgba(0,0,0,.4))}.pet-neighbor-card b{display:block;color:#ffebba;font-size:13px}.pet-neighbor-card small{display:block;margin-top:3px;color:#aebeb5;font-size:9.5px;line-height:1.3}.pet-neighbor-badge{display:inline-block;margin-top:6px;padding:3px 6px;border-radius:999px;background:rgba(234,191,93,.13);color:#f2d894;font-size:8.5px;font-weight:900}.pet-neighbor-card.done .pet-neighbor-badge{background:rgba(86,190,158,.14);color:#9ee4cf}
  .pet-neighbor-visit{display:grid;gap:10px}.pet-neighbor-visitbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.pet-neighbor-visitbar .btn{padding:7px 10px}.pet-neighbor-visitbar b{color:#ffe4a2;font:900 18px var(--serif)}.pet-neighbor-privacy{color:#9fb2a8;font-size:9.5px}
  .pet-neighbor-living{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,280px);border:1px solid rgba(233,193,100,.25);border-radius:16px;overflow:hidden;background:#101a1c;box-shadow:0 16px 38px rgba(0,0,0,.3)}.pet-neighbor-scene{min-height:390px;aspect-ratio:16/9;touch-action:auto}.pet-neighbor-scene .pet-villa-item{pointer-events:none}.pet-neighbor-pet.visitor{filter:drop-shadow(0 8px 6px rgba(0,0,0,.5)) drop-shadow(0 0 12px rgba(103,216,187,.45))}.pet-neighbor-scene.playing .pet-neighbor-pet.host{animation:petNeighborHost 1.1s ease-in-out 2}.pet-neighbor-scene.playing .pet-neighbor-pet.visitor{animation:petNeighborVisit 1.1s ease-in-out 2}
  .pet-neighbor-book{display:flex;flex-direction:column;gap:9px;padding:14px;background:radial-gradient(circle at 80% 0,rgba(226,173,74,.13),transparent 32%),linear-gradient(165deg,#263638,#172426 62%,#111b1d)}.pet-neighbor-book h4{margin:0;color:#ffe6a2;font:900 20px var(--serif)}.pet-neighbor-book p{margin:0;color:#b9c9c0;font-size:10.5px;line-height:1.4}.pet-neighbor-book .pet-life-nature{margin-top:2px}.pet-neighbor-play{margin-top:auto;padding:10px;border:1px solid rgba(102,207,176,.28);border-radius:12px;background:rgba(34,105,84,.18)}.pet-neighbor-play b{display:block;color:#b8efd7;font-size:11px}.pet-neighbor-play small{display:block;margin:3px 0 8px;color:#b7c9be;font-size:9.5px;line-height:1.35}.pet-neighbor-play .btn{width:100%;padding:8px;font-size:10.5px}
  .pet-playdate-story{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;padding:11px 12px;border:1px solid rgba(240,198,102,.35);border-radius:13px;background:linear-gradient(115deg,rgba(104,75,31,.45),rgba(30,90,75,.4));animation:petStoryArrive .55s ease both}.pet-playdate-story>span{font-size:31px;text-align:center}.pet-playdate-story b{display:block;color:#ffebb8}.pet-playdate-story small{display:block;margin-top:2px;color:#c2d3c8;line-height:1.35}
  @keyframes petNeighborHost{0%,100%{transform:translate(-50%,-50%)}35%{transform:translate(-15%,-74%) rotate(8deg) scale(1.12)}70%{transform:translate(-45%,-48%) rotate(-5deg)}}@keyframes petNeighborVisit{0%,100%{transform:translate(-50%,-50%)}35%{transform:translate(-85%,-70%) rotate(-8deg) scale(1.12)}70%{transform:translate(-55%,-48%) rotate(5deg)}}@keyframes petStoryArrive{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
  @media(max-width:820px){.pet-neighbor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-neighbor-living{grid-template-columns:1fr}.pet-neighbor-book{border-top:1px solid rgba(233,193,100,.24)}}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.pet-sanctuary .pet-tab{padding:9px 2px;font-size:9px}.pet-neighborhood{padding:10px}.pet-neighbor-head h4{font-size:19px}.pet-neighbor-head p{font-size:10px}.pet-neighbor-cap{padding:5px 7px;font-size:8.5px}.pet-neighbor-grid{grid-template-columns:1fr}.pet-neighbor-card{min-height:92px;grid-template-columns:54px minmax(0,1fr)}.pet-neighbor-avatar{width:50px;height:50px;font-size:34px}.pet-neighbor-visitbar{align-items:flex-start}.pet-neighbor-visitbar b{font-size:15px}.pet-neighbor-privacy{max-width:140px;text-align:right}.pet-neighbor-scene{min-height:410px;aspect-ratio:4/4.6}.pet-neighbor-book{padding:11px}.pet-neighbor-play{margin-top:3px}}
  @media(prefers-reduced-motion:reduce){.pet-neighbor-card:hover{transform:none}.pet-neighbor-scene.playing .pet-neighbor-pet.host,.pet-neighbor-scene.playing .pet-neighbor-pet.visitor,.pet-playdate-story{animation:none}}
  /* Companion Odyssey: a daily, presence-proven journey across the Plaza. */
  .pet-sanctuary .pet-tabs{grid-template-columns:repeat(8,minmax(0,1fr))}.pet-summary-chip.odyssey,.pet-summary-chip.dream{appearance:none;cursor:pointer;font:inherit}.pet-summary-chip.dream{border-color:rgba(173,158,235,.4);color:#ddd2ff}.pet-summary-chip.odyssey:hover,.pet-summary-chip.odyssey:focus-visible,.pet-summary-chip.dream:hover,.pet-summary-chip.dream:focus-visible{border-color:#f0cb71;color:#fff0b9;outline:none;box-shadow:0 0 0 2px rgba(239,195,91,.16)}
  .pet-pane.pet-odyssey-pane{padding:0;background:#111d20}.pet-odyssey{position:relative;min-height:100%;padding:18px;overflow:hidden;color:#f4e5be;background:radial-gradient(circle at 18% 8%,rgba(236,183,70,.21),transparent 27%),radial-gradient(circle at 87% 85%,rgba(73,181,158,.2),transparent 30%),linear-gradient(145deg,#203537,#111c20 68%,#0d171a)}.pet-odyssey::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:radial-gradient(circle,rgba(255,230,164,.55) 0 1px,transparent 1.5px);background-size:31px 31px;mask-image:linear-gradient(135deg,#000,transparent 70%)}
  .pet-odyssey-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:18px;border:1px solid rgba(239,196,99,.34);border-radius:18px;background:linear-gradient(120deg,rgba(95,64,31,.72),rgba(24,66,66,.75));box-shadow:0 16px 38px rgba(0,0,0,.28)}.pet-odyssey-kicker{color:#82ddc7;font-size:9px;font-weight:950;letter-spacing:1.8px;text-transform:uppercase}.pet-odyssey-head h4{margin:4px 0 5px;color:#ffe7a5;font:950 clamp(25px,4vw,38px)/1 var(--serif)}.pet-odyssey-head p{max-width:650px;margin:0;color:#c2d3c8;font-size:11.5px;line-height:1.45}.pet-odyssey-traveler{display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px;align-items:center;min-width:190px;padding:9px;border:1px solid rgba(242,207,124,.3);border-radius:14px;background:rgba(5,17,18,.42)}.pet-odyssey-traveler>span{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:radial-gradient(circle,#4f7b70,#1a3031 70%);font-size:38px;filter:drop-shadow(0 6px 5px rgba(0,0,0,.42))}.pet-odyssey-traveler b{display:block;color:#fff0bd}.pet-odyssey-traveler small{display:block;margin-top:2px;color:#9eb6ab;font-size:9.5px}
  .pet-odyssey-progress{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:13px 0}.pet-odyssey-stat{padding:10px 12px;border:1px solid rgba(231,192,101,.24);border-radius:13px;background:rgba(5,17,18,.42)}.pet-odyssey-stat b{display:block;color:#ffe4a0;font:900 18px var(--serif)}.pet-odyssey-stat small{display:block;margin-top:2px;color:#9fb5ab;font-size:9.5px;line-height:1.3}.pet-odyssey-meter{position:relative;grid-column:1/-1;height:9px;margin-top:-2px;border-radius:999px;background:rgba(0,0,0,.38);overflow:hidden}.pet-odyssey-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#58cdb0,#f1c85f);box-shadow:0 0 15px rgba(95,222,185,.42);transition:width .45s ease}
  .pet-odyssey-map{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:18px 0}.pet-odyssey-map::before{content:"";position:absolute;left:15%;right:15%;top:44px;height:3px;background:repeating-linear-gradient(90deg,rgba(236,199,111,.65) 0 9px,transparent 9px 16px);filter:drop-shadow(0 0 5px rgba(235,191,92,.35))}.pet-odyssey-stop{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;min-height:184px;padding:12px 10px;border:1px solid rgba(231,191,98,.24);border-radius:17px;background:linear-gradient(165deg,rgba(63,82,69,.9),rgba(15,36,38,.94));color:#eadfc3;text-align:center;box-shadow:0 11px 24px rgba(0,0,0,.22)}.pet-odyssey-stop.current{border-color:#f0c862;box-shadow:0 14px 30px rgba(0,0,0,.3),0 0 25px rgba(239,193,81,.13)}.pet-odyssey-stop.visited{border-color:rgba(89,208,175,.52);background:linear-gradient(165deg,rgba(40,105,85,.82),rgba(15,45,42,.94))}.pet-odyssey-seal{display:grid;place-items:center;width:66px;height:66px;border:2px solid rgba(238,202,118,.5);border-radius:50%;background:radial-gradient(circle,#755633,#2c302b 70%);font-size:39px;filter:drop-shadow(0 7px 6px rgba(0,0,0,.45));transition:transform .2s}.pet-odyssey-stop.visited .pet-odyssey-seal{border-color:#8be0c7;background:radial-gradient(circle,#397f6b,#173b38 70%)}.pet-odyssey-stop.current .pet-odyssey-seal{animation:petOdysseyCompass 1.8s ease-in-out infinite}.pet-odyssey-stop b{margin-top:9px;color:#ffe8ad;font-size:14px}.pet-odyssey-stop p{flex:1;margin:4px 0 8px;color:#aebfb5;font-size:9.5px;line-height:1.35}.pet-odyssey-stamp{position:absolute;right:8px;top:8px;transform:rotate(8deg);padding:3px 6px;border:2px solid #86dcc3;border-radius:6px;color:#9de9d2;font-size:8px;font-weight:950;letter-spacing:.6px;text-transform:uppercase}.pet-odyssey-stop .btn{width:100%;min-height:34px;padding:6px 8px;font-size:10px}.pet-odyssey-stop .btn:disabled{opacity:.52}
  .pet-odyssey-footer{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 15px;border:1px solid rgba(109,210,181,.28);border-radius:14px;background:linear-gradient(120deg,rgba(27,96,78,.25),rgba(88,65,31,.28))}.pet-odyssey-footer b{display:block;color:#ffe5a5;font-size:13px}.pet-odyssey-footer small{display:block;margin-top:3px;color:#aebfb5;font-size:10px;line-height:1.4}.pet-odyssey-footer .btn{min-width:150px}.pet-odyssey-complete{border-color:rgba(239,198,99,.44);background:linear-gradient(120deg,rgba(116,79,30,.42),rgba(31,104,82,.36))}
  .pet-odyssey-arrival{position:absolute;z-index:850;left:50%;top:80px;width:min(440px,calc(100% - 28px));transform:translateX(-50%);padding:12px 15px;border:1px solid rgba(255,222,133,.72);border-radius:15px;background:linear-gradient(120deg,rgba(34,91,77,.97),rgba(90,59,29,.97));color:#fff0bf;text-align:center;box-shadow:0 18px 45px rgba(0,0,0,.5),0 0 35px rgba(238,190,76,.2);animation:petOdysseyArrival 4.2s ease both;pointer-events:none}.pet-odyssey-arrival b{display:block;font:950 18px var(--serif)}.pet-odyssey-arrival small{display:block;margin-top:3px;color:#cae3d6;font-size:10px}.pet-odyssey-arrival>span{font-size:27px}
  @keyframes petOdysseyCompass{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(4deg)}}@keyframes petOdysseyArrival{0%{opacity:0;transform:translate(-50%,-16px) scale(.95)}10%,82%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-12px) scale(.98)}}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-sanctuary .pet-tab{padding:8px 2px;font-size:8.8px}.pet-odyssey{padding:10px}.pet-odyssey-head{grid-template-columns:1fr;padding:14px}.pet-odyssey-head h4{font-size:27px}.pet-odyssey-traveler{min-width:0}.pet-odyssey-progress{gap:5px}.pet-odyssey-stat{padding:8px 7px}.pet-odyssey-stat b{font-size:15px}.pet-odyssey-map{grid-template-columns:1fr;gap:10px;margin:13px 0}.pet-odyssey-map::before{left:34px;right:auto;top:38px;bottom:38px;width:3px;height:auto;background:repeating-linear-gradient(180deg,rgba(236,199,111,.65) 0 9px,transparent 9px 16px)}.pet-odyssey-stop{display:grid;grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto auto auto;min-height:104px;padding:10px 10px 10px 15px;text-align:left}.pet-odyssey-seal{grid-row:1/4;width:54px;height:54px;font-size:32px}.pet-odyssey-stop b{margin:2px 0 0}.pet-odyssey-stop p{margin:2px 0 6px}.pet-odyssey-stop .btn{width:auto}.pet-odyssey-footer{grid-template-columns:1fr}.pet-odyssey-footer .btn{width:100%}.pet-odyssey-stamp{right:7px;top:6px}}
  @media(prefers-reduced-motion:reduce){.pet-odyssey-stop.current .pet-odyssey-seal,.pet-odyssey-arrival{animation:none}.pet-odyssey-meter i{transition:none}}
  /* Companion League: a disclosed, server-refereed tactical circuit. */
  .pet-sanctuary .pet-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}.pet-pane.pet-league-pane{padding:0;background:#111821}.pet-league{min-height:100%;padding:18px;color:#f2e5c4;background:radial-gradient(circle at 12% 0,rgba(225,169,65,.2),transparent 30%),radial-gradient(circle at 88% 62%,rgba(64,164,164,.17),transparent 34%),linear-gradient(150deg,#27303a,#111821 67%,#121b20)}
  .pet-league-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:start;padding:18px;border:1px solid rgba(240,196,94,.36);border-radius:18px;background:linear-gradient(120deg,rgba(101,65,29,.78),rgba(26,70,72,.75));box-shadow:0 16px 38px rgba(0,0,0,.3)}.pet-league-kicker{color:#83dfca;font-size:9px;font-weight:950;letter-spacing:1.7px;text-transform:uppercase}.pet-league-head h4{margin:4px 0 5px;color:#ffe5a1;font:950 clamp(27px,4vw,39px)/1 var(--serif)}.pet-league-head p{max-width:650px;margin:0;color:#c5d3cb;font-size:11.5px;line-height:1.45}.pet-league-career{min-width:150px;padding:10px 12px;border:1px solid rgba(255,221,137,.32);border-radius:14px;background:rgba(6,18,20,.43);text-align:center}.pet-league-career b{display:block;color:#ffe281;font:950 29px var(--serif)}.pet-league-career small{color:#a9bbb2;font-size:9.5px}
  .pet-league-road{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}.pet-league-trial{position:relative;min-height:145px;padding:13px;border:1px solid rgba(233,192,96,.24);border-radius:15px;background:linear-gradient(150deg,rgba(62,78,71,.88),rgba(17,35,39,.94));color:#e7dcc2;text-align:left;cursor:pointer;box-shadow:0 9px 21px rgba(0,0,0,.2)}.pet-league-trial:hover,.pet-league-trial:focus-visible,.pet-league-trial.on{border-color:#efc25e;outline:none;transform:translateY(-2px);box-shadow:0 13px 28px rgba(0,0,0,.3),0 0 21px rgba(233,181,66,.11)}.pet-league-trial.locked{opacity:.55;filter:saturate(.55)}.pet-league-trial>i{font-style:normal;font-size:30px}.pet-league-trial b{display:block;margin-top:4px;color:#ffe8ac;font:900 16px var(--serif)}.pet-league-trial p{margin:4px 0 8px;color:#aebeb5;font-size:9.5px;line-height:1.35}.pet-league-trial small{display:block;color:#84d8c3;font-size:9px;font-weight:900}.pet-league-stars{position:absolute;right:10px;top:9px;color:#ffe079;font-size:12px;letter-spacing:1px}.pet-league-trial.locked .pet-league-stars{color:#89938f}
  .pet-league-dock{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,260px);gap:11px;margin-top:12px}.pet-league-roster,.pet-league-brief{padding:13px;border:1px solid rgba(231,191,96,.24);border-radius:15px;background:rgba(7,18,21,.52)}.pet-league-roster h5,.pet-league-brief h5{margin:0;color:#ffe3a0;font:900 18px var(--serif)}.pet-league-roster>p,.pet-league-brief>p{margin:4px 0 10px;color:#aebdb6;font-size:9.8px;line-height:1.4}.pet-league-pickers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pet-league-picker{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px;align-items:center;min-height:62px;padding:8px;border:1px solid rgba(226,191,109,.2);border-radius:11px;background:rgba(255,255,255,.035);color:#e8dcc2;text-align:left;cursor:pointer}.pet-league-picker.on{border-color:#70d6bc;background:rgba(50,136,112,.2);box-shadow:0 0 0 2px rgba(104,218,186,.1)}.pet-league-picker:disabled{opacity:.42;cursor:not-allowed}.pet-league-picker>span{font-size:31px;text-align:center}.pet-league-picker b{display:block;color:#ffeab7;font-size:10.5px}.pet-league-picker small{display:block;margin-top:2px;color:#9fb1aa;font-size:8.5px;line-height:1.25}.pet-league-brief ul{margin:8px 0 12px;padding-left:17px;color:#b8c9c0;font-size:9.5px;line-height:1.55}.pet-league-brief .btn{width:100%}
  .pet-league-arena{margin-top:13px;padding:14px;border:1px solid rgba(239,196,98,.35);border-radius:18px;background:radial-gradient(circle at 50% 0,rgba(234,185,79,.14),transparent 34%),linear-gradient(160deg,rgba(49,65,67,.94),rgba(10,24,29,.97));box-shadow:inset 0 0 50px rgba(0,0,0,.24),0 16px 38px rgba(0,0,0,.3)}.pet-league-scorebar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:#aebeb7;font-size:9.5px;font-weight:900}.pet-league-rival{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:center;max-width:650px;margin:12px auto;padding:13px;border:1px solid rgba(238,193,94,.28);border-radius:16px;background:linear-gradient(120deg,rgba(95,61,31,.64),rgba(25,58,61,.72))}.pet-league-rival-icon{display:grid;place-items:center;width:72px;height:72px;border:2px solid rgba(255,221,138,.44);border-radius:50%;background:radial-gradient(circle,#715837,#273737 70%);font-size:46px;filter:drop-shadow(0 7px 6px rgba(0,0,0,.46));animation:petLeagueHover 2.4s ease-in-out infinite}.pet-league-rival h5{margin:0;color:#ffecb7;font:900 20px var(--serif)}.pet-league-tell{margin-top:5px;padding:7px 9px;border:1px solid rgba(100,216,187,.32);border-radius:10px;background:rgba(12,47,47,.5);color:#b9efdf;font-size:9.5px;font-weight:850}.pet-league-meter{height:8px;margin-top:8px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.4)}.pet-league-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#65d7bd,#f0ca61);transition:width .35s ease}.pet-league-squad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.pet-league-fighter{padding:11px;border:1px solid rgba(229,191,103,.22);border-radius:14px;background:rgba(5,17,20,.56)}.pet-league-fighter.resting{opacity:.52}.pet-league-fighter-head{display:grid;grid-template-columns:43px minmax(0,1fr);gap:7px;align-items:center}.pet-league-fighter-head>span{font-size:34px;text-align:center}.pet-league-fighter b{display:block;color:#ffe7ae;font-size:11px}.pet-league-fighter small{display:block;color:#9eb2aa;font-size:8.5px}.pet-league-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.pet-league-actions .btn{min-width:0;padding:7px 4px;font-size:9px}.pet-league-report{margin:10px auto 0;padding:9px 11px;border:1px solid rgba(100,208,180,.28);border-radius:11px;background:rgba(19,70,61,.27);color:#c8eadf;font-size:10px;font-weight:850;text-align:center}.pet-league-report.hit{border-color:rgba(231,181,85,.34);background:rgba(91,60,29,.32);color:#ffe2a0}.pet-league-result{margin-top:11px;padding:15px;border:1px solid rgba(238,197,100,.42);border-radius:15px;background:linear-gradient(120deg,rgba(104,72,31,.58),rgba(29,91,73,.48));text-align:center}.pet-league-result h5{margin:0;color:#ffe59f;font:950 22px var(--serif)}.pet-league-result p{margin:5px 0;color:#c8d6cf;font-size:10.5px;line-height:1.4}.pet-league-result .btn{margin-top:6px}.pet-league-earned{color:#ffe17d;font-size:20px;letter-spacing:2px}
  @keyframes petLeagueHover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
  @media(max-width:760px){.pet-league-road{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-league-dock{grid-template-columns:1fr}.pet-league-pickers{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-sanctuary .pet-tab{padding:8px 2px;font-size:8.5px}.pet-league{padding:10px}.pet-league-head{grid-template-columns:1fr;padding:14px}.pet-league-head h4{font-size:27px}.pet-league-career{text-align:left}.pet-league-career b{display:inline;margin-right:6px;font-size:21px}.pet-league-road{gap:7px}.pet-league-trial{min-height:136px;padding:10px}.pet-league-trial b{font-size:14px}.pet-league-pickers{grid-template-columns:1fr}.pet-league-squad{grid-template-columns:1fr}.pet-league-rival{grid-template-columns:58px minmax(0,1fr);padding:10px}.pet-league-rival-icon{width:54px;height:54px;font-size:36px}.pet-league-arena{padding:10px}.pet-league-fighter{padding:9px}}
  @media(prefers-reduced-motion:reduce){.pet-league-trial,.pet-league-meter i{transition:none}.pet-league-trial:hover,.pet-league-trial:focus-visible{transform:none}.pet-league-rival-icon{animation:none}}
  /* Living Household Day: one transparent, reward-free daily rhythm for the complete menagerie. */
  .pet-sanctuary .pet-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}.pet-pane.pet-routine-pane{padding:0;background:#121d23}.pet-routine{min-height:100%;padding:18px;color:#f4ead4;background:radial-gradient(circle at 10% -5%,rgba(246,185,101,.22),transparent 31%),radial-gradient(circle at 92% 50%,rgba(85,186,176,.16),transparent 34%),linear-gradient(155deg,#26333a,#132228 66%,#111a21)}
  .pet-routine-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:18px;border:1px solid rgba(242,201,119,.35);border-radius:19px;background:linear-gradient(120deg,rgba(111,70,37,.75),rgba(33,79,79,.7));box-shadow:0 16px 38px rgba(0,0,0,.28)}.pet-routine-kicker{color:#93ead4;font-size:9px;font-weight:950;letter-spacing:1.6px;text-transform:uppercase}.pet-routine-head h4{margin:4px 0 6px;color:#ffe9af;font:950 clamp(28px,4vw,40px)/1 var(--serif)}.pet-routine-head p{max-width:680px;margin:0;color:#cad8d0;font-size:11px;line-height:1.5}.pet-routine-law{max-width:210px;padding:10px 12px;border:1px solid rgba(255,224,153,.3);border-radius:13px;background:rgba(7,24,26,.43);color:#cceadf;font-size:9px;font-weight:850;line-height:1.45;text-align:center}.pet-routine-law b{display:block;color:#ffe18c;font-size:12px}
  .pet-routine-now{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(170px,230px);gap:13px;align-items:center;margin-top:12px;padding:15px;border:1px solid rgba(239,198,104,.31);border-radius:18px;background:linear-gradient(135deg,rgba(76,61,43,.75),rgba(18,52,57,.84));box-shadow:0 13px 30px rgba(0,0,0,.23)}.pet-routine-now-icon{display:grid;place-items:center;width:86px;height:86px;border:1px solid rgba(255,224,153,.4);border-radius:50%;background:radial-gradient(circle,rgba(243,197,106,.27),rgba(23,57,59,.82) 70%);font-size:54px;filter:drop-shadow(0 8px 7px rgba(0,0,0,.4));animation:petRoutineBreathe 3.2s ease-in-out infinite}.pet-routine-live{display:inline-flex;align-items:center;gap:5px;color:#93e5d0;font-size:8.5px;font-weight:950;letter-spacing:1px;text-transform:uppercase}.pet-routine-live::before{content:'';width:7px;height:7px;border-radius:50%;background:#76e3c3;box-shadow:0 0 0 5px rgba(118,227,195,.11)}.pet-routine-now h5{margin:5px 0 3px;color:#ffedbd;font:950 23px var(--serif)}.pet-routine-zone{color:#e9ca7b;font-size:9px;font-weight:900}.pet-routine-now p{margin:5px 0 0;color:#c9d7d0;font-size:10px;line-height:1.45}.pet-routine-next{padding:11px;border:1px solid rgba(133,213,190,.25);border-radius:12px;background:rgba(8,30,33,.49)}.pet-routine-next small{display:block;color:#8fdac7;font-size:8px;font-weight:950;text-transform:uppercase}.pet-routine-next b{display:block;margin-top:4px;color:#ffe2a2;font-size:11px}.pet-routine-next span{display:block;margin-top:3px;color:#aebeb7;font-size:8.5px;line-height:1.35}
  .pet-routine-choice{margin-top:13px;padding:14px;border:1px solid rgba(235,197,111,.24);border-radius:17px;background:rgba(7,22,26,.5)}.pet-routine-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:9px}.pet-routine-section-title h5{margin:0;color:#ffe5a7;font:900 20px var(--serif)}.pet-routine-section-title p{max-width:560px;margin:0;color:#aebfb8;font-size:9px;line-height:1.4;text-align:right}.pet-routine-tones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.pet-routine-tone{position:relative;min-height:237px;padding:13px;border:1px solid color-mix(in srgb,var(--routine-color) 45%,transparent);border-radius:15px;background:linear-gradient(155deg,color-mix(in srgb,var(--routine-color) 19%,#263033),rgba(10,26,31,.94));color:#e9e2d3;text-align:left;cursor:pointer}.pet-routine-tone:hover,.pet-routine-tone:focus-visible{border-color:var(--routine-color);outline:none;transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.3),0 0 22px color-mix(in srgb,var(--routine-color) 16%,transparent)}.pet-routine-tone:disabled{opacity:.55;cursor:wait;transform:none}.pet-routine-tone>i{display:block;font-style:normal;font-size:31px}.pet-routine-tone>b{display:block;margin-top:3px;color:#ffebbb;font:900 17px var(--serif)}.pet-routine-tone>p{min-height:39px;margin:4px 0 8px;color:#bdcbc4;font-size:9px;line-height:1.38}.pet-routine-preview{display:grid;gap:4px}.pet-routine-preview span{display:grid;grid-template-columns:18px minmax(0,1fr);padding:5px 6px;border-radius:8px;background:rgba(0,0,0,.17);color:#d8e3dd;font-size:8px;line-height:1.25}.pet-routine-preview b{display:block;color:#f3d894;font-size:8px}.pet-routine-status{margin-top:9px;padding:8px 10px;border:1px solid rgba(118,214,187,.28);border-radius:10px;background:rgba(19,70,61,.25);color:#c8eadf;font-size:9px;font-weight:850;text-align:center}.pet-routine-status.locked{border-color:rgba(238,194,99,.4);background:rgba(93,63,31,.35);color:#ffe0a0}
  .pet-routine-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.pet-routine-phase{position:relative;min-height:185px;padding:12px;border:1px solid rgba(223,196,130,.2);border-radius:14px;background:linear-gradient(150deg,rgba(59,70,68,.75),rgba(10,27,32,.88))}.pet-routine-phase.current{border-color:#f0c56b;box-shadow:0 0 0 2px rgba(240,197,107,.1),0 12px 27px rgba(0,0,0,.25)}.pet-routine-phase.current::after{content:'NOW';position:absolute;right:8px;top:8px;padding:3px 5px;border-radius:999px;background:#e5b657;color:#26180c;font-size:7px;font-weight:950}.pet-routine-phase-head{display:flex;align-items:center;gap:6px;color:#ffe3a0;font-size:10px;font-weight:950}.pet-routine-phase-head i{font-style:normal;font-size:20px}.pet-routine-phase>small{display:block;margin:2px 0 9px;color:#8fa59d;font-size:7.5px}.pet-routine-phase-scene{font-size:28px}.pet-routine-phase h6{margin:3px 0;color:#ffedbd;font:900 14px var(--serif)}.pet-routine-phase em{color:#e4c577;font-size:8px;font-style:normal;font-weight:900}.pet-routine-phase p{margin:6px 0 0;color:#aebdb6;font-size:8.5px;line-height:1.38}
  .pet-routine-household{margin-top:13px;padding:14px;border:1px solid rgba(128,211,190,.24);border-radius:16px;background:rgba(7,23,27,.48)}.pet-routine-members{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:7px}.pet-routine-member{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center;min-height:70px;padding:8px;border:1px solid rgba(226,196,126,.18);border-radius:12px;background:linear-gradient(140deg,rgba(76,62,47,.47),rgba(15,39,42,.68))}.pet-routine-member.walking{border-color:rgba(239,195,95,.48)}.pet-routine-member-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle,rgba(237,195,104,.25),rgba(24,54,56,.75));font-size:32px}.pet-routine-member b{display:block;color:#ffe7ac;font-size:10px}.pet-routine-member small{display:block;margin-top:2px;color:#aabcb4;font-size:8px;line-height:1.3}.pet-routine-member em{display:block;margin-top:3px;color:#82d5c0;font-size:8px;font-style:normal;font-weight:850}.pet-routine-calendar{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.pet-routine-day{padding:6px 8px;border:1px solid rgba(224,194,126,.18);border-radius:9px;background:rgba(255,255,255,.035);color:#b8c8c0;font-size:8px}.pet-routine-day b{color:#f0d698}.pet-routine-empty{margin-top:12px;padding:24px;border:1px dashed rgba(233,196,110,.3);border-radius:15px;color:#b8c8c0;font-size:10px;text-align:center}
  @keyframes petRoutineBreathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.025)}}
  @media(max-width:760px){.pet-routine-tones{grid-template-columns:1fr}.pet-routine-tone{min-height:0}.pet-routine-tone>p{min-height:0}.pet-routine-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:650px){.pet-sanctuary .pet-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pet-routine{padding:10px}.pet-routine-head{grid-template-columns:1fr;padding:14px}.pet-routine-head h4{font-size:28px}.pet-routine-law{max-width:none;text-align:left}.pet-routine-now{grid-template-columns:64px minmax(0,1fr);padding:11px}.pet-routine-now-icon{width:60px;height:60px;font-size:39px}.pet-routine-next{grid-column:1/-1}.pet-routine-section-title{align-items:flex-start;flex-direction:column}.pet-routine-section-title p{text-align:left}.pet-routine-choice,.pet-routine-household{padding:10px}.pet-routine-timeline{grid-template-columns:1fr}.pet-routine-phase{min-height:0}.pet-routine-members{grid-template-columns:1fr}}
  @media(prefers-reduced-motion:reduce){.pet-routine-now-icon{animation:none}.pet-routine-tone{transition:none}.pet-routine-tone:hover,.pet-routine-tone:focus-visible{transform:none}}
  .room-painted-mine .station[data-scene="minerals"]{left:25%!important;top:60%!important}
  .room-painted-mine .station[data-scene="deep"]{left:76%!important;top:60%!important}
  .room-painted-olympiad .station[data-scene="bastion"]{left:50%!important;top:43%!important}
  .room-painted-olympiad .station[data-scene="war"]{left:24%!important;top:69%!important}
  .room-painted-olympiad .station[data-scene="yard"]{left:76%!important;top:43%!important}
  .room-painted-olympiad .station[data-scene="defend"]{left:76%!important;top:69%!important}
  .room-painted-cards .station[data-scene="poolhall"]{left:50%!important;top:33%!important}
  .room-painted-cards .station[data-scene="cards"]{left:50%!important;top:67%!important}
  .room-painted-cards .station[data-scene="sportsbook"]{left:78%!important;top:51%!important}
  .room-painted-cardhall .station{min-width:140px;min-height:72px}
  .room-painted-cardhall .station[data-scene="hearts"]{left:29%!important;top:31%!important}
  .room-painted-cardhall .station[data-scene="spades"]{left:50%!important;top:31%!important}
  .room-painted-cardhall .station[data-scene="bridge"]{left:71%!important;top:31%!important}
  .room-painted-cardhall .station[data-scene="patience"]{left:29%!important;top:45%!important}
  .room-painted-cardhall .station[data-scene="holdem"]{left:50%!important;top:45%!important}
  .room-painted-cardhall .station[data-scene="tabula"]{left:71%!important;top:45%!important}
  .room-painted-cardhall .station[data-scene="speed"]{left:29%!important;top:59%!important}
  .room-painted-cardhall .station[data-scene="ohhell"]{left:50%!important;top:59%!important}
  .room-painted-cardhall .station[data-scene="quina"]{left:71%!important;top:59%!important}
  .room-painted-cardhall .station .stlabel{bottom:-12px!important}
  .room-painted-shipdeck .station[data-scene="wheel"]{left:27%!important;top:31%!important}
  .room-painted-shipdeck .station[data-scene="voyage"]{left:50%!important;top:34%!important}
  .room-painted-shipdeck .station[data-scene="log"]{left:75%!important;top:32%!important}
  .room-painted-shipdeck .station[data-scene="company"]{left:17%!important;top:58%!important}
  .room-painted-shipdeck .station[data-scene="invite"]{left:50%!important;top:58%!important}
  .room-painted-shipdeck .station[data-scene="horn"]{left:82%!important;top:55%!important}
  .room-painted-theater .station[data-scene="cinema"]{left:24%!important;top:58%!important}
  .room-painted-theater .station[data-scene="club"]{left:76%!important;top:58%!important}
  .room-painted-palace .station[data-scene="academy"]{left:17%!important;top:43%!important}
  .room-painted-palace .station[data-scene="pethouse"]{left:50%!important;top:34%!important}
  .room-painted-palace .station[data-scene="harbor"]{left:83%!important;top:43%!important}
  .room-painted-palace .station[data-scene="grounds"]{left:50%!important;top:57%!important}
  .room-painted-palace .station[data-scene="court"]{left:50%!important;top:77%!important}
  .room-painted-wardrobe .station[data-scene="robe"]{left:17%!important;top:48%!important}
  .room-painted-wardrobe .station[data-scene="mirror"]{left:50%!important;top:43%!important}
  .room-painted-wardrobe .station[data-scene="head"]{left:72%!important;top:48%!important}
  .room-painted-wardrobe .station[data-scene="hand"]{left:86%!important;top:62%!important}
  .room-painted-wardrobe .station[data-scene="full"]{left:28%!important;top:76%!important}
  .room-painted-club .station[data-scene="decks"]{left:50%!important;top:42%!important}
  .room-painted-club .station[data-scene="dance"]{left:24%!important;top:67%!important}
  .room-painted-club .station[data-scene="karaoke"]{left:50%!important;top:59%!important}
  .room-painted-club .station[data-scene="bar"]{left:79%!important;top:62%!important}
  .room-painted-cinema .station[data-scene="screen"]{left:50%!important;top:48%!important;min-width:220px;min-height:150px}
  .room-painted-cinema .station[data-scene="concessions"]{left:81%!important;top:68%!important}
  .room-painted-academy .station[data-scene="forum"]{left:23%!important;top:53%!important}
  .room-painted-academy .station[data-scene="archives"]{left:81%!important;top:52%!important}
  .room-painted-academy .station[data-scene="warmap"]{left:50%!important;top:67%!important}
  .room-painted-court .station[data-scene="wardrobe"]{left:19%!important;top:42%!important}
  .room-painted-court .station[data-scene="relics"]{left:50%!important;top:39%!important}
  .room-painted-court .station[data-scene="menagerie"]{left:81%!important;top:42%!important}
  .room-painted-court .station[data-scene="auction"]{left:21%!important;top:64%!important}
  .room-painted-court .station[data-scene="academy"]{left:50%!important;top:65%!important}
  .room-painted-court .station[data-scene="harbor"]{left:79%!important;top:64%!important}
  .room-painted-harbor .station[data-scene="shipwright"]{left:22%!important;top:44%!important}
  .room-painted-harbor .station[data-scene="sail"]{left:55%!important;top:43%!important}
  .room-painted-harbor .station[data-scene="fleet"]{left:84%!important;top:44%!important}
  .room-painted-harbor .station[data-scene="broadside"]{left:50%!important;top:69%!important}
  .harbor-command{position:absolute;z-index:940;left:50%;top:10.5%;width:min(760px,calc(100% - 170px));transform:translateX(-50%);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.85fr);gap:10px;padding:12px;border:1px solid rgba(239,199,111,.58);border-radius:17px;background:radial-gradient(circle at 12% 0,rgba(70,169,197,.2),transparent 38%),linear-gradient(145deg,rgba(10,26,38,.94),rgba(13,18,24,.96) 62%,rgba(47,31,17,.94));box-shadow:0 15px 38px rgba(0,0,0,.46),inset 0 0 0 1px rgba(255,241,199,.07);color:#f4e8cb;backdrop-filter:blur(8px)}
  .harbor-command-main{min-width:0;padding:2px 4px}.harbor-command-kicker{color:#76d7ec;font-size:9px;font-weight:900;letter-spacing:1.7px;text-transform:uppercase}.harbor-command h3{margin:3px 0 4px;color:#ffe7ad;font:900 clamp(20px,2.8vw,31px)/1 var(--serif);text-shadow:0 2px 5px #000}.harbor-command-copy{color:#b9cbd0;font-size:10.5px;line-height:1.35}.harbor-command-stats{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.harbor-command-stat{padding:4px 7px;border:1px solid rgba(124,198,215,.24);border-radius:999px;background:rgba(2,12,17,.4);color:#e5d4ab;font-size:9px;font-weight:900}.harbor-command-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-content:center}.harbor-command-actions .btn{min-height:38px;padding:7px 8px;font-size:10.5px}.harbor-command-actions .primary-voyage{grid-column:1/-1;border-color:#f1c35f;background:linear-gradient(180deg,#f1cf75,#b77a28);color:#211407;font-weight:1000;box-shadow:0 6px 17px rgba(214,154,48,.22)}
  .shipclass-yard{margin-top:14px;padding-top:12px;border-top:1px solid rgba(104,198,215,.2)}.shipclass-yard h3{margin:0;color:#ffe0a0;font:800 17px var(--serif)}.shipclass-yard>p{margin:4px 0 9px;color:#9fb8bf;font-size:10px;line-height:1.4}.shipclass-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.shipclass-card{padding:9px;border:1px solid rgba(104,198,215,.2);border-radius:11px;background:rgba(3,18,25,.3)}.shipclass-card.current{border-color:rgba(241,195,95,.58);background:linear-gradient(145deg,rgba(73,55,23,.34),rgba(4,24,31,.38))}.shipclass-card.owned:not(.current){border-color:rgba(89,177,119,.28)}.shipclass-card b,.shipclass-card small{display:block}.shipclass-card b{color:#e8d7b2;font:700 14px var(--serif)}.shipclass-card small{margin-top:3px;color:#9fb8bf;font-size:9px;line-height:1.35}.shipclass-reqs{display:flex;flex-wrap:wrap;gap:4px;margin:7px 0}.shipclass-req{padding:3px 5px;border-radius:999px;background:rgba(0,0,0,.24);color:#c3b6a0;font:8px var(--mono)}.shipclass-req.done{color:#91d3a8}.shipclass-card .btn{width:100%;margin-top:4px}.shipclass-max{margin-top:8px;color:#9ed7ba;font:9px var(--mono)}
  .harbor-command.loading{display:flex;align-items:center;justify-content:center;min-height:76px;color:#d2c4a6;font-weight:800}.room-painted-harbor .plazafloor::after{content:"";position:absolute;left:2%;right:2%;bottom:4%;height:8%;border-radius:50%;background:radial-gradient(ellipse,rgba(82,194,222,.18),transparent 66%);animation:harborWake 3.8s ease-in-out infinite;pointer-events:none}
  /* Hull market, sea fight, and launch ceremony (Harbor renovation) */
  .shipart{display:flex;align-items:center;justify-content:center}
  .shipart svg{display:block;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}
  .hullname{margin:10px 0 4px}
  .hullname input{width:100%;background:var(--raised);border:1px solid var(--line2);border-radius:10px;color:var(--ink);padding:10px 12px;font:inherit;box-sizing:border-box}
  .hullname input.shake{animation:hullshake .35s}
  @keyframes hullshake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
  .hullmarket{display:flex;flex-direction:column;gap:8px;margin-top:8px}
  .hullcard{display:flex;align-items:center;gap:10px;padding:9px}
  .hullcard .hullmid{flex:1;min-width:0}
  .hullcard.canbuy{border-color:rgba(232,193,90,.5);background:linear-gradient(145deg,rgba(73,55,23,.3),rgba(4,24,31,.36))}
  .hullcard .hullbuy{display:flex;flex-direction:column;align-items:center;gap:2px}
  .hullstats{color:#e8c15a!important;letter-spacing:.08em}
  .hullwant{color:#d9c9a5;font-weight:900}
  .hullfoot{margin-top:10px}
  .flagbanner{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid rgba(232,193,90,.4);border-radius:12px;background:linear-gradient(145deg,rgba(52,38,16,.5),rgba(6,26,36,.5))}
  .flagmid b{font:800 17px var(--serif);color:#ffe7ad}
  .flagmid small{display:block;color:#b9cbd0;margin-top:2px}
  .refitrow{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 10px;border:1px solid rgba(226,180,90,.22);border-radius:10px;background:rgba(0,0,0,.18)}
  .refitnote{margin-top:8px}
  .tradein{display:block;margin-top:4px;color:#9ed7ba!important}
  .fleetrow{display:flex;align-items:center;gap:10px;margin-top:6px;padding:8px 10px;border:1px solid rgba(226,180,90,.2);border-radius:10px;background:rgba(0,0,0,.16)}
  .fleetrow.mine{border-color:rgba(232,193,90,.55);background:rgba(60,44,16,.28)}
  /* ARENA_SLICE_END 03-companion-household */
  /* ARENA_SLICE_START 04-harbor-war-fronts -- spliced from arena-css/04-harbor-war-fronts.css; edit that file, not this region */
  .sf-page{max-width:560px;margin:6px auto 0;position:relative}
  .seafight{position:relative;margin-top:6px}
  .sf-hud{display:flex;align-items:center;gap:8px;margin-bottom:6px}
  .sf-plate{flex:1;min-width:0;padding:6px 9px;border-radius:11px;border:1px solid rgba(232,193,90,.35);background:rgba(6,20,30,.55)}
  .sf-plate b{display:block;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ffe7ad}
  .sf-plate.foe b{color:#ffb3a6}
  .sf-plate small{color:#b9cbd0;font-size:10px}
  .sf-bar{height:7px;border-radius:99px;background:rgba(0,0,0,.5);overflow:hidden;margin:4px 0 2px;border:1px solid rgba(255,255,255,.12)}
  .sf-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#f1cf75,#c98f2e);transition:width .45s ease;width:100%}
  .sf-plate.foe .sf-bar i{background:linear-gradient(90deg,#ff8d7a,#c2483a)}
  .sf-round{color:#e5d4ab;font-size:10.5px;font-weight:900;text-align:center;white-space:nowrap}
  .sf-scene{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.4)}
  .seachart{display:block;width:100%;touch-action:manipulation}
  .orderdeck{display:flex;gap:6px;margin-top:8px}
  .orderdeck.sealed{opacity:.45;pointer-events:none}
  .ocard{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 2px 7px;border-radius:12px;border:1px solid rgba(226,180,90,.3);background:linear-gradient(180deg,rgba(38,28,14,.9),rgba(22,16,8,.92));color:var(--ink);cursor:pointer;font:inherit;min-height:58px}
  .ocard:active{transform:translateY(1px)}
  .ocard .oicon{font-size:19px;line-height:1}
  .ocard b{font-size:11px;color:#ffe7ad}
  .ocard small{font-size:8.5px;color:#b9cbd0;line-height:1.1;text-align:center}
  .ocard.lit{border-color:#f1c35f;background:linear-gradient(180deg,#6b4c17,#3d2a0c);box-shadow:0 0 14px rgba(241,195,95,.4);animation:ocardpulse 1.1s infinite}
  .ocard.lit b{color:#fff1c9}
  @keyframes ocardpulse{50%{box-shadow:0 0 22px rgba(241,195,95,.65)}}
  .sf-coach{margin-top:7px;text-align:center;font-size:12px;color:#e5d4ab;min-height:17px}
  .sf-log{margin-top:4px;font-size:12.5px;min-height:34px;text-align:center;color:#b9cbd0}
  .sf-banner{margin:8px 0;padding:9px 12px;border-radius:11px;border:1px solid rgba(126,200,227,.4);background:rgba(9,30,43,.72);text-align:center;font-size:12.5px;transition:opacity .7s}
  .sf-banner.fade{opacity:0}
  .sf-lobbybar{display:flex;justify-content:flex-end;margin:2px 0}
  .sf-rivalchip{font-size:11px;padding:5px 10px}
  .sf-noship{margin:10px 0;padding:12px;border:1px solid rgba(232,193,90,.4);border-radius:13px;background:linear-gradient(145deg,rgba(52,38,16,.6),rgba(6,26,36,.6));text-align:center}
  .sf-over{position:absolute;inset:0;background:rgba(8,6,3,.82);display:flex;align-items:center;justify-content:center;z-index:5;border-radius:10px}
  .sf-overcard{background:linear-gradient(180deg,#241a10,#1a1209);border:1px solid rgba(226,180,90,.4);border-radius:14px;padding:20px 22px;text-align:center;max-width:380px}
  .sf-overtitle{font:800 17px var(--serif);color:#ffe7ad;margin-bottom:4px}
  .sf-overrow{display:flex;gap:8px;justify-content:center;margin-top:12px;flex-wrap:wrap}
  .launchcer{position:fixed;inset:0;z-index:7000;background:linear-gradient(180deg,#2c1f3e 0%,#6d3f37 34%,#c96f3a 52%,#173a52 52.5%,#0c2438 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;opacity:0;transition:opacity .3s}
  .launchcer.go{opacity:1}
  .launchcer.bye{opacity:0}
  .launchcer-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}
  .launchcer-ship{position:absolute;left:50%;top:52%;transform:translate(130%,-96%) rotate(5deg)}
  .launchcer.go .launchcer-ship{transform:translate(-50%,-82%) rotate(0);transition:transform 1s cubic-bezier(.2,.7,.3,1.05)}
  .launchcer.still .launchcer-ship{transform:translate(-50%,-82%)}
  .launchcer-titles{position:relative;z-index:2;margin-top:34vh;padding:0 18px}
  .launchcer-kicker{color:#76d7ec;font-size:10px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
  .launchcer-titles h3{margin:6px 0;font:900 clamp(22px,6vw,34px) var(--serif);color:#ffe7ad;text-shadow:0 3px 10px rgba(0,0,0,.6)}
  .launchcer-cls{color:#f4e8cb;font-weight:800;font-size:13px}
  .launchcer-line{color:#d9c9a5;font-size:12px;margin-top:6px}
  .launchcer-hint{position:absolute;bottom:26px;left:0;right:0;color:#cbb98f;font-size:11px;animation:cerhint 1.6s infinite}
  @keyframes cerhint{50%{opacity:.4}}
  .launchcer-spray{position:absolute;top:52%;width:5px;height:5px;border-radius:50%;background:#cfe7f5;animation:cerspray .8s ease-out forwards}
  @keyframes cerspray{0%{transform:translate(0,0);opacity:1}100%{transform:translate(var(--dx,20px),-60px);opacity:0}}
  @media (max-width:640px){
    .orderdeck{gap:4px}
    .ocard{min-height:54px;padding:6px 1px 6px}
    .ocard .oicon{font-size:17px}
    .ocard b{font-size:10px}
    .ocard small{font-size:7.8px}
    .sf-plate b{font-size:11px}
    .hullcard .shipart svg{width:86px;height:53px}
    .sf-lobbybar{justify-content:flex-start}
    .sf-banner{margin-right:54px}
  }
  @keyframes harborWake{50%{transform:scaleX(.88);opacity:.46}}
  .room-painted-forum .station[data-scene="lessons"]{left:23%!important;top:45%!important}
  .room-painted-forum .station[data-scene="teacher"]{left:77%!important;top:45%!important}
  .room-painted-forum .station[data-scene="podium"]{left:50%!important;top:69%!important}
  .room-painted-archives .station[data-scene="assignments"]{left:18%!important;top:39%!important}
  .room-painted-archives .station[data-scene="library"]{left:50%!important;top:35%!important}
  .room-painted-archives .station[data-scene="honorroll"]{left:82%!important;top:39%!important}
  .room-painted-archives .station[data-scene="feats"]{left:26%!important;top:67%!important}
  .room-painted-archives .station[data-scene="registrar"]{left:74%!important;top:67%!important}
  .room-painted-orbital .station[data-scene="oraclearray"]{left:16%!important;top:53%!important;min-width:148px;min-height:108px}
  .room-painted-orbital .station[data-scene="aethergate"]{left:45%!important;top:54%!important;min-width:150px;min-height:112px}
  .room-painted-orbital .station[data-scene="asterionbay"]{left:81%!important;top:48%!important;min-width:170px;min-height:126px}
  .room-painted-orbital .station[data-scene="mineralsfrontier"]{left:62%!important;top:31%!important;min-width:158px;min-height:96px}
  .room-painted-orbital .station[data-scene="ashenward"]{left:38%!important;top:31%!important;min-width:158px;min-height:96px}
  .room-painted-orbital .station[data-scene="heliosfront"]{left:19%!important;top:72%!important;min-width:158px;min-height:96px}
  .room-painted-orbital .station[data-scene="aegisfleet"]{left:43%!important;top:64%!important;min-width:158px;min-height:96px}
  .room-painted-orbital .station[data-scene="riftline"]{left:66%!important;top:60%!important;min-width:158px;min-height:96px}
  .room-painted-orbital .station[data-scene="techneforge"]{left:84%!important;top:73%!important;min-width:145px;min-height:94px}
  .orbital-intro{margin:0 0 12px;padding:12px;border:1px solid rgba(93,205,255,.28);border-radius:13px;background:linear-gradient(135deg,rgba(10,32,58,.82),rgba(19,17,31,.88));color:#dbeaf4;line-height:1.5}.orbital-intro strong{display:block;margin-bottom:4px;color:#8addff;font:700 17px var(--serif)}
  .orbital-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.orbital-tech{padding:10px;border:1px solid rgba(101,198,237,.24);border-radius:11px;background:rgba(5,18,35,.68)}.orbital-tech b,.orbital-tech span{display:block}.orbital-tech b{color:#f0d790;font-size:13px}.orbital-tech span{margin-top:4px;color:#a9bfd1;font-size:11px;line-height:1.35}
  .orbital-signal{min-height:82px;display:grid;place-items:center;margin:10px 0;padding:15px;border:1px solid rgba(91,211,255,.35);border-radius:14px;background:radial-gradient(circle at 50% 15%,rgba(81,205,255,.2),transparent 55%),rgba(3,13,28,.86);color:#dff8ff;text-align:center;font:15px/1.45 var(--serif);box-shadow:inset 0 0 24px rgba(60,179,255,.09)}.orbital-signal.charged{animation:orbitalSignal .72s ease-out}
  @keyframes orbitalSignal{0%{box-shadow:inset 0 0 10px rgba(60,179,255,.08)}45%{box-shadow:inset 0 0 45px rgba(89,218,255,.42),0 0 24px rgba(70,193,255,.35)}100%{box-shadow:inset 0 0 24px rgba(60,179,255,.09)}}
  /* Asterion: Motherload's haul loop rebuilt as a neon-noir orbital mining shift. */
  body.asterionmode .utilityrail{display:none!important}
  .as-wrap{position:relative;width:100%;height:calc(100dvh - 54px);min-height:430px;overflow:hidden;border:1px solid rgba(73,228,255,.58);border-radius:7px 22px;background:#02040b;box-shadow:inset 0 0 90px rgba(28,111,171,.2),0 0 38px rgba(255,49,195,.13)}
  .as-wrap:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.014) 0 1px,transparent 1px 4px),linear-gradient(90deg,rgba(54,225,255,.035),transparent 22%,transparent 76%,rgba(255,52,198,.04));mix-blend-mode:screen}
  .as-canvas{display:block;width:100%;height:100%;touch-action:none;background:#02040b}
  .as-panel{position:absolute;z-index:5;padding:12px 14px;border:1px solid rgba(77,229,255,.48);border-radius:4px 14px;background:linear-gradient(145deg,rgba(3,15,31,.93),rgba(20,5,28,.9));color:#e5f7fb;box-shadow:inset 3px 0 0 rgba(255,52,201,.58),0 10px 30px rgba(0,0,0,.52),0 0 24px rgba(53,219,255,.09);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
  .as-map{left:14px;bottom:14px;width:220px;padding:9px 10px;pointer-events:none}.as-mapcanvas{display:block;width:100%;height:148px;margin-top:6px;border:1px solid rgba(79,231,255,.26);border-radius:3px 10px;background:rgba(0,5,14,.78);box-shadow:inset 0 0 24px rgba(35,191,236,.12)}.as-mapreadout{margin-top:5px;color:#8cefff;font:8px var(--mono);letter-spacing:.04em;white-space:nowrap}.as-map.danger{border-color:rgba(255,78,129,.72);box-shadow:inset 3px 0 0 #ff477a,0 10px 30px rgba(0,0,0,.52),0 0 26px rgba(255,49,112,.2)}
  .as-career{left:14px;top:14px;min-width:230px}.as-mission{left:50%;top:14px;transform:translateX(-50%);min-width:300px;text-align:center}.as-shiphud{right:14px;top:14px;width:245px}.as-dock{right:14px;top:268px;width:245px}.as-panel b{font-size:16px;color:#ff8be1;text-shadow:0 0 12px rgba(255,60,205,.45)}.as-kicker{font:11px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#5eeaff}.as-value{font:800 21px var(--mono);color:#f5fbff;text-shadow:0 0 14px rgba(66,222,255,.32)}.as-small{font-size:12px;color:#b5ced7;line-height:1.4}.as-scanner{margin-top:4px;color:#75edff}.as-scanner.ready{color:#d9ff85;text-shadow:0 0 8px rgba(185,255,100,.35)}.as-depth{margin-top:3px;color:#ff8edf}.as-thermal{margin-top:2px;color:#ffb36b;font:9px var(--mono);letter-spacing:.04em}.as-thermal.redline{color:#ff5b72;text-shadow:0 0 10px rgba(255,61,95,.55)}.as-chargehud{margin-top:2px;color:#ffbd68;font:9px var(--mono);letter-spacing:.04em}.as-chargehud.armed{color:#ff617e;text-shadow:0 0 10px rgba(255,65,102,.58)}.as-sentinelhud{margin-top:2px;color:#72efff;font:9px var(--mono);letter-spacing:.04em}.as-sentinelhud.hot{color:#ffb052;text-shadow:0 0 9px rgba(255,106,65,.42)}.as-sentinelhud.lock{color:#ff5f86;text-shadow:0 0 11px rgba(255,54,104,.66)}.as-core{margin-top:4px;color:#7befff;font:9px var(--mono);letter-spacing:.08em}.as-core.open{color:#d9ff85;text-shadow:0 0 9px rgba(185,255,100,.35)}.as-meter{height:9px;margin:4px 0 2px;border-radius:2px;background:#080e1c;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.as-meter i{display:block;height:100%;border-radius:inherit;transition:width .14s}.as-fuel i{background:linear-gradient(90deg,#1c87ff,#5ff5ff);box-shadow:0 0 10px #55e8ff}.as-heat i{background:linear-gradient(90deg,#ffad32,#ff416f);box-shadow:0 0 10px #ff5c78}.as-hull i{background:linear-gradient(90deg,#77e66a,#d6ff72);box-shadow:0 0 10px #a8f66f}
  .as-upgrades{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.as-upgrades button,.as-dock>.btn{min-height:38px;padding:6px 7px;font-size:11px}.as-upgrades button{white-space:normal}.as-upgrades button:disabled{opacity:.46}
  .as-chassis-open{width:100%;margin-top:8px;border-color:rgba(104,235,255,.5)!important;color:#8ef4ff!important}.as-rigidentity{margin-top:3px;color:#ffd77b;font:8px var(--mono);letter-spacing:.05em}
  .as-cascadehud{margin-top:2px;color:#86efff;font:9px var(--mono);letter-spacing:.04em}.as-cascadehud.active{color:#ffb45e;text-shadow:0 0 9px rgba(255,98,57,.48)}.as-cascadehud.danger{color:#ff5c86;text-shadow:0 0 12px rgba(255,49,105,.72)}.as-cascadehud.stable{color:#d8ff87;text-shadow:0 0 9px rgba(184,255,98,.36)}
  .as-controls{position:absolute;left:50%;bottom:15px;z-index:8;display:flex;gap:8px;transform:translateX(-50%);align-items:flex-end}.as-controls button{width:62px;height:58px;padding:0;border:1px solid rgba(91,231,255,.62);border-radius:5px 15px;background:linear-gradient(180deg,rgba(5,27,49,.95),rgba(12,7,30,.95));color:#e8fbff;font-size:21px;box-shadow:inset 0 -2px 0 rgba(255,53,198,.32),0 7px 20px rgba(0,0,0,.52),0 0 13px rgba(61,227,255,.08);touch-action:none}.as-controls .as-drill{width:88px;border-color:rgba(255,83,209,.78);color:#ff9be6;font-size:16px;text-shadow:0 0 10px rgba(255,58,204,.65)}.as-controls .as-scan{width:78px;border-color:rgba(112,239,255,.78);color:#8ef5ff;font-size:13px;letter-spacing:.05em;text-shadow:0 0 10px rgba(71,226,255,.6)}.as-controls .as-charge{width:78px;border-color:rgba(255,174,79,.82);color:#ffc172;font-size:12px;letter-spacing:.04em;text-shadow:0 0 10px rgba(255,111,52,.58)}.as-controls button.on{transform:translateY(2px);background:linear-gradient(180deg,rgba(23,121,160,.9),rgba(100,18,105,.82));box-shadow:inset 0 0 20px rgba(101,235,255,.35),0 0 18px rgba(255,54,204,.24)}
  .as-callout{position:absolute;left:50%;top:112px;z-index:4;transform:translateX(-50%);padding:7px 13px;border:1px solid rgba(255,83,211,.42);border-radius:3px 11px;background:rgba(3,13,29,.86);color:#eafcff;font:12px var(--mono);letter-spacing:.06em;box-shadow:inset 3px 0 0 #55e9ff,0 0 22px rgba(255,57,202,.14);pointer-events:none}.as-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .as-overlay{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:rgba(1,3,11,.76);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.as-card{box-sizing:border-box;width:min(590px,100%);max-height:88%;overflow:auto;padding:21px;border:1px solid rgba(82,227,255,.52);border-radius:4px 18px;background:radial-gradient(circle at 85% 0,rgba(255,51,198,.18),transparent 35%),linear-gradient(145deg,#071b31,#12091d);box-shadow:inset 4px 0 0 rgba(255,59,205,.48),0 22px 70px rgba(0,0,0,.78);color:#e2f2f7}.as-card h2{margin:0 0 6px;color:#ff8cdf;text-shadow:0 0 18px rgba(255,55,202,.4)}.as-card-intro{position:relative;isolation:isolate;width:min(780px,100%);min-height:650px;display:flex;flex-direction:column;justify-content:flex-end;background-image:linear-gradient(0deg,rgba(2,4,12,.99) 0%,rgba(2,5,14,.9) 58%,rgba(2,5,14,.08) 88%),linear-gradient(90deg,rgba(4,11,24,.62),transparent 68%),url('asterion-cover-v1.webp');background-size:cover;background-position:center}.as-card-intro:after{content:"NEON DIVIDE // SHIFT 09";position:absolute;right:16px;top:14px;color:#6eecff;font:9px var(--mono);letter-spacing:.18em;text-shadow:0 0 10px #44dfff}.as-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.as-step{padding:11px;border:1px solid rgba(94,225,255,.24);border-radius:2px 10px;background:rgba(3,12,27,.78)}.as-step b,.as-step span{display:block}.as-step b{color:#67eaff}.as-step span{margin-top:4px;color:#b0c6cf;font-size:11px;line-height:1.4}.as-report{font-size:13px;line-height:1.55}
  .as-loadout-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 7px;color:#71ecff;font:800 10px var(--mono);letter-spacing:.14em;text-transform:uppercase}.as-loadout-title span{color:#a8bec9;font-size:8px;letter-spacing:.04em}.as-loadout-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 10px}.as-loadout-card{min-width:0;padding:7px;border:1px solid rgba(91,224,255,.24);border-radius:3px 12px;background:linear-gradient(160deg,rgba(4,19,38,.9),rgba(18,7,28,.92));color:#d9edf3;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}.as-loadout-card:hover{transform:translateY(-1px);border-color:rgba(105,235,255,.58)}.as-loadout-card.selected{border-color:#ffd36b;box-shadow:inset 0 0 0 1px rgba(255,211,107,.28),0 0 20px rgba(63,222,255,.17);background:linear-gradient(155deg,rgba(25,62,82,.94),rgba(31,9,38,.94))}.as-loadout-sprite{display:block;height:70px;margin:-2px -2px 4px;background-image:url('asterion-chassis-sprites-v1.webp');background-repeat:no-repeat;background-size:200% 200%;filter:drop-shadow(0 5px 8px rgba(0,0,0,.7))}.as-loadout-card b,.as-loadout-card small,.as-loadout-card em{display:block}.as-loadout-card b{color:#f4db8e;font:700 12px var(--mono)}.as-loadout-card small{margin-top:2px;color:#74eaff;font:8px var(--mono);text-transform:uppercase}.as-loadout-card em{min-height:30px;margin-top:4px;color:#aebfc8;font:normal 8px/1.3 var(--sans)}.as-loadout-card.selected b:after{content:" // ACTIVE";color:#dfff8a;font-size:7px}.as-loadout-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}
  .as-prospect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 10px}.as-prospect-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:7px;min-width:0;padding:7px;border:1px solid rgba(91,224,255,.24);border-radius:3px 13px;background:linear-gradient(155deg,rgba(3,18,35,.94),rgba(20,6,29,.94));color:#dceef3;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}.as-prospect-card:hover{transform:translateY(-1px);border-color:rgba(111,236,255,.6)}.as-prospect-card.selected{border-color:#ffd36b;box-shadow:inset 0 0 0 1px rgba(255,211,107,.3),0 0 22px rgba(55,220,255,.16);background:linear-gradient(150deg,rgba(23,61,81,.96),rgba(35,8,39,.94))}.as-prospect-sprite{display:block;width:82px;height:82px;align-self:center;background-image:url('asterion-prospect-sprites-v1.webp');background-repeat:no-repeat;background-size:200% 200%;filter:drop-shadow(0 7px 10px rgba(0,0,0,.75))}.as-prospect-copy{min-width:0}.as-prospect-copy b,.as-prospect-copy small,.as-prospect-copy em,.as-prospect-facts{display:block}.as-prospect-copy b{color:#f6dc8e;font:700 11px var(--mono)}.as-prospect-copy small{margin-top:2px;color:#76eaff;font:8px var(--mono);text-transform:uppercase}.as-prospect-copy em{margin-top:4px;color:#adbec6;font:normal 7.5px/1.25 var(--sans)}.as-prospect-facts{margin-top:5px;color:#d6f8ff;font:7px/1.35 var(--mono);letter-spacing:.02em}.as-prospect-card.selected b:after{content:" // CLAIM";color:#dfff8a;font-size:7px}.as-prospect-open{width:100%;margin-top:6px;border-color:rgba(255,198,86,.48)!important;color:#ffe096!important}.as-prospect-hud{margin-top:2px;color:#ffe08a;font:8px var(--mono);letter-spacing:.04em}.as-prospect-lock{color:#ff91da}.as-card-prospect{width:min(930px,100%)}
  .as-copilot{left:14px;top:268px;width:238px}.as-copilot-head{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:center}.as-copilot-pet{display:grid;place-items:center;min-height:50px;border:1px solid rgba(99,231,255,.24);border-radius:2px 11px;background:radial-gradient(circle,rgba(255,80,211,.18),rgba(4,18,34,.7));font-size:26px}.as-copilot-pet .pet-dressed{--pet-preview:46px}.as-copilot-name{display:block;color:#fff0a9;font:700 15px var(--serif)}.as-copilot-meta{display:block;margin-top:2px;color:#9eddea;font-size:9px;line-height:1.35}.as-copilot-readout{min-height:30px;margin:7px 0;padding:5px 7px;border-left:2px solid #ff55cd;background:rgba(4,15,31,.72);color:#c9e2e8;font-size:9px;line-height:1.4}.as-copilot .btn{width:100%;min-height:31px;padding:5px 7px;font-size:9px}.as-copilot-brief{margin-top:9px;padding:8px;border:1px solid rgba(93,225,255,.24);background:rgba(3,16,31,.74);color:#b9d9e2;font-size:10px;line-height:1.45}
  /* Phalanx Front: place structures, watch the phalanx tug of war roll. */
  body.phxmode .utilityrail{display:none!important}
  .phx-shell{position:relative;width:100%;height:calc(100dvh - 54px);min-height:520px;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(229,188,91,.45);border-radius:16px;background:#241708;box-shadow:inset 0 0 60px rgba(150,96,38,.2)}
  .phx-stage{position:relative;min-height:240px;overflow:hidden}.phx-canvas{display:block;width:100%;height:100%;touch-action:none;background:#3d2c16}
  .phx-hud{position:absolute;z-index:4;left:8px;right:8px;top:8px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:7px;pointer-events:none}.phx-hud .chip{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phx-hud .chip{border-color:rgba(233,196,106,.4);background:rgba(36,22,8,.85);color:#ffedc2}.phx-hud .phx-rival{text-align:right;border-color:rgba(224,122,101,.45)}.phx-wavechip{text-align:center}.phx-wavechip.soon{animation:phxPulse .8s infinite}
  @keyframes phxPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
  .phx-cmd{position:absolute;z-index:4;left:8px;bottom:8px;max-width:74%;padding:5px 10px;border:1px solid rgba(224,122,101,.4);border-radius:999px;background:rgba(32,16,8,.82);color:#ffd9c4;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}
  .phx-banner{position:absolute;z-index:5;left:50%;top:24%;transform:translateX(-50%) scale(.6);font:900 clamp(22px,4.6vw,40px) var(--serif);color:#ffe49a;text-shadow:0 2px 8px rgba(30,12,2,.85);letter-spacing:.06em;opacity:0;pointer-events:none;white-space:nowrap}
  .phx-banner.show{animation:phxBanner 1.9s ease-out forwards}
  @keyframes phxBanner{0%{opacity:0;transform:translateX(-50%) scale(.6)}12%{opacity:1;transform:translateX(-50%) scale(1.06)}22%{transform:translateX(-50%) scale(1)}78%{opacity:1}100%{opacity:0;transform:translateX(-50%) scale(1)}}
  .phx-live{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
  .phx-dock{position:relative;z-index:6;padding:7px 8px 8px;border-top:1px solid rgba(229,188,91,.4);background:linear-gradient(180deg,#2b1c09,#150d04);color:#f4e3bd}
  .phx-bank{display:flex;align-items:center;gap:7px;margin-bottom:6px}.phx-bank .chip{border-color:rgba(233,196,106,.36);background:rgba(26,16,6,.85);font-size:12px}.phx-bank .chip:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .phx-mute{margin-left:auto;min-width:40px;min-height:34px;border:1px solid rgba(233,196,106,.4);border-radius:10px;background:rgba(26,16,6,.85);color:#ffedc2;font-size:15px}
  .phx-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(66px,1fr);gap:6px;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}
  .phx-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;min-height:64px;padding:5px 3px 4px;border:1px solid rgba(160,120,58,.55);border-radius:12px;background:linear-gradient(180deg,rgba(74,50,20,.92),rgba(42,27,10,.96));color:#ffeecb;touch-action:manipulation}
  .phx-card .phx-cicon{font-size:19px;line-height:1}.phx-card .phx-cname{font-size:9px;font-weight:700;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.phx-card .phx-ccost{font-size:10px;color:#ffd98a}.phx-card .phx-cowned{position:absolute;top:2px;right:4px;font-size:9px;color:#ffe9ae;font-weight:800}
  .phx-card.costly{opacity:.55}.phx-card.armed{border-color:#ffe07b;box-shadow:0 0 12px rgba(255,214,110,.45);transform:translateY(-2px)}.phx-card:not(:disabled):active{transform:translateY(1px)}
  .phx-tip{margin-top:5px;text-align:center;color:#cdb287;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .phx-overlay{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:16px;background:rgba(16,8,2,.76);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
  .phx-overlay.phx-endwait{background:rgba(16,8,2,.28);-webkit-backdrop-filter:none;backdrop-filter:none}
  .phx-endcard{width:min(470px,94vw);max-height:92%;overflow:auto;padding:20px;border:1px solid rgba(233,196,106,.55);border-radius:18px;background:linear-gradient(160deg,#33200c,#180e05);box-shadow:0 20px 65px rgba(0,0,0,.7);color:#f7e7c4;text-align:center}
  .phx-endwait .phx-endcard{visibility:hidden}.phx-endcard h2{margin:4px 0 7px;color:#ffe19a}.phx-endcard .btn{margin:10px 4px 0}.phx-endglyph{font-size:52px;line-height:1.1}
  .phx-tiers{display:flex;justify-content:center;gap:8px;margin:10px 0 2px}.phx-tier{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(190,150,80,.5);border-radius:50%;background:rgba(28,18,8,.8);font-size:17px;opacity:.55}.phx-tier.now{opacity:1;border-color:#ffe07b;box-shadow:0 0 10px rgba(255,214,110,.45)}.phx-tier.beaten{opacity:.9;border-color:rgba(140,190,110,.6)}
  .phx-brief{display:grid;gap:4px;margin:10px 0 4px;text-align:left;font-size:12px;color:#e3cda2}
  .phx-score{margin:10px auto 2px;max-width:320px;display:grid;gap:3px;text-align:left;font-size:12.5px}.phx-scorerow{display:flex;justify-content:space-between;gap:10px;color:#e3cda2}.phx-scorerow b{color:#ffe9ae}
  .phx-scoretotal{margin-top:7px;padding-top:7px;border-top:1px solid rgba(233,196,106,.35);font:800 18px var(--serif);color:#ffe07b;text-align:center}
  .phx-promote{margin-top:9px;padding:7px 10px;border:1px solid rgba(150,200,120,.4);border-radius:11px;background:rgba(40,52,24,.5);color:#d9ecb8;font-size:12.5px}
  @media(max-width:760px){.phx-shell{height:calc(100dvh - 52px);min-height:430px;border-radius:10px}.phx-hud{left:5px;right:5px;top:5px;gap:4px}.phx-hud .chip{padding:4px 6px;font-size:10px}.phx-cards{grid-auto-columns:minmax(62px,72px)}.phx-bank .chip{font-size:10.5px}.phx-cmd{font-size:10px;max-width:66%}}
  @media(prefers-reduced-motion:reduce){.phx-wavechip.soon{animation:none}.phx-banner.show{animation:phxBannerCalm 1.9s forwards}.phx-card.armed{transform:none}}
  @keyframes phxBannerCalm{0%{opacity:0}12%{opacity:1}78%{opacity:1}100%{opacity:0}}
  /* Helios Front: permanent orbital hangars launch visible automatic waves. */
  body.heliosmode .utilityrail{display:none!important}
  .hf-shell{position:relative;width:100%;height:calc(100dvh - 54px);min-height:500px;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(92,207,255,.42);border-radius:16px;background:#030716;box-shadow:inset 0 0 62px rgba(47,128,198,.16)}
  .hf-stage{position:relative;min-height:250px;overflow:hidden}.hf-canvas{display:block;width:100%;height:100%;touch-action:none;background:#030716}.hf-hud{position:absolute;z-index:4;left:8px;right:8px;top:8px;display:grid;grid-template-columns:1fr auto 1fr;gap:7px;pointer-events:none}.hf-hud .chip{border-color:rgba(94,211,255,.34);background:rgba(5,18,39,.84);color:#e2f8ff}.hf-hud .chip:nth-child(2){text-align:center}.hf-hud .chip:last-child{text-align:right}.hf-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .hf-mute{min-width:38px;min-height:32px;border:1px solid rgba(94,211,255,.4);border-radius:10px;background:rgba(5,18,39,.84);color:#e2f8ff;font-size:14px}
  .hf-forecast{margin:0 0 6px;padding:4px 9px;border:1px dashed rgba(240,202,97,.4);border-radius:9px;background:rgba(8,20,36,.6);color:#ffe3a1;font-size:11px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hf-hud .chip.soon{animation:phxPulse .8s infinite}
  .hf-score{margin:10px auto 2px;max-width:300px;display:grid;gap:3px;text-align:left;font-size:12.5px}.hf-scorerow{display:flex;justify-content:space-between;gap:10px;color:#bdd7e4}.hf-scorerow b{color:#ffe9ae}.hf-scoretotal{margin-top:7px;padding-top:7px;border-top:1px solid rgba(98,213,255,.35);font:800 17px var(--serif);color:#ffe08b;text-align:center}
  .hf-command{position:relative;z-index:6;padding:8px 10px 10px;border-top:1px solid rgba(89,203,255,.35);background:radial-gradient(circle at 50% 0,rgba(38,111,169,.17),transparent 45%),linear-gradient(180deg,#09172a,#040812);color:#dff5ff}.hf-bank{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.hf-bank .chip{border-color:rgba(241,205,102,.36);background:rgba(8,20,36,.84)}.hf-blueprint{max-width:61%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hf-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.hf-actions .btn{min-width:0;min-height:62px;padding:5px 4px;border-color:rgba(100,208,246,.28);background:linear-gradient(180deg,rgba(21,54,85,.92),rgba(7,22,42,.96));color:#e8f8ff;font-size:11px;line-height:1.2;white-space:pre-line}.hf-actions .hf-unit{border-color:rgba(240,202,97,.38)}.hf-actions .hf-overdrive{border-color:rgba(255,157,81,.5);color:#ffe0a2}.hf-actions .btn:not(:disabled):active{transform:translateY(2px);filter:brightness(1.2)}.hf-actions .btn:disabled{opacity:.46}.hf-legend{margin-top:6px;text-align:center;color:#9fc0d2;font-size:10px}.hf-overlay{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:17px;background:rgba(1,4,13,.78);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hf-card{width:min(580px,94vw);max-height:88%;overflow:auto;padding:22px;border:1px solid rgba(98,213,255,.5);border-radius:18px;background:radial-gradient(circle at 85% 0,rgba(45,149,213,.2),transparent 36%),linear-gradient(145deg,#0b213b,#0b0d20);box-shadow:0 20px 65px rgba(0,0,0,.72);color:#dcecf4;text-align:center}.hf-card h2{margin:4px 0 7px;color:#f3d683}.hf-card .btn{margin:12px 4px 0}.hf-rolegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0;text-align:left}.hf-role{padding:10px;border:1px solid rgba(98,203,241,.24);border-radius:11px;background:rgba(4,17,34,.66)}.hf-role b,.hf-role span{display:block}.hf-role b{color:#f1d380}.hf-role span{margin-top:4px;color:#adc3d0;font-size:11px;line-height:1.4}
  /* Aegis Fleet: direct capital-ship combat around two carrier bases. */
  body.aegisfleetmode .utilityrail{display:none!important}
  .af-shell{position:relative;width:100%;height:calc(100dvh - 54px);min-height:480px;overflow:hidden;border:1px solid rgba(109,205,255,.42);border-radius:16px;background:#020617;box-shadow:inset 0 0 72px rgba(64,101,196,.17)}.af-canvas{display:block;width:100%;height:100%;touch-action:none;background:#020617}.af-hud{position:absolute;z-index:5;left:8px;right:8px;top:8px;display:grid;grid-template-columns:1fr auto 1fr;gap:7px;pointer-events:none}.af-hud .chip{border-color:rgba(102,207,255,.34);background:rgba(5,16,38,.85);color:#e4f8ff}.af-hud .chip:nth-child(2){text-align:center}.af-hud .chip:last-child{text-align:right}.af-shiphud{position:absolute;z-index:6;left:10px;bottom:10px;width:220px;padding:9px 11px;border:1px solid rgba(101,211,255,.34);border-radius:13px;background:rgba(4,17,38,.87);color:#def5ff;box-shadow:0 7px 22px rgba(0,0,0,.4);pointer-events:none}.af-shiphud b,.af-shiphud span{display:block}.af-shiphud b{color:#f4d988}.af-shiphud span{margin-top:3px;color:#a9c2d1;font-size:10px}.af-meter{height:6px;margin-top:4px;border-radius:99px;background:#111a31;overflow:hidden}.af-meter i{display:block;height:100%;border-radius:inherit}.af-hullmeter i{background:linear-gradient(90deg,#59c77e,#d8e77b)}.af-shieldmeter i{background:linear-gradient(90deg,#577dff,#70ecff)}.af-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .af-mobile{position:absolute;z-index:9;left:50%;right:auto;bottom:10px;display:none;align-items:end;justify-content:space-between;width:min(520px,calc(100% - 18px));transform:translateX(-50%);pointer-events:none}.af-pad{display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,48px);gap:4px;pointer-events:auto}.af-pad button,.af-actions button{border:1px solid rgba(105,215,255,.46);background:rgba(5,24,51,.9);color:#e8faff;box-shadow:0 4px 13px rgba(0,0,0,.4);touch-action:none}.af-pad button{width:48px;height:48px;border-radius:12px;font-size:19px}.af-pad .af-up{grid-column:2}.af-pad .af-left{grid-column:1;grid-row:2}.af-pad .af-down{grid-column:2;grid-row:2}.af-pad .af-right{grid-column:3;grid-row:2}.af-actions{display:flex;gap:6px;align-items:end;pointer-events:auto}.af-actions button{width:64px;height:56px;border-radius:16px;font-size:11px;font-weight:900}.af-actions .af-fire{width:76px;height:68px;border-color:rgba(245,201,93,.66);color:#ffe39a;font-size:14px}.af-actions button.on{transform:translateY(2px);background:rgba(36,112,169,.88)}
  .af-overlay{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:18px;background:rgba(1,4,14,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.af-card{width:min(680px,95vw);max-height:90%;overflow:auto;padding:22px;border:1px solid rgba(106,216,255,.48);border-radius:19px;background:radial-gradient(circle at 84% 0,rgba(77,86,213,.24),transparent 38%),linear-gradient(145deg,#0a203d,#0d0c25);box-shadow:0 22px 70px rgba(0,0,0,.74);color:#deedf6;text-align:center}.af-card h2{margin:4px 0 6px;color:#f3d98b}.af-hulls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.af-hull{min-width:0;padding:12px 9px;border:1px solid rgba(105,203,242,.25);border-radius:13px;background:rgba(4,17,36,.68);color:#dcecf5;text-align:left;cursor:pointer}.af-hull.selected{border-color:#f1cc68;box-shadow:0 0 0 1px rgba(241,204,104,.28),0 0 24px rgba(96,200,255,.18);background:linear-gradient(150deg,rgba(35,75,111,.82),rgba(16,19,48,.84))}.af-hull b,.af-hull span,.af-hull small{display:block}.af-hull b{color:#ffe098;font:700 17px var(--serif)}.af-hull span{margin:4px 0;color:#84ddff;font-size:10px;font-weight:900;text-transform:uppercase}.af-hull small{color:#aabecd;font-size:10px;line-height:1.4}.af-card>.btn{margin:8px 4px 0}
  @media(max-width:760px){.as-wrap{height:calc(100dvh - 52px);border-radius:10px}.as-career{top:8px;left:8px;min-width:122px;padding:7px}.as-career .as-small{display:none}.as-value{font-size:14px}.as-mission{top:8px;min-width:0;width:42%;padding:7px}.as-mission .as-small{font-size:8px}.as-shiphud{top:8px;right:8px;width:122px;padding:7px}.as-shiphud .as-small{font-size:8px}.as-dock{top:auto;right:8px;bottom:70px;width:128px;padding:7px}.as-upgrades{grid-template-columns:1fr}.as-upgrades button{min-height:28px;padding:3px;font-size:8px}.as-dock>.btn{min-height:29px;padding:4px;font-size:8px}.as-controls{bottom:8px;gap:4px}.as-controls button{width:45px;height:46px;border-radius:12px}.as-controls .as-drill{width:58px}.as-callout{top:64px;max-width:68%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.as-steps{grid-template-columns:1fr}.hf-shell{height:calc(100dvh - 52px);min-height:430px;border-radius:10px}.hf-hud{left:5px;right:5px;top:5px;gap:3px}.hf-hud .chip{padding:4px 5px;font-size:9px}.hf-command{max-height:43dvh;overflow:auto;padding:6px}.hf-bank{margin-bottom:5px}.hf-bank .chip{font-size:9px}.hf-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.hf-actions .btn{min-height:50px;padding:4px 2px;font-size:9px}.hf-legend{font-size:8px}.hf-rolegrid{grid-template-columns:1fr}.af-shell{height:calc(100dvh - 52px);min-height:430px;border-radius:10px}.af-hud{left:5px;right:5px;top:5px;gap:3px}.af-hud .chip{padding:4px 5px;font-size:9px}.af-shiphud{left:7px;bottom:118px;width:145px;padding:6px}.af-shiphud span{font-size:8px}.af-mobile{display:flex}.af-hulls{grid-template-columns:1fr}}
  @media(max-width:760px){.as-career{width:95px;min-width:0;max-width:95px;overflow:hidden}.as-career .as-kicker,.as-mission .as-kicker,.as-shiphud .as-kicker{font-size:7px;letter-spacing:.1em}.as-career .as-value{font-size:12px;white-space:nowrap}.as-mission{width:120px}.as-mission b{font-size:12px}.as-mission .as-small,.as-shiphud .as-small{font-size:7px}.as-core{margin-top:2px;font-size:6px;letter-spacing:0}.as-shiphud{width:112px}.as-scanner{margin-top:2px}.as-depth,.as-thermal,.as-chargehud,.as-sentinelhud{margin-top:1px;font-size:6px;letter-spacing:0}.as-meter{height:5px;margin:2px 0 1px}.as-callout{top:154px;max-width:72%}.as-dock{left:8px;right:8px;bottom:65px;width:auto;padding:6px 8px}.as-dock>.as-small{display:none}.as-upgrades{grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;margin-top:5px}.as-upgrades button{min-height:29px;padding:2px;font-size:7px}.as-dock>.btn{width:calc(33.333% - 4px);min-height:27px;margin-top:4px;padding:3px;font-size:8px}.as-controls{bottom:7px;gap:3px}.as-controls .as-scan,.as-controls .as-charge{width:52px;font-size:9px}}
  @media(max-width:760px){.as-callout{top:164px}.as-map{left:8px;top:232px;bottom:auto;width:112px;padding:5px 6px}.as-map .as-kicker{font-size:6px;letter-spacing:.08em}.as-mapcanvas{height:88px;margin-top:3px}.as-mapreadout{margin-top:3px;overflow:hidden;text-overflow:ellipsis;font-size:5.5px}.as-cascadehud{margin-top:1px;font-size:6px;letter-spacing:0}.as-rigidentity,.as-prospect-hud{font-size:6px}.as-dock>.as-chassis-open,.as-dock>.as-prospect-open{width:100%;margin-top:4px!important;min-height:27px!important}.as-card-intro{min-height:0}.as-loadout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.as-loadout-sprite{height:58px}.as-loadout-card{padding:5px}.as-loadout-card em{min-height:26px;font-size:7px}.as-loadout-title{font-size:8px}.as-loadout-title span{font-size:7px}.as-prospect-grid{grid-template-columns:1fr}.as-prospect-card{grid-template-columns:72px minmax(0,1fr);padding:5px}.as-prospect-sprite{width:72px;height:72px}.as-prospect-copy em{font-size:7px}.as-prospect-facts{font-size:6.5px}.as-card-prospect{max-height:94%}}
  @media(max-width:760px){.as-copilot{left:auto;right:8px;top:232px;bottom:auto;width:150px;padding:7px}.as-copilot-head{grid-template-columns:40px minmax(0,1fr);gap:5px}.as-copilot-pet{min-height:40px;font-size:21px}.as-copilot-pet .pet-dressed{--pet-preview:36px}.as-copilot-name{font-size:12px}.as-copilot-meta,.as-copilot-readout{font-size:8px}.as-copilot-readout{min-height:0;margin:5px 0;padding:4px}.as-copilot .btn{min-height:28px;padding:4px;font-size:8px}}
  @media(pointer:coarse){.af-mobile{display:flex}}
  @media (max-width:700px),(max-aspect-ratio:1/1){
    .room-painted .station{min-width:104px;min-height:82px}
    .room-painted .station .stlabel,.room-painted .station.st-door .stlabel,.room-painted .station.st-wing .stlabel,.room-painted .station.st-landmark .stlabel{bottom:-14px!important;max-width:112px!important;padding:3px 7px 4px!important;font-size:10.5px!important}
    .room-painted-olympiad .plazabgwrap{background-image:url('room-bg-olympiad-mobile-v1.jpg')}
    .room-painted-stoa .plazabgwrap{background-image:url('room-bg-stoa-mobile-v1.jpg')}
    .room-painted-wargrounds .plazabgwrap{background-image:url('room-bg-wargrounds-mobile-v1.jpg')}
    .room-painted-inventors .plazabgwrap{background-image:url('room-bg-inventors-mobile-v1.jpg')}
    .room-painted-scholars .plazabgwrap{background-image:url('room-bg-scholars-mobile-v1.jpg')}
    .room-painted-mine .plazabgwrap{background-image:url('room-bg-mine-mobile-v1.jpg')}
    .room-painted-cards .plazabgwrap{background-image:url('room-bg-cards-mobile-v1.jpg')}
    .room-painted-cardhall .plazabgwrap{background-image:url('room-bg-cardhall-mobile-v1.jpg')}
    .room-painted-shipdeck .plazabgwrap{background-image:url('room-bg-shipdeck-mobile-v1.jpg')}
    .room-painted-theater .plazabgwrap{background-image:url('room-bg-theater-mobile-v1.jpg')}
    .room-painted-palace .plazabgwrap{background-image:url('room-bg-palace-mobile-v1.jpg')}
    .room-painted-pethouse .plazabgwrap{background-image:url('room-bg-pethouse-mobile-v1.jpg')}
    .room-painted-wardrobe .plazabgwrap{background-image:url('room-bg-wardrobe-mobile-v1.jpg')}
    .room-painted-club .plazabgwrap{background-image:url('room-bg-club-mobile-v1.jpg')}
    .room-painted-cinema .plazabgwrap{background-image:url('room-bg-cinema-mobile-v1.jpg')}
    .room-painted-academy .plazabgwrap{background-image:url('room-bg-academy-mobile-v1.jpg')}
    .room-painted-court .plazabgwrap{background-image:url('room-bg-court-mobile-v1.jpg')}
    .room-painted-harbor .plazabgwrap{background-image:url('room-bg-harbor-mobile-v1.jpg')}
    .room-painted-forum .plazabgwrap{background-image:url('room-bg-forum-mobile-v1.jpg')}
    .room-painted-archives .plazabgwrap{background-image:url('room-bg-archives-mobile-v1.jpg')}
    .room-painted-orbital .plazabgwrap{background-image:url('room-bg-orbital-mobile-v1.jpg')}
    .room-painted-cards .roomtitle,.room-painted-cardhall .roomtitle,.room-painted-shipdeck .roomtitle,.room-painted-club .roomtitle,.room-painted-cinema .roomtitle,.room-painted-academy .roomtitle,.room-painted-court .roomtitle,.room-painted-harbor .roomtitle,.room-painted-forum .roomtitle,.room-painted-archives .roomtitle,.room-painted-orbital .roomtitle,.room-painted-stoa .roomtitle,.room-painted-wargrounds .roomtitle,.room-painted-inventors .roomtitle,.room-painted-scholars .roomtitle{position:fixed;top:56px;left:10px;right:auto;width:auto;max-width:210px;height:27px;line-height:27px;padding:0 10px;border:1px solid rgba(239,199,111,.55);border-radius:999px;background:rgba(18,14,12,.78);font-size:13px;text-align:left;box-shadow:0 4px 14px rgba(0,0,0,.32);backdrop-filter:blur(4px);pointer-events:none}
    .room-painted-stoa .station,.room-painted-wargrounds .station,.room-painted-inventors .station,.room-painted-scholars .station{min-width:102px;min-height:78px}
    .room-painted-stoa .station .stlabel,.room-painted-wargrounds .station .stlabel,.room-painted-inventors .station .stlabel,.room-painted-scholars .station .stlabel{width:102px!important;max-width:102px!important;bottom:-18px!important;font-size:9.5px!important;line-height:1.08!important;white-space:normal!important;text-align:center!important}
    .room-painted-wargrounds .station,.room-painted-inventors .station{width:72px!important;min-width:72px;min-height:68px}
    .room-painted-wargrounds .station .stlabel,.room-painted-inventors .station .stlabel{width:84px!important;max-width:84px!important;font-size:8.5px!important}
    .room-painted-wargrounds .station[data-scene="pankration"]{left:50%!important;top:34%!important}
    .room-painted-wargrounds .station[data-scene="dominion"]{left:12%!important;top:59%!important}
    .room-painted-wargrounds .station[data-scene="phalanx"]{left:37%!important;top:72%!important}
    .room-painted-inventors .station[data-scene="cookhouse"]{left:12%!important;top:40%!important}
    .room-painted-inventors .station[data-scene="wanderers"]{left:12%!important;top:40%!important}
    .room-painted-inventors .station[data-scene="pontifex"]{left:37%!important;top:35%!important}
    .room-painted-inventors .station[data-scene="daedalus"]{left:63%!important;top:40%!important}
    .room-painted-inventors .station[data-scene="tarpits"]{left:23%!important;top:57%!important}
    .room-painted-inventors .station[data-scene="amphora"]{left:77%!important;top:58%!important}
    .room-painted-scholars .station[data-scene="lexicon"]{left:22%!important;top:40%!important}
    .room-painted-scholars .station[data-scene="petteia"]{left:50%!important;top:37%!important}
    .room-painted-scholars .station[data-scene="pente"]{left:78%!important;top:40%!important}
    .room-painted-scholars .station[data-scene="records"]{left:23%!important;top:59%!important}
    .room-painted-wargrounds .station[data-scene="phalanx"] .stlabel{top:-18px!important;bottom:auto!important}
    .room-painted-pethouse .station[data-scene="menagerie"]{left:23%!important;top:47%!important}
    .room-painted-pethouse .station[data-scene="playgarden"]{left:50%!important;top:57%!important}
    .room-painted-pethouse .station[data-scene="petleague"]{left:50%!important;top:35%!important;z-index:540!important}
    .room-painted-pethouse .station[data-scene="gubbin-pen"]{left:10%!important;top:30%!important;z-index:530!important}
    .room-painted-pethouse .station[data-scene="aquarium"]{left:73%!important;top:43%!important}
    .room-painted-pethouse .station[data-scene="inspector-cat"]{left:82%!important;top:82%!important;width:104px;height:82px;z-index:820!important}
    .room-painted-pethouse .station[data-scene="aquarium"] .stlabel{width:126px!important;max-width:126px!important;white-space:normal!important;text-align:center!important;bottom:-25px!important}
    .room-painted-mine .station[data-scene="minerals"]{left:25%!important;top:45%!important}
    .room-painted-mine .station[data-scene="deep"]{left:75%!important;top:45%!important}
    .room-painted-olympiad .station[data-scene="bastion"]{left:50%!important;top:43%!important}
    .room-painted-olympiad .station[data-scene="war"]{left:24%!important;top:68%!important}
    .room-painted-olympiad .station[data-scene="yard"]{left:77%!important;top:43%!important}
    .room-painted-olympiad .station[data-scene="defend"]{left:76%!important;top:68%!important}
    .room-painted-cards .station[data-scene="poolhall"]{left:50%!important;top:31%!important}
    .room-painted-cards .station[data-scene="cards"]{left:50%!important;top:66%!important}
    .room-painted-cards .station[data-scene="sportsbook"]{left:78%!important;top:47%!important}
    .room-painted-cardhall .station{min-width:82px;min-height:54px}
    .room-painted-cardhall .station[data-scene="hearts"]{left:18%!important;top:33%!important}
    .room-painted-cardhall .station[data-scene="spades"]{left:50%!important;top:33%!important}
    .room-painted-cardhall .station[data-scene="bridge"]{left:82%!important;top:33%!important}
    .room-painted-cardhall .station[data-scene="patience"]{left:18%!important;top:43%!important}
    .room-painted-cardhall .station[data-scene="holdem"]{left:50%!important;top:43%!important}
    .room-painted-cardhall .station[data-scene="tabula"]{left:82%!important;top:43%!important}
    .room-painted-cardhall .station[data-scene="speed"]{left:18%!important;top:53%!important}
    .room-painted-cardhall .station[data-scene="ohhell"]{left:50%!important;top:53%!important}
    .room-painted-cardhall .station[data-scene="quina"]{left:82%!important;top:53%!important}
    .room-painted-cardhall .station .stlabel{width:88px!important;max-width:88px!important;white-space:normal!important;text-align:center!important;bottom:-16px!important;font-size:9px!important}
    .room-painted-shipdeck .station{min-width:90px;min-height:66px}
    .room-painted-shipdeck .station[data-scene="wheel"]{left:22%!important;top:27%!important}
    .room-painted-shipdeck .station[data-scene="voyage"]{left:50%!important;top:34%!important}
    .room-painted-shipdeck .station[data-scene="log"]{left:78%!important;top:35%!important}
    .room-painted-shipdeck .station[data-scene="company"]{left:18%!important;top:48%!important}
    .room-painted-shipdeck .station[data-scene="invite"]{left:50%!important;top:49%!important}
    .room-painted-shipdeck .station[data-scene="horn"]{left:82%!important;top:45%!important}
    .room-painted-theater .station[data-scene="cinema"]{left:23%!important;top:45%!important}
    .room-painted-theater .station[data-scene="club"]{left:77%!important;top:45%!important}
    .room-painted-palace .station[data-scene="academy"]{left:18%!important;top:31%!important}
    .room-painted-palace .station[data-scene="pethouse"]{left:51%!important;top:28%!important}
    .room-painted-palace .station[data-scene="harbor"]{left:82%!important;top:33%!important}
    .room-painted-palace .station[data-scene="grounds"]{left:50%!important;top:52%!important}
    .room-painted-palace .station[data-scene="court"]{left:50%!important;top:73%!important}
    .room-painted-wardrobe .station[data-scene="robe"]{left:20%!important;top:42%!important}
    .room-painted-wardrobe .station[data-scene="mirror"]{left:50%!important;top:39%!important}
    .room-painted-wardrobe .station[data-scene="head"]{left:78%!important;top:43%!important}
    .room-painted-wardrobe .station[data-scene="hand"]{left:78%!important;top:58%!important}
    .room-painted-wardrobe .station[data-scene="full"]{left:24%!important;top:66%!important}
    .room-painted-club .station[data-scene="decks"]{left:50%!important;top:34%!important}
    .room-painted-club .station[data-scene="dance"]{left:24%!important;top:62%!important}
    .room-painted-club .station[data-scene="karaoke"]{left:50%!important;top:52%!important}
    .room-painted-club .station[data-scene="bar"]{left:76%!important;top:61%!important}
    .room-painted-cinema .station[data-scene="screen"]{left:50%!important;top:43%!important;min-width:180px;min-height:128px}
    .room-painted-cinema .station[data-scene="concessions"]{left:75%!important;top:58%!important}
    .room-painted-orbital .station{min-width:90px;min-height:76px}
    .room-painted-orbital .station[data-scene="oraclearray"]{left:18%!important;top:46%!important;min-width:90px;min-height:75px}
    .room-painted-orbital .station[data-scene="aethergate"]{left:48%!important;top:48%!important;min-width:94px;min-height:78px}
    .room-painted-orbital .station[data-scene="asterionbay"]{left:78%!important;top:47%!important;min-width:102px;min-height:88px}
    .room-painted-orbital .station[data-scene="mineralsfrontier"]{left:56%!important;top:31%!important;min-width:96px;min-height:72px}
    .room-painted-orbital .station[data-scene="ashenward"]{left:25%!important;top:31%!important;min-width:96px;min-height:72px}
    .room-painted-orbital .station[data-scene="heliosfront"]{left:16%!important;top:68%!important;min-width:96px;min-height:72px}
    .room-painted-orbital .station[data-scene="aegisfleet"]{left:39%!important;top:61%!important;min-width:96px;min-height:72px}
    .room-painted-orbital .station[data-scene="riftline"]{left:63%!important;top:59%!important;min-width:96px;min-height:72px}
    .room-painted-orbital .station[data-scene="techneforge"]{left:84%!important;top:69%!important;min-width:92px;min-height:70px}
    .room-painted-orbital .station .stlabel{width:106px!important;max-width:106px!important;white-space:normal!important;text-align:center!important;font-size:9.5px!important;bottom:-21px!important}
    .orbital-grid{grid-template-columns:1fr}
    .room-painted-academy .station[data-scene="forum"]{left:23%!important;top:49%!important}
    .room-painted-academy .station[data-scene="archives"]{left:77%!important;top:49%!important}
    .room-painted-academy .station[data-scene="warmap"]{left:50%!important;top:59%!important}
    .room-painted-court .station{min-width:88px;min-height:72px}
    .room-painted-court .station .stlabel{width:96px!important;max-width:96px!important;white-space:normal!important;text-align:center!important;font-size:9.5px!important;bottom:-19px!important}
    .room-painted-court .station[data-scene="wardrobe"]{left:22%!important;top:36%!important}
    .room-painted-court .station[data-scene="relics"]{left:50%!important;top:33%!important}
    .room-painted-court .station[data-scene="menagerie"]{left:78%!important;top:36%!important}
    .room-painted-court .station[data-scene="auction"]{left:22%!important;top:52%!important}
    .room-painted-court .station[data-scene="academy"]{left:50%!important;top:54%!important}
    .room-painted-court .station[data-scene="harbor"]{left:78%!important;top:52%!important}
    .room-painted-harbor .station[data-scene="shipwright"]{left:22%!important;top:36%!important}
    .room-painted-harbor .station[data-scene="sail"]{left:50%!important;top:32%!important}
    .room-painted-harbor .station[data-scene="fleet"]{left:78%!important;top:36%!important}
    .room-painted-harbor .station[data-scene="broadside"]{left:50%!important;top:53%!important}
    .harbor-command{left:8px;right:8px;top:8.5%;width:auto;transform:none;grid-template-columns:1fr;padding:8px;gap:6px;border-radius:13px}.harbor-command h3{font-size:20px}.harbor-command-copy{display:none}.harbor-command-stats{margin-top:5px}.harbor-command-stat{font-size:8px;padding:3px 5px}.harbor-command-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.harbor-command-actions .btn{min-height:32px;padding:5px 4px;font-size:8.5px}.harbor-command-actions .primary-voyage{grid-column:1/-1;min-height:36px;font-size:10px}
    .shipclass-grid{grid-template-columns:1fr}.shipclass-card{padding:8px}
    .room-painted-forum .station[data-scene="lessons"]{left:22%!important;top:34%!important}
    .room-painted-forum .station[data-scene="teacher"]{left:78%!important;top:34%!important}
    .room-painted-forum .station[data-scene="podium"]{left:50%!important;top:53%!important}
    .room-painted-archives .station{min-width:88px;min-height:72px}
    .room-painted-archives .station .stlabel{width:96px!important;max-width:96px!important;white-space:normal!important;text-align:center!important;font-size:9.5px!important;bottom:-19px!important}
    .room-painted-archives .station[data-scene="assignments"]{left:21%!important;top:31%!important}
    .room-painted-archives .station[data-scene="library"]{left:50%!important;top:27%!important}
    .room-painted-archives .station[data-scene="honorroll"]{left:79%!important;top:31%!important}
    .room-painted-archives .station[data-scene="feats"]{left:25%!important;top:49%!important}
    .room-painted-archives .station[data-scene="registrar"]{left:75%!important;top:49%!important}
    .room-painted-poolhall .plazabgwrap{background-image:url('room-bg-poolhall-mobile-v1.webp');background-position:center center}
    .room-painted-poolhall .roomtitle{display:none}
    .room-painted-poolhall .station[data-scene="live-pool"]{left:50%!important;top:52%!important;min-width:68vw;min-height:118px}
    .room-painted-poolhall .station[data-scene="pool-cups"]{left:18%!important;top:48%!important;min-width:104px;min-height:84px}
    .room-painted-poolhall .station[data-scene="practice-pool"]{left:82%!important;top:48%!important;min-width:104px;min-height:84px}
    .room-painted-poolhall .station[data-scene="pool-cups"] .stlabel,.room-painted-poolhall .station[data-scene="practice-pool"] .stlabel{width:91px!important;max-width:91px!important;white-space:normal!important;text-align:center!important;bottom:-29px!important}
    .room-painted-poolhall .station .stlabel,.room-painted-poolhall .station.st-tablet .stlabel{padding:5px 8px 6px!important;font-size:9px!important;letter-spacing:.45px!important}
  }
  @media (pointer:coarse) and (orientation:landscape) and (max-height:520px){
    /* The command deck duplicates these destinations and covers them at iPhone-landscape heights. */
    .room-painted-harbor .station[data-scene="shipwright"],.room-painted-harbor .station[data-scene="sail"],.room-painted-harbor .station[data-scene="fleet"]{display:none!important}
    .harbor-command{padding:8px;gap:8px}
    .harbor-command h3{font-size:20px}.harbor-command-copy{display:none}.harbor-command-stats{margin-top:6px}.harbor-command-stat{padding:4px 6px;font-size:9px}
    .harbor-command-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
    /* The painted room scales 52px to at least 44px at an 844x390 viewport. */
    .harbor-command-actions .btn{min-height:52px;padding:6px 5px;font-size:9px}.harbor-command-actions .primary-voyage{grid-column:1/-1;font-size:10px}
  }

  @media(prefers-reduced-motion:reduce){.plaza-painted .pportal[data-portal="orbital"] .pbuild,.room-painted-orbital .plazabgwrap::before,.orbital-signal.charged{animation:none!important}.as-wrap:after{display:none}.as-meter i{transition:none}.as-controls button.on,.hf-actions .btn:active,.af-actions button.on{transform:none}.hf-canvas,.af-canvas{scroll-behavior:auto}}
  /* High-value world actions should feel like crafted objects in the scene,
     not bright app tiles laid over the painting. */
  .world-cta{position:relative;isolation:isolate;min-height:54px;padding:11px 38px!important;border:1px solid #d5ac55!important;outline:1px solid rgba(44,27,9,.9);outline-offset:2px;border-radius:10px 10px 14px 14px!important;background:radial-gradient(120% 140% at 50% -45%,rgba(203,155,70,.35),transparent 56%),linear-gradient(180deg,#3f2c17 0,#24180d 52%,#130d08 100%)!important;color:#ffe2a0!important;font:800 18px/1.05 Georgia,'Times New Roman',serif!important;letter-spacing:.22px;text-shadow:0 2px 2px #080503!important;box-shadow:inset 0 1px 0 rgba(255,229,166,.28),inset 0 0 0 3px rgba(10,6,3,.28),0 3px 0 #090603,0 12px 28px rgba(13,8,3,.48),0 0 20px rgba(207,158,61,.18)!important}
  .world-cta::before,.world-cta::after{content:'✦';position:absolute;top:50%;z-index:-1;transform:translateY(-50%);color:#d1a64d;font-size:10px;text-shadow:0 1px 2px #000}
  .world-cta::before{left:12px}.world-cta::after{right:12px}
  .world-cta:hover,.world-cta:focus-visible{filter:brightness(1.14) saturate(1.03)!important;border-color:#f1cf7a!important;box-shadow:inset 0 1px 0 rgba(255,236,190,.4),inset 0 0 0 3px rgba(10,6,3,.22),0 3px 0 #090603,0 14px 32px rgba(13,8,3,.54),0 0 28px rgba(232,182,79,.32)!important;outline:2px solid rgba(255,224,145,.64);outline-offset:4px}
  .world-cta:active{transform:translateY(2px) scale(.99)!important;box-shadow:inset 0 2px 6px rgba(0,0,0,.5),0 1px 0 #090603,0 6px 13px rgba(13,8,3,.5)!important}
  @media(max-width:600px){.world-cta{min-height:48px;padding:9px 31px!important;font-size:16px!important;border-radius:9px 9px 12px 12px!important}}
  /* 🚪 The Sixty Second Door: the one glowing invitation a fresh soul sees. */
  .door-beacon{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:238px;animation:doorpulse 2.6s ease-in-out infinite}
  .door-beacon .door-beacon-play{font:800 21px/1.05 Georgia,'Times New Roman',serif;letter-spacing:.4px}
  .door-beacon .door-beacon-game{font:700 11.5px/1.2 system-ui,sans-serif;color:#f4d38a;opacity:.94;letter-spacing:.2px;white-space:nowrap;max-width:74vw;overflow:hidden;text-overflow:ellipsis}
  @keyframes doorpulse{0%,100%{box-shadow:inset 0 1px 0 rgba(255,229,166,.28),inset 0 0 0 3px rgba(10,6,3,.28),0 3px 0 #090603,0 12px 28px rgba(13,8,3,.48),0 0 20px rgba(207,158,61,.22)}50%{box-shadow:inset 0 1px 0 rgba(255,229,166,.34),inset 0 0 0 3px rgba(10,6,3,.24),0 3px 0 #090603,0 12px 30px rgba(13,8,3,.5),0 0 42px rgba(238,186,84,.55)}}
  @media(max-width:600px){.door-beacon{min-width:198px}.door-beacon .door-beacon-play{font-size:18px}}
  @media(prefers-reduced-motion:reduce){.door-beacon{animation:none}}
  /* The reveal: one warm card after the first game ends, never a wall. */
  .door-reveal-ovl{z-index:8000!important}

/* ── PIRATE'S COVE ─────────────────────────────────────── */
.plaza-painted .pportal[data-portal="pirates-cove"]{
  left:88.5%!important;top:24.5%!important;z-index:7
}
.plaza-painted .pportal[data-portal="pirates-cove"] .pbuild{
  visibility:visible!important;position:relative;width:48px;height:48px;min-height:0;border:2px solid #d8ad52;
  border-radius:50%;background:radial-gradient(circle at 36% 30%,#6a2730 0,#32161b 42%,#101718 76%);
  box-shadow:0 0 0 4px rgba(17,13,9,.55),0 5px 15px rgba(0,0,0,.7),0 0 22px rgba(224,164,57,.42);
  animation:covePortalPulse 3.2s ease-in-out infinite
}
.plaza-painted .pportal[data-portal="pirates-cove"] .pbuild svg{display:none}
.plaza-painted .pportal[data-portal="pirates-cove"] .pbuild::before{
  content:"🏴‍☠️";position:absolute;inset:0;display:grid;place-items:center;font-size:25px;
  filter:drop-shadow(0 2px 2px #000)
}
.plaza-painted .pportal[data-portal="pirates-cove"] .pbuild::after{
  content:"";position:absolute;left:50%;top:calc(100% + 5px);width:48px;height:9px;
  border-radius:50%;background:rgba(0,0,0,.45);filter:blur(3px);transform:translateX(-50%)
}
.plaza-painted .pportal[data-portal="pirates-cove"] .plabel{
  color:#ffe6a6;background:linear-gradient(180deg,rgba(48,20,20,.96),rgba(13,18,18,.96));
  border-color:#d8ad52;box-shadow:0 3px 12px rgba(0,0,0,.65);white-space:nowrap
}
.plaza-painted .pportal[data-portal="pirates-cove"]:hover .pbuild,
.plaza-painted .pportal[data-portal="pirates-cove"]:focus-visible .pbuild{
  filter:brightness(1.18);box-shadow:0 0 0 4px rgba(17,13,9,.7),0 7px 18px rgba(0,0,0,.75),0 0 30px rgba(255,189,69,.7)
}
@keyframes covePortalPulse{
  0%,100%{transform:translateY(0);box-shadow:0 0 0 4px rgba(17,13,9,.55),0 5px 15px rgba(0,0,0,.7),0 0 18px rgba(224,164,57,.32)}
  50%{transform:translateY(-3px);box-shadow:0 0 0 4px rgba(17,13,9,.55),0 8px 18px rgba(0,0,0,.7),0 0 30px rgba(255,184,55,.64)}
}

.room-painted-pirates-cove{background:#122327}
.room-painted-pirates-cove .plazabgwrap{
  background-image:url('room-bg-pirates-cove-desktop-v1.webp');background-position:center center;background-size:cover
}
.room-painted-pirates-cove .plazabgwrap::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:
    radial-gradient(circle at 52% 43%,rgba(255,185,80,.14),transparent 24%),
    linear-gradient(90deg,rgba(5,13,16,.26),transparent 27%,transparent 76%,rgba(5,11,14,.2)),
    linear-gradient(0deg,rgba(4,10,13,.42),transparent 30%,rgba(16,27,28,.06) 72%,rgba(5,11,14,.2))
}
.room-painted-pirates-cove .plazabgwrap::after{
  content:"";position:absolute;left:27%;right:0;top:40%;height:29%;pointer-events:none;z-index:1;opacity:.28;
  background:
    repeating-linear-gradient(176deg,transparent 0 10px,rgba(255,220,144,.52) 11px 12px,transparent 13px 22px);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 90%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 18%,#000 90%,transparent);
  animation:coveWater 9s ease-in-out infinite alternate
}
@keyframes coveWater{
  from{transform:translate3d(-7px,0,0) skewX(-2deg);opacity:.2}
  to{transform:translate3d(8px,3px,0) skewX(2deg);opacity:.36}
}
.room-painted-pirates-cove .roomtitle{
  color:#ffe2a0;text-shadow:0 2px 4px #000,0 0 20px rgba(235,159,45,.48)
}
.room-painted-pirates-cove .station{width:126px;min-height:96px;z-index:8}
.room-painted-pirates-cove .station .stenv,
.room-painted-pirates-cove .station .stmount,
.room-painted-pirates-cove .station .sticon::before,
.room-painted-pirates-cove .station .sticon::after{display:none!important}
.room-painted-pirates-cove .station .sticon{
  width:60px;height:60px;display:grid;place-items:center;margin:auto;border:2px solid #d6a948;border-radius:50%;
  background:radial-gradient(circle at 35% 28%,#6f3031 0,#351a1d 42%,#101819 76%);
  color:#ffe4a3;font-size:27px;line-height:1;box-shadow:0 0 0 4px rgba(10,14,14,.58),0 5px 14px rgba(0,0,0,.72),0 0 18px rgba(218,153,45,.38);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease
}
.room-painted-pirates-cove .station .stlabel{
  display:block;max-width:126px;margin:7px auto 0;padding:5px 8px;border:1px solid #c9953e;border-radius:999px;
  background:linear-gradient(180deg,rgba(53,24,24,.96),rgba(10,17,18,.96));color:#ffe7ab;
  box-shadow:0 3px 10px rgba(0,0,0,.7);font-size:11px;font-weight:800;line-height:1.12;text-shadow:0 1px 2px #000
}
.room-painted-pirates-cove .station:hover .sticon,
.room-painted-pirates-cove .station:focus-visible .sticon{
  transform:translateY(-4px) scale(1.08);filter:brightness(1.2);
  box-shadow:0 0 0 4px rgba(10,14,14,.68),0 8px 18px rgba(0,0,0,.78),0 0 30px rgba(255,183,58,.68)
}
.room-painted-pirates-cove .station[data-scene="black-lantern"]{left:18%!important;top:52%!important}
.room-painted-pirates-cove .station[data-scene="lantern-grotto"]{left:50%!important;top:49%!important}
.room-painted-pirates-cove .station[data-scene="corsair-hunt"]{left:79%!important;top:55.5%!important}
.room-painted-pirates-cove .station[data-scene="corsair-arcade"]{left:50%!important;top:72%!important}

.cove-intro{position:relative;overflow:hidden;padding:18px 19px;border:1px solid rgba(220,169,72,.52);border-radius:16px;
  background:linear-gradient(145deg,rgba(72,29,31,.94),rgba(11,25,27,.97) 58%,rgba(12,35,39,.96));
  box-shadow:inset 0 1px rgba(255,236,178,.12),0 14px 34px rgba(0,0,0,.34)}
.cove-intro::after{content:"";position:absolute;right:-38px;top:-42px;width:132px;height:132px;border-radius:50%;
  background:radial-gradient(circle,rgba(243,176,63,.2),transparent 67%);pointer-events:none}
.cove-kicker{color:#e7b75a;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.cove-intro h3{margin:5px 0 7px;color:#ffdea0;font-family:Georgia,serif;font-size:24px;line-height:1.06}
.cove-intro p{margin:0;color:#e9dfc8;font-size:13px;line-height:1.48}
.cove-rumor{min-height:66px;margin:14px 0 0;padding:12px 13px;border-left:3px solid #ca9138;border-radius:4px 11px 11px 4px;
  background:rgba(4,12,14,.66);color:#bcb7aa;font:italic 13px/1.45 Georgia,serif}
.cove-rumor.revealed{color:#fff0c2;animation:coveReveal .36s ease both}
.cove-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.cove-actions .btn{flex:1 1 120px}
.cove-map{position:relative;min-height:226px;margin-top:14px;border:1px solid #9e7131;border-radius:14px;overflow:hidden;
  background:
    radial-gradient(circle at 68% 34%,transparent 0 20px,rgba(79,49,24,.35) 21px 23px,transparent 24px),
    repeating-radial-gradient(ellipse at 50% 64%,transparent 0 20px,rgba(82,51,25,.22) 21px 22px),
    linear-gradient(145deg,#c89b58,#947044 53%,#725336);
  box-shadow:inset 0 0 30px rgba(57,31,13,.6),0 10px 24px rgba(0,0,0,.3)}
.cove-map::before{content:"";position:absolute;inset:0;opacity:.28;pointer-events:none;
  background:repeating-linear-gradient(12deg,transparent 0 18px,rgba(54,28,14,.26) 19px 20px)}
.cove-mark{position:absolute;z-index:2;width:46px;height:46px;border:2px solid #3f2417;border-radius:50%;
  display:grid;place-items:center;padding:0;background:#341a18;color:#f2cc78;font-size:20px;box-shadow:0 4px 10px rgba(0,0,0,.5);cursor:pointer;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.cove-mark b{position:absolute;left:50%;top:calc(100% + 5px);width:max-content;max-width:100px;transform:translateX(-50%);
  padding:3px 6px;border:1px solid rgba(72,38,20,.55);border-radius:999px;background:rgba(244,210,143,.9);
  color:#3d2114;font-size:9px;line-height:1;box-shadow:0 2px 5px rgba(50,28,14,.28);pointer-events:none}
.cove-mark:nth-of-type(1){left:16%;top:26%}
.cove-mark:nth-of-type(2){left:57%;top:56%}
.cove-mark:nth-of-type(3){right:12%;top:18%}
.cove-mark:hover,.cove-mark:focus-visible,.cove-mark.on{transform:scale(1.12);background:#7b342d;
  box-shadow:0 0 0 3px rgba(255,220,143,.35),0 6px 14px rgba(0,0,0,.55)}
.cove-reveal{min-height:56px;margin-top:11px;padding:10px 12px;border:1px solid rgba(220,169,72,.36);border-radius:10px;
  background:rgba(5,15,17,.82);color:#f8e6ba;font-size:12px;line-height:1.45}
.cove-reveal.revealed{animation:coveReveal .36s ease both}
@keyframes coveReveal{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

.cove-arcade-ovl{background:radial-gradient(circle at 50% 36%,rgba(92,48,26,.26),rgba(3,10,12,.88) 68%)}
.cove-arcade-ovl .roomovlcard{max-width:780px;border-color:#d8a84b;
  background:radial-gradient(circle at 50% -15%,rgba(119,52,41,.44),transparent 38%),linear-gradient(145deg,#17100c,#071315 58%,#0b2021);
  box-shadow:0 24px 80px rgba(0,0,0,.82),0 0 44px rgba(222,157,50,.2)}
.cove-arcade-ovl .roomovlhead{background:linear-gradient(90deg,#2c1715,#0b1c1d 64%,#162b28);border-bottom-color:rgba(219,169,76,.44)}
.cove-arcade-ovl .roomovltitle{color:#ffe4a4;text-shadow:0 2px 3px #000}
.cove-arcade-intro{padding-right:148px}
.cove-game-count{position:absolute;right:18px;top:50%;width:110px;transform:translateY(-50%) rotate(2deg);padding:10px 8px;
  border:1px solid rgba(247,205,111,.66);border-radius:8px;background:rgba(8,18,18,.72);color:#f8d784;
  box-shadow:inset 0 0 0 3px rgba(10,7,4,.34),0 5px 15px rgba(0,0,0,.38);font:900 9px/1.35 Georgia,serif;letter-spacing:.12em;text-align:center}
.cove-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.cove-game{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:96px;padding:11px 12px;
  overflow:hidden;border:1px solid color-mix(in srgb,var(--cove-game-accent) 72%,#8c6b35);border-radius:13px;
  background:linear-gradient(135deg,rgba(42,25,22,.96),rgba(5,19,21,.97));color:#f8ead0;text-align:left;text-decoration:none;
  box-shadow:inset 0 1px rgba(255,236,186,.08),0 8px 20px rgba(0,0,0,.36);transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.cove-game::after{content:"";position:absolute;right:-40px;bottom:-56px;width:140px;height:140px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--cove-game-accent) 28%,transparent),transparent 68%)}
.cove-game:hover,.cove-game:focus-visible{transform:translateY(-3px);filter:brightness(1.09);
  box-shadow:inset 0 1px rgba(255,242,203,.14),0 13px 25px rgba(0,0,0,.5),0 0 22px color-mix(in srgb,var(--cove-game-accent) 38%,transparent)}
.cove-game:focus-visible{outline:3px solid #ffe09a;outline-offset:2px}
.cove-game-icon{position:relative;z-index:1;display:grid;place-items:center;width:50px;height:50px;border:2px solid var(--cove-game-accent);border-radius:12px;
  background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.16),rgba(54,25,25,.92) 44%,#071416 78%);
  box-shadow:0 5px 13px rgba(0,0,0,.48),0 0 13px color-mix(in srgb,var(--cove-game-accent) 30%,transparent);font-size:24px}
.cove-game-copy{position:relative;z-index:1;display:flex;min-width:0;flex-direction:column;gap:3px}
.cove-game-copy b{color:#fff0c5;font:800 17px/1.05 Georgia,serif;text-shadow:0 1px 2px #000}
.cove-game-copy>span{color:#cfc7b7;font-size:10.5px;line-height:1.3}
.cove-game-tag{color:var(--cove-game-accent);font-size:8px;font-weight:900;letter-spacing:.13em;line-height:1}
.cove-game-sail{position:relative;z-index:1;align-self:end;color:#f3cc77;font-size:8px;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.cove-game:last-child{grid-column:1/-1}

@media(max-width:700px),(max-aspect-ratio:1/1){
  .plaza-painted .pportal[data-portal="pirates-cove"]{left:90%!important;top:25%!important}
  .plaza-painted .pportal[data-portal="pirates-cove"] .pbuild{width:40px;height:40px}
  .plaza-painted .pportal[data-portal="pirates-cove"] .pbuild::before{font-size:21px}
  .room-painted-pirates-cove .plazabgwrap{
    background-image:url('room-bg-pirates-cove-mobile-v1.webp');background-position:center center
  }
  .room-painted-pirates-cove .roomtitle{
    position:fixed;left:10px;right:auto;top:56px;max-width:190px;padding:7px 11px;border:1px solid rgba(218,169,72,.5);
    border-radius:999px;background:rgba(9,17,18,.76);font-size:14px;backdrop-filter:blur(7px)
  }
  .room-painted-pirates-cove .station{width:106px;min-height:80px}
  .room-painted-pirates-cove .station .sticon{width:48px;height:48px;font-size:22px}
  .room-painted-pirates-cove .station .stlabel{max-width:106px;padding:4px 6px;font-size:9.5px}
  .room-painted-pirates-cove .station[data-scene="black-lantern"]{left:18%!important;top:56%!important}
  .room-painted-pirates-cove .station[data-scene="lantern-grotto"]{left:50%!important;top:49%!important}
  .room-painted-pirates-cove .station[data-scene="corsair-hunt"]{left:81%!important;top:57%!important}
  .room-painted-pirates-cove .station[data-scene="corsair-arcade"]{left:50%!important;top:72%!important}
  .cove-intro{padding:15px}
  .cove-intro h3{font-size:21px}
  .cove-map{min-height:205px}
  .cove-actions{display:grid;grid-template-columns:1fr}
  .cove-arcade-ovl{padding:8px}
  .cove-arcade-ovl .roomovlbody{padding:10px}
  .cove-arcade-intro{padding:14px}
  .cove-game-count{position:static;width:auto;margin-top:10px;transform:none}
  .cove-game-grid{grid-template-columns:1fr;gap:8px;margin-top:10px}
  .cove-game,.cove-game:last-child{grid-column:auto;grid-template-columns:46px minmax(0,1fr);min-height:86px;padding:10px}
  .cove-game-icon{width:44px;height:44px;font-size:21px}
  .cove-game-copy b{font-size:15px}
  .cove-game-sail{grid-column:2;justify-self:start;margin-top:-1px}
}

@media(prefers-reduced-motion:reduce){
  .plaza-painted .pportal[data-portal="pirates-cove"] .pbuild,
  .room-painted-pirates-cove .plazabgwrap::after,
  .cove-rumor.revealed,.cove-reveal.revealed{animation:none!important}
  .room-painted-pirates-cove .station .sticon,.cove-mark,.cove-game{transition:none}
}
  /* ARENA_SLICE_END 04-harbor-war-fronts */
  /* ARENA_SLICE_START 05-followers-empire-grounds -- spliced from arena-css/05-followers-empire-grounds.css; edit that file, not this region */
  .boardcard.door-reveal{max-width:480px!important;border-color:rgba(240,198,96,.55)!important;box-shadow:0 24px 70px rgba(0,0,0,.6),0 0 44px rgba(214,164,66,.16)!important}
  .door-reveal .door-reveal-lede{font-size:13.5px;line-height:1.5;margin:2px 0 10px}
  .door-reveal-name{display:flex;gap:8px;margin:0 0 12px}
  .door-reveal-name input{flex:1;min-width:0;font-size:15px}
  .door-reveal-named{margin:0 0 12px;color:#e9d9ae}
  .door-reveal-doors{display:flex;flex-direction:column;gap:8px}
  .door-reveal-door{display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;border:1px solid rgba(226,180,90,.34);border-radius:12px;background:rgba(255,255,255,.045);color:#f2e4c2;text-align:left;cursor:pointer;font:inherit}
  .door-reveal-door:hover,.door-reveal-door:focus-visible{border-color:#f0c660;background:rgba(216,161,57,.14)}
  .door-reveal-door .door-reveal-ico{font-size:25px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.4))}
  .door-reveal-door b{display:block;font-size:14.5px}
  .door-reveal-door small{display:block;color:#b7a888;font-size:11.5px;margin-top:1px}
  .door-reveal-stay{width:100%;margin-top:10px}
  .character-cta-anchor{position:absolute;left:50%;bottom:calc(100% + 13px);z-index:12;width:max-content;max-width:min(430px,calc(100vw - 28px));transform:translateX(-50%);pointer-events:none;animation:characterPromptFloat 1.8s ease-in-out infinite}
  .character-cta-anchor::after{content:"";position:absolute;left:50%;bottom:-6px;width:14px;height:14px;transform:translateX(-50%) rotate(45deg);border-right:1px solid #d5ac55;border-bottom:1px solid #d5ac55;background:#1b1209;box-shadow:3px 3px 6px rgba(13,8,3,.3);pointer-events:none}
  .character-cta{width:max-content;max-width:100%;min-height:46px;padding:9px 32px!important;font-size:16px!important;line-height:1.12!important;white-space:normal;pointer-events:auto}
  @keyframes characterPromptFloat{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-5px)}}
  #shepherds{bottom:146px}
  .plazafloor{position:absolute;inset:0;cursor:crosshair;touch-action:none}
  .plazafloor.ground-dragging{cursor:grabbing}
  .plazaroster{position:absolute;bottom:8px;left:10px;font-size:12px;color:#e9e0cf;background:rgba(0,0,0,.45);padding:3px 10px;border-radius:20px;pointer-events:none;z-index:1200}
  .psoul{position:absolute;transform:translate(-50%,-100%);transition:left 1.1s ease,top 1.1s ease,transform 1.1s ease;cursor:pointer;z-index:1}
  .psoul.me{z-index:2} .psoul.me .pname{color:var(--gold2)}
  @media(prefers-reduced-motion:reduce){.character-cta-anchor{animation:none}}
  .psoul.me.tap-walking{transition-timing-function:linear}
  .joy-steering .psoul.me{transition:none}
  /* Painted RPG characters use real alternating contact/passing frames. The
     soul still interpolates through the world, but the body no longer floats. */
  .avdir{display:none}.avdir-down{display:block}
  .psoul.facing-up .avdir{display:none}.psoul.facing-up .avdir-up{display:block}
  .psoul.facing-side .avdir{display:none}.psoul.facing-side .avdir-side{display:block}
  .psoul.facing-down .avdir{display:none}.psoul.facing-down .avdir-down{display:block}
  .psoul.facing-side .avfrontonly,.psoul.facing-up .avfrontonly,.psoul.facing-side .avplaced-back,.psoul.facing-up .avplaced-back{display:none}
  /* Exact complete looks idle as one integrated painting instead of nine
     stickers. The directional body remains underneath and takes over whenever
     the citizen turns or walks, so authored beauty never costs movement. */
  .avfig.avensemble-ready .avensemblefront{display:block}
  .avfig.avensemble-ready .avdir-down,.avfig.avensemble-ready .avpaintunder,.avfig.avensemble-ready .avpaintcosmetics{display:none}
  .psoul.facing-side .avfig.avensemble-ready .avensemblefront,.psoul.facing-up .avfig.avensemble-ready .avensemblefront,.psoul.tap-walking .avfig.avensemble-ready .avensemblefront,.psoul.is-walking .avfig.avensemble-ready .avensemblefront,.joy-steering .psoul.me .avfig.avensemble-ready .avensemblefront{display:none}
  .psoul.facing-side .avfig.avensemble-ready .avpaintunder,.psoul.facing-up .avfig.avensemble-ready .avpaintunder,.psoul.tap-walking .avfig.avensemble-ready .avpaintunder,.psoul.is-walking .avfig.avensemble-ready .avpaintunder,.joy-steering .psoul.me .avfig.avensemble-ready .avpaintunder{display:block}
  .psoul.tap-walking:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avdir-down,.psoul.is-walking:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avdir-down,.joy-steering .psoul.me:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avdir-down{display:block}
  .psoul.tap-walking:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avpaintcosmetics,.psoul.is-walking:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avpaintcosmetics,.joy-steering .psoul.me:not(.facing-side):not(.facing-up) .avfig.avensemble-ready .avpaintcosmetics{display:block}
  .avhairraster{overflow:hidden}
  .psoul.facing-side .avhairraster,.psoul.facing-up .avhairraster{display:none}
  .avwalkframe{opacity:0}.avwalkframe.avwf0{opacity:1}
  .psoul.tap-walking .avwalkframe,.psoul.is-walking .avwalkframe,.joy-steering .psoul.me .avwalkframe{animation:avatarWalkFrame .64s steps(1,end) infinite}
  .psoul.tap-walking .avwf1,.psoul.is-walking .avwf1,.joy-steering .psoul.me .avwf1{animation-delay:-.16s}
  .psoul.tap-walking .avwf2,.psoul.is-walking .avwf2,.joy-steering .psoul.me .avwf2{animation-delay:-.32s}
  .psoul.tap-walking .avwf3,.psoul.is-walking .avwf3,.joy-steering .psoul.me .avwf3{animation-delay:-.48s}
  @keyframes avatarWalkFrame{0%,24.99%{opacity:1}25%,100%{opacity:0}}
  .psoul.facing-side.facing-left .pfig>svg{transform:scaleX(-1)}
  .walktarget{position:absolute;width:34px;height:16px;border:2px solid rgba(240,196,104,.9);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:0;box-shadow:0 0 0 3px rgba(212,175,55,.16),0 0 14px rgba(240,196,104,.55);animation:walktarget .7s ease-in-out infinite alternate}
  @keyframes walktarget{from{opacity:.55;transform:translate(-50%,-50%) scale(.82)}to{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}
  @media (prefers-reduced-motion:reduce){.psoul .avwalkframe,.walktarget{animation:none!important}.psoul .avwalkframe{opacity:0}.psoul .avwf0{opacity:1}}
  .pfig{filter:drop-shadow(0 3px 2px rgba(20,10,3,.45)) drop-shadow(0 8px 7px rgba(0,0,0,.42));line-height:0}
  .plaza .pfig>svg,.roomscene .pfig>svg{width:72px;height:auto}
  .plaza .pfig>svg.avensemble-ready,.roomscene .pfig>svg.avensemble-ready{width:84px}
  .pname{text-align:center;font-size:11px;color:#efe7d6;margin-top:-3px;text-shadow:0 1px 3px #000;white-space:nowrap;max-width:92px;overflow:hidden;text-overflow:ellipsis}
  .pbubble{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:#f4ead2;color:#1a1206;font-size:12px;padding:5px 9px;border-radius:10px;white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px;animation:bubIn .25s ease;box-shadow:0 3px 8px rgba(0,0,0,.4)}
  .ppop{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:var(--raised);border:1px solid var(--gold);border-radius:10px;padding:7px;display:flex;flex-direction:column;gap:5px;z-index:5;margin-bottom:5px;box-shadow:0 6px 18px rgba(0,0,0,.5)}
  .ppopname{font-size:11px;color:var(--gold2);text-align:center;white-space:nowrap;font-family:var(--serif)}
  .ppop .btn{padding:4px 12px;font-size:12.5px}
  .plazachat{display:flex;gap:8px}
  .plazachat input{flex:1;background:var(--raised);border:1px solid var(--line2);border-radius:10px;color:var(--ink);padding:9px 12px;font:inherit;font-size:14px}
  .plazachat input:focus{outline:none;border-color:var(--gold)}
  .plazalog{margin-top:8px;max-height:120px;overflow-y:auto;font-size:12.5px;color:var(--soft);display:flex;flex-direction:column;gap:2px}
  .plchal{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--gold);border-radius:12px;padding:10px 12px;margin:8px 0;background:radial-gradient(120% 140% at 0 0,#2a1e0c,#120d07);animation:cardIn .3s ease}
  .plchal .btn{padding:5px 12px}
  .dcard.plcta{border-color:#c08a3a;background:radial-gradient(130% 150% at 0% 0%, #2a1e0c, #14100a)}
  .dcard.plcta:hover{border-color:#e0a850;box-shadow:0 6px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(224,168,80,.3)}
  .dcard.plcta .t{color:#f0c468}
  .plazaacts{display:flex;justify-content:center;margin:2px 0 10px}
  .plrally{background:radial-gradient(120% 140% at 0 0,#0f2a1c,#0a1712);border-color:#3f7a5a}
  .pnpc{cursor:pointer}
  .pstatue .pfig{filter:grayscale(1) sepia(.3) brightness(1.08) drop-shadow(0 4px 5px rgba(0,0,0,.5))}
  .pplinth{width:34px;height:7px;background:linear-gradient(#cabfa8,#8a7f66);border-radius:2px;margin:-2px auto 0;box-shadow:0 2px 5px rgba(0,0,0,.55)}
  .pstatue .pname{color:#cfc4a8}
  .pcitadel{cursor:pointer}
  .pcitadel .cfig{line-height:0;filter:drop-shadow(0 4px 5px rgba(0,0,0,.5))}
  .pcitadel:hover .cfig{filter:drop-shadow(0 0 9px rgba(240,196,104,.65)) drop-shadow(0 4px 5px rgba(0,0,0,.5))}
  .pcitadel .cfig svg{width:62px;height:62px}
  .pcitadel .pname{color:#e2d5b0;max-width:150px}
  .mycitadel .cfig{filter:drop-shadow(0 0 9px rgba(240,196,104,.75)) drop-shadow(0 4px 5px rgba(0,0,0,.5))}
  .mycitadel .cfig svg{width:94px;height:94px}
  .mycitadel .pname{color:#f0c468;font-weight:800;max-width:180px;font-size:12px}
  /* A real little follower, not an avatar badge. The authoritative presence
     payload picks the companion; these layers only make that truth feel alive. */
  .ppet{--pet-trail-x:-32px;--pet-trail-y:0px;--pet-face:1;--pet-size:22px;position:absolute;left:50%;bottom:15px;width:54px;height:51px;transform:translate(calc(-50% + var(--pet-trail-x)),var(--pet-trail-y));transform-origin:50% 100%;transition:transform .38s cubic-bezier(.2,.72,.25,1),filter .18s;pointer-events:auto;cursor:pointer;z-index:5;line-height:1;outline:none}
  .ppet:focus-visible{filter:drop-shadow(0 0 7px rgba(255,224,132,.95))}.ppet-shadow{position:absolute;left:50%;bottom:4px;width:31px;height:9px;transform:translateX(-50%);border-radius:50%;background:rgba(4,8,7,.38);filter:blur(1px)}
  .ppet-body{position:absolute;left:50%;bottom:7px;transform:translateX(-50%) scaleX(var(--pet-face));transform-origin:50% 90%;font-size:var(--pet-size);white-space:nowrap;filter:drop-shadow(0 3px 2px rgba(0,0,0,.58)) drop-shadow(0 0 5px rgba(255,224,139,.18));animation:petGroundIdle 2.35s ease-in-out infinite alternate}
  .ppet-style-head,.ppet-style-neck,.ppet-trail{position:absolute;left:50%;z-index:2;display:grid;place-items:center;pointer-events:none;text-shadow:0 2px 3px #000}.ppet-style-head{top:0;transform:translateX(-50%);font-size:calc(var(--pet-size)*.48)}.ppet-style-neck{bottom:5px;transform:translateX(-50%);font-size:calc(var(--pet-size)*.42)}.ppet-trail{z-index:-1;left:auto;right:77%;bottom:9px;color:#ffe195;font-size:calc(var(--pet-size)*.38);letter-spacing:1px;animation:petFollowerTrail 1.25s ease-in-out infinite alternate}.ppet[data-trail-tone="spray"] .ppet-trail{color:#9ce9ff}.ppet[data-trail-tone="embers"] .ppet-trail{color:#ff9a55}.ppet[data-trail-tone="aurora"] .ppet-trail{color:#c6a5ff}.ppet[data-trail-tone="petals"] .ppet-trail{color:#ffb2d3}
  .ppet-tag{position:absolute;left:50%;top:43px;width:max-content;max-width:112px;transform:translateX(-50%) translateY(-2px);padding:3px 7px;border:1px solid rgba(244,204,111,.42);border-radius:999px;background:rgba(13,18,16,.9);color:#fff1c4;font:800 9.5px/1.15 system-ui,sans-serif;letter-spacing:.01em;text-shadow:0 1px 2px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 3px 9px rgba(0,0,0,.38);opacity:0;transition:opacity .16s,transform .16s;pointer-events:none}
  .psoul.me .ppet-tag,.ppet:hover .ppet-tag,.ppet:focus-visible .ppet-tag,.ppet.loved .ppet-tag{opacity:1;transform:translateX(-50%) translateY(0)}
  .ppet-calling{position:absolute;right:-3px;top:-5px;display:none;place-items:center;width:18px;height:18px;border:1px solid rgba(255,224,145,.65);border-radius:50%;background:#182521;font-size:10px;box-shadow:0 2px 7px rgba(0,0,0,.5)}.ppet-calling.on{display:grid}
  .ppet-evolution{position:absolute;left:-4px;top:-5px;display:none;place-items:center;width:18px;height:18px;border:1px solid rgba(255,232,170,.7);border-radius:50%;background:#24202d;font-size:10px;box-shadow:0 2px 8px rgba(0,0,0,.52)}.ppet-evolution.on{display:grid}.ppet[data-evolution="sunforged"] .ppet-body{filter:drop-shadow(0 3px 2px rgba(0,0,0,.58)) drop-shadow(0 0 7px rgba(255,184,58,.84))}.ppet[data-evolution="moonwoven"] .ppet-body{filter:drop-shadow(0 3px 2px rgba(0,0,0,.58)) drop-shadow(0 0 7px rgba(133,162,255,.82))}.ppet[data-evolution="heartbloom"] .ppet-body{filter:drop-shadow(0 3px 2px rgba(0,0,0,.58)) drop-shadow(0 0 7px rgba(255,130,188,.8))}
  .ppet::after{position:absolute;right:0;top:0;width:18px;height:18px;display:grid;place-items:center;border:1px solid rgba(255,217,128,.38);border-radius:50%;background:rgba(24,24,18,.88);font-size:10px;box-shadow:0 2px 7px rgba(0,0,0,.4);opacity:0;transform:scale(.7);transition:opacity .18s,transform .18s}.ppet-mood-hungry::after{content:"\1F34E";opacity:1;transform:scale(1)}.ppet-mood-famished::after{content:"\1F372";opacity:1;transform:scale(1);animation:petNeed 1.2s ease-in-out infinite alternate}
  .ppet-mood-hungry .ppet-tag{border-color:rgba(244,177,88,.65)}.ppet-mood-famished .ppet-tag{border-color:rgba(239,117,84,.75);color:#ffd8bd}.ppet-stage-4 .ppet-body{filter:drop-shadow(0 3px 2px rgba(0,0,0,.58)) drop-shadow(0 0 8px rgba(255,211,92,.9))}
  .pet-motion-fly .ppet-body{animation-name:petFlyIdle;animation-duration:1.8s}.pet-motion-swim .ppet-body{animation-name:petSwimIdle;animation-duration:2s}.pet-motion-slink .ppet-body{animation-name:petSlinkIdle;animation-duration:2.6s}.pet-motion-sturdy .ppet-body{animation-name:petSturdyIdle;animation-duration:2.8s}
  .psoul.is-walking .ppet-body,.psoul.tap-walking .ppet-body,.joy-steering .psoul.me .ppet-body{animation:petTrot .34s ease-in-out infinite alternate}.ppet.loved .ppet-body,.ppet.social-react .ppet-body{animation:petLove .68s cubic-bezier(.2,.78,.3,1)}
  .ppet-love{position:absolute;left:50%;top:-13px;width:max-content;max-width:150px;transform:translateX(-50%);padding:4px 7px;border-radius:999px;background:rgba(30,23,17,.94);color:#ffe4a1;font:800 9.5px/1.1 system-ui,sans-serif;text-shadow:0 1px 2px #000;box-shadow:0 4px 12px rgba(0,0,0,.42);pointer-events:none;animation:petLoveBubble 1.45s ease-out both}
  @keyframes eggwob{0%{transform:rotate(-7deg)}100%{transform:rotate(7deg)}}
  .eggwob{display:inline-block;animation:eggwob 1.15s ease-in-out infinite alternate;transform-origin:50% 88%}
  @keyframes petGroundIdle{from{transform:translateX(-50%) translateY(0) scaleX(var(--pet-face)) rotate(-2deg)}to{transform:translateX(-50%) translateY(-3px) scaleX(var(--pet-face)) rotate(2deg)}}
  @keyframes petFlyIdle{from{transform:translateX(-50%) translateY(-2px) scaleX(var(--pet-face)) rotate(-3deg)}to{transform:translateX(-50%) translateY(-9px) scaleX(var(--pet-face)) rotate(3deg)}}
  @keyframes petSwimIdle{from{transform:translateX(-50%) translateY(0) scaleX(var(--pet-face)) rotate(-5deg)}to{transform:translateX(-50%) translateY(-6px) scaleX(var(--pet-face)) rotate(5deg)}}
  @keyframes petSlinkIdle{from{transform:translateX(-50%) scaleX(var(--pet-face)) scaleY(.94) rotate(-4deg)}to{transform:translateX(-50%) translateY(-2px) scaleX(var(--pet-face)) scaleY(1.04) rotate(4deg)}}
  @keyframes petSturdyIdle{from{transform:translateX(-50%) scaleX(var(--pet-face)) translateY(0)}to{transform:translateX(-50%) scaleX(var(--pet-face)) translateY(-2px) scale(1.035)}}
  @keyframes petTrot{from{transform:translateX(-50%) translateY(1px) scaleX(var(--pet-face)) rotate(-5deg)}to{transform:translateX(-50%) translateY(-6px) scaleX(var(--pet-face)) rotate(5deg)}}
  @keyframes petLove{0%{transform:translateX(-50%) scaleX(var(--pet-face))}30%{transform:translateX(-50%) translateY(-12px) scaleX(var(--pet-face)) scale(1.2) rotate(-8deg)}58%{transform:translateX(-50%) translateY(-3px) scaleX(var(--pet-face)) rotate(8deg)}100%{transform:translateX(-50%) scaleX(var(--pet-face))}}
  @keyframes petLoveBubble{0%{opacity:0;transform:translateX(-50%) translateY(7px) scale(.75)}18%,75%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:0;transform:translateX(-50%) translateY(-12px) scale(.94)}}
  @keyframes petNeed{from{box-shadow:0 2px 7px rgba(0,0,0,.4)}to{box-shadow:0 0 11px rgba(242,156,72,.72)}}
  @keyframes petFollowerTrail{from{transform:translate(5px,2px);opacity:.45}to{transform:translate(-3px,-2px);opacity:1}}
  @media(max-width:600px){.ppet{--pet-trail-x:-28px;width:48px;height:47px;bottom:14px}.ppet-tag{top:39px;max-width:88px;font-size:8.5px;padding:3px 6px}.psoul:not(.me) .ppet-tag{display:none}}
  @media(prefers-reduced-motion:reduce){.ppet,.ppet-tag,.ppet::after{transition:none}.ppet-body,.ppet-mood-famished::after,.ppet-love,.ppet-trail{animation:none!important}}
  .empovl{position:fixed;inset:0;z-index:60;background:rgba(6,4,2,.72);display:flex;align-items:center;justify-content:center;padding:16px;animation:vfade .2s ease}
  .empcard{width:100%;max-width:420px;max-height:88vh;max-height:88dvh;overflow-y:auto;background:radial-gradient(130% 120% at 0% 0%,#241a0b,#0f0b06 72%);border:1px solid var(--gold);border-radius:16px;padding:18px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
  .emphead{display:flex;gap:12px;align-items:center}
  .empfig{line-height:0;flex:0 0 auto}
  .empname{font-family:var(--serif);font-size:18px;color:var(--gold2)}
  .empsub{font-size:12.5px;color:var(--soft);margin-top:3px;font-family:var(--mono)}
  .empstats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
  .empstat{background:var(--raised);border:1px solid var(--line);border-radius:10px;padding:9px 11px}
  .esl{font-size:11px;color:var(--mute);font-family:var(--mono)} .esv{font-size:15px;color:var(--ink);margin-top:2px}
  .empdh{font-family:var(--serif);color:var(--gold2);font-size:15px;margin:14px 0 6px}
  .empdistricts{display:flex;flex-direction:column;gap:0}
  .empbase{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:8px 0 6px;background:#0d0a05;line-height:0;box-shadow:inset 0 0 44px rgba(255,140,58,.07)}
  .empbase svg{display:block}
  .empcap{color:var(--muted);font-size:12px;text-align:center;margin:0 0 14px}
  /* ── idle-tycoon Empire ── */
  .empwrap{margin-top:10px}
  .emphud{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--gold);border-radius:14px;padding:12px 16px;background:linear-gradient(120deg,#241a0b,#120d07);margin-bottom:10px}
  .emphud .empgold{font-family:var(--mono);font-size:22px;color:#ffe08a}
  .emphud .empgold b{font-size:26px}
  .emphud .emprankbox{margin-left:6px}
  .emphud .emprankn{font-family:var(--serif);font-size:19px;color:var(--gold2);line-height:1.1}
  .emphud .emprlvl{font-family:var(--mono);font-size:12px;color:var(--soft)}
  .emphud .empratebox{margin-left:auto;font-family:var(--mono);font-size:13px;color:#8fe6b0;text-align:right}
  .emphud .empratebox .empbig{font-size:22px;font-weight:700}
  .emppano{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#0d0a05;line-height:0;box-shadow:inset 0 0 60px rgba(255,140,58,.08)}
  .emppano svg{display:block;width:100%;max-height:340px}
  .emptrib{border:1px solid var(--gold);border-radius:14px;padding:12px 14px;margin-top:10px;background:linear-gradient(120deg,#1c1509,#0f0b06)}
  .emptrib .emptribhd{font-family:var(--mono);font-size:12.5px;color:var(--soft);margin-bottom:8px}
  .emptribbar{height:20px;border-radius:10px;background:#0c0905;border:1px solid var(--line);overflow:hidden}
  .emptribfill{height:100%;width:0;background:linear-gradient(90deg,#b8922e,#f0c468);transition:width .5s linear;box-shadow:0 0 12px rgba(240,196,104,.4)}
  .emptriblbl{font-family:var(--mono);font-size:12px;color:var(--soft);margin:7px 0 9px}
  .empcollect{width:100%}
  .empcollect.ready{animation:empPulse 1.4s ease-in-out infinite}
  @keyframes empPulse{0%,100%{box-shadow:0 0 0 rgba(240,196,104,0)}50%{box-shadow:0 0 16px rgba(240,196,104,.55)}}
  .empsec{font-family:var(--serif);font-size:18px;color:var(--ink);margin:16px 0 8px}
  .emprows{display:flex;flex-direction:column;gap:8px}
  .emprow{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--raised)}
  .emprow .empricon{font-size:26px;flex:0 0 auto;width:40px;text-align:center}
  .emprow .emprmid{flex:1 1 auto;min-width:0}
  .emprow .emprname{font-family:var(--serif);font-size:16px;color:var(--ink)}
  .emprow .emprpips{display:flex;gap:4px;margin:6px 0}
  .emprow .emppip{width:18px;height:6px;border-radius:3px;background:var(--bg-deep);border:1px solid var(--line)}
  .emprow .emppip.on{background:linear-gradient(90deg,#b8922e,#f0c468);border-color:var(--gold)}
  .emprow .emprperk{font-size:12px;color:#8fe6b0}
  .emprow .empract{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}
  .emprow .emprnext{font-family:var(--mono);font-size:11px;color:var(--muted)}
  .emprow .empup{white-space:nowrap;padding:8px 12px}
  .emprow .empmax{font-family:var(--serif);color:var(--gold2);font-size:15px}
  @media(max-width:560px){.emprow{flex-wrap:wrap}.emprow .emprmid{flex-basis:60%}}
  .emprow{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:6px 0;border-top:1px solid var(--line)}
  .emprank{color:var(--gold2);font-family:var(--mono);font-size:12px;white-space:nowrap}
  /* The Grounds, a living estate instead of a card grid. The painted land is
     the stable stage; every building, road pulse, harvest and control stays
     live DOM so the town remains readable, accessible and responsive. */
  .groundsestate{position:fixed;inset:0;overflow:hidden;background:#6c5a37 url('/arena/grounds-bg-desktop-v1.jpg') center/cover no-repeat;color:#fff5d6;isolation:isolate}
  .groundsestate.embedded{position:relative;inset:auto;width:100%;height:min(760px,78vh);height:min(760px,78dvh);min-height:600px;border:1px solid rgba(237,201,118,.58);border-radius:18px;box-shadow:0 18px 60px rgba(0,0,0,.5)}
  .groundsestate::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,20,26,.18),transparent 25%,transparent 68%,rgba(13,8,3,.55)),radial-gradient(ellipse at center,transparent 44%,rgba(8,5,2,.28) 100%);pointer-events:none}
  .gehud{position:absolute;z-index:8;top:56px;left:16px;right:310px;display:flex;align-items:center;gap:8px;pointer-events:none}
  .gehud>*{pointer-events:auto}
  .gehudbrand{min-width:180px;padding:8px 13px;border:1px solid rgba(245,215,145,.62);border-radius:14px;background:linear-gradient(180deg,rgba(48,35,20,.9),rgba(18,12,7,.9));box-shadow:0 6px 24px rgba(0,0,0,.42),inset 0 1px rgba(255,239,194,.2);backdrop-filter:blur(6px)}
  .gehudtitle{font:700 19px/1 var(--serif);color:#fff0bd;text-shadow:0 2px 3px #251306}
  .gehudsub{margin-top:4px;font:700 10px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#d5c49c}
  .gehudstat{display:flex;align-items:center;gap:6px;min-height:43px;padding:6px 11px;border:1px solid rgba(245,215,145,.4);border-radius:13px;background:rgba(20,13,7,.8);box-shadow:0 4px 16px rgba(0,0,0,.34);backdrop-filter:blur(5px)}
  .gehudstat b{font:800 16px/1 var(--mono);color:#ffe38b}.gehudstat small{display:block;font:700 9px/1.1 var(--mono);color:#c8b98f;text-transform:uppercase;letter-spacing:.06em}
  .gehudcoin{font-size:20px}.gehud .gecollect{margin-left:auto;min-height:44px;padding:8px 14px;white-space:nowrap}
  .gehud .gecollect.ready{animation:geReady 1.25s ease-in-out infinite}
  @keyframes geReady{50%{transform:translateY(-2px);box-shadow:0 0 0 3px rgba(255,219,115,.2),0 8px 24px rgba(17,9,3,.5)}}
  .gemap{position:absolute;inset:0;z-index:1;overflow:hidden;touch-action:manipulation}
  .gegrid{position:absolute;left:8.5%;right:9%;top:29%;bottom:12%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:1.2% 2.4%;z-index:3}
  .gesupply{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:2;pointer-events:none}
  .gesupply line{stroke:#7bf4c0;stroke-width:1.5;stroke-dasharray:2.5 2;filter:drop-shadow(0 0 3px #123c2d);animation:geRoad 1.8s linear infinite}
  @keyframes geRoad{to{stroke-dashoffset:-9}}
  .geplot{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:18px;cursor:pointer;outline:none;transition:filter .18s ease,transform .18s ease,background .18s ease}
  .geplot:hover,.geplot:focus-visible{background:rgba(255,232,164,.12);border-color:rgba(255,235,170,.64);filter:brightness(1.08)}
  .geplot.locked{cursor:not-allowed;filter:saturate(.35)}
  .geplot.locked::after{content:'LOCKED';padding:4px 7px;border-radius:999px;background:rgba(15,11,8,.72);border:1px solid rgba(255,255,255,.2);font:800 9px var(--mono);color:#d8d0bc;letter-spacing:.08em}
  .geplot.empty::after{content:'+ BUILD';padding:7px 10px;border-radius:999px;background:linear-gradient(180deg,rgba(54,41,24,.92),rgba(19,13,8,.92));border:1px solid rgba(244,211,129,.65);box-shadow:0 5px 18px rgba(0,0,0,.42);font:800 10px var(--mono);color:#ffe5a0;letter-spacing:.06em}
  .geplot.plan-target{background:rgba(103,232,185,.13);border:1px dashed #82edc0}
  .geplot.selected{background:rgba(255,224,130,.18);border-color:#ffe187;transform:translateY(-3px);filter:brightness(1.17)}
  .gebuilding{position:relative;width:min(92%,150px);height:min(94%,132px);display:flex;align-items:center;justify-content:flex-end;flex-direction:column;filter:drop-shadow(0 11px 8px rgba(23,12,4,.48));transform-origin:center bottom;transition:transform .18s ease}
  .geplot:hover .gebuilding,.geplot:focus-visible .gebuilding{transform:translateY(-4px) scale(1.035)}
  .gebuilding.ready{animation:geBob 1.35s ease-in-out infinite}.gebuilding.ready::before{content:'';position:absolute;inset:12% 7% 0;border-radius:50%;background:radial-gradient(ellipse,rgba(255,221,105,.42),transparent 66%);filter:blur(5px);z-index:-1}
  @keyframes geBob{50%{transform:translateY(-4px)}}
  .gebuilding svg{display:block;width:100%;height:auto;max-height:100%;overflow:visible}
  .gesmoke{transform-origin:center bottom;animation:geSmoke 2.8s ease-in-out infinite alternate}
  @keyframes geSmoke{to{transform:translate(4px,-4px);opacity:.35}}
  .geflag{transform-origin:left center;animation:geFlag 1.4s ease-in-out infinite alternate}
  @keyframes geFlag{to{transform:skewY(8deg) scaleX(.9)}}
  .geplotmeta{position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;max-width:96%;padding:4px 7px;border-radius:9px;background:rgba(20,12,6,.82);border:1px solid rgba(245,215,145,.42);box-shadow:0 3px 9px rgba(0,0,0,.38);white-space:nowrap;pointer-events:none}
  .geplotname{overflow:hidden;text-overflow:ellipsis;font:800 10px/1.1 var(--serif);color:#fff2c5}.getier{font:800 9px/1 var(--mono);color:#f8cf66}.geready{font:900 10px/1 var(--mono);color:#fff19a}
  .geclock{position:absolute;right:3%;top:4%;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffd96d var(--progress),rgba(16,10,5,.55) 0);box-shadow:0 2px 8px rgba(0,0,0,.35)}
  .geclock::after{content:'';width:21px;height:21px;border-radius:50%;background:rgba(22,14,8,.88)}
  .gesteward{position:absolute;left:3%;top:4%;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(22,14,8,.82);border:1px solid rgba(255,225,145,.48);font-size:15px;box-shadow:0 2px 7px rgba(0,0,0,.4)}
  .gecitizen{position:absolute;z-index:5;left:8%;bottom:15%;display:grid;place-items:center;width:34px;height:39px;border:1px solid rgba(255,225,154,.7);border-radius:48% 48% 42% 42%;background:radial-gradient(circle at 50% 28%,#ffe7aa,#9a6731 54%,#352015 75%);box-shadow:0 6px 11px rgba(0,0,0,.46),0 0 0 3px rgba(255,228,157,.08);font-size:21px;line-height:1;pointer-events:none;transform-origin:center bottom;animation:geCitizen 3.4s ease-in-out infinite}.gecitizen::before{content:'';position:absolute;left:50%;bottom:-5px;width:23px;height:7px;border-radius:50%;background:rgba(0,0,0,.34);filter:blur(2px);transform:translateX(-50%);z-index:-1}.gecitizen.kin{border-color:#ffe37d;box-shadow:0 6px 11px rgba(0,0,0,.46),0 0 15px rgba(255,208,77,.35)}.gecitizen em{position:absolute;right:-8px;top:-8px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#2b1a0d;border:1px solid #ffe17b;font:normal 11px/1 sans-serif;box-shadow:0 2px 6px rgba(0,0,0,.45)}
  @keyframes geCitizen{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1deg)}}
  .gepanel{position:absolute;z-index:10;right:14px;top:56px;bottom:76px;width:280px;display:flex;flex-direction:column;border:1px solid rgba(239,205,127,.58);border-radius:17px;background:linear-gradient(180deg,rgba(35,25,15,.94),rgba(14,10,7,.96));box-shadow:0 16px 50px rgba(0,0,0,.5);backdrop-filter:blur(8px);overflow:hidden}
  .gepanelhead{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:3px;padding:8px 42px 8px 8px;border-bottom:1px solid rgba(239,205,127,.24)}
  .getab{flex:1;min-width:0;min-height:38px;padding:0 3px;border:0;border-radius:10px;background:transparent;color:#cbbd9e;font:800 9px var(--mono);white-space:nowrap;cursor:pointer}.getab.on{background:rgba(201,156,70,.23);color:#ffe49b;box-shadow:inset 0 0 0 1px rgba(245,211,132,.36)}
  .gepanelclose{display:none;position:absolute;right:8px;top:8px;width:34px;height:38px;border:0;background:transparent;color:#f7e8c1;font-size:20px}
  .gepanelbody{padding:12px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .gepaneltitle{font:700 18px/1.1 var(--serif);color:#ffe6a3}.gepanelcopy{margin:4px 0 10px;font:600 11px/1.35 var(--mono);color:#c8baa0}
  .gemetricgrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gemetric{padding:9px;border:1px solid rgba(239,205,127,.22);border-radius:11px;background:rgba(255,255,255,.035)}
  .gemetric b{display:block;font:800 18px/1 var(--mono);color:#ffe085}.gemetric span{display:block;margin-top:4px;font:700 9px/1.2 var(--mono);color:#bdb092;text-transform:uppercase;letter-spacing:.05em}
  .gebar{height:8px;margin:7px 0;border-radius:999px;background:rgba(0,0,0,.45);overflow:hidden}.gebar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ba8f35,#ffe083);box-shadow:0 0 9px rgba(255,213,104,.45)}
  .gehint{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:9px;border-radius:11px;background:rgba(73,130,88,.16);border:1px solid rgba(117,207,143,.26);font:600 11px/1.35 var(--mono);color:#d5e8d3}
  .gelinklist{display:flex;flex-direction:column;gap:6px;margin-top:9px}.gelinkrow{display:flex;justify-content:space-between;gap:8px;padding:7px 8px;border-radius:9px;background:rgba(103,221,169,.08);font:700 10px/1.2 var(--mono);color:#bde9ce}.gelinkrow b{color:#78edb2;white-space:nowrap}
  .gedock{position:absolute;z-index:12;left:50%;bottom:13px;transform:translateX(-50%);display:flex;gap:7px;padding:7px;border:1px solid rgba(245,215,145,.55);border-radius:17px;background:rgba(20,13,8,.88);box-shadow:0 8px 28px rgba(0,0,0,.48);backdrop-filter:blur(7px)}
  .gedock button{min-width:64px;min-height:45px;border:0;border-radius:11px;background:transparent;color:#e5d7b8;font:800 10px/1.15 var(--mono);cursor:pointer}.gedock button:hover,.gedock button:focus-visible,.gedock button.on{background:rgba(204,159,74,.24);color:#ffe397;box-shadow:inset 0 0 0 1px rgba(245,211,132,.4)}
  .gedock button{position:relative}.gedock button strong{display:block;font-size:16px;margin-bottom:2px}.gedock button em{position:absolute;right:5px;top:4px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#f3c650;color:#2b1907;font:900 9px var(--mono);box-shadow:0 0 0 2px #2c1b0d,0 0 10px rgba(255,213,89,.55)}.gedock .geharvest{background:linear-gradient(180deg,#9d6b19,#6f430e);color:#fff0ba;box-shadow:inset 0 1px rgba(255,241,188,.25)}
  .georder{margin-top:8px;padding:10px;border:1px solid rgba(239,205,127,.25);border-radius:11px;background:rgba(255,255,255,.035)}.georder.done{opacity:.58}.georderhead{display:flex;align-items:center;gap:7px;font:800 12px var(--serif);color:#fff0c2}.georderhead span:first-child{font-size:20px}.georderreq{display:flex;gap:5px;flex-wrap:wrap;margin:7px 0}.gereq{padding:4px 6px;border-radius:7px;background:rgba(0,0,0,.27);font:700 10px var(--mono);color:#d2c6aa}.gereq.ok{color:#8ce4ae}.georder .btn{width:100%;margin-top:4px;min-height:38px}
  .gegoods{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0}.gegood{padding:6px 2px;text-align:center;border-radius:8px;background:rgba(0,0,0,.24);font:800 10px var(--mono);color:#f0dfb6}.gegood.zero{opacity:.42}.gegood b{display:block;font-size:15px}.gegood span{display:block;margin-top:2px}
  .gedecreetop{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;padding:9px 10px;border-radius:11px;background:linear-gradient(135deg,rgba(123,78,25,.42),rgba(52,91,69,.22));border:1px solid rgba(242,202,111,.3);font:700 10px/1.3 var(--mono);color:#dfd2b4}.gedecreetop b{font-size:12px;color:#ffe28c}.gedecreesection{margin:12px 0 6px;font:800 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#bfae8b}.gedecree{position:relative;margin:7px 0;padding:9px;border:1px solid rgba(239,205,127,.22);border-radius:11px;background:rgba(255,255,255,.035);overflow:hidden}.gedecree.ready{border-color:rgba(255,218,111,.7);box-shadow:inset 0 0 18px rgba(245,189,65,.08),0 0 14px rgba(245,189,65,.1)}.gedecree.claimed{opacity:.62}.gedecreehead{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:6px}.gedecreehead>span:first-child{font-size:19px}.gedecreehead b{font:800 12px/1.15 var(--serif);color:#fff0c2}.gedecreereward{padding:4px 6px;border-radius:999px;background:rgba(197,145,42,.18);font:900 9px var(--mono);color:#ffe07d;white-space:nowrap}.gedecreestory{margin:5px 0 7px;font:600 10px/1.35 var(--mono);color:#c9bda4}.gedecreeprogress{display:flex;align-items:center;gap:7px}.gedecreeprogress .gebar{flex:1;margin:0}.gedecreeprogress>span{min-width:42px;text-align:right;font:800 9px var(--mono);color:#d9cba8}.gedecree .btn{width:100%;min-height:34px;margin-top:7px}.gedecreedone{margin-top:7px;text-align:right;font:900 9px var(--mono);color:#8fe0ad;text-transform:uppercase;letter-spacing:.06em}
  .gecaravanhero{position:relative;margin:8px 0 12px;padding:13px;border:1px solid rgba(239,205,127,.52);border-radius:13px;background:linear-gradient(145deg,rgba(114,70,28,.5),rgba(25,64,53,.42));overflow:hidden}.gecaravanhero::after{content:'🐫';position:absolute;right:-7px;bottom:-13px;font-size:61px;opacity:.12;transform:rotate(-7deg)}.gecaravanhero h3{position:relative;z-index:1;margin:0;font:800 16px/1.1 var(--serif);color:#ffe4a0}.gecaravanhero p{position:relative;z-index:1;margin:5px 0 9px;font:650 10px/1.35 var(--mono);color:#d6c9ad}.gecaravancount{position:relative;z-index:1;display:block;margin:5px 0 9px;font:900 20px/1 var(--mono);color:#ffe078;text-shadow:0 0 14px rgba(255,206,82,.24)}.gecaravanhero .btn{position:relative;z-index:1;width:100%;min-height:38px}.gecaravanroute{margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.25);border-radius:12px;background:rgba(255,255,255,.035)}.gecaravanroute.ready{border-color:rgba(119,214,170,.5);box-shadow:inset 0 0 18px rgba(80,180,126,.06)}.gecaravanhead{display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:7px}.gecaravanhead>span:first-child{font-size:21px}.gecaravanhead b{font:800 13px/1.15 var(--serif);color:#fff0c2}.gecaravanpay{font:900 10px var(--mono);color:#ffe07d;white-space:nowrap}.gecaravandest{margin:5px 0 7px;font:650 10px/1.35 var(--mono);color:#cbbda0}.gecaravanmeta{display:flex;justify-content:space-between;gap:7px;margin:6px 0;font:800 9px var(--mono);color:#8fd9b0}.gecaravancargo{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.gecaravancargo span{padding:4px 6px;border-radius:7px;background:rgba(0,0,0,.27);font:750 9px var(--mono);color:#e5d7b8}.gecaravancargo span.ok{color:#8ce4ae}.gecaravanroute .btn{width:100%;min-height:36px;margin-top:5px}.gecaravanlock{margin-top:6px;font:700 9px/1.3 var(--mono);color:#d7a88d}
  .gewonder{position:relative;margin:8px 0 13px;padding:12px;border:1px solid rgba(132,203,197,.48);border-radius:14px;background:radial-gradient(circle at 82% 12%,rgba(125,206,196,.2),transparent 35%),linear-gradient(145deg,rgba(29,72,70,.64),rgba(56,38,22,.82));overflow:hidden}.gewondertop{display:grid;grid-template-columns:39px 1fr auto;gap:8px;align-items:center}.gewondericon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(228,214,166,.13);font-size:24px;box-shadow:inset 0 0 0 1px rgba(238,218,159,.28)}.gewondertop h3{margin:0;font:800 15px/1.05 var(--serif);color:#fff0c2}.gewondertop p{margin:3px 0 0;font:700 8px/1.2 var(--mono);color:#94d7cb;text-transform:uppercase;letter-spacing:.06em}.gewondertime{font:850 9px var(--mono);color:#d9cda9;text-align:right}.gewonderstory{margin:8px 0;font:600 10px/1.35 var(--mono);color:#d7cdb5}.gewonderbuild{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0}.gewonderstage{min-height:48px;padding:6px 3px;border-radius:9px;background:rgba(0,0,0,.24);text-align:center;opacity:.4;filter:saturate(.5)}.gewonderstage.built{opacity:1;filter:none;background:linear-gradient(180deg,rgba(104,190,170,.22),rgba(0,0,0,.22));box-shadow:inset 0 0 0 1px rgba(141,224,198,.28)}.gewonderstage b{display:block;font-size:18px}.gewonderstage span{display:block;margin-top:3px;font:700 7px/1.15 var(--mono);color:#d5c9ae}.gewonderprogress{display:flex;align-items:center;gap:7px}.gewonderprogress .gebar{flex:1;margin:0}.gewonderprogress>span{font:900 9px var(--mono);color:#ffe07d;white-space:nowrap}.gewondermeta{display:flex;justify-content:space-between;gap:7px;margin-top:7px;font:750 8px/1.25 var(--mono);color:#a9d9c9}.gewonderblessing{margin-top:8px;padding:6px 8px;border-radius:8px;background:rgba(111,217,177,.13);font:800 9px/1.25 var(--mono);color:#9be7c2}.gewmilestone{margin:6px 0;padding:8px;border-radius:10px;background:rgba(0,0,0,.2);border:1px solid rgba(239,205,127,.17)}.gewmilestone.ready{border-color:rgba(255,218,111,.62);box-shadow:0 0 12px rgba(244,194,77,.08)}.gewmilestone.claimed{opacity:.57}.gewmilestonehead{display:flex;align-items:center;justify-content:space-between;gap:7px;font:800 10px var(--serif);color:#f4e3b7}.gewmilestonehead span{font:900 8px var(--mono);color:#ffe07d}.gewmilestonecopy{margin-top:4px;font:650 8px/1.3 var(--mono);color:#bdaf93}.gewmilestone .btn{width:100%;min-height:32px;margin-top:6px}.gewpledge{margin:7px 0;padding:9px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(239,205,127,.21)}.gewpledge.ready{border-color:rgba(116,216,170,.48)}.gewpledgehead{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:6px}.gewpledgehead>span:first-child{font-size:19px}.gewpledgehead b{font:800 11px var(--serif);color:#fff0c2}.gewpledgeimpact{font:900 8px var(--mono);color:#8fe0b5}.gewpledgecopy{margin:4px 0 5px;font:600 8px/1.3 var(--mono);color:#c3b69b}.gewpledge .btn{width:100%;min-height:34px;margin-top:5px}.gewsection{margin:13px 0 6px;font:900 9px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#c7b58f}
  .gelegacycta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(240,200,102,.42);border-radius:12px;background:radial-gradient(circle at 92% 12%,rgba(255,217,107,.18),transparent 34%),linear-gradient(145deg,rgba(85,54,24,.66),rgba(30,48,43,.66));color:#f7e6b6;text-align:left;cursor:pointer}.gelegacycta.ready{border-color:#ffe070;box-shadow:0 0 15px rgba(244,196,79,.14)}.gelegacycta b{display:block;font:800 13px var(--serif);color:#ffe49b}.gelegacycta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#cfc1a2}
  .gelegacysummary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:9px 0}.gelegacysummary div{padding:8px 5px;border-radius:10px;background:rgba(0,0,0,.23);text-align:center}.gelegacysummary b{display:block;font:900 16px/1 var(--mono);color:#ffe17d}.gelegacysummary span{display:block;margin-top:4px;font:750 7px/1.2 var(--mono);color:#bfb294;text-transform:uppercase}.gelegacypath{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.24);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.gelegacypath.can{border-color:rgba(255,218,111,.58);box-shadow:inset 0 0 18px rgba(244,194,77,.06)}.gelegacypath::after{content:attr(data-icon);position:absolute;right:-5px;bottom:-15px;font-size:56px;opacity:.075;transform:rotate(-8deg)}.gelegacyhead{position:relative;z-index:1;display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:7px}.gelegacyhead>span:first-child{font-size:23px}.gelegacyhead b{display:block;font:800 13px/1.05 var(--serif);color:#fff0c2}.gelegacyhead small{display:block;margin-top:3px;font:700 7px/1.2 var(--mono);color:#a9d5c3;text-transform:uppercase}.gelegacypips{display:flex;gap:3px}.gelegacypips i{width:9px;height:9px;border-radius:50%;border:1px solid rgba(255,224,139,.45);background:rgba(0,0,0,.28)}.gelegacypips i.on{background:#f4cb61;box-shadow:0 0 7px rgba(255,210,91,.55)}.gelegacystory,.gelegacyeffect{position:relative;z-index:1;margin-top:6px;font:650 9px/1.35 var(--mono);color:#c8baa0}.gelegacyeffect{color:#8fe0b5}.gelegacypath .btn{position:relative;z-index:1;width:100%;min-height:34px;margin-top:7px}
  .gecommonscta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(117,207,143,.38);border-radius:12px;background:radial-gradient(circle at 92% 12%,rgba(116,221,170,.18),transparent 35%),linear-gradient(145deg,rgba(32,83,61,.62),rgba(42,31,19,.72));color:#e9f4d3;text-align:left;cursor:pointer}.gecommonscta.ready{border-color:#9af1bd;box-shadow:0 0 16px rgba(92,211,145,.15)}.gecommonscta b{display:block;font:800 13px var(--serif);color:#c9f2cf}.gecommonscta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#bcd3b8}
  .gecommonshero{position:relative;margin:8px 0 10px;padding:12px;border:1px solid rgba(118,215,164,.45);border-radius:13px;background:radial-gradient(circle at 90% 5%,rgba(137,236,185,.17),transparent 38%),linear-gradient(145deg,rgba(27,77,58,.68),rgba(49,34,20,.78));overflow:hidden}.gecommonshero::after{content:'🏴';position:absolute;right:-7px;bottom:-17px;font-size:64px;opacity:.09;transform:rotate(-8deg)}.gecommonshero b{position:relative;z-index:1;display:block;font:800 17px/1.1 var(--serif);color:#e8f3bf}.gecommonshero span{position:relative;z-index:1;display:block;margin-top:5px;font:750 9px/1.35 var(--mono);color:#a8dfbf}.gecommonshero .btn{position:relative;z-index:1;width:100%;margin-top:9px}
  .gecommonsstages{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0 11px}.gecommonsstage{min-height:92px;padding:8px 4px;border:1px solid rgba(239,205,127,.17);border-radius:10px;background:rgba(0,0,0,.23);text-align:center;opacity:.46;filter:saturate(.55)}.gecommonsstage.on{opacity:1;filter:none;border-color:rgba(117,216,164,.42);background:linear-gradient(180deg,rgba(79,171,126,.2),rgba(0,0,0,.22))}.gecommonsstage>span{display:block;font-size:21px}.gecommonsstage b{display:block;margin-top:4px;font:800 9px/1.15 var(--serif);color:#f1e7c1}.gecommonsstage small{display:block;margin-top:5px;font:700 7px/1.25 var(--mono);color:#98d8b4}
  .gecommonsorder{margin:7px 0;padding:9px;border:1px solid rgba(239,205,127,.22);border-radius:11px;background:rgba(255,255,255,.035)}.gecommonsorder.ready{border-color:rgba(255,218,111,.62)}.gecommonsorder.done{border-color:rgba(115,213,162,.37)}.gecommonsorderhead{display:flex;align-items:center;justify-content:space-between;gap:7px}.gecommonsorderhead b{font:800 11px var(--serif);color:#fff0c2}.gecommonsorderhead span{font:850 8px var(--mono);color:#9ee1b9}.gecommonsordercopy{margin:4px 0 6px;font:600 8px/1.3 var(--mono);color:#c3b69b}.gecommonsorder .btn{width:100%;min-height:33px;margin-top:6px}.gecommonsroster{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.gecommonsmember{padding:5px 7px;border-radius:999px;background:rgba(0,0,0,.25);font:750 8px var(--mono);color:#d9ccb0}.gecommonsmember.captain{color:#ffe17e;border:1px solid rgba(242,200,100,.28)}.gecommonsleague{display:flex;flex-direction:column;gap:5px;margin:7px 0}.gecommonsstanding{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:6px;padding:7px;border-radius:9px;background:rgba(0,0,0,.22);font:750 9px var(--mono);color:#d8cbae}.gecommonsstanding.mine{background:rgba(77,171,124,.18);box-shadow:inset 0 0 0 1px rgba(120,224,171,.28)}.gecommonsstanding b{overflow:hidden;text-overflow:ellipsis;color:#f1e3bc}.gecommonsstanding span:last-child{color:#8fe0b5;white-space:nowrap}
  .geexpeditioncta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(105,186,209,.42);border-radius:12px;background:radial-gradient(circle at 91% 8%,rgba(91,191,220,.19),transparent 36%),linear-gradient(145deg,rgba(25,65,82,.68),rgba(54,38,22,.76));color:#e5f2e9;text-align:left;cursor:pointer}.geexpeditioncta.ready{border-color:#8bdded;box-shadow:0 0 16px rgba(89,191,217,.15)}.geexpeditioncta b{display:block;font:800 13px var(--serif);color:#bfe9e4}.geexpeditioncta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#b7ced0}
  .geexpeditionhero{position:relative;margin:8px 0 10px;padding:12px;border:1px solid rgba(105,193,213,.48);border-radius:14px;background:radial-gradient(circle at 88% 8%,rgba(86,201,222,.2),transparent 38%),linear-gradient(145deg,rgba(23,66,82,.78),rgba(55,38,22,.84));overflow:hidden}.geexpeditionhero::after{content:'🗺️';position:absolute;right:-9px;bottom:-18px;font-size:68px;opacity:.09;transform:rotate(-8deg)}.geexpeditionhero b,.geexpeditionhero span{position:relative;z-index:1;display:block}.geexpeditionhero b{font:800 17px/1.1 var(--serif);color:#d6f2df}.geexpeditionhero span{margin-top:5px;font:750 9px/1.35 var(--mono);color:#a8d9dd}.geexpeditionhero strong{color:#ffe083}
  .geexpmap{position:relative;display:flex;flex-direction:column;gap:6px;margin:9px 0 12px;padding-left:3px}.geexpmap::before{content:'';position:absolute;left:19px;top:20px;bottom:20px;width:2px;background:linear-gradient(#79cbd8,#d2ad5b);opacity:.45}.geexpnode{position:relative;display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:7px;min-height:52px;padding:7px 8px;border:1px solid rgba(239,205,127,.18);border-radius:11px;background:rgba(0,0,0,.24);opacity:.48}.geexpnode.done,.geexpnode.current{opacity:1}.geexpnode.current{border-color:rgba(111,211,225,.65);box-shadow:inset 0 0 18px rgba(80,190,214,.08),0 0 13px rgba(80,190,214,.08)}.geexpnode>span:first-child{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#182f32;box-shadow:inset 0 0 0 1px rgba(144,218,221,.3);font-size:18px}.geexpnode b{display:block;font:800 11px/1.1 var(--serif);color:#f2e6c2}.geexpnode small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#abc8c4}.geexpnode>em{font:900 8px var(--mono);font-style:normal;color:#91dfc0;white-space:nowrap}
  .geexpoption{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.22);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.geexpoption.ready{border-color:rgba(107,209,220,.58);box-shadow:inset 0 0 18px rgba(74,184,202,.07)}.geexpoption::after{content:attr(data-icon);position:absolute;right:-5px;bottom:-16px;font-size:58px;opacity:.07;transform:rotate(-8deg)}.geexpoptionhead{position:relative;z-index:1;display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:7px}.geexpoptionhead>span:first-child{font-size:21px}.geexpoptionhead b{font:800 12px/1.1 var(--serif);color:#fff0c2}.geexpoptionhead em{font:900 8px var(--mono);font-style:normal;color:#8dddc8}.geexpoptioncopy{position:relative;z-index:1;margin:5px 0 7px;font:650 8px/1.3 var(--mono);color:#c4b89e}.geexpcriteria{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:5px}.geexpcriteria span{padding:5px 6px;border-radius:8px;background:rgba(0,0,0,.26);font:750 8px var(--mono);color:#d9cbae}.geexpcriteria span.ok{color:#8fe0b5}.geexpoption .btn{position:relative;z-index:1;width:100%;min-height:35px;margin-top:7px}.geexpatlas{display:flex;flex-direction:column;gap:6px;margin:7px 0}.geexpentry{display:grid;grid-template-columns:29px 1fr;gap:7px;padding:8px;border-radius:10px;background:rgba(0,0,0,.23);border:1px solid rgba(239,205,127,.14)}.geexpentry>span{font-size:21px}.geexpentry b{display:block;font:800 10px var(--serif);color:#f1e3bc}.geexpentry small{display:block;margin-top:3px;font:650 7px/1.3 var(--mono);color:#9bcbd0}
  .geneighborcta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(117,201,218,.42);border-radius:12px;background:radial-gradient(circle at 92% 10%,rgba(112,216,226,.18),transparent 35%),linear-gradient(145deg,rgba(24,69,76,.7),rgba(54,38,22,.76));color:#e7f3dc;text-align:left;cursor:pointer}.geneighborcta.ready{border-color:#91e5db;box-shadow:0 0 16px rgba(101,213,202,.16)}.geneighborcta b{display:block;font:800 13px var(--serif);color:#cef1d9}.geneighborcta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#b7d2ca}
  .geneighborhero{position:relative;margin:8px 0 10px;padding:12px;border:1px solid rgba(115,211,209,.48);border-radius:14px;background:radial-gradient(circle at 88% 8%,rgba(105,218,213,.2),transparent 38%),linear-gradient(145deg,rgba(23,67,75,.78),rgba(55,38,22,.84));overflow:hidden}.geneighborhero::after{content:'🏘';position:absolute;right:-8px;bottom:-18px;font-size:68px;opacity:.09;transform:rotate(-7deg)}.geneighborhero b,.geneighborhero span{position:relative;z-index:1;display:block}.geneighborhero b{font:800 17px/1.1 var(--serif);color:#dbf3d8}.geneighborhero span{margin-top:5px;font:750 9px/1.35 var(--mono);color:#a9d9d0}
  .geneighborstats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.geneighborstats div{padding:7px 4px;border-radius:9px;background:rgba(0,0,0,.24);text-align:center}.geneighborstats strong{display:block;font:900 14px/1 var(--mono);color:#ffe080}.geneighborstats small{display:block;margin-top:3px;font:700 7px/1.2 var(--mono);color:#b5d6c9;text-transform:uppercase}
  .geneighborcard{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.22);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.geneighborcard.ready{border-color:rgba(112,215,200,.62);box-shadow:inset 0 0 18px rgba(74,184,176,.08)}.geneighborcard.helped{opacity:.68}.geneighborhead{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:7px}.geneighborhead>span:first-child{font-size:21px}.geneighborhead b{display:block;font:800 12px/1.1 var(--serif);color:#fff0c2}.geneighborhead small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#9cd4ca}.geneighborseal{font:900 8px var(--mono);color:#8fe0c3;white-space:nowrap}
  .geneighbormap{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:8px 0;padding:5px;border-radius:10px;background:rgba(0,0,0,.24)}.geneighborplot{display:grid;place-items:center;min-height:28px;border-radius:6px;background:rgba(218,190,125,.08);font-size:17px}.geneighborplot.empty{opacity:.25}.geneighborplot.steward{box-shadow:inset 0 0 0 1px rgba(135,224,174,.38)}
  .geneighbormeta{display:flex;justify-content:space-between;gap:7px;margin:5px 0;font:750 8px/1.25 var(--mono);color:#a8d7c9}.geneighborneed{margin:7px 0;padding:7px 8px;border-radius:9px;background:rgba(75,163,129,.13);font:750 9px/1.35 var(--mono);color:#c7ead2}.geneighborcard .btn{width:100%;min-height:35px;margin-top:5px}.geneighborhelped{margin-top:7px;text-align:right;font:900 8px var(--mono);color:#8fe0b5;text-transform:uppercase;letter-spacing:.05em}
  .geassemblycta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(211,170,91,.43);border-radius:12px;background:radial-gradient(circle at 91% 9%,rgba(237,198,104,.19),transparent 36%),linear-gradient(145deg,rgba(80,49,25,.72),rgba(32,49,55,.78));color:#f5e9c6;text-align:left;cursor:pointer}.geassemblycta.ready{border-color:#f1d078;box-shadow:0 0 16px rgba(228,185,84,.16)}.geassemblycta b{display:block;font:800 13px var(--serif);color:#ffe69d}.geassemblycta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#cfc3a9}
  .geassemblymandate{position:relative;margin:8px 0 10px;padding:12px;border:1px solid rgba(225,185,98,.48);border-radius:14px;background:radial-gradient(circle at 88% 8%,rgba(236,196,104,.18),transparent 39%),linear-gradient(145deg,rgba(79,48,24,.8),rgba(29,51,57,.84));overflow:hidden}.geassemblymandate::after{content:'⚖';position:absolute;right:-7px;bottom:-20px;font-size:72px;opacity:.08;transform:rotate(-8deg)}.geassemblymandate b,.geassemblymandate span{position:relative;z-index:1;display:block}.geassemblymandate b{font:800 17px/1.1 var(--serif);color:#fff0bf}.geassemblymandate span{margin-top:5px;font:750 9px/1.35 var(--mono);color:#b9d8cf}.geassemblymandate strong{color:#ffe083}.geassemblystats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.geassemblystats div{padding:7px 4px;border-radius:9px;background:rgba(0,0,0,.24);text-align:center}.geassemblystats strong{display:block;font:900 14px/1 var(--mono);color:#ffe080}.geassemblystats small{display:block;margin-top:3px;font:700 7px/1.2 var(--mono);color:#b8d3c9;text-transform:uppercase}
  .geassemblycandidate{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.22);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.geassemblycandidate.leading{border-color:rgba(237,201,111,.56);box-shadow:inset 0 0 18px rgba(231,185,77,.07)}.geassemblycandidate.ready{border-color:rgba(121,214,174,.56)}.geassemblycandidate::after{content:attr(data-icon);position:absolute;right:-5px;bottom:-17px;font-size:59px;opacity:.07;transform:rotate(-8deg)}.geassemblyhead{position:relative;z-index:1;display:grid;grid-template-columns:29px 1fr auto;align-items:center;gap:7px}.geassemblyhead>span:first-child{font-size:22px}.geassemblyhead b{display:block;font:800 12px/1.1 var(--serif);color:#fff0c2}.geassemblyhead small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#a7d3c4}.geassemblyvotes{font:900 9px var(--mono);color:#ffe07d;white-space:nowrap}.geassemblycopy,.geassemblyeffect{position:relative;z-index:1;margin-top:6px;font:650 8px/1.35 var(--mono);color:#c5b99f}.geassemblyeffect{color:#92dfbd}.geassemblycandidate .gebar{position:relative;z-index:1}.geassemblycargo{position:relative;z-index:1;margin-top:7px;padding:6px 7px;border-radius:8px;background:rgba(0,0,0,.24);font:750 8px/1.3 var(--mono);color:#d9cbae}.geassemblycargo.ok{color:#8fe0b5}.geassemblycandidate .btn{position:relative;z-index:1;width:100%;min-height:36px;margin-top:7px}.geassemblysealed{margin:8px 0;padding:8px;border-radius:10px;background:rgba(75,164,119,.14);border:1px solid rgba(112,218,158,.28);font:800 9px/1.35 var(--mono);color:#a9e3bd}.geassemblyhistory{display:flex;flex-direction:column;gap:5px;margin:7px 0}.geassemblyhistoryrow{display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:7px;padding:8px;border-radius:9px;background:rgba(0,0,0,.22)}.geassemblyhistoryrow>span:first-child{font-size:19px}.geassemblyhistoryrow b{display:block;font:800 10px var(--serif);color:#f1e3bc}.geassemblyhistoryrow small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#a9c9c0}.geassemblyhistoryrow>em{font:900 8px var(--mono);font-style:normal;color:#ffe07d;white-space:nowrap}
  .gesagacta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(222,183,96,.46);border-radius:12px;background:radial-gradient(circle at 92% 9%,rgba(239,202,111,.2),transparent 36%),linear-gradient(145deg,rgba(79,50,25,.74),rgba(29,53,59,.8));color:#f7eac4;text-align:left;cursor:pointer}.gesagacta.ready{border-color:#f5d477;box-shadow:0 0 16px rgba(231,190,85,.17)}.gesagacta b{display:block;font:800 13px var(--serif);color:#ffe79e}.gesagacta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#c9c7ad}
  .gesagahero{position:relative;margin:8px 0 10px;padding:12px;border:1px solid rgba(225,188,101,.5);border-radius:14px;background:radial-gradient(circle at 87% 7%,rgba(242,205,113,.2),transparent 39%),linear-gradient(145deg,rgba(79,48,23,.82),rgba(26,54,61,.86));overflow:hidden}.gesagahero::after{content:'🏛️';position:absolute;right:-10px;bottom:-22px;font-size:74px;opacity:.08;transform:rotate(-7deg)}.gesagahero b,.gesagahero span{position:relative;z-index:1;display:block}.gesagahero b{font:800 18px/1.08 var(--serif);color:#fff0bc}.gesagahero span{margin-top:5px;font:700 9px/1.35 var(--mono);color:#b9d9cf}.gesagahero strong{color:#ffe07c}.gesagastats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.gesagastats div{padding:7px 4px;border-radius:9px;background:rgba(0,0,0,.24);text-align:center}.gesagastats strong{display:block;font:900 14px/1 var(--mono);color:#ffe080}.gesagastats small{display:block;margin-top:3px;font:700 7px/1.2 var(--mono);color:#b7d4c9;text-transform:uppercase}
  .gesagaline{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:3px;margin:10px 0 12px}.gesagaline::before{content:'';position:absolute;left:3%;right:3%;top:13px;height:2px;background:rgba(220,190,121,.25)}.gesaganode{position:relative;z-index:1;display:grid;place-items:center;min-width:0;height:27px;border:1px solid rgba(232,205,145,.22);border-radius:50%;background:#1c211c;color:#817966;font:900 7px var(--mono)}.gesaganode.done{border-color:rgba(123,220,173,.52);background:#1e4939;color:#b6f2ce}.gesaganode.current{border-color:#ffe17c;background:#624817;color:#fff0ab;box-shadow:0 0 11px rgba(245,198,77,.25)}
  .gesagalandmarks{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0 11px}.gesagalandmark{min-height:78px;padding:8px 4px;border:1px solid rgba(239,205,127,.17);border-radius:10px;background:rgba(0,0,0,.23);text-align:center;opacity:.4;filter:saturate(.45)}.gesagalandmark.on{opacity:1;filter:none;border-color:rgba(117,216,164,.42);background:linear-gradient(180deg,rgba(78,167,126,.19),rgba(0,0,0,.22))}.gesagalandmark>span{display:block;font-size:21px}.gesagalandmark b{display:block;margin-top:4px;font:800 8px/1.15 var(--serif);color:#f2e6c0}.gesagalandmark small{display:block;margin-top:4px;font:700 7px/1.2 var(--mono);color:#9bd4b7}
  .gesagachapter{margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.28);border-radius:12px;background:rgba(255,255,255,.035)}.gesagachapterhead{display:grid;grid-template-columns:29px 1fr auto;align-items:center;gap:7px}.gesagachapterhead>span:first-child{font-size:22px}.gesagachapterhead b{display:block;font:800 13px/1.1 var(--serif);color:#fff0c2}.gesagachapterhead small{display:block;margin-top:3px;font:700 7px var(--mono);color:#a7d4c4;text-transform:uppercase}.gesagachapterhead em{font:900 8px var(--mono);font-style:normal;color:#ffe07d}.gesagachaptercopy{margin:7px 0;font:650 9px/1.35 var(--mono);color:#c8baa0}
  .gesagaoption{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.21);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.gesagaoption.ready{border-color:rgba(119,215,171,.58);box-shadow:inset 0 0 18px rgba(76,184,128,.07)}.gesagaoption::after{content:attr(data-icon);position:absolute;right:-5px;bottom:-17px;font-size:59px;opacity:.07;transform:rotate(-8deg)}.gesagaoptionhead{position:relative;z-index:1;display:grid;grid-template-columns:29px 1fr auto;align-items:center;gap:7px}.gesagaoptionhead>span:first-child{font-size:22px}.gesagaoptionhead b{display:block;font:800 12px/1.1 var(--serif);color:#fff0c2}.gesagaoptionhead small{display:block;margin-top:3px;font:650 7px var(--mono);color:#a7d3c4}.gesagaoptionhead em{font:900 8px var(--mono);font-style:normal;color:#8fe0b5}.gesagaoptioncopy{position:relative;z-index:1;margin:6px 0;font:650 8px/1.35 var(--mono);color:#c5b99f}.gesagacriterion{position:relative;z-index:1;margin-top:7px;padding:7px;border-radius:8px;background:rgba(0,0,0,.25);font:750 8px/1.3 var(--mono);color:#d9cbae}.gesagacriterion.ok{color:#8fe0b5}.gesagaoption .gebar{position:relative;z-index:1}.gesagaoption .btn{position:relative;z-index:1;width:100%;min-height:36px;margin-top:7px}.gesagarchive{display:flex;flex-direction:column;gap:5px;margin:7px 0}.gesagarchive>div{display:grid;grid-template-columns:27px 1fr auto;align-items:center;gap:7px;padding:8px;border-radius:9px;background:rgba(0,0,0,.22)}.gesagarchive>div>span{font-size:19px}.gesagarchive b{display:block;font:800 10px var(--serif);color:#f1e3bc}.gesagarchive small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#a9c9c0}.gesagarchive em{font:900 8px var(--mono);font-style:normal;color:#91dfbd;white-space:nowrap}
  .gehousecta{width:100%;margin-top:9px;padding:10px;border:1px solid rgba(121,208,166,.43);border-radius:12px;background:radial-gradient(circle at 92% 9%,rgba(133,224,178,.18),transparent 36%),linear-gradient(145deg,rgba(48,76,52,.76),rgba(69,45,27,.82));color:#f7edcd;text-align:left;cursor:pointer}.gehousecta.ready{border-color:#94e4b9;box-shadow:0 0 17px rgba(104,208,153,.16)}.gehousecta b{display:block;font:800 13px var(--serif);color:#d8f4d9}.gehousecta span{display:block;margin-top:4px;font:700 9px/1.35 var(--mono);color:#c9c6aa}
  .gehousehero{position:relative;margin:8px 0 11px;padding:12px;border:1px solid rgba(126,216,172,.48);border-radius:14px;background:radial-gradient(circle at 88% 7%,rgba(135,225,180,.18),transparent 39%),linear-gradient(145deg,rgba(38,75,52,.84),rgba(69,43,25,.86));overflow:hidden}.gehousehero::after{content:'🏘️';position:absolute;right:-10px;bottom:-23px;font-size:75px;opacity:.08;transform:rotate(-6deg)}.gehousehero b,.gehousehero span{position:relative;z-index:1;display:block}.gehousehero b{font:800 18px/1.08 var(--serif);color:#edffd9}.gehousehero span{margin-top:5px;font:700 9px/1.35 var(--mono);color:#b7d7c2}.gehousestats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.gehousestats div{padding:7px 4px;border-radius:9px;background:rgba(0,0,0,.24);text-align:center}.gehousestats strong{display:block;font:900 14px/1 var(--mono);color:#d9f09e}.gehousestats small{display:block;margin-top:3px;font:700 7px/1.2 var(--mono);color:#b6d3c3;text-transform:uppercase}
  .gehousehold{position:relative;margin:8px 0;padding:10px;border:1px solid rgba(239,205,127,.23);border-radius:12px;background:rgba(255,255,255,.035);overflow:hidden}.gehousehold.ready{border-color:rgba(119,216,170,.58);box-shadow:inset 0 0 18px rgba(76,184,128,.07)}.gehousehold.waiting{opacity:.52;filter:saturate(.55)}.gehousehold::after{content:attr(data-icon);position:absolute;right:-4px;bottom:-18px;font-size:61px;opacity:.065;transform:rotate(-7deg)}.gehousehead{position:relative;z-index:1;display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:7px}.gehousehead>span:first-child{font-size:24px}.gehousehead b{display:block;font:800 12px/1.1 var(--serif);color:#fff0c2}.gehousehead small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#a8d4c2}.gehousebond{font:900 8px var(--mono);color:#9ee0b9;text-align:right}.gehousecopy{position:relative;z-index:1;margin:7px 0;font:650 8px/1.35 var(--mono);color:#c6baa1}.gehousechapter{position:relative;z-index:1;margin-top:8px;padding:8px;border-radius:9px;background:rgba(0,0,0,.23)}.gehousechapter b{display:block;font:800 11px var(--serif);color:#ffe8a6}.gehousechapter span{display:block;margin-top:4px;font:650 8px/1.3 var(--mono);color:#c5b99f}
  .gehouseoption{position:relative;z-index:1;margin-top:7px;padding:8px;border:1px solid rgba(239,205,127,.17);border-radius:9px;background:rgba(255,255,255,.025)}.gehouseoption.ready{border-color:rgba(116,215,167,.48)}.gehouseoptionhead{display:flex;align-items:center;justify-content:space-between;gap:7px}.gehouseoptionhead b{font:800 10px var(--serif);color:#f8e7b9}.gehouseoptionhead em{font:900 8px var(--mono);font-style:normal;color:#8fe0b5}.gehouseoptioncopy{margin:4px 0 6px;font:650 8px/1.3 var(--mono);color:#bfb39a}.gehousegoods{display:flex;flex-wrap:wrap;gap:4px}.gehousegoods span,.gehousetown{padding:4px 6px;border-radius:7px;background:rgba(0,0,0,.25);font:750 8px/1.2 var(--mono);color:#d9cbae}.gehousegoods span.ok,.gehousetown.ok{color:#8fe0b5}.gehousetown{display:block;margin-top:5px}.gehouseoption .btn{width:100%;min-height:34px;margin-top:6px}
  .gehousearchive{position:relative;z-index:1;display:flex;flex-direction:column;gap:5px;margin-top:8px}.gehousearchive>div{display:grid;grid-template-columns:24px 1fr auto;gap:6px;align-items:center;padding:7px;border-radius:8px;background:rgba(0,0,0,.2)}.gehousearchive>div>span{font-size:17px}.gehousearchive b{display:block;font:800 9px var(--serif);color:#f1e3bc}.gehousearchive small{display:block;margin-top:3px;font:650 7px/1.25 var(--mono);color:#a8c9b9}.gehousearchive em{font:900 7px var(--mono);font-style:normal;color:#8eddb5}.gehousekeep{position:relative;z-index:1;margin-top:8px;padding:8px;border:1px solid rgba(255,220,114,.38);border-radius:9px;background:linear-gradient(135deg,rgba(119,84,28,.28),rgba(54,93,69,.24));font:700 8px/1.3 var(--mono);color:#e9dcb8}.gehousekeep b{display:block;margin-bottom:3px;font:800 10px var(--serif);color:#ffe28b}
  .gemaplandmarks{position:absolute;inset:0;z-index:4;pointer-events:none}.gemaplandmark{position:absolute;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,224,145,.62);border-radius:50%;background:radial-gradient(circle,#7b5522,#25170b 74%);box-shadow:0 5px 16px rgba(0,0,0,.45),0 0 16px rgba(242,197,83,.16);font-size:22px;filter:drop-shadow(0 4px 4px rgba(0,0,0,.4))}.gemaplandmark::after{content:attr(data-label);position:absolute;top:42px;left:50%;transform:translateX(-50%);padding:3px 5px;border-radius:6px;background:rgba(19,12,7,.82);color:#ffe8aa;font:800 7px var(--mono);white-space:nowrap}.gemaplandmark.a1{left:4%;top:24%}.gemaplandmark.a2{right:4%;top:25%}.gemaplandmark.a3{left:3%;bottom:13%}.gemaplandmark.a4{right:3%;bottom:13%}
  .gecolonyreq{margin:8px 0}.gecolonyreq>div:first-child{display:flex;justify-content:space-between;gap:8px;font:700 10px var(--mono);color:#d8cba9}
  .gebuildgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px;margin-top:10px}.gebuildcard{position:relative;padding:11px;border:1px solid rgba(193,154,78,.4);border-radius:12px;background:linear-gradient(180deg,rgba(70,51,27,.72),rgba(24,16,9,.86));cursor:pointer;text-align:left;color:#f7eaca;transition:transform .15s ease,border-color .15s ease}.gebuildcard:hover,.gebuildcard:focus-visible{transform:translateY(-2px);border-color:#f2cc76}.gebuildcard.locked{opacity:.46;cursor:not-allowed}.gebuildicon{font-size:28px}.gebuildname{font:800 15px var(--serif);color:#ffe5a0}.gebuilddesc{min-height:30px;margin:4px 0;font:600 10px/1.35 var(--mono);color:#cfc0a1}.gebuildstats{display:flex;justify-content:space-between;gap:8px;font:800 10px var(--mono);color:#eecb78}.gechain{margin-top:6px;padding:5px 6px;border-radius:7px;background:rgba(67,151,105,.18);font:800 9px/1.25 var(--mono);color:#92e2b0}.geparticle{position:absolute;z-index:40;left:var(--sx);top:var(--sy);font-size:18px;pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.45));animation:geFly .85s cubic-bezier(.2,.75,.25,1) forwards}
  @keyframes geFly{0%{transform:translate(-50%,-50%) scale(.5) rotate(-20deg);opacity:0}14%{opacity:1}55%{transform:translate(var(--mx),var(--my)) scale(1.15) rotate(10deg)}100%{transform:translate(var(--tx),var(--ty)) scale(.35) rotate(30deg);opacity:0}}
  /* ARENA_SLICE_END 05-followers-empire-grounds */
  /* ARENA_SLICE_START 06-showcase-forum-ceremony -- spliced from arena-css/06-showcase-forum-ceremony.css; edit that file, not this region */
  .groundsestate.geimpact{animation:geImpact .16s linear}.groundsestate.geimpact .gemap{animation:geMapKick .16s linear}@keyframes geImpact{50%{filter:brightness(1.07)}}@keyframes geMapKick{33%{transform:translateX(-2px)}66%{transform:translateX(2px)}}
  .geplanbanner{position:absolute;z-index:7;left:50%;top:112px;transform:translateX(-50%);padding:8px 13px;border-radius:999px;background:rgba(13,42,32,.9);border:1px solid #77d6aa;color:#d9ffe9;font:800 11px var(--mono);box-shadow:0 5px 20px rgba(0,0,0,.4);display:none}.geplanbanner.show{display:block}
  @media(min-width:801px) and (max-width:1150px) and (orientation:landscape){
    .gehud{right:16px}.gepanel{position:fixed;left:auto;right:12px;top:110px;bottom:76px;width:min(360px,45vw);transform:none;visibility:hidden;pointer-events:none;transition:none}.gepanel.open{transform:none;visibility:visible;pointer-events:auto}.gepanelclose{display:block}
  }
  @media(max-width:800px),(max-width:1100px) and (orientation:portrait){
    .groundsestate{background-image:url('/arena/grounds-bg-mobile-v1.jpg');background-position:center center}
    .groundsestate.embedded{height:min(820px,82vh);height:min(820px,82dvh);min-height:620px}
    .gehud{top:53px;left:7px;right:7px;gap:5px}.gehudbrand{min-width:0;flex:1;padding:7px 9px}.gehudtitle{font-size:16px}.gehudsub{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gehudstat{padding:5px 7px;min-height:39px}.gehudstat b{font-size:13px}.gehudstat small{font-size:7px}.gehudstat.rate{display:none}.gehud .gecollect{display:none}
    .gegrid{left:5%;right:5%;top:35%;bottom:18%;gap:1.3% 2.5%}.gebuilding{width:min(100%,112px);height:min(100%,112px)}.geplotmeta{padding:3px 5px;bottom:-2px}.geplotname{font-size:8px;max-width:70px}.getier,.geready{font-size:7px}.geclock{width:22px;height:22px}.geclock::after{width:16px;height:16px}.gesteward{width:22px;height:22px;font-size:12px}
    .gepanel{position:fixed;left:7px;right:7px;top:auto;bottom:75px;width:auto;max-height:62vh;max-height:62dvh;transform:translateY(calc(100% + 90px));transition:transform .22s ease;border-radius:18px;z-index:2602}.gepanel.open{transform:translateY(0)}.gepanelclose{display:block}.gepanelhead{padding-right:42px}.gepanelbody{padding:10px}.getab{font-size:9px}.gemetric{padding:7px}.gemetric b{font-size:15px}
    .gedock{left:6px;right:6px;bottom:max(7px,env(safe-area-inset-bottom));transform:none;gap:3px;padding:5px;justify-content:stretch}.gedock button{flex:1;min-width:0;min-height:48px;padding:4px 3px;font-size:8px}.gedock button strong{font-size:17px}.gedock .geharvest{display:block}
    .geplanbanner{top:101px;max-width:78%;text-align:center;font-size:9px}.gegoods{grid-template-columns:repeat(4,1fr)}
  }
  @media(max-width:800px),(max-width:1100px) and (orientation:portrait){.gemaplandmark{width:32px;height:32px;font-size:18px}.gemaplandmark::after{display:none}.gemaplandmark.a1{left:2%;top:29%}.gemaplandmark.a2{right:2%;top:29%}.gemaplandmark.a3{left:2%;bottom:15%}.gemaplandmark.a4{right:2%;bottom:15%}}
  @media(max-width:430px){.gegrid{left:3%;right:3%;top:35.5%;bottom:18.5%}.gebuilding{width:min(104%,96px);height:min(100%,98px)}.geplot.empty::after{font-size:7px;padding:5px 6px}.geplot.locked::after{font-size:7px}.gehudtitle{font-size:14px}.gehudcoin{font-size:16px}}
  .boardovl.grounds-welcome-ovl{background:linear-gradient(180deg,rgba(7,11,13,.25),rgba(5,7,8,.7))!important;-webkit-backdrop-filter:blur(3px) saturate(.75);backdrop-filter:blur(3px) saturate(.75)}
  .boardcard.grounds-welcome{position:relative;isolation:isolate;max-width:440px!important;max-height:none!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(224,187,116,.58)!important;border-image:none!important;border-radius:22px!important;background:radial-gradient(circle at 86% 8%,rgba(191,143,67,.18),transparent 34%),linear-gradient(150deg,rgba(34,34,31,.98),rgba(14,20,22,.99) 70%)!important;color:#f4ead6!important;box-shadow:0 24px 70px rgba(0,0,0,.62),inset 0 0 0 1px rgba(255,244,215,.06)!important}
  .boardcard.grounds-welcome::before{content:'';position:absolute;z-index:-1;inset:9px;border:1px solid rgba(222,185,112,.13);border-radius:15px;pointer-events:none}
  .boardcard.grounds-welcome>div:first-child{margin:0!important;padding:17px 20px 11px!important;border-bottom:0;background:none!important;box-shadow:none!important}
  .boardcard.grounds-welcome>div:first-child h3{margin:0!important;padding:0!important;background:none!important;color:#d9bd84!important;font:800 11px/1.1 var(--mono)!important;letter-spacing:.16em;text-align:left;text-transform:uppercase;text-shadow:none!important;box-shadow:none!important}
  .boardcard.grounds-welcome>div:first-child .btn{width:36px;height:36px;padding:0!important;border:1px solid rgba(225,199,143,.24)!important;border-radius:50%!important;background:rgba(4,7,8,.34)!important;color:#d8ccb4!important;font:500 15px/1 var(--sans)!important;box-shadow:none!important}
  .grounds-welcome-body{padding:2px 22px 22px}
  .grounds-welcome-title{max-width:330px;color:#fff7e8;font:700 clamp(27px,7vw,34px)/1.06 var(--serif);letter-spacing:-.025em;text-wrap:balance}
  .grounds-welcome-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:20px 0 18px}
  .grounds-welcome-step{min-width:0;padding:11px 9px;border-top:1px solid rgba(223,186,115,.4);background:linear-gradient(180deg,rgba(255,255,255,.035),transparent)}
  .grounds-welcome-step b{display:block;color:#dfc48f;font:800 10px/1 var(--mono);letter-spacing:.11em;text-transform:uppercase}
  .grounds-welcome-step span{display:block;margin-top:7px;color:#d6d0c4;font:600 12px/1.25 var(--sans)}
  .grounds-welcome-enter{width:100%;min-height:50px;padding:12px 16px;border:1px solid #dfbf7d;border-radius:12px;background:#d7b46e;color:#201a12;font:850 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:none;transition:background .16s ease,transform .16s ease}
  .grounds-welcome-enter:hover,.grounds-welcome-enter:focus-visible{background:#ecd093;outline:2px solid rgba(246,222,169,.45);outline-offset:2px}.grounds-welcome-enter:active{transform:translateY(1px)}
  .grounds-welcome-note{margin:10px 0 0;color:#99978f;font:600 10px/1.3 var(--sans);text-align:center}
  @media(max-width:520px){.boardovl.grounds-welcome-ovl{align-items:flex-end!important;padding:8px!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important}.boardcard.grounds-welcome{border-radius:22px 22px 16px 16px!important}.boardcard.grounds-welcome>div:first-child{padding:15px 17px 8px!important}.grounds-welcome-body{padding:2px 17px 18px}.grounds-welcome-title{max-width:300px;font-size:29px}.grounds-welcome-flow{margin:17px 0 16px}.grounds-welcome-step{padding:10px 7px}.grounds-welcome-step span{font-size:11px}}
  @media(prefers-reduced-motion:reduce){.gesupply line,.gebuilding.ready,.gehud .gecollect.ready,.gesmoke,.geflag,.gecitizen{animation:none!important}.geparticle{display:none!important}.groundsestate,.gepanel{scroll-behavior:auto;transition:none}}
  /* The cold-landing "world" showcase */
  .gworld{max-width:840px;margin:36px auto 0;text-align:center}
  .gworld h2{margin-bottom:4px}
  .wgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:12px;margin-top:16px}
  .wcard{background:var(--raised);border:1px solid var(--line);border-radius:14px;padding:16px 14px;cursor:pointer;transition:transform .15s ease,border-color .2s ease,box-shadow .25s ease;display:flex;flex-direction:column;align-items:center;gap:6px;animation:cardIn .38s ease both}
  .wcard:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.45),0 0 0 1px rgba(212,175,55,.22)}
  .wicon{font-size:34px;line-height:1;height:74px;display:flex;align-items:center}
  .wfig{line-height:0;height:74px;display:flex;align-items:flex-end}
  .wt{font-family:var(--serif);font-size:16.5px;color:var(--gold2)}
  .wm{font-size:12.5px;color:var(--soft);line-height:1.4}
  .dcard.avcta{border-color:#3f7a5a;background:radial-gradient(130% 150% at 100% 0%, #123024, #0c1a14)}
  .dcard.avcta:hover{border-color:#5fae82;box-shadow:0 6px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(95,174,130,.3)}
  .dcard.avcta .t{color:#9fe0bd}
  .side-pro{color:var(--pro);font-weight:600}
  .side-con{color:var(--con);font-weight:600}
  .fighters{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:stretch;margin:14px 0}
  .fighter{background:var(--raised);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
  .fighter.pro{border-top:2px solid var(--pro)} .fighter.con{border-top:2px solid var(--con)}
  .fighter .nm{font-weight:700;font-size:15.5px;word-break:break-word}
  .fighter .st{font-size:12px;color:var(--soft);margin-top:3px}
  .vs{align-self:center;font-family:var(--serif);color:var(--gold);font-size:22px}
  .roundbox{border:1px solid var(--line);border-radius:12px;margin:12px 0;overflow:hidden}
  .roundbox .rh{background:var(--raised2);padding:8px 14px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
  .arg{padding:12px 14px;border-top:1px solid var(--line)}
  .arg .who{font-size:11.5px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px}
  .arg.pro .who{color:var(--pro)} .arg.con .who{color:var(--con)}
  .arg .tx{white-space:pre-wrap;color:var(--ink);font-size:15px}
  .arg .tx.empty{color:var(--mute);font-style:italic}
  /* Free-flow exchange: two sides clashing, PRO left, CON right. */
  .chat{display:flex;flex-direction:column;gap:14px;padding:16px 14px}
  .bub{display:flex;gap:10px;max-width:90%;animation:bubIn .32s cubic-bezier(.2,.8,.3,1.1)}
  .bub.pro{align-self:flex-start}
  .bub.con{align-self:flex-end;flex-direction:row-reverse}
  .bub .av{flex:0 0 36px;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:15px;margin-top:18px}
  .bub.pro .av{background:rgba(90,162,255,.16);color:#cfe3ff;border:1px solid var(--pro)}
  .bub.con .av{background:rgba(255,107,94,.15);color:#ffd2cd;border:1px solid var(--con)}
  .bub .av.avfig{background:none;border:none;width:32px;height:auto;margin-top:0;align-self:flex-end;line-height:0}
  .bub .av.avfig svg{display:block}
  .bub .who2{font-size:11px;font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;margin:0 4px 4px}
  .bub.pro .who2{color:var(--pro)} .bub.con .who2{color:var(--con);text-align:right}
  .bub .bubble{padding:11px 14px;border-radius:15px;font-size:15px;line-height:1.5;white-space:pre-wrap;color:var(--ink)}
  .bub.pro .bubble{background:linear-gradient(135deg,rgba(90,162,255,.13),rgba(90,162,255,.05));border:1px solid rgba(90,162,255,.3);border-top-left-radius:5px}
  .bub.con .bubble{background:linear-gradient(135deg,rgba(255,107,94,.12),rgba(255,107,94,.05));border:1px solid rgba(255,107,94,.28);border-top-right-radius:5px}
  .bub .bubble.stand{background:transparent;border:1px dashed var(--line2);color:var(--gold2);font-style:italic}
  @keyframes bubIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
  .chat .empty2{align-self:center;text-align:center;color:var(--mute);font-style:italic;padding:22px 12px;max-width:420px}
  .chat .typing{border:0;justify-content:flex-end}
  .anal{border-top:1px dashed var(--line2);background:var(--bg-deep);padding:12px 14px}
  .anal .ah{color:var(--gold2);font-family:var(--serif);font-size:15.5px;margin-bottom:6px}
  .anal p{margin:.35em 0;color:var(--soft);font-size:14px}
  .anal .fal{margin:.45em 0;padding-left:10px;border-left:2px solid var(--con)}
  .verdict .ah{color:var(--gold2);font-family:var(--serif);font-size:15.5px;margin-bottom:6px}
  .verdict .fal{margin:.45em 0;padding-left:10px;border-left:2px solid var(--con)}
  .verdict .fal p{margin:.3em 0;color:var(--soft);font-size:14px}
  .anal .fc{margin:.35em 0}
  .anal .score{font-family:var(--mono);font-size:12px;color:var(--mute);margin-top:8px}
  .statusbar{position:sticky;bottom:0;background:linear-gradient(180deg,transparent,var(--bg) 18%);padding:14px 0 12px;margin-top:16px}
  .statusbar .inner{background:var(--raised2);border:1px solid var(--line2);border-radius:12px;padding:14px}
  .clock{font-family:var(--mono);font-size:13px;color:var(--gold2)}
  .counter{font-family:var(--mono);font-size:12px;color:var(--mute)}
  .counter.over{color:var(--con)}
  .verdict{border:1px solid var(--gold);border-radius:14px;background:radial-gradient(120% 140% at 0% 0%,#241a0b,#0f0b06 70%);padding:18px;margin:14px 0;animation:verdictIn .55s cubic-bezier(.2,.9,.3,1.15);box-shadow:0 0 34px rgba(212,175,55,.12)}
  @keyframes verdictIn{from{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}
  .typing{display:flex;gap:7px;align-items:center;padding:12px 14px;border-top:1px solid var(--line);color:var(--gold2);font-size:14px;font-style:italic}
  .typing i{width:6px;height:6px;border-radius:50%;background:var(--gold2);display:inline-block;animation:tb 1.2s infinite}
  .typing i:nth-child(3){animation-delay:.15s}
  .typing i:nth-child(4){animation-delay:.3s}
  @keyframes tb{0%,60%,100%{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}
  .vf{animation:vfade .22s ease}
  @keyframes vfade{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
  /* The view fade animates a TRANSFORM, and a transform makes its element the
     containing block for `position:fixed` descendants. Every full-bleed view
     hangs its wrap off #view as position:fixed;inset:0 (.dcwrap, .bastwrap,
     .roomovl and ~20 more), and in those modes #view itself has collapsed --
     its only in-flow child is the back link. So for the 220ms this ran, the
     game was sized to a ~54px strip instead of the viewport, and fit() (which
     runs synchronously at mount) built the world from that. It self-healed off
     the ResizeObserver ~340ms later, which is exactly long enough to show a
     squashed battlefield on entry. Opacity makes a stacking context but NOT a
     containing block, so the fade survives and the capture does not. */
  body.gamemode #view.vf,body.plazamode #view.vf{animation:vfadeflat .22s ease}
  @keyframes vfadeflat{from{opacity:.3}to{opacity:1}}
  .badge.live{animation:livepulse 1.8s ease-in-out infinite}
  @keyframes livepulse{0%,100%{box-shadow:0 0 0 rgba(126,226,168,0)}50%{box-shadow:0 0 10px rgba(126,226,168,.45)}}
  /* the reward ceremony */
  .ceremony{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:70;pointer-events:none}
  .ceremony .big{font-family:var(--serif);font-size:64px;letter-spacing:.02em;animation:cerein 2.2s ease forwards;text-shadow:0 0 60px rgba(212,175,55,.5)}
  .ceremony .big.win{color:var(--gold2)} .ceremony .big.loss{color:var(--con)} .ceremony .big.draw{color:var(--soft)}
  @keyframes cerein{0%{opacity:0;transform:scale(.6)}14%{opacity:1;transform:scale(1.06)}22%{transform:scale(1)}78%{opacity:1}100%{opacity:0;transform:scale(1.02) translateY(-8px)}}
  .cparticle{position:fixed;z-index:69;font-size:20px;pointer-events:none;animation:coinfly 1s ease-out forwards}
  @keyframes coinfly{0%{transform:translate(0,0) scale(.7);opacity:0}12%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(1.15);opacity:0}}
  .pursecoin{position:fixed;z-index:4200;font-size:19px;line-height:1;pointer-events:none;filter:drop-shadow(0 3px 3px rgba(0,0,0,.62));animation:pursearc .78s cubic-bezier(.2,.72,.24,1) forwards;animation-delay:var(--delay)}
  .purseamount{position:fixed;z-index:4199;pointer-events:none;transform:translate(-50%,-50%);padding:4px 9px;border:1px solid rgba(255,219,125,.62);border-radius:999px;background:rgba(31,20,8,.92);box-shadow:0 5px 16px rgba(0,0,0,.42);font:900 13px var(--mono);color:#ffdf8a;white-space:nowrap;animation:purseamount .95s ease-out forwards}
  .purseorigin{animation:purseorigin .48s ease-out}.pursearrived{animation:pursearrived .72s ease-out}
  .pursestatus{position:fixed!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  @keyframes pursearc{0%{transform:translate(0,0) scale(.56) rotate(-18deg);opacity:0}12%{opacity:1}52%{transform:translate(var(--mx),calc(var(--my) - var(--arc))) scale(1.12) rotate(10deg);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.7) rotate(30deg);opacity:0}}
  @keyframes purseamount{0%{transform:translate(-50%,-35%) scale(.72);opacity:0}18%,72%{transform:translate(-50%,-70%) scale(1);opacity:1}100%{transform:translate(-50%,-105%) scale(.96);opacity:0}}
  @keyframes purseorigin{0%,100%{filter:none}38%{filter:brightness(1.34);outline:2px solid rgba(255,219,125,.72);outline-offset:3px}}
  @keyframes pursearrived{0%{box-shadow:0 0 0 0 rgba(255,217,114,.76);transform:scale(1)}48%{box-shadow:0 0 0 9px rgba(255,217,114,0);transform:scale(1.1)}100%{box-shadow:none;transform:scale(1)}}
  @media(prefers-reduced-motion:reduce){.pursecoin{display:none}.purseamount,.purseorigin,.pursearrived{animation:none}.purseamount{opacity:1;transform:translate(-50%,-70%)}.purseorigin,.pursearrived{outline:2px solid rgba(255,219,125,.72);outline-offset:3px}}
  .referee{position:fixed;left:50%;bottom:92px;transform:translateX(-50%) translateY(24px);z-index:70;width:min(440px,92vw);opacity:0;cursor:pointer;
    border:1px solid var(--gold);border-radius:14px;padding:12px 16px;background:linear-gradient(120deg,#241a0b,#120d07);box-shadow:0 12px 44px rgba(0,0,0,.65);
    transition:opacity .35s ease,transform .35s ease}
  .referee.show{opacity:1;transform:translateX(-50%) translateY(0)}
  .referee .rtag{font-family:var(--serif);font-size:17px;color:var(--gold2);display:flex;align-items:center;gap:10px;justify-content:space-between}
  .referee .rgold{font-family:var(--mono);font-size:15px;color:var(--gold2);font-weight:700;white-space:nowrap;animation:goldpop .5s ease}
  @keyframes goldpop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.25)}100%{transform:scale(1);opacity:1}}
  .referee .rread{font-size:13.5px;color:var(--soft);margin-top:5px;line-height:1.45}
  .referee .rbar{height:5px;border-radius:3px;background:var(--bg-deep);margin-top:9px;overflow:hidden}
  .referee .rbar i{display:block;height:100%;width:0;border-radius:3px;transition:width .7s cubic-bezier(.2,.8,.2,1)}
  .chip.bump{animation:chipbump .5s ease}
  @keyframes chipbump{0%{transform:scale(1)}35%{transform:scale(1.14);color:var(--gold2)}100%{transform:scale(1)}}
  .ludcrest{display:flex;align-items:center;gap:16px;border:1px solid var(--gold);border-radius:14px;padding:14px 16px;background:linear-gradient(120deg,#241a0b,#120d07)}
  .ludcrest .lcrank{font-family:var(--serif);font-size:22px;color:var(--gold2)}
  .ludcrest .lclvl{font-family:var(--mono);font-size:13px;color:var(--soft);margin-top:2px}
  .ludcard{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-top:10px;background:var(--raised)}
  .ludcard .ludname{font-family:var(--serif);font-size:17px;color:var(--ink)}
  .ludcard .pips{display:flex;gap:5px;margin-top:8px}
  .ludcard .pip{width:22px;height:7px;border-radius:3px;background:var(--bg-deep);border:1px solid var(--line)}
  .ludcard .pip.on{background:linear-gradient(90deg,#d4af37,#f0c468);border-color:transparent}
  .ludcard .ludperk{font-size:12.5px;color:var(--gold2);margin-top:7px;font-family:var(--mono)}
  .ludcard .ludmax{font-family:var(--serif);color:var(--gold2)}
  .qhome{position:relative;overflow:hidden;margin-top:22px;padding:16px;border:1px solid rgba(235,190,92,.5);border-radius:20px;background:radial-gradient(circle at 82% 2%,rgba(235,187,83,.2),transparent 34%),linear-gradient(145deg,rgba(65,42,19,.95),rgba(21,15,9,.98));box-shadow:0 18px 48px rgba(0,0,0,.34)}
  .qhead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.qkicker{color:#e6bd68;font:800 9px var(--mono);letter-spacing:1.4px;text-transform:uppercase}.qhead h3{margin:3px 0;color:#fff0bf;font:800 clamp(24px,4vw,34px)/1 var(--serif)}.qhead p{max-width:650px;margin:6px 0 0;color:#d6c49d;font-size:11px;line-height:1.45}.qcomfort{min-width:126px;padding:9px 11px;border:1px solid rgba(255,225,145,.3);border-radius:14px;background:rgba(11,8,5,.35);text-align:center}.qcomfort b{display:block;color:#ffe28c;font:800 21px var(--serif)}.qcomfort small{color:#bfae88;font-size:8.5px}
  .qroom{position:relative;min-height:170px;margin-top:13px;padding:14px;border:1px solid rgba(255,232,171,.25);border-radius:17px;background:linear-gradient(180deg,rgba(94,68,39,.6) 0 69%,rgba(48,31,17,.9) 69% 100%);box-shadow:inset 0 -18px 30px rgba(0,0,0,.26)}.qroom:before{content:'';position:absolute;left:9%;right:9%;top:18px;height:74px;border:1px solid rgba(255,226,151,.15);background:radial-gradient(circle at 50% 28%,rgba(255,222,132,.18),transparent 58%);pointer-events:none}.qroomtitle{position:relative;display:flex;justify-content:space-between;gap:10px;color:#fff0c4}.qroomtitle b{font:800 17px var(--serif)}.qroomtitle span{font-size:9px;color:#d2bd90}.qplaced{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:8px;min-height:105px;padding-top:24px}.qplaceditem{display:grid;place-items:center;min-width:72px;min-height:58px;padding:6px;border:1px solid rgba(255,230,163,.24);border-radius:13px;background:rgba(21,13,7,.58);box-shadow:0 7px 18px rgba(0,0,0,.28)}.qplaceditem i{font-style:normal;font-size:27px;filter:drop-shadow(0 4px 4px rgba(0,0,0,.45))}.qplaceditem small{max-width:88px;color:#ead8ad;font-size:7.5px;text-align:center}.qempty{align-self:center;color:#baa981;font-size:10px}
  .qfacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.qfact{padding:4px 7px;border-radius:999px;background:rgba(9,7,5,.42);color:#e4d3aa;font-size:8.5px}.qnext{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:12px;border:1px solid rgba(255,216,119,.3);border-radius:14px;background:rgba(16,11,6,.5)}.qnext b{display:block;color:#ffe3a0;font:800 16px var(--serif)}.qnext p{margin:3px 0 0;color:#bfae8a;font-size:9px;line-height:1.35}
  .qcatalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.qitem{display:flex;min-width:0;flex-direction:column;padding:10px;border:1px solid rgba(255,235,182,.16);border-radius:14px;background:rgba(9,8,6,.48)}.qitem.owned{border-color:rgba(106,211,164,.38);background:rgba(14,46,34,.45)}.qitem.locked{opacity:.62}.qitemhead{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;align-items:center}.qitemicon{font-size:25px}.qitemhead b{display:block;overflow:hidden;color:#f4e3bb;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.qitemhead small{color:#bda87c;font-size:7.5px}.qitem p{flex:1;margin:7px 0;color:#c4b493;font-size:8px;line-height:1.3}.qitem .btn{width:100%;min-height:30px;padding:4px;font-size:8px}.qstatus{min-height:18px;margin-top:9px;color:#d8c59b;font-size:9px}.qhome.settle{animation:qSettle .5s ease-out}@keyframes qSettle{0%{transform:scale(.99);box-shadow:0 0 0 rgba(245,200,91,0)}45%{transform:scale(1.008);box-shadow:0 0 32px rgba(245,200,91,.35)}100%{transform:none}}
  @media(max-width:720px){.qhome{padding:12px}.qhead{display:block}.qcomfort{margin-top:9px;text-align:left}.qcomfort b{display:inline;margin-right:6px}.qcatalog{grid-template-columns:repeat(2,minmax(0,1fr))}.qnext{grid-template-columns:1fr}.qnext .btn{width:100%}}
  @media(max-width:420px){.qcatalog{grid-template-columns:1fr}.qplaceditem{min-width:60px}.qroom{padding:10px}.qroomtitle{display:block}}
  /* Character Wellbeing: the Club hearth and readable house-circle brawl. */
  .wellbeing{display:grid;gap:12px;color:#efe2c5}.wellbeing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(245,192,102,.34);border-radius:16px;background:radial-gradient(circle at 15% 30%,rgba(186,66,50,.2),transparent 40%),rgba(25,13,11,.72)}.wellbeing-head h3{margin:0;color:#ffe3a1;font:800 25px var(--serif)}.wellbeing-head p{margin:5px 0 0;color:#d4bea0;font-size:11px;line-height:1.4}.wellbeing-rep{min-width:145px;padding:9px;border:1px solid rgba(255,232,171,.24);border-radius:12px;background:rgba(0,0,0,.24);text-align:center}.wellbeing-rep b{display:block;color:#ffd87d;font:800 16px var(--serif)}.wellbeing-rep small{color:#cdbb99;font-size:8px}.wellbeing-health{padding:11px;border:1px solid rgba(239,117,92,.25);border-radius:13px;background:rgba(70,24,22,.28)}.wellbeing-health-line{display:flex;justify-content:space-between;gap:9px;align-items:baseline}.wellbeing-health-line b{color:#ffd1b6}.wellbeing-health-line span{color:#e8b49d;font-size:10px}.wellbeing-meter{height:11px;margin-top:7px;overflow:hidden;border:1px solid rgba(255,214,182,.2);border-radius:99px;background:#251113}.wellbeing-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a93232,#ed7358,#f3b96e);transition:width .2s}.wellbeing-title{margin:2px 0;color:#ffe3a1;font:800 17px var(--serif)}.wellbeing-meals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.wellbeing-meal{display:flex;min-width:0;flex-direction:column;padding:10px;border:1px solid rgba(237,197,129,.2);border-radius:13px;background:rgba(28,20,15,.7)}.wellbeing-meal strong{color:#ffe7b5;font-size:11px}.wellbeing-meal p{flex:1;margin:5px 0;color:#cbb89b;font-size:8px;line-height:1.35}.wellbeing-meal small{color:#e2bd7c;font-size:8px}.wellbeing-meal .btn{width:100%;min-height:32px;margin-top:7px;font-size:9px}.wellbeing-brawl{padding:13px;border:1px solid rgba(229,125,74,.32);border-radius:15px;background:linear-gradient(145deg,rgba(74,25,20,.72),rgba(21,14,12,.82))}.wellbeing-rival{display:grid;grid-template-columns:48px minmax(0,1fr);gap:9px;align-items:center}.wellbeing-rival>span{font-size:38px}.wellbeing-rival b{display:block;color:#ffe3a0}.wellbeing-rival small{color:#c7ad91;font-size:9px}.wellbeing-law{margin:8px 0;color:#cfb99d;font-size:9px;line-height:1.4}.wellbeing-legend{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.wellbeing-legend span{padding:4px 7px;border:1px solid rgba(255,220,149,.2);border-radius:99px;background:rgba(0,0,0,.24);color:#e8d3ac;font-size:8px}.wellbeing-rounds{display:grid;gap:7px}.wellbeing-round{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(210px,1.3fr);gap:8px;align-items:center;padding:8px;border:1px solid rgba(255,219,156,.13);border-radius:11px;background:rgba(0,0,0,.2)}.wellbeing-tell b{display:block;color:#f3d79d;font-size:10px}.wellbeing-tell small{color:#bfa98e;font-size:8px}.wellbeing-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.wellbeing-choices button{min-height:31px;padding:4px;border:1px solid rgba(255,224,162,.22);border-radius:8px;background:#2d211a;color:#e9d7b8;font:700 8px var(--sans);cursor:pointer}.wellbeing-choices button.on{border-color:#ffd878;background:#795021;color:#fff4ca;box-shadow:0 0 0 2px rgba(255,207,104,.13)}.wellbeing-result{padding:10px;border:1px solid rgba(255,220,139,.28);border-radius:11px;background:rgba(0,0,0,.26);color:#ead7b5;font-size:10px;line-height:1.45}.wellbeing-result strong{display:block;color:#ffe28e;font:800 17px var(--serif)}.wellbeing-submit{width:100%;margin-top:9px}.wellbeing-status{min-height:16px;color:#d8c29f;font-size:9px}.wellbeing-note{color:#bca98f;font-size:8px;line-height:1.35}.wellbeing-drinks{display:flex;gap:6px;flex-wrap:wrap}.wellbeing-drinks .btn{font-size:8px}
  @media(max-width:650px){.wellbeing-head{grid-template-columns:1fr}.wellbeing-rep{text-align:left}.wellbeing-meals{grid-template-columns:1fr}.wellbeing-round{grid-template-columns:1fr}.wellbeing-choices button{min-height:38px}}
  @media(prefers-reduced-motion:reduce){.wellbeing-meter i{transition:none}}
  /* Daily life happens inside the real venue, not on a detached planner. */
  .lifevenue{margin:12px 0;padding:13px;border:1px solid rgba(238,196,112,.3);border-radius:15px;background:linear-gradient(135deg,rgba(55,39,22,.86),rgba(22,19,20,.88));color:#f1dfbd}.lifevenue[data-life-venue="work"]{background:linear-gradient(135deg,rgba(77,49,17,.93),rgba(30,23,13,.92))}.lifevenue[data-life-venue="rest"]{background:linear-gradient(135deg,rgba(41,48,76,.9),rgba(21,18,34,.92))}.lifevenue-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.lifevenue-head b{display:block;color:#ffe3a0;font:800 18px var(--serif)}.lifevenue-head p{max-width:690px;margin:4px 0 0;color:#cdbb9b;font-size:10px;line-height:1.4}.lifevenue-energy{flex:0 0 auto;padding:6px 9px;border:1px solid rgba(255,222,159,.2);border-radius:999px;background:rgba(0,0,0,.25);color:#f1d58d;font-size:9px}.lifevenue-facts{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}.lifevenue-facts span{padding:4px 7px;border-radius:8px;background:rgba(0,0,0,.23);color:#dcc6a2;font-size:8px}.lifevenue .btn{min-height:34px}.lifevenue-status{min-height:15px;margin-top:6px;color:#cbb99a;font-size:8px}.lifefood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:9px}.lifefood-grid .btn{white-space:normal;font-size:8px;line-height:1.25}.lifejobs{margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,222,159,.18)}.lifejobs-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.lifejobs-head b{color:#ffe3a0;font:800 15px var(--serif)}.lifejobs-head span{color:#cbb58e;font-size:8px}.lifejobs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}.lifejob{display:flex;min-width:0;flex-direction:column;padding:9px;border:1px solid rgba(255,225,163,.16);border-radius:11px;background:rgba(7,7,6,.27)}.lifejob.selected{border-color:#ffd472;background:rgba(105,66,17,.42);box-shadow:inset 0 0 0 1px rgba(255,221,137,.1)}.lifejob.locked{opacity:.68}.lifejob b{color:#ffe5ad;font-size:10px}.lifejob p{flex:1;margin:4px 0;color:#c7b596;font-size:8px;line-height:1.3}.lifejob small{display:block;margin-bottom:6px;color:#dfc17f;font-size:7.5px}.lifejob .btn{width:100%;min-height:29px;padding:4px;font-size:8px}
  @media(max-width:650px){.lifevenue-head{display:block}.lifevenue-energy{display:inline-block;margin-top:8px}.lifefood-grid{grid-template-columns:1fr}.lifejobs-head{display:block}.lifejobs-head span{display:block;margin-top:3px}.lifejobs-grid{grid-template-columns:1fr}}
  @media(prefers-reduced-motion:reduce){.qhome.settle{animation:none}}
  .tribute{border:1px solid var(--gold);border-radius:14px;padding:14px 16px;margin:12px 0;background:linear-gradient(120deg,#2a1e0c,#120d07)}
  .tribute .trhead{font-family:var(--serif);font-size:18px;color:var(--gold2)}
  .joinforces{border:1px solid var(--line);border-radius:12px;padding:11px 14px;margin-top:10px;background:var(--raised)}
  .joinforces .jflabel{font-family:var(--serif);font-size:15px;color:var(--gold2)}
  .fighter .bkrs{font-size:11.5px;color:var(--gold2);margin-top:4px;font-family:var(--mono)}
  .fighter .gearline{font-size:11.5px;color:var(--gold2);margin-top:3px;font-family:var(--mono);opacity:.9}
  .fighter .fav{display:flex;justify-content:center;margin-bottom:4px;line-height:0}
  .fighter .fav svg{filter:drop-shadow(0 3px 4px rgba(0,0,0,.5))}
  .fortbadge{font-family:var(--mono);font-size:11px;padding:1px 7px;border-radius:20px;border:1px solid var(--line2);color:var(--soft)}
  .fortbadge.t1{opacity:.7}
  .fortbadge.t2{color:var(--soft)}
  .fortbadge.t3{color:var(--gold2);border-color:var(--gold)}
  .fortbadge.t4{color:var(--gold2);border-color:var(--gold);box-shadow:0 0 8px rgba(212,175,55,.3)}
  .fortbadge.t5{color:#1a1206;background:linear-gradient(90deg,#d4af37,#f0c468);border-color:transparent;font-weight:700;box-shadow:0 0 14px rgba(212,175,55,.5)}
  .btn.backing{border-color:transparent;font-weight:700;box-shadow:0 0 14px rgba(212,175,55,.35)}
  .btn.pro.backing{background:linear-gradient(90deg,#3a6fb0,#5aa2ff);color:#fff}
  .btn.con.backing{background:linear-gradient(90deg,#a3392f,#ff6b5e);color:#fff}
  /* ARENA_SLICE_END 06-showcase-forum-ceremony */
  /* ARENA_SLICE_START 07-callbar-tapjuice-salons -- spliced from arena-css/07-callbar-tapjuice-salons.css; edit that file, not this region */
  .domainmap{border:1px solid var(--gold);border-radius:14px;padding:12px 14px 14px;margin-bottom:14px;background:radial-gradient(130% 150% at 0% 0%, #2a1e0c, #120d07)}
  .domainmap .dmhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
  .domainmap .dmtitle{font-family:var(--serif);font-size:20px;color:var(--ink)}
  .domainmap .dmcmd{font-family:var(--mono);font-size:12.5px;color:var(--gold2);text-decoration:none}
  .domainmap .dmcmd:hover{text-decoration:underline}
  .domainmap .dmmap{border-radius:8px;overflow:hidden}
  .domainmap .dmfoot{margin-top:9px;font-family:var(--mono);font-size:13px;color:var(--soft)}
  .dcard.frcta{border-color:var(--gold);background:radial-gradient(130% 150% at 100% 0%, #2a1e0c, #120d07)}
  .dcard.orcta{border-color:#6b4fa0;background:radial-gradient(130% 150% at 0% 0%, #241a3a, #100c1c)}
  .dcard.orcta:hover{border-color:#9a7fd0;box-shadow:0 6px 22px rgba(0,0,0,.45), 0 0 0 1px rgba(154,127,208,.3)}
  .dcard.orcta .t{color:#c9b6f2}
  .frdom{font-family:var(--serif);font-size:16px;color:var(--gold2);margin:16px 0 2px;border-bottom:1px solid var(--line);padding-bottom:5px}
  .frcard{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-top:10px;background:var(--raised)}
  .frcard .frfig{font-family:var(--mono);font-size:12px;color:var(--soft)}
  .frcard .frfig.won{color:var(--gold2)}
  .frcard .frpos{font-family:var(--serif);font-size:16.5px;color:var(--ink);margin-top:5px;line-height:1.4}
  .boardovl.social-commons-ovl{padding:22px!important;background:radial-gradient(circle at 72% 10%,rgba(99,74,154,.2),transparent 34%),rgba(5,7,10,.84)!important}
  .boardcard.social-commons{width:min(1060px,96vw)!important;max-width:1060px!important;height:min(790px,91dvh);max-height:91dvh!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(215,181,105,.62)!important;border-radius:22px!important;background:radial-gradient(circle at 80% 0,rgba(105,70,164,.2),transparent 30%),linear-gradient(145deg,#24272e,#111419 62%,#21170f)!important}
  .social-commons>div:first-child{position:relative;z-index:4;margin:0!important;padding:15px 18px 13px;border-bottom:1px solid rgba(218,184,112,.24);background:rgba(14,16,21,.86)}
  .social-commons>div:first-child h3{padding:0!important;border:0!important;color:#f4dfb1!important;font:800 23px/1.1 Georgia,serif!important}
  .social-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr);height:calc(100% - 68px);min-height:0}
  .social-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 19px;background:linear-gradient(90deg,rgba(61,45,83,.62),rgba(30,34,41,.72))}
  .social-hero-copy b{display:block;color:#f5e8ca;font:800 clamp(18px,2.5vw,27px)/1.1 Georgia,serif}.social-hero-copy span{display:block;margin-top:5px;color:#aaaeb7;font-size:12px}
  .social-stats{display:flex;gap:7px}.social-stat{min-width:82px;padding:8px 10px;border:1px solid rgba(224,190,117,.22);border-radius:11px;background:rgba(7,9,13,.45);text-align:center}.social-stat b{display:block;color:#f0c86d;font-size:18px}.social-stat span{color:#989da7;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
  .social-tabs{display:flex;gap:5px;padding:8px 12px;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(218,184,112,.17);background:rgba(8,10,14,.55);overflow-x:auto}.social-tab{flex:1;min-width:100px;min-height:39px;border:1px solid transparent;border-radius:10px;background:transparent;color:#aeb1b8;font-weight:800}.social-tab[aria-selected="true"]{border-color:rgba(225,188,105,.48);background:linear-gradient(180deg,rgba(139,102,50,.28),rgba(78,52,25,.35));color:#ffe2a0}
  .social-body{min-height:0;overflow:auto;padding:14px 16px 24px;scrollbar-color:#896b3e #11151a}.social-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);gap:12px}.social-stack{display:grid;align-content:start;gap:12px}
  .social-panel{padding:13px;border:1px solid rgba(211,177,106,.2);border-radius:14px;background:linear-gradient(145deg,rgba(44,48,56,.78),rgba(20,23,28,.9));box-shadow:inset 0 1px rgba(255,255,255,.035)}.social-panel-head{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:10px}.social-panel-head b{color:#f0dfbd;font-size:14px}.social-panel-head span{color:#8f949d;font-size:10px}
  .social-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.social-quick button{min-height:66px;padding:9px;border:1px solid rgba(222,184,102,.28);border-radius:11px;background:rgba(16,18,23,.68);color:#ddd7cb;font-weight:800}.social-quick button span{display:block;margin-bottom:3px;font-size:21px}.social-quick button:hover{border-color:#d7ac5a;background:rgba(102,70,31,.35)}
  .social-people{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 7px}.social-person{flex:0 0 142px;min-height:155px;padding:10px;border:1px solid rgba(211,178,109,.2);border-radius:13px;background:rgba(10,13,17,.56);text-align:center}.social-person .social-avatar{width:58px;height:58px;margin:auto;overflow:hidden;border:2px solid #4cb66b;border-radius:50%;background:#181b20}.social-person .social-avatar svg{transform:translateY(-3px)}.social-person b{display:block;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-person small{display:block;height:28px;margin:3px 0;color:#8f969f;font-size:10px}.social-person .btn{width:100%;padding:6px;font-size:10px}
  .social-feed{display:grid;gap:7px}.social-feed-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(8,10,14,.45)}.social-feed-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(218,181,104,.3);border-radius:10px;background:rgba(103,70,37,.2);font-size:20px}.social-feed-item b{color:#e6dfd1;font-size:12.5px}.social-feed-item p{margin:2px 0 0;color:#9da1a9;font-size:10.5px}.social-feed-item time{color:#777d86;font-size:9px;white-space:nowrap}
  /* The live-call bar: a call follows you between rooms and full-screen games,
     so its controls are parented to <body> and outlive every view. */
  .callbar{position:fixed;left:50%;transform:translateX(-50%);top:calc(52px + env(safe-area-inset-top));z-index:6500;display:flex;gap:8px;align-items:center;padding:8px 10px;border:1px solid rgba(76,182,107,.5);border-radius:999px;background:rgba(12,20,14,.94);box-shadow:0 10px 30px rgba(0,0,0,.5);max-width:calc(100vw - 20px)}
  .callbar-who{color:#cde9d3;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .callbar .btn{min-height:32px;padding:5px 9px;font-size:11px;white-space:nowrap}
  /* A phone has no room to centre this: the utility rail and the Play beacon
     own the right side, so on a narrow screen the bar hugs the left edge and
     stops short of them rather than sitting on top of the beacon. */
  @media(max-width:520px){.callbar{top:calc(46px + env(safe-area-inset-top));left:6px;transform:none;max-width:calc(100vw - 70px);gap:6px;padding:7px 8px}.callbar-who{font-size:11px;max-width:34vw}.callbar .btn{padding:5px 7px;font-size:10.5px}}
  .social-friend-list{display:grid;gap:8px}.social-friend{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(9,11,15,.5)}.social-friend.online{border-color:rgba(76,182,107,.34)}.social-friend-avatar{width:48px;height:48px;overflow:hidden;border:1px solid rgba(225,190,116,.35);border-radius:50%;background:#171a20}.social-friend-name{display:flex;align-items:center;gap:6px;color:#eee4d1;font-weight:800}.social-presence{margin-top:2px;color:#9197a0;font-size:10.5px}.social-presence.online{color:#65cf80}.social-records{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.social-record{padding:3px 6px;border-radius:999px;background:rgba(103,75,139,.25);color:#cbb9df;font-size:9px}.social-friend-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.social-friend-actions .btn{min-height:34px;padding:6px 8px;font-size:10px}
  .social-search{width:100%;box-sizing:border-box;margin-bottom:10px;padding:11px 13px;border:1px solid rgba(213,178,105,.3);border-radius:11px;background:rgba(5,7,10,.55);color:#eee4d2;font:inherit}.social-empty{padding:25px 14px;border:1px dashed rgba(210,176,105,.28);border-radius:12px;color:#91959c;text-align:center}
  .social-party-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(125,91,179,.42);border-radius:14px;background:radial-gradient(circle at 90% 10%,rgba(133,83,201,.23),transparent 38%),rgba(21,18,29,.72)}.social-party-hero h4{margin:0;color:#f0dcff;font:800 22px Georgia,serif}.social-party-hero p{margin:4px 0 0;color:#aaa1b4;font-size:11px}.social-party-members{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}.social-member{padding:9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(8,9,13,.45);text-align:center;font-size:11px}.social-member b{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-rally{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border:1px solid rgba(239,190,87,.5);border-radius:11px;background:rgba(104,69,21,.32)}.social-rally span{font-size:26px}.social-rally div{flex:1}.social-rally b{display:block;color:#ffe09a}.social-rally small{color:#a99e8a}
  .social-chat{display:grid;grid-template-rows:minmax(110px,1fr) auto;min-height:225px;margin-top:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(5,7,10,.48);overflow:hidden}.social-chat-feed{max-height:240px;overflow:auto;padding:10px}.social-chat-line{margin:0 0 6px;color:#d4d0c8;font-size:12px}.social-chat-line b{color:#c8aef0}.social-chat-compose{display:flex;gap:7px;padding:8px;border-top:1px solid rgba(255,255,255,.08)}.social-chat-compose input{flex:1;min-width:0;padding:10px 11px;border:1px solid rgba(211,178,106,.28);border-radius:9px;background:#11151b;color:#eee}.social-game-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:10px}.social-game{min-height:80px;padding:8px 5px;border:1px solid rgba(212,178,105,.25);border-radius:11px;background:rgba(10,12,16,.55);color:#ddd;font-size:10px;font-weight:800}.social-game span{display:block;margin-bottom:5px;font-size:25px}.social-game:hover{border-color:#e0b55c;background:rgba(99,65,26,.34)}
  .social-moments{display:flex;gap:10px;overflow-x:auto;margin-bottom:12px;padding-bottom:5px}.social-moment{flex:0 0 84px;text-align:center}.social-moment-ring{display:grid;place-items:center;width:58px;height:58px;margin:auto;border:2px solid #a47bd2;border-radius:50%;background:radial-gradient(circle,#423051,#17141c 70%);box-shadow:0 0 0 3px rgba(211,176,104,.25);font-size:27px}.social-moment b{display:block;margin-top:6px;color:#ddd2e6;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-moment span{color:#898f98;font-size:8px}
  @media(max-width:760px){.boardovl.social-commons-ovl{align-items:stretch!important;padding:0!important}.boardcard.social-commons{width:100vw!important;max-width:100vw!important;height:100dvh;max-height:100dvh!important;border:0!important;border-radius:0!important}.social-commons>div:first-child{padding:max(12px,env(safe-area-inset-top)) 13px 10px}.social-shell{height:calc(100% - 62px)}.social-hero{padding:11px 12px}.social-hero-copy span{display:none}.social-stats{gap:4px}.social-stat{min-width:55px;padding:6px}.social-stat b{font-size:15px}.social-tabs{padding:6px}.social-tab{min-width:82px;font-size:11px}.social-body{padding:9px 8px max(18px,env(safe-area-inset-bottom))}.social-grid{grid-template-columns:1fr}.social-quick{gap:5px}.social-quick button{min-height:59px;font-size:10px}.social-friend{grid-template-columns:43px minmax(0,1fr)}.social-friend-avatar{width:41px;height:41px}.social-friend-actions{grid-column:1/-1}.social-friend-actions .btn{flex:1}.social-party-members{grid-template-columns:repeat(2,minmax(0,1fr))}.social-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-game:last-child{grid-column:1/-1}.social-chat{min-height:250px}}
  .domainmap{animation:heroIn .5s cubic-bezier(.2,.8,.2,1)}
  @keyframes heroIn{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}
  /* Universal tap feedback: every button gives under the press. Candy-Crush juice. */
  .btn{transition:transform .08s ease, box-shadow .2s ease, background .2s ease}
  .btn:active:not(:disabled){transform:scale(.95)}
  .dcard,.ludcard,.joinforces{animation:cardIn .38s ease both}
  @keyframes cardIn{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
  @media (prefers-reduced-motion: reduce){.domainhero,.dcard,.ludcard,.joinforces{animation:none}.btn:active:not(:disabled){transform:none}}
  .spoils{border:1px solid var(--gold);border-radius:14px;padding:16px 18px;margin:14px 0;background:linear-gradient(120deg,#241a0b,#120d07);display:grid;gap:6px}
  .spoils .sl{font-family:var(--serif);font-size:22px}
  .spoils .sl.win{color:var(--gold2)} .spoils .sl.loss{color:var(--con)} .spoils .sl.draw{color:var(--soft)}
  .spoils .sr{font-family:var(--mono);font-size:14px;color:var(--soft)}
  .spoils .sr b{color:var(--gold2);font-size:16px}
  .spoils .bar{height:7px;border-radius:4px;background:var(--bg-deep);overflow:hidden}
  .spoils .bar i{display:block;height:100%;background:linear-gradient(90deg,#d4af37,#f0c468);transition:width 1s ease}
  .verdict h3{font-family:var(--serif);font-weight:400;color:var(--gold2);margin:0 0 8px;font-size:22px}
  .verdict .ru{white-space:pre-wrap;color:var(--soft);font-size:15px}
  .verdict .sc{font-family:var(--mono);font-size:12.5px;color:var(--soft);margin:10px 0}
  .votebar{display:flex;gap:8px;align-items:center;margin:10px 0}
  .votebar .bar{flex:1;height:10px;border-radius:6px;background:var(--bg-deep);overflow:hidden;display:flex}
  .votebar .bp{background:var(--pro);height:100%} .votebar .bc{background:var(--con);height:100%}
  .toast{position:fixed;right:14px;bottom:14px;max-width:320px;display:grid;gap:8px;z-index:50}
  .toast div{background:var(--raised2);border:1px solid var(--line2);border-left:3px solid var(--gold);border-radius:8px;padding:10px 12px;font-size:13.5px;color:var(--soft);animation:fadein .2s}
  @keyframes fadein{from{opacity:0;transform:translateY(4px)}to{opacity:1}}
  .tribute-toast{position:fixed;z-index:2650;left:50%;top:126px;transform:translateX(-50%);width:min(310px,calc(100vw - 128px));box-sizing:border-box;display:grid;grid-template-columns:38px minmax(0,1fr) 12px;align-items:center;gap:9px;padding:9px 12px 9px 9px;overflow:hidden;pointer-events:none;border:1px solid rgba(255,218,125,.66);border-radius:16px;background:radial-gradient(circle at 10% 20%,rgba(255,218,115,.2),transparent 36%),linear-gradient(145deg,rgba(49,32,14,.97),rgba(20,13,7,.97));box-shadow:0 12px 34px rgba(0,0,0,.48),inset 0 1px rgba(255,246,207,.15);color:#fff0c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:tributeIn .34s cubic-bezier(.2,.86,.24,1)}
  .tribute-toast::before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 18%,rgba(255,240,186,.14) 40%,transparent 60%);transform:translateX(-110%);animation:tributeShine 1.05s .18s ease-out forwards}
  .tributeicon{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(145deg,#a46c20,#5c3510);box-shadow:inset 0 1px rgba(255,240,180,.34),0 4px 12px rgba(0,0,0,.3);font-size:20px}
  .tributecopy{position:relative;display:flex;min-width:0;flex-direction:column;gap:1px}
  .tributecopy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff1c6;font:700 15px/1.15 var(--serif);letter-spacing:.01em}
  .tributecopy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d9c59b;font:700 11.5px/1.25 var(--sans)}
  .tributespark{position:relative;color:#ffd76f;font-size:13px;text-shadow:0 0 10px rgba(255,211,91,.8);animation:tributeSpark 1.15s ease-in-out infinite alternate}
  @keyframes tributeIn{from{opacity:0;transform:translate(-50%,-8px) scale(.96)}to{opacity:1;transform:translateX(-50%) scale(1)}}
  @keyframes tributeShine{to{transform:translateX(110%)}}
  @keyframes tributeSpark{from{opacity:.5;transform:scale(.82) rotate(-8deg)}to{opacity:1;transform:scale(1.12) rotate(8deg)}}
  @media(prefers-reduced-motion:reduce){.tribute-toast,.tribute-toast::before,.tributespark{animation:none}}
  dialog{background:var(--raised2);color:var(--ink);border:1px solid var(--line2);border-radius:14px;padding:22px;max-width:380px;width:92%}
  dialog::backdrop{background:rgba(0,0,0,.65)}
  .lb{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
  .lb td{padding:7px 8px;border-top:1px solid var(--line)}
  .lb .elo{font-family:var(--mono);color:var(--gold2)}
  .tabs{display:flex;gap:8px;margin:8px 0}
  .grid2{display:grid;gap:18px;grid-template-columns:1fr}
  @media(min-width:820px){.grid2{grid-template-columns:3fr 2fr}}
  .quicknav{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px;margin-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .quicknav::-webkit-scrollbar{display:none}
  .qn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:66px;padding:9px 10px;background:var(--raised);border:1px solid var(--line);border-radius:12px;color:var(--soft);transition:border-color .2s ease,transform .15s ease,box-shadow .2s ease}
  .qn:hover{border-color:var(--gold);color:var(--ink);transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.35)}
  .qni{font-size:22px;line-height:1}
  .qnl{font-size:11px;font-family:var(--mono);letter-spacing:.02em}
  .emailcard input{background:var(--raised);border:1px solid var(--line2);border-radius:8px;color:var(--ink);padding:8px 10px;font:inherit;font-size:14px}
  .emailcard input:focus{outline:none;border-color:var(--gold)}
  .routedin{font-family:var(--mono);font-size:12.5px;color:var(--gold2);border:1px solid var(--gold);border-radius:9px;padding:8px 11px;margin-bottom:14px;background:rgba(212,175,55,.08);line-height:1.4}
  .empty{color:var(--mute);font-style:italic;padding:12px 0}
  .notice{border:1px dashed var(--line2);border-radius:10px;padding:10px 14px;color:var(--soft);font-size:14px;margin:10px 0}
  .gaunt{max-width:780px;margin:4vh auto 0;text-align:center;padding:0 6px}
  .gaunt .ey{font-family:var(--sans);font-size:12px;letter-spacing:.34em;color:var(--gold);text-transform:uppercase}
  .gaunt .scales{font-size:58px;line-height:1;display:inline-block;margin:14px 0 2px;animation:sway 5s ease-in-out infinite;transform-origin:50% 8%;filter:drop-shadow(0 0 20px rgba(212,175,55,.4))}
  @keyframes sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
  .gaunt h1{font-family:var(--serif);font-weight:400;font-size:46px;margin:8px 0 8px;line-height:1.1;text-shadow:0 0 36px rgba(212,175,55,.3)}
  .gsub{color:var(--soft);font-size:15.5px;max-width:600px;margin:0 auto;line-height:1.55}
  .gmotion{margin:26px auto 4px;padding:26px 24px 18px;border:1px solid var(--line2);border-left:3px solid var(--gold);border-radius:14px;background:linear-gradient(120deg,#1d150b,#120d07);animation:glowPulse 3.4s ease-in-out infinite}
  @keyframes glowPulse{0%,100%{box-shadow:0 0 0 rgba(212,175,55,0)}50%{box-shadow:0 0 30px rgba(212,175,55,.17)}}
  .gmtext{font-family:var(--serif);font-size:27px;line-height:1.35;color:var(--ink);min-height:1.35em}
  .gmtext .caret{display:inline-block;width:2px;height:.95em;background:var(--gold2);vertical-align:-2px;margin-left:2px;animation:caret .8s steps(1) infinite}
  @keyframes caret{50%{opacity:0}}
  .gcyc{display:inline-block;margin-top:10px;font-size:13px;color:var(--mute)}
  .gsides{display:flex;gap:14px;justify-content:center;margin:22px 0 4px;flex-wrap:wrap}
  .gside{flex:1;min-width:180px;max-width:300px;padding:18px 14px;border-radius:12px;font-size:16.5px;font-weight:700;cursor:pointer;background:transparent;transition:transform .14s ease, box-shadow .22s ease}
  .gside:hover{transform:translateY(-2px) scale(1.02)}
  .gside.pro{border:2px solid var(--pro);color:#cfe3ff;background:rgba(90,162,255,.10)}
  .gside.pro:hover{box-shadow:0 0 26px rgba(90,162,255,.38)}
  .gside.con{border:2px solid var(--con);color:#ffd2cd;background:rgba(255,107,94,.09)}
  .gside.con:hover{box-shadow:0 0 26px rgba(255,107,94,.34)}
  .gside.picked{outline:3px solid var(--gold);outline-offset:2px}
  .gside small{display:block;font-weight:400;color:var(--soft);margin-top:4px;font-size:12.5px}
  .gname{display:none;margin-top:16px}
  .gname .row{justify-content:center}
  .gname input{max-width:280px;text-align:center;font-size:16px}
  .gbrowse{display:inline-block;margin-top:26px;font-size:13.5px;color:var(--mute)}
  .fightbox{border:1px solid var(--line2);border-left:3px solid var(--gold);border-radius:14px;background:linear-gradient(120deg,#1d150b,#120d07);padding:20px 20px 16px;animation:glowPulse 3.4s ease-in-out infinite}
  .fightbox h2{margin:0 0 2px;font-size:27px;text-shadow:0 0 30px rgba(212,175,55,.3)}
  .fightbox .claim{background:transparent;border:0;outline:none;width:100%;resize:none;min-height:62px;font-family:var(--serif);font-size:20px;line-height:1.4;color:var(--ink);padding:8px 0}
  .fightbox .claim::placeholder{color:var(--mute)}
  .sideflip{font-size:13px;color:var(--mute);cursor:pointer;user-select:none}
  .sideflip b{cursor:pointer}
  .sideflip b.pro{color:var(--pro)} .sideflip b.con{color:var(--con)}
  .gticker{margin:18px auto 0;max-width:620px;text-align:left}
  .gtline{font-size:13px;color:var(--soft);padding:5px 10px;border-left:2px solid var(--line2);margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  @media(max-width:480px){.gaunt h1{font-size:32px}.gmtext{font-size:21px}}
  .hero{position:relative;border:1px solid var(--line2);border-left:3px solid var(--gold);border-radius:12px;background:linear-gradient(120deg,#1d150b,#120d07 70%);padding:16px 40px 16px 16px;margin-bottom:18px}
  .hero h3{font-family:var(--serif);font-weight:400;color:var(--gold2);font-size:19px;margin:0 0 8px}
  .hero ol{margin:0 0 0 18px;padding:0;color:var(--soft);font-size:14px;line-height:1.7}
  .hero .x{position:absolute;top:8px;right:10px;background:none;border:0;color:var(--mute);font-size:18px;cursor:pointer}
  @media(max-width:480px){
    h2{font-size:20px}
    .brand{font-size:17px}
    .chip{font-size:11px;padding:4px 9px}
    .dcard .t{font-size:15.5px}
    .fighter .nm{font-size:13.5px}
    .hero{padding-right:34px}
  }
  /* ── The Card Room: no-limit Hold'em ── */
  .cardroom{max-width:720px;margin:0 auto}
  .crstatus{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:6px 0 12px;font-size:13px}
  .crstatus .pill{border:1px solid var(--line);border-radius:20px;padding:5px 11px;background:rgba(20,14,6,.6)}
  .crstatus .pill b{color:var(--gold2)}
  .crstatus .pos{color:#7bd47b}.crstatus .neg{color:#e57373}
  .felt{position:relative;border-radius:120px/64px;padding:16px 14px 18px;margin:2px 0 12px;
    background:radial-gradient(120% 130% at 50% 30%,#1c5e3a 0%,#124026 60%,#0b2a19 100%);
    border:7px solid #3a2a12;box-shadow:0 0 0 2px #6b4e1e,inset 0 6px 30px rgba(0,0,0,.5),0 14px 40px rgba(0,0,0,.5)}
  .feltrow{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
  .felt .board{display:flex;justify-content:center;gap:7px;min-height:64px;align-items:center;margin:10px 0}
  .felt .pot{text-align:center;color:#ffe7a8;font-size:14px;font-weight:600;letter-spacing:.02em;text-shadow:0 1px 3px rgba(0,0,0,.6)}
  .felt .pot small{color:#cbe6cf;font-weight:400}
  .pseat{position:relative;min-width:104px;max-width:120px;text-align:center;padding:7px 6px 8px;border-radius:12px;
    background:rgba(6,20,12,.5);border:1px solid rgba(255,255,255,.08);transition:.2s}
  .pseat.you{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 0 16px rgba(232,193,90,.25)}
  .pseat.turn{border-color:#ffe08a;box-shadow:0 0 0 2px #ffe08a,0 0 20px rgba(255,224,138,.5)}
  .pseat.folded{opacity:.42;filter:grayscale(.6)}
  .pseat.winner{border-color:#8ff0a8;box-shadow:0 0 0 2px #8ff0a8,0 0 26px rgba(143,240,168,.6);animation:winpulse 1.1s ease-in-out infinite}
  @keyframes winpulse{50%{box-shadow:0 0 0 2px #8ff0a8,0 0 34px rgba(143,240,168,.85)}}
  .pname{font-size:12.5px;color:#eafff0;font-weight:600;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pstack{font-size:12px;color:#ffe7a8;margin-top:1px}
  .plast{font-size:10.5px;color:#bfe9c8;margin-top:2px;min-height:13px;letter-spacing:.02em}
  .pwin{font-size:11px;color:#8ff0a8;font-weight:700;margin-top:2px}
  .pbet{position:absolute;top:-9px;right:-6px;background:var(--gold);color:#201400;font-size:10.5px;font-weight:800;border-radius:12px;padding:2px 7px;box-shadow:0 2px 6px rgba(0,0,0,.5)}
  .pdealer{position:absolute;top:-8px;left:-6px;width:20px;height:20px;border-radius:50%;background:#fff;color:#111;font-size:11px;font-weight:800;display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,.5)}
  .pcards{display:flex;justify-content:center;gap:4px;min-height:44px}
  .pcard{width:32px;height:44px;border-radius:5px;background:#fbf7ee;display:flex;flex-direction:column;align-items:center;justify-content:center;
    box-shadow:0 2px 5px rgba(0,0,0,.4);font-weight:800;line-height:1;user-select:none}
  .pcard.big{width:40px;height:56px}
  .pcard .pr{font-size:15px}.pcard.big .pr{font-size:19px}
  .pcard .ps{font-size:13px;margin-top:1px}.pcard.big .ps{font-size:16px}
  .pcard.red{color:#c62828}.pcard.blk{color:#1a1a1a}
  .pcard.back{background:repeating-linear-gradient(45deg,#7a1f1f 0 6px,#5e1616 6px 12px);border:2px solid #e8c15a;box-shadow:inset 0 0 0 2px #7a1f1f,0 2px 5px rgba(0,0,0,.4)}
  .pactions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center;margin:10px 0}
  .praise{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;width:100%;margin-top:4px}
  .praise input[type=range]{flex:1;min-width:120px;accent-color:var(--gold)}
  .pramt{min-width:52px;text-align:center;color:var(--gold2);font-weight:700}
  .btn.sm{font-size:11.5px;padding:5px 9px}
  .btn.gold{background:linear-gradient(135deg,#f0c468,#c9992f);color:#231600;border-color:#c9992f;font-weight:700}
  .crlog{font-size:12px;color:var(--muted);text-align:center;min-height:16px;margin:2px 0 4px}
  .pbuy{border:1px solid var(--line);border-radius:14px;padding:16px;background:radial-gradient(130% 150% at 0% 0%,#241a0b,#110c06);text-align:center}
  .pbuy .pbuytitle{font-family:Georgia,serif;font-size:18px;color:var(--gold2);margin-bottom:4px}
  .pbuy .buyrow{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}
  .crctl{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin-top:6px}
  .crdeal{font-size:16px;padding:11px 26px}
  /* An empty felt table shown before you sit, so the room reads as poker */
  .crfeltwrap{display:flex;justify-content:center;margin:8px 0 20px}
  .crfelt{position:relative;width:100%;max-width:520px;aspect-ratio:16/9;border-radius:50%/44%;
    background:radial-gradient(120% 120% at 50% 38%,#1f7345,#124026 60%,#0b2515);
    border:9px solid #5a3a1a;box-shadow:0 16px 40px rgba(0,0,0,.5),inset 0 0 55px rgba(0,0,0,.5);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px}
  .crboard{display:flex;gap:7px}
  .crslot{width:34px;height:48px;border-radius:5px;border:2px dashed rgba(255,240,200,.3);background:rgba(255,255,255,.05)}
  .crpotlbl{font-size:12px;font-weight:800;letter-spacing:3px;color:rgba(255,235,180,.7)}
  .crfeltchip{position:absolute;top:14%;right:16%;font-size:20px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
  .cryouseat{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);display:flex;gap:5px;align-items:flex-end}
  .cryouname{align-self:center;font-size:11px;color:#c9b58a;font-weight:700;margin-left:4px}
  .crback{width:36px;height:50px;border-radius:6px;border:1px solid #601818;box-shadow:0 3px 8px rgba(0,0,0,.45);
    background:repeating-linear-gradient(45deg,#7a1f1f,#7a1f1f 5px,#8f2a2a 5px,#8f2a2a 10px)}
  /* Blackjack Salon: one honest committed table, not a slot-machine shell. */
  .bjapp{width:min(980px,100%);margin:0 auto;display:grid;gap:12px}.bjtop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.bjtop h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}
  .bjintro{flex:1;min-width:240px}.bjintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.bjstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.bjstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.bjstat b{color:#ffe08a}
  .bjcommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.bjseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.bjhash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bjcommit.verified{border-color:#6ebb82}.bjcommit.verified .bjseal{background:#164e2b;border-color:#79d591}
  .bjfelt{position:relative;min-height:470px;overflow:hidden;border:10px solid #543616;border-radius:44%/18%;padding:28px 22px 32px;box-sizing:border-box;background:radial-gradient(ellipse at 50% 42%,#1e7549 0,#125437 54%,#092d1d 100%);box-shadow:inset 0 0 90px rgba(0,0,0,.56),0 18px 48px rgba(0,0,0,.48),0 0 0 2px #9b7130}.bjfelt::before{content:'BLACKJACK PAYS 3 TO 2';position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:70%;border:2px solid rgba(247,220,147,.17);border-bottom:0;border-radius:50% 50% 0 0/100% 100% 0 0;padding-top:95px;text-align:center;color:rgba(255,234,175,.28);font:700 clamp(11px,2vw,17px)/1.2 var(--serif);letter-spacing:.16em}
  .bjdealer,.bjplayer{position:relative;z-index:1;display:grid;justify-items:center;gap:6px}.bjdealer{min-height:130px}.bjlabel{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#d5e7d4}.bjtotal{border-radius:999px;padding:3px 9px;background:rgba(3,22,13,.76);border:1px solid rgba(255,255,255,.14);color:#ffe4a0;font-size:12px;font-weight:800}.bjcards{display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.bjcards .pcard{width:42px;height:58px;animation:bjdeal .26s ease-out both}.bjcards .pcard:nth-child(2){animation-delay:.05s}.bjcards .pcard:nth-child(3){animation-delay:.1s}
  .bjhands{position:relative;z-index:1;display:flex;align-items:stretch;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:78px}.bjhand{min-width:150px;max-width:220px;flex:1 1 150px;padding:9px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(3,28,17,.68);text-align:center}.bjhand.active{border-color:#ffe08a;box-shadow:0 0 0 2px rgba(255,224,138,.24),0 0 28px rgba(255,224,138,.18)}.bjhand.win{border-color:#83dd99}.bjhand.loss{border-color:#bb7272}.bjresult{font-size:12px;font-weight:800;color:#ffe08a;margin-top:5px}.bjwager{color:#c9dccb;font-size:11px}
  .bjcoach{position:relative;z-index:2;width:min(520px,calc(100% - 24px));margin:-20px auto 8px;padding:9px 12px;box-sizing:border-box;border:1px solid #b98c31;border-radius:12px;background:rgba(26,17,6,.95);text-align:center;color:#e6d6a8;font-size:12px}.bjcoach b{color:#ffe08a}.bjcoach.good{border-color:#62c77b;color:#bcefc8}.bjcoach.alt{border-color:#ca885e;color:#f0c5aa}
  .bjcontrols{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.bjcontrols .btn{min-width:98px}.bjbet{display:grid;justify-items:center;gap:9px;padding:16px;border:1px solid #56431f;border-radius:15px;background:linear-gradient(145deg,#21170a,#100b05)}.bjbetrow{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.bjproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;border:1px solid #356f47;border-radius:13px;padding:11px;background:rgba(8,34,19,.82);font-size:11px;color:#bcd9c2}.bjproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.bjproof b{color:#d7f8df}.bjrules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.bjrule{border:1px solid #48391e;border-radius:10px;padding:8px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:11px;text-align:center}.bjrule b{display:block;color:#ecd28b;margin-bottom:2px}.bjbusy{opacity:.62;pointer-events:none}
  @keyframes bjdeal{from{opacity:0;transform:translateY(-12px) rotate(-4deg)}to{opacity:1;transform:none}}
  @media(max-width:620px){.bjapp{gap:8px}.bjstats{justify-content:flex-start}.bjcommit{grid-template-columns:auto minmax(0,1fr);padding:7px 9px}.bjcommit .btn{grid-column:1/3;width:100%}.bjfelt{min-height:430px;border-width:7px;border-radius:34%/12%;padding:20px 8px 24px}.bjfelt::before{top:42%;padding-top:70px;width:88%;font-size:10px}.bjdealer{min-height:115px}.bjhands{margin-top:64px;gap:5px;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:0 4px 5px;scroll-snap-type:x mandatory}.bjhand{min-width:142px;scroll-snap-align:center}.bjcoach{margin:-12px auto 6px}.bjcontrols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bjcontrols .btn{min-width:0}.bjrules{grid-template-columns:repeat(2,minmax(0,1fr))}.bjproof{grid-template-columns:1fr}.bjproof .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.bjcards .pcard{animation:none}.bjhand.active{box-shadow:0 0 0 2px rgba(255,224,138,.24)}}
  /* European Roulette Salon: one single-zero wheel and a complete honest felt. */
  .rtapp{width:min(1180px,100%);margin:0 auto;display:grid;gap:11px}.rttop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.rtintro{flex:1;min-width:250px}.rtintro h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}.rtintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.rtstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.rtstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.rtstat b{color:#ffe08a}
  .rtcommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.rtseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.rthash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rtcommit.verified{border-color:#6ebb82}.rtcommit.verified .rtseal{background:#164e2b;border-color:#79d591}
  .rtstage{display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:12px;align-items:start}.rtwheelpanel,.rtfelt,.rtslip,.rtresult,.rtproof{border:1px solid #5a4320;border-radius:16px;background:linear-gradient(145deg,#21170a,#0d0905);box-shadow:0 14px 34px rgba(0,0,0,.32)}.rtwheelpanel{display:grid;justify-items:center;gap:9px;padding:14px;position:sticky;top:8px}.rtwheel{--rt-land:1080deg;position:relative;width:min(280px,76vw);aspect-ratio:1;border-radius:50%;border:13px solid #6a431b;outline:3px solid #c49a4d;outline-offset:-8px;background:repeating-conic-gradient(from -4.865deg,#b92722 0 9.73deg,#151311 9.73deg 19.46deg);box-shadow:inset 0 0 0 24px #d5ad63,inset 0 0 0 32px #382510,inset 0 0 55px #000,0 15px 30px rgba(0,0,0,.55)}.rtwheel::before{content:'';position:absolute;inset:31%;border-radius:50%;background:radial-gradient(circle at 42% 34%,#f6dd9c 0 5%,#9b6b2b 25%,#3d260d 68%,#130b04 100%);border:5px solid #deb966;box-shadow:0 0 0 5px #291709}.rtwheel::after{content:'';position:absolute;left:50%;top:8px;width:12px;height:12px;border-radius:50%;background:#f7e9c7;border:2px solid #5d4a2d;box-shadow:0 2px 5px #000;transform:translateX(-50%);z-index:4}.rtwheel.landed{animation:rtwheelspin 1.25s cubic-bezier(.12,.7,.18,1) both}.rtwheel.landed::after{animation:rtball 1.25s cubic-bezier(.12,.7,.18,1) both}.rtpocket{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px;display:grid;place-items:center;color:#fff8df;font-size:8px;font-weight:900;text-shadow:0 1px 2px #000;transform:rotate(var(--rt-a)) translateY(-116px) rotate(calc(-1 * var(--rt-a)));z-index:2}.rtpocket.zero{color:#bff7cf}.rtoutcome{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center;width:100%;border:1px solid #4f3b1d;border-radius:12px;padding:9px;box-sizing:border-box;background:rgba(0,0,0,.26)}.rtballnum{grid-row:1/3;width:45px;height:45px;border-radius:50%;display:grid;place-items:center;font:800 22px var(--serif);border:2px solid rgba(255,255,255,.65);box-shadow:0 5px 12px rgba(0,0,0,.4)}.rtballnum.red{background:#a52a25}.rtballnum.black{background:#171513}.rtballnum.green{background:#16733b}.rtoutcome b{color:#ffe08a}.rtoutcome small{color:#bcae86}.rtrecent{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.rtrecent i{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:800;color:white;border:1px solid rgba(255,255,255,.28)}
  .rtfelt{padding:12px;background:radial-gradient(ellipse at 50% 20%,#1c7347,#0d4229 70%,#08281a);border-color:#84622e;box-shadow:inset 0 0 65px rgba(0,0,0,.38),0 14px 34px rgba(0,0,0,.32)}.rtfeltbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:9px}.rtfeltbar b{color:#f4dda0;margin-right:auto}.rtchips{display:flex;gap:5px;flex-wrap:wrap}.rtchip{width:38px;height:38px;border-radius:50%;border:3px dashed rgba(255,255,255,.72);background:#7c2b25;color:white;font:800 11px var(--serif);box-shadow:0 3px 8px rgba(0,0,0,.45);cursor:pointer}.rtchip:nth-child(2n){background:#244f7d}.rtchip:nth-child(3n){background:#86651b}.rtchip[aria-pressed=true]{outline:3px solid #ffe08a;outline-offset:2px;transform:translateY(-2px)}.rttable{display:grid;grid-template-columns:62px minmax(0,1fr);gap:5px}.rtzero{min-height:188px;border:1px solid rgba(255,255,255,.45);border-radius:36px 8px 8px 36px;background:#14733d;color:white;font:900 22px var(--serif);cursor:pointer}.rtnumbers{display:grid;grid-template-columns:repeat(3,minmax(42px,1fr));gap:3px}.rtnum{min-height:44px;border:1px solid rgba(255,255,255,.42);border-radius:5px;color:white;font:800 13px var(--serif);cursor:pointer;position:relative}.rtnum.red{background:#a52a25}.rtnum.black{background:#171513}.rtnum em,.rtoutside em{position:absolute;right:2px;bottom:2px;min-width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#e0b749;color:#241503;font:800 8px sans-serif;border:1px solid #fff3c1}.rtoutside{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;margin-top:5px}.rtoutside button{min-height:38px;border:1px solid rgba(255,255,255,.36);border-radius:5px;background:#154a31;color:#f7edcf;font:700 11px var(--serif);cursor:pointer;position:relative}.rtoutside .red{background:#992822}.rtoutside .black{background:#171513}.rtinside{margin-top:9px;border-top:1px solid rgba(255,255,255,.18);padding-top:9px}.rtkindtabs{display:flex;gap:5px;overflow-x:auto;padding-bottom:6px}.rtkindtabs button{white-space:nowrap;border:1px solid #607d62;border-radius:999px;background:#0b2c1c;color:#d8e9d7;padding:6px 10px;font:700 10px sans-serif;cursor:pointer}.rtkindtabs button[aria-selected=true]{border-color:#ffe08a;background:#644919;color:#fff2c7}.rtinsideopts{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:4px;max-height:155px;overflow:auto}.rtinsideopts button{min-height:36px;border:1px solid rgba(255,255,255,.26);border-radius:6px;background:rgba(4,24,14,.72);color:#e1ecd9;font-size:10px;cursor:pointer;position:relative}.rtinsideopts button b{display:block;color:#ffe08a;font-size:9px}.rtinsideopts button em{position:absolute;right:2px;top:2px;min-width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#e0b749;color:#241503;font:800 8px sans-serif}
  .rtslip{margin-top:10px;padding:11px;display:grid;gap:8px}.rtsliphead{display:flex;align-items:center;gap:8px}.rtsliphead b{color:#ffe08a;margin-right:auto}.rtsliplist{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:5px}.rtslipbet{display:grid;grid-template-columns:1fr auto;gap:2px 7px;border:1px solid #4e3c20;border-radius:8px;padding:7px;background:rgba(13,9,4,.72);font-size:11px}.rtslipbet b{color:#ebd592}.rtslipbet small{color:#a99b78}.rtslipbet button{grid-row:1/3;grid-column:2;border:0;background:transparent;color:#d8a17d;cursor:pointer;font-size:16px}.rtslipfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rtslipfoot strong{color:#ffe08a;margin-right:auto}.rtbusy{opacity:.6;pointer-events:none}
  .rtresult{padding:13px;display:grid;gap:8px}.rtresult h3{margin:0;color:#ffe08a}.rtwins{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:5px}.rtwin{border:1px solid #4b3a20;border-radius:8px;padding:7px;color:#bbae89;font-size:11px}.rtwin.won{border-color:#4e9c64;background:rgba(19,78,41,.38);color:#c8f1d2}.rtproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:11px;font-size:11px;color:#bcd9c2;border-color:#356f47}.rtproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.rtproof b{color:#d7f8df}.rtrules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.rtrule{border:1px solid #48391e;border-radius:9px;padding:7px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:10px;text-align:center}.rtrule b{display:block;color:#ecd28b;margin-bottom:2px}
  @keyframes rtwheelspin{from{transform:rotate(0)}to{transform:rotate(var(--rt-land))}}@keyframes rtball{0%{transform:translateX(-50%) rotate(0) translateY(0)}70%{transform:translateX(-50%) rotate(-880deg) translateY(102px)}100%{transform:translateX(-50%) rotate(-1080deg) translateY(102px)}}
  @media(max-width:760px){.rtstage{grid-template-columns:1fr}.rtwheelpanel{position:relative;top:auto}.rtwheel{width:min(250px,72vw)}.rtpocket{transform:rotate(var(--rt-a)) translateY(-103px) rotate(calc(-1 * var(--rt-a)))}.rtstats{justify-content:flex-start}.rtrules{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:520px){.rtapp{gap:8px}.rtcommit{grid-template-columns:auto minmax(0,1fr);padding:7px 9px}.rtcommit .btn{grid-column:1/3;width:100%}.rtfelt{padding:8px}.rttable{grid-template-columns:46px minmax(0,1fr)}.rtzero{min-height:176px}.rtnum{min-height:42px}.rtoutside{grid-template-columns:repeat(3,minmax(0,1fr))}.rtinsideopts{grid-template-columns:repeat(2,minmax(0,1fr));max-height:170px}.rtsliplist{grid-template-columns:1fr}.rtproof{grid-template-columns:1fr}.rtproof .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.rtwheel.landed,.rtwheel.landed::after{animation:none}.rtchip[aria-pressed=true]{transform:none}}
  /* Verifiable Craps Pit: an exact point cycle with removable working bets. */
  .cpapp{width:min(1180px,100%);margin:0 auto;display:grid;gap:11px}.cptop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.cpintro{flex:1;min-width:250px}.cpintro h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}.cpintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.cpstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cpstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.cpstat b{color:#ffe08a}.cpbusy{opacity:.62;pointer-events:none}
  .cpcommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.cpseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.cphash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cpcommit.verified{border-color:#6ebb82}.cpcommit.verified .cpseal{background:#164e2b;border-color:#79d591}
  .cpstage{display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:12px;align-items:start}.cpdicepanel,.cpfelt,.cpslip,.cpactive,.cpresult,.cpproof{border:1px solid #5a4320;border-radius:16px;background:linear-gradient(145deg,#21170a,#0d0905);box-shadow:0 14px 34px rgba(0,0,0,.32)}.cpdicepanel{display:grid;justify-items:center;gap:10px;padding:14px;position:sticky;top:8px}.cpdice{display:flex;gap:13px;padding:17px}.cpdie{position:relative;width:82px;height:82px;border-radius:16px;background:linear-gradient(145deg,#fffdf4,#d9cfb6);border:3px solid #897a5b;box-shadow:inset 0 2px 4px #fff,0 8px 18px rgba(0,0,0,.46)}.cpdie.rolled{animation:cpthrow .62s cubic-bezier(.2,.8,.22,1)}.cppip{position:absolute;width:13px;height:13px;margin:-6.5px;border-radius:50%;background:#241d13;box-shadow:inset 0 1px 2px #000}.cppuck{width:75px;height:75px;border-radius:50%;display:grid;place-items:center;border:4px double #d6c59d;background:#ece4d2;color:#15120d;font:900 12px var(--serif);box-shadow:0 8px 18px rgba(0,0,0,.4);text-align:center}.cppuck.on{background:#16130e;color:#fff0bb;border-color:#e7bd5b}.cprollsummary{text-align:center}.cprollsummary b{display:block;color:#ffe08a;font:900 20px var(--serif)}.cprollsummary small{color:#bcae86}.cprecent{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.cprecent i{min-width:27px;height:27px;padding:0 4px;border-radius:8px;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:800;color:#f8edce;border:1px solid rgba(255,255,255,.22);background:#174b35}
  .cpfelt{padding:12px;background:radial-gradient(ellipse at 50% 15%,#257953,#0c452e 72%,#07291b);border-color:#84622e;box-shadow:inset 0 0 65px rgba(0,0,0,.38),0 14px 34px rgba(0,0,0,.32)}.cpfeltbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:9px}.cpfeltbar b{color:#f4dda0;margin-right:auto}.cpchips{display:flex;gap:5px;flex-wrap:wrap}.cpchip{width:38px;height:38px;border-radius:50%;border:3px dashed rgba(255,255,255,.72);background:#7c2b25;color:white;font:800 11px var(--serif);box-shadow:0 3px 8px rgba(0,0,0,.45);cursor:pointer}.cpchip:nth-child(2n){background:#244f7d}.cpchip:nth-child(3n){background:#86651b}.cpchip[aria-pressed=true]{outline:3px solid #ffe08a;outline-offset:2px;transform:translateY(-2px)}.cpzones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.cpzone{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:8px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(4,30,18,.45)}.cpzone h3{grid-column:1/-1;margin:0;color:#ffe5a4;font:900 12px var(--serif);letter-spacing:.08em;text-transform:uppercase}.cpbet{position:relative;min-height:58px;padding:7px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(8,39,25,.78);color:#f3ead0;text-align:left;cursor:pointer}.cpbet b,.cpbet small{display:block}.cpbet small{margin-top:3px;color:#b8cbae;font-size:9px;line-height:1.25}.cpbet em{position:absolute;right:4px;top:4px;min-width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e0b749;color:#241503;font:800 8px sans-serif}.cpbet:disabled{cursor:not-allowed;opacity:.42}.cpbet.odds{border-color:#d1a84d;background:rgba(75,53,14,.58)}
  .cpslip,.cpactive{margin-top:9px;padding:11px;display:grid;gap:8px}.cpsliphead,.cpactivehead{display:flex;align-items:center;gap:8px}.cpsliphead b,.cpactivehead b{color:#ffe08a;margin-right:auto}.cpsliplist,.cpactivelist{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:5px}.cpslipbet,.cpactivebet{display:grid;grid-template-columns:1fr auto;gap:2px 7px;border:1px solid #4e3c20;border-radius:8px;padding:7px;background:rgba(13,9,4,.72);font-size:11px}.cpslipbet b,.cpactivebet b{color:#ebd592}.cpslipbet small,.cpactivebet small{color:#a99b78}.cpslipbet button,.cpactivebet button{grid-row:1/3;grid-column:2;align-self:center;border:0;background:transparent;color:#d8a17d;cursor:pointer;font-size:14px}.cpactivebet.locked button{color:#897e62;cursor:not-allowed}.cpslipfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cpslipfoot strong{color:#ffe08a;margin-right:auto}.cpresult{padding:13px;display:grid;gap:8px}.cpresult h3{margin:0;color:#ffe08a}.cpoutcomes{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:5px}.cpoutcome{border:1px solid #4b3a20;border-radius:8px;padding:7px;color:#bbae89;font-size:11px}.cpoutcome.won{border-color:#4e9c64;background:rgba(19,78,41,.38);color:#c8f1d2}.cpproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:11px;font-size:11px;color:#bcd9c2;border-color:#356f47}.cpproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.cpproof b{color:#d7f8df}.cprules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.cprule{border:1px solid #48391e;border-radius:9px;padding:7px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:10px;text-align:center}.cprule b{display:block;color:#ecd28b;margin-bottom:2px}
  @keyframes cpthrow{0%{transform:translateY(-22px) rotate(-18deg);opacity:.5}65%{transform:translateY(4px) rotate(6deg)}100%{transform:none;opacity:1}}
  @media(max-width:780px){.cpstage{grid-template-columns:1fr}.cpdicepanel{position:relative;top:auto}.cpstats{justify-content:flex-start}.cprules{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:520px){.cpapp{gap:8px}.cpcommit{grid-template-columns:auto minmax(0,1fr);padding:7px 9px}.cpcommit .btn{grid-column:1/3;width:100%}.cpfelt{padding:8px}.cpzones{grid-template-columns:1fr}.cpzone{padding:6px}.cpsliplist,.cpactivelist{grid-template-columns:1fr}.cpproof{grid-template-columns:1fr}.cpproof .btn{width:100%}.cpdie{width:70px;height:70px}}
  @media(prefers-reduced-motion:reduce){.cpdie.rolled{animation:none}.cpchip[aria-pressed=true]{transform:none}}
  /* Verifiable Baccarat Salon: exact Punto Banco law and honest roads. */
  .bcapp{width:min(1180px,100%);margin:0 auto;display:grid;gap:11px}.bctop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.bcintro{flex:1;min-width:250px}.bcintro h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}.bcintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.bcstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.bcstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.bcstat b{color:#ffe08a}.bcbusy{opacity:.62;pointer-events:none}
  /* Salon full-bleed: the four salon tables enter body.gamemode like every
     other game (K: no fraction-of-screen games). The apps widen, breathe to
     the viewport, and their intro prose compacts under the fixed pills. */
  body.gamemode .bjapp,body.gamemode .rtapp,body.gamemode .cpapp,body.gamemode .bcapp{width:min(1280px,100%);min-height:calc(100dvh - 64px);align-content:start;padding:0 4px 18px}
  body.gamemode .bjintro p,body.gamemode .rtintro p,body.gamemode .cpintro p,body.gamemode .bcintro p{font-size:12px;opacity:.8;margin:2px 0;max-width:640px}
  body.gamemode .bjintro h2,body.gamemode .rtintro h2,body.gamemode .cpintro h2,body.gamemode .bcintro h2{font-size:clamp(21px,3.4vw,30px)}
  body.gamemode .bjfelt{min-height:min(58vh,600px);min-height:min(58dvh,600px)}
  .bccommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.bcseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.bchash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bccommit.verified{border-color:#6ebb82}.bccommit.verified .bcseal{background:#164e2b;border-color:#79d591}
  .bcstage{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:12px;align-items:start}.bcroads,.bcfelt,.bcslip,.bcresult,.bcproof{border:1px solid #5a4320;border-radius:16px;background:linear-gradient(145deg,#21170a,#0d0905);box-shadow:0 14px 34px rgba(0,0,0,.32)}.bcroads{display:grid;gap:10px;padding:13px;position:sticky;top:8px}.bcroads h3{margin:0;color:#ffe08a;font-size:14px}.bcroadnote{color:#a99c79;font-size:10px}.bcroadscroll{overflow-x:auto;padding-bottom:3px}.bcroad{display:grid;grid-template-rows:repeat(6,25px);grid-auto-columns:25px;grid-auto-flow:column;gap:2px;min-width:max-content}.bcroadcell{width:25px;height:25px;border:1px solid #4c422e;border-radius:50%;display:grid;place-items:center;box-sizing:border-box;background:#130f09;color:#f8edce;font:900 9px sans-serif;position:relative}.bcroadcell.player{border-color:#4e8fd2;background:#173c66}.bcroadcell.banker{border-color:#d75d55;background:#782922}.bcroadcell.tie{border-color:#59aa69;background:#245e31}.bcroadcell em{position:absolute;right:-3px;bottom:-3px;min-width:12px;height:12px;border-radius:50%;display:grid;place-items:center;background:#2d753c;color:#fff;font:800 7px sans-serif;border:1px solid #9ce0a7}.bcroad.big .bcroadcell{background:transparent;border-width:3px}.bcroad.big .bcroadcell.player{border-color:#4c9ce5}.bcroad.big .bcroadcell.banker{border-color:#e25d55}.bcroad.big .bcroadcell em{right:4px;bottom:4px}
  .bcfelt{padding:13px;background:radial-gradient(ellipse at 50% 12%,#277b58,#0d4533 70%,#07271d);border-color:#84622e;box-shadow:inset 0 0 70px rgba(0,0,0,.4),0 14px 34px rgba(0,0,0,.32)}.bcshoe{display:flex;justify-content:center;gap:8px;margin:2px 0 11px;color:#d7ca9c;font:700 10px var(--serif);letter-spacing:.12em}.bchands{display:grid;grid-template-columns:1fr 1fr;gap:9px}.bchand{min-height:152px;border:1px solid rgba(255,255,255,.26);border-radius:17px;padding:11px;text-align:center;background:rgba(4,31,23,.66)}.bchand.player{border-color:#4c8fc7}.bchand.banker{border-color:#c75851}.bchand h3{margin:0 0 7px;font-size:15px}.bchand.player h3{color:#9bd1ff}.bchand.banker h3{color:#ffaaa3}.bctotal{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#120e08;border:1px solid #d5b35d;color:#ffe4a0;font:900 17px var(--serif);margin-bottom:8px}.bccards{display:flex;justify-content:center;gap:5px;min-height:67px}.bccard{width:45px;height:63px;border-radius:7px;border:1px solid #b9aa8c;background:linear-gradient(145deg,#fffdf4,#e4dbc6);color:#211b11;display:grid;grid-template-rows:auto 1fr;padding:5px;box-sizing:border-box;text-align:left;font:900 13px var(--serif);box-shadow:0 5px 11px rgba(0,0,0,.42);animation:bcdeal .3s ease-out both}.bccard.red{color:#a4252b}.bccard span:last-child{align-self:center;justify-self:center;font-size:22px}.bccard.back{background:repeating-linear-gradient(45deg,#173b65,#173b65 5px,#245381 5px,#245381 10px);border:3px double #e3c77d}.bccards .bccard:nth-child(2){animation-delay:.07s}.bccards .bccard:nth-child(3){animation-delay:.14s}.bcwinner{margin:10px auto 0;width:max-content;max-width:100%;border:1px solid #d7b259;border-radius:999px;padding:5px 12px;background:#34230d;color:#ffe5a4;font:900 12px var(--serif)}
  .bcchips{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin:12px 0}.bcchips b{margin-right:auto;color:#f4dda0}.bcchip{width:38px;height:38px;border-radius:50%;border:3px dashed rgba(255,255,255,.72);background:#7c2b25;color:white;font:800 11px var(--serif);box-shadow:0 3px 8px rgba(0,0,0,.45);cursor:pointer}.bcchip:nth-child(2n){background:#244f7d}.bcchip:nth-child(3n){background:#86651b}.bcchip[aria-pressed=true]{outline:3px solid #ffe08a;outline-offset:2px;transform:translateY(-2px)}.bczones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.bczone{min-height:80px;border:1px solid rgba(255,255,255,.32);border-radius:12px;background:rgba(5,35,25,.72);color:#f4ead0;padding:8px;cursor:pointer;position:relative;text-align:left}.bczone.player{border-color:#5796c9}.bczone.banker{border-color:#c55a53}.bczone.tie{border-color:#5a9e67}.bczone b,.bczone small{display:block}.bczone small{margin-top:4px;color:#b8cbae;font-size:9px;line-height:1.3}.bczone em{position:absolute;right:5px;top:5px;min-width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e0b749;color:#241503;font:800 8px sans-serif}.bcpairs{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.bcpairs .bczone{min-height:62px}
  .bcslip{margin-top:10px;padding:11px;display:grid;gap:8px}.bcsliphead{display:flex;align-items:center;gap:8px}.bcsliphead b{color:#ffe08a;margin-right:auto}.bcsliplist{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:5px}.bcslipbet{display:grid;grid-template-columns:1fr auto;gap:2px 7px;border:1px solid #4e3c20;border-radius:8px;padding:7px;background:rgba(13,9,4,.72);font-size:11px}.bcslipbet b{color:#ebd592}.bcslipbet small{color:#a99b78}.bcslipbet button{grid-row:1/3;grid-column:2;border:0;background:transparent;color:#d8a17d;cursor:pointer;font-size:16px}.bcslipfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bcslipfoot strong{color:#ffe08a;margin-right:auto}.bcresult{padding:13px;display:grid;gap:8px}.bcresult h3{margin:0;color:#ffe08a}.bcwins{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:5px}.bcwin{border:1px solid #4b3a20;border-radius:8px;padding:7px;color:#bbae89;font-size:11px}.bcwin.won{border-color:#4e9c64;background:rgba(19,78,41,.38);color:#c8f1d2}.bcwin.push{border-color:#6f8eae;background:rgba(27,55,82,.4);color:#cde3f7}.bcproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:11px;font-size:11px;color:#bcd9c2;border-color:#356f47}.bcproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.bcproof b{color:#d7f8df}.bcrules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.bcrule{border:1px solid #48391e;border-radius:9px;padding:7px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:10px;text-align:center}.bcrule b{display:block;color:#ecd28b;margin-bottom:2px}
  .bcstage,.bcstage>*,.bcroads,.bcfelt,.bchands,.bchand,.bcproof>*{min-width:0;max-width:100%;box-sizing:border-box}.bcroadscroll{min-width:0;max-width:100%}
  @keyframes bcdeal{from{opacity:0;transform:translateY(-14px) rotate(-5deg)}to{opacity:1;transform:none}}
  @media(max-width:780px){.bcstage{grid-template-columns:1fr}.bcroads{position:relative;top:auto}.bcstats{justify-content:flex-start}.bcrules{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:520px){.bcapp{gap:8px}.bctop{display:grid;grid-template-columns:minmax(0,1fr)}.bcintro{min-width:0;max-width:100%}.bcstats{min-width:0;max-width:100%;justify-content:flex-start}.bccommit{grid-template-columns:auto minmax(0,1fr);min-width:0;max-width:100%;box-sizing:border-box;padding:7px 9px}.bccommit .btn{grid-column:1/3;width:100%;min-width:0}.bcfelt{padding:8px}.bchands{gap:5px}.bchand{padding:7px;min-height:143px}.bccard{width:39px;height:56px;padding:4px}.bczones{grid-template-columns:1fr 1fr}.bczone.tie{grid-column:1/-1}.bcsliplist{grid-template-columns:1fr}.bcproof{grid-template-columns:1fr}.bcproof .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.bccard{animation:none}.bcchip[aria-pressed=true]{transform:none}}
  /* Live Hold'em: authenticated play-chip tables. */
  .pkapp{width:min(1180px,100%);min-height:calc(100dvh - 78px);margin:0 auto;display:flex;flex-direction:column;gap:12px}
  .pktbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:4px 2px}.pktbar h2{margin:0;flex:1;font-size:clamp(22px,4vw,34px);color:#ffe5a0}
  .pkbadge{border:1px solid rgba(240,196,104,.42);border-radius:999px;padding:5px 10px;background:rgba(20,14,6,.72);color:#e8d9ac;font-size:12px;font-weight:700}.pkstatus{min-height:22px;color:#d6c99f;font-size:13px;text-align:center}
  .pklobby{display:grid;grid-template-columns:minmax(230px,320px) 1fr;gap:14px;align-items:start}.pkpanel{border:1px solid #59431f;border-radius:16px;background:linear-gradient(145deg,rgba(34,24,10,.96),rgba(13,9,5,.98));padding:16px;box-shadow:0 14px 34px rgba(0,0,0,.34)}
  .pkpanel h3{margin:0 0 8px;color:#ffe08a;font-family:var(--serif);font-size:20px}.pkform{display:grid;gap:9px}.pkform label{display:grid;gap:4px;color:#d8c99b;font-size:12px;font-weight:700}.pkform input,.pkform select{width:100%;box-sizing:border-box;background:#120d07;border:1px solid #5d4726;border-radius:9px;color:#f6e9c5;padding:9px 10px;font:inherit}
  .pkchoices{display:grid;gap:8px}.pktablepick{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;padding:12px;border:1px solid #4c3a20;border-radius:12px;background:rgba(22,16,8,.86);color:#f3e6c4;cursor:pointer}.pktablepick:hover,.pktablepick:focus-visible{border-color:#d5a844;background:#2b1e0c;outline:2px solid rgba(240,196,104,.35)}.pktablepick b{color:#ffe08a}.pktablepick small{color:#bcae84}.pktablepick span:last-child{grid-row:1/3;grid-column:2;align-self:center;color:#f0c468;font-weight:800}.pkempty{text-align:center;color:#a99a75;padding:30px 12px;border:1px dashed #4c3a20;border-radius:12px}
  .pkfelt{position:relative;flex:1;min-height:520px;border:9px solid #5a3b1a;border-radius:46%/38%;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#24764a 0%,#145231 48%,#0a2b1a 100%);box-shadow:inset 0 0 90px rgba(0,0,0,.55),0 20px 52px rgba(0,0,0,.48),0 0 0 2px #987036}.pkfelt::before{content:"PLATO'S PLAZA";position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);font-family:var(--serif);font-size:clamp(15px,2.3vw,27px);letter-spacing:.2em;color:rgba(255,235,178,.12);white-space:nowrap}
  .pkseats{position:absolute;inset:12px;pointer-events:none}.pkseat{position:absolute;width:min(150px,28%);min-height:86px;pointer-events:auto;text-align:center;padding:8px 6px;border-radius:13px;background:rgba(5,18,11,.88);border:1px solid rgba(255,255,255,.13);box-shadow:0 7px 18px rgba(0,0,0,.42);box-sizing:border-box}.pkseat.me{border-color:#f0c468;box-shadow:0 0 0 2px rgba(240,196,104,.3),0 8px 22px rgba(0,0,0,.5)}.pkseat.turn{border-color:#fff0a5;animation:pkturn 1.35s ease-in-out infinite}.pkseat.away{opacity:.58}.pkseat.empty{display:grid;place-items:center;color:#8c8063;border-style:dashed;background:rgba(5,18,11,.38)}
  @keyframes pkturn{50%{box-shadow:0 0 0 4px rgba(255,240,165,.28),0 8px 22px rgba(0,0,0,.5)}}
  .pkseat .pcards{min-height:35px}.pkseat .pcard{width:25px;height:35px}.pkseat .pname{margin-top:3px}.pkseat .pkmeta{font-size:10.5px;color:#c7dfc8;line-height:1.3}.pkcenter{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;width:min(62%,560px);z-index:2}.pkboard{display:flex;gap:clamp(3px,1vw,8px)}.pkboard .pcard{width:clamp(31px,5vw,46px);height:clamp(44px,7vw,64px)}.pkpot{background:rgba(5,20,12,.78);border:1px solid rgba(255,229,160,.3);border-radius:999px;padding:5px 13px;color:#ffe5a0;font-weight:800;font-size:13px}
  .pkcontrols{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center;padding:8px 4px}.pkcontrols input[type=range]{min-width:150px;flex:1;max-width:360px;accent-color:#e2b34e}.pkamount{min-width:58px;color:#ffe08a;font-weight:800;text-align:center}.pkfoot{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center}.pkfoot .muted{font-size:12px}
  @media(max-width:720px){.pklobby{grid-template-columns:1fr}.pkfelt{min-height:480px;border-width:6px;border-radius:34px}.pkseats{inset:8px}.pkseat{width:34%;min-height:68px;padding:5px 4px}.pkcenter{width:64%;top:49%}.pkseat .pcards{display:none}.pkseat .pname{font-size:10.5px}.pkseat .pstack,.pkseat .pkmeta{font-size:9.5px}}
  @media(prefers-reduced-motion:reduce){.pkseat.turn{animation:none;box-shadow:0 0 0 3px rgba(255,240,165,.35)}}
  .pkhistory{position:fixed;inset:0;z-index:4200;display:grid;place-items:center;padding:14px;background:rgba(4,3,2,.86);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
  .pkhistorybox{width:min(920px,100%);max-height:92dvh;overflow:auto;border:1px solid #745728;border-radius:16px;background:linear-gradient(#1d150b,#0d0905);box-shadow:0 28px 80px rgba(0,0,0,.72);padding:16px}
  .pkhistoryhead{display:flex;align-items:center;gap:10px;position:sticky;top:-16px;z-index:2;background:#1d150b;padding:12px 0;border-bottom:1px solid #4b381d}.pkhistoryhead h3{margin:0;flex:1;color:#ffe08a}.pkhistorylist{display:grid;gap:10px;margin-top:12px}
  .pkhand{border:1px solid #4b381d;border-radius:12px;background:rgba(12,9,5,.72);padding:12px}.pkhandsum{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.pkhandsum b{color:#ffe08a}.pkdeltas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin:9px 0}.pkdelta{border:1px solid #3f321d;border-radius:8px;padding:6px 8px;font-size:12px;color:#d7cba7}.pkdelta .up{color:#8fe2a4}.pkdelta .down{color:#f18d82}
  .pkreviewboard{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0}.pkreviewboard .pcard{width:30px;height:42px}.pkactionslog{margin:8px 0 0;padding-left:22px;color:#c9bea0;font-size:12px;line-height:1.55}.pkproof{font-family:var(--mono);font-size:10px;color:#8f8367;overflow-wrap:anywhere;margin-top:8px}
  /* Sit-and-go cups: private invitations plus opt-in public discovery above the durable referee. */
  .pktapp{width:min(1180px,100%);min-height:calc(100dvh - 78px);margin:0 auto;display:flex;flex-direction:column;gap:12px}.pktnav{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.pktnav .btn[aria-current=true]{border-color:#f0c468;color:#ffe8aa;background:#30200b}.pktlobby{display:grid;grid-template-columns:minmax(250px,330px) repeat(2,minmax(0,1fr));gap:14px;align-items:start}
  .pktintro{color:#cfc29b;font-size:13px;line-height:1.5;margin:0 0 12px}.pktinvite{display:flex;gap:7px;align-items:end;margin-top:12px}.pktinvite label{display:grid;gap:4px;flex:1;color:#d8c99b;font-size:12px;font-weight:700}.pktinvite input{width:100%;box-sizing:border-box;background:#120d07;border:1px solid #5d4726;border-radius:9px;color:#f6e9c5;padding:9px 10px;font:inherit;text-transform:lowercase}
  .pktcup,.pktrecord{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;padding:13px;border:1px solid #4c3a20;border-radius:12px;background:linear-gradient(135deg,rgba(39,27,10,.94),rgba(18,12,6,.94));color:#f3e6c4}.pktcup{cursor:pointer}.pktcup.open{border-color:#557d5b;background:linear-gradient(135deg,rgba(22,57,38,.94),rgba(11,27,20,.96))}.pktcup:hover,.pktcup:focus-visible{border-color:#e3b54e;outline:2px solid rgba(240,196,104,.34)}.pktcup b,.pktrecord b{color:#ffe08a}.pktcup small,.pktrecord small{color:#bcae84}.pktcup.open small{color:#b8d9bd}.pktcup .pktcount,.pktrecord .pktcount{grid-row:1/3;grid-column:2;align-self:center;color:#f0c468;font-weight:800}.pktfinderlaw{margin-top:10px;padding:9px;border:1px solid rgba(121,176,130,.28);border-radius:9px;background:rgba(35,82,52,.18);color:#b9d4bc;font-size:11px;line-height:1.45}.pktroster{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;margin:10px 0}.pktplayer{display:grid;grid-template-columns:auto 1fr auto;gap:3px 7px;align-items:center;border:1px solid #49391f;border-radius:10px;padding:8px;background:rgba(12,9,5,.65);font-size:12px}.pktplayer .pktplace{grid-row:1/3;font-size:20px}.pktplayer b{color:#f1e3bb;overflow:hidden;text-overflow:ellipsis}.pktplayer small{grid-column:2;color:#a99d7d}.pktplayer .pktstack{grid-row:1/3;grid-column:3;color:#ffe08a;font-weight:800}.pktplayer.away{opacity:.58}.pktplayer.out{border-color:#49312b;opacity:.68}
  .pktbanner{border:1px solid #6c5227;border-radius:12px;background:linear-gradient(110deg,rgba(63,43,13,.88),rgba(21,14,6,.9));padding:11px 14px;text-align:center;color:#f4dfaa}.pktbanner.break{border-color:#4f7292;background:linear-gradient(110deg,rgba(24,52,72,.86),rgba(12,20,29,.92));color:#cfeaff}.pktbanner.finish{border-color:#c89a32;box-shadow:0 0 30px rgba(232,183,69,.15)}.pkttables{display:flex;gap:7px;overflow-x:auto;padding:1px 2px 5px;scrollbar-width:none}.pkttables::-webkit-scrollbar{display:none}.pkttab{flex:0 0 auto;border:1px solid #4d3b20;border-radius:999px;background:#171007;color:#c9bc98;padding:7px 12px;font:inherit;font-size:12px;cursor:pointer}.pkttab[aria-selected=true]{border-color:#f0c468;background:#3a270d;color:#ffe8aa}.pktpodium{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;margin:10px 0}.pktpod{border:1px solid #5c4520;border-radius:12px;background:linear-gradient(#291c0b,#120c06);padding:14px;text-align:center}.pktpod:first-child{border-color:#e0b343;box-shadow:0 0 24px rgba(224,179,67,.2)}.pktpod .place{font-size:26px}.pktpod b{display:block;color:#ffe08a}.pktpod small{color:#bfae82}.pktconfirmed{animation:pktconfirm .28s ease-out}.pktconfirmed::after{content:"";position:absolute;inset:8%;border:3px solid rgba(255,225,135,.65);border-radius:46%/38%;pointer-events:none;animation:pktwave .36s ease-out forwards;z-index:8}@keyframes pktconfirm{50%{filter:brightness(1.12)}}@keyframes pktwave{to{inset:1%;opacity:0}}.pktround{animation:pktround .5s ease-out}@keyframes pktround{50%{box-shadow:inset 0 0 100px rgba(255,220,120,.22),0 20px 52px rgba(0,0,0,.48),0 0 0 3px #d7aa48}}
  .pktsafety{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.pktsafety button{min-height:36px;padding:4px 7px;font-size:10px}.pktchat{border:1px solid #4a3a22;border-radius:12px;background:#100b06;padding:10px;margin:10px 0}.pktchatlog{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow:auto;padding:3px}.pktmsg{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:start;padding:6px 7px;border-radius:8px;background:#1b130a}.pktmsg b{color:#e7c878;font-size:11px}.pktmsg span{font-size:12px;overflow-wrap:anywhere}.pktmsg button{min-height:28px;padding:3px 6px;font-size:9px}.pktchat form{display:flex;gap:7px;margin-top:8px}.pktchat input{min-width:0;flex:1;border:1px solid #5a4728;border-radius:8px;background:#090603;color:#f4ead4;padding:9px}
  .pktstay{border:1px solid #446c59;border-radius:12px;background:linear-gradient(120deg,rgba(22,62,48,.75),rgba(11,27,22,.9));padding:12px;margin:10px 0}.pktstay h3{margin:0;color:#b9f1d3}.pktstay p{margin:4px 0 9px;color:#a8c8b7;font-size:12px}.pktstay .pkcontrols{justify-content:flex-start}
  .pkttour{margin-top:14px;border-color:#7b6128;background:radial-gradient(circle at 12% 0,rgba(113,83,28,.24),transparent 36%),linear-gradient(145deg,rgba(34,24,10,.98),rgba(11,15,12,.98))}.pkttourhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.pkttourhead h3{font-size:24px}.pkttourhead p{max-width:720px}.pkttourgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:12px;margin-top:12px}.pkttourbox{min-width:0;border:1px solid rgba(225,183,80,.22);border-radius:12px;background:rgba(10,9,5,.56);padding:11px}.pkttourbox h4{margin:0 0 8px;color:#e9cf8b;font:800 15px var(--serif)}.pkttourrow{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border-bottom:1px solid rgba(255,255,255,.065);font-size:12px}.pkttourrow:last-child{border-bottom:0}.pkttourrow.viewer{border:1px solid rgba(142,205,151,.46);border-radius:8px;background:rgba(42,91,57,.24)}.pkttourrow strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f0dfb4}.pkttourrow small{display:block;color:#a99d7d}.pkttourpts{color:#ffe08a;font-weight:900;text-align:right}.pkttourfinish{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px;border-bottom:1px solid rgba(255,255,255,.065);font-size:12px}.pkttourfinish:last-child{border-bottom:0}.pkttourfinish small{color:#a99d7d}.pkttourlaw{margin-top:10px;color:#a99d7d;font-size:11px;line-height:1.5}
  @media(max-width:960px){.pktlobby{grid-template-columns:repeat(2,minmax(0,1fr))}.pktlobby .pkpanel:first-child{grid-row:span 2}}
  @media(max-width:720px){.pktlobby,.pkttourgrid{grid-template-columns:1fr}.pktlobby .pkpanel:first-child{grid-row:auto}.pktinvite{align-items:stretch;flex-direction:column}.pktroster{grid-template-columns:1fr}.pktapp .pkfelt{min-height:480px}.pktapp .pkseat{width:38%}.pktapp .pkcenter{width:58%}.pktchat form{flex-direction:column}.pktsafety button{min-height:44px}}
  @media(max-width:430px){.pktroster{grid-template-columns:1fr}.pktplayer{padding:7px}.pktnav{padding-right:54px}}
  @media(prefers-reduced-motion:reduce){.pktconfirmed,.pktconfirmed::after,.pktround{animation:none}.pktconfirmed::after{display:none}}
  /* ── Plaza doorways: travel to each room, Club-Penguin style ── */
  .hallhead{margin-bottom:10px}
  .hallhead h2{margin:6px 0 2px}
  /* Fortune Row: Fortuna's Reels. One disclosed drum, one world pot. */
  .slapp{width:min(1180px,100%);margin:0 auto;display:grid;gap:11px}.sltop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.slintro{flex:1;min-width:250px}.slintro h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}.slintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.slstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.slstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.slstat b{color:#ffe08a}.slbusy{opacity:.62;pointer-events:none}
  .slcommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.slseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.slhash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slcommit.verified{border-color:#6ebb82}.slcommit.verified .slseal{background:#164e2b;border-color:#79d591}
  .slpot{display:grid;gap:3px;border:1px solid #e7bd5b;border-radius:14px;padding:10px 13px;background:linear-gradient(120deg,rgba(84,58,13,.9),rgba(26,17,6,.94));box-shadow:inset 0 0 34px rgba(231,189,91,.14),0 10px 26px rgba(0,0,0,.35)}.slpot b{color:#ffe9ad;font:900 17px var(--serif);letter-spacing:.03em}.slpot .muted{font-size:11px}.sllast{color:#e8cf94;font-size:11px}.slpot.struck{animation:slpotpulse 1.15s ease-in-out 2}
  .slstage{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:12px;align-items:start}.slmachine,.slbet,.slpay,.slresult,.slproof{border:1px solid #5a4320;border-radius:16px;background:linear-gradient(145deg,#21170a,#0d0905);box-shadow:0 14px 34px rgba(0,0,0,.32)}
  .slmachine{position:relative;display:flex;gap:12px;justify-content:center;padding:22px 14px;background:radial-gradient(ellipse at 50% 12%,#333a63,#181c36 66%,#0c0e1e);border-color:#8a6b31}.slreel{width:min(108px,26vw);height:168px;overflow:hidden;border-radius:10px;border:3px solid #c49a4d;background:linear-gradient(180deg,#f4e9cf,#dccfae 50%,#c9b892);box-shadow:inset 0 10px 16px rgba(0,0,0,.34),inset 0 -10px 16px rgba(0,0,0,.34),0 6px 16px rgba(0,0,0,.5)}.slstrip{display:grid;grid-auto-rows:56px;transition:transform .3s cubic-bezier(.18,.85,.3,1.12);will-change:transform}.slcell{display:grid;place-items:center;font-size:34px;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.28))}.slspinning{animation:slspin .36s linear infinite;transition:none}.slreel.sllanded{animation:slland .34s cubic-bezier(.2,.8,.3,1.3)}.slwinline{position:absolute;left:8px;right:8px;top:50%;height:58px;transform:translateY(-50%);border-top:2px solid rgba(255,224,138,.55);border-bottom:2px solid rgba(255,224,138,.55);pointer-events:none;border-radius:6px}
  .slbet{margin-top:10px;padding:12px;display:grid;gap:8px}.slbet b{color:#f4dda0}.slbetrow{display:flex;gap:6px;flex-wrap:wrap}.slchip{min-height:38px;padding:6px 13px;border-radius:999px;border:3px dashed rgba(255,255,255,.72);background:#7c2b25;color:white;font:800 12px var(--serif);box-shadow:0 3px 8px rgba(0,0,0,.45);cursor:pointer}.slchip:nth-child(2){background:#244f7d}.slchip:nth-child(3){background:#86651b}.slchip.on{outline:3px solid #ffe08a;outline-offset:2px;transform:translateY(-2px)}.slcomphint,.vpcomphint{color:#cdb673;font-size:11px}
  .slpay{padding:12px;display:grid;gap:8px;align-content:start;position:sticky;top:8px}.slpay>b{color:#ffe08a}.slpaylist{display:grid;gap:4px}.slpayrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #48391e;border-radius:8px;padding:6px 8px;background:rgba(22,15,7,.72);color:#c8ba92;font-size:11px}.slpayrow b{color:#ecd28b;font-size:10px}.slpayglyph{font-size:13px;letter-spacing:.06em}.slpayrow.jack{border-color:#e7bd5b;background:rgba(84,58,13,.5)}.slpayrow.hit{border-color:#4e9c64;background:rgba(19,78,41,.38);color:#c8f1d2}
  .slresult{padding:13px;display:grid;gap:8px}.slresult h3{margin:0;color:#ffe08a}.slresult.struck{border-color:#e7bd5b;background:linear-gradient(120deg,rgba(96,66,14,.94),rgba(26,17,6,.94));box-shadow:inset 0 0 44px rgba(231,189,91,.2),0 14px 34px rgba(0,0,0,.32)}.slresult.struck h3{font-size:clamp(19px,3vw,26px)}.slproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:11px;font-size:11px;color:#bcd9c2;border-color:#356f47}.slproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.slproof b{color:#d7f8df}
  .slrules{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.slrule{border:1px solid #48391e;border-radius:9px;padding:7px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:10px;text-align:center}.slrule b{display:block;color:#ecd28b;margin-bottom:2px}
  @keyframes slspin{from{transform:translateY(0)}to{transform:translateY(-3584px)}}@keyframes slland{0%{transform:translateY(-3px)}55%{transform:translateY(2px)}100%{transform:none}}@keyframes slpotpulse{0%,100%{box-shadow:inset 0 0 34px rgba(231,189,91,.14),0 10px 26px rgba(0,0,0,.35)}50%{box-shadow:inset 0 0 60px rgba(231,189,91,.4),0 10px 30px rgba(0,0,0,.4)}}
  @media(max-width:760px){.slstage{grid-template-columns:1fr}.slpay{position:relative;top:auto}.slstats{justify-content:flex-start}.slrules{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @media(max-width:520px){.slapp{gap:8px}.slcommit{grid-template-columns:auto minmax(0,1fr);padding:7px 9px}.slcommit .btn{grid-column:1/3;width:100%}.slmachine{gap:8px;padding:16px 8px}.slreel{height:150px}.slstrip{grid-auto-rows:50px}.slcell{font-size:30px}.slwinline{height:52px}.slrules{grid-template-columns:repeat(2,minmax(0,1fr))}.slproof{grid-template-columns:1fr}.slproof .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.slspinning{animation:none}.slstrip{transition:none}.slreel.sllanded{animation:none}.slpot.struck{animation:none}.slchip.on{transform:none}}
  /* Fortune Row: Draw Poker, Jacks or Better on a sealed shuffle. */
  .vpapp{width:min(1180px,100%);margin:0 auto;display:grid;gap:11px}.vptop{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.vpintro{flex:1;min-width:250px}.vpintro h2{margin:2px 0;color:#ffe4a0;font-size:clamp(25px,4.8vw,40px)}.vpintro p{margin:3px 0;color:#c8bb96;font-size:13px;line-height:1.5}.vpstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.vpstat{border:1px solid #66502b;border-radius:999px;padding:5px 9px;background:#171006;color:#d8c99c;font-size:11px}.vpstat b{color:#ffe08a}.vpbusy{opacity:.62;pointer-events:none}
  .vpcommit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(240,196,104,.35);border-radius:13px;padding:9px 11px;background:linear-gradient(100deg,rgba(42,29,10,.92),rgba(13,10,6,.94));font-size:11px}.vpseal{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #d4a943;background:#4b3411;color:#ffe08a;font-size:17px}.vphash{font-family:ui-monospace,Consolas,monospace;color:#d8c99c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vpcommit.verified{border-color:#6ebb82}.vpcommit.verified .vpseal{background:#164e2b;border-color:#79d591}
  .vpstage{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,270px);gap:12px;align-items:start}.vpfelt,.vpbet,.vppay,.vpresult,.vpproof{border:1px solid #5a4320;border-radius:16px;background:linear-gradient(145deg,#21170a,#0d0905);box-shadow:0 14px 34px rgba(0,0,0,.32)}
  .vpfelt{padding:20px 12px 14px;background:radial-gradient(ellipse at 50% 15%,#1c7347,#0d4229 70%,#08281a);border-color:#84622e;box-shadow:inset 0 0 65px rgba(0,0,0,.38),0 14px 34px rgba(0,0,0,.32)}.vphand{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.vpslot{position:relative;padding-top:12px}.vpslot[role=button]{cursor:pointer}.vpslot[role=button]:hover .pcard{transform:translateY(-3px)}.vpslot .pcard{transition:transform .16s ease,box-shadow .16s ease}.vpslot.held .pcard{transform:translateY(-7px);box-shadow:0 0 0 3px #ffe08a,0 10px 20px rgba(0,0,0,.5)}.vphold{position:absolute;top:-2px;left:50%;transform:translateX(-50%);display:none;background:#e0b749;color:#241503;border:1px solid #fff3c1;border-radius:999px;padding:1px 8px;font:800 9px sans-serif;letter-spacing:.08em}.vpslot.held .vphold{display:block}.vpguide{text-align:center;margin-top:9px;font-size:11px}
  .vpbet{margin-top:10px;padding:12px;display:grid;gap:8px}.vpbet b{color:#f4dda0}.vpbetrow{display:flex;gap:6px;flex-wrap:wrap}.vpchip{width:52px;height:38px;border-radius:999px;border:3px dashed rgba(255,255,255,.72);background:#7c2b25;color:white;font:800 12px var(--serif);box-shadow:0 3px 8px rgba(0,0,0,.45);cursor:pointer}.vpchip:nth-child(2){background:#244f7d}.vpchip:nth-child(3){background:#3c6e31}.vpchip:nth-child(4){background:#86651b}.vpchip.on{outline:3px solid #ffe08a;outline-offset:2px;transform:translateY(-2px)}
  .vppay{padding:12px;display:grid;gap:8px;align-content:start;position:sticky;top:8px}.vppay>b{color:#ffe08a}.vppaylist{display:grid;gap:4px}.vppayrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #48391e;border-radius:8px;padding:6px 8px;background:rgba(22,15,7,.72);color:#c8ba92;font-size:11px}.vppayrow b{color:#ecd28b}.vppayrow.hit{border-color:#4e9c64;background:rgba(19,78,41,.38);color:#c8f1d2}
  .vpresult{padding:13px;display:grid;gap:8px}.vpresult h3{margin:0;color:#ffe08a}.vpresult.royal{border-color:#e7bd5b;background:linear-gradient(120deg,rgba(96,66,14,.94),rgba(26,17,6,.94));box-shadow:inset 0 0 44px rgba(231,189,91,.2),0 14px 34px rgba(0,0,0,.32)}.vpresult.royal h3{font-size:clamp(19px,3vw,26px)}.vpproof{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:center;padding:11px;font-size:11px;color:#bcd9c2;border-color:#356f47}.vpproof code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8fe2a3}.vpproof b{color:#d7f8df}
  .vprules{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.vprule{border:1px solid #48391e;border-radius:9px;padding:7px;background:rgba(22,15,7,.72);color:#bfb28e;font-size:10px;text-align:center}.vprule b{display:block;color:#ecd28b;margin-bottom:2px}
  @media(max-width:760px){.vpstage{grid-template-columns:1fr}.vppay{position:relative;top:auto}.vpstats{justify-content:flex-start}.vprules{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @media(max-width:520px){.vpapp{gap:8px}.vpcommit{grid-template-columns:auto minmax(0,1fr);padding:7px 9px}.vpcommit .btn{grid-column:1/3;width:100%}.vpfelt{padding:14px 6px 10px}.vphand{gap:5px}.vprules{grid-template-columns:repeat(2,minmax(0,1fr))}.vpproof{grid-template-columns:1fr}.vpproof .btn{width:100%}}
  @media(prefers-reduced-motion:reduce){.vpslot.held .pcard,.vpchip.on{transform:none}.vpslot .pcard{transition:none}}
  body.gamemode .slapp,body.gamemode .vpapp{width:min(1280px,100%);min-height:calc(100dvh - 64px);align-content:start;padding:0 4px 18px}
  body.gamemode .slintro p,body.gamemode .vpintro p{font-size:12px;opacity:.8;margin:2px 0;max-width:640px}
  body.gamemode .slintro h2,body.gamemode .vpintro h2{font-size:clamp(21px,3.4vw,30px)}
  /* House players at the live tables: labeled seats and the host's stand-down. */
  .pkseat .pkhouse{font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#d9b96a;background:rgba(84,58,13,.55);border:1px solid rgba(231,189,91,.5);border-radius:999px;padding:1px 6px;margin-top:2px}
  .pkseat .pkbotx{margin-top:3px;border:1px solid #6b5326;border-radius:999px;background:rgba(20,13,5,.8);color:#cdb673;font-size:9px;padding:2px 7px;cursor:pointer}
  .pkseat .pkbotx:hover{border-color:#e7bd5b;color:#ffe08a}
  /* ARENA_SLICE_END 07-callbar-tapjuice-salons */
  /* ARENA_SLICE_START 08-doorways-worldmap-cards -- spliced from arena-css/08-doorways-worldmap-cards.css; edit that file, not this region */
  .pportal{position:absolute;cursor:pointer;text-align:center;will-change:transform}
  /* Each "room" is a lit doorway set into a little building — you walk up and in,
     not tap an app tile. Arched top, warm glow spilling out, a stone/wood frame. */
  /* Each "room" is a little BUILDING you walk into — a pitched roof, a plaster
     wall with a signboard + windows, and a warm-lit doorway. A town of shops. */
  .pportal .pbuild{position:relative;width:90px;height:98px;margin:0 auto;transition:transform .16s,filter .16s;filter:drop-shadow(0 10px 12px rgba(0,0,0,.55))}
  .pportal .pbuild::after{content:"";position:absolute;left:9%;right:9%;bottom:-8px;height:12px;border-radius:50%;background:rgba(0,0,0,.42);filter:blur(5px);z-index:-1}
  .pportal .proof{position:absolute;left:-8px;right:-8px;top:0;height:28px;background:linear-gradient(var(--roof1,#c0673a),var(--roof2,#98492a));clip-path:polygon(0 100%,15% 0,85% 0,100% 100%)}
  .pportal .proof::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(0,0,0,.22)}
  .pportal .pwall{position:absolute;left:3px;right:3px;top:24px;bottom:0;background:linear-gradient(#f8e7bf,#e7c885);border:2px solid #7c5a2c;border-top:none;border-radius:0 0 7px 7px;box-shadow:inset 0 -12px 16px rgba(140,100,50,.28)}
  .pportal .pwall::before,.pportal .pwall::after{content:"";position:absolute;top:12px;width:12px;height:14px;border-radius:2px;background:linear-gradient(#ffe3a2,#e8a54e);box-shadow:inset 0 0 0 1.5px rgba(90,60,30,.6),0 0 9px rgba(255,200,110,.55);animation:pwinflick 3.4s ease-in-out infinite}
  .pportal .pwall::after{animation-delay:1.3s}
  @keyframes pwinflick{0%,100%{opacity:1}50%{opacity:.72}}
  .pportal .pwall::before{left:8px}
  .pportal .pwall::after{right:8px}
  .pportal .psign{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:34px;height:27px;border-radius:7px;background:linear-gradient(#3a2a15,#241a0c);border:1.5px solid #d0a340;display:grid;place-items:center;font-size:18px;line-height:1;box-shadow:0 2px 4px rgba(0,0,0,.45),inset 0 0 6px rgba(0,0,0,.5);z-index:2}
  .pportal .psign svg{width:19px;height:19px;display:block}
  .pportal .pentry{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:30px;height:36px;border-radius:15px 15px 0 0;background:radial-gradient(130% 100% at 50% 122%,#ffe1a2 0%,#c9843a 42%,#4a2f16 82%);border:2.5px solid #6f4e24;border-bottom:none;box-shadow:inset 0 6px 11px rgba(0,0,0,.55)}
  .pportal .plabel{font-size:11.5px;color:#fff3d6;margin-top:10px;font-weight:800;white-space:nowrap;text-shadow:0 1px 2px #000,0 2px 7px rgba(0,0,0,.95)}
  .pportal .pbuild.bart{width:116px;height:108px;background:none}
  .pportal .pbuild.bart svg{width:100%;height:100%;display:block}
  .pportal:hover .pbuild{transform:translateY(-4px) scale(1.045);filter:drop-shadow(0 14px 16px rgba(0,0,0,.55)) brightness(1.06)}
  .pportal:hover .pentry{box-shadow:inset 0 6px 11px rgba(0,0,0,.4),0 0 15px rgba(255,200,100,.8)}
  .pportal:active .pbuild{transform:translateY(-1px) scale(1.01)}
  .pstall{cursor:pointer;text-align:center;filter:drop-shadow(0 8px 10px rgba(0,0,0,.38));transition:transform .16s,filter .16s}
  .pstall:hover,.pstall:focus-visible{transform:translate(-50%,-54%) scale(1.06)!important;filter:drop-shadow(0 10px 13px rgba(0,0,0,.45)) drop-shadow(0 0 10px rgba(255,205,92,.65));outline:none}
  .pstall:active{transform:translate(-50%,-51%) scale(1.02)!important}
  .pstall .plabel{margin-top:1px;font-size:11px;color:#fff3d6;font-weight:900;white-space:nowrap;text-shadow:0 1px 2px #000,0 2px 6px #000}
  /* ── The World Map (Whyville-style realm navigation) ── */
  .pdhmap{margin-left:auto;background:linear-gradient(#2a1f0f,#1a1208);border:1px solid #6d4c2a;color:#f3e3b0;border-radius:9px;padding:5px 12px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap;flex:0 0 auto}
  .pdhmap:hover{background:#38280f;border-color:#b98a34}
  .roommap{background:rgba(20,14,7,.82);border:1px solid #5c421f;color:#f0e2b6;border-radius:9px;min-width:34px;height:30px;cursor:pointer;font-size:15px;line-height:1;align-self:center}
  .roommap:hover{background:#33240f;border-color:#b98a34}
  .worldmap{position:fixed;inset:0;z-index:4000;display:grid;place-items:center;padding:14px;background:rgba(5,3,1,.82);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:wmin .2s ease}
  @keyframes wmin{from{opacity:0}to{opacity:1}}
  .wmcard{width:96%;max-width:940px;max-height:94vh;max-height:94dvh;display:flex;flex-direction:column;background:linear-gradient(#140f08,#0c0805);border:1px solid #4a3820;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.7);overflow:hidden}
  .wmhead{display:flex;align-items:baseline;gap:12px;padding:12px 16px;border-bottom:1px solid #3a2c17;background:linear-gradient(#1b1409,#140f08)}
  .wmtitle{font-family:var(--serif);font-weight:800;font-size:19px;color:#f3e3b0;letter-spacing:.3px}
  .wmsub{font-size:12.5px;color:#c9b58a;flex:1}
  .wmjoin{display:none;align-items:center;justify-content:center;min-height:34px;padding:5px 11px;border-radius:999px;border:1px solid #d9a13b;background:linear-gradient(#3d5da3,#243f7f);color:#fff3cf;font-size:11.5px;font-weight:800;white-space:nowrap;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.38)}
  .wmjoin.on{display:inline-flex}.wmjoin:hover{filter:brightness(1.12)}
  .wmx{margin-left:auto;background:transparent;border:1px solid #4a3820;color:#e8d9ac;border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:14px;flex:0 0 auto}
  .wmx:hover{background:#241a0d}
  .wmscroll{overflow:auto;-webkit-overflow-scrolling:touch}
  .wmscene{position:relative;width:100%;min-width:600px;aspect-ratio:1000/640;overflow:hidden}
  .wmbg{position:absolute;inset:0}
  .wmbg svg{width:100%;height:100%;display:block}
  .wmdest{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;cursor:pointer;z-index:2;width:90px}
  .wmmed{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:23px;background:radial-gradient(circle at 50% 35%,#3a2c15,#171009);border:2px solid #b98a34;box-shadow:0 5px 14px rgba(0,0,0,.6),inset 0 2px 6px rgba(255,190,90,.28);transition:transform .15s,box-shadow .15s,border-color .15s}
  .wmmed svg{width:26px;height:26px}
  .wmdest:hover{z-index:5}
  .wmdest:hover .wmmed{transform:translateY(-3px) scale(1.1);border-color:#ffd479;box-shadow:0 12px 26px rgba(255,150,50,.5),inset 0 2px 8px rgba(255,200,110,.5)}
  .wmhub .wmmed{width:62px;height:62px;font-size:31px;border-color:#ffcf6e;box-shadow:0 8px 22px rgba(255,150,50,.4),inset 0 2px 8px rgba(255,200,110,.4)}
  .wmhub .wmmed svg{width:34px;height:34px}
  .wmlab{margin-top:5px;font-size:11.5px;font-weight:700;color:#f0e2b6;white-space:nowrap;text-shadow:0 1px 3px #000,0 0 5px #000}
  .wmhere .wmmed{border-color:#7ee0a0;box-shadow:0 0 0 3px rgba(126,224,160,.3),0 8px 20px rgba(0,0,0,.5)}
  .wmdest.wmbusy:not(.wmhere) .wmmed{border-color:#ffd479;animation:wmbusy 1.7s ease-in-out infinite}
  .wmdest.wmbusy:not(.wmhere) .wmlab{color:#ffd479}
  @keyframes wmbusy{0%,100%{box-shadow:0 0 0 0 rgba(255,212,121,.12),0 8px 20px rgba(0,0,0,.5)}50%{box-shadow:0 0 0 8px rgba(255,212,121,.2),0 10px 26px rgba(255,150,50,.42)}}
  .wmpop{margin-top:4px;font-size:11px;font-weight:800;color:#0a1a0f;background:linear-gradient(#8ef0ad,#4fce7f);border-radius:999px;padding:1px 8px;box-shadow:0 2px 6px rgba(0,0,0,.4)}
  .wmyou{margin-top:2px;font-size:9px;font-weight:700;color:#7ee0a0;text-transform:uppercase;letter-spacing:.5px}
  @media(max-width:520px){.wmhead{gap:7px;padding:10px}.wmtitle{font-size:16px}.wmsub{display:none}.wmjoin{font-size:11px;padding:5px 9px}}
  /* ── The Card Tables: Hearts & Spades (trick-taking vs AI) ── */
  .cgwrap{width:100%;max-width:1040px;margin:0 auto;padding:0 14px 22px;box-sizing:border-box;display:flex;flex-direction:column;min-height:calc(100dvh - 64px);position:relative}
  .cgtop{display:flex;align-items:center;gap:12px;padding:10px 2px 12px;max-width:920px;width:100%;margin:0 auto;box-sizing:border-box}
  .cgback{color:var(--gold2);text-decoration:none;font-size:14px;white-space:nowrap}
  .cgtitle{font-family:var(--serif);font-size:24px;color:#ffe5a0;flex:1;text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.7);letter-spacing:.4px}
  .cgmap{flex:0 0 auto}
  .cgtable{position:relative;width:min(100%,920px);height:clamp(430px,64dvh,720px);flex:1;margin:0 auto;border-radius:48%/34%;box-sizing:border-box;
    background:radial-gradient(ellipse at 50% 38%,#55ad70 0,#24764b 38%,#105033 68%,#072b1b 100%);border:13px solid #6d4521;
    outline:3px solid #d2a45b;outline-offset:-8px;box-shadow:0 28px 76px rgba(0,0,0,.65),inset 0 0 80px rgba(0,0,0,.48),inset 0 0 0 14px rgba(255,214,135,.08)}
  .cgseat{position:absolute;display:flex;flex-direction:column;align-items:center;gap:1px;width:88px;text-align:center;transition:filter .2s}
  .cgav{width:40px;height:40px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6))}
  .cgav svg{width:40px;height:40px;display:block}
  .cgname{font-size:11.5px;font-weight:700;color:#f0e6cf;text-shadow:0 1px 3px #000;white-space:nowrap}
  .cginfo{font-size:10.5px;color:#bfe6cf;background:rgba(0,0,0,.35);border-radius:8px;padding:0 6px;min-height:14px}
  .cgs0{left:50%;bottom:2%;transform:translateX(-50%)}
  .cgs1{left:2%;top:50%;transform:translateY(-50%)}
  .cgs2{left:50%;top:2%;transform:translateX(-50%)}
  .cgs3{right:2%;top:50%;transform:translateY(-50%)}
  .cgseat.cgturn{filter:none}
  .cgseat.cgturn .cgav{filter:drop-shadow(0 0 8px #ffd479) drop-shadow(0 2px 4px rgba(0,0,0,.6))}
  .cgseat.cgturn .cgname{color:#ffd479}
  .cgtrickzone{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52%;height:52%}
  .cgslot{position:absolute;width:56px;height:78px;left:50%;top:50%;transform:translate(-50%,-50%)}
  .cgslot0{top:78%}.cgslot1{left:22%}.cgslot2{top:22%}.cgslot3{left:78%}
  .cgstatus{position:absolute;left:50%;bottom:-2px;transform:translate(-50%,120%);white-space:nowrap;font-size:12.5px;color:#f0e6cf;background:rgba(8,6,3,.7);border:1px solid #4a3820;border-radius:999px;padding:3px 12px;max-width:92%;overflow:hidden;text-overflow:ellipsis}
  .cgcard{width:56px;height:78px;border-radius:9px;background:linear-gradient(145deg,#fffefa 0,#f8efd9 62%,#e8d4ae 100%);position:relative;box-shadow:0 6px 14px rgba(0,0,0,.52),inset 0 0 0 1px rgba(255,255,255,.9);border:1px solid #9b7848;flex:0 0 auto;user-select:none}
  .cgcard.red{color:#c02418}.cgcard.black{color:#1a1a1a}
  .cgcard.back{background:repeating-linear-gradient(45deg,#7a1f1f,#7a1f1f 5px,#8f2a2a 5px,#8f2a2a 10px);border-color:#601818}
  .cgc-corner{position:absolute;font-size:12px;font-weight:900;line-height:1;text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.65)}
  .cgc-corner.tl{top:4px;left:5px}.cgc-corner.br{bottom:4px;right:5px;transform:rotate(180deg)}
  .cgc-suit{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:27px;text-shadow:0 1px 0 rgba(255,255,255,.6)}
  .cghand{display:flex;justify-content:center;gap:2px;flex-wrap:nowrap;overflow-x:auto;padding:22px 12px 12px;-webkit-overflow-scrolling:touch;min-height:94px;touch-action:pan-x;scroll-padding:12px;max-width:940px;width:100%;margin:0 auto;box-sizing:border-box;background:linear-gradient(180deg,rgba(34,22,10,.1),rgba(34,22,10,.58));border-radius:0 0 22px 22px}
  .cghand .cgcard{margin-left:-7px;transition:transform .12s,box-shadow .12s,filter .12s}
  .cghand .cgcard:first-child{margin-left:0}
  .cgcard.cgclick{cursor:pointer;touch-action:pan-x}
  .cgcard.cglegal{box-shadow:0 0 0 2px #ffd479,0 3px 10px rgba(0,0,0,.5)}
  .cghand .cgcard.cglegal:hover{transform:translateY(-12px)}
  .cghand .cgcard.cgpicked{transform:translateY(-14px);box-shadow:0 0 0 2px #7ee0a0,0 6px 14px rgba(0,0,0,.5)}
  .cgcard.cgdragging{position:relative;z-index:8;filter:brightness(1.12);transform:translateY(-18px) scale(1.06);box-shadow:0 0 0 3px rgba(255,212,121,.72),0 12px 22px rgba(0,0,0,.52)}
  .cgcard.cgdropready{box-shadow:0 0 0 3px #7ee0a0,0 12px 22px rgba(0,0,0,.52)}
  .cgcard.cgdim{opacity:.5}
  .cgactions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;padding:8px 0 6px;min-height:44px}
  .cgbtn{padding:8px 16px}
  .cgselnote,.cgbidhint{font-size:12px;color:var(--muted)}
  .cgbidrow{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
  .cgbidbtn{min-width:38px;height:38px;border-radius:9px;border:1px solid #6d4c2a;background:linear-gradient(#241a0b,#140d05);color:#f3e3b0;font-weight:700;font-size:14px;cursor:pointer}
  .cgbidbtn:hover{border-color:#b98a34;background:#33240f}
  .cgbidbtn.sug{border-color:#ffd479;box-shadow:0 0 0 2px rgba(255,212,121,.25)}
  .cgbidhint{width:100%;text-align:center;margin-bottom:2px}
  .cgmodal{position:fixed;inset:0;z-index:3500;display:grid;place-items:center;padding:16px;background:rgba(5,3,1,.78);animation:wmin .2s ease}
  .cgmodcard{width:94%;max-width:420px;background:linear-gradient(#161009,#0d0906);border:1px solid #4a3820;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.7);padding:18px 18px 20px}
  .cgmodtitle{font-family:var(--serif);font-size:20px;color:#f3e3b0;text-align:center;margin-bottom:12px}
  .cgmoon{text-align:center;color:#ffd479;font-weight:700;margin-bottom:10px}
  .cgscoretbl{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}
  .cgscorerow{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;color:#e8dcc0;padding:3px 8px;border-radius:7px;background:rgba(255,255,255,.03)}
  .cgsc-round{color:var(--muted);flex:1;text-align:center}
  .cgsc-total{font-weight:800;color:#f3e3b0;min-width:44px;text-align:right}
  .cgteamhead{font-weight:700;color:#bfe6cf;font-size:12.5px;margin:8px 0 2px;border-top:1px solid #2a2013;padding-top:6px}
  .cgteamtotal{text-align:center;font-size:12.5px;color:#c9b58a;margin-bottom:8px}
  .cgwin{text-align:center;font-weight:800;color:#7ee0a0;font-size:15px;margin:6px 0 12px}
  @media (max-width:560px){.cgwrap{padding:0 5px 14px;min-height:calc(100dvh - 52px)}.cgtop{padding:8px 4px 10px}.cgtitle{font-size:20px}.cgcard{width:48px;height:68px;border-radius:8px}.cgslot{width:48px;height:68px}.cgc-suit{font-size:24px}.cgc-corner{font-size:11px}.cghand{padding:20px 8px 10px;min-height:84px;justify-content:flex-start}.cghand .cgcard{margin-left:-6px}.cgtable{width:100%;height:clamp(430px,61dvh,620px);border-width:9px;outline-width:2px;outline-offset:-6px;border-radius:30px}.cgseat{width:76px}.cgav,.cgav svg{width:44px;height:44px}.cgstatus{font-size:12px;bottom:6px;transform:translate(-50%,0);max-width:86%}}
  /* Oh Hell uses the same cards on a fast shared-foundation table. */
  .ohwrap{width:100%;max-width:1080px;min-height:calc(100dvh - 78px);margin:0 auto;padding:7px 12px 18px;box-sizing:border-box;position:relative}
  .ohboard{min-height:calc(100dvh - 112px);box-sizing:border-box;display:grid;grid-template-rows:minmax(150px,1fr) minmax(120px,.78fr) minmax(170px,1.15fr);gap:12px;padding:18px;border:12px solid #68421f;border-radius:36px;background:radial-gradient(ellipse at 50% 45%,#397d4e 0,#175536 52%,#092c1c 100%);outline:3px solid #c9974e;outline-offset:-8px;box-shadow:0 28px 78px rgba(0,0,0,.66),inset 0 0 75px rgba(0,0,0,.5),inset 0 0 0 13px rgba(255,224,154,.06)}
  .ohside{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:10px 14px;border-radius:18px;background:linear-gradient(180deg,rgba(8,19,12,.38),rgba(4,10,7,.62));border:1px solid rgba(240,200,115,.22);box-shadow:inset 0 0 24px rgba(0,0,0,.2)}
  .ohside.ohme{border-color:rgba(255,213,120,.55);background:linear-gradient(180deg,rgba(48,73,39,.5),rgba(9,25,15,.72));box-shadow:0 0 0 2px rgba(255,210,112,.1),inset 0 0 30px rgba(0,0,0,.28)}
  .ohhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 8px;color:#f8e7b8;font-size:13px;font-weight:800;text-shadow:0 2px 4px #000}
  .ohhead strong{font-family:var(--serif);font-size:17px;color:#ffd978}.ohhead span{font-size:12px;color:#c8dfc6;background:rgba(0,0,0,.35);border-radius:999px;padding:3px 9px}
  .ohcards{display:flex;align-items:flex-end;justify-content:center;gap:9px;min-width:0;overflow-x:auto;padding:5px 4px 8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .ohstack{display:flex;flex-direction:column;align-items:center;flex:0 0 auto;min-width:58px}
  .ohstack.ohgoal{padding-right:9px;margin-right:2px;border-right:1px solid rgba(255,220,145,.2)}
  .ohlabel{margin-top:5px;font-size:10.5px;font-weight:800;color:#dfd1aa;white-space:nowrap;text-transform:uppercase;letter-spacing:.35px;text-shadow:0 1px 3px #000}
  .ohcard{margin:0!important;transform:none!important}.ohcard.cgclick:hover{transform:translateY(-6px)!important}
  .ohfound{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:9px 12px;border-radius:20px;background:radial-gradient(ellipse at 50% 45%,rgba(72,139,85,.75),rgba(9,49,27,.82));border:2px solid rgba(255,213,120,.48);box-shadow:inset 0 0 38px rgba(0,0,0,.35),0 8px 20px rgba(0,0,0,.26)}
  .ohfoundhead{text-align:center;font-family:var(--serif);font-size:16px;font-weight:800;color:#ffe19a;text-shadow:0 2px 5px #000;margin-bottom:4px}
  .ohfoundationcards{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;overflow-x:auto;padding:4px;-webkit-overflow-scrolling:touch}
  .ohfoundslot{display:grid;place-items:center;min-width:0;border-radius:12px;isolation:isolate;--oh-suit:#ffe09a}
  .ohfoundslot.ohfoundationhit{animation:ohFoundationLift .46s cubic-bezier(.2,.82,.25,1);box-shadow:0 0 0 2px var(--oh-suit),0 0 24px color-mix(in srgb,var(--oh-suit) 72%,transparent)}
  .ohfan.ohworkhit{animation:ohWorkSettle .34s cubic-bezier(.18,.8,.28,1)}
  .ohfxflight{position:fixed;z-index:4600;pointer-events:none;margin:0;will-change:transform,opacity;filter:drop-shadow(0 14px 16px rgba(0,0,0,.58));transform-origin:top left}
  .ohfxflight .cgcard{position:absolute!important;left:0!important;margin:0!important;box-shadow:0 0 0 2px rgba(255,230,166,.72),0 8px 20px rgba(0,0,0,.45)!important}
  .ohfxflight.ohfxgo{transition:transform .38s cubic-bezier(.18,.84,.24,1),opacity .12s linear .31s;opacity:.38}
  .ohfxsnapback{transition:left .18s cubic-bezier(.2,.76,.28,1),top .18s cubic-bezier(.2,.76,.28,1),transform .18s ease!important;transform:rotate(0deg)!important}
  .ohfxcallout{position:fixed;z-index:4601;pointer-events:none;transform:translate(-50%,-50%);padding:4px 9px;border-radius:999px;border:1px solid var(--oh-suit,#ffe09a);background:rgba(16,11,7,.9);color:#fff2cb;font:900 11px/1 Georgia,'Times New Roman',serif;letter-spacing:.3px;text-shadow:0 1px 2px #000;box-shadow:0 5px 16px rgba(0,0,0,.45);animation:ohCallout .7s ease-out forwards}
  @keyframes ohFoundationLift{0%{transform:translateY(0) scale(1)}38%{transform:translateY(-13px) scale(1.09)}68%{transform:translateY(3px) scale(.98)}100%{transform:translateY(0) scale(1)}}
  @keyframes ohWorkSettle{0%{transform:translateY(-7px) rotate(-1deg)}55%{transform:translateY(3px) rotate(.5deg)}100%{transform:translateY(0) rotate(0)}}
  @keyframes ohCallout{0%{opacity:0;transform:translate(-50%,-25%) scale(.8)}18%{opacity:1;transform:translate(-50%,-58%) scale(1.04)}100%{opacity:0;transform:translate(-50%,-120%) scale(.96)}}
  .ohend{position:absolute;inset:7px 12px 18px;background:rgba(5,8,5,.82);display:flex;align-items:center;justify-content:center;border-radius:36px;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
  .ohendcard{background:linear-gradient(180deg,#2d2113,#140e08);border:2px solid rgba(236,194,104,.65);border-radius:18px;padding:24px;text-align:center;max-width:400px;box-shadow:0 24px 60px rgba(0,0,0,.7)}
  .ohfriends{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
  .ohjoinmenu{flex:1 0 100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:8px;border:1px solid rgba(232,193,90,.35);border-radius:11px;background:rgba(8,5,2,.72)}
  .ohjoinmenu input{text-transform:uppercase;letter-spacing:3px;text-align:center;background:rgba(0,0,0,.3);border:1px solid rgba(232,193,90,.35);border-radius:8px;color:#f5efdf;padding:8px 7px;font-weight:800;min-width:0}
  @media(prefers-reduced-motion:reduce){.ohfoundslot.ohfoundationhit,.ohfan.ohworkhit,.ohfxcallout{animation:none!important}.ohfxflight{display:none!important}.ohfxsnapback{transition:none!important}}
  @media(max-width:620px){.ohwrap{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);padding:4px 5px 10px;min-height:calc(100dvh - 50px);overflow-x:hidden}.ohboard{width:100%;max-width:100%;min-height:calc(100dvh - 58px);grid-template-rows:minmax(130px,.88fr) minmax(104px,.68fr) minmax(160px,1.08fr);gap:8px;padding:10px 7px;border-width:8px;outline-width:2px;outline-offset:-6px;border-radius:25px;overflow:hidden}.ohside{padding:7px 4px;border-radius:14px}.ohhead{margin:0 4px 4px}.ohhead strong{font-size:15px}.ohcards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));justify-content:stretch;gap:2px;padding:3px 0 6px;overflow-x:hidden;width:100%;max-width:100%}.ohstack{min-width:0;width:100%}.ohstack.ohgoal{padding-right:2px;margin-right:0}.ohlabel{width:100%;font-size:clamp(6.5px,2vw,8.5px);letter-spacing:0;text-align:center;overflow:hidden}.ohfound{padding:6px 4px;border-radius:15px}.ohfoundhead{font-size:14px;margin-bottom:1px}.ohfoundationcards{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));justify-items:center;gap:2px;overflow-x:hidden;width:100%;max-width:100%}.ohcard.cgcard{width:clamp(32px,10.2vw,40px);height:clamp(46px,14.6vw,58px)}.ohfoundationcards .ohcard.cgcard{width:clamp(28px,8.9vw,35px);height:clamp(40px,12.7vw,50px)}.ohfriends{display:grid;grid-template-columns:minmax(0,1fr) minmax(70px,.42fr);gap:6px;width:calc(100vw - 60px);max-width:calc(100vw - 60px);box-sizing:border-box;margin:6px 50px 6px 5px}.ohfriends>span{display:none}.ohfriends>.btn{width:100%;min-width:0;padding:9px 5px;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ohjoinmenu{grid-column:1 / -1}.ohend{inset:4px 5px 10px;border-radius:25px}}
  /* Bridge: auction strip, dummy fan, bid grid */
  .cgauction{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;padding:8px 4px 2px;font-size:12px;color:#d8c9a2}
  .cgauclbl{color:var(--muted);font-weight:700}
  .cgaucempty{color:var(--muted)}
  .cgaucbid{background:rgba(0,0,0,.35);border:1px solid #4a3820;border-radius:6px;padding:1px 7px;color:#f0e2b6;white-space:nowrap}
  .cgaucbid.red{color:#e88}
  .cgdummywrap{margin:6px auto 0;max-width:100%;padding:4px 6px;border-radius:12px;background:rgba(255,220,140,.05);border:1px dashed #4a3820;transition:box-shadow .2s,border-color .2s}
  .cgdummywrap.cgdummyactive{border-color:#ffd479;box-shadow:0 0 0 1px rgba(255,212,121,.3)}
  .cgdummylabel{text-align:center;font-size:11.5px;font-weight:700;color:#c9b58a;margin-bottom:2px}
  .cgdummyfan{min-height:56px;padding:4px 4px 2px}
  .cgdummyfan .cgcard{width:36px;height:51px}
  .cgbidgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;max-width:320px;margin:0 auto 8px}
  .cgbbtn{height:32px;border-radius:7px;border:1px solid #5c421f;background:linear-gradient(#241a0b,#140d05);color:#f3e3b0;font-weight:700;font-size:12.5px;cursor:pointer;padding:0}
  .cgbbtn.red{color:#f0a89e}
  .cgbbtn:hover:not(:disabled){border-color:#ffd479;background:#33240f}
  .cgbbtn:disabled{opacity:.28;cursor:default}
  .cgpass{display:block;margin:0 auto}
  .cgbrcontract{text-align:center;font-family:var(--serif);font-size:18px;color:#f3e3b0;margin-bottom:8px}
  .cgbrset{text-align:center;font-weight:700;color:#f0a89e;font-size:14px;margin:6px 0 12px}
  /* ── Defend Your Castle ── */
  /* ARENA_SLICE_END 08-doorways-worldmap-cards */
  /* ARENA_SLICE_START 09-stations-front-door -- spliced from arena-css/09-stations-front-door.css; edit that file, not this region */
  .dcwrap{position:fixed;inset:0;z-index:5;background:#241a12}
  .dcstage{position:absolute;inset:0;overflow:hidden}
  .dccanvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
  .dccanvas.grabbing{cursor:grabbing}
  .dccanvas.flickcharging{cursor:crosshair}
  .dcstage [hidden]{display:none!important}
  .dcoverlay{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));z-index:12;background:rgba(10,6,3,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .dccard{width:min(96%,1120px);max-height:calc(100% - 24px);max-height:calc(100dvh - max(28px,env(safe-area-inset-top)) - max(28px,env(safe-area-inset-bottom)));overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:linear-gradient(#1d150c,#0f0a06);border:1px solid #6d4c2a;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.65);padding:18px 18px 20px;text-align:center}
  .dccardh{font-family:var(--serif);font-size:22px;color:#f3e3b0;margin-bottom:6px}
  .dccardp{font-size:13.5px;color:#c9b58a;line-height:1.5;margin-bottom:12px}
  .dcbtn{padding:11px 26px;margin-top:6px;font-size:15px}
  /* The landscape tip. A recommendation, so it reads as guidance and not as a
     blocked door: no border, no button, no alarm colour. It sits under the
     mode buttons so it can never push the primary action off a short screen. */
  .dcrotate{display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 6px;padding:8px 10px;background:rgba(109,76,42,.16);border-radius:12px;font-size:12.5px;line-height:1.4;color:#d8c49a;text-align:left}
  .dcrotateicon{flex:none;font-size:17px;line-height:1}
  .dcshopcard{position:relative;width:min(98%,1600px);overflow:hidden;padding:14px 14px 16px}
  .dcshophead{position:sticky;top:-10px;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;margin:-6px -4px 6px;padding:6px 4px;background:linear-gradient(180deg,#1d150c 72%,rgba(29,21,12,.94));border-bottom:1px solid rgba(109,76,42,.72)}
  .dcshophead .dccardh{min-width:0;margin:0;text-align:left}
  .dcshopclose{display:grid;place-items:center;width:44px;height:44px;border:1px solid #806036;border-radius:10px;background:#171008;color:#f4e5b7;font-size:25px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .dcshopactions{position:sticky;bottom:-12px;z-index:3;margin:0 -4px -8px;padding:8px 4px max(2px,env(safe-area-inset-bottom));background:linear-gradient(0deg,#0f0a06 76%,rgba(15,10,6,.92))}
  .dcshopactions .dcbtn{margin:0;min-height:44px}
  .dcshop{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:2px 0 8px;align-items:start}
  .dcshopgroup{min-width:0;padding:7px;border:1px solid rgba(109,76,42,.78);border-radius:14px;background:linear-gradient(160deg,rgba(45,31,14,.72),rgba(17,11,6,.72));box-shadow:inset 0 1px rgba(255,230,170,.04)}
  .dcshopgroup.managers{border-color:rgba(150,114,184,.78);background:linear-gradient(160deg,rgba(47,31,56,.74),rgba(17,11,22,.74))}
  .dcshopgroup h3{min-height:30px;margin:0 0 6px;padding:0 3px 5px;border-bottom:1px solid rgba(109,76,42,.58);color:#f3e3b0;font:700 14px var(--serif);line-height:1.25}
  .dcshopgroupgrid{display:grid;grid-template-columns:1fr;gap:6px}
  .dcshopbtn{padding:8px 6px;border-radius:12px;border:1px solid #6d4c2a;background:linear-gradient(#241a0b,#140d05);color:#f3e3b0;font-weight:700;font-size:12px;line-height:1.3;cursor:pointer;text-align:center}
  .dcshopbtn b{display:block;font-size:15px;line-height:1.15}
  .dcshopbtn span{display:block;font-size:10.5px;color:#e0b23a;font-weight:600;margin-top:2px}
  .dcshopbtn .dcshopgate{display:block;margin-top:1px;color:#bca77c;font-size:9px;font-style:normal;font-weight:650;line-height:1.2}
  .dcshopbtn small{display:block;font-size:9.5px;color:#a08a5e;font-weight:500;line-height:1.28;margin-top:2px}
  .dcshopbtn .dcshopbrief{display:none}
  .dcshopbtn:hover:not(:disabled){border-color:#b98a34;background:#33240f}
  .dcshopbtn:disabled{opacity:.45;cursor:default}
  .dchudrail{position:absolute;z-index:7;left:14px;top:70px;right:86px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;pointer-events:none}
  /* Defend claims its own mode class (like asterion/phx/helios/aegisfleet) so
     the Plaza utility rail stops floating over the battlefield. With the rail
     gone, the panels that were reserving a 70-86px gutter for it can have that
     width back -- on a 390px phone that gutter was ~20% of the screen and it
     is what forced the status chips into three stacked rows. */
  body.defendmode .utilityrail{display:none!important}
  body.defendmode .dchudrail{right:14px}
  body.defendmode .dcarmory,body.defendmode .dcmproster{right:14px}
  @media (max-width:700px){body.defendmode .dchudrail{right:8px}body.defendmode .dcarmory,body.defendmode .dcmproster{right:8px}}
  /* iOS Safari zooms the page on a double tap. In a wave game the player DOES
     double tap -- buying twice, spamming a power, hitting "Next wave" -- and
     the zoom left them fighting a magnified battlefield they had to pinch back.
     manipulation keeps panning and pinch-zoom, and drops only the double-tap. */
  .dcbtn,.dcshopbtn,.dcshopclose,.dcarmorytab,.dcpausebtn,.dcsoundbtn,.dcarmoryclose,
  .dczeusbtn,.dctroopsbtn,.dchammerbtn,.dcflickbtn,
  .dcwavechip,.dcenemies,.dccasualties,.dcpurse,.ggnextportal{touch-action:manipulation}
  .dcwavechip,.dcenemies,.dccasualties,.dcpurse{display:inline-flex;align-items:center;min-height:34px;padding:6px 11px;border:1px solid rgba(224,178,58,.5);border-radius:999px;background:rgba(17,11,7,.86);box-shadow:0 4px 14px rgba(0,0,0,.3);color:#f3e3b0;font-size:12.5px;font-weight:750;text-shadow:0 1px 2px #000;white-space:nowrap;pointer-events:auto}
  .dcenemies{color:#ffb88a;border-color:rgba(226,108,61,.58)}.dccasualties{color:#ffd979}.dcpurse{color:#ffe69b}
  .dcarmorytab,.dcpausebtn,.dcsoundbtn{min-height:36px;padding:7px 13px;border:1px solid #8b642d;border-radius:10px;background:linear-gradient(#30210d,#170f07);box-shadow:0 4px 14px rgba(0,0,0,.32);color:#f4e5b7;font:700 12.5px system-ui,sans-serif;cursor:pointer;pointer-events:auto}
  .dcarmorytab:hover,.dcpausebtn:hover,.dcsoundbtn:hover{border-color:#e0b23a;background:linear-gradient(#413018,#201308)}
  .dcsoundbtn{min-width:44px;padding:5px 10px;font-size:16px;line-height:1}
  .dcarmorytab[aria-expanded="true"]{border-color:#e0b23a;box-shadow:0 0 0 2px rgba(224,178,58,.15),0 4px 14px rgba(0,0,0,.32)}
  .dcpausebtn{border-color:#8f7448;background:linear-gradient(#3b2d1b,#1d140b);color:#ffe2a0}
  .dcabilitydock{position:absolute;z-index:8;left:max(10px,env(safe-area-inset-left));bottom:calc(max(38px,9vh) + min(205px,33vh) + 12px);display:flex;flex-direction:column;align-items:stretch;gap:6px;width:min(184px,calc(100% - 98px));max-width:184px;padding:18px 7px 7px;border:1px solid rgba(219,181,95,.5);border-radius:16px;background:linear-gradient(145deg,rgba(20,13,28,.91),rgba(12,9,15,.86));box-shadow:0 10px 30px rgba(0,0,0,.42),inset 0 1px rgba(255,234,180,.08);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none}
  .dcpowerdocklabel{position:absolute;left:12px;top:4px;color:#d8b96d;font:800 8px system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;opacity:.9}
  .dczeusbtn,.dctroopsbtn,.dchammerbtn,.dcflickbtn{position:relative;display:grid;grid-template-columns:28px minmax(82px,1fr);grid-template-rows:auto auto;align-items:center;column-gap:6px;width:100%;min-width:0;min-height:48px;padding:6px 8px 5px;border:1px solid #765f9b;border-radius:12px;background:linear-gradient(#292039,#15101f);box-shadow:0 4px 13px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.04);color:#f1eaff;font:700 11px system-ui,sans-serif;text-align:left;cursor:pointer;pointer-events:auto;transform-origin:center;transition:border-color .16s,filter .16s,box-shadow .16s,transform .16s;-webkit-tap-highlight-color:transparent}
  .dczeusbtn:hover:not(:disabled),.dctroopsbtn:hover:not(:disabled),.dchammerbtn:hover:not(:disabled),.dcflickbtn:hover:not(:disabled){filter:brightness(1.18);transform:translateY(-2px)}
  .dcpowericon{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.08);font-size:19px;text-align:center}.dcpowercopy{display:block;min-width:0}.dcpowercopy strong,.dcpowercopy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dcpowercopy strong{font-size:10.5px;line-height:1.15}.dcpowercopy small{margin-top:2px;color:#cbbadd;font-size:8px;line-height:1.1;letter-spacing:.035em}.dcabilitydock kbd{grid-column:2;justify-self:start;margin-top:3px;padding:2px 5px;border:1px solid rgba(255,238,196,.42);border-bottom-width:2px;border-radius:5px;background:rgba(6,4,9,.62);color:#ffe5a0;font:800 7.5px system-ui,sans-serif;line-height:1;white-space:nowrap;text-transform:uppercase}
  .dczeusbtn{border-color:#697cba;background:linear-gradient(#242a52,#111326);color:#e3eaff}.dctroopsbtn{border-color:#487895;background:linear-gradient(#21455b,#10232e);color:#e1f5ff}.dchammerbtn{border-color:#7c91b3;background:linear-gradient(#344356,#18212e);color:#edf5ff}.dcflickbtn{border-color:#9a5cb0;background:linear-gradient(#442651,#211128);color:#f5dfff}
  .dczeusbtn:disabled,.dctroopsbtn:disabled,.dchammerbtn:disabled,.dcflickbtn:disabled{opacity:.56;cursor:default;filter:saturate(.58)}
  .dcabilitydock .ready{border-color:#ffe099;box-shadow:0 0 0 1px rgba(255,224,153,.25),0 0 20px rgba(210,151,255,.52),0 4px 13px rgba(0,0,0,.38);animation:dcPowerReady 1.45s ease-in-out infinite}
  .dcflickbtn.armed{border-color:#fff0af;background:linear-gradient(#65416f,#2c1834);box-shadow:0 0 0 2px rgba(255,232,161,.25),0 0 26px rgba(223,132,255,.75);animation:none}.dcabilitydock.flickarmed{border-color:rgba(239,183,255,.82);box-shadow:0 0 28px rgba(201,108,255,.26),0 10px 30px rgba(0,0,0,.42)}
  @keyframes dcPowerReady{0%,100%{transform:scale(.985)}50%{transform:scale(1.035)}}
  /* A backdrop tap outside the shop used to be silence. The card cannot close
     -- it is the only way forward -- so its primary control answers instead. */
  .dcnudge{animation:dcNudge .54s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 0 3px rgba(251,191,36,.55)}
  @keyframes dcNudge{0%,100%{transform:scale(1)}20%{transform:scale(1.08)}45%{transform:scale(.98)}72%{transform:scale(1.032)}}
  @media (prefers-reduced-motion:reduce){.dcnudge{animation:none}}
  .dcarmory{position:absolute;z-index:10;left:14px;right:70px;top:116px;width:auto;max-width:none;max-height:calc(100% - 132px);overflow:hidden;padding:12px;border:1px solid #71512a;border-radius:15px;background:linear-gradient(160deg,rgba(30,21,12,.98),rgba(10,7,5,.98));box-shadow:0 18px 55px rgba(0,0,0,.62)}
  .dcarmoryhead{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:3px;padding:3px 0 7px;background:linear-gradient(180deg,rgba(30,21,12,1) 76%,rgba(30,21,12,.92));color:#f3e3b0;font:700 18px var(--serif)}
  .dcarmoryclose{display:grid;place-items:center;width:40px;height:40px;min-width:40px;border:1px solid #806036;border-radius:10px;background:#171008;color:#f4e5b7;font-size:24px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .dcarmorynote{margin:0 2px 7px;color:#bca77c;font-size:11.5px;line-height:1.35}
  .dcarmory .dcshop{gap:6px;margin-bottom:0}
  .dcarmory .dcshopgroup{padding:5px}
  .dcarmory .dcshopgroup h3{min-height:26px;margin-bottom:4px;padding-bottom:4px;font-size:13px}
  .dcarmory .dcshopgroupgrid{gap:4px}
  .dcarmory .dcshopbtn{padding:5px;font-size:11.5px;line-height:1.2}
  .dcarmory .dcshopbtn b{font-size:14px}.dcarmory .dcshopbtn small{font-size:8.7px;line-height:1.16}
  .dcmproster{position:absolute;z-index:7;top:70px;right:84px;width:min(260px,34vw);padding:9px;border:1px solid rgba(224,178,58,.36);border-radius:13px;background:rgba(14,9,6,.86);box-shadow:0 8px 28px rgba(0,0,0,.42);color:#eadcb4;font-size:11.5px}
  .dcmproster.shared{width:auto;max-width:min(310px,46vw);display:flex;align-items:center;gap:8px;padding:6px 7px}.dcmproster.shared .dcmphead{margin:0}.dcmproster.shared .dcmpLeave{width:auto;margin:0;white-space:nowrap}
  .dcmphead{display:block;margin:0 2px 6px;color:#ffd979;font:700 12px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em}
  .dcmpplayer{display:grid;grid-template-columns:22px minmax(0,1fr);gap:7px;align-items:center;padding:5px 6px;border-radius:8px}.dcmpplayer+.dcmpplayer{margin-top:3px}.dcmpplayer.mine{background:rgba(224,178,58,.1);box-shadow:inset 0 0 0 1px rgba(224,178,58,.3)}.dcmpplayer.down{opacity:.55}.dcmpcastle{font-size:17px}.dcmplabel{min-width:0}.dcmplabel b,.dcmplabel small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dcmplabel small{margin-top:1px;color:#b7a581}.dcmpLeave{width:100%;margin-top:7px;padding:6px 8px;border:1px solid #59411f;border-radius:8px;background:#171008;color:#cdbb91;font-weight:700;cursor:pointer}
  .dcmodebuttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.dcmodebuttons .dcbtn{margin:0;padding:14px 10px}.dcsavecontinue{grid-column:1/-1}.dcpausecard{width:min(92%,570px)}.dcpausefacts{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:12px 0}.dcpausefacts span{padding:7px 10px;border:1px solid rgba(224,178,58,.38);border-radius:999px;background:rgba(0,0,0,.2);color:#f0db9f;font-weight:750;font-size:12px}.dcpauseactions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.dcpauseactions .dcbtn{min-height:44px;margin:0}.dcpausehint{margin:11px 0 0;font-size:10.5px;opacity:.8}.dcmplobby{min-height:100px}.dcmplobbyback{margin-top:10px}.dcmpscores{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px;margin:10px 0}.dcmpscores>div{padding:8px;border:1px solid #4d391e;border-radius:10px;background:rgba(0,0,0,.2);font-size:12px}.dcmpscores>.winner{border-color:#e0b23a;color:#ffd979}.dcmplobbydock{position:absolute;inset:auto 0 0;pointer-events:none}
  .dcmultimodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.dcmultimode{display:block;min-height:128px;padding:15px 13px;border:1px solid rgba(224,178,58,.42);border-radius:14px;background:linear-gradient(155deg,rgba(53,37,19,.88),rgba(19,12,8,.9));color:#f3e3b0;text-align:left;cursor:pointer;box-shadow:inset 0 1px rgba(255,235,184,.06);transition:transform .15s,border-color .15s,filter .15s}.dcmultimode:hover{transform:translateY(-2px);border-color:#e0b23a;filter:brightness(1.08)}.dcmultimode b,.dcmultimode small{display:block}.dcmultimode b{font:700 15px var(--serif);line-height:1.3}.dcmultimode small{margin-top:8px;color:#baa77f;font:500 11.5px system-ui,sans-serif;line-height:1.45}
  @media (max-width:700px){.dcmultimodes{grid-template-columns:1fr;gap:7px}.dcmultimode{min-height:0;padding:11px 12px}.dcmultimode small{margin-top:4px}}
  .dcresultcard{position:relative;width:min(94%,820px);padding:22px 22px 70px;text-align:left;overflow:auto}.dcresulteyebrow{text-align:center;color:#d5ae57;font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.dcresultcard>.dccardh,.dcresultsummary{text-align:center}.dcresultsummary{margin:2px 0 14px;color:#c9b58a;font-size:13px;line-height:1.45}.dcresultstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dcresultstat{display:grid;grid-template-columns:32px minmax(0,1fr);gap:7px;align-items:start;min-width:0;padding:9px;border:1px solid rgba(109,76,42,.65);border-radius:11px;background:rgba(34,23,10,.55)}.dcresulticon{font-size:20px;line-height:1.2}.dcresultwords{min-width:0}.dcresultwords small,.dcresultwords strong,.dcresultwords em{display:block}.dcresultwords small{color:#ad9a75;font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.dcresultwords strong{margin-top:1px;color:#ffe2a0;font-size:18px;line-height:1.1}.dcresultwords em{margin-top:3px;color:#a99570;font-size:9.5px;font-style:normal;line-height:1.3}.dcresultforces{margin:11px 0 2px;padding:8px 10px;border-radius:9px;background:rgba(0,0,0,.2);color:#bfae88;font-size:10.5px;line-height:1.45;text-align:center}.dcscoreseal{margin:9px auto 0;color:#cdbb91;font-size:11px;line-height:1.4;text-align:center}.dcresultcard .ggagain{margin-top:12px!important}.dcresultcard .ggagain .btn{min-height:40px}.ggnextportal{position:absolute;right:18px;bottom:15px;padding:4px 0;border:0;border-bottom:1px solid rgba(203,185,145,.4);border-radius:0;background:transparent;color:#b9aa89;font:650 10.5px system-ui,sans-serif;cursor:pointer;opacity:.82}.ggnextportal:hover{color:#ffe1a0;border-color:#d5ae57;opacity:1}.dcgameleaderboard{width:min(92vw,620px)}.dcleaderhost{margin-top:13px}.dcleadermeta{margin-bottom:8px;color:#b9a783;font-size:11px;text-align:center}.dcleaderlist{display:grid;gap:5px}.dcleaderrow{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid rgba(109,76,42,.65);border-radius:9px;background:rgba(31,21,10,.55)}.dcleaderrank{font-size:16px;text-align:center}.dcleadername{overflow:hidden;color:#eadbb7;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.dcleaderscore{color:#ffd979;white-space:nowrap}.dcleaderyou,.dcleaderempty{margin-top:9px;padding:9px;border-radius:9px;background:rgba(224,178,58,.08);color:#cdbb91;font-size:11.5px;text-align:center}
  .dcleadername b,.dcleadername small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dcleaderversion{margin-top:2px;color:#9f8db2;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
  .dcleaderfilters{display:flex;justify-content:center;align-items:flex-end;flex-wrap:wrap;gap:10px;margin:12px 0 7px}.dcleaderscopes{display:flex;min-height:36px;border:1px solid rgba(213,174,87,.62);border-radius:9px;overflow:hidden;background:#17130e}.dcleaderscope{min-height:36px;padding:6px 13px;border:0;border-right:1px solid rgba(213,174,87,.36);background:transparent;color:#bcae8e;font:750 12px system-ui,sans-serif;cursor:pointer}.dcleaderscope:last-child{border-right:0}.dcleaderscope.active{background:linear-gradient(180deg,rgba(213,174,87,.3),rgba(213,174,87,.12));color:#ffe4a0;box-shadow:inset 0 0 0 1px rgba(255,226,160,.18)}.dcleaderscope:focus-visible{outline:2px solid #e7c66c;outline-offset:-2px}.dcleaderfilterlabel{display:flex;align-items:center;gap:8px;color:#cdbb91;font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.dcleaderselect{min-width:190px;min-height:36px;padding:6px 32px 6px 10px;border:1px solid rgba(213,174,87,.62);border-radius:9px;background:#17130e;color:#f1ddb0;font:700 12px system-ui,sans-serif;cursor:pointer}.dcleaderselect:focus-visible{outline:2px solid #e7c66c;outline-offset:2px}
  @media (max-width:700px){.dchudrail{top:66px;right:70px;gap:5px}.dcwavechip,.dcenemies,.dccasualties,.dcpurse{min-height:30px;padding:4px 8px;font-size:11px}.dcarmorytab,.dcpausebtn{min-height:32px;padding:5px 9px;font-size:11px}.dcsoundbtn{min-height:32px;min-width:38px;padding:4px 8px;font-size:14px}.dcabilitydock{left:max(8px,env(safe-area-inset-left));bottom:calc(max(34px,9vh) + min(150px,33vh) + 10px);width:min(162px,calc(100% - 78px));max-width:162px;gap:4px;padding:16px 5px 5px}.dczeusbtn,.dctroopsbtn,.dchammerbtn,.dcflickbtn{width:100%;min-width:0;min-height:42px;padding:4px 6px;grid-template-columns:24px minmax(72px,1fr)}.dcpowericon{width:24px;height:24px;font-size:16px}.dcpowercopy strong{font-size:9.5px}.dcpowercopy small{font-size:7.5px}.dcabilitydock kbd{font-size:7px}.dcarmory{left:8px;right:70px;top:calc(62px + env(safe-area-inset-top));bottom:calc(8px + env(safe-area-inset-bottom));width:auto;max-height:none;overflow:auto}.dcmproster{top:auto;right:70px;bottom:8px;width:min(240px,56vw);max-height:38vh;max-height:38dvh;overflow:auto}.dcmproster.shared{max-width:calc(100vw - 88px)}.dcmodebuttons{grid-template-columns:1fr}.dcpauseactions{grid-template-columns:1fr}.dcresultstats{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media (pointer:coarse) and (max-width:950px){.dcarmory{left:8px;right:70px;top:calc(62px + env(safe-area-inset-top));bottom:calc(8px + env(safe-area-inset-bottom));width:auto;max-height:none}.dcarmoryclose{width:44px;height:44px;min-width:44px}.dccard{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}
  @media (min-width:951px) and (max-height:760px){.dcshopcard{padding:10px 12px 12px}.dcshophead{margin:-5px -3px 4px;padding:4px 3px}.dcshopcard .dccardp{margin-bottom:5px;line-height:1.25}.dcshop{gap:6px;margin:2px 0 5px}.dcshopgroup{padding:5px}.dcshopgroup h3{min-height:25px;margin-bottom:4px;padding-bottom:4px;font-size:12.5px}.dcshopgroupgrid{gap:4px}.dcshopbtn{padding:5px 4px;font-size:11px;line-height:1.2}.dcshopbtn b{font-size:14px}.dcshopbtn span{font-size:10px}.dcshopbtn small{font-size:8.5px;line-height:1.18}.dcshopactions{padding:6px 3px}}
  @media (max-width:950px){.dcshopcard{overflow:auto}}
  @media (pointer:coarse) and (max-width:950px){.dcshop{grid-template-columns:repeat(2,minmax(0,1fr))}}
  /* Phone purchase panels. The desktop compaction above is gated on
     min-width:951px, so the 932px landscape iPhone -- the widest phone Apple
     sells -- fell straight through it and drew desktop metrics on a 430px
     screen: 4 of 23 tiles visible and four more screens of scroll. Here the
     essay becomes the brief line, the icon joins the name instead of eating
     its own row, and the whole tile stops paying desktop padding. */
  @media (pointer:coarse) and (max-width:950px){
    .dcshopbtn .dcshopfull{display:none}.dcshopbtn .dcshopbrief{display:block}
    .dccardp .dcshopfull,.dcarmorynote .dcshopfull{display:none}
    .dcshopcard{padding:10px 10px 12px}
    .dcshophead{margin:-5px -3px 4px;padding:4px 3px}
    .dcshopcard .dccardh{font-size:18px}
    .dcshopcard .dccardp{margin-bottom:5px;font-size:12px;line-height:1.3}
    .dcshop{gap:6px;margin:2px 0 5px}
    .dcshopgroup{padding:5px}
    .dcshopgroup h3{min-height:0;margin-bottom:4px;padding-bottom:4px;font-size:12.5px}
    .dcshopgroupgrid{gap:4px}
    .dcshopbtn{padding:6px 5px;font-size:11.5px;line-height:1.22}
    .dcshopbtn b{display:inline;margin-right:4px;font-size:13px}
    .dcshopbtn .dcshopprice{display:inline;margin:0 0 0 6px;font-size:11px}
    .dcshopbtn small{font-size:10px;line-height:1.24;margin-top:1px}
    .dcshopbtn .dcshopgate{font-size:9.5px}
    .dcshopactions{padding:6px 3px}
    .dcarmorynote{margin-bottom:5px;font-size:11px;line-height:1.3}
    .dcarmoryhead{font-size:15px;margin-bottom:0;padding:2px 0 5px}
    .dcarmory{padding:9px}
    .dcarmory .dcshopbtn{padding:6px 5px;font-size:11.5px;line-height:1.22}
    .dcarmory .dcshopbtn b{font-size:13px}
    .dcarmory .dcshopbtn small{font-size:10px;line-height:1.24}
  }
  /* A landscape phone is wide enough for three purpose columns of brief
     tiles, which halves the scroll again. Below 640px two still read better
     than three squeezed ones. */
  @media (pointer:coarse) and (min-width:640px) and (max-width:950px){.dcshop{grid-template-columns:repeat(3,minmax(0,1fr))}}
  /* A purchase panel is modal. While one is open the Plaza's fixed game-mode
     chrome -- which outranks the card at z-index 2600 -- stands down, so it
     stops covering the Shop's title with a leave-the-run link. */
  body.dcpanelopen #view>a,body.dcpanelopen header.top,body.dcpanelopen .gmhelp{display:none!important}
  @media (max-width:520px){.dcshop{grid-template-columns:1fr;gap:7px}.dcoverlay{align-items:flex-end}.dccard{width:100%;margin-bottom:calc(4px + env(safe-area-inset-bottom));border-radius:18px 18px 12px 12px;padding:14px 12px 16px}.dcshophead{top:-6px;margin:-6px -4px 7px}.dcshopactions{bottom:-8px;margin:0 -4px -6px}.dcarmory .dcshop{gap:7px}.dcshopgroup h3{min-height:0}.dchudrail{left:8px}.dcwavechip,.dcenemies,.dccasualties,.dcpurse{font-size:10.5px}.dcresultcard{padding:15px 11px 66px}.dcresultstats{grid-template-columns:1fr 1fr;gap:6px}.dcresultstat{grid-template-columns:25px minmax(0,1fr);padding:7px}.dcresulticon{font-size:17px}.dcresultwords strong{font-size:15px}.ggnextportal{right:12px;bottom:12px}}
  /* ── The sideways phone's top strip ──
     Held sideways an iPhone gives the battlefield 430px of height, and the HUD
     rail was spending 106 of them: its own row at top:70px, under a strip that
     held nothing but a back link. The rail moves up into that strip, which it
     only fits in because the chips drop to short labels there (see tightHud in
     defendRuntime.js -- same numbers, fewer words, full sentence kept on the
     aria-label). Landscape only, and only above 700px, because the narrowest
     phones sideways have no room to share and keep their own compacted row.

     The safe-area vars exist because Chromium reports every inset as 0, so the
     one layout that goes wrong ONLY on a notched phone was invisible to every
     harness we own. They default to the real env(); a probe can set a notch and
     measure what a player would actually see. tools/qa/defend-hud-fit.mjs. */
  body.defendmode{--dcsafel:env(safe-area-inset-left,0px);--dcsafer:env(safe-area-inset-right,0px);--dcsafet:env(safe-area-inset-top,0px)}
  @media (pointer:coarse) and (orientation:landscape) and (max-height:520px){
    body.defendmode .dcwavechip,body.defendmode .dcenemies,body.defendmode .dccasualties,body.defendmode .dcpurse{min-height:30px;padding:4px 8px;font-size:11px}
    body.defendmode .dcarmorytab,body.defendmode .dcpausebtn{min-height:30px;padding:4px 9px;font-size:11px}
    body.defendmode .dcsoundbtn{min-height:30px;min-width:36px;padding:3px 7px;font-size:13px}
    /* The notch eats the first chip otherwise: the rail was left:14px flat,
       so sideways the 'W' of the wave chip sat under the black cutout. */
    body.defendmode .dchudrail{left:calc(14px + var(--dcsafel));right:calc(10px + var(--dcsafer));gap:5px}
    body.defendmode .dcarmory{left:calc(8px + var(--dcsafel));right:calc(8px + var(--dcsafer))}
  }
  @media (pointer:coarse) and (orientation:landscape) and (min-width:700px) and (max-height:520px){
    /* A capped back label gives the help chip -- and therefore the rail -- a
       seat that does not move with the room's name. */
    body.defendmode #view>a{max-width:150px}
    body.defendmode .dchudrail{top:calc(9px + var(--dcsafet));left:calc(216px + var(--dcsafel))}
  }
  @media (prefers-reduced-motion:reduce){.dcabilitydock .ready{animation:none}.dczeusbtn,.dctroopsbtn,.dchammerbtn,.dcflickbtn{transition:none}}
  /* ── Stick RPG (Stick City life-sim) ── */
  .srwrap{max-width:960px;margin:0 auto;padding:0 8px 18px}
  .srtop{display:flex;align-items:center;gap:12px;padding:10px 2px 8px}
  .srback{color:var(--gold2);text-decoration:none;font-size:14px;white-space:nowrap}
  .srtitle{font-family:var(--serif);font-size:20px;color:#f3e3b0;flex:1;text-align:center}
  .srhud{display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center;padding:4px 4px 10px}
  .srchip{background:rgba(0,0,0,.32);border:1px solid #4a3820;border-radius:999px;padding:3px 11px;color:#f0e2b6;font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:6px}
  .srebar{position:relative;width:96px;height:9px;border-radius:999px;background:rgba(0,0,0,.4);overflow:hidden}
  .srebar>i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#e0733a,#e0b23a,#6ad06a);border-radius:999px;transition:width .3s}
  .srcity{position:relative;width:100%;height:340px;border-radius:14px;overflow:hidden;border:1px solid #4a3820;box-shadow:0 12px 40px rgba(0,0,0,.5)}
  .srsky{position:absolute;inset:0;background:linear-gradient(180deg,#48456a 0%,#7a5a58 44%,#c08a54 74%,#caa062 100%)}
  .srsidewalk{position:absolute;left:0;right:0;bottom:56px;height:20px;background:linear-gradient(#b39a72,#997f57);border-top:2px solid #cbb488}
  .srstreet{position:absolute;left:0;right:0;bottom:0;height:56px;background:#4c4038;border-top:3px solid #5e4f42;background-image:repeating-linear-gradient(90deg,transparent 0 44px,rgba(240,220,120,.5) 44px 66px);background-position:0 26px;background-size:auto 4px;background-repeat:repeat-x}
  .srb{position:absolute;bottom:76px;transform:translateX(-50%);cursor:pointer;text-align:center;transition:transform .14s;z-index:2}
  .srb:hover{transform:translateX(-50%) translateY(-4px)}
  .srbbody{width:98px;height:126px;margin:0 auto;background:linear-gradient(var(--b1),var(--b2));border:2px solid rgba(0,0,0,.28);border-radius:5px 5px 0 0;position:relative;box-shadow:0 8px 16px rgba(0,0,0,.4)}
  .srbroof{position:absolute;left:-6px;right:-6px;top:-9px;height:11px;background:rgba(0,0,0,.32);border-radius:5px 5px 0 0}
  .srbwin{position:absolute;top:34px;left:12px;right:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
  .srbwin i{height:15px;background:rgba(255,235,180,.55);border-radius:2px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)}
  .srbsign{position:absolute;top:7px;left:50%;transform:translateX(-50%);font-size:20px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.4))}
  .srbdoor{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:28px;height:36px;border-radius:14px 14px 0 0;background:radial-gradient(120% 95% at 50% 120%,#ffd98f,#8a5624 72%);border:2px solid #4a2f16;border-bottom:none}
  .srblabel{margin-top:6px;font-size:11px;font-weight:700;color:#fbeecb;white-space:nowrap;text-shadow:0 1px 3px #000,0 0 5px rgba(0,0,0,.7)}
  .sravatar{position:absolute;bottom:70px;transform:translateX(-50%);transition:left .5s cubic-bezier(.4,0,.3,1);z-index:6;filter:drop-shadow(0 3px 4px rgba(0,0,0,.5))}
  .sravatar svg{width:44px;height:44px;display:block}
  .srlog{text-align:center;font-size:13.5px;color:#c9b58a;min-height:22px;padding:10px 6px 0;transition:color .2s}
  .srlog.good{color:#e6d8b0}.srlog.bad{color:#f0a89e}
  .srpanel{position:fixed;inset:0;z-index:3600;display:flex;align-items:flex-end;justify-content:center;padding:0 0 0;background:rgba(6,4,2,.5)}
  .srpanelcard{width:100%;max-width:520px;background:linear-gradient(#161009,#0d0906);border:1px solid #4a3820;border-bottom:none;border-radius:16px 16px 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.6);padding:14px 16px 20px;animation:srup .2s ease}
  @keyframes srup{from{transform:translateY(30px);opacity:.6}to{transform:translateY(0);opacity:1}}
  .srpanelhead{display:flex;align-items:center;justify-content:space-between;font-family:var(--serif);font-size:18px;color:#f3e3b0;margin-bottom:10px}
  .srpanelx{background:transparent;border:1px solid #4a3820;color:#e8d9ac;border-radius:8px;width:30px;height:30px;cursor:pointer}
  .srpanelbody{display:flex;flex-direction:column;gap:8px}
  .sract{text-align:left;padding:11px 14px;border-radius:11px;border:1px solid #5c421f;background:linear-gradient(#241a0b,#160d05);color:#f3e3b0;font-weight:600;font-size:13.5px;cursor:pointer}
  .sract:hover:not(:disabled){border-color:#b98a34;background:#33240f}
  .sract:disabled{opacity:.4;cursor:default}
  .srmodal{position:fixed;inset:0;z-index:3800;display:grid;place-items:center;padding:16px;background:rgba(6,4,2,.72)}
  .srmodalcard{width:92%;max-width:400px;text-align:center;background:linear-gradient(#161009,#0d0906);border:1px solid #6d4c2a;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.6);padding:22px}
  .srmodalh{font-family:var(--serif);font-size:20px;color:#ffd479;margin-bottom:8px}
  .srmodalp{font-size:13.5px;color:#c9b58a;line-height:1.5;margin-bottom:14px}
  /* ── Cards & Sports: the Archer Racing entry ── */
  .racecard{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:8px 0 4px;background:radial-gradient(130% 150% at 0% 0%,#241a0b,#110c06)}
  .rchead{font-family:var(--serif);font-size:18px;color:var(--gold2)}
  .rcsub{color:var(--muted);font-size:13px;margin:2px 0 11px;line-height:1.45}
  .rcrow{display:flex;gap:9px;flex-wrap:wrap}
  .crhr{height:1px;background:var(--line);margin:16px 0 6px;opacity:.7}
  /* ── The front door: initialize + step into the Plaza ── */
  .enter{max-width:600px;margin:0 auto;text-align:center;padding:30px 16px 64px}
  .enter .ey{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);opacity:.9}
  .escales{font-size:62px;line-height:1;margin:12px 0 2px;filter:drop-shadow(0 5px 18px rgba(255,200,90,.4))}
  .etitle{font-family:var(--serif);font-size:clamp(34px,7vw,54px);margin:2px 0 12px;line-height:1.05}
  .esub{color:var(--soft);font-size:16px;line-height:1.62;max-width:540px;margin:0 auto 24px}
  .enamerow{max-width:340px;margin:0 auto 14px}
  .ename{width:100%;text-align:center;font-size:16px;padding:12px 14px;border-radius:12px}
  .ebtn{font-size:18px;padding:14px 34px}
  .erooms{margin-top:28px;color:var(--muted);font-size:12.5px;letter-spacing:.02em;line-height:1.9}  .impstart{text-align:center;border:1px solid var(--line);border-radius:16px;padding:26px 18px;background:radial-gradient(130% 150% at 50% 0%,#241733,#100a1c)}
  .impmask{font-size:56px;line-height:1;filter:drop-shadow(0 5px 16px rgba(150,90,220,.4))}
  .impstarttitle{font-family:var(--serif);font-size:26px;margin:6px 0 8px}
  .impbig{font-size:16px;padding:12px 28px;margin-top:16px}
  .impbanner{text-align:center;font-family:var(--serif);font-size:20px;padding:10px;border-radius:12px;margin:8px 0 12px;border:1px solid var(--line)}
  .impbanner.night{background:linear-gradient(#181233,#0d0920);color:#bcb0e8}
  .impbanner.day{background:linear-gradient(#2a2109,#191204);color:#f0d99a}
  .impbanner.over{background:linear-gradient(#2a1810,#160b06);color:var(--gold2);font-size:23px}
  .improlecard{border:1px solid var(--line);border-radius:12px;padding:11px 14px;margin-bottom:10px;background:rgba(20,14,6,.5)}  .improlecard.dead{opacity:.6}
  .irname{font-weight:700;color:var(--gold2);font-size:15px}  .irblurb{color:var(--muted);font-size:12.5px;margin-top:2px;line-height:1.45}
  .impdet{border:1px solid var(--gold);border-radius:10px;padding:9px 12px;margin-bottom:10px;background:rgba(232,193,90,.08);color:var(--gold2);font-size:13.5px}
  .imptown{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-bottom:12px}
  .impseat{text-align:center;border:1px solid var(--line);border-radius:11px;padding:7px 4px 8px;background:rgba(20,14,6,.45)}
  .impseat.you{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
  .impseat.dead{opacity:.45;filter:grayscale(.7)}
  .impfig{height:44px;line-height:0}
  .impname{font-size:12px;color:var(--ink);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .improle{font-size:11px;margin-top:2px;color:var(--muted)}  .improle.hidden{opacity:.5}
  .impfeed{max-height:200px;overflow-y:auto;border:1px solid var(--line);border-radius:12px;padding:9px 12px;background:rgba(0,0,0,.25);font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:3px}
  .impline.event{color:var(--muted);font-style:italic}
  .impline.ai b, .impline.say b{color:var(--gold2)}
  .impline.say{color:#eadfc7}
  .impact{margin-top:12px}
  .impprompt{font-weight:600;color:var(--gold2);margin:6px 0 8px;text-align:center}
  .imptargets{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
  .impsayrow{display:flex;gap:8px;margin-bottom:8px}
  .impsayrow input{flex:1;min-width:0}
  .impoutcome{text-align:center;font-family:var(--serif);font-size:20px;margin:14px 0 8px}
  .impoutcome.win{color:#8ff0a8}.impoutcome.lose{color:#e57373}
  /* ── Walkable rooms (Socratic Hall / Club / Cinema / Casino) ── */
  .roomscene .plazafloor{cursor:pointer}
  /* Optional mobile thumb movement. Tap-to-walk remains the alternate mode;
     only coarse pointers render this control, and the preference is per device. */
  .worldjoy{display:none;position:absolute;left:16px;bottom:180px;z-index:1500;width:92px;height:92px;border-radius:50%;touch-action:none;pointer-events:auto;background:radial-gradient(circle,rgba(45,58,68,.88) 0 38%,rgba(151,158,166,.74) 40% 55%,rgba(35,48,58,.88) 57% 100%);border:2px solid rgba(225,213,182,.52);box-shadow:0 5px 18px rgba(0,0,0,.48),inset 0 0 0 6px rgba(8,12,17,.22);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  .worldjoythumb{position:absolute;left:50%;top:50%;width:42px;height:42px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 35% 30%,#fff4cf,#d9a13b 70%,#8a6014);border:2px solid #fff0bd;box-shadow:0 3px 9px rgba(0,0,0,.58);will-change:transform}
  .roomscene .worldjoy{bottom:180px}
  @media(pointer:coarse){body.plazamode.joy-enabled .worldjoy{display:block}}
  /* Room identity owns the center of the first row. The travel tools descend
     beneath the menu as a tiny utility rail, leaving the scene itself open. */
  .roomtop{position:absolute;top:9px;left:10px;right:10px;z-index:1200;display:block;pointer-events:none}
  .roomtop>*{pointer-events:auto}
  .roomback{color:#e6d8b4;font-size:13px;text-decoration:none;text-shadow:0 1px 4px #000}
  .roomtitle{position:fixed;top:10px;left:120px;right:184px;transform:none;text-align:center;font-family:var(--serif);font-size:18px;line-height:34px;height:34px;color:#fff0c7;text-shadow:0 2px 6px #000,0 0 14px rgba(15,9,2,.9);padding:0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  @media(max-width:600px),(max-width:1100px) and (orientation:portrait){.roomtitle{left:98px;right:150px;font-size:15px}}
  .roomhint{position:absolute;bottom:184px;left:0;right:0;text-align:center;z-index:1200;color:#d8cba6;font-size:12.5px;text-shadow:0 1px 5px #000,0 0 8px #000;pointer-events:none;padding:0 12px}
  .station{position:absolute;cursor:pointer;text-align:center;will-change:transform}
  /* Marble & Gold v2: amber plaques with dark ink (text glyphs like ♠ must
     read on parchment), inner keyline, and per-station mounts + tilt so the
     halls read as furnished places, not a grid of app tiles. */
  .station .sticon{position:relative;width:52px;height:56px;margin:0 auto;border-radius:10px;display:grid;place-items:center;font-size:26px;color:#3a2606;
    background:linear-gradient(180deg,#f3e0ad,#d6b878);border:2.5px solid #7a5210;
    box-shadow:inset 0 0 0 2px rgba(255,246,220,.6),inset 0 -8px 12px rgba(140,100,45,.3),0 6px 12px rgba(0,0,0,.5);transition:transform .15s,box-shadow .15s}
  .station .sticon::after{content:"";position:absolute;top:-6px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9a8,#b07f22);box-shadow:0 1px 2px rgba(0,0,0,.5)}
  .station.stv0 .sticon{transform:rotate(-1.8deg)}
  .station.stv1 .sticon{transform:rotate(1.4deg)}
  .station .stmount{display:none}
  .station.stv1 .sticon::after{display:none}
  .station.stv1 .stmount{display:block;width:34px;height:11px;margin:-2px auto 0;background:linear-gradient(#8a6a3a,#6b4a24);clip-path:polygon(14% 0,86% 0,100% 100%,0 100%);border-radius:2px;box-shadow:0 3px 5px rgba(0,0,0,.35)}
  .station.stv2 .sticon::after{display:none}
  .station.stv2 .stmount{display:block;width:26px;height:13px;margin:-2px auto 0;background:linear-gradient(#c9c2b2,#9aa1ab);clip-path:polygon(22% 0,78% 0,100% 100%,0 100%);box-shadow:0 3px 5px rgba(0,0,0,.35)}
  .station.big .sticon{width:76px;height:80px;font-size:40px;border-width:3px}
  .station.big .stmount{transform:scaleX(1.5)}
  .station .sticon svg{width:30px;height:30px;display:block}.station.big .sticon svg{width:44px;height:44px}
  .station .stlabel{font-size:11.5px;color:#fff3d6;margin-top:5px;font-weight:800;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.9),0 0 5px rgba(40,25,5,.9);letter-spacing:.3px;font-family:Georgia,'Times New Roman',serif}
  .station:hover .sticon{border-color:var(--mggold3);transform:translateY(-3px) rotate(0deg);box-shadow:0 0 0 2px var(--mggold),0 11px 22px rgba(217,161,59,.5)}
  .station.relicglimmer .sticon{border-color:#f8d878;box-shadow:inset 0 0 0 2px rgba(255,250,212,.8),0 0 0 2px rgba(255,217,111,.35),0 0 22px rgba(255,196,70,.8);animation:relicGlimmer 1.75s ease-in-out infinite alternate}
  .station.relicglimmer .stlabel{color:#fff2b8}
  /* Environment-first wayfinding: destinations are signposts, tablets and
     landmark doors, never a row of app buttons. The name has a bounded board
     of its own, so neighboring destinations do not turn into one long word. */
  .station{width:104px;isolation:isolate}
  .station .sticon{width:42px;height:43px;border:0;border-radius:0;background:transparent;box-shadow:none;z-index:1;filter:drop-shadow(0 4px 3px rgba(0,0,0,.38));transition:transform .15s,filter .15s}
  .station .sticon::before{content:"";position:absolute;z-index:-1;left:50%;bottom:-2px;width:47px;height:31px;transform:translateX(-50%);background:linear-gradient(135deg,#f5e7bd,#c69545);border:2px solid #75501b;box-shadow:inset 0 0 0 2px rgba(255,250,220,.5),0 3px 5px rgba(0,0,0,.34);clip-path:polygon(50% 0,100% 24%,90% 100%,10% 100%,0 24%)}
  .station .sticon::after{content:"";position:absolute;z-index:-1;left:50%;bottom:-10px;width:4px;height:13px;margin-left:0;border-radius:0;transform:translateX(-50%);background:linear-gradient(90deg,#5c3d1c,#a57a3a,#5c3d1c);box-shadow:0 3px 2px rgba(0,0,0,.32)}
  .station.stv1 .sticon::before{width:51px;height:27px;bottom:1px;background:repeating-linear-gradient(90deg,#c9502e 0 16%,#f2d58b 16% 32%);clip-path:polygon(4% 0,96% 0,100% 100%,0 100%)}
  .station.stv1 .sticon::after{display:block;height:17px;bottom:-14px;width:6px}
  .station.stv2 .sticon::before{width:43px;height:34px;bottom:-1px;background:linear-gradient(90deg,#a5abb1,#e0e0d6 46%,#969ba0);clip-path:polygon(50% 0,100% 23%,92% 100%,8% 100%,0 23%)}
  .station.stv2 .sticon::after{display:none}
  .station .stlabel{display:inline-block;box-sizing:border-box;max-width:104px;min-height:23px;margin-top:8px;padding:4px 7px;border:1px solid rgba(255,226,157,.56);border-radius:4px;background:linear-gradient(180deg,rgba(83,54,20,.9),rgba(40,24,8,.9));color:#fff1c8;font-size:11px;line-height:1.08;font-weight:800;white-space:normal;text-shadow:0 1px 2px #000;letter-spacing:.15px;font-family:Georgia,'Times New Roman',serif;box-shadow:0 2px 5px rgba(0,0,0,.38)}
  .station.st-landmark{width:126px}.station.st-landmark .sticon{width:64px;height:61px;font-size:39px}.station.st-landmark .sticon::before{width:70px;height:50px;bottom:-2px;border-width:3px;clip-path:polygon(50% 0,100% 25%,92% 100%,8% 100%,0 25%)}.station.st-landmark .sticon::after{bottom:-14px;height:17px;width:7px}.station.st-landmark .stlabel{max-width:126px;font-size:12px;min-height:26px}
  .station.st-wing .sticon::before{background:linear-gradient(135deg,#ded9ca,#b3a98d);clip-path:polygon(50% 0,100% 28%,91% 100%,9% 100%,0 28%)}.station.st-wing .stlabel{background:linear-gradient(180deg,rgba(43,74,140,.93),rgba(25,47,96,.94));border-color:rgba(237,215,154,.7)}
  .station.st-tablet .sticon::before{background:linear-gradient(90deg,#989b99,#dad6c9,#8f928f);clip-path:polygon(9% 0,91% 0,100% 8%,100% 100%,0 100%,0 8%)}.station.st-tablet .stlabel{font-size:10.5px}
  .station.st-banner .sticon::before{width:62px;height:27px;bottom:3px;background:linear-gradient(90deg,#c9502e,#e0b846,#c9502e);clip-path:polygon(0 0,100% 0,91% 50%,100% 100%,0 100%,9% 50%)}.station.st-banner .sticon::after{display:none}.station.st-banner .stlabel{background:linear-gradient(180deg,rgba(130,42,25,.93),rgba(74,24,16,.94))}
  .station:hover .sticon,.station:focus .sticon{border-color:transparent;transform:translateY(-4px) rotate(0deg) scale(1.06);box-shadow:none;filter:drop-shadow(0 0 5px rgba(255,216,110,.86)) drop-shadow(0 5px 5px rgba(0,0,0,.4));outline:none}
  .station:focus-visible .stlabel{outline:3px solid #f7d371;outline-offset:3px}
  .station.relicglimmer .sticon{border-color:transparent;box-shadow:none;filter:drop-shadow(0 0 8px rgba(255,196,70,.9)) drop-shadow(0 4px 3px rgba(0,0,0,.38));animation:relicGlimmer 1.75s ease-in-out infinite alternate}
  /* Environment navigation v2. The first pass still read as decorated app
     buttons. Ordinary destinations now stand directly in the room as large
     objects with painted-world labels. Only actual doorways get architecture. */
  .station{width:118px}
  .station .sticon,.station.big .sticon,.station.st-landmark .sticon{width:68px;height:66px;font-size:43px;border:0;background:none;box-shadow:none;filter:drop-shadow(0 5px 4px rgba(0,0,0,.48))}
  .station .sticon::before,.station .sticon::after{display:none}
  .station .stlabel,.station.st-landmark .stlabel,.station.st-tablet .stlabel,.station.st-banner .stlabel{display:block;max-width:118px;min-height:0;margin:2px auto 0;padding:0;border:0;border-radius:0;background:none;color:#fff1ce;font-size:12px;line-height:1.12;white-space:normal;text-shadow:0 2px 2px #000,0 0 5px #000,0 0 9px #000;box-shadow:none}
  .station.st-door,.station.st-wing{width:150px}
  .station.st-door .sticon,.station.st-wing .sticon{width:92px;height:82px;font-size:34px;filter:drop-shadow(0 7px 5px rgba(0,0,0,.44))}
  .station.st-door .sticon::before,.station.st-wing .sticon::before{display:block;width:82px;height:72px;bottom:-3px;background:radial-gradient(ellipse at 50% 72%,#172238 0 31%,transparent 32%),linear-gradient(90deg,#a7a9a5,#e1ded1 24%,#bab9ae 50%,#e1ded1 76%,#9b9d9a);border:4px solid #7b725f;border-bottom-width:7px;border-radius:42px 42px 4px 4px;clip-path:none;box-shadow:inset 0 0 0 2px rgba(255,255,245,.4),0 7px 8px rgba(0,0,0,.38)}
  .station.st-door .stlabel,.station.st-wing .stlabel{max-width:150px;margin-top:1px;color:#f8edcf;font-size:12.5px}
  /* A home is a landmark, not an app tile. Pet House is a painted building
     with a usable doorway, warm windows, a roofline, and garden companions. */
  .station.st-pethouse{width:224px;height:190px}.station.st-pethouse .sticon{width:210px;height:160px;font-size:0;overflow:visible;filter:drop-shadow(0 9px 6px rgba(0,0,0,.42))}.station.st-pethouse .sticon::before,.station.st-pethouse .sticon::after{display:none}.station.st-pethouse .sticon svg{width:210px;height:160px;overflow:visible}.station.st-pethouse .stlabel{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:max-content;max-width:210px;margin:0;color:#fff1ca;font-size:15px;letter-spacing:.35px;text-shadow:0 2px 2px #000,0 0 8px #000}.station.st-pethouse:hover .sticon,.station.st-pethouse:focus-visible .sticon{transform:translateY(-5px) scale(1.025);filter:drop-shadow(0 0 9px rgba(255,216,110,.75)) drop-shadow(0 10px 7px rgba(0,0,0,.45))}
  .roomscene.sc-pethouse{background:radial-gradient(125% 100% at 50% 2%,#765845 0%,#432c2b 47%,#21151c 100%)}.sc-pethouse .plazafloor::before{display:block;left:9%;right:9%;top:18%;height:54%;border:0;border-radius:22px 22px 9px 9px;background:repeating-linear-gradient(90deg,rgba(250,222,170,.07) 0 8%,rgba(70,40,28,.08) 8% 16%),linear-gradient(180deg,#9b6f49 0 12%,#6a4430 13% 74%,#4a2d26 75%);box-shadow:inset 0 0 0 5px rgba(246,205,130,.18),inset 0 -24px 38px rgba(0,0,0,.3),0 16px 35px rgba(0,0,0,.35)}.sc-pethouse .plazafloor::after{content:"";position:absolute;left:12%;right:12%;bottom:17%;height:13%;background:radial-gradient(ellipse at 20% 50%,rgba(243,200,96,.26),transparent 22%),radial-gradient(ellipse at 78% 60%,rgba(118,203,225,.25),transparent 19%),repeating-linear-gradient(90deg,transparent 0 15%,rgba(255,232,180,.16) 16% 17%,transparent 18% 29%);pointer-events:none}.sc-pethouse .station.st-door .sticon::before{background:radial-gradient(ellipse at 50% 72%,#2b1b17 0 30%,transparent 31%),linear-gradient(90deg,#85533a,#c79262 24%,#a86d4a 50%,#c79262 76%,#75422e);border-color:#4c2c23}.sc-pethouse .station.st-door .stlabel{font-size:13px}.station.st-kennel .sticon,.station.st-aquariumdoor .sticon{font-size:49px}.station.st-kennel .stlabel,.station.st-aquariumdoor .stlabel{font-size:13px}
  .station.st-tablet .sticon{font-size:38px;filter:grayscale(.18) drop-shadow(0 5px 4px rgba(0,0,0,.42))}
  .station.st-banner .sticon{font-size:44px}
  .station:hover .stlabel,.station:focus-visible .stlabel{color:#ffe38b;text-shadow:0 2px 2px #000,0 0 8px #000,0 0 12px #e2b45a;outline:0}
  /* The Olympiad districts are pieces of the stadium, not four repeated
     controls. Their large invisible walk-up areas sit over the painted stands;
     only one distinctive prop and floor inscription marks each destination. */
  /* The Hold'em house table reads as a ring of people: heads on seats, a
     piled pot the eye can follow, and the regulars' table talk beside it. */
  .pseat{position:relative}
  .pseat .phead{width:40px;height:40px;margin:0 auto 3px;border-radius:50%;overflow:hidden;border:2px solid #6b5326;background:#181008;box-shadow:0 3px 8px rgba(0,0,0,.4)}
  .pseat .phead svg{width:100%;height:100%;display:block}
  .pseat.turn .phead{border-color:#ffe08a;box-shadow:0 0 0 3px rgba(255,224,138,.32),0 3px 8px rgba(0,0,0,.4)}
  .pseat.winner .phead{border-color:#7bd694}
  .pseat.folded .phead{filter:grayscale(.8);opacity:.55}
  .potwrap{display:grid;justify-items:center;gap:2px;margin:4px 0}
  .potpile{position:relative;height:26px;width:64px}
  .potchip{position:absolute;left:50%;width:26px;height:10px;border-radius:50%;background:radial-gradient(ellipse at 42% 34%,#ffe08a,#c9962e 68%,#8a621a);border:1px solid #6b4d16;box-shadow:0 2px 3px rgba(0,0,0,.4)}
  .potchip:nth-child(1){transform:translateX(-50%)}
  .potchip:nth-child(2){transform:translateX(-62%) translateY(-4px)}
  .potchip:nth-child(3){transform:translateX(-38%) translateY(-5px)}
  .potchip:nth-child(4){transform:translateX(-52%) translateY(-9px)}
  .potchip:nth-child(5){transform:translateX(-44%) translateY(-13px)}
  .potchip:nth-child(6){transform:translateX(-58%) translateY(-14px)}
  .potchip:nth-child(7){transform:translateX(-48%) translateY(-18px)}
  .potchip:nth-child(8){transform:translateX(-54%) translateY(-22px)}
  .potchip:nth-child(9){transform:translateX(-46%) translateY(-25px)}
  .crtalk{margin:6px auto 0;width:min(560px,96%);display:grid;gap:2px;min-height:18px}
  .crtalkline{font-size:11.5px;color:#cfc3a0;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .crtalkline b{font-weight:800}
  @media(prefers-reduced-motion:reduce){.pseat .phead{transition:none}}
  /* ARENA_SLICE_END 09-stations-front-door */
  /* ARENA_SLICE_START 10-room-scenes -- spliced from arena-css/10-room-scenes.css; edit that file, not this region */
  .sc-arcade .station.st-quarter{width:190px;height:112px;padding:10px 0;box-sizing:border-box}
  .sc-arcade .station.st-quarter .sticon{width:92px;height:67px;margin:0 auto;font-size:52px;background:none!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 7px 4px rgba(0,0,0,.55))}
  .sc-arcade .station.st-quarter .sticon::before,.sc-arcade .station.st-quarter .sticon::after,.sc-arcade .station.st-quarter .stmount{display:none!important}
  .sc-arcade .station.st-quarter .stlabel{max-width:190px;margin:-1px auto 0;padding:2px 7px 4px;background:transparent!important;border:0!important;border-bottom:3px solid rgba(226,180,90,.72)!important;border-radius:0!important;box-shadow:none!important;color:#fff0c7;font-size:13px;letter-spacing:.45px;text-transform:uppercase;text-shadow:0 2px 2px #000,0 0 7px #000}
  .sc-arcade .station.st-quarter::before{content:"";position:absolute;left:18px;right:18px;bottom:6px;height:7px;border:1px solid rgba(225,213,182,.45);border-top:0;transform:perspective(70px) rotateX(42deg);opacity:.7}
  .sc-arcade .station.st-scene-stoa .sticon{transform:rotate(-5deg) translateY(2px)}
  .sc-arcade .station.st-scene-war .sticon{font-size:58px;transform:translateY(5px)}
  .sc-arcade .station.st-scene-yard .sticon{font-size:55px;transform:rotate(7deg)}
  .sc-arcade .station.st-scene-scholars .sticon{font-size:57px;transform:translateY(1px)}
  .sc-arcade .station.st-quarter:hover .sticon,.sc-arcade .station.st-quarter:focus-visible .sticon{filter:drop-shadow(0 0 8px rgba(255,220,120,.9)) drop-shadow(0 7px 4px rgba(0,0,0,.55))}
  /* Environmental navigation v3. A destination is now a piece of the room:
     a facade, tunnel, gate, counter, or attached sign. The shared renderer
     supplies the physical parts and each district dresses them in its own
     materials. This replaces the repeated silver portal/app-pod silhouette. */
  .station .stenv{display:none;pointer-events:none}
  .station.st-door,.station.st-wing{width:174px;height:132px}
  .station.st-door .stenv,.station.st-wing .stenv{display:block;position:absolute;left:50%;top:0;width:140px;height:102px;transform:translateX(-50%);filter:drop-shadow(0 9px 7px rgba(0,0,0,.42));transition:transform .18s ease,filter .18s ease}
  .station.st-door .stenv::before,.station.st-wing .stenv::before{content:"";position:absolute;inset:10px 5px 11px;border:4px solid #777c83;border-bottom-width:7px;border-radius:5px 5px 2px 2px;background:linear-gradient(90deg,#aeb3b7 0 13%,#dfe1dd 14% 29%,#aeb3b7 30% 70%,#e3e3de 71% 86%,#9da3a8 87%);box-shadow:inset 0 0 0 2px rgba(255,255,255,.38)}
  .station.st-door .stenv::after,.station.st-wing .stenv::after{content:"";position:absolute;left:1px;right:1px;bottom:0;height:13px;border-radius:50%;background:radial-gradient(ellipse,rgba(245,210,125,.38),rgba(38,26,12,.34) 52%,transparent 72%);transform:perspective(60px) rotateX(55deg)}
  .station .stentry{position:absolute;z-index:2;left:50%;bottom:16px;width:64px;height:65px;transform:translateX(-50%);border:4px solid #656a70;border-bottom:0;border-radius:34px 34px 2px 2px;background:radial-gradient(circle at 50% 40%,rgba(241,207,114,.22),transparent 26%),linear-gradient(180deg,#26344a,#101725 72%);box-shadow:inset 0 0 19px rgba(0,0,0,.72)}
  .station .stbeam{position:absolute;z-index:3;left:13px;right:13px;top:5px;height:15px;border:3px solid #686b70;border-radius:3px;background:linear-gradient(180deg,#e5dfcd,#a9aaab);box-shadow:0 3px 3px rgba(0,0,0,.28)}
  .station .stlamp{position:absolute;z-index:4;top:43px;width:8px;height:8px;border-radius:50%;background:#ffe48a;box-shadow:0 0 10px 4px rgba(255,207,91,.72)}
  .station .stlamp-l{left:18px}.station .stlamp-r{right:18px}
  .station.st-door .sticon,.station.st-wing .sticon{position:absolute;z-index:6;left:50%;top:20px;width:48px;height:40px;margin:0;transform:translateX(-50%);font-size:29px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.72))}
  .station.st-door .sticon::before,.station.st-wing .sticon::before{display:none!important}
  .station.st-door .stlabel,.station.st-wing .stlabel{position:absolute;z-index:7;left:50%;top:82px;width:max-content;max-width:164px;margin:0;padding:4px 12px 5px;transform:translateX(-50%);border:2px solid #6e4a16;border-radius:3px;background:linear-gradient(180deg,#e7c773,#a87321);color:#2c1b07;font-size:12px;line-height:1;letter-spacing:.25px;text-shadow:0 1px rgba(255,239,178,.55);box-shadow:inset 0 0 0 1px rgba(255,245,202,.48),0 4px 5px rgba(0,0,0,.42)}
  .station.st-door:hover .stenv,.station.st-door:focus-visible .stenv,.station.st-wing:hover .stenv,.station.st-wing:focus-visible .stenv{transform:translateX(-50%) translateY(-4px);filter:drop-shadow(0 0 9px rgba(255,213,112,.74)) drop-shadow(0 11px 8px rgba(0,0,0,.46))}
  .station.st-door:hover .sticon,.station.st-door:focus-visible .sticon,.station.st-wing:hover .sticon,.station.st-wing:focus-visible .sticon{transform:translateX(-50%) translateY(-4px) scale(1.07)}
  .station.st-door:hover .stlabel,.station.st-door:focus-visible .stlabel,.station.st-wing:hover .stlabel,.station.st-wing:focus-visible .stlabel{color:#211304;background:linear-gradient(180deg,#ffe18b,#c79031);text-shadow:0 1px rgba(255,245,204,.7)}
  /* Cards & Sports is a club interior: walnut rooms, cloth awnings, brass
     lamps, and door signs attached to the woodwork. */
  .sc-casino .station.st-door .stenv::before{inset:9px 2px 10px;border-color:#4b2b19;border-radius:4px;background:repeating-linear-gradient(90deg,#5b301d 0 12px,#7c472b 12px 25px);box-shadow:inset 0 0 0 3px rgba(235,170,84,.16)}
  .sc-casino .station.st-door .stentry{border-color:#bc8a42;background:radial-gradient(circle at 50% 34%,rgba(255,218,125,.22),transparent 27%),linear-gradient(180deg,#193425,#081a12 76%)}
  .sc-casino .station.st-door .stbeam{left:5px;right:5px;top:3px;height:20px;border-color:#5d321d;background:repeating-linear-gradient(90deg,#b6482f 0 18px,#e3bd69 18px 36px)}
  .sc-casino .station.st-door .stlabel{border-color:#4f2d18;background:linear-gradient(180deg,#d7aa58,#8f552a);color:#281509}
  .sc-casino .station.st-scene-poolhall .stentry{background:radial-gradient(circle at 50% 40%,rgba(169,255,196,.24),transparent 28%),linear-gradient(180deg,#17452c,#092116 78%)}
  .sc-casino .station.st-scene-sportsbook .stbeam{background:linear-gradient(90deg,#203e72,#d4b25a 28%,#203e72 50%,#d4b25a 72%,#203e72)}
  /* Mine entrances are timber-braced holes in the rock, not marble buttons. */
  .sc-mine .station.st-door{height:145px}
  .sc-mine .station.st-door .stenv{width:154px;height:116px}
  .sc-mine .station.st-door .stenv::before{inset:7px 0 9px;border:0;border-radius:46% 46% 7px 7px;background:linear-gradient(90deg,transparent 0 7%,#5e3b22 8% 15%,transparent 16% 84%,#5e3b22 85% 92%,transparent 93%),linear-gradient(180deg,#6f4727 0 11%,transparent 12%);box-shadow:none}
  .sc-mine .station.st-door .stentry{bottom:11px;width:110px;height:90px;border:7px solid #765032;border-bottom:4px;border-radius:52px 52px 7px 7px;background:radial-gradient(circle at 50% 52%,rgba(238,180,73,.18),transparent 30%),linear-gradient(180deg,#171a20,#06080b 82%);box-shadow:inset 0 0 28px #000,0 0 0 4px rgba(76,80,84,.58)}
  .sc-mine .station.st-door .stbeam{left:7px;right:7px;top:2px;height:13px;border-color:#392416;background:linear-gradient(180deg,#8b5b32,#5f3a20)}
  .sc-mine .station.st-door .stlamp{top:49px;background:#ffd268;box-shadow:0 0 15px 6px rgba(255,181,56,.7)}
  .sc-mine .station.st-door .sticon{top:25px;font-size:33px}
  .sc-mine .station.st-door .stlabel{top:98px;border-color:#4a2e19;background:linear-gradient(180deg,#8b5b32,#55331d);color:#fff0bc;text-shadow:0 2px 2px #000}
  .sc-mine .station.st-scene-deep .stentry{background:radial-gradient(circle at 50% 46%,rgba(73,163,229,.22),transparent 28%),linear-gradient(180deg,#152537,#04070c 82%)}
  /* Palace halls use broad cool-marble openings that belong to the wall.
     Each threshold is a room-sized arch, never a silver capsule. */
  .sc-empire .station.st-door .stenv::before{inset:8px 1px 9px;border-color:#7c808b;border-width:4px 9px 8px;border-radius:6px 6px 2px 2px;background:linear-gradient(90deg,#a8adb7,#ece9dc 18%,#b9bec5 31%,#e8e6da 69%,#a7acb5);box-shadow:inset 0 0 0 2px rgba(255,255,255,.48)}
  .sc-empire .station.st-door .stentry{width:72px;height:68px;border-color:#888c93;background:linear-gradient(180deg,#335f8a,#172943 82%)}
  .sc-empire .station.st-door .stbeam{left:0;right:0;top:1px;height:17px;border-color:#7c808a;background:linear-gradient(180deg,#eeeadd,#b4bac1)}
  .sc-empire .station.st-door .stlabel{border-color:#233c72;background:linear-gradient(180deg,#395b9e,#20396f);color:#fff0bd;text-shadow:0 2px 2px rgba(0,0,0,.65)}
  .sc-empire .station.st-scene-auction .stentry{background:linear-gradient(180deg,#73502d,#2d1c12 82%)}
  .sc-empire .station.st-scene-menagerie .stentry,.sc-empire .station.st-scene-pethouse-door .stentry{background:linear-gradient(180deg,#6d4d68,#2c1f32 82%)}
  .sc-empire .station.st-scene-harbor .stentry{background:linear-gradient(180deg,#2c84a7,#153f65 82%)}
  /* The Household Court is deliberately eclectic. These are furnishings and
     places with different silhouettes, not one reusable portal component. */
  .sc-empire .station.st-scene-wardrobe .stenv::before{inset:5px 17px 8px;border:5px solid #4a2c20;border-bottom-width:8px;border-radius:8px 8px 3px 3px;background:linear-gradient(90deg,#71442d 0 48%,#4b2c22 49% 51%,#71442d 52%);box-shadow:inset 0 0 0 3px rgba(236,181,98,.22)}
  .sc-empire .station.st-scene-wardrobe .stentry{bottom:16px;width:74px;height:69px;border:3px solid #a16b3f;border-radius:5px;background:linear-gradient(90deg,#8a5538 0 48%,#3b241e 49% 51%,#8a5538 52%);box-shadow:inset 0 0 0 4px rgba(66,35,24,.35)}
  .sc-empire .station.st-scene-wardrobe .stentry::before,.sc-empire .station.st-scene-wardrobe .stentry::after{content:"";position:absolute;top:36px;width:4px;height:4px;border-radius:50%;background:#efcf70}.sc-empire .station.st-scene-wardrobe .stentry::before{left:30px}.sc-empire .station.st-scene-wardrobe .stentry::after{right:30px}
  .sc-empire .station.st-scene-wardrobe .stbeam{left:15px;right:15px;top:0;border-color:#4a2c20;background:linear-gradient(180deg,#8d5a3a,#603522)}
  .sc-empire .station.st-scene-wardrobe .stlamp{display:none}
  .sc-empire .station.st-scene-menagerie .stenv::before,.sc-empire .station.st-scene-pethouse-door .stenv::before{inset:20px 8px 8px;border:5px solid #543426;border-bottom-width:8px;border-radius:9px;background:linear-gradient(90deg,#a66e49,#d0a06a 22%,#a66e49 52%,#d0a06a 78%,#8f593e)}
  .sc-empire .station.st-scene-menagerie .stentry,.sc-empire .station.st-scene-pethouse-door .stentry{bottom:15px;width:73px;height:65px;border-color:#694431;border-radius:38px 38px 3px 3px;background:linear-gradient(180deg,#59425d,#231d2c 82%)}
  .sc-empire .station.st-scene-menagerie .stbeam,.sc-empire .station.st-scene-pethouse-door .stbeam{left:2px;right:2px;top:1px;height:31px;border:4px solid #543426;background:linear-gradient(180deg,#a45543,#673337);clip-path:polygon(50% 0,100% 100%,0 100%)}
  .sc-empire .station.st-scene-menagerie .stlamp,.sc-empire .station.st-scene-pethouse-door .stlamp{top:54px}
  .sc-empire .station.st-scene-auction .stenv::before{inset:24px 2px 8px;border:5px solid #59361f;border-bottom-width:9px;border-radius:3px;background:linear-gradient(180deg,#7d5232,#56351f);box-shadow:inset 0 -19px 0 rgba(34,20,12,.46)}
  .sc-empire .station.st-scene-auction .stentry{bottom:13px;width:96px;height:49px;border:0;border-radius:2px;background:linear-gradient(180deg,#d7aa5b 0 42%,#5b371f 43% 100%);box-shadow:inset 0 -8px 0 #332014}
  .sc-empire .station.st-scene-auction .stbeam{left:-2px;right:-2px;top:7px;height:25px;border-color:#654025;background:repeating-linear-gradient(90deg,#aa4732 0 19px,#efd27b 19px 38px);clip-path:polygon(3% 0,97% 0,100% 100%,0 100%)}
  .sc-empire .station.st-scene-auction .stlamp{top:55px}
  .sc-empire .station.st-scene-academy .stenv::before{inset:20px 1px 8px;border:0;background:repeating-linear-gradient(90deg,#aeb4bd 0 13px,#ece9dd 13px 27px);clip-path:polygon(7% 0,93% 0,93% 92%,100% 92%,100% 100%,0 100%,0 92%,7% 92%);box-shadow:inset 0 0 0 3px rgba(104,111,122,.55)}
  .sc-empire .station.st-scene-academy .stentry{bottom:14px;width:66px;height:59px;border-color:#7d828d;background:linear-gradient(180deg,#345e8a,#152741 82%)}
  .sc-empire .station.st-scene-academy .stbeam{left:0;right:0;top:2px;height:30px;border-color:#777d88;background:linear-gradient(180deg,#f0ecdf,#b5bbc3);clip-path:polygon(50% 0,100% 72%,94% 100%,6% 100%,0 72%)}
  .sc-empire .station.st-scene-harbor .stenv::before{inset:23px 1px 7px;border:5px solid #435d70;border-bottom-width:9px;border-radius:5px;background:linear-gradient(180deg,#7296a7,#315a70 64%,#3a2a1e 65%);box-shadow:inset 0 -16px 0 rgba(28,19,13,.5)}
  .sc-empire .station.st-scene-harbor .stentry{bottom:13px;width:78px;height:57px;border-color:#456579;background:linear-gradient(180deg,#36a1ba,#175174 82%)}
  .sc-empire .station.st-scene-harbor .stbeam{left:0;right:0;top:3px;height:28px;border-color:#4b5465;background:linear-gradient(180deg,#48759c,#243f72);clip-path:polygon(50% 0,100% 78%,94% 100%,6% 100%,0 78%)}
  .sc-empire .station.st-scene-court .stenv::before{inset:22px 4px 8px;border:5px solid #65412e;border-bottom-width:8px;border-radius:5px;background:linear-gradient(90deg,#bd8055,#e1b378 24%,#bf8055 50%,#e1b378 76%,#a96c4b)}
  .sc-empire .station.st-scene-court .stentry{bottom:14px;width:72px;height:61px;border-color:#65412e;background:linear-gradient(180deg,#754332,#38241f 82%)}
  .sc-empire .station.st-scene-court .stbeam{left:1px;right:1px;top:1px;height:33px;border-color:#5a3030;background:linear-gradient(180deg,#985044,#5b3033);clip-path:polygon(50% 0,100% 78%,94% 100%,6% 100%,0 78%)}
  /* The Card Hall is a room of playable tables. Suits, cards, chips, and the
     attached table plaque do the wayfinding, with no door facade at all. */
  .sc-cardhall .station.st-cardtable{width:184px;height:122px}
  .sc-cardhall .station.st-cardtable .stenv{display:block;position:absolute;left:50%;top:8px;width:164px;height:92px;transform:translateX(-50%);filter:drop-shadow(0 10px 7px rgba(0,0,0,.48));transition:transform .18s ease,filter .18s ease}
  .sc-cardhall .station.st-cardtable .stenv::before{content:"";position:absolute;left:3px;right:3px;top:10px;height:61px;border:7px solid #58351d;border-radius:50%;background:radial-gradient(ellipse at 50% 42%,rgba(255,255,255,.08),transparent 55%),linear-gradient(180deg,#286143,#123d29);box-shadow:inset 0 0 0 3px rgba(225,187,103,.28),inset 0 -15px 24px rgba(0,0,0,.28)}
  .sc-cardhall .station.st-cardtable .stenv::after{content:"";position:absolute;left:35px;right:35px;top:62px;height:25px;background:linear-gradient(90deg,transparent 0 10%,#4a2c1a 11% 24%,transparent 25% 75%,#4a2c1a 76% 89%,transparent 90%);filter:drop-shadow(0 4px 2px rgba(0,0,0,.42))}
  .sc-cardhall .station.st-cardtable .stentry{left:50%;bottom:36px;width:36px;height:25px;border:2px solid rgba(255,244,215,.72);border-radius:3px;background:repeating-linear-gradient(135deg,#f7f0dc 0 7px,#bd2f36 7px 9px);box-shadow:-18px 3px 0 -4px #f6efd9,18px 3px 0 -4px #f6efd9;transform:translateX(-50%) rotate(-2deg)}
  .sc-cardhall .station.st-cardtable .stbeam{display:none}
  .sc-cardhall .station.st-cardtable .stlamp{top:52px;width:9px;height:9px;background:#d9a43b;box-shadow:0 0 0 2px #7a4f16,8px -3px 0 -1px #ead172,-7px 4px 0 -1px #b73535}
  .sc-cardhall .station.st-cardtable .stlamp-l{left:31px}.sc-cardhall .station.st-cardtable .stlamp-r{right:31px}
  .sc-cardhall .station.st-cardtable .sticon{position:absolute;z-index:5;left:50%;top:15px;width:48px;height:42px;margin:0;transform:translateX(-50%);font-size:31px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.7))}
  .sc-cardhall .station.st-cardtable .stlabel{position:absolute;z-index:6;left:50%;top:77px;width:max-content;max-width:174px;margin:0;padding:4px 11px 5px;transform:translateX(-50%);border:2px solid #684219;border-radius:3px;background:linear-gradient(180deg,#e3c16c,#9c6825);color:#261706;font-size:11.5px;line-height:1;text-shadow:0 1px rgba(255,238,175,.58);box-shadow:inset 0 0 0 1px rgba(255,245,204,.48),0 4px 5px rgba(0,0,0,.42)}
  .sc-cardhall .station.st-cardtable:hover .stenv,.sc-cardhall .station.st-cardtable:focus-visible .stenv{transform:translateX(-50%) translateY(-4px) scale(1.025);filter:drop-shadow(0 0 10px rgba(255,210,100,.7)) drop-shadow(0 12px 8px rgba(0,0,0,.48))}
  .sc-cardhall .station.st-cardtable:hover .sticon,.sc-cardhall .station.st-cardtable:focus-visible .sticon{transform:translateX(-50%) translateY(-4px) scale(1.08)}
  .sc-cardhall .station.st-scene-hearts .stenv::before,.sc-cardhall .station.st-scene-speed .stenv::before{background:linear-gradient(180deg,#7c2631,#3b1420)}
  .sc-cardhall .station.st-scene-spades .stenv::before,.sc-cardhall .station.st-scene-holdem .stenv::before{background:linear-gradient(180deg,#256541,#103820)}
  .sc-cardhall .station.st-scene-bridge .stenv::before{background:linear-gradient(180deg,#355e88,#182f55)}
  .sc-cardhall .station.st-scene-ohhell .stenv::before{background:linear-gradient(180deg,#6a426f,#35223f)}
  .sc-cardhall .station.st-scene-quina .stenv::before{background:linear-gradient(180deg,#34757a,#17464c)}
  /* Academy landmarks are scholarly furniture and places. The shared pieces
     below render shelves, lecterns, map tables, monuments, and desks rather
     than treating every activity as another doorway. */
  .sc-hall .station.st-bookshelf,.sc-hall .station.st-maptable,.sc-hall .station.st-lectern,.sc-hall .station.st-scrollrack,.sc-hall .station.st-trophywall,.sc-hall .station.st-monument,.sc-hall .station.st-desk{width:170px;height:128px}
  .sc-hall .station.st-bookshelf .stenv,.sc-hall .station.st-maptable .stenv,.sc-hall .station.st-lectern .stenv,.sc-hall .station.st-scrollrack .stenv,.sc-hall .station.st-trophywall .stenv,.sc-hall .station.st-monument .stenv,.sc-hall .station.st-desk .stenv{display:block;position:absolute;left:50%;top:5px;width:145px;height:100px;transform:translateX(-50%);filter:drop-shadow(0 9px 6px rgba(0,0,0,.48));transition:transform .18s ease,filter .18s ease}
  .sc-hall .station.st-bookshelf .sticon,.sc-hall .station.st-maptable .sticon,.sc-hall .station.st-lectern .sticon,.sc-hall .station.st-scrollrack .sticon,.sc-hall .station.st-trophywall .sticon,.sc-hall .station.st-monument .sticon,.sc-hall .station.st-desk .sticon{position:absolute;z-index:5;left:50%;top:19px;width:50px;height:45px;margin:0;transform:translateX(-50%);font-size:34px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.7))}
  .sc-hall .station.st-bookshelf .stlabel,.sc-hall .station.st-maptable .stlabel,.sc-hall .station.st-lectern .stlabel,.sc-hall .station.st-scrollrack .stlabel,.sc-hall .station.st-trophywall .stlabel,.sc-hall .station.st-monument .stlabel,.sc-hall .station.st-desk .stlabel{position:absolute;z-index:6;left:50%;top:83px;width:max-content;max-width:164px;margin:0;padding:4px 10px 5px;transform:translateX(-50%);border:2px solid #6b4c20;border-radius:3px;background:linear-gradient(180deg,#d8bd72,#936628);color:#291a08;font-size:11.5px;line-height:1;text-shadow:0 1px rgba(255,241,189,.55);box-shadow:0 4px 5px rgba(0,0,0,.42)}
  .sc-hall .station.st-bookshelf:hover .stenv,.sc-hall .station.st-maptable:hover .stenv,.sc-hall .station.st-lectern:hover .stenv,.sc-hall .station.st-scrollrack:hover .stenv,.sc-hall .station.st-trophywall:hover .stenv,.sc-hall .station.st-monument:hover .stenv,.sc-hall .station.st-desk:hover .stenv,.sc-hall .station.st-bookshelf:focus-visible .stenv,.sc-hall .station.st-maptable:focus-visible .stenv,.sc-hall .station.st-lectern:focus-visible .stenv,.sc-hall .station.st-scrollrack:focus-visible .stenv,.sc-hall .station.st-trophywall:focus-visible .stenv,.sc-hall .station.st-monument:focus-visible .stenv,.sc-hall .station.st-desk:focus-visible .stenv{transform:translateX(-50%) translateY(-4px);filter:drop-shadow(0 0 9px rgba(231,190,98,.7)) drop-shadow(0 11px 7px rgba(0,0,0,.48))}
  .sc-hall .station.st-bookshelf .stenv::before{content:"";position:absolute;inset:2px 16px 9px;border:6px solid #4b2c20;border-radius:4px;background:repeating-linear-gradient(0deg,#8f5e3c 0 8px,#4b2b22 8px 13px,#c4965d 13px 21px,#3b2420 21px 27px);box-shadow:inset 0 0 0 3px rgba(240,197,109,.16)}
  .sc-hall .station.st-bookshelf .stenv::after{content:"";position:absolute;left:9px;right:9px;bottom:3px;height:12px;background:linear-gradient(180deg,#8a5a37,#4c2d20);clip-path:polygon(5% 0,95% 0,100% 100%,0 100%)}
  .sc-hall .station.st-bookshelf .stentry,.sc-hall .station.st-bookshelf .stbeam,.sc-hall .station.st-bookshelf .stlamp{display:none}
  .sc-hall .station.st-maptable .stenv::before{content:"";position:absolute;left:4px;right:4px;top:18px;height:57px;border:7px solid #56371f;border-radius:48%;background:radial-gradient(circle at 67% 42%,#d5bd70 0 4%,transparent 5%),repeating-linear-gradient(35deg,rgba(54,87,70,.25) 0 3px,transparent 3px 17px),linear-gradient(180deg,#c8b071,#807344);transform:perspective(90px) rotateX(18deg)}
  .sc-hall .station.st-maptable .stenv::after{content:"";position:absolute;left:30px;right:30px;top:66px;height:26px;background:linear-gradient(90deg,#4a2c1a 0 18%,transparent 19% 81%,#4a2c1a 82%)}
  .sc-hall .station.st-maptable .stentry,.sc-hall .station.st-maptable .stbeam,.sc-hall .station.st-maptable .stlamp{display:none}
  .sc-hall .station.st-lectern .stenv::before{content:"";position:absolute;left:29px;right:29px;top:11px;height:73px;border:5px solid #543523;background:linear-gradient(180deg,#a87545,#684027);clip-path:polygon(8% 0,92% 0,100% 22%,72% 33%,77% 100%,23% 100%,28% 33%,0 22%)}
  .sc-hall .station.st-lectern .stenv::after{content:"";position:absolute;left:27px;right:27px;bottom:7px;height:9px;background:#4b2d20;border-radius:50%}
  .sc-hall .station.st-lectern .stentry,.sc-hall .station.st-lectern .stbeam,.sc-hall .station.st-lectern .stlamp{display:none}
  .sc-hall .station.st-scrollrack .stenv::before{content:"";position:absolute;inset:8px 11px 14px;border:5px solid #6c4b25;border-radius:5px;background:repeating-linear-gradient(0deg,#ead9a4 0 13px,#c7a968 13px 15px);box-shadow:inset 0 0 18px rgba(70,42,15,.35)}
  .sc-hall .station.st-scrollrack .stenv::after{content:"";position:absolute;left:4px;right:4px;bottom:6px;height:10px;background:linear-gradient(180deg,#9c6c35,#5d3d22);border-radius:8px}
  .sc-hall .station.st-scrollrack .stentry,.sc-hall .station.st-scrollrack .stbeam,.sc-hall .station.st-scrollrack .stlamp{display:none}
  .sc-hall .station.st-trophywall .stenv::before{content:"";position:absolute;inset:7px 9px 12px;border:6px double #a47b2b;border-radius:5px;background:radial-gradient(circle at 50% 45%,rgba(255,218,112,.28),transparent 35%),linear-gradient(180deg,#4f315d,#251a35);box-shadow:inset 0 0 0 3px rgba(230,198,116,.18)}
  .sc-hall .station.st-trophywall .stenv::after{content:"";position:absolute;left:25px;right:25px;bottom:6px;height:10px;background:linear-gradient(180deg,#b18a3d,#69491f)}
  .sc-hall .station.st-trophywall .stentry,.sc-hall .station.st-trophywall .stbeam,.sc-hall .station.st-trophywall .stlamp{display:none}
  .sc-hall .station.st-monument .stenv::before{content:"";position:absolute;left:38px;right:38px;top:20px;height:57px;border:5px solid #7d7d78;border-radius:45% 45% 5px 5px;background:linear-gradient(90deg,#9fa2a0,#e2dfd3 48%,#969b9c)}
  .sc-hall .station.st-monument .stenv::after{content:"";position:absolute;left:25px;right:25px;bottom:7px;height:19px;background:linear-gradient(180deg,#c9c6b9,#8e9394);clip-path:polygon(12% 0,88% 0,100% 100%,0 100%)}
  .sc-hall .station.st-monument .stentry,.sc-hall .station.st-monument .stbeam,.sc-hall .station.st-monument .stlamp{display:none}
  .sc-hall .station.st-desk .stenv::before{content:"";position:absolute;left:5px;right:5px;top:27px;height:52px;border:5px solid #4c2e20;border-radius:4px;background:linear-gradient(180deg,#9c6941,#5e3926);box-shadow:inset 0 -17px 0 rgba(45,25,18,.28)}
  .sc-hall .station.st-desk .stenv::after{content:"";position:absolute;left:15px;right:15px;bottom:6px;height:19px;background:linear-gradient(90deg,#4c2d20 0 16%,transparent 17% 83%,#4c2d20 84%)}
  .sc-hall .station.st-desk .stentry,.sc-hall .station.st-desk .stbeam,.sc-hall .station.st-desk .stlamp{display:none}
  .sc-hall .station.st-scene-forum .stenv::before{border-color:#776f82;background:linear-gradient(90deg,#847d8d,#d2cbd3 24%,#8d8396 50%,#d5ced5 76%,#756e7e)}
  .sc-hall .station.st-scene-forum .stentry{background:linear-gradient(180deg,#714663,#2b1d3d 82%)}
  .sc-hall .station.st-scene-teacher .stentry{background:radial-gradient(circle at 50% 44%,rgba(242,200,102,.32),transparent 31%),linear-gradient(180deg,#385f55,#172f2a 82%)}
  .sc-hall .station.st-scene-registrar .stentry{background:linear-gradient(180deg,#6f4e36,#2f211c 82%)}
  @media(max-width:640px){
    .sc-cardhall .station.st-cardtable{width:145px}
    .sc-cardhall .station.st-cardtable .stenv{width:128px;transform:translateX(-50%) scale(.88);transform-origin:50% 80%}
    .sc-cardhall .station.st-cardtable:hover .stenv,.sc-cardhall .station.st-cardtable:focus-visible .stenv{transform:translateX(-50%) translateY(-3px) scale(.9)}
    .sc-cardhall .station.st-cardtable .sticon{top:21px;transform:translateX(-50%) scale(.82)}
    .sc-cardhall .station.st-cardtable:hover .sticon,.sc-cardhall .station.st-cardtable:focus-visible .sticon{transform:translateX(-50%) translateY(-3px) scale(.88)}
    .sc-cardhall .station.st-cardtable .stlabel{top:77px;max-width:128px;padding-left:7px;padding-right:7px;font-size:10.5px}
    .sc-hall .station.st-bookshelf,.sc-hall .station.st-maptable,.sc-hall .station.st-lectern,.sc-hall .station.st-scrollrack,.sc-hall .station.st-trophywall,.sc-hall .station.st-monument,.sc-hall .station.st-desk{width:148px}
    .sc-hall .station.st-bookshelf .stenv,.sc-hall .station.st-maptable .stenv,.sc-hall .station.st-lectern .stenv,.sc-hall .station.st-scrollrack .stenv,.sc-hall .station.st-trophywall .stenv,.sc-hall .station.st-monument .stenv,.sc-hall .station.st-desk .stenv{width:128px;transform:translateX(-50%) scale(.9);transform-origin:50% 84%}
  }
  /* Inner Olympiad districts are furnished contest grounds. One shared
     interaction contract renders many physical silhouettes, so entering a
     game feels like approaching its place rather than choosing a launcher. */
  .sc-arcade .station.st-contest{width:178px;height:130px}
  .sc-arcade .station.st-contest .stenv{display:block;position:absolute;left:50%;top:5px;width:150px;height:102px;transform:translateX(-50%);filter:drop-shadow(0 9px 7px rgba(0,0,0,.48));transition:transform .18s ease,filter .18s ease}
  .sc-arcade .station.st-contest .stenv::before{content:"";position:absolute;inset:15px 12px 13px;border:5px solid #6b4b26;border-bottom-width:8px;border-radius:6px;background:linear-gradient(180deg,#b8894e,#684322);box-shadow:inset 0 0 0 3px rgba(255,224,153,.15)}
  .sc-arcade .station.st-contest .stenv::after{content:"";position:absolute;left:23px;right:23px;bottom:4px;height:13px;border-radius:50%;background:rgba(37,23,12,.42)}
  .sc-arcade .station.st-contest .stentry,.sc-arcade .station.st-contest .stbeam,.sc-arcade .station.st-contest .stlamp{display:none}
  .sc-arcade .station.st-contest .sticon{position:absolute;z-index:5;left:50%;top:20px;width:52px;height:46px;margin:0;transform:translateX(-50%);font-size:35px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.72))}
  .sc-arcade .station.st-contest .stlabel{position:absolute;z-index:6;left:50%;top:84px;width:max-content;max-width:168px;margin:0;padding:4px 10px 5px;transform:translateX(-50%);border:2px solid #6a4519;border-radius:3px;background:linear-gradient(180deg,#e1c36f,#9a6826);color:#271706;font-size:11.5px;line-height:1;text-shadow:0 1px rgba(255,242,189,.58);box-shadow:inset 0 0 0 1px rgba(255,246,210,.42),0 4px 5px rgba(0,0,0,.42)}
  .sc-arcade .station.st-contest:hover .stenv,.sc-arcade .station.st-contest:focus-visible .stenv{transform:translateX(-50%) translateY(-4px) scale(1.025);filter:drop-shadow(0 0 10px rgba(255,211,107,.72)) drop-shadow(0 12px 8px rgba(0,0,0,.48))}
  .sc-arcade .station.st-contest:hover .sticon,.sc-arcade .station.st-contest:focus-visible .sticon{transform:translateX(-50%) translateY(-4px) scale(1.08)}
  /* Puzzle Stoa: loom, shrine, stones, pen, gate, and a floor mosaic. */
  .sc-arcade .station.st-scene-marble .stenv::before{inset:24px 5px 10px;border:0;background:repeating-linear-gradient(90deg,#aaaeb2 0 13px,#e4e1d5 13px 26px);clip-path:polygon(8% 0,92% 0,92% 90%,100% 90%,100% 100%,0 100%,0 90%,8% 90%);box-shadow:inset 0 0 0 3px rgba(95,100,108,.5)}
  .sc-arcade .station.st-scene-marble .stenv::after{left:0;right:0;top:1px;bottom:auto;height:34px;border:4px solid #777d84;border-radius:0;background:linear-gradient(180deg,#eeeadd,#b2b7bd);clip-path:polygon(50% 0,100% 78%,94% 100%,6% 100%,0 78%)}
  .sc-arcade .station.st-scene-wanderers .stenv::before{inset:23px 5px 9px;border:0;background:repeating-linear-gradient(90deg,#71482b 0 8px,transparent 8px 20px),repeating-linear-gradient(0deg,transparent 0 18px,#9a6940 18px 24px);border-bottom:7px solid #5a3824;box-shadow:none}
  .sc-arcade .station.st-scene-wanderers .stenv::after{left:8px;right:8px;bottom:7px;height:28px;background:radial-gradient(ellipse,#90a75a 0 58%,transparent 60%)}
  /* War Grounds: battlements, campaign map, model. */
  .sc-arcade .station.st-scene-tarpits .stenv::before{inset:24px 4px 13px;border:8px solid #5b3b22;border-radius:50%;background:radial-gradient(ellipse,#b9864e 0 55%,#70451f 57% 66%,#302016 68%);transform:perspective(90px) rotateX(20deg)}
  .sc-arcade .station.st-scene-tarpits .stenv::before{border-color:#3e3027;background:radial-gradient(ellipse,#161419 0 55%,#3b3028 57% 66%,#201713 68%)}
  .sc-arcade .station.st-scene-tarpits .stenv::after{display:none}
  .sc-arcade .station.st-scene-defend .stenv::before{inset:21px 7px 10px;border:6px solid #65686b;border-bottom-width:9px;border-radius:2px;background:repeating-linear-gradient(90deg,#9b9c98 0 20px,#cac8bd 20px 40px);clip-path:polygon(0 15%,8% 15%,8% 0,20% 0,20% 15%,34% 15%,34% 0,46% 0,46% 15%,60% 15%,60% 0,72% 0,72% 15%,86% 15%,86% 0,100% 0,100% 100%,0 100%)}
  .sc-arcade .station.st-scene-dominion .stenv::before{inset:20px 3px 15px;border:7px solid #54341f;border-radius:48%;background:radial-gradient(circle at 65% 42%,#d5bd70 0 4%,transparent 5%),repeating-linear-gradient(35deg,rgba(52,88,69,.28) 0 3px,transparent 3px 16px),linear-gradient(180deg,#c9b171,#7e7142);transform:perspective(90px) rotateX(20deg)}
  .sc-arcade .station.st-scene-dominion .stenv::after{left:28px;right:28px;height:22px;background:linear-gradient(90deg,#4b2e1d 0 18%,transparent 19% 81%,#4b2e1d 82%);border-radius:0}
  /* Inventors' Yard: cook stall, bridge, workbench, port desk, city bench. */
  .sc-arcade .station.st-scene-cookhouse .stenv::before{inset:25px 4px 9px;border:5px solid #58351f;border-bottom-width:9px;background:linear-gradient(180deg,#8d5a32,#4f301e);box-shadow:inset 0 -18px 0 rgba(35,19,12,.34)}
  .sc-arcade .station.st-scene-cookhouse .stenv::after{left:1px;right:1px;top:4px;bottom:auto;height:28px;border:4px solid #643b20;border-radius:2px;background:repeating-linear-gradient(90deg,#a94631 0 18px,#edcf75 18px 36px)}
  .sc-arcade .station.st-scene-pontifex .stenv::before{inset:17px 1px 10px;border:9px solid #777a7c;border-bottom-width:13px;border-radius:54% 54% 4px 4px;background:radial-gradient(ellipse at 50% 100%,transparent 0 42%,#aeb0ac 43% 64%,transparent 65%),linear-gradient(#c8c6bc,#8f9497);clip-path:polygon(0 0,100% 0,100% 100%,75% 100%,75% 70%,25% 70%,25% 100%,0 100%)}
  .sc-arcade .station.st-scene-daedalus .stenv::before,.sc-arcade .station.st-scene-city .stenv::before{inset:28px 4px 10px;border:6px solid #4c2e20;border-bottom-width:9px;background:linear-gradient(180deg,#9a6740,#5b3725);box-shadow:inset 0 -17px 0 rgba(45,25,18,.28)}
  .sc-arcade .station.st-scene-daedalus .stenv::after{left:17px;right:17px;bottom:4px;height:24px;background:radial-gradient(circle at 30% 50%,#c79d43 0 10%,transparent 11%),radial-gradient(circle at 70% 50%,#76818d 0 12%,transparent 13%)}
  .sc-arcade .station.st-scene-city .stenv::after{left:19px;right:19px;bottom:10px;height:38px;border-radius:0;background:linear-gradient(90deg,#caa563 0 18%,transparent 19% 26%,#8f6a46 27% 47%,transparent 48% 55%,#d1b372 56% 77%,transparent 78%)}
  /* Scholars' Corner: board tables, records wall, festival altar. */
  .sc-arcade .station.st-scene-lexicon .stenv::before,.sc-arcade .station.st-scene-petteia .stenv::before,.sc-arcade .station.st-scene-pente .stenv::before{inset:22px 3px 15px;border:7px solid #55351f;border-radius:48%;background:repeating-linear-gradient(90deg,rgba(242,219,159,.3) 0 2px,transparent 2px 17px),repeating-linear-gradient(0deg,rgba(242,219,159,.3) 0 2px,transparent 2px 17px),linear-gradient(180deg,#6b4b35,#2d231f);transform:perspective(90px) rotateX(18deg)}
  .sc-arcade .station.st-scene-petteia .stenv::before{background:repeating-linear-gradient(90deg,rgba(243,231,190,.42) 0 2px,transparent 2px 19px),repeating-linear-gradient(0deg,rgba(243,231,190,.42) 0 2px,transparent 2px 19px),linear-gradient(180deg,#456a73,#203d48)}
  .sc-arcade .station.st-scene-pente .stenv::before{background:radial-gradient(circle at 35% 42%,#111 0 5px,transparent 6px),radial-gradient(circle at 60% 62%,#eee4ce 0 5px,transparent 6px),repeating-linear-gradient(90deg,rgba(75,45,19,.42) 0 2px,transparent 2px 16px),repeating-linear-gradient(0deg,rgba(75,45,19,.42) 0 2px,transparent 2px 16px),linear-gradient(180deg,#c39b5f,#876237)}
  .sc-arcade .station.st-scene-records .stenv::before{inset:5px 13px 10px;border:7px double #8c713f;border-bottom-width:10px;border-radius:3px;background:repeating-linear-gradient(0deg,#5a5552 0 15px,#77706b 15px 18px);box-shadow:inset 0 0 0 4px rgba(225,203,139,.12)}
  @media(max-width:640px){.sc-arcade .roomtitle{left:116px;font-size:13px}.sc-arcade .station.st-contest{width:150px}.sc-arcade .station.st-contest .stenv{width:130px;transform:translateX(-50%) scale(.9);transform-origin:50% 84%}.sc-arcade .station.st-contest:hover .stenv,.sc-arcade .station.st-contest:focus-visible .stenv{transform:translateX(-50%) translateY(-3px) scale(.92)}.sc-arcade .station.st-contest .stlabel{max-width:138px;font-size:10.5px;padding-left:7px;padding-right:7px}}
  /* Olympiad wings are actual stadium gates with banners and open passages. */
  .sc-arcade .station.st-wing{width:184px;height:138px}
  .sc-arcade .station.st-wing .stenv{width:156px;height:108px}
  .sc-arcade .station.st-wing .stenv::before{inset:7px 1px 10px;border-color:#77746d;border-width:5px 11px 8px;background:linear-gradient(90deg,#9b9b96,#e0ddd0 22%,#b1b0aa 36%,#dfddd1 64%,#9c9c98);box-shadow:inset 0 0 0 2px rgba(255,255,255,.42)}
  .sc-arcade .station.st-wing .stentry{width:78px;height:70px;border-color:#6f6f6c;background:linear-gradient(180deg,#375681,#17284b 82%)}
  .sc-arcade .station.st-wing .stbeam{left:-1px;right:-1px;top:0;height:19px;border-color:#6f6b60;background:linear-gradient(180deg,#e8dfc4,#b7ad91)}
  .sc-arcade .station.st-wing .stlabel{top:87px;max-width:178px;border-color:#283e78;background:linear-gradient(180deg,#3b5b9c,#20376c);color:#fff0bd;text-shadow:0 2px 2px #000}
  .sc-arcade .station.st-scene-war .stentry{background:linear-gradient(180deg,#823d31,#3a1718 82%)}
  .sc-arcade .station.st-scene-yard .stentry{background:linear-gradient(180deg,#79552d,#32200f 82%)}
  .sc-arcade .station.st-scene-scholars .stentry{background:linear-gradient(180deg,#4d4778,#222044 82%)}
  @media(max-width:640px){.station.st-door,.station.st-wing{width:150px;transform-origin:50% 100%}.station.st-door .stenv,.station.st-wing .stenv{transform:translateX(-50%) scale(.9);transform-origin:50% 100%}.station.st-door:hover .stenv,.station.st-door:focus-visible .stenv,.station.st-wing:hover .stenv,.station.st-wing:focus-visible .stenv{transform:translateX(-50%) translateY(-3px) scale(.92)}.station.st-door .stlabel,.station.st-wing .stlabel{max-width:146px;font-size:11.5px}.sc-arcade .station.st-wing{width:160px}}
  @keyframes relicGlimmer{from{filter:brightness(1);transform:translateY(0) rotate(0deg)}to{filter:brightness(1.14);transform:translateY(-5px) rotate(0deg)}}
  @media(prefers-reduced-motion:reduce){.station.relicglimmer .sticon{animation:none}}
  /* Phase 4 — the scene arrives with a soft settle. */
  @keyframes mgSettle{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  /* ARENA_SLICE_END 10-room-scenes */
  /* ARENA_SLICE_START 11-marble-bastion-cookhouse -- spliced from arena-css/11-marble-bastion-cookhouse.css; edit that file, not this region */
  .roomscene, body.plazamode .plaza{animation:mgSettle .32s ease-out both}
  .boardcard, .roomovlcard, dialog[open]{animation:mgSettle .22s ease-out both}
  /* These floor accents now double the painted scenes — dim them to a hint. */
  .sc-theater .plazafloor::before{opacity:.28}
  .sc-arcade .plazafloor::before{opacity:.4}
  .sc-empire .plazafloor::before{display:none}
  /* QA: the way back must be unmissable — every back link is a bold pill. */
  .roomback,.cgback,.dcback,.srback,.crback,.aucback,.backlink{display:inline-flex;align-items:center;background:linear-gradient(180deg,#3d5da3,var(--mgblue) 60%,var(--mgblue2)) !important;color:#ffe9ae !important;border:2px solid #16264a !important;border-radius:999px !important;padding:7px 15px 7px 11px !important;font-weight:800;font-size:13.5px;text-decoration:none !important;box-shadow:0 3px 0 #12203f,0 6px 12px rgba(0,0,0,.4);text-shadow:0 1px 2px rgba(0,0,0,.5)}
  .roomback:hover,.cgback:hover,.dcback:hover,.srback:hover,.crback:hover,.aucback:hover,.backlink:hover{filter:brightness(1.12)}
  /* The Cookhouse: a painted, spatial kitchen instead of a utility grid. */
  .cookwrap{position:relative;width:min(1180px,calc(100vw - 24px));margin:0 auto;padding:4px 0 18px;color:#fff2cc}
  .cookmast{display:flex;align-items:center;gap:10px;margin:0 0 7px;padding:0 4px}.cookmast-title{font:900 clamp(20px,3vw,31px)/1 var(--serif);color:#fff1bd;text-shadow:0 2px 8px #000}.cookmast-sub{color:#ccb991;font-size:11px}.cookmast .backlink{flex:none}
  .cookrail{position:relative;z-index:8;display:flex;gap:7px;min-height:84px;padding:7px;overflow-x:auto;border:1px solid rgba(247,204,103,.38);border-radius:15px 15px 5px 5px;background:linear-gradient(180deg,rgba(37,23,11,.96),rgba(18,10,5,.94));box-shadow:0 8px 24px rgba(0,0,0,.4);scrollbar-width:thin}
  .cookorder{position:relative;flex:0 0 172px;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto auto;gap:1px 7px;min-width:0;padding:7px 8px 6px;border:1px solid #c5943d;border-radius:10px;background:linear-gradient(155deg,#f6e2ae,#d6ad63);box-shadow:inset 0 0 0 1px rgba(255,250,220,.75),0 4px 10px rgba(0,0,0,.35);color:#342008;transition:transform .16s,border-color .16s}.cookorder.urgent{border-color:#ff6b45;animation:ckticket .55s ease-in-out infinite alternate}.cookorder.next{transform:translateY(-2px);border-color:#fff0a3;box-shadow:0 0 0 2px rgba(255,211,99,.35),0 5px 14px rgba(0,0,0,.4)}
  .ckoicon{grid-row:1/4;width:48px;height:48px;align-self:center}.ckoname{font-size:11.5px;font-weight:950;line-height:1.1}.ckosteps{overflow:hidden;color:#6a4b20;font-size:8.5px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.ckobar{grid-column:2;height:5px;margin-top:3px;overflow:hidden;border-radius:4px;background:rgba(60,40,10,.22)}.ckofill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4b9a49,#8cc957);transition:width 1s linear}.ckotip{position:absolute;top:4px;right:5px;color:#765115;font-size:8px;font-weight:900}
  .cookhud{position:relative;z-index:7;display:flex;gap:6px;align-items:center;margin:5px 0;padding:0 4px;overflow-x:auto;scrollbar-width:none}.cookhud::-webkit-scrollbar{display:none}.cookhud .mstat{flex:none;margin:0;padding:5px 9px;border:1px solid rgba(244,205,111,.28);border-radius:999px;background:rgba(16,9,4,.78);box-shadow:0 3px 10px rgba(0,0,0,.3);color:#f7e2aa;font-size:11px;font-weight:900}.cookhud .ckscore{color:#fff}.cookhud .ckmiss{color:#ffad8f}.cookhud .ckcombo{border-color:#ffb83e;background:linear-gradient(180deg,rgba(157,69,14,.95),rgba(74,27,8,.95));color:#ffe18a}.ckhand{margin-left:auto!important;border-color:#5fcfd0!important;background:linear-gradient(180deg,rgba(17,82,87,.95),rgba(8,43,47,.95))!important;color:#e0ffff!important}.ckhand .cksprite{width:25px;height:25px;margin:-5px 2px -5px -5px;vertical-align:middle}
  .cookstage{position:relative;width:100%;aspect-ratio:1672/941;max-height:calc(100dvh - 208px);min-height:390px;overflow:hidden;border:2px solid #8d5d23;border-radius:7px 7px 20px 20px;background:#2b170c url('cookhouse-kitchen-desktop-v1.webp') center/cover no-repeat;box-shadow:0 18px 60px rgba(0,0,0,.58),inset 0 0 80px rgba(10,4,0,.22);isolation:isolate}.cookstage::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,3,1,.28),transparent 23%,transparent 78%,rgba(6,3,1,.3))}
  .cookgrid{position:absolute;inset:0;z-index:3}.cookst{position:absolute;width:10.5%;min-width:72px;aspect-ratio:1.08;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:3px;border:1.5px solid rgba(255,221,139,.66);border-radius:12px;background:linear-gradient(180deg,rgba(37,24,12,.74),rgba(15,9,5,.84));box-shadow:0 5px 15px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.07);color:#fff1c7;cursor:pointer;transform:translate(-50%,-50%);transition:transform .12s,filter .12s,border-color .12s;user-select:none;-webkit-user-select:none;touch-action:manipulation}.cookst:hover,.cookst:focus-visible{z-index:5;filter:brightness(1.18);border-color:#fff0a2;outline:none}.cookst:active{transform:translate(-50%,-50%) scale(.93)}.cookst[data-station="crate_olives"]{left:8%;top:47%}.cookst[data-station="crate_fish"]{left:8%;top:64%}.cookst[data-station="crate_tomatoes"]{left:8%;top:81%}.cookst[data-station="crate_dough"]{left:92%;top:65%}.cookst[data-station="crate_honey"]{left:92%;top:82%}.cookst[data-station="board_1"]{left:27%;top:85%}.cookst[data-station="board_2"]{left:39%;top:85%}.cookst[data-station="grill"]{left:81%;top:38%}.cookst[data-station="oven"]{left:18%;top:35%}.cookst[data-station="cauldron"]{left:88%;top:49%}.cookst[data-station="counter_1"]{left:52%;top:85%}.cookst[data-station="counter_2"]{left:64%;top:85%}.cookst[data-station="pass"]{left:50%;top:17%}.cookst[data-station="bin"]{left:76%;top:85%}
  .ckicon{width:54%;height:54%;min-height:32px;display:grid;place-items:center;font-size:clamp(23px,3vw,38px);line-height:1}.cklabel{max-width:100%;overflow:hidden;color:#fff0c4;font-size:clamp(8px,.82vw,11px);font-weight:950;line-height:1.05;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 3px #000}.cksub{color:#d7c49d;font-size:7px;font-weight:800}.ckmeter{width:72%;height:4px;margin-top:2px;overflow:hidden;border-radius:6px;background:rgba(255,255,255,.13)}.ckmeter i{display:block;height:100%;border-radius:inherit;background:#f0b13f;transition:width .5s linear}.ck-pass{width:16%;aspect-ratio:2.1;border-color:#4ee0dc;background:linear-gradient(180deg,rgba(11,88,94,.88),rgba(4,40,52,.92))}.ck-pass .cklabel{color:#d9ffff}.ck-bin{width:7%;min-width:58px;opacity:.86}.ck-cauldron{border-color:#d58a36}.ckcooking{animation:ckpulse 1.15s ease-in-out infinite}.ckready{z-index:5;border-color:#8eff8a;box-shadow:0 0 0 3px rgba(104,255,105,.5),0 0 25px rgba(80,255,90,.55);animation:ckbob .72s ease-in-out infinite alternate}.ckburnt{border-color:#ff684c;background:linear-gradient(180deg,rgba(60,18,10,.93),rgba(15,8,5,.96));box-shadow:0 0 25px rgba(230,47,23,.5)}.ckwork{border-color:#ffd15d}.ckwork .ckicon{animation:ckchop .18s ease-out}.ckhint{position:absolute;left:50%;bottom:3%;z-index:5;max-width:56%;padding:6px 12px;border:1px solid rgba(255,220,130,.42);border-radius:999px;background:rgba(13,8,4,.82);color:#f7dfaa;font-size:10px;font-weight:850;text-align:center;transform:translateX(-50%);pointer-events:none}.ckcrew{position:absolute;left:50%;top:57%;z-index:2;display:flex;gap:5px;transform:translate(-50%,-50%);pointer-events:none}.ckchef{display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--chef,#f4c563);border-radius:50% 50% 45% 45%;background:linear-gradient(180deg,#fff3d1 0 25%,var(--chef,#8d5b35) 26% 100%);box-shadow:0 7px 12px rgba(0,0,0,.35);color:#2b1609;font-size:10px;font-weight:950}.ckchef.carrying::after{content:attr(data-item);position:absolute;margin:30px 0 0 30px;font-size:16px}.ckevent{position:absolute;left:50%;top:38%;z-index:7;min-width:160px;padding:8px 15px;border:1px solid rgba(255,230,150,.65);border-radius:999px;background:rgba(24,12,5,.9);box-shadow:0 7px 22px rgba(0,0,0,.48);color:#fff0b1;font:900 12px var(--sans);text-align:center;transform:translate(-50%,-50%);animation:ckevent 1.8s ease both;pointer-events:none}.ckevent.good{border-color:#7aff9b;color:#d8ffe3}.ckevent.bad{border-color:#ff6d56;color:#ffd5cc}
  .cksprite{display:inline-block;background-image:url('cookhouse-food-atlas-v2.webp');background-repeat:no-repeat;background-size:400% 400%;filter:drop-shadow(0 2px 2px rgba(0,0,0,.34))}.cki-olives{background-position:0 0}.cki-fish{background-position:33.333% 0}.cki-dough{background-position:66.666% 0}.cki-honey{background-position:100% 0}.cki-tomatoes{background-position:0 33.333%}.cki-chopped_olives{background-position:33.333% 33.333%}.cki-chopped_fish{background-position:66.666% 33.333%}.cki-chopped_tomatoes{background-position:100% 33.333%}.cki-cake_batter{background-position:0 66.666%}.cki-stew_mix{background-position:33.333% 66.666%}.cki-grilled_fish{background-position:66.666% 66.666%}.cki-baked_bread{background-position:100% 66.666%}.cki-baked_cake{background-position:0 100%}.cki-tomato_soup{background-position:33.333% 100%}.cki-fish_stew{background-position:66.666% 100%}.cki-burnt{background-position:100% 100%}
  .cooklobby{min-height:min(720px,calc(100dvh - 110px));display:grid;place-items:center;padding:22px;border:2px solid #8d5d23;border-radius:18px;background:linear-gradient(rgba(16,8,3,.25),rgba(10,5,2,.7)),url('cookhouse-kitchen-desktop-v1.webp') center/cover no-repeat;box-shadow:0 16px 50px rgba(0,0,0,.55)}.cooklobby-card{width:min(560px,100%);padding:22px;border:1px solid rgba(244,205,112,.62);border-radius:18px;background:linear-gradient(155deg,rgba(38,24,12,.96),rgba(13,8,4,.96));box-shadow:0 18px 50px rgba(0,0,0,.6),inset 0 0 30px rgba(174,102,30,.15)}.cooklobby-title{font:900 28px var(--serif);color:#fff0bd}.cooklobby-copy{margin:6px 0 15px;color:#cdb98e;font-size:12px;line-height:1.5}.cooklobby-split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cooklobby-pane{padding:14px;border:1px solid rgba(237,194,90,.22);border-radius:13px;background:rgba(255,255,255,.035)}.cooklobby-pane .btn{width:100%;margin-top:10px}.cookcode{width:100%;height:43px;border:1px solid #8f6a2a;border-radius:10px;background:#0d0905;color:#fff2c7;font:900 18px var(--sans);letter-spacing:5px;text-align:center;text-transform:uppercase}.cookwait{width:100%;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 13px;border:1px solid rgba(246,205,105,.45);border-radius:11px;background:rgba(20,11,5,.9)}.cookwait .t{color:#ffe7a8}.cookwait-actions{display:flex;gap:7px}.cookovl{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(10,7,3,.72);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cookresults{width:min(520px,100%);padding:24px;border:1px solid #d9a13b;border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(192,116,32,.25),transparent 42%),linear-gradient(160deg,#302012,#120a05);box-shadow:0 24px 70px rgba(0,0,0,.72);text-align:center}.cookstars{margin:8px 0;color:#ffcf4c;font-size:38px;letter-spacing:7px;text-shadow:0 0 15px rgba(255,187,40,.5)}.cookresults-list{display:grid;gap:5px;margin:12px 0;text-align:left}.cookresults-row{display:grid;grid-template-columns:1fr auto auto;gap:9px;padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.04);color:#d8c49c;font-size:11px}.cookresults-row b{color:#fff0c4}
  @keyframes ckpulse{50%{box-shadow:0 0 0 3px rgba(255,176,62,.45),0 0 25px rgba(255,121,38,.38)}}@keyframes ckbob{to{transform:translate(-50%,-55%) scale(1.03)}}@keyframes ckchop{50%{transform:rotate(-12deg) scale(1.08)}}@keyframes ckticket{to{transform:translateY(-2px) rotate(-.4deg)}}@keyframes ckevent{0%{opacity:0;transform:translate(-50%,-30%) scale(.8)}15%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-70%) scale(.94)}}
  @media(max-width:700px){.cookwrap{width:100%;padding:0}.cookmast{padding:0 8px}.cookmast-sub{display:none}.cookrail{min-height:72px;border-radius:0;padding:5px}.cookorder{flex-basis:148px;grid-template-columns:40px 1fr;padding:5px}.ckoicon{width:40px;height:40px}.cookhud{margin:4px 0;padding:0 6px}.cookhud .mstat{padding:4px 7px;font-size:9.5px}.ckhand{margin-left:0!important}.cookstage{width:100%;min-height:620px;max-height:none;aspect-ratio:941/1480;border-width:1px;border-radius:0;background-image:url('cookhouse-kitchen-mobile-v1.webp');background-position:center}.cookst{width:18%;min-width:58px;max-width:76px;aspect-ratio:1.05;border-radius:10px}.cookst[data-station="crate_olives"]{left:10%;top:45%}.cookst[data-station="crate_fish"]{left:10%;top:57%}.cookst[data-station="crate_tomatoes"]{left:10%;top:69%}.cookst[data-station="crate_dough"]{left:90%;top:58%}.cookst[data-station="crate_honey"]{left:90%;top:70%}.cookst[data-station="board_1"]{left:24%;top:82%}.cookst[data-station="board_2"]{left:43%;top:82%}.cookst[data-station="grill"]{left:86%;top:29%}.cookst[data-station="oven"]{left:14%;top:28%}.cookst[data-station="cauldron"]{left:86%;top:41%}.cookst[data-station="counter_1"]{left:61%;top:82%}.cookst[data-station="counter_2"]{left:79%;top:82%}.cookst[data-station="pass"]{left:50%;top:20%;width:31%;max-width:126px;aspect-ratio:2.1}.cookst[data-station="bin"]{left:93%;top:84%;width:13%;min-width:50px}.ckicon{min-height:28px}.cklabel{font-size:8px}.ckhint{bottom:5%;max-width:88%;width:max-content;font-size:9px}.ckcrew{top:51%}.ckchef{width:34px;height:34px;font-size:8px}.cooklobby{min-height:calc(100dvh - 82px);padding:12px;border:0;border-radius:0;background-image:linear-gradient(rgba(16,8,3,.3),rgba(10,5,2,.78)),url('cookhouse-kitchen-mobile-v1.webp')}.cooklobby-card{padding:17px}.cooklobby-title{font-size:24px}.cooklobby-split{grid-template-columns:1fr}.cookwait{grid-template-columns:1fr}.cookwait-actions{display:grid;grid-template-columns:1fr 1fr}.cookwait-actions .btn{font-size:10px;padding:7px}.cookresults{padding:19px}.ckevent{top:36%;font-size:10px}}
  @media(prefers-reduced-motion:reduce){.cookorder,.cookst,.ckofill,.ckmeter i{transition:none}.cookorder.urgent,.ckcooking,.ckready,.ckwork .ckicon,.ckevent{animation:none}.ckevent{opacity:1}}
  .ckfly{position:fixed;z-index:6000;width:34px;height:34px;pointer-events:none;opacity:1;transition:transform .26s cubic-bezier(.3,.7,.4,1),opacity .26s}.ckchip{position:fixed;z-index:6000;width:7px;height:7px;border-radius:2px;pointer-events:none;animation:ckchipfly .6s ease-out both}.ckchip.smoke{width:10px;height:10px;border-radius:50%;opacity:.75;filter:blur(1px)}.cookstage.kick{animation:ckkick .13s ease-out}.ckcourse{position:absolute;left:50%;top:30%;z-index:12;width:max-content;max-width:86%;padding:13px 26px;border:1px solid rgba(255,224,150,.66);border-radius:16px;background:linear-gradient(160deg,rgba(48,29,13,.96),rgba(16,9,4,.96));box-shadow:0 18px 50px rgba(0,0,0,.6),inset 0 0 26px rgba(196,120,38,.18);text-align:center;transform:translate(-50%,-50%);animation:ckcoursein 2.6s ease both;pointer-events:none}.ckcourse-n{color:#d8b877;font:800 10px var(--sans);letter-spacing:.28em;text-transform:uppercase}.ckcourse-name{color:#fff0b8;font:900 clamp(20px,3.4vw,30px) var(--serif);text-shadow:0 2px 12px rgba(0,0,0,.5)}.ckcourse-line{margin-top:2px;color:#cdb98e;font-size:11px;font-weight:700}.ckcoursechip{color:#ffe2a0!important;border-color:rgba(255,214,120,.5)!important}.ckspot{color:#ffe08a!important;text-shadow:0 0 10px rgba(255,200,60,.55)}.ckchef.resting{opacity:.5;filter:grayscale(.65)}.ckchef.resting::before{content:"💤";position:absolute;margin:-33px 0 0 20px;font-size:13px;filter:none}.cookorder.servedout{transform:translateY(-16px) scale(.86);opacity:0;transition:transform .3s ease,opacity .3s ease}
  .ckcere{max-height:min(86dvh,700px);overflow:auto}.ckcere-course{color:#d8b877;font:800 10px var(--sans);letter-spacing:.24em;text-transform:uppercase}.ckcere-line{margin:7px 0 4px;color:#ffe9b4;font:800 13px var(--sans)}.ckstar{display:inline-block;color:#5d4a26}.ckstar.lit{color:#ffcf4c;animation:ckstarpunch .34s cubic-bezier(.2,.9,.3,1.5) both}.ckfeast{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:center;margin:8px 0 10px;padding:12px 10px;border:1px solid rgba(150,96,44,.8);border-radius:14px;background:linear-gradient(180deg,#7a4b22,#552f13);box-shadow:inset 0 5px 16px rgba(0,0,0,.5),0 4px 12px rgba(0,0,0,.3)}.ckfeast .cksprite{width:36px;height:36px}.ckplate{animation:ckplatein .32s cubic-bezier(.2,.8,.3,1.4) both}.ckfeast-more{color:#ffe6b0;font:900 12px var(--sans)}.cknight{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:6px}.cknight-c{padding:5px 9px;border:1px solid rgba(255,220,140,.35);border-radius:10px;background:rgba(255,255,255,.05);color:#e8d3a4;font-size:10.5px;font-weight:800}.cknight-c b{color:#ffe9ae}.ckcere-nightlabel{margin-top:10px;color:#d8b877;font:800 9.5px var(--sans);letter-spacing:.22em;text-transform:uppercase}.cookresults-row.ckfam{animation:ckfamrow .4s ease both}.cookresults-row.ckfam.you{outline:1px solid rgba(122,224,178,.55);background:rgba(69,171,144,.12)}
  @keyframes ckchipfly{to{transform:translate(var(--dx),var(--dy)) rotate(150deg);opacity:0}}@keyframes ckkick{30%{transform:translate(1px,-2px)}65%{transform:translate(-2px,1px)}}@keyframes ckcoursein{0%{opacity:0;transform:translate(-50%,-40%) scale(.85)}10%,80%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-58%) scale(.96)}}@keyframes ckstarpunch{0%{transform:scale(.2) rotate(-30deg);opacity:0}70%{transform:scale(1.35) rotate(6deg)}100%{transform:scale(1) rotate(0);opacity:1}}@keyframes ckplatein{from{opacity:0;transform:scale(.3) translateY(10px)}}@keyframes ckfamrow{from{opacity:0;transform:translateX(-8px)}}
  @media(max-width:700px){.ckcourse{padding:9px 16px}.ckcourse-name{font-size:19px}.ckfeast .cksprite{width:30px;height:30px}.ckcere{max-height:88dvh}}
  @media(prefers-reduced-motion:reduce){.ckfly,.ckchip{display:none}.cookstage.kick,.ckcourse,.ckstar.lit,.ckplate,.cookresults-row.ckfam,.cookorder.servedout{animation:none;transition:none}.ckcourse{opacity:1}.cookorder.servedout{opacity:0}}
  .ckicon>.cksprite{width:100%;height:100%}
  /* The front door: daylight, the painted Plaza, a parchment welcome. */
  /* Cold entry is a threshold inside the real Plaza, not a page before it. */
  .roomscene.sc-hall{background:radial-gradient(120% 120% at 50% 8%,#2a2038 0%,#1a1226 45%,#241a10 78%,#3a2a17 100%)}
  .roomscene.sc-club{background:radial-gradient(120% 120% at 50% 10%,#3a1150 0%,#1a0a2e 52%,#160a24 100%)}
  .roomscene.sc-cinema{background:radial-gradient(120% 120% at 50% -6%,#1a2036 0%,#0c0e1a 55%,#07070d 100%)}
  .roomscene.sc-casino{background:radial-gradient(120% 120% at 50% 10%,#123a24 0%,#0c2a19 48%,#1a1206 100%)}
  .roomscene.sc-arcade{background:radial-gradient(120% 120% at 50% 6%,#4e5a7e 0%,#6e6866 40%,#a88a5a 72%,#8a6a3a 100%)}
  .roomscene.sc-mine{background:radial-gradient(120% 115% at 50% 10%,#59616b 0%,#303641 45%,#171b22 78%,#0a0d12 100%)}
  .sc-mine .plazafloor::before{content:"";position:absolute;left:8%;right:8%;bottom:17%;height:23%;border-radius:50%;background:radial-gradient(ellipse,rgba(223,169,70,.2),rgba(30,34,40,.12) 58%,transparent 72%);border-bottom:3px solid rgba(133,143,151,.42);pointer-events:none}
  .roomscene.sc-theater{background:radial-gradient(120% 120% at 50% 12%,#3a1430 0%,#2a1030 44%,#1c0a26 74%,#120616 100%)}
  .sc-theater .plazafloor::before{content:"";position:absolute;left:14%;right:14%;top:6%;height:30%;background:linear-gradient(#140812,#0a0410);border:6px solid #5a2f52;border-radius:10px;box-shadow:0 0 50px rgba(224,120,190,.18),inset 0 0 40px rgba(0,0,0,.5);pointer-events:none}
  .sc-arcade .plazafloor::before{content:"";position:absolute;left:15%;right:15%;top:30%;height:36%;border-radius:50%;border:5px dashed rgba(232,200,120,.42);background:radial-gradient(circle,rgba(205,165,95,.2),transparent 72%);pointer-events:none}
  .sc-cinema .plazafloor::before{content:"";position:absolute;left:18%;right:18%;top:8%;height:33%;background:linear-gradient(#0b0f1c,#05060c);border:6px solid #1c2230;border-radius:8px;box-shadow:0 0 60px rgba(120,150,255,.15),inset 0 0 44px rgba(120,150,255,.08);pointer-events:none}
  .sc-casino .plazafloor::before{content:"";position:absolute;left:22%;right:22%;top:33%;height:32%;background:radial-gradient(circle,#1e6e42,#124026);border:8px solid #5a3a1a;border-radius:50%;box-shadow:0 20px 50px rgba(0,0,0,.5),inset 0 0 40px rgba(0,0,0,.4);pointer-events:none}
  .sc-club .plazafloor::before{content:"";position:absolute;left:8%;right:8%;top:5%;height:5%;background:repeating-linear-gradient(90deg,#ff3ba7 0 7%,#3bd9ff 7% 14%,#ffd23b 14% 21%);opacity:.45;filter:blur(1px);border-radius:6px;pointer-events:none}
  .sc-hall .plazafloor::before{content:"";position:absolute;left:12%;right:12%;top:6%;height:40%;border-top:5px solid rgba(216,201,164,.5);border-left:5px solid rgba(216,201,164,.28);border-right:5px solid rgba(216,201,164,.28);border-radius:14px 14px 0 0;pointer-events:none}
  .roomscene.sc-empire{background:radial-gradient(120% 120% at 50% 6%,#3a2a12 0%,#241a0c 46%,#160f06 100%)}
  .roomscene.sc-wardrobe{background:radial-gradient(120% 120% at 50% 8%,#3a1c34 0%,#241226 50%,#160a18 100%)}
  .sc-empire .plazafloor::before{content:"";position:absolute;left:20%;right:20%;top:6%;height:34%;background:linear-gradient(#2a1e0e,#1a1206);border:5px solid rgba(232,193,90,.4);border-radius:12px 12px 0 0;box-shadow:inset 0 0 40px rgba(232,193,90,.12),0 14px 40px rgba(0,0,0,.45);pointer-events:none}
  .sc-wardrobe .plazafloor::before{content:"";position:absolute;left:31%;right:31%;top:4%;height:40%;background:linear-gradient(#5a2f52,#2a1226);border:6px solid rgba(224,176,192,.5);border-radius:90px 90px 10px 10px;box-shadow:0 0 50px rgba(224,176,192,.18),inset 0 0 34px rgba(0,0,0,.35);pointer-events:none}
  .marblewrap{position:relative;margin-top:4px;border-radius:18px;overflow:hidden;background:radial-gradient(120% 120% at 50% 28%,#334155,#0b1120 72%);border:1px solid color-mix(in srgb,var(--marble-accent,#8bd5ff) 50%,transparent);box-shadow:inset 0 0 90px rgba(0,0,0,.4),0 18px 55px rgba(2,6,18,.34);isolation:isolate}
  .marblewrap>.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .marblecanvas{display:block;width:100%;touch-action:none;cursor:crosshair}
  .marblehud{position:absolute;top:8px;left:50%;width:min(94%,900px);transform:translateX(-50%);display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;pointer-events:none;font-family:Consolas,monospace;filter:drop-shadow(0 4px 7px rgba(0,0,0,.38))}
  .marblehud.basttopdock{position:fixed;top:7px;left:var(--bast-hud-left);right:var(--bast-hud-right);width:auto;transform:none;z-index:2602;justify-content:center;flex-wrap:nowrap}
  .marblehud.basttopdock>*{flex:0 0 auto;white-space:nowrap}
  .marblehud .mstat{background:linear-gradient(180deg,rgba(16,27,46,.92),rgba(5,11,23,.9));border:1px solid rgba(180,210,232,.38);color:#edf7ff;padding:4px 9px;border-radius:10px;font-size:12px;box-shadow:inset 0 1px rgba(255,255,255,.06)}
  .marblehud .mnext{display:flex;align-items:center;gap:6px}
  .marblehud .mdot{display:inline-block;width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 5px rgba(0,0,0,.5),0 0 4px rgba(255,255,255,.35)}
  .marblehud .mbar{position:relative;min-width:112px;overflow:hidden;color:#ffe9a8;text-align:center}
  .marblehud .mbar .mbarfill{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,rgba(232,193,90,.26),rgba(253,224,138,.5));transition:width .3s}
  .marblehud .mbar .mbartext{position:relative;font:800 11px Georgia,serif;letter-spacing:.12em}
  .marblehud .mbar.full{border-color:#fde68a;box-shadow:0 0 14px rgba(253,224,138,.35)}
  .marblehud .mbar.full .mbarfill{background:linear-gradient(90deg,rgba(232,193,90,.5),rgba(253,224,138,.75));animation:marbleBarGlow 1.6s ease-in-out infinite}
  @keyframes marbleBarGlow{50%{filter:brightness(1.3)}}
  .marblehud .marblerelic{pointer-events:auto;border:1px solid rgba(253,224,138,.65);background:linear-gradient(135deg,rgba(74,48,18,.94),rgba(21,27,49,.94));color:#fff0bd;padding:4px 9px;border-radius:9px;font:800 12px Georgia,serif;box-shadow:0 0 16px rgba(250,204,21,.12);cursor:pointer}
  .marblehud .marblerelic:disabled{opacity:.48;cursor:default;filter:saturate(.4)}
  .marblehud .marblerelic.ready{animation:marbleRelicPulse 2.4s ease-in-out infinite}
  @keyframes marbleRelicPulse{50%{box-shadow:0 0 22px rgba(250,204,21,.38);border-color:#fde68a}}
  .marblehud .mmute{pointer-events:auto;border:1px solid rgba(180,210,232,.4);background:linear-gradient(180deg,rgba(16,27,46,.92),rgba(5,11,23,.9));color:#cfe6ff;padding:4px 9px;border-radius:9px;font:800 12px Georgia,serif;cursor:pointer}
  /* The mode sheet is read top to bottom, so it needs headings a player can
     skim: alone, together, campaign. Without them it was one undivided wall. */
  .marbleovlcard .bastsectionhead{margin:14px 0 6px;color:#f2d78b;font:800 13px Georgia,'Times New Roman',serif;letter-spacing:.4px;text-align:left;border-bottom:1px solid rgba(242,201,105,.28);padding-bottom:4px}
  /* Playing with other people is the loudest thing on the bar, not a footnote. */
  .marblehud .bastparty{border-color:rgba(94,234,212,.72);background:linear-gradient(180deg,rgba(13,58,58,.94),rgba(5,26,29,.92));color:#a7f3e4}
  .marblehud .bastparty:hover,.marblehud .bastparty:focus-visible{border-color:rgba(153,246,228,.95);color:#d7fff6;box-shadow:0 0 14px rgba(94,234,212,.4)}
  .marblehud .bastleaders{border-color:rgba(253,224,138,.72);background:linear-gradient(180deg,rgba(92,62,14,.94),rgba(35,24,8,.92));color:#fff0bd}
  .marblehud .bastleaders:hover,.marblehud .bastleaders:focus-visible{border-color:#fde68a;color:#fff8dc;box-shadow:0 0 14px rgba(253,224,138,.38)}
  .marblehud .mmute.off{opacity:.55}
  .marblehud .mmute.locked{border-color:#fbbf24;color:#fff0bd;box-shadow:0 0 0 2px rgba(251,191,36,.2)}
  .mswapbtn{position:absolute;right:14px;bottom:16px;z-index:5;width:54px;height:54px;border-radius:50%;border:1px solid rgba(253,224,138,.5);background:radial-gradient(120% 120% at 30% 25%,rgba(74,58,25,.95),rgba(15,20,38,.95));color:#ffe9a8;font:900 22px Georgia,serif;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.4)}
  .mswapbtn:active{transform:scale(.93)}
  .mswapbtn:hover,.mswapbtn:focus-visible{border-color:#fde68a;filter:brightness(1.12)}
  .marbleovl{position:absolute;inset:0;z-index:8;display:flex;align-items:flex-start;justify-content:center;background:rgba(3,7,18,.76);backdrop-filter:blur(5px);padding:14px;overflow:auto}
  .marbleovlcard{margin:auto 0;background:linear-gradient(160deg,#1e293b,#0f172a);border:1px solid color-mix(in srgb,var(--marble-accent,#8bd5ff) 48%,transparent);border-radius:14px;padding:20px 24px;text-align:center;max-width:920px;width:min(92%,920px);box-shadow:0 22px 70px rgba(0,0,0,.42)}
  .marbleovlcard .movt{font-family:Georgia,serif;font-size:22px;color:#d9efff;margin-bottom:6px}
  .marbleatlas{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px;margin:16px 0 6px;text-align:left}
  .marbleshrine{position:relative;min-height:118px;padding:12px;border-radius:12px;border:1px solid rgba(160,194,220,.28);background:rgba(7,14,27,.72);color:#dcecf8;cursor:pointer;text-align:left;font:inherit}
  .marbleshrine:hover:not(:disabled),.marbleshrine:focus-visible{border-color:var(--shrine-accent,#8bd5ff);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.32)}
  .marbleshrine:disabled{cursor:not-allowed;filter:saturate(.2);opacity:.48}.marbleshrine .msicon{font-size:24px}.marbleshrine .msname{display:block;font:700 15px Georgia,serif;margin:5px 0 3px}.marbleshrine .msgoal{display:block;font-size:11px;color:#a9bfd1;line-height:1.35}.marbleshrine .msstars{display:block;margin-top:7px;color:#ffd66d;letter-spacing:2px}.marbleshrine .msbest{position:absolute;right:9px;top:9px;font:11px Consolas,monospace;color:#9fc4dd}
  .marblemastery{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0}.marblemastery span{border:1px solid rgba(160,194,220,.24);border-radius:999px;padding:4px 8px;color:#b9cede;font-size:12px}.marblemastery .won{border-color:#ffd66d;color:#ffe69a;background:rgba(255,214,109,.08)}
  @media(max-width:720px){.marbleatlas{grid-template-columns:repeat(2,minmax(125px,1fr))}.marblewrap{margin-top:0;border-radius:10px}.marbleovl{align-items:flex-start}.marbleovlcard{margin:auto 0;padding:16px 12px}.marbleshrine{min-height:104px}.marblehud{top:7px;left:8px;right:8px;width:auto;transform:none;gap:4px;justify-content:flex-start}.marblehud .mstat{font-size:9.5px;padding:3px 5px}.marblehud .mbar{min-width:72px}.marblehud .marblerelic{font-size:9.5px;padding:4px 5px}.marblehud .mmute{font-size:9.5px;padding:4px 6px}.mswapbtn{right:10px;bottom:14px}}
  .marblemodes{margin-top:14px;display:flex;flex-direction:column;gap:8px}
  .marblemode{display:flex;align-items:center;gap:11px;width:100%;padding:11px 13px;border-radius:14px;border:1px solid rgba(251,191,36,.45);background:linear-gradient(120deg,rgba(120,84,12,.32),rgba(15,23,42,.72));color:#e7f4ff;cursor:pointer;text-align:left}
  .marblemode:hover{border-color:rgba(251,191,36,.9);background:linear-gradient(120deg,rgba(146,102,14,.42),rgba(15,23,42,.8))}
  .marblemode .mmicon{flex:0 0 auto;font-size:26px;line-height:1}
  .marblemode .mmbody{display:flex;flex-direction:column;gap:3px;min-width:0}
  .marblemode .mmname{font-weight:900;font-size:13.5px;color:#ffe9a8}
  .marblemode .mmline{font-size:11.5px;line-height:1.4;color:#c6d4e4}
  .marblemode .mmgo{flex:0 0 auto;margin-left:auto;font-weight:800;font-size:12px;color:#fbbf24;white-space:nowrap}
  .marblemode.primary{border-color:rgba(251,191,36,.75);box-shadow:0 0 0 1px rgba(251,191,36,.2)}
  .bastwrap .bastskip.urge{border-color:#fbbf24;color:#fff7d6;background:linear-gradient(120deg,rgba(146,102,14,.92),rgba(15,23,42,.92));animation:basthorn .78s ease-in-out 4}
  @keyframes basthorn{0%,100%{transform:translateX(-50%) scale(1);box-shadow:0 4px 14px rgba(2,6,18,.5),0 0 0 rgba(251,191,36,0)}50%{transform:translateX(-50%) scale(1.13);box-shadow:0 4px 20px rgba(2,6,18,.5),0 0 26px rgba(251,191,36,.85)}}
  .bastcampline{margin-top:12px;font-size:11.5px}
  .crewbar{position:absolute;left:8px;top:112px;z-index:5;display:flex;flex-direction:column;gap:5px;pointer-events:none}
  .crewchip{min-width:132px;padding:5px 8px;border-radius:10px;border-left:3px solid #5eead4;background:rgba(10,15,28,.74);color:#e7f4ff;font-size:10.5px;line-height:1.35;box-shadow:0 2px 8px rgba(2,6,18,.4)}
  .crewchip.me{background:rgba(20,30,50,.88)}
  .crewchip .cwname{display:block;font-weight:800;color:#ffe9a8}
  .crewchip .cwstat{display:block;color:#c6d4e4;font-variant-numeric:tabular-nums}
  .bastlobby{margin-top:12px}
  .crewboard{margin-top:12px;padding-top:11px;border-top:1px solid rgba(148,163,184,.22)}
  .crewboard .cbtitle{margin-bottom:7px;color:#d1aa62;font-size:9.5px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
  .crewboard .cbrow{display:flex;align-items:center;gap:9px;padding:6px 9px;margin-bottom:5px;border-left:3px solid #5eead4;border-radius:9px;background:rgba(30,41,59,.6);font-size:12px}
  .crewboard .cbrow.me{background:rgba(120,84,12,.34)}
  .crewboard .cbrank{width:16px;color:#ffe9a8;font-weight:900}
  .crewboard .cbname{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .crewboard .cbscore{color:#c6d4e4;font-variant-numeric:tabular-nums;white-space:nowrap}
  .crewboard .cbtotal{margin-top:6px;color:#9fb2c8;font-size:11px}
  .bastleaderscard{max-width:780px}
  .bastleadersbody{margin-top:14px}
  .bastleadergrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left}
  .bastleaderboard{min-width:0;padding:11px;border:1px solid rgba(253,224,138,.28);border-radius:12px;background:rgba(5,11,23,.55)}
  .bastleaderboard .bleadertitle{margin-bottom:7px;color:#ffe9a8;font:900 14px Georgia,serif;text-align:center}
  .bleaderrow{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;border-top:1px solid rgba(148,163,184,.16);font-size:12px}
  .bleaderrow:first-of-type{border-top:0}
  .bleaderrank{flex:0 0 26px;color:#ffe9a8;font-weight:900;text-align:center}
  .bleadername{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e7f4ff}
  .bleadervalue{flex:0 0 auto;color:#b9d7ee;font-variant-numeric:tabular-nums;white-space:nowrap}
  .bleaderempty,.bleaderloading{padding:20px 8px;color:#9fb2c8;font-size:12px;text-align:center}
  .bleadermine{margin-top:10px;padding:8px 10px;border-radius:9px;background:rgba(120,84,12,.24);color:#ffe9a8;font-size:12px}
  .bastleaderactions{justify-content:center;gap:8px;margin-top:12px}
  @media(max-width:720px){.marblehud .bastleaders .bleaderlabel{display:none}}
  @media(max-width:560px){.bastleadergrid{grid-template-columns:1fr}.bastleaderscard{padding-left:10px;padding-right:10px}}
  @media(max-width:720px){.crewbar{top:98px;left:6px}.crewchip{min-width:104px;font-size:9.5px;padding:4px 6px}}
  @media(max-width:720px){.marblemode .mmgo{display:none}.marblemode .mmline{font-size:11px}}
  .bastwrap .bastbuildtoggle{position:absolute;left:14px;bottom:14px;z-index:6;width:auto;min-width:46px;height:46px;padding:0 15px;border-radius:999px;font-weight:800;letter-spacing:.01em;white-space:nowrap;border:1px solid rgba(251,191,36,.55);background:rgba(15,23,42,.85);font-size:20px;cursor:pointer;box-shadow:0 4px 14px rgba(2,6,18,.5)}
  .bastwrap .bastbuildtoggle.armed{background:rgba(120,84,12,.9);border-color:#fbbf24;box-shadow:0 0 0 3px rgba(251,191,36,.3),0 4px 14px rgba(2,6,18,.5)}
  .bastwrap .bastskip{position:absolute;left:50%;transform:translateX(-50%);top:84px;z-index:6;padding:8px 14px;border-radius:999px;border:1px solid rgba(251,191,36,.6);background:rgba(15,23,42,.88);color:#ffe9a8;font-weight:700;font-size:13px;cursor:pointer;box-shadow:0 4px 14px rgba(2,6,18,.5)}
  .bastmenu{position:absolute;z-index:8;display:flex;flex-direction:column;gap:6px;width:220px;padding:10px;border-radius:14px;border:1px solid rgba(148,163,184,.4);background:rgba(10,15,28,.94);box-shadow:0 12px 34px rgba(2,6,18,.6)}
  .bastmenu .bmtitle{font-weight:900;color:#ffe9a8;font-size:13.5px}
  .bastmenu .bmlore{color:#9fb2c8;font-size:11px;line-height:1.35}
  .bastmenubtn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 9px;border-radius:10px;border:1px solid rgba(148,163,184,.35);background:rgba(30,41,59,.85);color:#e7f4ff;cursor:pointer;text-align:left}
  .bastmenubtn:hover{border-color:rgba(251,191,36,.6)}
  .bastmenubtn.off{opacity:.45;cursor:default}
  .bastmenubtn.ghost{align-items:center;background:transparent}
  .bastmenubtn .bmlabel{font-weight:800;font-size:12.5px}
  .bastmenubtn .bmsub{font-size:10.5px;color:#9fb2c8;line-height:1.3}
  /* Touch tablets get a viewport sheet instead of a cell-anchored desktop
     popover. Two columns expose every work on ordinary iPads; dynamic-height
     clipping and scrolling keep the last option reachable under browser UI. */
  .bastwrap.basttouch:not(.bastphone) .bastmenu.open{position:fixed;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min-content;gap:7px;left:50%!important;right:auto!important;top:50%!important;bottom:auto!important;transform:translate(-50%,-50%);width:min(560px,calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - 24px));max-height:calc(100vh - 32px);max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding:12px;z-index:19;box-shadow:0 18px 48px rgba(0,0,0,.72)}
  .bastwrap.basttouch:not(.bastphone) .bastmenu .bmtitle,.bastwrap.basttouch:not(.bastphone) .bastmenu .bmlore,.bastwrap.basttouch:not(.bastphone) .bastmenu .bastmenubtn.ghost{grid-column:1/-1}
  .bastwrap.basttouch:not(.bastphone) .bastmenubtn{min-height:58px;padding:9px 11px;touch-action:manipulation}
  .bastwrap.basttouch:not(.bastphone) .bastmenubtn .bmlabel{font-size:14px}
  .bastwrap.basttouch:not(.bastphone) .bastmenubtn .bmsub{font-size:11.5px;line-height:1.25}
  .bastwrap.basttouch:not(.bastphone) .bastmenu .bastmenubtn.ghost{position:sticky;bottom:-4px;min-height:46px;background:rgba(10,15,28,.98);border-color:rgba(253,224,138,.42)}
  /* The first-field guide. Boxes, not a wall of text: one step, one action. */
  .bastcoach{position:absolute;left:50%;bottom:74px;transform:translateX(-50%);z-index:7;width:min(92%,432px);padding:11px 13px;border-radius:14px;border:1px solid rgba(251,191,36,.6);background:linear-gradient(120deg,rgba(64,45,9,.96),rgba(10,15,28,.96));color:#e7f4ff;box-shadow:0 10px 30px rgba(2,6,18,.62);font-size:12.5px;line-height:1.45;animation:bastcoachIn .26s ease-out}
  .bastcoach .bcstep{display:block;margin-bottom:3px;color:#d1aa62;font:900 9.5px Georgia,serif;letter-spacing:.16em;text-transform:uppercase}
  .bastcoach .bctitle{display:block;margin-bottom:4px;font-weight:900;font-size:14px;color:#ffe9a8}
  .bastcoach .bcbody{display:block;color:#dbe7f4}
  .bastcoach .bcbody b{color:#ffe9a8}
  .bastcoach .bcrow{display:flex;align-items:center;gap:9px;margin-top:9px}
  .bastcoach .bcgo{padding:6px 13px;border-radius:999px;border:1px solid rgba(251,191,36,.7);background:rgba(120,84,12,.85);color:#ffe9a8;font-weight:800;font-size:12px;cursor:pointer;touch-action:manipulation}
  .bastcoach .bcgo:hover,.bastcoach .bcgo:focus-visible{border-color:#fde68a;filter:brightness(1.14)}
  .bastcoach .bcwait{color:#fbbf24;font-weight:800;font-size:11.5px;animation:bastcoachWait 1.5s ease-in-out infinite}
  .bastcoach .bcskip{margin-left:auto;padding:0;background:none;border:0;color:#9fb2c8;font-size:11px;text-decoration:underline;cursor:pointer;touch-action:manipulation}
  .bastcoach .bcskip:hover{color:#e7f4ff}
  /* The guide sits ON the field: 15.6% of the canvas in phone landscape, 6.2% on
     desktop. While the gate is open the wave is running, so the box stops taking
     pointer events and a tap aimed at the chain reaches the chain. The state is
     written as an INLINE style by paint() rather than by a .bcthrough rule here,
     because `.bastwrap.bastphone.bastlandscape .bastcoach` already declares
     pointer-events:auto at four classes of specificity and would win in exactly
     the shape this matters most in -- found by driving it, not by reading it.
     These two keep their presses regardless: a child's own value beats a parent
     that is `none`. */
  .bastcoach .bcgo,.bastcoach .bcskip{pointer-events:auto}
  /* During the held lull the whole box IS the control, because its text is six
     to seven times the area of the button that advances it. */
  .bastcoach.bctap{cursor:pointer}
  .bastcoach.bctap .bcgo{box-shadow:0 0 0 2px rgba(251,191,36,.35)}
  @keyframes bastcoachIn{from{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
  @keyframes bastcoachWait{0%,100%{opacity:.5}50%{opacity:1}}
  /* Whatever the current step wants you to touch gets a ring you cannot miss. */
  .bastwrap .bastcoachpoint{animation:bastcoachPoint 1.25s ease-in-out infinite}
  @keyframes bastcoachPoint{0%,100%{box-shadow:0 4px 14px rgba(2,6,18,.5),0 0 0 0 rgba(251,191,36,.62)}50%{box-shadow:0 4px 14px rgba(2,6,18,.5),0 0 0 9px rgba(251,191,36,0)}}
  @media(max-width:720px){.bastcoach{bottom:68px;width:calc(100% - 20px);font-size:12px;padding:10px 11px;line-height:1.4}.bastcoach .bctitle{font-size:13px}}
  @media(prefers-reduced-motion:reduce){.bastcoach{animation:none}.bastcoach .bcwait{animation:none}.bastwrap .bastcoachpoint{animation:none;box-shadow:0 4px 14px rgba(2,6,18,.5),0 0 0 3px rgba(251,191,36,.55)}}
  .bastwrap .bastpool.dry .mbarfill,.marblehud.basttopdock .bastpool.dry .mbarfill{background:#7f1d1d}
  .bastwrap .mstat.hurt,.marblehud.basttopdock .mstat.hurt{color:#fca5a5}
  .bastwrap .bastaether,.marblehud.basttopdock .bastaether{color:#d8c7fa}
  @media(max-width:720px){.bastmenu{width:200px}.bastwrap .bastskip{top:70px;font-size:11.5px;padding:6px 10px}.bastwrap .bastbuildtoggle{min-width:42px;height:42px;bottom:12px;padding:0 12px;font-size:14px}}
  @media(max-width:480px){.marbleatlas{grid-template-columns:1fr}.marbleshrine{min-height:0}}
  /* Mobile Bastion is an immersive landscape court. The short edge, not the
     current CSS width, identifies a phone so these rules survive rotation. */
  .bastmobileback,.bastmobilemenu,.bastfullscreen,.bastrotate,.bastfullscreenhint{display:none}
  body.bastion-phone-play{overflow:hidden;overscroll-behavior:none}
  body.bastion-phone-play .top,body.bastion-phone-play .gmhelp{display:none!important}
  body.bastion-phone-play .bastionback,body.bastion-phone-play .bastiontitle,body.bastion-phone-play .bastionintro{display:none!important}
  .bastwrap.bastphone{position:fixed;inset:0;z-index:4000;width:100vw;height:100vh;height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none;background:#07101d}
  .bastwrap.bastphone .marblecanvas{width:100%;height:100%;outline:none}
  .bastwrap.bastphone .bastmobileback,.bastwrap.bastphone.bastlandscape .bastmobilemenu,.bastwrap.bastphone.bastlandscape .bastfullscreen{display:flex;position:absolute;z-index:11;align-items:center;justify-content:center;min-width:48px;min-height:48px;border:1px solid rgba(253,224,138,.58);background:rgba(7,14,27,.88);color:#fff2c7;box-shadow:0 5px 18px rgba(0,0,0,.46);backdrop-filter:blur(7px);font-weight:900;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .bastwrap.bastphone .bastmobileback{left:max(8px,env(safe-area-inset-left));top:max(7px,env(safe-area-inset-top));padding:0 12px;border-radius:999px;font-size:12px}
  .bastwrap.bastphone .bastmobilemenu{right:max(8px,env(safe-area-inset-right));top:max(7px,env(safe-area-inset-top));border-radius:13px;font-size:20px}
  .bastwrap.bastphone .bastfullscreen{right:max(62px,calc(env(safe-area-inset-right) + 54px));top:max(7px,env(safe-area-inset-top));border-radius:13px;font-size:19px}
  .bastwrap.bastphone .bastfullscreenhint.open{display:flex;position:absolute;z-index:18;left:50%;top:max(62px,calc(env(safe-area-inset-top) + 54px));transform:translateX(-50%);align-items:center;gap:10px;width:min(440px,calc(100vw - 232px));box-sizing:border-box;padding:10px 12px;border:1px solid rgba(253,224,138,.7);border-radius:14px;background:rgba(8,15,29,.97);box-shadow:0 14px 38px rgba(0,0,0,.7);color:#e7f4ff;font-size:11.5px;line-height:1.35}
  .bastwrap.bastphone .bastfullscreenhint>span{flex:1}.bastwrap.bastphone .bastfullscreenhint>button{flex:none;min-height:40px;padding:0 12px;border:1px solid rgba(253,224,138,.68);border-radius:999px;background:#713f12;color:#fff4cf;font-weight:900;touch-action:manipulation}
  .bastwrap.bastphone.bastlandscape .marblehud{top:max(7px,env(safe-area-inset-top));left:max(72px,calc(env(safe-area-inset-left) + 68px));right:max(120px,calc(env(safe-area-inset-right) + 116px));width:auto;transform:none;justify-content:center;flex-wrap:nowrap;gap:4px}
  .bastwrap.bastphone.bastlandscape .marblehud .mstat{padding:4px 6px;font-size:9.5px;white-space:nowrap}
  .bastwrap.bastphone.bastlandscape .marblehud .mbar{min-width:92px}
  .bastwrap.bastphone.bastlandscape .marblehud .mnext,.bastwrap.bastphone.bastlandscape .marblehud .bastparty,.bastwrap.bastphone.bastlandscape .marblehud .bastmodes{display:none}
  .bastwrap.bastphone.bastlandscape .marblehud .mmute{min-width:34px;min-height:32px;padding:3px 6px}
  .bastwrap.bastphone.bastlandscape .mswapbtn{right:max(94px,calc(env(safe-area-inset-right) + 92px));bottom:max(16px,calc(env(safe-area-inset-bottom) + 6px));width:52px;height:52px}
  .bastwrap.bastphone.bastlandscape .bastbuildtoggle{left:max(10px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:16;min-width:54px;height:52px;padding:0 14px;font-size:14px;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .bastwrap.bastphone.bastlandscape .bastskip{left:auto;right:max(10px,env(safe-area-inset-right));transform:none;top:max(52px,calc(env(safe-area-inset-top) + 48px));max-width:34vw;padding:6px 10px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bastwrap.bastphone.bastlandscape .bastskip.urge{animation:none}
  .bastwrap.bastphone.bastlandscape .bastcoach{left:50%;bottom:max(8px,env(safe-area-inset-bottom));z-index:17;width:min(44vw,370px);max-height:48%;overflow:auto;padding:9px 11px;font-size:11px;line-height:1.32;pointer-events:auto}
  .bastwrap.bastphone.bastlandscape .bastcoach .bctitle{font-size:12.5px}.bastwrap.bastphone.bastlandscape .bastcoach .bcrow{margin-top:6px}.bastwrap.bastphone.bastlandscape .bastcoach .bcgo{min-height:36px;padding:5px 12px;pointer-events:auto}.bastwrap.bastphone.bastlandscape .bastcoach .bcskip{min-height:34px;padding:4px;pointer-events:auto}
  /* A tapped-cell desktop popover can grow above a short phone viewport and
     put Palisade/Kiln under browser chrome. Mobile gets a stable, thumb-sized
     build sheet instead: two columns, all safe edges honored, vertical scroll
     only as a fallback on the shortest supported landscape. */
  .bastwrap.bastphone.bastlandscape .bastmenu.open{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:min-content;gap:6px;left:max(104px,calc(env(safe-area-inset-left) + 96px))!important;right:auto!important;top:max(52px,calc(env(safe-area-inset-top) + 46px))!important;bottom:max(8px,env(safe-area-inset-bottom))!important;width:min(520px,calc(100vw - 232px));max-height:none;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:10px;z-index:15;box-shadow:0 18px 46px rgba(0,0,0,.72)}
  .bastwrap.bastphone.bastlandscape .bastmenu .bmtitle,.bastwrap.bastphone.bastlandscape .bastmenu .bmlore,.bastwrap.bastphone.bastlandscape .bastmenu .bastmenubtn.ghost{grid-column:1/-1}
  .bastwrap.bastphone.bastlandscape .bastmenubtn{min-height:58px;padding:8px 10px;touch-action:manipulation}
  .bastwrap.bastphone.bastlandscape .bastmenubtn .bmlabel{font-size:13.5px}.bastwrap.bastphone.bastlandscape .bastmenubtn .bmsub{font-size:11.5px;line-height:1.22}
  .bastwrap.bastphone.bastlandscape .bastmenu .bastmenubtn.ghost{position:sticky;bottom:-2px;min-height:42px;background:rgba(10,15,28,.97);border-color:rgba(253,224,138,.42)}
  .bastwrap.bastphone.bastlandscape .marbleovl{touch-action:pan-y;padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.bastwrap.bastphone.bastlandscape .marbleovlcard{width:min(94%,880px);padding:12px 14px}.bastwrap.bastphone.bastlandscape .marbleatlas{grid-template-columns:repeat(4,minmax(125px,1fr));margin:9px 0 4px}.bastwrap.bastphone.bastlandscape .marbleshrine{min-height:88px;padding:8px}
  .bastwrap.bastphone .bastrotate{position:absolute;inset:0;z-index:20;align-items:center;justify-content:center;padding:max(70px,calc(env(safe-area-inset-top) + 56px)) 24px max(24px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 18%,rgba(120,84,12,.35),rgba(3,7,18,.97) 62%);text-align:center;color:#e7f4ff}
  .bastwrap.bastphone.bastportrait .bastrotate{display:flex}
  .bastrotatecard{display:flex;flex-direction:column;align-items:center;gap:13px;width:min(100%,390px);padding:24px 20px;border:1px solid rgba(253,224,138,.54);border-radius:22px;background:linear-gradient(160deg,rgba(30,41,59,.97),rgba(8,15,29,.98));box-shadow:0 22px 70px rgba(0,0,0,.55);font-size:14px;line-height:1.45}
  .bastrotatecard strong{font:900 23px Georgia,serif;color:#fff0bd}.bastrotatephone{display:grid;place-items:center;width:58px;height:92px;border:4px solid #fde68a;border-radius:12px;font-size:36px;color:#fde68a;animation:bastRotatePhone 1.7s ease-in-out infinite}.bastrotatecard>button{min-height:50px;padding:0 22px;border:1px solid #fde68a;border-radius:999px;background:linear-gradient(120deg,#92400e,#b45309);color:#fff7ed;font-weight:900;font-size:15px;cursor:pointer}.bastrotatehint{min-height:34px;color:#a9bfd1;font-size:11.5px}
  @keyframes bastRotatePhone{0%,20%{transform:rotate(0)}65%,100%{transform:rotate(90deg)}}
  @media(max-height:360px) and (orientation:landscape){.bastwrap.bastphone.bastlandscape .marblehud .bastaether,.bastwrap.bastphone.bastlandscape .marblehud .mnext{display:none}.bastwrap.bastphone.bastlandscape .bastcoach{width:min(40vw,330px);max-height:42%;font-size:10px}.bastwrap.bastphone.bastlandscape .mswapbtn{right:max(84px,calc(env(safe-area-inset-right) + 82px))}}
  @media(prefers-reduced-motion:reduce){.marblehud .marblerelic.ready,.marblehud .mbar.full .mbarfill,.bastrotatephone{animation:none}.mswapbtn:active{transform:none}}  .wndwrap{position:relative;margin-top:8px;border-radius:14px;overflow:hidden;background:#241a2e;border:1px solid rgba(232,193,90,.18)}
  .wndcanvas{display:block;width:100%;cursor:crosshair;touch-action:none}
  .wndhud{position:absolute;top:10px;left:10px;display:flex;gap:7px;flex-wrap:wrap;pointer-events:none}
  .wndchip{background:rgba(24,14,30,.62);border:1px solid rgba(232,193,90,.28);color:#f0dca0;padding:5px 10px;border-radius:9px;font-size:13px;font-family:Consolas,monospace;backdrop-filter:blur(3px)}
  .wndchip.good{color:#7fe0a0;border-color:rgba(120,220,150,.55);box-shadow:0 0 12px rgba(120,220,150,.25)}
  .wndchip.wndtime{opacity:.8}
  .wndctl{position:absolute;top:10px;right:10px;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:52vw}
  .wndbtn{min-width:42px;min-height:38px;border:1px solid rgba(232,193,90,.3);background:rgba(30,20,38,.72);color:#f0dca0;border-radius:10px;font-size:17px;cursor:pointer;backdrop-filter:blur(3px)}
  .wndbtn.on{background:#3a3050;border-color:#e8c15a;box-shadow:0 0 10px rgba(232,193,90,.3)}
  .wndbtn.arm{background:#5a2620;border-color:#ff9d68;color:#ffd9a0;animation:wndpulse .5s ease-in-out infinite alternate}
  @keyframes wndpulse{from{box-shadow:0 0 4px rgba(255,157,104,.4)}to{box-shadow:0 0 16px rgba(255,157,104,.8)}}
  .wndpal{display:flex;gap:6px;flex-wrap:wrap;padding:9px;background:linear-gradient(180deg,#1d1426,#241a2e);border-top:1px solid rgba(232,193,90,.16)}
  .wndrole{flex:1 1 74px;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;position:relative;border:1px solid rgba(232,193,90,.3);background:#2a2138;color:#f0dca0;border-radius:11px;padding:5px 4px;cursor:pointer;transition:transform .1s ease,border-color .1s ease}
  .wndrole i{font-style:normal;font-size:19px;line-height:1}
  .wndrole em{font-style:normal;font-size:10.5px;opacity:.85}
  .wndrole b{position:absolute;top:4px;right:6px;font-size:11.5px;color:#ffe8b0;background:rgba(0,0,0,.3);border-radius:8px;padding:0 5px}
  .wndrole.on{background:#43355e;border-color:#e8c15a;color:#ffe8b0;transform:translateY(-2px);box-shadow:0 4px 14px rgba(232,193,90,.25)}
  .wndrole.out{opacity:.38}
  .wndovl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(16,10,22,.66);backdrop-filter:blur(3px);z-index:5;padding:10px;overflow:auto}
  .wndcard{background:linear-gradient(180deg,#231a30,#181220);border:1px solid rgba(232,193,90,.4);border-radius:16px;padding:18px 20px;text-align:center;max-width:520px;width:100%;max-height:100%;overflow:auto;box-shadow:0 18px 60px rgba(0,0,0,.5)}
  .wndcard .wndct{font-family:Georgia,serif;font-size:22px;color:#f0c468;margin-bottom:4px}
  .wndcard .wndsub{color:#cbb8d8;font-size:13.5px;margin-bottom:8px}
  .wndcard .wndquota{display:inline-block;font-family:Georgia,serif;font-size:15px;color:#7fe0a0;border:1px solid rgba(120,220,150,.4);border-radius:999px;padding:3px 12px;margin-bottom:8px}
  .wndtools{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-bottom:8px}
  .wndtool{border:1px solid rgba(232,193,90,.3);background:rgba(232,193,90,.08);border-radius:8px;padding:3px 8px;font-size:13px;color:#f0dca0}
  .wndhint{font-size:12.5px;line-height:1.45;text-align:left}
  .wndgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px;margin-top:12px;text-align:left}
  .wndlvl{border:1px solid rgba(232,193,90,.28);background:#2a2138;border-radius:12px;padding:9px 10px;cursor:pointer;color:#f0dca0;display:flex;flex-direction:column;gap:3px;min-height:74px;text-align:left;transition:transform .1s ease,border-color .1s ease}
  .wndlvl b{font-family:Georgia,serif;font-size:13.5px;color:#ffe8b0;line-height:1.2}
  .wndlvl span{font-size:11px;opacity:.75}
  .wndlvl em{font-style:normal;font-size:11.5px;color:#cbb8d8;margin-top:auto}
  .wndlvl.won{border-color:rgba(120,220,150,.5)} .wndlvl.won em{color:#7fe0a0}
  .wndlvl.lock{opacity:.45;cursor:not-allowed}
  .wndlvl:not(.lock):hover{transform:translateY(-2px);border-color:#e8c15a}
  .wndstats{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:10px 0 4px}
  .wndendrow{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}
  /* Wanderers presentation pass: a framed world, clearer labors and one result ceremony. */
  .wndwrap{isolation:isolate;box-shadow:inset 0 0 0 1px rgba(255,224,154,.06),0 18px 54px rgba(12,8,18,.36)}
  .wndhud,.wndctl{filter:drop-shadow(0 5px 13px rgba(9,6,14,.28))}
  .wndchip{background:linear-gradient(145deg,rgba(35,25,46,.88),rgba(20,15,29,.7));border-color:rgba(244,204,105,.36);box-shadow:inset 0 1px rgba(255,255,255,.045),0 5px 16px rgba(9,6,14,.18)}
  .wndbtn{background:linear-gradient(145deg,rgba(43,31,54,.9),rgba(24,18,34,.86));box-shadow:inset 0 1px rgba(255,255,255,.055),0 5px 16px rgba(8,5,12,.2);transition:transform .14s ease,border-color .14s ease,background .14s ease}
  .wndbtn:hover{border-color:rgba(244,204,105,.7);background:linear-gradient(145deg,rgba(59,43,72,.94),rgba(31,23,43,.9));transform:translateY(-1px)}
  .wndpal{background:linear-gradient(180deg,rgba(31,23,42,.98),rgba(20,16,29,.99));border-top-color:rgba(244,204,105,.25);box-shadow:0 -12px 30px rgba(13,9,20,.22)}
  .wndrole{overflow:hidden;background:linear-gradient(155deg,#332742,#241c32);border-color:rgba(244,204,105,.32);box-shadow:inset 0 1px rgba(255,255,255,.045);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}
  .wndrole:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 15%,rgba(255,229,164,.08) 48%,transparent 70%);transform:translateX(-120%);transition:transform .32s ease;pointer-events:none}
  .wndrole:hover:before,.wndrole.on:before{transform:translateX(100%)}
  .wndrole.on{background:linear-gradient(155deg,#55446f,#372b4c);box-shadow:inset 0 1px rgba(255,255,255,.08),0 7px 20px rgba(232,193,90,.22)}
  .wndovl{background:radial-gradient(circle at 50% 28%,rgba(75,49,69,.4),rgba(12,8,18,.82) 72%);backdrop-filter:blur(8px) saturate(.82)}
  .wndcard{border-color:rgba(244,204,105,.46);border-radius:20px;background:radial-gradient(circle at 50% -20%,rgba(101,68,83,.25),transparent 48%),linear-gradient(165deg,#251c31,#15111d 76%);box-shadow:0 28px 90px rgba(6,4,9,.68),inset 0 1px rgba(255,244,207,.06)}
  .wndresult{position:relative;isolation:isolate;max-width:720px;padding:0 26px 20px;text-align:left;overflow:auto}
  .wndresult:before{content:"";position:absolute;z-index:-1;inset:-130px -80px auto;height:310px;background:radial-gradient(circle,rgba(114,230,157,.2),rgba(224,178,74,.09) 36%,transparent 68%);pointer-events:none}
  .wndresult.lost:before{background:radial-gradient(circle,rgba(211,112,86,.17),rgba(164,105,77,.07) 38%,transparent 68%)}
  .wndresulthero{display:grid;grid-template-columns:76px minmax(0,1fr) 110px;gap:18px;align-items:center;margin:0 -26px;padding:23px 26px 20px;border-bottom:1px solid rgba(244,204,105,.24);background:linear-gradient(105deg,rgba(128,88,55,.17),rgba(74,57,91,.12) 54%,rgba(102,164,118,.1))}
  .wndresult.lost .wndresulthero{background:linear-gradient(105deg,rgba(118,62,52,.17),rgba(58,45,73,.12))}
  .wndresultseal{position:relative;display:grid;place-items:center;width:68px;height:68px;border:1px solid rgba(255,218,129,.62);border-radius:50%;background:radial-gradient(circle at 35% 28%,#f6d985,#a86d35 62%,#54351f);box-shadow:0 0 0 5px rgba(219,174,75,.08),0 12px 30px rgba(9,6,14,.36),inset 0 2px 4px rgba(255,245,204,.4);font-size:30px;animation:wndSealArrive .62s cubic-bezier(.2,.85,.25,1.15) both}
  .wndresultseal:after{content:"";position:absolute;inset:-8px;border:1px solid rgba(244,204,105,.18);border-radius:50%}
  .wndresult.lost .wndresultseal{border-color:rgba(222,146,119,.5);background:radial-gradient(circle at 35% 28%,#d9a07c,#713f36 64%,#3b242b)}
  @keyframes wndSealArrive{from{opacity:0;transform:scale(.56) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(0)}}
  .wndresultwords{min-width:0}
  .wndresulteyebrow{margin-bottom:4px;color:#e9be5c;font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
  .wndresult .wndct{margin:0;color:#ffe3a1;font-size:28px;line-height:1.05;text-shadow:0 2px 18px rgba(232,181,76,.14)}
  .wndresultroad{margin-top:5px;color:#f0d8ad;font:700 13px Georgia,serif}
  .wndresult .wndsub{max-width:430px;margin:6px 0 0;color:#cbbdd3;font-size:12.5px;line-height:1.42}
  .wndresultscore{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:86px;padding:8px;border-left:1px solid rgba(244,204,105,.2);color:#d4c3d6;text-align:center}
  .wndresultscore strong{color:#fff0b3;font:700 42px/.9 Georgia,serif}
  .wndresultscore span{margin-top:6px;color:#e5c67f;font-size:12px;font-weight:800}
  .wndresultscore em{margin-top:2px;color:#a99aae;font-size:9px;font-style:normal;text-transform:uppercase;letter-spacing:.07em}
  .wndresultstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:15px 0 0}
  .wndresultstat{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:start;min-width:0;padding:10px 9px;border:1px solid rgba(244,204,105,.2);border-radius:12px;background:linear-gradient(145deg,rgba(52,39,63,.72),rgba(25,20,34,.76));box-shadow:inset 0 1px rgba(255,255,255,.035)}
  .wndresultstat.good{border-color:rgba(115,222,155,.43);background:linear-gradient(145deg,rgba(50,82,66,.45),rgba(24,35,33,.66))}
  .wndresulticon{font-size:20px;line-height:1.2}
  .wndresultstatwords{display:block;min-width:0}
  .wndresultstatwords small,.wndresultstatwords strong,.wndresultstatwords em{display:block}
  .wndresultstatwords small{color:#aa9aae;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
  .wndresultstatwords strong{margin-top:2px;overflow:hidden;color:#f4dfae;font-size:16px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
  .wndresultstatwords em{margin-top:3px;color:#9f93a4;font-size:9px;font-style:normal;line-height:1.28}
  .wndresultreward:empty,.wndresultactions:empty,.wndresultfooter:empty{display:none}
  .wndresultreward{margin:11px 0 0;padding:9px 12px;border:1px solid rgba(244,204,105,.22);border-radius:11px;background:rgba(224,178,74,.07);text-align:center}
  .wndresultreward .ggspoils{margin:0!important;color:#edc761!important;font-size:13px!important}
  .wndresultprimary{display:grid;margin-top:13px}
  .wndresultprimary .wndnextroad{min-height:48px;border-radius:12px;font-size:14px;font-weight:900;box-shadow:0 8px 28px rgba(209,156,57,.2)}
  .wndresultactions .ggagain{margin:10px 0 0!important;gap:7px!important;justify-content:center!important}
  .wndresultactions .ggagain .btn{min-height:39px;padding:7px 13px;font-size:12px}
  .wndresultfooter{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid rgba(244,204,105,.14);text-align:center}
  .wndresultfooter [data-cta="game_over_invite"]{margin:0!important;display:inline-flex!important;align-items:center;min-height:34px;font-size:11px!important}
  .wndresultfooter .ggnextportal{position:static;padding:4px 0;border-color:rgba(203,185,145,.32);font-size:10.5px}
  .wndresultfooter .muted{flex-basis:100%;margin:0!important;font-size:10.5px!important}
  @media(max-width:700px){
    .wndresult{max-width:620px}
    .wndresulthero{grid-template-columns:64px minmax(0,1fr) 86px;gap:13px}
    .wndresultseal{width:58px;height:58px;font-size:25px}
    .wndresult .wndct{font-size:24px}
    .wndresultstats{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  @media(max-width:520px){
    .wndovl{align-items:flex-end;padding:0 5px max(5px,env(safe-area-inset-bottom))}
    .wndcard{border-radius:20px 20px 14px 14px}
    .wndresult{width:100%;max-height:calc(100% - 5px);padding:0 12px 13px}
    .wndresulthero{grid-template-columns:50px minmax(0,1fr);gap:10px;margin:0 -12px;padding:15px 12px 13px}
    .wndresultseal{width:46px;height:46px;font-size:21px}
    .wndresult .wndct{font-size:21px}
    .wndresultroad{font-size:11.5px}
    .wndresult .wndsub{font-size:11px}
    .wndresultscore{grid-column:1/-1;display:grid;grid-template-columns:auto auto 1fr;gap:5px;align-items:baseline;justify-content:start;min-height:0;padding:8px 0 0;border-top:1px solid rgba(244,204,105,.12);border-left:0}
    .wndresultscore strong{font-size:28px}.wndresultscore span{margin:0}.wndresultscore em{margin:0;text-align:left}
    .wndresultstats{gap:6px;margin-top:9px}
    .wndresultstat{grid-template-columns:24px minmax(0,1fr);padding:7px 6px}
    .wndresulticon{font-size:17px}.wndresultstatwords strong{font-size:14px}.wndresultstatwords em{display:none}
    .wndresultprimary{margin-top:9px}.wndresultprimary .wndnextroad{min-height:44px;font-size:12.5px}
    .wndresultactions .ggagain{margin-top:7px!important}.wndresultactions .ggagain .btn{flex:1 1 42%;min-height:38px;padding:6px 8px}
    .wndresultfooter{gap:8px;margin-top:8px;padding-top:8px}
  }
  @media(max-height:620px){
    .wndresulthero{padding-top:12px;padding-bottom:11px}
    .wndresultstats{margin-top:8px}.wndresultstat{padding-top:6px;padding-bottom:6px}
    .wndresultstatwords em{display:none}
  }
  @media(prefers-reduced-motion:reduce){
    .wndresultseal,.wndbtn.arm{animation:none}
    .wndrole,.wndbtn,.wndrole:before{transition:none}
  }
  .wndfloat{position:absolute;z-index:6;transform:translate(-50%,0);color:#ffe8b0;font:700 13px Georgia,serif;text-shadow:0 1px 4px rgba(0,0,0,.7);pointer-events:none;animation:wndrise .95s ease-out forwards}
  .wndfloat.hot{color:#ff9d68}
  @keyframes wndrise{from{opacity:1;margin-top:0}to{opacity:0;margin-top:-26px}}
  .wndnote{position:absolute;left:50%;bottom:84px;transform:translateX(-50%);z-index:6;background:rgba(24,14,30,.85);border:1px solid rgba(232,193,90,.4);color:#f0dca0;border-radius:999px;padding:6px 14px;font-size:12.5px;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis;pointer-events:none;animation:wndnotein .18s ease-out}
  .wsgstage{display:flex;gap:10px;align-items:flex-start;justify-content:center;margin-top:8px;flex-wrap:nowrap}
  /* In a COLUMN the flex basis is the HEIGHT, so the row's flex:1 1 0 collapses
     both boards to nothing on a phone. Measured, not guessed: the first live
     duel drive rendered a blank 390x844 screen with the match already running. */
  .wsgstage.wsgcol{flex-direction:column;align-items:stretch}
  .wsgstage.wsgcol .wsgpanel{flex:0 0 auto}
  .wsgpanel{flex:1 1 0;min-width:0;border-radius:14px;overflow:hidden;background:#241a2e;border:1px solid rgba(232,193,90,.18)}
  .wsgpanel.wsgme{border-color:rgba(120,220,150,.42)}
  .wsghead{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:7px 10px;background:linear-gradient(180deg,#1d1426,#241a2e);border-bottom:1px solid rgba(232,193,90,.16)}
  .wsgtitle{font-family:Georgia,serif;font-size:14px;color:#f0c468;white-space:nowrap}
  /* Chips hug the title rather than the panel's right edge: the shell's floating
     Play/labors/roster chips live in the top right corner and ate the purse. */
  .wsgchips{display:flex;gap:6px;flex-wrap:wrap}
  .wsghead .wndchip{padding:3px 8px;font-size:12px}
  .wsgcv{display:block;width:100%;background:#2a2036}
  .wsgpal{padding:7px;gap:5px}
  .wsgpal .wndrole{flex:1 1 58px;min-height:48px;padding:4px 3px}
  .wsgpal .wndrole i{font-size:17px}
  .wsgpal .wndrole em{font-size:9.5px}
  .wsgnote{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:7;background:rgba(24,14,30,.9);border:1px solid rgba(232,193,90,.4);color:#f0dca0;border-radius:999px;padding:7px 15px;font-size:12.5px;max-width:92vw;text-align:center;pointer-events:none}
  .wsglobby{text-align:center;margin-bottom:10px}
  .wsgroads{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px;margin-top:8px;text-align:left}
  @media(max-width:900px){.wsgtitle{font-size:13px}.wsghead{padding:5px 8px}}
  @keyframes wndnotein{from{opacity:0;transform:translateX(-50%) translateY(6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
  @media(max-width:520px){
    .wndctl{max-width:46vw;gap:5px}
    .wndhud{max-width:50vw}
    .wndbtn{min-width:38px;min-height:36px;font-size:15px}
    .wndrole{flex:1 1 21%;min-height:50px}
    .wndrole em{font-size:9.5px}
    .wndgrid{grid-template-columns:repeat(2,1fr)}
  }
  .trwrap{position:relative;margin-top:12px}
  .trhead{font-family:Consolas,monospace;color:#f0dca0;text-align:center;font-size:15px;margin-bottom:10px}
  .trstage{display:flex;align-items:flex-start;justify-content:center;gap:14px;background:radial-gradient(120% 120% at 50% 0%,#2a2038,#160f1f);border:1px solid rgba(232,193,90,.2);border-radius:16px;padding:18px 12px;overflow:hidden}
  .trside{flex:1 1 0;max-width:230px;text-align:center;position:relative;transition:transform .18s}
  .trside.lunge.hero{transform:translateX(14px)} .trside.lunge.foe{transform:translateX(-14px)}
  .trside.hit{animation:trShake .3s}
  @keyframes trShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}
  .trside.dead{opacity:.25;filter:grayscale(1);transition:opacity .4s,filter .4s}
  .travatar{display:flex;justify-content:center;min-height:120px;align-items:flex-end}
  .trsprite{font-size:78px;line-height:120px;height:120px}
  .trsprite.boss{font-size:100px;filter:drop-shadow(0 0 12px rgba(224,80,80,.6))}
  .trname{font-family:Georgia,serif;font-size:15px;color:#e9dcc0;margin:6px 0 8px}
  .trbar{height:14px;border-radius:8px;background:#0c0910;border:1px solid rgba(232,193,90,.25);overflow:hidden;margin:0 auto}
  .trbar.en{height:9px;margin-top:5px}
  .trbarfill{height:100%;width:100%;background:linear-gradient(90deg,#3f9a5a,#5ac878);transition:width .3s}
  .trbartxt{font-family:Consolas,monospace;font-size:11px;color:var(--soft);margin-top:2px}
  .trvs{align-self:center;font-size:24px;color:var(--gold2);opacity:.7}
  .trdmg{position:absolute;left:50%;top:40px;transform:translateX(-50%);font-family:Georgia,serif;font-weight:700;font-size:26px;pointer-events:none;animation:trFloat .9s ease-out forwards;text-shadow:0 2px 4px #000}
  .trdmg.dmg{color:#ff7a6b} .trdmg.heal{color:#7fe0a0} .trdmg.buff{color:#9adfff;font-size:20px}
  @keyframes trFloat{0%{opacity:0;transform:translate(-50%,10px) scale(.7)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-46px) scale(1.1)}}
  .tracts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:14px}
  .tract{flex:1 1 120px;max-width:180px;padding:12px 10px;font-size:15px;font-weight:700}
  .tract.pow{border-color:rgba(224,120,80,.5)} .tract.heal{border-color:rgba(120,220,150,.5)}
  .trlog{margin-top:12px;font-family:Consolas,monospace;font-size:12px;color:var(--muted);text-align:center;min-height:18px}
  .trovl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.66);backdrop-filter:blur(2px);border-radius:16px;z-index:5}
  .trovlcard{background:#1c1729;border:1px solid rgba(232,193,90,.4);border-radius:14px;padding:20px 22px;text-align:center;max-width:440px;width:92%}
  .trovlcard .trovt{font-family:Georgia,serif;font-size:21px;color:#f0c468;margin-bottom:6px}
  .trboons{display:flex;flex-direction:column;gap:8px;margin-top:12px} .trboon{width:100%}  .sbwrap{position:relative;margin-top:12px;border-radius:14px;overflow:hidden;background:#0e1420;border:1px solid rgba(232,193,90,.18)}
  .sbcanvas{display:block;width:100%;cursor:crosshair;touch-action:none}
  .sbtop{position:absolute;top:10px;left:10px;background:rgba(0,0,0,.55);border:1px solid rgba(232,193,90,.25);color:#f0dca0;padding:4px 9px;border-radius:8px;font-size:12.5px;font-family:Consolas,monospace;pointer-events:none}
  .sbctl{position:absolute;left:10px;bottom:56px;display:flex;gap:8px;pointer-events:none}
  .sbdir{pointer-events:auto;width:52px;height:52px;border-radius:12px;border:1px solid rgba(232,193,90,.3);background:rgba(47,41,65,.85);color:#f0dca0;font-size:20px;font-weight:700;cursor:pointer}
  .sbdir.craft{width:auto;padding:0 12px;font-size:14px;margin-left:auto}
  .sbhot{display:flex;gap:5px;flex-wrap:wrap;padding:8px;background:#151019;border-top:1px solid rgba(232,193,90,.14)}
  .sbslot{position:relative;width:40px;height:40px;border:1px solid rgba(232,193,90,.25);border-radius:8px;background:#241d33;display:flex;align-items:center;justify-content:center;cursor:pointer}
  .sbslot.on{border-color:#e8c15a;box-shadow:0 0 0 2px rgba(232,193,90,.4)} .sbslot.empty{opacity:.45}
  .sbslot .sbsw{width:22px;height:22px;border-radius:4px;border:1px solid rgba(0,0,0,.3)} .sbslot .sbcnt{position:absolute;right:2px;bottom:0;font-size:10px;color:#ffe0a0;font-family:Consolas,monospace;text-shadow:0 1px 2px #000}
  .sbovl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);backdrop-filter:blur(2px)}
  .sbovlcard{background:#141a26;border:1px solid rgba(232,193,90,.4);border-radius:14px;padding:18px 22px;min-width:280px}
  .sbovlcard .sbovt{font-family:Georgia,serif;font-size:20px;color:#f0c468;margin-bottom:10px;text-align:center}
  .sbrec{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 0;color:#e9dcc0;font-size:13px}
  /* ARENA_SLICE_END 11-marble-bastion-cookhouse */
  /* ARENA_SLICE_START 12-fullscreen-plaza-auction -- spliced from arena-css/12-fullscreen-plaza-auction.css; edit that file, not this region */
  .roomovl{position:fixed;inset:0;z-index:3000;background:rgba(6,4,2,.74);display:flex;align-items:center;justify-content:center;padding:16px}
  .roomovlcard{width:100%;max-width:560px;max-height:86vh;max-height:86dvh;overflow:auto;background:radial-gradient(130% 130% at 0% 0%,#221a0d,#0f0a05);border:1px solid var(--gold);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
  .roomovlhead{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#140d06;z-index:1}
  .roomovltitle{font-family:var(--serif);font-size:18px;color:var(--gold2)}
  .roomovlx{background:none;border:0;color:var(--muted);font-size:18px;cursor:pointer;line-height:1}
  .roomovlbody{padding:14px 16px 18px}
  .roomiframe{width:100%;height:min(64vh,560px);height:min(64dvh,560px);border:1px solid var(--line);border-radius:10px;background:#000}
  .roomiframelink{display:inline-block;margin-top:8px;color:var(--gold);font-size:12.5px}
  .ovcard{border:1px solid var(--line);border-radius:11px;padding:11px 13px;margin-top:9px;background:rgba(20,14,6,.4)}
  .ovct{font-size:15px;color:var(--ink);line-height:1.35}
  .ovrow{display:flex;justify-content:space-between;padding:7px 2px;border-top:1px solid var(--line);font-size:13.5px}
  .ovrow:first-child{border-top:0}
  .agoraboard{margin-top:12px;padding:12px;border:1px solid rgba(111,183,154,.32);border-radius:13px;background:radial-gradient(120% 150% at 0 0,rgba(22,75,59,.34),rgba(12,10,6,.72))}
  .agorahead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .agoramonument{width:54px;height:54px;display:grid;place-items:center;flex:0 0 54px;border-radius:50%;font-size:29px;background:radial-gradient(circle at 38% 32%,#eee0b5,#806127);box-shadow:0 5px 15px rgba(0,0,0,.4)}
  .agorarank{flex:1;min-width:165px}.agorarank .t{color:#a8e6c8}.agorarank .muted{font-size:11.5px}
  .agorabar{height:9px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(111,183,154,.25);margin-top:5px}
  .agorabar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4b9a78,#a8e6c8)}
  .agoragoods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}
  .agoragood{min-width:0;padding:7px 5px;text-align:center;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(0,0,0,.2)}
  .agoragood.zero{opacity:.46}.agoragood b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agoragood span{font-size:10.5px;color:var(--soft)}
  .agoraorders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
  .agoraorder{padding:10px;border:1px solid rgba(226,180,90,.2);border-radius:11px;background:rgba(13,9,5,.58);display:flex;flex-direction:column;min-width:0}
  .agoraorder.ready{border-color:#78cca6;box-shadow:inset 0 0 18px rgba(70,170,125,.1)}.agoraorder.done{opacity:.66}
  .agoraordert{display:flex;gap:6px;align-items:flex-start;font-weight:800;color:var(--ink)}.agoraordert span:first-child{font-size:21px}.agorafavor{margin-left:auto;color:#a8e6c8;font-size:11px;white-space:nowrap}
  .agorastory{font-size:11px;line-height:1.35;color:var(--muted);margin:5px 0;min-height:30px}
  .agorareqs{display:flex;gap:4px;flex-wrap:wrap;margin:3px 0 9px}.agorareq{font-size:10.5px;border-radius:999px;padding:3px 7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.agorareq.met{color:#a8e6c8;border-color:rgba(111,183,154,.35)}
  .agoraorder .btn{margin-top:auto;min-height:44px}
  @media(max-width:640px){.agoragoods{grid-template-columns:repeat(2,minmax(0,1fr))}.agoraorders{grid-template-columns:1fr}.agorastory{min-height:0}}
  .companyhero{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(226,180,90,.34);border-radius:13px;background:radial-gradient(120% 160% at 0 0,rgba(95,66,22,.38),rgba(14,9,4,.7))}
  .companypennant{width:58px;height:68px;flex:0 0 58px;display:flex;align-items:center;justify-content:center;font-size:30px;background:linear-gradient(150deg,#ead9ad,#927039);color:#291b0a;clip-path:polygon(0 0,100% 0,100% 78%,50% 100%,0 78%);filter:drop-shadow(0 4px 5px rgba(0,0,0,.42))}
  .companyname{font-family:var(--serif);font-size:20px;color:var(--gold2)}
  .companymeta{font-size:12.5px;color:var(--soft);line-height:1.45;margin-top:2px}
  .companysection{margin-top:14px}
  .companysectitle{font-family:var(--serif);color:var(--gold2);font-size:16px;margin-bottom:7px}
  .companyorders{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}
  .companyorder{border:1px solid rgba(226,180,90,.24);border-radius:11px;padding:10px;background:rgba(15,10,5,.58)}
  .companyorder.ready{border-color:#e2b45a;box-shadow:inset 0 0 18px rgba(226,180,90,.1)}
  .companyordert{font-weight:800;color:var(--ink);font-size:14px}
  .companyorderd{font-size:11.5px;line-height:1.35;color:var(--muted);min-height:31px;margin-top:3px}
  .companyprogress{height:10px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;margin-top:8px;border:1px solid rgba(226,180,90,.18)}
  .companyprogress>i{display:block;height:100%;background:linear-gradient(90deg,#a8792a,#f0c468);border-radius:inherit;transition:width .35s}
  .companyprogresst{font-size:11px;color:var(--soft);margin-top:3px}
  .companyroster{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px}
  .companymember{display:flex;align-items:center;gap:7px;border:1px solid rgba(226,180,90,.18);border-radius:10px;padding:8px;background:rgba(13,9,5,.48);min-width:0}
  .companymember .companyface{width:34px;height:34px;flex:0 0 34px;border-radius:50%;overflow:hidden;background:#2b1c0d}
  .companymember .companyface svg{width:34px;height:auto;transform:translateY(-2px)}
  .companymembername{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .companycaptain{font-size:10px;color:var(--gold2)}
  .companyactions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
  .companyactions .btn{min-height:44px}
  .companyinvite{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid rgba(122,178,210,.28);border-radius:10px;padding:9px;margin-top:7px;background:rgba(20,47,61,.2)}
  @media(max-width:560px){.companyhero{align-items:flex-start}.companyorders{grid-template-columns:1fr}.companyactions{flex-direction:column}.companyactions .btn{width:100%}.companyroster{grid-template-columns:repeat(2,minmax(0,1fr))}.companyinvite{flex-direction:column;align-items:stretch}}
  /* ── Full-screen Plaza (Puzzle Pirates): the scene IS the screen ── */
  body.plazamode{overflow:hidden}
  body.plazamode .wrap{padding-top:0;padding-bottom:0}
  body.plazamode .sitefoot{display:none}
  body.plazamode .plaza{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);margin-top:0;margin-bottom:0;border-left:0;border-right:0;border-radius:0}
  /* No black banner in the immersive world: the scene is full-screen, the top
     controls float as a small HUD you can still tap. */
  body.plazamode .top{position:fixed;top:0;left:0;right:0;z-index:2600;margin:0;padding:calc(9px + env(safe-area-inset-top,0px)) calc(14px + env(safe-area-inset-right,0px)) 9px calc(14px + env(safe-area-inset-left,0px));border-bottom:0;background:transparent;justify-content:flex-end;pointer-events:none}
  body.plazamode .top .brand{display:none}
  body.plazamode .top .row{pointer-events:auto;gap:8px}
  body.plazamode .top .row .chip,body.plazamode .top .row #menubtn{background:rgba(10,7,4,.62);border:1px solid rgba(255,222,150,.28);box-shadow:0 2px 8px rgba(0,0,0,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  /* WoW-style world chat belongs to the lower-left, leaving the center of the
     world open for characters and movement. */
  .plazadock{position:absolute;left:14px;right:auto;bottom:8px;width:min(680px,calc(100vw - 104px));box-sizing:border-box;z-index:1300;padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px;border:1px solid rgba(232,193,90,.16);border-radius:10px;background:linear-gradient(180deg,rgba(6,4,2,.16),rgba(6,4,2,.88));box-shadow:0 8px 26px rgba(0,0,0,.26)}
  .plazadockhead{margin:0;width:100%;display:flex;gap:10px;align-items:baseline}
  .pdhname{font-family:var(--serif);font-size:15px;color:#f3e7c8;text-shadow:0 1px 4px #000}
  .pdhpop{font-size:12px;color:#c9bd97;text-shadow:0 1px 3px #000;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .plazadock .plazalog{margin:0;width:100%;max-height:76px;background:transparent;text-shadow:0 1px 3px #000}
  .plazadockrow{display:flex;gap:8px;align-items:center;margin:0;width:100%}
  .plazadockrow input{flex:1;min-width:0}
  .plazadockrow .btn{flex:0 0 auto}
  /* 👑 The Nightly Agon strip: the world screen's one time anchor. Fixed to
     the viewport under the header, centered where the sky is empty; on narrow
     screens it left-anchors under the header row so it never rides over the
     right-hand HUD rail (the friend-call bar learned this same lesson). While
     the strip owns the plaza, the rail chip stands down at EVERY width: two
     agon clocks on one screen is clutter, not emphasis. */
  body.plazamode .top .utilityrail #agonchip{display:none}
  .agonstrip{position:fixed;top:54px;left:50%;transform:translateX(-50%);z-index:1250;padding:7px 14px;border-radius:999px;border:1px solid rgba(226,187,94,.55);background:linear-gradient(180deg,rgba(48,36,23,.94),rgba(18,13,9,.94));color:#f6e4b5;font:600 13px/1.2 system-ui,sans-serif;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.5);max-width:min(86vw,430px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .agonstrip:hover{border-color:#f0cf79;filter:brightness(1.12)}
  .agonstrip.agonlive{border-color:#f0cf79;box-shadow:0 0 0 1px rgba(240,207,121,.35),0 3px 14px rgba(240,207,121,.28);animation:agonpulse 2.2s ease-in-out infinite}
  #agonchip.agonlive{border-color:#f0cf79!important;color:#ffe9b0!important;animation:agonpulse 2.2s ease-in-out infinite}
  @keyframes agonpulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.22)}}
  @media(prefers-reduced-motion:reduce){.agonstrip.agonlive,#agonchip.agonlive{animation:none}}
  /* ── The Auction House ── */
  .aucwrap{position:absolute;left:0;right:0;top:0;bottom:0;overflow-y:auto;padding:52px 16px 40px;background:radial-gradient(1200px 700px at 50% -10%,#3a2a17,#241812 60%,#1b120c);color:#f0e2c4}
  .auctop{display:flex;align-items:center;gap:14px;max-width:1080px;margin:0 auto 4px;flex-wrap:wrap}
  .aucback{color:#e7d3a6;text-decoration:none;font-size:14px;background:rgba(0,0,0,.32);border:1px solid rgba(220,190,130,.28);border-radius:999px;padding:5px 13px}
  .aucback:hover{background:rgba(0,0,0,.5)}
  .aucgold{font-family:var(--serif);font-size:16px;color:#ffdf8a;text-shadow:0 1px 4px #000;background:rgba(0,0,0,.3);border:1px solid rgba(220,190,130,.3);border-radius:999px;padding:5px 13px}
  .auctitle{font-family:var(--serif);font-size:26px;color:#f6e6bf;text-shadow:0 2px 8px #000;margin-left:auto}
  .aucsub{max-width:1080px;margin:0 auto 16px;font-size:13.5px;color:#cdbb92;line-height:1.5}
  .aucqty{display:inline-flex;align-items:center;gap:6px;margin-left:6px;vertical-align:middle}
  .aucqlbl{color:#b9a875;font-size:12.5px}
  .aucqbtn{background:rgba(0,0,0,.28);border:1px solid rgba(220,190,130,.3);color:#e7d3a6;border-radius:8px;padding:4px 11px;cursor:pointer;font-size:13px}
  .aucqbtn.on{background:linear-gradient(#caa03c,#a3792a);color:#241812;border-color:#e2c26a;font-weight:600}
  .aucgrid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(224px,1fr));gap:14px}
  .aucware{background:linear-gradient(#2f2013,#271a10);border:1px solid rgba(220,190,130,.22);border-radius:14px;padding:14px;box-shadow:0 8px 18px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:9px}
  .aucware:hover{border-color:rgba(226,194,106,.5)}
  .aucwhead{display:flex;align-items:center;gap:10px}
  .aucwicon{font-size:30px;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
  .aucwname{font-family:var(--serif);font-size:17px;color:#f2e4c1}
  .aucwprices{display:flex;justify-content:space-between;gap:8px;font-size:13px}
  .aucbuy{color:#e9c98a}.aucbuy b{color:#ffdf8a}
  .aucsell{color:#a9c7b0;text-align:right}.aucsell b{color:#bfe6c8}
  .aucup{color:#ff9d6b}.aucdn{color:#7fd39a}
  .aucown{font-size:12px;color:#8f8460}
  .aucown.has{color:#e2c26a}
  .aucacts{display:flex;gap:8px;margin-top:2px}
  .aucacts .btn{flex:1}
  .btn.sm{padding:7px 10px;font-size:13px}
  .aucticker{max-width:1080px;margin:0 auto 14px;font-size:13px;color:#d8c79b;background:rgba(0,0,0,.26);border:1px solid rgba(220,190,130,.2);border-left:3px solid #8a7a4c;border-radius:8px;padding:8px 13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .aucticker.up{border-left-color:#ff9d6b;color:#f3d3b6}
  .aucticker.dn{border-left-color:#7fd39a;color:#c4e6cf}
  .aucticker b{color:#f6e6bf}
  .aucchart{display:flex;align-items:center;gap:8px;margin:-2px 0 2px}
  .aucspark{flex:1;min-width:0;height:34px;display:block;opacity:.92}
  .aucsig{flex:0 0 auto;font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px;white-space:nowrap}
  .aucsig.low{background:rgba(127,211,154,.16);color:#8fe0aa;border:1px solid rgba(127,211,154,.4)}
  .aucsig.high{background:rgba(255,157,107,.15);color:#ffb488;border:1px solid rgba(255,157,107,.4)}
  .aucconfirm{position:sticky;top:8px;z-index:3;max-width:1048px;margin:0 auto 14px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 14px;border:1px solid rgba(245,205,112,.54);border-radius:12px;background:linear-gradient(100deg,rgba(49,31,15,.97),rgba(28,20,13,.97));box-shadow:0 10px 28px rgba(0,0,0,.42),inset 0 0 22px rgba(226,180,90,.06);color:#f5e3b9}
  .aucconfirm:empty{display:none}.auctradeicon{font-size:24px;filter:drop-shadow(0 2px 3px #000)}.auctradecopy{min-width:0;font-size:13px;line-height:1.35}.auctradecopy b{display:block;color:#ffdf8a;font-family:var(--serif);font-size:15px}.auctradeamount{font-weight:900;color:#ffdf8a;text-align:right;white-space:nowrap}.auctradeamount small{display:block;color:#b9a875;font-size:10px;font-weight:600}
  .aucfxcoin{position:fixed;z-index:4200;pointer-events:none;font-size:19px;line-height:1;filter:drop-shadow(0 3px 3px rgba(0,0,0,.62));animation:aucpursearc .72s cubic-bezier(.2,.72,.24,1) forwards;animation-delay:var(--delay)}
  .aucsource{animation:aucsourceweight .44s ease-out}.auctarget{animation:auctargetweight .72s ease-out}.aucinventory{animation:aucinventoryweight .62s ease-out}.aucwrap.aucimpact{animation:aucimpact .28s ease-out}
  @keyframes aucpursearc{0%{transform:translate(0,0) scale(.58) rotate(-16deg);opacity:0}12%{opacity:1}52%{transform:translate(var(--mx),calc(var(--my) - var(--arc))) scale(1.12) rotate(12deg);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.7) rotate(28deg);opacity:0}}
  @keyframes aucsourceweight{0%,100%{filter:none}35%{filter:brightness(1.32);outline:2px solid rgba(255,219,125,.74);outline-offset:3px}}
  @keyframes auctargetweight{0%{box-shadow:0 0 0 0 rgba(255,217,114,.72)}58%{box-shadow:0 0 0 10px rgba(255,217,114,0)}100%{box-shadow:none}}
  @keyframes aucinventoryweight{0%{transform:scale(1)}42%{transform:scale(1.12);color:#fff0ac}100%{transform:scale(1)}}
  @keyframes aucimpact{0%,100%{transform:translateY(0)}42%{transform:translateY(2px)}}
  @media(max-width:600px){.aucconfirm{grid-template-columns:auto minmax(0,1fr);top:4px}.auctradeamount{grid-column:2;text-align:left}.auctradeamount small{display:inline;margin-left:7px}}
  @media(prefers-reduced-motion:reduce){.aucfxcoin{display:none}.aucwrap.aucimpact,.aucsource,.auctarget,.aucinventory{animation:none}.aucsource,.auctarget{outline:2px solid rgba(255,219,125,.72);outline-offset:3px}.aucinventory{color:#fff0ac}}
  /* Academy learning system */
  body.academy-mode{background:#071412;color:#f8f0df;overflow-x:hidden}
  body.academy-mode .wrap{max-width:none;padding:0}
  body.academy-mode .top,body.academy-mode .sitefoot{display:none}
  body.academy-mode #view{width:100%;max-width:none;margin:0;padding:0;min-height:100vh;min-height:100dvh}
  .academy-app{--academy-ink:#102c29;--academy-gold:#f2c866;--academy-paper:#f7f0df;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 72% 5%,rgba(74,136,122,.28),transparent 31%),linear-gradient(180deg,#102c29 0,#091b19 58%,#071412 100%);color:#f8f0df}
  .academy-head{position:relative;min-height:290px;padding:62px clamp(22px,5vw,76px) 38px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;overflow:hidden;border-bottom:1px solid rgba(242,200,102,.23);background:linear-gradient(90deg,rgba(5,20,18,.97) 0%,rgba(5,20,18,.76) 48%,rgba(5,20,18,.26) 100%),url('room-bg-academy-desktop-v1.jpg') center 46%/cover}
  .academy-head:after{content:"";position:absolute;inset:auto 0 0;height:80px;background:linear-gradient(transparent,#102c29);pointer-events:none}
  .academy-head>*{position:relative;z-index:1}.academy-back{position:absolute;left:clamp(22px,5vw,76px);top:25px;color:#f8e6b7;text-decoration:none;font-weight:800;letter-spacing:.02em}.academy-back:hover{text-decoration:underline}
  .academy-identity{max-width:780px}.academy-kicker,.academy-head small,.academy-page-title>small,.academy-dashboard small,.academy-studio small,.teacher-profile>small{display:block;color:#f2c866;font-size:11px;font-weight:900;letter-spacing:.16em}.academy-identity h1{margin:8px 0 9px;font:800 clamp(30px,4.5vw,58px)/1.02 Georgia,serif;max-width:760px}.academy-identity p{max-width:690px;margin:0;color:#dce8e1;font-size:clamp(14px,1.5vw,18px);line-height:1.55}
  .academy-teacher-door{align-self:end;border:1px solid rgba(242,200,102,.72);border-radius:18px;padding:14px 18px;background:rgba(8,29,26,.82);color:#ffe7a6;font-weight:900;font-size:15px;box-shadow:0 12px 32px rgba(0,0,0,.27);cursor:pointer}.academy-teacher-door:hover{background:#f2c866;color:#102c29;transform:translateY(-2px)}
  .academy-tabs{position:sticky;top:0;z-index:12;display:flex;justify-content:center;gap:6px;padding:10px 14px;background:rgba(7,20,18,.93);border-bottom:1px solid rgba(242,200,102,.17);backdrop-filter:blur(16px)}.academy-tab{border:0;border-radius:999px;padding:10px 16px;background:transparent;color:#b8cbc5;font-weight:800;cursor:pointer}.academy-tab.on{background:#f2c866;color:#102c29}.academy-main{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 80px}
  .academy-loading,.academy-empty{min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;border:1px dashed rgba(242,200,102,.3);border-radius:24px;color:#c7d8d2}.academy-empty>span{font-size:48px}.academy-empty h3{margin:12px 0 5px;color:#fff;font-size:22px}.academy-empty p{max-width:540px;margin:0;line-height:1.6}
  .academy-summary{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;gap:28px;align-items:center;padding:26px;border:1px solid rgba(242,200,102,.26);border-radius:24px;background:linear-gradient(135deg,rgba(32,72,65,.8),rgba(14,39,35,.85));box-shadow:0 20px 50px rgba(0,0,0,.18)}.academy-summary h2{margin:5px 0;font:800 36px Georgia,serif;color:#fff}.academy-summary p{margin:0;color:#bfd0ca;line-height:1.55}.academy-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.academy-stat{display:flex;gap:10px;align-items:center;min-height:82px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(3,16,14,.3)}.academy-stat-icon{font-size:26px}.academy-stat b,.academy-stat small{display:block}.academy-stat b{color:#fff;font-size:18px}.academy-stat small{margin-top:3px;color:#a9c0b9;font-size:10px;letter-spacing:.04em}
  .academy-section-title{margin:34px 0 14px;font:700 25px Georgia,serif}.academy-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.academy-action{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:18px;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(21,52,47,.74);box-shadow:0 14px 30px rgba(0,0,0,.13)}.academy-action-icon{font-size:28px}.academy-action h3{margin:4px 0 5px;color:#fff;font-size:18px}.academy-action p{margin:0;color:#b9ccc5;font-size:13px;line-height:1.5}.academy-action .btn{grid-column:1/-1;justify-self:start;margin-top:4px}.academy-creed{display:flex;gap:10px;justify-content:center;margin-top:20px;padding:12px;color:#b9ccc5}.academy-creed b{color:#f4d788}
  .academy-page-title{position:relative;padding:10px 0 25px}.academy-page-title h2{margin:5px 0;font:800 clamp(28px,4vw,44px) Georgia,serif}.academy-page-title p{max-width:680px;margin:0;color:#b9ccc5;line-height:1.55}.academy-page-title.portfolio .btn{position:absolute;right:0;bottom:25px}.academy-domain{--domain:#f2c866;margin-top:24px;padding:22px;border:1px solid rgba(242,200,102,.24);border-left:4px solid var(--domain);border-radius:24px;background:linear-gradient(135deg,rgba(36,78,70,.48),rgba(12,35,31,.76))}.academy-domain-title{display:flex;gap:14px;align-items:center;margin-bottom:16px}.academy-domain-title>span{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px var(--domain);font-size:26px}.academy-domain-title h2{margin:0;color:#fff;font:700 24px Georgia,serif}.academy-domain-title p{margin:3px 0 0;color:#b9ccc5;font-size:13px}.academy-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.academy-course{display:flex;flex-direction:column;min-height:230px;padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(5,23,20,.65)}.academy-course.done{border-color:rgba(242,200,102,.38)}.academy-course.locked{opacity:.56}.academy-course-top{display:flex;gap:10px}.academy-course-icon{font-size:27px}.academy-course h3{margin:1px 0 4px;color:#fff;font-size:17px}.academy-course p{margin:0;color:#b7c9c3;font-size:12.5px;line-height:1.45}.academy-progress{height:7px;margin:15px 0 7px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden}.academy-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#62c8ac,#f2c866)}.academy-course-fact{display:block;min-height:34px;margin-bottom:10px;color:#9fb5ae;font-size:11px;letter-spacing:0}.academy-course .btn{align-self:flex-start;margin-top:auto}
  .academy-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.academy-project-card{display:flex;flex-direction:column;min-height:220px;padding:18px;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(18,48,43,.72)}.academy-project-card.submitted{border-color:rgba(98,200,172,.5)}.academy-project-card small{color:#f2c866;font-size:10px;font-weight:900;letter-spacing:.12em}.academy-project-card h3{margin:8px 0;color:#fff}.academy-project-card p{display:-webkit-box;overflow:hidden;margin:0 0 15px;color:#b9ccc5;line-height:1.55;-webkit-line-clamp:5;-webkit-box-orient:vertical}.academy-project-card .btn{align-self:flex-start;margin-top:auto}
  .academy-studio{width:min(900px,100%);margin:0 auto}.academy-studio-back{border:0;background:transparent;color:#f2d88f;font-weight:800;cursor:pointer}.academy-studio-hero{display:flex;gap:20px;align-items:center;margin:17px 0 20px;padding:24px;border:1px solid rgba(242,200,102,.3);border-radius:24px;background:linear-gradient(135deg,#1c4c44,#102d29)}.academy-studio-icon{font-size:55px}.academy-studio-hero h2{margin:5px 0;font:800 36px Georgia,serif}.academy-studio-hero p{margin:0;color:#c4d5cf}.academy-objectives{display:grid;grid-template-columns:200px 1fr;gap:18px;padding:18px 22px;border-radius:18px;background:#f2e7ce;color:#18342f}.academy-objectives h3{margin:4px 0}.academy-objectives ul{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none}.academy-objectives li{padding:10px;border-left:3px solid #4b9d8b;background:#fff8e9;font-size:13px}.academy-lesson{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:17px 0}.academy-lesson section{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(19,50,45,.7)}.academy-lesson h3{margin:6px 0;color:#fff}.academy-lesson p{margin:0;color:#bdd0c9;line-height:1.62}.academy-project-brief{padding:22px;border:1px solid rgba(242,200,102,.32);border-radius:20px;background:linear-gradient(135deg,rgba(89,68,30,.35),rgba(21,48,43,.8))}.academy-project-brief h3{margin:6px 0;color:#fff}.academy-project-brief p,.academy-project-brief li{color:#c9d8d3;line-height:1.55}.academy-project-brief ul{padding-left:20px}.academy-checkpoint-call{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:16px;padding:18px;border-radius:18px;background:#f2c866;color:#19332f;font-weight:800}
  .academy-quiz{padding:22px;border-radius:22px;background:#f6eedc;color:#17342f}.academy-quiz>h3{margin:0;font:800 29px Georgia,serif}.academy-quiz>p{color:#526963}.academy-question{margin:16px 0;padding:16px;border:1px solid #d8cbaa;border-radius:15px}.academy-question legend{padding:0 7px;font-weight:800}.academy-answer{display:block;width:100%;margin:7px 0;padding:11px 13px;border:1px solid #c7b98f;border-radius:11px;background:#fffaf0;color:#18342f;text-align:left;cursor:pointer}.academy-answer.on{border-color:#1d7567;background:#d9eee8;box-shadow:inset 3px 0 #1d7567}.academy-quiz-status{min-height:24px;color:#8a4f27}.academy-submit{margin-top:5px}.academy-result-mark{font-size:52px}.academy-correction{margin:9px 0;padding:12px;border-radius:12px;background:#e6efe9}.academy-correction.wrong{background:#f4e4d2}.academy-correction p{margin:4px 0 0;color:#405b54}.academy-result-actions,.academy-project-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}
  .academy-field{display:block;margin-top:10px;color:#4e625d;font-size:12px;font-weight:800}.academy-project-editor select,.academy-project-editor input,.academy-project-editor textarea{display:block;width:100%;margin-top:5px}.academy-project-body{min-height:190px;resize:vertical}.academy-project-error{min-height:22px;margin-top:5px;color:#a24c39}
  .teacher-app{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:330px minmax(0,1fr);background:radial-gradient(circle at 18% 20%,rgba(81,148,130,.22),transparent 35%),#081815;color:#f8f0df}.teacher-profile{position:relative;padding:68px 28px 24px;border-right:1px solid rgba(242,200,102,.24);background:linear-gradient(180deg,#143a34,#0b2420)}.teacher-profile .academy-back{left:28px}.teacher-portrait{display:flex;justify-content:center}.teacher-profile>small{text-align:center}.teacher-profile h1{text-align:center;margin:5px 0;font:800 34px Georgia,serif}.teacher-profile>p{color:#bfd0ca;line-height:1.55}.teacher-profile label{display:block;margin-top:22px;color:#ead28f;font-size:12px;font-weight:800}.teacher-course{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid rgba(242,200,102,.3);border-radius:11px;background:#0b211e;color:#fff}.teacher-modes{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.teacher-modes button,.teacher-prompts button{border:1px solid rgba(242,200,102,.24);border-radius:999px;background:rgba(255,255,255,.04);color:#d7e4df;cursor:pointer}.teacher-modes button{padding:7px 10px;font-size:11px}.teacher-modes button.on{background:#f2c866;color:#17342f}.teacher-privacy{margin-top:20px;padding:11px;border-radius:12px;background:rgba(0,0,0,.18);color:#a9beb7;font-size:11px;line-height:1.45}.teacher-room{display:flex;flex-direction:column;min-width:0;height:100vh;height:100dvh;padding:22px clamp(16px,4vw,55px)}.teacher-log{flex:1;overflow:auto;padding:22px 0}.teacher-message{display:flex;margin:11px 0}.teacher-message>div{max-width:min(680px,86%);padding:13px 16px;border-radius:18px;background:#163a34;color:#edf4f1;line-height:1.55}.teacher-message.you{justify-content:flex-end}.teacher-message.you>div{background:#f2c866;color:#17342f;border-bottom-right-radius:5px}.teacher-message.teacher>div{border-bottom-left-radius:5px}.teacher-typing>div{color:#9eb5ad}.teacher-prompts{display:flex;gap:7px;overflow:auto;padding:5px 0 10px}.teacher-prompts button{flex:0 0 auto;padding:8px 11px;font-size:11px}.teacher-compose{display:grid;grid-template-columns:minmax(0,1fr) 44px auto;gap:8px;align-items:end;padding:9px;border:1px solid rgba(242,200,102,.27);border-radius:18px;background:#102c27}.teacher-compose textarea{min-height:42px;max-height:130px;padding:11px;border:0;background:transparent;color:#fff;resize:none;outline:none}.teacher-compose textarea::placeholder{color:#8ca69e}.teacher-mic{width:42px;height:42px;border:0;border-radius:12px;background:rgba(255,255,255,.08);color:#fff}.teacher-voice{align-self:flex-start;margin-top:7px;border:0;background:transparent;color:#9eb5ad;font-size:11px}.teacher-action{margin-left:0;padding:9px 12px;border:1px solid #f2c866;border-radius:12px;background:transparent;color:#f2d98e;font-weight:800}
  @media(max-width:900px){.academy-head{grid-template-columns:1fr;min-height:300px}.academy-teacher-door{justify-self:start}.academy-summary{grid-template-columns:1fr}.academy-plan,.academy-course-grid,.academy-project-grid{grid-template-columns:repeat(2,1fr)}.academy-lesson{grid-template-columns:1fr}.academy-objectives{grid-template-columns:1fr}.academy-objectives ul{grid-template-columns:1fr}.teacher-app{grid-template-columns:280px 1fr}}
  @media(max-width:680px){.academy-head{min-height:290px;padding:62px 18px 28px;background:linear-gradient(180deg,rgba(5,20,18,.66),rgba(5,20,18,.95)),url('room-bg-academy-mobile-v1.jpg') center 35%/cover}.academy-head .academy-back{left:18px}.academy-identity h1{font-size:32px}.academy-teacher-door{padding:11px 14px}.academy-tabs{justify-content:flex-start;overflow:auto}.academy-tab{flex:0 0 auto;padding:9px 12px}.academy-main{width:calc(100% - 20px);padding-top:16px}.academy-summary{padding:17px}.academy-stats{grid-template-columns:1fr}.academy-stat{min-height:62px}.academy-plan,.academy-course-grid,.academy-project-grid{grid-template-columns:1fr}.academy-action{min-height:0}.academy-creed{display:block;text-align:center}.academy-page-title.portfolio .btn{position:static;margin-top:15px}.academy-domain{padding:15px}.academy-studio-hero{align-items:flex-start;padding:18px}.academy-studio-icon{font-size:36px}.academy-studio-hero h2{font-size:28px}.academy-checkpoint-call{align-items:flex-start;flex-direction:column}.teacher-app{display:block}.teacher-profile{padding:56px 16px 13px;border-right:0;border-bottom:1px solid rgba(242,200,102,.2)}.teacher-profile .academy-back{left:16px}.teacher-portrait{display:none}.teacher-profile>p,.teacher-privacy{display:none}.teacher-profile h1{text-align:left;font-size:24px}.teacher-profile>small{text-align:left}.teacher-profile label{margin-top:10px}.teacher-room{height:calc(100vh - 234px);height:calc(100dvh - 234px);padding:8px 10px}.teacher-log{padding:7px 0}.teacher-message>div{max-width:91%;padding:10px 12px}.teacher-compose{grid-template-columns:minmax(0,1fr) 40px auto}.teacher-compose .btn{padding:10px}.teacher-modes{flex-wrap:nowrap;overflow:auto}.teacher-modes button{flex:0 0 auto}}
  @media(prefers-reduced-motion:reduce){.academy-teacher-door{transition:none}.academy-progress i{transition:none}}
  /* The hamburger: About + the feedback channel live here, off the play space. */
  .menudrop{position:fixed;top:calc(54px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));z-index:7000;display:flex;flex-direction:column;min-width:210px;background:linear-gradient(180deg,#241a10,#1a1209);border:1px solid rgba(226,180,90,.35);border-radius:12px;padding:6px;box-shadow:0 18px 44px rgba(0,0,0,.55)}
  .menudrop a{padding:10px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:14px}
  .menudrop a:hover{background:rgba(226,180,90,.12)}
  .menudrop .touchonly{display:none!important}
  @media(pointer:coarse){.menudrop .touchonly{display:block!important}}
  .utilityrail{display:flex;align-items:center;gap:8px}
  /* Duplicated in 00-critical, where it actually does its work -- the boot
     window is over before this sheet is parsed. It lives here too because
     the critical block is a subset, never a carve-out. */
  body:has(#bootshell) header.top .utilityrail{display:none}
  .utilityrail .hudutil{min-width:38px;height:38px;padding:0;display:grid;place-items:center;cursor:pointer;font-size:17px;line-height:1;color:var(--ink)}
  .utilityrail .hudutil svg,.top .row .hudutil svg{width:23px;height:23px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .top .row .hudutil{width:38px;height:38px;padding:0;display:grid;place-items:center;cursor:pointer;line-height:1}
  /* The Play chooser is the complete game shelf, not a shortcut to one venue. */
  .playpick-overlay{position:fixed;inset:0;z-index:7001;display:grid;place-items:start center;padding:54px 14px 14px;background:rgba(8,5,2,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
  .playpick-card{width:min(900px,calc(100vw - 28px));height:min(760px,calc(100dvh - 68px));max-height:calc(100vh - 68px);max-height:calc(100dvh - 68px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(236,198,97,.62);border-radius:20px;background:radial-gradient(circle at 12% 0,rgba(174,112,30,.2),transparent 28%),linear-gradient(160deg,#302315,#1b1209 64%,#15100a);box-shadow:0 24px 80px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,239,184,.05);color:var(--ink)}.playpick-card>*{min-width:0}
  .playpick-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 18px 11px}.playpick-head>div{min-width:0}.playpick-title{font:900 clamp(23px,3vw,31px)/1.05 var(--serif);color:#fff0c3}.playpick-sub{margin-top:5px;color:#bda982;font-size:12px;line-height:1.35}.playpick-close{flex:none;width:42px;height:42px;padding:0;font-size:18px}
  .playpick-tools{padding:0 18px 12px;border-bottom:1px solid rgba(232,193,90,.16)}.playpick-search{position:relative}.playpick-search>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:16px;pointer-events:none}.playpick-search input{width:100%;height:43px;padding:9px 13px 9px 40px;border:1px solid rgba(236,198,97,.3);border-radius:12px;background:rgba(4,3,2,.43);color:#fff3d1;font:inherit;outline:none}.playpick-search input:focus{border-color:#edc65f;box-shadow:0 0 0 3px rgba(237,198,95,.13)}.playpick-search input::placeholder{color:#98866a}
  .playpick-filters{display:flex;gap:6px;margin-top:9px;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.playpick-filters::-webkit-scrollbar{display:none}.playpick-filter{flex:none;min-height:32px;padding:5px 10px;border:1px solid rgba(232,193,90,.2);border-radius:999px;background:rgba(0,0,0,.2);color:#cbb991;font:800 11px var(--sans);cursor:pointer}.playpick-filter.on{border-color:#e9bd50;background:linear-gradient(180deg,#efce72,#b87928);color:#211306;box-shadow:0 4px 13px rgba(198,135,38,.22)}
  .playpick-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;padding:13px 18px 18px;scrollbar-color:#8b632c #1c130a}.playpick-section,.playpick-grid{min-width:0}.playpick-section+.playpick-section{margin-top:17px}.playpick-sectionhead{display:flex;align-items:center;gap:8px;margin:0 1px 8px;color:#f2d992;font:900 12px var(--sans);letter-spacing:.09em;text-transform:uppercase}.playpick-sectionhead span{color:#8f7b5b;font-size:10px;letter-spacing:0}.playpick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .playpick-game{position:relative;min-width:0;min-height:74px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid rgba(232,193,90,.17);border-radius:13px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(0,0,0,.18));color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.playpick-game:hover,.playpick-game:focus-visible{z-index:1;transform:translateY(-1px);border-color:rgba(239,199,92,.72);background:linear-gradient(135deg,rgba(150,94,24,.25),rgba(0,0,0,.2));outline:none;box-shadow:0 8px 18px rgba(0,0,0,.23)}.playpick-game.featured{border-color:rgba(236,193,82,.48);background:linear-gradient(135deg,rgba(126,78,18,.43),rgba(42,25,10,.62))}.playpick-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(240,207,124,.18);border-radius:11px;background:rgba(0,0,0,.22);font-size:21px}.playpick-copy{min-width:0}.playpick-copy b{display:block;overflow:hidden;color:#fff0c5;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.playpick-copy small{display:block;margin-top:3px;overflow:hidden;color:#a99778;font-size:10.5px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.playpick-badge{align-self:start;margin-top:1px;padding:3px 6px;border-radius:999px;background:rgba(232,193,90,.15);color:#f2cc68;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.playpick-empty{display:grid;place-items:center;min-height:180px;color:#b7a481;text-align:center}
  .playpick-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 18px 13px;border-top:1px solid rgba(232,193,90,.18);background:rgba(8,5,2,.35)}.playpick-countdown{color:#d9c18c;font-size:11px}.playpick-meter{height:4px;margin-top:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.08)}.playpick-meter i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b97a2b,#f3d472);transform-origin:left;transition:transform 1s linear}.playpick-foot.paused .playpick-meter i{transform:scaleX(0)!important;transition:none}.playpick-pause{min-height:36px;padding:6px 11px;font-size:11px}
  @media(max-width:680px){.playpick-overlay{padding:0}.playpick-card{width:100vw;height:100dvh;max-height:100vh;max-height:100dvh;border:0;border-radius:0}.playpick-head{padding:12px 12px 8px}.playpick-title{font-size:22px}.playpick-sub{font-size:10.5px}.playpick-tools{padding:0 12px 9px}.playpick-search input{height:42px}.playpick-scroll{padding:10px 10px 15px}.playpick-grid{grid-template-columns:1fr;gap:6px}.playpick-game{min-height:68px;padding:8px 9px}.playpick-foot{padding:9px 11px max(10px,env(safe-area-inset-bottom));gap:8px}.playpick-countdown{font-size:10px}.playpick-pause{padding:6px 8px}.playpick-section+.playpick-section{margin-top:14px}}
  @media(prefers-reduced-motion:reduce){.playpick-game,.playpick-meter i{transition:none}.playpick-game:hover,.playpick-game:focus-visible{transform:none}}
  body.plazamode .top .utilityrail,body.gamemode .top .utilityrail{position:fixed;top:calc(60px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px));z-index:2601;display:flex;flex-direction:column;gap:7px;pointer-events:auto}
  body.plazamode .top .utilityrail .hudutil,body.gamemode .top .utilityrail .hudutil{width:44px;height:42px;color:#f3e7c8;background:rgba(10,7,4,.62);border:1px solid rgba(255,222,150,.28);box-shadow:0 2px 8px rgba(0,0,0,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .docktools{display:contents}.dockmore{display:none!important}
  /* Phone-first world chrome. The Plaza remains fully capable, but secondary
     utilities wait in the menu, chat history opens when someone writes, and
     the optional joystick no longer blankets the scene on first arrival. */
  @media(max-width:600px),(max-width:1100px) and (orientation:portrait){
    /* On ordinary phone pages the six-item desktop rail was a third unshrinkable
       header cluster and extended 12px beyond the viewport. Its secondary
       actions already live in the touch menu; keep Play as one honest target. */
    body:not(.plazamode):not(.gamemode) header.top{gap:6px}
    body:not(.plazamode):not(.gamemode) header.top .utilityrail{flex:0 0 auto}
    body:not(.plazamode):not(.gamemode) header.top .utilityrail .hudutil:not(#playchip){display:none}
    body:not(.plazamode):not(.gamemode) header.top .utilityrail #playchip{width:44px;min-width:44px;height:44px;padding:0;font-size:0}
    body:not(.plazamode):not(.gamemode) header.top .utilityrail #playchip::before{content:'🎮';font-size:18px}
    body.plazamode .top{padding:calc(6px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) 6px calc(8px + env(safe-area-inset-left,0px))}
    body.plazamode .top .row{gap:5px}
    body.plazamode #mechip{padding:1px 7px 1px 1px;gap:5px}
    body.plazamode #mechip .avname{max-width:72px;font-size:11px}
    body.plazamode #menubtn{width:42px;height:42px;padding:0}
    body.plazamode .top .utilityrail{top:56px;right:8px;gap:0}
    body.plazamode .top .utilityrail #laborchip{display:none}
    body.plazamode .top .row .hudutil{width:42px;height:42px}
    .agonstrip{left:8px;transform:none;top:58px;max-width:calc(100vw - 78px);font-size:12px;padding:6px 11px}
    .top .utilityrail #agonchip{display:none}
    body.plazamode .top .utilityrail #playchip{width:54px;height:46px;padding:3px 5px;border-radius:16px;font-size:11px;line-height:1.05;white-space:normal}
    body.plazamode #shepherds{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
    body.plazamode .character-cta-anchor{bottom:calc(100% + 9px);max-width:min(292px,calc(100vw - 20px))}
    body.plazamode .character-cta{min-height:44px;padding:8px 22px!important;font-size:14px!important}
    body.plazamode .worldjoy{left:8px;bottom:64px;width:66px;height:66px;border-width:1px;opacity:.82}
    body.plazamode .worldjoythumb{width:30px;height:30px;border-width:1px}
    body.plazamode .plazadock{left:0;right:0;bottom:0;width:auto;padding:5px 8px max(7px,env(safe-area-inset-bottom));gap:3px;border:0;border-radius:0;background:linear-gradient(rgba(6,4,2,0),rgba(6,4,2,.9) 44%);box-shadow:none}
    body.plazamode .plazadockhead,body.plazamode .plazadock .plazalog{display:none}
    body.plazamode .plazadock.chatopen .plazadockhead{display:flex}
    body.plazamode .plazadock.chatopen .plazalog{display:flex;max-height:68px}
    body.plazamode .plazadockrow{gap:5px;position:relative}
    body.plazamode .plazadockrow input{height:42px;padding:7px 10px;font-size:16px}
    body.plazamode .plazadockrow>.btn{width:42px;height:42px;min-width:42px;padding:0}
    body.plazamode .plazadockrow>.btn:first-of-type{font-size:0}
    body.plazamode .plazadockrow>.btn:first-of-type::after{content:'➤';font-size:18px}
    body.plazamode .docktools{display:none;position:absolute;right:0;bottom:49px;z-index:4;align-items:center;gap:5px;padding:7px;border:1px solid rgba(232,193,90,.45);border-radius:13px;background:rgba(19,13,7,.96);box-shadow:0 8px 24px rgba(0,0,0,.55)}
    body.plazamode .plazadock.toolsopen .docktools{display:flex}
    body.plazamode .dockmore{display:inline-block!important;font-size:20px}
    body.plazamode .pname{max-width:70px;font-size:9.5px}
    body.plazamode .pportal .plabel,body.plazamode .pstall .plabel{font-size:10px;max-width:88px;overflow:hidden;text-overflow:ellipsis;margin-left:auto;margin-right:auto}
  }
  @media(max-width:600px){.plaza .pfig>svg,.roomscene .pfig>svg{width:68px}.plaza .pfig>svg.avensemble-ready,.roomscene .pfig>svg.avensemble-ready{width:76px}}
  /* ARENA_SLICE_END 12-fullscreen-plaza-auction */
  /* ARENA_SLICE_START 13-gamemode-deep-play -- spliced from arena-css/13-gamemode-deep-play.css; edit that file, not this region */
  .cgcard.hollow{background:transparent;border:2px dashed rgba(226,180,90,.4);box-shadow:none}
  /* gamemode: a contest owns the WHOLE viewport. The header melts into floating
     chips over the game (Club Penguin style), the back link becomes a pill, the
     title and how-to hide behind a ? — and nothing around the play is ever dead
     black, it is the same warm dusk as the world. */
  body.gamemode{background:linear-gradient(180deg,#221809,#0d0a05) fixed}
  body.gamemode .wrap{max-width:none;padding:0}
  body.gamemode .sitefoot{display:none}
  body.gamemode .top{position:fixed;top:0;left:0;right:0;z-index:2600;margin:0;padding:calc(8px + env(safe-area-inset-top,0px)) calc(10px + env(safe-area-inset-right,0px)) 8px calc(10px + env(safe-area-inset-left,0px));border-bottom:0;background:transparent;justify-content:flex-end;pointer-events:none}
  body.gamemode .top .brand{display:none}
  body.gamemode .top .row{pointer-events:auto;gap:8px}
  body.gamemode .top .row .chip,body.gamemode .top .row #menubtn,body.gamemode .top .row .btn{background:rgba(10,7,4,.62);border:1px solid rgba(255,222,150,.28);box-shadow:0 2px 8px rgba(0,0,0,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  body.gamemode #view{padding:46px 8px 8px}
  body.gamemode #view>h2{display:none}
  body.gamemode #view>a{position:fixed;top:calc(9px + env(safe-area-inset-top,0px));left:calc(10px + env(safe-area-inset-left,0px));z-index:2600;background:rgba(10,7,4,.62);border:1px solid rgba(255,222,150,.28);border-radius:999px;padding:7px 13px;font-size:13px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:0 2px 8px rgba(0,0,0,.55)}
  /* The gamemode header is TWO independently fixed clusters that cannot see each
     other: the back pill and ? are anchored left, the chip row is anchored right.
     On a phone they met in the middle, and the identity chip covered the whole ?
     button plus the tail of the back label. Nothing here can be solved by the
     flex row alone, so the phone reclaims the pixels worth least mid-game: your
     own name (still in the chip tooltip and at /arena/me) and the world map
     (still in the menu). A long back label truncates rather than pushing right. */
  @media(max-width:560px){
    body.gamemode #view>a{max-width:44vw;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    body.gamemode .gmhelp{width:44px;height:44px}
    body.gamemode .top .row .avname{display:none}
    body.gamemode .top .row #mapchip{display:none}
  }
  /* A rotated phone is wide but only ~390px tall, so width queries miss it.
     The global identity/menu/utility chrome otherwise sits above the game's own
     Back, Help, HUD, and controls. Every contest already owns Back and Help, so
     the play surface gets the short edge back while the contest is open. */
  @media(pointer:coarse) and (orientation:landscape) and (max-height:520px){
    body.gamemode .top{display:none!important}
    body.gamemode #view>a{max-width:42vw;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    body.gamemode .gmhelp{width:44px;height:44px}
  }
  /* Below this the two clusters still met on the longest back labels. A
     truncated destination is a fair trade for a reachable help button. */
  @media(max-width:340px){ body.gamemode #view>a{max-width:30vw} }
  body.gamemode #view>div.muted{display:none}
  body.gamemode #view>div.muted.gmopen{display:block;position:fixed;top:56px;left:10px;right:10px;z-index:2599;background:rgba(14,10,5,.94);border:1px solid rgba(226,180,90,.45);border-radius:12px;padding:12px 14px;max-width:560px;margin:0 auto;box-shadow:0 18px 44px rgba(0,0,0,.6)}
  body.deepmode{overflow:hidden}
  body.deepmode .top .utilityrail,body.deepmode .top #mapchip{display:none!important}
  @media(max-width:700px){
    .deephudchips{top:7px!important;left:8px!important;right:68px;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden!important;scrollbar-width:none;padding-bottom:3px;pointer-events:auto!important}
    .deephudchips::-webkit-scrollbar,.deephudactions::-webkit-scrollbar,.deephotbar::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
    .deephudchips>span{flex:0 0 auto;padding:4px 8px!important;font-size:11.5px!important}
    .deephudactions{top:69px!important;left:6px!important;right:68px!important;max-width:none!important;display:flex!important;justify-content:flex-start!important;flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden!important;padding-bottom:4px}
    .deephudactions .btn{flex:0 0 auto;padding:7px 10px;min-height:36px;font-size:13px}
    .deephotbar{left:6px!important;right:6px!important;bottom:64px!important;transform:none!important;max-width:none!important;justify-content:center}
    .deepsay{left:68px!important;right:68px!important;bottom:max(8px,env(safe-area-inset-bottom,0px))!important;justify-content:stretch}
    .deepsay input{width:auto!important;min-width:0;flex:1 1 auto}
  }
  .deepplay{position:relative;overflow:hidden;overscroll-behavior:none;border:1px solid rgba(205,166,91,.42);border-radius:15px;background:radial-gradient(110% 65% at 50% 0,rgba(111,80,55,.42),transparent 55%),linear-gradient(#1b1715,#07090c);box-shadow:inset 0 0 0 1px rgba(255,225,164,.08),inset 0 0 80px rgba(0,0,0,.46),0 16px 42px rgba(0,0,0,.5)}
  .deepplay::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 55px rgba(0,0,0,.38),inset 0 -90px 100px rgba(0,0,0,.26);background:linear-gradient(90deg,rgba(16,9,5,.16),transparent 9%,transparent 91%,rgba(16,9,5,.16))}
  .deepplay canvas{display:block;filter:saturate(1.12) contrast(1.05)}
  .deepplay,.deepplay canvas,.deepplay button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
  .deepplay input{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
  .deephudchips,.deephudactions,.deephotbar{overflow-y:hidden!important;overscroll-behavior:contain;scrollbar-width:none}
  /* A scrollable row with no sign that it scrolls is a row with hidden
     controls. On a 390x844 phone .deephudactions is a 240px window onto 741px
     of content: six of its eight buttons live outside it, reachable by a swipe
     nothing announces. The fade is a MASK, so it changes no layout and no hit
     testing, and it is driven by data-more (set in deep-client.js) rather than
     a plain class so that fading the left edge of a row already at its start
     cannot claim there is something behind you. */
  .deephudchips[data-more="right"],.deephudactions[data-more="right"],.deepactionbar[data-more="right"]{-webkit-mask-image:linear-gradient(90deg,#000 78%,transparent);mask-image:linear-gradient(90deg,#000 78%,transparent)}
  .deephudchips[data-more="left"],.deephudactions[data-more="left"],.deepactionbar[data-more="left"]{-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%);mask-image:linear-gradient(90deg,transparent,#000 22%)}
  .deephudchips[data-more="both"],.deephudactions[data-more="both"],.deepactionbar[data-more="both"]{-webkit-mask-image:linear-gradient(90deg,transparent,#000 18% 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18% 82%,transparent)}
  /* A chevron was tried here first and could not work: a ::after on the row is
     INSIDE the mask, so the fade that advertises the overflow erases the arrow
     advertising it. The second affordance is therefore a one-time peek, driven
     from deep-client.js -- the row scrolls itself a little way out and back on
     the first paint that overflows, which demonstrates the gesture instead of
     hinting at it. It is smooth-scrolled, so prefers-reduced-motion is honoured
     by the browser without a rule here. */
  .deephudchips{filter:drop-shadow(0 5px 10px rgba(0,0,0,.5))}
  .deepchip{position:relative;display:inline-flex;align-items:center;min-height:30px;padding:5px 12px!important;border:1px solid rgba(197,157,87,.72)!important;border-radius:9px!important;background:linear-gradient(180deg,rgba(59,52,43,.96),rgba(22,20,18,.94))!important;color:#f6e8c7!important;font:800 12px/1 system-ui,sans-serif!important;text-shadow:0 1px 2px #000;box-shadow:inset 0 1px rgba(255,235,188,.16),inset 0 -2px rgba(0,0,0,.38),0 3px 8px rgba(0,0,0,.32)}
  .deepchip[hidden]{display:none!important}
  .deepchip::before{content:"";position:absolute;left:4px;top:4px;width:3px;height:3px;border-radius:50%;background:#d4aa56;box-shadow:0 18px #6e5733}
  .deepchip-depth{border-color:rgba(119,168,190,.68)!important}.deepchip-wings{border-color:rgba(194,181,220,.7)!important}
  .deepchip-rail{border-color:rgba(222,151,70,.82)!important;background:linear-gradient(180deg,rgba(88,53,29,.97),rgba(29,23,20,.96))!important;color:#ffe0a0!important;box-shadow:inset 0 1px rgba(255,238,198,.16),inset 0 -2px rgba(0,0,0,.38),0 0 14px rgba(226,129,47,.22)!important}
  .deepchip-biome{--deep-biome-color:#c9a969;border-color:var(--deep-biome-color)!important;color:#fff1d0!important;box-shadow:inset 0 1px rgba(255,255,255,.13),inset 0 -2px rgba(0,0,0,.38),0 0 14px color-mix(in srgb,var(--deep-biome-color) 19%,transparent)!important;letter-spacing:.035em}
  .deepchip-objective{--deep-descent-level:0%;overflow:hidden;border-color:rgba(208,105,70,.78)!important;background:linear-gradient(90deg,rgba(133,42,35,.72) 0 var(--deep-descent-level),rgba(31,24,22,.95) var(--deep-descent-level))!important;color:#ffe0bd!important;letter-spacing:.035em}
  .deepchip-level{--deep-level-progress:0%;min-width:184px;overflow:hidden;isolation:isolate;border-color:rgba(171,120,229,.82)!important;background:linear-gradient(180deg,rgba(46,31,66,.96),rgba(22,17,31,.96))!important;padding:0!important}
  .deeplevelfill{position:absolute;z-index:0;inset:0 auto 0 0;width:var(--deep-level-progress);background:linear-gradient(90deg,rgba(105,48,168,.82),rgba(182,92,235,.68));box-shadow:0 0 16px rgba(185,101,255,.42);transition:width .35s ease}
  .deeplevelcopy{position:relative;z-index:1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 11px 6px 13px}.deeplevelcopy b{color:#fff0c8;font:900 12px/1 system-ui,sans-serif}.deeplevelcopy span{color:#ead5ff;font:800 10px/1 system-ui,sans-serif;white-space:nowrap}
  .deepchip-hunt{border-color:rgba(109,216,170,.72)!important;background:linear-gradient(180deg,rgba(24,79,61,.96),rgba(13,31,27,.96))!important;color:#cffff0!important;letter-spacing:.025em}
  .deepstratumreveal{--deep-stratum-color:#d6b675;position:absolute;z-index:7;left:50%;top:112px;width:min(390px,calc(100% - 28px));padding:10px 22px 11px;border:1px solid color-mix(in srgb,var(--deep-stratum-color) 70%,transparent);border-radius:7px;background:linear-gradient(90deg,transparent,rgba(8,10,15,.9) 14%,rgba(8,10,15,.93) 86%,transparent);box-shadow:0 12px 34px rgba(0,0,0,.56),inset 0 1px rgba(255,255,255,.08);color:#f8edda;text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,-9px);text-shadow:0 2px 6px #000}
  .deepstratumreveal::before,.deepstratumreveal::after{content:"";position:absolute;top:50%;width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--deep-stratum-color))}.deepstratumreveal::before{left:7px}.deepstratumreveal::after{right:7px;transform:scaleX(-1)}
  .deepstratumreveal small,.deepstratumreveal strong,.deepstratumreveal span{display:block}.deepstratumreveal small{color:var(--deep-stratum-color);font:900 8px/1 system-ui,sans-serif;letter-spacing:.24em}.deepstratumreveal strong{margin:4px 0 2px;color:#fff2d2;font:900 clamp(18px,2.7vw,27px)/1 Georgia,'Times New Roman',serif;letter-spacing:.08em}.deepstratumreveal span{color:#c8c1b6;font:750 10px/1.25 system-ui,sans-serif;letter-spacing:.025em}
  @keyframes deepStratumReveal{0%{opacity:0;transform:translate(-50%,-9px)}13%,73%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,7px)}}
  .deepstratumreveal.show{animation:deepStratumReveal 4.2s ease both}
  .deepvitals{position:absolute;left:10px;right:10px;bottom:10px;z-index:6;display:flex;justify-content:space-between;gap:7px;pointer-events:none;filter:drop-shadow(0 7px 11px rgba(0,0,0,.62))}
  .deepvitalcluster{display:flex;align-items:flex-end;gap:7px;pointer-events:none;flex:1 1 0;min-width:max-content}
  .deepvitals>.deepvitalcluster:first-child{justify-content:flex-start}
  .deepvitals>.deepvitalcluster:last-child{justify-content:flex-end}
  .deepstaminabar{pointer-events:auto;position:relative;flex:0 0 218px;height:30px;margin-right:6px;border:2px solid #9b824c;border-radius:15px;background:#0c0a08;box-shadow:inset 0 0 0 2px #2a2018,inset 0 2px 6px rgba(0,0,0,.85),0 0 0 1px rgba(240,202,117,.3),0 4px 9px rgba(0,0,0,.5);overflow:hidden}
  .deepstaminatrack{position:absolute;inset:0;border-radius:13px;overflow:hidden}
  .deepstaminafill{position:absolute;inset:2px auto 2px 2px;width:100%;border-radius:11px;background:linear-gradient(180deg,#e7c268 0%,#d9a441 45%,#b3812f 100%);box-shadow:inset 0 1px rgba(255,240,190,.55),inset 0 -2px 4px rgba(90,55,10,.55);transition:width .25s ease}
  .deepstaminalabel{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;pointer-events:none}
  .deepstaminalabel strong{color:#fdf3d0;font:800 11px/1 Georgia,serif;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 1px 2px rgba(20,10,0,.9),0 0 4px rgba(20,10,0,.6)}
  .deepstaminatank{font-size:14px;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.85))}
  .deepstaminabar.drowsy .deepstaminafill{background:linear-gradient(90deg,#d98a3a,#d9a441)}
  .deepstaminabar.critical .deepstaminafill{background:linear-gradient(90deg,#e25c54,#d9822f);animation:deepstaminalow 1.1s ease-in-out infinite}
  @keyframes deepstaminalow{0%,100%{opacity:1}50%{opacity:.55}}
  @media(prefers-reduced-motion:reduce){.deepstaminabar.critical .deepstaminafill{animation:none}}
  .deepstaminatext{color:#fdf3d0;font:800 10px/1 Georgia,serif;letter-spacing:.05em;text-shadow:0 1px 2px rgba(20,10,0,.9)}
  @media(max-width:700px){.deepstaminabar{flex:0 1 150px;min-width:110px;height:26px;border-radius:13px;margin-right:4px}.deepstaminalabel strong{font-size:9px;letter-spacing:.06em}.deepstaminatext{font-size:8px}.deepstaminatank{font-size:11px}}
  .deeporbbtn{pointer-events:auto;position:relative;z-index:1;display:grid;grid-template-rows:1fr auto;place-items:center;width:68px;height:58px;padding:6px 6px 7px;border:2px solid #9b824c;border-radius:12px;background:radial-gradient(130% 140% at 50% 16%,#4c3d27,#181310 68%);color:#efd193;cursor:pointer;box-shadow:inset 0 0 0 3px #2a2018,inset 0 0 14px rgba(0,0,0,.85),0 0 0 1px rgba(240,202,117,.3),0 6px 12px rgba(0,0,0,.55);transition:box-shadow .18s,color .18s,transform .12s}
  .deepvitalcluster .deepvital{z-index:2}
  .deepvitalcluster .deeporbbtn:last-child{margin:0 0 1px -8px;border-top-left-radius:6px;border-bottom-left-radius:6px}
  .deepvitalcluster .deeporbbtn:first-child{margin:0 -8px 1px 0;border-top-right-radius:6px;border-bottom-right-radius:6px}
  .deeporbbtn-disciplines{color:#d9b9ff;border-color:#7f5fa8;background:radial-gradient(130% 140% at 50% 16%,#3b2c50,#151019 68%);box-shadow:inset 0 0 0 3px #241a30,inset 0 0 14px rgba(0,0,0,.85),0 0 0 1px rgba(205,158,255,.3),0 6px 12px rgba(0,0,0,.55)}
  .deeporbbtn:hover{color:#ffe9ad;transform:translateY(-1px);box-shadow:inset 0 0 0 3px #2a2018,inset 0 0 14px rgba(0,0,0,.8),0 0 0 1px rgba(255,224,150,.6),0 0 18px rgba(240,190,90,.4),0 7px 13px rgba(0,0,0,.55)}
  .deeporbbtn-disciplines:hover{color:#ecd9ff;box-shadow:inset 0 0 0 3px #241a30,inset 0 0 14px rgba(0,0,0,.8),0 0 0 1px rgba(220,180,255,.6),0 0 18px rgba(170,120,240,.42),0 7px 13px rgba(0,0,0,.55)}
  .deeporbbtn:active{transform:translateY(1px)}
  .deeporbbtnicon{font-size:23px;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.85))}
  .deeporbbtnlabel{font:800 8px/1 Georgia,serif;letter-spacing:.12em;margin-top:4px;opacity:.95}
  .deeporbpip{position:absolute;top:-5px;right:-5px;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd9a0,#e2543f 65%);border:1px solid #2b0f0a;box-shadow:0 0 9px rgba(236,111,68,.8);display:none}
  .deeporbbtn.haspoints .deeporbpip{display:block;animation:deeporbpippulse 1.6s ease-in-out infinite}
  @keyframes deeporbpippulse{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
  @media(max-width:700px){.deeporbbtn{display:none}}
  @media(prefers-reduced-motion:reduce){.deeporbbtn.haspoints .deeporbpip{animation:none}}
  .boardcard.deepstatsmodal{max-width:660px!important;padding:0!important;overflow:hidden!important;border:3px solid #9b824c!important;border-radius:16px!important;background:radial-gradient(circle at 50% 0,rgba(186,134,58,.16),transparent 42%),linear-gradient(155deg,#332a1e,#12100c 72%)!important;box-shadow:0 24px 80px rgba(0,0,0,.78),inset 0 0 0 2px #2a2018,inset 0 0 0 3px rgba(240,202,117,.22)!important}
  .deepstatsmodal>div:first-child{margin:0!important;padding:13px 16px;background:linear-gradient(180deg,rgba(64,50,30,.98),rgba(24,19,12,.98));border-bottom:2px solid #897448}
  .deepstatsmodal>div:first-child h3{margin:0;color:#f7dfa2;font:800 21px Georgia,serif;letter-spacing:.04em}
  .deepstatsbody{max-height:calc(80vh - 64px);max-height:calc(80dvh - 64px);overflow:auto;scrollbar-width:none;padding:14px 16px}
  .deepstatsbody::-webkit-scrollbar{display:none}
  .deepstatshero{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(214,170,88,.3);border-radius:11px;background:rgba(20,15,9,.55);margin-bottom:10px}
  .deepstatshero strong{display:block;font:800 18px Georgia,serif;color:#f2d894}.deepstatshero span{display:block;color:#bda87c;font-size:11px;margin-top:2px}
  .deepstatspoints{text-align:center;padding:6px 12px;border:1px solid rgba(214,170,88,.35);border-radius:10px;background:rgba(0,0,0,.3)}
  .deepstatspoints b{display:block;font:800 20px Georgia,serif;color:#ffe29b}.deepstatspoints small{font-size:8px;letter-spacing:.12em;color:#b39d72}
  .deepstatsderived{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}
  .deepstatsderived>div{padding:7px 9px;border:1px solid rgba(198,163,96,.24);border-radius:9px;background:rgba(16,12,8,.55)}
  .deepstatsderived strong{display:block;color:#ffe6b0;font:800 15px Georgia,serif}.deepstatsderived span{color:#a4906a;font-size:9px;text-transform:uppercase;letter-spacing:.07em}
  .deepstatsgrid{display:grid;gap:8px}
  .deepvital{--deep-vital-level:100%;position:relative;width:58px;height:58px;display:grid;place-items:center;border:2px solid #9b824c;border-radius:50%;overflow:hidden;background:#110d0b;box-shadow:inset 0 0 0 3px #2a2018,inset 0 0 12px #000,0 0 0 1px rgba(240,202,117,.3);isolation:isolate}
  .deepvital::before{content:"";position:absolute;z-index:3;inset:3px;border:1px solid rgba(255,235,187,.42);border-radius:50%;box-shadow:inset 9px 7px 13px rgba(255,255,255,.12),inset -8px -12px 15px rgba(0,0,0,.45)}
  .deepvital::after{content:"";position:absolute;z-index:4;left:14px;top:8px;width:13px;height:7px;border-radius:50%;background:rgba(255,255,255,.3);transform:rotate(-26deg);filter:blur(.4px)}
  .deepvitalliquid{position:absolute;z-index:1;left:4px;right:4px;bottom:4px;height:var(--deep-vital-level);max-height:calc(100% - 8px);border-radius:0 0 999px 999px;transition:height .28s ease;box-shadow:inset 0 8px 13px rgba(255,255,255,.13),0 -3px 8px currentColor}
  .deepvital-life .deepvitalliquid{color:#dc3e3b;background:radial-gradient(circle at 45% 12%,#ff8b6f,#bc2428 55%,#65131c)}
  .deepvital-energy .deepvitalliquid{color:#4d9cde;background:radial-gradient(circle at 45% 12%,#8de5ff,#247bc0 55%,#173c86)}
  .deepvitalvalue{position:relative;z-index:6;margin-top:-4px;color:#fff5d8;font:900 15px/1 Georgia,'Times New Roman',serif;text-shadow:0 2px 4px #000,0 0 4px #000}
  .deepvitallabel{position:absolute;z-index:6;left:3px;right:3px;bottom:6px;color:#fff0c6;font:900 7.5px/1 system-ui,sans-serif;letter-spacing:.07em;text-align:center;text-shadow:0 1px 3px #000}
  .deephudactions{filter:drop-shadow(0 6px 12px rgba(0,0,0,.46))}
  .deephudactions .btn{min-height:44px;padding:9px 14px;border:1px solid #8d6c31!important;border-radius:10px!important;background:linear-gradient(180deg,#635039,#33291f 58%,#211b17)!important;color:#f8e6b8!important;text-shadow:0 1px 2px #000!important;box-shadow:inset 0 1px rgba(255,229,164,.24),inset 0 -3px rgba(0,0,0,.34),0 3px 0 #16110d,0 6px 12px rgba(0,0,0,.34)!important}
  .deephudactions .btn:hover,.deephudactions .btn:focus-visible{filter:brightness(1.15);border-color:#e2b85c!important;outline:2px solid rgba(244,207,126,.5);outline-offset:2px}
  .deepjournalmodal{max-width:780px!important;background:radial-gradient(circle at 50% 0,rgba(156,111,50,.2),transparent 38%),linear-gradient(145deg,#2a2015,#120e0a 72%)!important;border-color:rgba(226,180,90,.62)!important}
  .deepjournallead{margin:2px 0 14px;color:#d8c8a6;font:13px/1.45 system-ui,sans-serif}
  .deepjournalgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .deepjournalentry{display:grid;grid-template-columns:minmax(150px,.82fr) minmax(0,1.18fr);align-items:center;gap:10px;padding:9px;border:1px solid rgba(206,165,88,.24);border-radius:12px;background:rgba(8,6,4,.32)}
  .deepjournalentry .btn{width:100%;min-height:44px;text-align:left}.deepjournalentry small{color:#bdae91;font:11px/1.35 system-ui,sans-serif}
  @media (min-width:701px) and (max-width:1500px){.deephudchips{right:82px;flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden!important}.deephudactions{top:52px!important;left:12px!important;right:82px!important;max-width:none!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important}.deepstratumreveal{top:108px}}
  .deephotbar{position:absolute!important;left:50%!important;bottom:10px!important;transform:translateX(-50%)!important;display:flex!important;gap:7px!important;z-index:4!important;max-width:calc(100% - 190px)!important;overflow-x:auto!important;padding:9px 11px!important;border:1px solid #786445;border-radius:15px!important;background:linear-gradient(180deg,rgba(69,58,44,.96),rgba(25,22,19,.96))!important;box-shadow:inset 0 1px rgba(255,229,167,.2),inset 0 -4px rgba(0,0,0,.36),0 8px 20px rgba(0,0,0,.54)!important}
  .deephotbar::before,.deephotbar::after{content:"";flex:0 0 7px;width:7px;background:radial-gradient(circle,#c59b4d 0 2px,transparent 2.5px) center/7px 100% no-repeat;opacity:.8}
  .deeptool{position:relative;width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;padding:0;border:1px solid #8a7656;border-radius:11px;background:radial-gradient(circle at 35% 24%,#4f4639,#181715 74%);color:#fff;font-size:23px;cursor:pointer;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 0 2px rgba(0,0,0,.3),inset 0 1px rgba(255,236,191,.17),0 3px 7px rgba(0,0,0,.42);transition:transform .1s,filter .15s,border-color .15s,box-shadow .15s}
  .deeptool:hover,.deeptool:focus-visible{filter:brightness(1.17);border-color:#f0c968;outline:none;box-shadow:inset 0 0 0 2px rgba(0,0,0,.28),0 0 0 2px rgba(239,193,90,.22),0 4px 10px rgba(0,0,0,.46)}
  .deeptool.selected{border-color:#f2ca68;box-shadow:inset 0 0 0 2px rgba(91,54,12,.5),0 0 0 2px rgba(239,193,90,.32),0 0 17px rgba(239,193,90,.32)}
  .deeptool.armed{border-color:#ff8c62;background:radial-gradient(circle at 35% 24%,#914a31,#351814 74%);animation:deepToolArm .85s ease-in-out infinite alternate}
  .deeptool-build{background:radial-gradient(circle at 35% 24%,var(--deep-tool-color,#6f5a43),#181512 74%)}
  .deeptool-tele{border-color:#6286bd;background:radial-gradient(circle at 35% 24%,#465f9c,#161a31 74%)}.deeptool-health{border-color:#a95764;background:radial-gradient(circle at 35% 24%,#763445,#25141a 74%)}.deeptool-energy{border-color:#4b9bbb;background:radial-gradient(circle at 35% 24%,#276c89,#10242c 74%)}
  .deepartbar{position:absolute;z-index:5;right:82px;top:112px;display:flex;flex-direction:column;gap:7px;padding:7px;border:1px solid rgba(173,129,80,.62);border-radius:14px;background:linear-gradient(180deg,rgba(39,29,28,.94),rgba(13,13,17,.92));box-shadow:inset 0 1px rgba(255,223,161,.12),0 9px 24px rgba(0,0,0,.5);pointer-events:auto}
  .deepartbar[hidden],.deepart[hidden]{display:none!important}
  .deepart{--deep-art-color:#e4bd75;position:relative;width:58px;height:52px;display:grid;grid-template-rows:23px 10px;align-content:center;justify-items:center;gap:1px;padding:4px 3px 3px;border:1px solid var(--deep-art-color);border-radius:11px;background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--deep-art-color) 30%,transparent),rgba(21,18,20,.96) 68%);color:#fff1d1;cursor:pointer;box-shadow:inset 0 0 0 2px rgba(0,0,0,.28),0 3px 8px rgba(0,0,0,.46);text-shadow:0 1px 3px #000;transition:transform .12s,filter .15s,box-shadow .15s}
  .deepart:hover,.deepart:focus-visible{filter:brightness(1.18);outline:2px solid color-mix(in srgb,var(--deep-art-color) 58%,transparent);outline-offset:2px;transform:translateY(-1px)}
  .deepart.ready{animation:deepArtReady 1.25s ease-in-out infinite alternate}.deepart[disabled]{cursor:not-allowed;filter:saturate(.25);opacity:.62;animation:none}.deepart.cooldown{filter:saturate(.55);opacity:.82;animation:none}
  .deeparticon{font:900 20px/23px Georgia,serif;color:var(--deep-art-color)}.deepartname{max-width:52px;overflow:hidden;color:#f5e4c0;font:900 7px/10px system-ui,sans-serif;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis}.deepartkey{position:absolute;right:3px;top:3px;min-width:14px;padding:1px 3px;border-radius:5px;background:rgba(0,0,0,.66);color:#ead6ad;font:900 8px/11px system-ui,sans-serif}.deepart.locked .deeparticon{color:#897d70}
  @keyframes deepArtReady{to{box-shadow:inset 0 0 0 2px rgba(0,0,0,.25),0 0 18px color-mix(in srgb,var(--deep-art-color) 46%,transparent)}}
  .deepqty{position:absolute;right:-3px;bottom:-4px;min-width:19px;height:19px;display:grid;place-items:center;padding:0 4px;border:1px solid rgba(247,218,147,.72);border-radius:999px;background:#17120b;color:#fff1c6;font:900 10px/1 system-ui,sans-serif;text-shadow:0 1px 2px #000;box-shadow:0 2px 6px rgba(0,0,0,.55)}
  .deepguide{position:absolute;left:12px;top:108px;bottom:auto;z-index:5;display:flex;align-items:center;gap:8px;width:auto;max-width:min(420px,calc(100% - 96px));padding:7px 9px 7px 11px;border:1px solid rgba(218,175,84,.76);border-radius:999px;background:linear-gradient(135deg,rgba(55,39,31,.96),rgba(15,14,17,.96));box-shadow:inset 0 1px rgba(255,236,191,.12),0 7px 18px rgba(0,0,0,.46);color:#fff0c4;font:11px/1.25 system-ui,sans-serif;pointer-events:auto;transition:opacity .5s ease}
  .deepguide>div{display:flex;align-items:center;gap:7px;min-width:0}.deepguide strong{flex:0 0 auto;font:900 10px/1 system-ui,sans-serif;color:#ffe09a;letter-spacing:.08em}.deepguide button{color:#d7c6a0!important}.deepguidecopy{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deepguidecopy b{color:#ffe09a}.deepguide.shop{border-color:#70d4df;box-shadow:inset 0 1px rgba(255,236,191,.12),0 0 15px rgba(74,203,220,.22),0 7px 18px rgba(0,0,0,.46)}
  @keyframes deepToolArm{to{box-shadow:inset 0 0 0 2px rgba(79,24,15,.5),0 0 0 2px rgba(255,123,83,.28),0 0 20px rgba(255,97,62,.45)}}
  .deepsay{bottom:78px!important}
  @media(max-width:700px){.deephotbar{left:6px!important;right:6px!important;bottom:64px!important;transform:none!important;max-width:none!important;justify-content:center}.deepartbar{top:auto;right:auto;left:50%;bottom:128px;transform:translateX(-50%);flex-direction:row;padding:6px;gap:6px}.deepart{width:54px;height:48px;grid-template-rows:21px 9px}.deeparticon{font-size:18px;line-height:21px}.deepartname{max-width:48px;font-size:6.5px;line-height:9px}.deepplay{border-radius:11px}.deepchip{min-height:28px;padding:4px 10px!important}.deephudactions .btn{min-height:36px;padding:7px 10px}.deepstratumreveal{top:116px;width:calc(100% - 18px);padding:9px 18px 10px}.deepstratumreveal strong{font-size:19px}.deepstratumreveal span{font-size:9px}.deepvitals{left:6px;right:6px;bottom:max(6px,env(safe-area-inset-bottom,0px));gap:5px}.deepvital{width:54px;height:54px}.deepvitalvalue{font-size:14px}.deepvitallabel{font-size:7px;bottom:5px}.deepsay{left:68px!important;right:68px!important;bottom:max(8px,env(safe-area-inset-bottom,0px))!important}}
  @media(prefers-reduced-motion:reduce){.deepstratumreveal.show{animation:none;opacity:1;transform:translate(-50%,0)}}
  .deepsleepveil{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s;background:transparent}
  .deepsleepveil.drowsy,.deepsleepveil.critical{opacity:1;visibility:visible;transition:opacity .35s,visibility 0s}
  .deepsleepwarning{position:absolute;left:50%;top:64px;transform:translateX(-50%);width:min(350px,calc(100% - 160px));padding:8px 12px 10px;border:1px solid #dca64d;border-radius:11px;background:rgba(20,13,12,.9);box-shadow:0 6px 18px rgba(0,0,0,.48);text-align:center;color:#ffe3a4}
  .deepsleepwarning strong{display:block;font:800 15px Georgia,serif}.deepsleepwarning span{display:block;margin:2px 0 6px;font-size:11px;color:#ead8b2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .deepsleepwarning i{display:block;height:4px;border-radius:5px;background:linear-gradient(90deg,#e25c54,#f2bf58);box-shadow:0 0 7px rgba(237,106,72,.42);transition:width .3s}
  .deepsleepveil.critical{box-shadow:inset 0 0 70px rgba(78,10,15,.24);animation:deepDrowse 1.8s ease-in-out infinite}.deepsleepveil.critical .deepsleepwarning{border-color:#f0665b;background:rgba(33,8,12,.94)}
  .deepnewrecord{color:#ffe07a!important;border-color:#efbc4f!important;box-shadow:0 0 0 2px rgba(239,188,79,.2),0 0 16px rgba(239,188,79,.38);animation:deepRecordPop .55s ease-out}
  @keyframes deepRecordPop{0%{transform:scale(.84)}55%{transform:scale(1.12)}100%{transform:scale(1)}}
  @keyframes deepDrowse{0%,100%{opacity:.82}50%{opacity:1}}
  @media(max-width:600px){.deepsleepwarning{top:112px;width:calc(100% - 96px);padding:5px 9px 7px}.deepsleepwarning strong{font-size:12px}.deepsleepwarning span{display:none}.deepguide{top:112px;left:8px;max-width:calc(100% - 84px);padding:6px 8px 6px 10px;font-size:10px}.deeptool{width:44px;height:44px;flex-basis:44px;font-size:21px}.deephotbar{padding:7px 8px!important;gap:6px!important}.deepjournalgrid{grid-template-columns:1fr}.deepjournalentry{grid-template-columns:minmax(142px,.84fr) minmax(0,1.16fr)}}
  @media(prefers-reduced-motion:reduce){.deepart.ready{animation:none}.deepart{transition:none}}
  .boardcard.deepsurveymodal{width:min(980px,calc(100vw - 24px))!important;max-width:980px!important;height:min(660px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)!important;display:flex;flex-direction:column;padding:0!important;overflow:hidden!important;border:2px solid #617d81!important;border-radius:18px!important;background:linear-gradient(145deg,#172429,#090d12 72%)!important;box-shadow:0 28px 90px rgba(0,0,0,.76),inset 0 0 0 1px rgba(154,225,219,.16)!important}
  .deepsurveymodal>div:first-child{margin:0!important;padding:12px 16px;border-bottom:1px solid rgba(122,202,196,.28);background:linear-gradient(180deg,#22363a,#111b20)}.deepsurveymodal>div:first-child h3{margin:0;color:#d9fff1;font:800 22px Georgia,serif;letter-spacing:.035em;text-shadow:0 2px 4px #000}
  .deepsurveybody{flex:1;min-height:0;max-height:none;overflow:hidden;padding:14px;background:radial-gradient(90% 80% at 35% 0,rgba(80,151,151,.14),transparent 60%)}
  .deepsurveytop{display:grid;grid-template-columns:minmax(0,1fr) 188px;height:370px;gap:12px;align-items:stretch}.deepsurveypanel{box-sizing:border-box;height:auto;min-width:0;display:flex;flex-direction:column;padding:10px;border:1px solid rgba(111,183,180,.28);border-radius:13px;background:rgba(4,10,14,.78);box-shadow:inset 0 0 26px rgba(0,0,0,.4)}
  .deepsurveyheading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.deepsurveyheading strong{display:block;color:#ecffe8;font:800 16px Georgia,serif}.deepsurveyheading span{display:block;margin-top:2px;color:#8fb9b4;font:750 9px/1.3 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}.deepsurveyzoom{display:flex;gap:4px}.deepsurveyzoom button{min-height:28px;padding:4px 8px!important;font-size:9px!important}.deepsurveyzoom button.on{border-color:#8fe0d5!important;color:#e9fff8!important;background:#24484a!important}
  .deepsurveycanvas{display:block;width:100%;height:auto;aspect-ratio:16/9;border:1px solid rgba(155,220,211,.28);border-radius:9px;background:#03070a;image-rendering:pixelated}.deepsurveytop .deepsurveycanvas{flex:1 1 auto;height:0;min-height:0;aspect-ratio:auto}.deepsurveyroute{height:auto}
  .deepsurveyfacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}.deepsurveyfact{min-width:0;padding:8px;border:1px solid rgba(116,175,172,.2);border-radius:9px;background:rgba(18,34,38,.76)}.deepsurveyfact strong,.deepsurveyfact span{display:block}.deepsurveyfact strong{overflow:hidden;color:#f3e6bc;font:850 14px/1.05 Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.deepsurveyfact span{margin-top:3px;color:#89aaa8;font:800 8px/1.2 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
  .deepsurveyobjective{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;padding:10px 12px;border:1px solid rgba(220,166,79,.36);border-radius:11px;background:linear-gradient(90deg,rgba(92,53,29,.55),rgba(19,25,28,.86))}.deepsurveyobjective b{color:#ffd88b;font-size:19px}.deepsurveyobjective strong,.deepsurveyobjective span{display:block}.deepsurveyobjective strong{color:#ffe6ad;font:800 14px Georgia,serif}.deepsurveyobjective span{margin-top:2px;color:#c7bfa8;font-size:10px;line-height:1.35}.deepsurveyobjective em{color:#f1ca76;font:900 12px system-ui,sans-serif;white-space:nowrap}
.deepsurveylegend{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:10px;color:#a9c1bd;font:750 9px system-ui,sans-serif}.deepsurveylegend span{display:inline-flex;align-items:center;gap:5px}.deepsurveylegend i{width:9px;height:9px;border-radius:2px;background:#263d43;box-shadow:0 0 0 1px rgba(255,255,255,.18)}.deepsurveylegend .open{background:#76c9c0}.deepsurveylegend .rock{background:#4d5b61}.deepsurveylegend .you{border-radius:50%;background:#fff0a8;box-shadow:0 0 7px #fff0a8}.deepsurveylegend .party{border-radius:50%;background:#79e6f2;box-shadow:0 0 7px #79e6f2}.deepsurveylegend .gate{background:#67eff1}.deepsurveylegend .lift{background:#e9cd72}.deepsurveylegend .guardian{background:#e07b55}.deepsurveylegend .motherlode{transform:rotate(45deg);background:#c495ff;box-shadow:0 0 7px #c495ff}.deepsurveytruth{margin-top:9px;color:#789692;font:9px/1.45 system-ui,sans-serif}
  @media(max-width:700px){.boardcard.deepsurveymodal{max-height:88vh!important;max-height:88dvh!important}.deepsurveybody{max-height:calc(88vh - 58px);max-height:calc(88dvh - 58px);overflow:auto;padding:9px}.deepsurveytop{grid-template-columns:1fr}.deepsurveytop{height:auto}.deepsurveypanel{height:auto}.deepsurveytop .deepsurveycanvas{flex:none;height:auto;aspect-ratio:16/9}.deepsurveyroute .deepsurveycanvas{height:170px;min-height:170px;aspect-ratio:auto}.deepsurveyfacts{grid-template-columns:repeat(2,minmax(0,1fr))}.deepsurveyobjective{grid-template-columns:auto minmax(0,1fr)}.deepsurveyobjective em{grid-column:2}.deepsurveyheading strong{font-size:14px}}
  @media(prefers-reduced-motion:reduce){.deepsurveycanvas{scroll-behavior:auto}}
  .boardcard.deepoathmodal{max-width:1060px!important;padding:0!important;overflow:hidden!important;border:2px solid #9a723a!important;border-radius:18px!important;background:radial-gradient(circle at 50% -15%,rgba(218,151,62,.2),transparent 40%),linear-gradient(155deg,#2e241a,#0c0b0c 72%)!important;box-shadow:0 30px 96px rgba(0,0,0,.82),inset 0 0 0 1px rgba(255,216,131,.18)!important}
  .deepoathmodal>div:first-child{margin:0!important;padding:13px 17px;border-bottom:1px solid rgba(236,190,100,.3);background:linear-gradient(180deg,#4b3824,#211a14)}.deepoathmodal>div:first-child h3{margin:0;color:#ffe09b;font:900 23px Georgia,serif;letter-spacing:.035em;text-shadow:0 2px 5px #000}
  .deepoathbody{max-height:calc(86vh - 61px);max-height:calc(86dvh - 61px);overflow:auto;padding:15px;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px);background-size:28px 28px}
  .deepoathhero{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;padding:13px 15px;border:1px solid rgba(227,180,91,.33);border-radius:14px;background:radial-gradient(circle at 8% 20%,rgba(237,181,77,.2),transparent 27%),linear-gradient(135deg,rgba(72,50,27,.9),rgba(21,18,17,.94))}.deepoathportrait{width:68px;height:68px;display:grid;place-items:center;border:2px solid #d6a94d;border-radius:50%;background:radial-gradient(circle at 38% 30%,#7d5c2d,#241a12 67%);box-shadow:inset 0 0 0 5px rgba(255,225,143,.05),0 8px 24px rgba(0,0,0,.42);color:#ffe29a;font:900 34px Georgia,serif}.deepoathhero small,.deepoathhero strong,.deepoathhero span,.deepoathhero b{display:block}.deepoathhero small{color:#d2ad68;font:900 9px system-ui,sans-serif;letter-spacing:.16em}.deepoathhero strong{margin-top:3px;color:#fff0bd;font:900 21px Georgia,serif}.deepoathhero span{margin-top:3px;color:#cbbda7;font-size:11.5px;line-height:1.4}.deepoathhero b{margin-top:5px;color:#edc66f;font-size:9px;letter-spacing:.12em}.deepoathprogress{height:7px;margin-top:9px;border:1px solid rgba(236,196,111,.36);border-radius:999px;background:#16120e;overflow:hidden}.deepoathprogress i{display:block;height:100%;background:linear-gradient(90deg,#936122,#f1c35e,#fff0a1);box-shadow:0 0 12px rgba(245,195,89,.42);transition:width .25s}
  .deepoathacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px}.deepoathact{min-width:0;padding:105px 11px 11px;border:1px solid color-mix(in srgb,var(--deep-oath-color) 50%,#473a30);border-radius:14px;background-position:center top;background-size:100% 145px;background-repeat:no-repeat;background-color:#131115;box-shadow:inset 0 0 28px rgba(0,0,0,.36),0 7px 18px rgba(0,0,0,.25);overflow:hidden}.deepoathact header{min-height:53px;padding:7px 4px 8px;border-bottom:1px solid color-mix(in srgb,var(--deep-oath-color) 26%,transparent)}.deepoathact header strong,.deepoathact header span{display:block}.deepoathact header strong{color:var(--deep-oath-color);font:900 15px Georgia,serif;letter-spacing:.055em}.deepoathact header span{margin-top:3px;color:#bfb1a2;font-size:10px;line-height:1.35}
  .deepoathrow{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:94px;margin-top:7px;padding:9px;border:1px solid #574b43;border-radius:11px;background:linear-gradient(145deg,rgba(59,50,46,.93),rgba(24,21,22,.96))}.deepoathrow.current{border-color:var(--deep-oath-color);box-shadow:inset 0 0 18px color-mix(in srgb,var(--deep-oath-color) 10%,transparent),0 0 13px color-mix(in srgb,var(--deep-oath-color) 12%,transparent)}.deepoathrow.done{border-color:#7b864c;background:linear-gradient(145deg,rgba(55,65,38,.9),rgba(22,25,20,.96))}.deepoathrow.locked{filter:saturate(.42);opacity:.68}.deepoathicon{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--deep-oath-color);border-radius:50%;background:rgba(13,12,13,.7);color:var(--deep-oath-color);font:900 20px Georgia,serif}.deepoathrow.done .deepoathicon{border-color:#bbd174;background:#354326;color:#e8f6a6}.deepoathrow strong,.deepoathrow span,.deepoathrow small{display:block}.deepoathrow strong{color:#f4e5c6;font-size:12.5px}.deepoathrow span{margin-top:2px;color:#b8aca0;font-size:10px;line-height:1.35}.deepoathevidence{margin-top:5px!important;color:#e7c676!important;font-weight:850}.deepoathreward{color:#8fa89d!important;font-size:8.5px!important;letter-spacing:.06em}.deepoathstate{max-width:72px;color:#94877b;font-size:7.5px;letter-spacing:.11em;text-align:right}.deepoathrow.current .deepoathstate{color:var(--deep-oath-color)}.deepoathrow.done .deepoathstate{color:#cde083}
  .deepoathtruth{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:12px;padding:10px 12px;border:1px solid rgba(216,176,96,.2);border-radius:11px;background:rgba(15,13,13,.72);color:#8f857a;font-size:9.5px;line-height:1.45}.deepoathtruth .btn{white-space:nowrap}
  .deepoathreveal{position:absolute;z-index:7;top:116px;left:50%;display:grid;grid-template-columns:64px minmax(0,1fr);gap:11px;align-items:center;width:min(410px,calc(100% - 190px));min-height:82px;padding:10px 14px;border:1px solid #e1b758;border-radius:14px;background:radial-gradient(circle at 12% 25%,rgba(255,209,99,.25),transparent 40%),linear-gradient(145deg,rgba(71,49,25,.98),rgba(18,14,13,.98));box-shadow:0 20px 55px rgba(0,0,0,.76),inset 0 0 0 1px rgba(255,238,177,.08);opacity:0;pointer-events:none;transform:translate(-50%,-18px) scale(.96);transition:opacity .2s,transform .34s cubic-bezier(.2,.84,.28,1.2)}.deepoathreveal.show{opacity:1;transform:translate(-50%,0) scale(1)}.deepoathrevealsigil{width:58px;height:58px;display:grid;place-items:center;border:2px solid #e5bb5b;border-radius:50%;background:radial-gradient(circle,#79572a,#24180e 70%);color:#ffe49b;font:900 27px Georgia,serif;box-shadow:0 0 20px rgba(228,181,79,.25)}.deepoathreveal small,.deepoathreveal strong,.deepoathreveal div>span{display:block}.deepoathreveal small{color:#d4ae64;font-size:8px;font-weight:950;letter-spacing:.12em}.deepoathreveal strong{margin-top:2px;color:#fff0bd;font:900 19px Georgia,serif}.deepoathreveal div>span{margin-top:3px;color:#cbbca2;font-size:10px}
  @media(max-width:700px){.boardcard.deepoathmodal{max-height:90vh!important;max-height:90dvh!important}.deepoathbody{max-height:calc(90vh - 58px);max-height:calc(90dvh - 58px);padding:9px}.deepoathacts{grid-template-columns:1fr}.deepoathhero{grid-template-columns:54px 1fr;padding:10px}.deepoathportrait{width:50px;height:50px;font-size:25px}.deepoathhero strong{font-size:17px}.deepoathact{padding-top:86px;background-size:100% 122px}.deepoathrow{grid-template-columns:35px minmax(0,1fr) auto;min-height:87px;padding:8px}.deepoathicon{width:33px;height:33px;font-size:17px}.deepoathtruth{grid-template-columns:1fr}.deepoathreveal{top:150px;grid-template-columns:53px minmax(0,1fr);width:calc(100% - 36px);min-height:72px;padding:8px 10px}.deepoathrevealsigil{width:48px;height:48px;font-size:22px}.deepoathreveal strong{font-size:16px}.deepoathreveal small{font-size:7px}}
  @media(prefers-reduced-motion:reduce){.deepoathprogress i,.deepoathreveal{transition:none}}
  .boardcard.deepshopmodal{max-width:880px!important;padding:0!important;overflow:hidden!important;border:3px solid #81705a!important;border-radius:18px!important;background:linear-gradient(145deg,#39342e,#171613 70%)!important;box-shadow:0 26px 80px rgba(0,0,0,.72),inset 0 0 0 2px #b89a64!important}
  .deepshopmodal>div:first-child{margin:0!important;padding:12px 16px;background:linear-gradient(180deg,#302c27,#1c1a17);border-bottom:2px solid #897448}.deepshopmodal>div:first-child h3{margin:0;color:#f5d680;text-shadow:0 2px 3px #000}
  .deepshopbody{max-height:calc(78vh - 64px);max-height:calc(78dvh - 64px);overflow:auto;overflow-x:hidden;scrollbar-width:none;padding:14px 16px 18px;background:radial-gradient(120% 120% at 50% 0%,rgba(188,132,58,.16),transparent 52%)}
  .deepshopbody::-webkit-scrollbar{display:none}
  .deepshopgrouptitle{margin:13px 0 7px;color:#d8b169;font:800 11px/1 Georgia,serif;letter-spacing:.14em;text-transform:uppercase;opacity:.92}
  .deepshopcounter{display:grid;grid-template-columns:84px minmax(0,1fr) minmax(0,auto);gap:14px;align-items:center;padding:13px 16px;border:1px solid #8f7548;border-radius:13px;background:linear-gradient(135deg,#5a4027,#2c241a);box-shadow:inset 0 0 24px rgba(0,0,0,.4),0 6px 16px rgba(0,0,0,.3);max-width:100%;overflow:hidden}
  .deepshopkeeper{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 38% 30%,rgba(230,194,122,.28),transparent 27%),linear-gradient(145deg,#493c2d,#151719 72%);border:1px solid rgba(222,185,108,.72);color:#f2ddb1;font:700 32px/1 Georgia,'Times New Roman',serif;letter-spacing:.04em;text-shadow:0 2px 7px #000;box-shadow:0 7px 20px rgba(0,0,0,.55),inset 0 0 0 5px rgba(255,239,199,.045)}
  .deepshopgreet strong{display:block;color:#ffe2a0;font:700 21px Georgia,serif}.deepshopgreet span{display:block;color:#d6c5a5;font-size:13px;margin-top:4px}
  .deepshopwallet{text-align:right;color:#f5d36e;font:800 24px Georgia,serif;min-width:0;overflow-wrap:break-word}.deepshopwallet small{display:block;color:#b9aa8e;font:12px system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em}
  .deepshoptabs{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0;padding:5px;border-radius:12px;background:#151412;border:1px solid #66583f;box-shadow:0 5px 14px rgba(0,0,0,.34)}
  .deepshoptab{border:0;border-radius:8px;padding:10px 8px;background:transparent;color:#c8b996;font-weight:800;cursor:pointer}.deepshoptab.on{background:linear-gradient(#d4aa50,#9a6c22);color:#1c1407;box-shadow:inset 0 1px #ffe49a,0 2px 7px #000}
  .deepshopsectiontitle{color:#f0cb70;font:700 18px Georgia,serif;margin:4px 0 9px}.deepshopgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .deepshopitem{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:82px;padding:11px;border:1px solid #6e604a;border-radius:12px;background:linear-gradient(145deg,rgba(79,70,57,.9),rgba(38,35,30,.94));box-shadow:inset 0 0 18px rgba(0,0,0,.25)}
  .deepshopicon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:radial-gradient(circle,#68553c,#28231d);border:1px solid #a1844f;font-size:27px}.deepshopname{color:#f3e5c3;font-weight:800}.deepshopdesc{color:#bdb098;font-size:12px;line-height:1.35;margin-top:3px}.deepshoptier{display:flex;gap:4px;margin-top:7px}.deepshoptier i{width:17px;height:5px;border-radius:3px;background:#24211d;border:1px solid #6f614b}.deepshoptier i.on{background:#e0b64f;border-color:#f4d882;box-shadow:0 0 5px rgba(224,182,79,.5)}
  .deepshopsell{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid #8d774b;border-radius:12px;background:linear-gradient(135deg,#3c3426,#242019)}
  .deepshopsell .btn{font-size:16px;padding:12px 18px}.deepshopbagvalue{font:800 20px Georgia,serif;color:#f1cb69;text-align:right}.deepshopbagvalue small{display:block;font:11px system-ui;color:#ad9f86;text-transform:uppercase}
  .deepfirsthaul{position:relative;overflow:hidden;margin-top:12px;padding:24px 20px 20px;border:1px solid #d5aa55;border-radius:14px;text-align:center;background:radial-gradient(circle at 50% -20%,rgba(255,224,129,.27),transparent 55%),linear-gradient(145deg,#574326,#251e16);box-shadow:inset 0 1px rgba(255,239,190,.24),0 8px 24px rgba(0,0,0,.34)}
  .deepfirsthaul::before,.deepfirsthaul::after{content:"";position:absolute;width:92px;height:92px;border:1px solid rgba(232,193,90,.16);transform:rotate(45deg);top:-60px}.deepfirsthaul::before{left:-35px}.deepfirsthaul::after{right:-35px}
  .deepfirsthaulmark{color:#f1c967;font:800 11px system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}.deepfirsthaul>strong{display:block;margin-top:7px;color:#fff0bd;font:800 28px Georgia,serif;text-shadow:0 2px 4px #000}.deepfirsthaul>span{display:block;max-width:560px;margin:7px auto 0;color:#d8c8a8;font-size:14px;line-height:1.45}.deepfirsthaulactions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:18px}
  /* ARENA_SLICE_END 13-gamemode-deep-play */
  /* ARENA_SLICE_START 14-deep-dock-market -- spliced from arena-css/14-deep-dock-market.css; edit that file, not this region */
  .boardcard.deepchroniclemodal{max-width:760px!important;padding:0!important;overflow:hidden!important;border:2px solid #8f7141!important;background:radial-gradient(circle at 50% 0,rgba(174,83,45,.2),transparent 34%),linear-gradient(155deg,#31271f,#100e0d 72%)!important;box-shadow:0 28px 90px rgba(0,0,0,.78),inset 0 0 0 1px rgba(244,203,116,.25)!important}
  .deepchroniclemodal>div:first-child{margin:0!important;padding:14px 17px;background:linear-gradient(180deg,rgba(67,48,35,.98),rgba(28,23,20,.98));border-bottom:1px solid rgba(229,184,98,.28)}.deepchroniclemodal>div:first-child h3{margin:0;color:#ffe0a0;font:800 22px Georgia,serif;letter-spacing:.035em}
  .deepchroniclebody{max-height:calc(82vh - 62px);max-height:calc(82dvh - 62px);overflow:auto;padding:16px}.deepchroniclelead{color:#d8c7a5;font-size:13px;line-height:1.5;margin-bottom:13px}.deepchroniclelead strong{color:#ffe09a}
  .deepchroniclegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.deepchronicleentry{position:relative;display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;min-height:78px;padding:11px;border:1px solid #615544;border-radius:12px;background:linear-gradient(145deg,rgba(69,60,50,.88),rgba(30,27,24,.94));overflow:hidden}.deepchronicleentry::after{content:"";position:absolute;inset:auto 0 0;height:3px;background:#493f32}.deepchronicleentry.won{border-color:#b48b43;background:linear-gradient(145deg,rgba(96,69,38,.92),rgba(38,29,22,.96))}.deepchronicleentry.won::after{background:linear-gradient(90deg,#c48c32,#ffe091,#c48c32)}.deepchronicleentry.engaged{border-color:#d7684a;box-shadow:inset 0 0 22px rgba(186,55,36,.18)}.deepchronicleentry.engaged::after{background:#df6348}.deepchronicleentry.locked{filter:saturate(.3);opacity:.64}.deepchronicleicon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #806943;border-radius:50%;background:radial-gradient(circle,#5b4834,#1a1715);font-size:23px;filter:saturate(.45)}.deepchronicleentry.won .deepchronicleicon,.deepchronicleentry.engaged .deepchronicleicon{filter:none}.deepchroniclename{color:#f4e4c2;font-weight:850}.deepchronicledesc{color:#bdae92;font-size:11.5px;line-height:1.35;margin-top:3px}.deepchroniclestate{color:#c6b694;font:800 10px system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase;text-align:right}.deepchronicleentry.won .deepchroniclestate{color:#ffe08c}.deepchronicleentry.engaged .deepchroniclestate{color:#ff9476}
  .boardcard.deeprelicmodal{max-width:940px!important;padding:0!important;overflow:hidden!important;border:2px solid #745b91!important;background:radial-gradient(circle at 50% 0,rgba(123,72,174,.22),transparent 36%),linear-gradient(155deg,#2c2533,#100e13 72%)!important;box-shadow:0 28px 90px rgba(0,0,0,.8),inset 0 0 0 1px rgba(206,155,255,.22)!important}.deeprelicmodal>div:first-child{margin:0!important;padding:14px 17px;background:linear-gradient(180deg,rgba(58,42,70,.98),rgba(25,21,29,.98));border-bottom:1px solid rgba(207,163,255,.28)}.deeprelicmodal>div:first-child h3{margin:0;color:#ead1ff;font:800 22px Georgia,serif;letter-spacing:.035em}.deeprelicbody{max-height:calc(84vh - 62px);max-height:calc(84dvh - 62px);overflow:auto;padding:16px}.deepreliclead{padding:11px 13px;border:1px solid rgba(191,145,237,.28);border-radius:11px;background:rgba(14,11,18,.48);color:#cdbfd3;font-size:13px;line-height:1.45}.deepreliclead strong{color:#f0dcff}.deeprelicfacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:11px 0}.deeprelicfacts>div{padding:8px 10px;border:1px solid rgba(202,163,240,.2);border-radius:9px;background:rgba(22,18,27,.7)}.deeprelicfacts strong{display:block;color:#ffe6b2;font:800 18px Georgia,serif}.deeprelicfacts span{display:block;color:#a99eb1;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.deeprelicsection{margin:14px 0 8px;color:#e3c0ff;font:800 17px Georgia,serif}.deeprelicgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.deeprelicgrid.equippedgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.deeprelicitem{--deep-relic-color:#c7bca4;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:88px;padding:10px;border:1px solid var(--deep-relic-color);border-radius:11px;background:linear-gradient(145deg,rgba(61,51,68,.9),rgba(27,24,31,.96));box-shadow:inset 0 0 18px rgba(0,0,0,.28)}.deeprelicitem.equipped{outline:1px solid var(--deep-relic-color);box-shadow:inset 0 0 23px rgba(178,112,225,.13),0 0 14px rgba(117,69,148,.24)}.deeprelicitem.empty{border-style:dashed;opacity:.72}.deeprelicicon{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--deep-relic-color);border-radius:50%;background:radial-gradient(circle,rgba(137,94,163,.38),#17131b 70%);color:var(--deep-relic-color);font:800 23px Georgia,serif}.deeprelicitem strong{display:block}.deeprelicitem span{display:block;color:#c5b7ca;font-size:11.5px;line-height:1.35;margin-top:3px}.deeprelicitem small{display:block;color:#897f8d;font-size:10px;margin-top:4px}.deeprelicactions{display:flex;flex-direction:column;align-items:stretch;gap:5px}.deeprelicactions .btn{min-height:31px;padding:5px 8px;font-size:11px}.deeprelicactions b{color:var(--deep-relic-color);font-size:9px;letter-spacing:.1em}.deeprelicempty{grid-column:1/-1;padding:22px;border:1px dashed #685d70;border-radius:11px;color:#a99eae;text-align:center}.deeprelicvictory{margin-top:13px;padding:10px 12px;border:1px solid rgba(206,154,255,.45);border-radius:9px;background:rgba(82,43,104,.35);color:#efd4ff;font-weight:800}
  .deeprelicart,.deeprelicrevealart{background-image:url('deep-relics-v1.webp');background-repeat:no-repeat;background-size:300% 200%}.deeprelicitem.painted{grid-template-columns:60px minmax(0,1fr) auto}.deeprelicart{width:58px;height:58px;margin-left:-6px;border:1px solid color-mix(in srgb,var(--deep-relic-color) 75%,#18131c);border-radius:13px;background-color:#17131b;filter:drop-shadow(0 4px 5px rgba(0,0,0,.62));box-shadow:inset 0 0 17px rgba(0,0,0,.38),0 0 14px color-mix(in srgb,var(--deep-relic-color) 16%,transparent)}
  .deeprelicart.glyph{background-image:none;display:flex;align-items:center;justify-content:center;font:700 27px/1 Georgia,serif;color:var(--deep-relic-color,#e8d9a8);text-shadow:0 2px 5px rgba(0,0,0,.6)}
  .deeprelicrank{display:flex!important;gap:3px;margin-top:7px}.deeprelicrank i{display:block;width:15px;height:4px;border-radius:3px;background:#211d25;border:1px solid #534a58}.deeprelicrank i.on{border-color:var(--deep-relic-color);background:var(--deep-relic-color);box-shadow:0 0 7px color-mix(in srgb,var(--deep-relic-color) 55%,transparent)}
  .deepreliccompare{display:inline-flex!important;width:max-content;margin-top:7px!important;padding:3px 6px;border:1px solid #645a68;border-radius:999px;background:rgba(9,8,11,.54);font-size:8.5px!important;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.deepreliccompare.upgrade,.deeprelicrevealcompare.upgrade{border-color:#61d796;color:#aaf3c9!important}.deepreliccompare.sidegrade,.deeprelicrevealcompare.sidegrade{border-color:#65a9e8;color:#b9ddff!important}.deepreliccompare.lower,.deeprelicrevealcompare.lower{border-color:#a17466;color:#d7b0a3!important}.deepreliccompare.equal,.deeprelicrevealcompare.equal{border-color:#8a8190;color:#d0c8d5!important}.deepreliccompare.equipped,.deeprelicrevealcompare.equipped{border-color:var(--deep-relic-color);color:var(--deep-relic-color)!important}.deeprelicswap{color:#c9bdcd!important;line-height:1.3}.deeprelicsource{color:#817786!important}
  .deeprelicreveal{--deep-relic-color:#c7bca4;position:absolute;z-index:7;top:116px;left:50%;display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px;width:min(430px,calc(100% - 190px));min-height:92px;padding:9px 13px;border:1px solid var(--deep-relic-color);border-radius:14px;background:radial-gradient(circle at 14% 20%,color-mix(in srgb,var(--deep-relic-color) 18%,transparent),transparent 46%),linear-gradient(145deg,rgba(38,27,44,.97),rgba(11,10,14,.98));box-shadow:0 18px 48px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.05);opacity:0;pointer-events:none;transform:translate(-50%,-18px) scale(.96);transition:opacity .22s,transform .32s cubic-bezier(.2,.84,.28,1.2)}.deeprelicreveal.show{opacity:1;transform:translate(-50%,0) scale(1)}.deeprelicrevealart{width:74px;height:74px;filter:drop-shadow(0 6px 7px rgba(0,0,0,.72))}.deeprelicreveal small{display:block;color:#b7a7bc;font-size:8px;font-weight:950;letter-spacing:.14em}.deeprelicreveal strong{display:block;margin-top:2px;font:900 20px Georgia,serif;text-shadow:0 2px 4px #000}.deeprelicrevealcompare{display:block;margin-top:5px;color:#d5c9d8;font-size:9.5px;line-height:1.35}
  .boardcard.deepwaygatemodal{max-width:780px!important;padding:0!important;overflow:hidden!important;border:2px solid #4c8f98!important;background:radial-gradient(circle at 50% 0,rgba(67,178,191,.2),transparent 38%),linear-gradient(155deg,#1d3337,#0c1115 72%)!important}.deepwaygatemodal>div:first-child{margin:0!important;padding:14px 17px;background:linear-gradient(180deg,rgba(35,70,76,.98),rgba(15,27,31,.98));border-bottom:1px solid rgba(126,229,235,.28)}.deepwaygatemodal>div:first-child h3{margin:0;color:#c9fbff;font:800 22px Georgia,serif}.deepwaygatebody{max-height:calc(84vh - 62px);max-height:calc(84dvh - 62px);overflow:auto;padding:16px}.deepwaygatelead{padding:11px 13px;border:1px solid rgba(126,229,235,.24);border-radius:11px;background:rgba(7,17,20,.5);color:#b8d6d8;font-size:13px;line-height:1.48}.deepwaygatelead strong{color:#d8feff}.deepwaygategrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.deepwaygatecard{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center;min-height:112px;padding:11px;border:1px solid #426c71;border-radius:12px;background:linear-gradient(145deg,rgba(39,67,72,.9),rgba(17,27,31,.97))}.deepwaygatecard.locked{filter:saturate(.3);opacity:.64}.deepwaygateicon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #82e7ee;border-radius:50%;background:radial-gradient(circle,rgba(93,225,235,.32),#0f1c20 68%);color:#d5fdff;font:800 25px Georgia,serif}.deepwaygatecard strong{display:block;color:#e0fdff}.deepwaygatecard span{display:block;margin-top:3px;color:#aec3c5;font-size:11.5px;line-height:1.35}.deepwaygatecard .btn{grid-column:1/-1;min-height:34px}.deepwaygatecard .btn[disabled]{opacity:.55}.deepbosshud{position:absolute;z-index:5;top:58px;left:50%;width:min(520px,calc(100% - 180px));transform:translateX(-50%);display:none;padding:8px 11px;border:1px solid rgba(255,124,81,.7);border-radius:10px;background:linear-gradient(180deg,rgba(61,17,17,.94),rgba(20,7,10,.94));box-shadow:0 9px 28px rgba(0,0,0,.55);pointer-events:none}.deepbosshudhead{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#ffe0b1;font:800 11px system-ui,sans-serif;letter-spacing:.09em}.deepbosshudhead span{color:#ff9b76}.deepbossbar{height:9px;margin-top:6px;border:1px solid rgba(255,204,143,.4);border-radius:99px;background:#170709;overflow:hidden}.deepbossbar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#8f1d25,#f26535,#ffc35d);transition:width .16s linear}.deepbosshud.telegraph{animation:deepBossWarning .58s ease-in-out infinite alternate}
  /* Chthonic Echo Shrines turn reached landmarks into short build-defining pacts. */
  .deepchip-echo{--deep-echo-color:#e6bc72;border-color:var(--deep-echo-color)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--deep-echo-color) 24%,#19131f),rgba(10,9,14,.94))!important;color:#fff0c8!important;box-shadow:0 0 15px color-mix(in srgb,var(--deep-echo-color) 24%,transparent)!important}
  .boardovl.deep-echo-shrine{background:radial-gradient(circle at 50% 44%,rgba(137,96,194,.26),rgba(4,3,8,.88))!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
  .boardcard.deepechomodal{width:min(820px,calc(100vw - 24px))!important;max-width:820px!important;padding:0!important;overflow:hidden!important;border:2px solid rgba(209,168,244,.66)!important;border-radius:22px!important;background:radial-gradient(circle at 50% -8%,rgba(189,120,237,.23),transparent 42%),linear-gradient(150deg,#281d31,#0b0a10 72%)!important;box-shadow:0 34px 110px rgba(0,0,0,.86),inset 0 0 0 1px rgba(244,215,255,.11)!important}
  .deepechomodal>div:first-child{margin:0!important;padding:14px 17px!important;border-bottom:1px solid rgba(218,174,244,.3);background:linear-gradient(180deg,rgba(67,44,78,.98),rgba(24,19,29,.98))}.deepechomodal>div:first-child h3{margin:0!important;color:#f3dcff!important;font:900 23px Georgia,serif!important;letter-spacing:.04em}
  .deepechobody{padding:16px}.deepechohero{display:grid;grid-template-columns:64px minmax(0,1fr);gap:13px;align-items:center;padding:13px 15px;border:1px solid rgba(215,177,240,.3);border-radius:15px;background:linear-gradient(135deg,rgba(83,58,96,.7),rgba(22,18,28,.86))}.deepechohero>span{display:grid;place-items:center;width:60px;height:60px;border:1px solid #e1b4f4;border-radius:50%;background:radial-gradient(circle,rgba(216,153,245,.34),#17111c 68%);color:#f2d6ff;font:900 32px Georgia,serif;box-shadow:0 0 24px rgba(203,137,238,.2)}.deepechohero strong,.deepechohero small{display:block}.deepechohero strong{color:#fff0c8;font:900 20px Georgia,serif}.deepechohero small{margin-top:4px;color:#c6b5ca;font-size:11px;line-height:1.42}
  .deepechogrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px}.deepechochoice{--deep-echo-color:#d8b06a;display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px;min-height:174px;padding:13px;border:1px solid color-mix(in srgb,var(--deep-echo-color) 62%,#493d50);border-radius:16px;background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--deep-echo-color) 13%,transparent),transparent 35%),linear-gradient(145deg,rgba(56,45,62,.94),rgba(19,17,24,.98));box-shadow:inset 0 0 24px rgba(0,0,0,.28)}.deepechosigil{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--deep-echo-color);border-radius:50%;background:#15111b;color:var(--deep-echo-color);font:900 26px Georgia,serif;box-shadow:0 0 17px color-mix(in srgb,var(--deep-echo-color) 20%,transparent)}.deepechocopy strong,.deepechocopy small,.deepechocopy span{display:block}.deepechocopy strong{color:#fff0c8;font:900 17px Georgia,serif}.deepechocopy small{margin-top:2px;color:var(--deep-echo-color);font:900 8px system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}.deepechocopy span{margin-top:7px;color:#d0c4d2;font-size:10.5px;line-height:1.4}.deepechocopy em{display:block;margin-top:5px;color:#e99488;font:normal 9.5px/1.35 system-ui,sans-serif}.deepechochoice .btn{grid-column:1/-1;align-self:end;min-height:38px}.deepechoexhausted{margin-top:12px;padding:16px;border:1px dashed rgba(218,176,239,.35);border-radius:14px;background:rgba(15,12,19,.68);color:#bcaebf;text-align:center;font-size:12px;line-height:1.48}.deepecholaw{margin-top:11px;color:#8f8493;font-size:9.5px;line-height:1.42;text-align:center}
  @media(max-width:620px){.boardovl.deep-echo-shrine{padding:0!important}.boardcard.deepechomodal{width:100vw!important;max-width:100vw!important;max-height:100dvh!important;border:0!important;border-radius:0!important}.deepechobody{padding:10px}.deepechohero{grid-template-columns:48px 1fr;padding:10px}.deepechohero>span{width:45px;height:45px;font-size:24px}.deepechohero strong{font-size:17px}.deepechogrid{grid-template-columns:1fr;gap:8px}.deepechochoice{grid-template-columns:44px minmax(0,1fr);min-height:124px;padding:10px}.deepechosigil{width:42px;height:42px;font-size:21px}.deepechochoice .btn{min-height:35px}.deepechomodal>div:first-child h3{font-size:19px!important}}
  .deeparpgcockpit{position:absolute;z-index:5;right:12px;top:68px;width:258px;display:grid;gap:7px;pointer-events:none;filter:drop-shadow(0 12px 22px rgba(0,0,0,.65))}.deeparpgarea{justify-self:end;padding:5px 9px;border:1px solid rgba(207,168,91,.66);border-radius:6px;background:linear-gradient(180deg,rgba(42,31,23,.94),rgba(8,8,10,.92));color:#f5d996;font:900 9px/1 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 2px #000}.deeparpgmap{width:100%;height:136px;display:block;border:1px solid rgba(210,170,92,.72);border-radius:8px;background:#030608;box-shadow:inset 0 0 0 2px rgba(0,0,0,.48),inset 0 0 24px rgba(0,0,0,.62)}.deeparpgquest{padding:9px 10px;border-left:3px solid var(--deeparpg-quest,#d3a85d);border-radius:4px;background:linear-gradient(90deg,rgba(10,8,8,.94),rgba(10,8,10,.75));color:#d9c9aa;text-shadow:0 1px 2px #000}.deeparpgquest small,.deeparpgquest strong,.deeparpgquest span{display:block}.deeparpgquest small{color:var(--deeparpg-quest,#d3a85d);font:900 8px/1 system-ui,sans-serif;letter-spacing:.16em}.deeparpgquest strong{margin:4px 0 3px;color:#fff0c5;font:900 15px/1.05 Georgia,serif}.deeparpgquest span{font:750 9px/1.35 system-ui,sans-serif}.deepminingmeter{position:absolute;z-index:6;left:50%;bottom:82px;width:min(420px,calc(100% - 210px));display:none;transform:translateX(-50%);padding:8px 10px 9px;border:1px solid rgba(218,178,91,.72);border-radius:7px;background:linear-gradient(180deg,rgba(29,23,20,.96),rgba(7,8,10,.94));box-shadow:0 9px 24px rgba(0,0,0,.62);pointer-events:none}.deepmininghead{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#f5dfb0;font:900 9px/1 system-ui,sans-serif;letter-spacing:.1em}.deepmininghead span{color:#b9aa92;font-size:8px}.deepminingtrack{height:8px;margin-top:6px;overflow:hidden;border:1px solid rgba(246,217,155,.28);border-radius:99px;background:#090706;box-shadow:inset 0 2px 4px #000}.deepminingtrack i{display:block;height:100%;width:0;background:linear-gradient(90deg,#9b5b2d,#e2ad52,#fff0a4);box-shadow:0 0 12px rgba(239,184,78,.48);transition:width .08s linear}.deepminingmeter.hard .deepminingtrack i{background:linear-gradient(90deg,#762f2a,#e05e3f,#ffcf72)}
  @media(min-width:761px){.deepartbar{right:284px}.deephudactions{right:284px!important}.deephudchips{right:284px!important}}
  @media(max-width:760px){.deeparpgcockpit{right:6px;top:112px;width:142px;gap:4px}.deeparpgarea{max-width:142px;overflow:hidden;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.deeparpgmap{height:88px}.deeparpgquest{display:none}.deepminingmeter{bottom:126px;width:calc(100% - 92px);padding:6px 8px}.deepmininghead{font-size:8px}.deepmininghead span{font-size:7px}}@keyframes deepBossWarning{to{border-color:#ffd27a;box-shadow:0 0 24px rgba(255,80,38,.48)}}
  @media(max-width:650px){.boardcard.deepshopmodal,.boardcard.deeprelicmodal,.boardcard.deepwaygatemodal{max-height:88vh!important;max-height:88dvh!important}.deepshopbody,.deeprelicbody,.deepwaygatebody{max-height:calc(88vh - 60px);max-height:calc(88dvh - 60px)}.deepshopcounter{grid-template-columns:58px 1fr}.deepshopkeeper{width:52px;height:52px;font-size:33px}.deepshopwallet{grid-column:1/-1;text-align:left;font-size:19px}.deepwaygategrid,.deepshopgrid,.deeprelicgrid,.deeprelicgrid.equippedgrid{grid-template-columns:1fr}.deepshopitem{grid-template-columns:42px minmax(0,1fr) auto}.deepshopicon{width:40px;height:40px}.deepshoptabs{top:-14px}.deepchroniclegrid{grid-template-columns:1fr}.deepchroniclebody,.deeprelicbody,.deepwaygatebody{padding:11px}.deepchronicleentry{min-height:70px;padding:9px}.deepchroniclemodal>div:first-child h3,.deeprelicmodal>div:first-child h3,.deepwaygatemodal>div:first-child h3{font-size:19px}.deeprelicfacts{grid-template-columns:repeat(2,minmax(0,1fr))}.deeprelicitem{grid-template-columns:40px minmax(0,1fr) auto;padding:9px}.deeprelicicon{width:38px;height:38px;font-size:20px}.deepbosshud{top:96px;width:calc(100% - 94px);padding:7px 9px}.deepbosshudhead{font-size:9px}}
  @media(max-width:650px){.deeprelicitem.painted{grid-template-columns:52px minmax(0,1fr) auto}.deeprelicart{width:50px;height:50px;margin-left:-4px}.deeprelicactions .btn{min-height:29px;padding:4px 6px;font-size:10px}.deeprelicreveal{top:150px;grid-template-columns:62px minmax(0,1fr);width:calc(100% - 36px);min-height:80px;padding:8px 10px}.deeprelicrevealart{width:60px;height:60px}.deeprelicreveal strong{font-size:17px}.deeprelicrevealcompare{font-size:8.5px}}
  @media(prefers-reduced-motion:reduce){.deepbosshud.telegraph{animation:none}.deepbossbar i{transition:none}.deeprelicreveal{transition:none}}
  .deepshopascension{display:inline-flex;width:max-content;margin-top:7px;padding:4px 7px;border:1px solid #d7af51;border-radius:999px;background:linear-gradient(180deg,rgba(104,72,29,.72),rgba(33,24,16,.88));color:#ffe28a;font:900 9px/1 system-ui,sans-serif;letter-spacing:.09em;box-shadow:0 0 12px rgba(218,169,65,.18)}
  @media(min-width:761px){
    .deepplay::before{content:"";position:absolute;z-index:3;left:0;right:0;bottom:0;height:116px;pointer-events:none;border-top:1px solid rgba(188,143,76,.55);background:linear-gradient(180deg,rgba(8,6,7,.18),rgba(7,6,7,.9) 22%,#080708 100%);box-shadow:inset 0 14px 28px rgba(0,0,0,.48),inset 0 1px rgba(255,221,151,.08)}
    .deephudchips{position:absolute!important;inset:0!important;display:block!important;max-width:none!important;overflow:visible!important;pointer-events:none!important;filter:none!important}
    .deepchip-cash{position:absolute;left:14px;top:13px;min-width:112px;justify-content:center}
    .deepchip-wings{position:absolute;left:136px;top:13px}
    .deepchip-level{position:absolute;left:14px;top:50px;width:252px;min-width:252px}
    .deepchip-depth{position:absolute;left:50%;top:13px;min-width:250px;justify-content:center;transform:translateX(-50%)}
    .deepchip-hunt{display:none!important}
    .deepchip-corpse{position:absolute;left:50%;top:51px;transform:translateX(-50%)}
    .deephudactions{position:absolute!important;z-index:7!important;top:auto!important;right:auto!important;bottom:9px!important;left:50%!important;max-width:calc(100% - 230px)!important;display:flex!important;justify-content:center!important;flex-wrap:nowrap!important;transform:translateX(-50%);padding:0 7px!important;border:1px solid rgba(130,99,57,.55);border-radius:4px;background:linear-gradient(180deg,rgba(27,23,22,.98),rgba(8,8,9,.98));box-shadow:inset 0 1px rgba(255,225,159,.08),0 5px 18px rgba(0,0,0,.62)}
    .deephudactions .btn{min-width:76px;min-height:34px;padding:7px 10px;border-width:0 1px!important;border-radius:1px!important;background:linear-gradient(180deg,#3c342d,#171515 72%)!important;box-shadow:inset 0 1px rgba(255,230,177,.14),inset 0 -2px #080707!important;font-size:11px;letter-spacing:.04em}
    .deephotbar{z-index:7!important;bottom:50px!important;padding:7px 10px!important;border-radius:5px!important;background:linear-gradient(180deg,rgba(42,35,30,.98),rgba(12,11,12,.99))!important;box-shadow:inset 0 0 0 2px #171310,inset 0 1px rgba(255,229,164,.18),0 8px 22px rgba(0,0,0,.7)!important}
    .deeptool{border-radius:3px}
    .deepvitals{left:13px;right:13px;bottom:8px;z-index:8}
    .deepvital{width:88px;height:88px;border-width:3px;box-shadow:inset 0 0 0 5px #211a16,inset 0 0 22px #000,0 0 0 2px #3a2b1c,0 0 0 4px rgba(176,130,68,.42)}
    .deepvital::before{inset:5px;border-width:2px}.deepvital::after{left:23px;top:14px;width:18px;height:10px}
    .deepvitalliquid{left:7px;right:7px;bottom:7px;max-height:calc(100% - 14px)}
    .deepvitalvalue{font-size:20px}.deepvitallabel{bottom:10px;font-size:9px;letter-spacing:.12em}
    .deepstaminabar{flex-basis:252px;height:34px;border-radius:17px}.deepstaminatrack{border-radius:15px}.deepstaminafill{border-radius:13px}.deepstaminalabel strong{font-size:12px}
    .deeporbbtn{width:96px;height:76px;padding:8px 8px 9px;border-width:3px;border-radius:14px;box-shadow:inset 0 0 0 5px #211a16,inset 0 0 22px #000,0 0 0 2px #3a2b1c,0 0 0 4px rgba(176,130,68,.42),0 8px 14px rgba(0,0,0,.6)}
    .deeporbbtn-disciplines{box-shadow:inset 0 0 0 5px #1f1729,inset 0 0 22px #000,0 0 0 2px #32254a,0 0 0 4px rgba(160,120,220,.4),0 8px 14px rgba(0,0,0,.6)}
    .deeporbbtn:hover{box-shadow:inset 0 0 0 5px #211a16,inset 0 0 22px #000,0 0 0 2px #3a2b1c,0 0 0 4px rgba(255,214,130,.6),0 0 22px rgba(240,190,90,.4),0 9px 15px rgba(0,0,0,.6)}
    .deeporbbtn-disciplines:hover{box-shadow:inset 0 0 0 5px #1f1729,inset 0 0 22px #000,0 0 0 2px #32254a,0 0 0 4px rgba(215,170,255,.6),0 0 22px rgba(170,120,240,.45),0 9px 15px rgba(0,0,0,.6)}
    .deepvitalcluster .deeporbbtn:last-child{margin-left:-10px}
    .deepvitalcluster .deeporbbtn:first-child{margin-right:-10px}
    .deeporbbtnicon{font-size:32px}
    .deeporbbtnlabel{font-size:10px;margin-top:6px}
    .deeporbpip{width:15px;height:15px;top:-6px;right:-6px}
    .deeparpgcockpit{right:14px;top:14px;width:264px}
    .deeparpgmap{height:142px;border-radius:2px}.deeparpgarea{border-radius:2px}.deeparpgquest{border-radius:1px}
    .deepartbar{right:288px;top:116px;border-radius:4px}
    .deepminingmeter{bottom:126px}
    .deepsay{bottom:112px!important}
  }
  /* The Deep uses one MMO-style bottom dock: persistent menus sit above the
     primary action row, while Guardian Arts live beside field tools. */
  .deepbottomdock{display:flex;flex-direction:column;align-items:center;gap:5px;flex:0 1 auto;min-width:0;pointer-events:none}
  .deepchatdock{left:14px;right:auto;bottom:124px;z-index:8;width:min(410px,calc(100% - 315px));padding:8px 10px;border-color:rgba(122,176,188,.22);background:linear-gradient(180deg,rgba(4,8,11,.1),rgba(4,8,11,.5));pointer-events:auto;opacity:.35;transition:opacity .3s ease}
  .deepchatdock:hover,.deepchatdock:focus-within,.deepchatdock.chatopen,.deepchatdock.toolsopen,.deepchatdock.live{opacity:1}
  @media(pointer:coarse){.deepchatdock{opacity:.5}}
  .deepchatdock .plazadockhead{justify-content:space-between}.deepchatdock .pdhpop{color:#8fd9e6}
  .deepchatdock .plazalog{display:flex;flex-direction:column;gap:2px;max-height:96px;overflow-y:auto;color:#eee2ca;font-size:12px;line-height:1.35;scrollbar-width:thin}
  .deepchatdock .deepchatline b{color:#e7bd62}.deepchatdock .deepchatline.system b{color:#80ced9}
  .deepchatdock .plazadockrow input{height:38px;padding:7px 10px;border:1px solid rgba(152,196,204,.32);border-radius:7px;background:rgba(2,6,9,.82);color:#fff3d6;font:inherit}
  .deepstationactions{position:absolute;inset:0;z-index:9;pointer-events:none}.deepstationactions .btn{position:absolute;min-width:104px;min-height:38px;transform:translate(-50%,-100%);pointer-events:auto;border:1px solid #d7aa4f!important;background:linear-gradient(180deg,#6b4a24,#2a1d13)!important;color:#fff0c2!important;box-shadow:0 8px 18px rgba(0,0,0,.58),0 0 0 3px rgba(226,180,90,.12)!important}
  .deepstationactions .btn::after{content:'';position:absolute;left:50%;top:100%;border:6px solid transparent;border-top-color:#d7aa4f;transform:translateX(-50%)}
  .deepbottomdock .deephudactions{position:static!important;z-index:auto!important;inset:auto!important;width:max-content;max-width:100%!important;display:flex!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:0!important;transform:none!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 6px!important;border:1px solid rgba(130,99,57,.58);border-radius:4px;background:linear-gradient(180deg,rgba(31,26,23,.98),rgba(8,8,9,.98));box-shadow:inset 0 1px rgba(255,225,159,.08),0 5px 18px rgba(0,0,0,.58);filter:none;pointer-events:auto}
  .deepbottomdock .deephudactions .btn{flex:0 0 auto;min-width:72px;min-height:32px;padding:6px 9px;border-width:0 1px!important;border-radius:1px!important;background:linear-gradient(180deg,#3c342d,#171515 72%)!important;box-shadow:inset 0 1px rgba(255,230,177,.14),inset 0 -2px #080707!important;font-size:10px;letter-spacing:.04em}
  .deepactionbar{display:flex;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:5px 7px;border:1px solid #786445;border-radius:6px;background:linear-gradient(180deg,rgba(42,35,30,.985),rgba(12,11,12,.995));box-shadow:inset 0 0 0 2px #171310,inset 0 1px rgba(255,229,164,.18),0 8px 22px rgba(0,0,0,.7);scrollbar-width:none;pointer-events:auto}
  .deepactionbar::-webkit-scrollbar{display:none;width:0;height:0}
  .deepbottomdock .deepartbar,.deepbottomdock .deephotbar{position:static!important;z-index:auto!important;inset:auto!important;flex:0 0 auto;max-width:none!important;display:flex!important;flex-direction:row!important;align-items:center;transform:none!important;overflow:visible!important;padding:4px 6px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  /* .deepactionbar is the row that overflows a phone, not the hotbar inside it.
     Measured at 390x844: the bar is a 240px client with 354px of content, and
     the five ability orbs start 120px into it, so their right half sits past
     its edge -- ALL FIVE read unreachable, two behind the chat buttons, two
     behind the canvas, one off-screen. On desktop the same bar is 562/562 and
     all five are fine. The bar already had overflow-x:auto and no affordance,
     exactly like .deephudactions one row up, so it gets the same data-more
     fade and the same one-time peek rather than a second nested scroller --
     which was the first attempt here and only moved the clipping inward. */
.deepbottomdock .deepartbar[hidden]{display:none!important}
  .deepbottomdock .deepartbar:not([hidden]){border-right:1px solid rgba(210,170,95,.34)!important}
  .deepbottomdock .deephotbar::before,.deepbottomdock .deephotbar::after{display:none!important}
  .deepbottomdock .deepart{width:52px;height:50px;grid-template-rows:22px 9px;border-radius:4px}
  .deepbottomdock .deepartname{max-width:47px}
  .deepbottomdock .deeptool{width:50px;height:50px;flex-basis:50px;border-radius:3px}
  @media(max-width:760px){
    .deepchatdock{left:68px;right:68px;bottom:max(7px,env(safe-area-inset-bottom,0px));width:auto;padding:4px 5px;border:0;border-radius:0;background:linear-gradient(rgba(4,8,11,0),rgba(4,8,11,.5) 40%);box-shadow:none}
    .deepchatdock .plazadockhead,.deepchatdock .plazalog{display:none}.deepchatdock.chatopen .plazadockhead{display:flex}.deepchatdock.chatopen .plazalog{display:flex;max-height:78px}
    .deepchatdock .plazadockrow{gap:4px}.deepchatdock .plazadockrow input{height:46px;min-width:0;font-size:16px}.deepchatdock .plazadockrow>.btn{width:44px;height:44px;min-width:44px;padding:0;font-size:0}.deepchatdock .plazadockrow>.btn::after{content:'➤';font-size:18px}
    .deepstationactions .btn{min-width:92px;min-height:44px;font-size:13px}
    .deepbottomdock{align-items:stretch;gap:4px}
    .deepbottomdock .deephudactions{width:100%;max-width:100%!important;padding:0 3px!important}
    .deepbottomdock .deephudactions .btn{min-width:68px;min-height:34px;padding:7px 8px;font-size:10px}
    .deepactionbar{width:100%;box-sizing:border-box;padding:4px 5px}
    .deepbottomdock .deepartbar,.deepbottomdock .deephotbar{padding:3px 4px!important;gap:5px!important}
    .deepbottomdock .deepart{width:48px;height:46px;grid-template-rows:20px 8px}
    .deepbottomdock .deeparticon{font-size:17px;line-height:20px}.deepbottomdock .deepartname{max-width:44px;font-size:6.5px;line-height:8px}
    .deepbottomdock .deeptool{width:44px;height:44px;flex-basis:44px;font-size:21px}
    .deepminingmeter{bottom:184px}
  }
  .marketwrap{min-height:calc(100dvh - 58px);margin:-4px -10px -14px;padding:72px 14px 42px;background-image:linear-gradient(180deg,rgba(11,7,4,.12),rgba(11,7,4,.45) 46%,rgba(8,5,3,.88)),url('room-bg-market-desktop-v1.jpg');background-size:cover;background-position:center top;background-attachment:fixed;color:#fff3d2;overflow:auto}
  .marketinner{width:min(1080px,100%);margin:0 auto;padding:18px;border:1px solid rgba(239,194,99,.28);border-radius:24px;background:linear-gradient(180deg,rgba(29,18,9,.5),rgba(14,9,5,.82));box-shadow:0 24px 70px rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
  .markethero{position:relative;overflow:hidden;border:2px solid rgba(255,211,112,.56);border-radius:18px;padding:22px;background:linear-gradient(135deg,rgba(104,55,19,.95),rgba(37,23,12,.96));box-shadow:0 18px 38px rgba(0,0,0,.42),inset 0 0 0 4px rgba(40,23,9,.34),inset 0 1px rgba(255,255,255,.15)}
  .markethero:before{content:'';position:absolute;inset:7px;border:1px solid rgba(246,203,111,.2);border-radius:12px;pointer-events:none}
  .markethero:after{content:'🍋  🫒  🍇';position:absolute;right:18px;top:10px;font-size:42px;opacity:.18;transform:rotate(-5deg)}
  .marketeyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:#f4cf7c;font-weight:900}
  .marketmoney{font-size:clamp(34px,8vw,62px);line-height:1;margin-top:7px;font-weight:950;letter-spacing:-.04em;text-shadow:0 3px 12px rgba(0,0,0,.45)}
  .marketrate{font-weight:850;color:#bfe995;margin-top:5px}
  .marketmission{position:relative;max-width:680px;margin:10px 0 0;color:#ead8b2;font:13px/1.45 system-ui,sans-serif}
  .marketstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}
  .marketstat{padding:9px 10px;border-radius:12px;background:rgba(10,7,3,.28);border:1px solid rgba(255,226,159,.14)}
  .marketstat b{display:block;font-size:16px}.marketstat span{font-size:11px;color:#d6c39d}
  .markettools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 2px 10px;flex-wrap:wrap}
  .marketbuyset{display:flex;gap:5px;padding:4px;border-radius:12px;background:rgba(0,0,0,.28)}
  .marketbuyset button{min-width:54px;padding:7px 10px}.marketbuyset button.on{background:#e6ad3e;color:#241506;border-color:#ffd97a}
  .marketventures{display:grid;gap:10px}
  .marketbiz{display:grid;grid-template-columns:74px minmax(0,1fr) minmax(150px,190px);gap:13px;align-items:center;padding:13px;border-radius:15px;border:1px solid rgba(226,180,90,.38);background:linear-gradient(110deg,rgba(78,50,20,.93),rgba(27,19,11,.95));box-shadow:inset 0 1px rgba(255,231,177,.08),0 8px 20px rgba(0,0,0,.34)}
  .marketbiz.locked{filter:saturate(.7);opacity:.82}.marketicon{width:68px;height:68px;border-radius:18px;display:grid;place-items:center;font-size:38px;background:radial-gradient(circle at 35% 25%,#fff0ad,#d58a26 72%,#7b4214);box-shadow:inset 0 0 0 2px rgba(255,250,212,.42),0 5px 12px rgba(0,0,0,.35)}
  .marketname{font-size:19px;font-weight:950}.marketowned{color:#f4cf7c;font-size:13px;font-weight:800;margin-left:7px}.marketstory{font-size:12px;color:#cbb995;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .marketroute{display:inline-flex;margin-top:6px;padding:3px 7px;border:1px solid rgba(134,184,115,.42);border-radius:999px;background:rgba(42,78,36,.38);color:#cdefb7;font:800 10px/1.2 system-ui,sans-serif;letter-spacing:.03em}
  .marketmeta{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px;font-size:12px;color:#f4dfb4}.marketmeta strong{color:#bfe995}
  .marketbar{height:10px;border-radius:999px;background:rgba(0,0,0,.42);overflow:hidden;margin-top:8px;border:1px solid rgba(255,255,255,.1)}
  .marketbarfill{height:100%;width:0;background:linear-gradient(90deg,#e6902c,#ffe06f);box-shadow:0 0 12px rgba(255,194,69,.55);transition-property:width;transition-timing-function:linear}
  .marketactions{display:grid;gap:6px}.marketactions .btn{width:100%;min-height:40px;padding:7px 9px}.marketactions .marketmanager{font-size:12px;min-height:34px}
  .marketmanaged{color:#bfe995;font-size:12px;text-align:center;font-weight:850;padding:4px}
  .marketprestige{margin-top:14px;padding:15px;border-radius:18px;border:1px solid rgba(177,136,255,.38);background:linear-gradient(135deg,rgba(67,43,103,.7),rgba(28,18,48,.82));display:flex;align-items:center;gap:13px}
  .marketprestige .sigil{font-size:38px}.marketprestige .copy{flex:1}.marketprestige .copy b{font-size:17px}.marketprestige .copy div{font-size:12px;color:#d8c8ec;margin-top:3px}
  .marketoffline{margin:0 0 12px;padding:11px 13px;border-radius:13px;background:rgba(58,104,45,.72);border:1px solid rgba(172,231,133,.42);color:#eaffdd;font-weight:800}
  @media(max-width:620px),(max-width:1100px) and (orientation:portrait){.marketwrap{padding:62px 7px 24px;margin-left:-6px;margin-right:-6px;background-image:linear-gradient(180deg,rgba(11,7,4,.08),rgba(11,7,4,.48) 38%,rgba(8,5,3,.9)),url('room-bg-market-mobile-v1.jpg');background-size:cover;background-position:center top;background-attachment:scroll}.marketinner{padding:8px;border-radius:18px}.markethero{padding:16px;border-radius:15px}.marketmission{font-size:12px;padding-right:8px}.marketstats{grid-template-columns:1fr 1fr}.marketstat:last-child{grid-column:1/-1}.marketbiz{grid-template-columns:58px minmax(0,1fr);gap:9px;padding:10px}.marketicon{width:54px;height:54px;font-size:30px;border-radius:15px}.marketactions{grid-column:1/-1;grid-template-columns:1fr 1fr}.marketactions .marketmanager,.marketactions .marketmanaged{grid-column:1/-1}.marketstory{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.marketprestige{align-items:flex-start;flex-wrap:wrap}.marketprestige .btn{width:100%}}
  /* Idle-game density: phone and portrait tablet players should see the economy,
     buy controls, and several ventures at once instead of one giant card. */
  @media(max-width:620px),(max-width:1100px) and (orientation:portrait){
    .marketwrap{padding:58px 5px 12px}.marketinner{padding:5px;border-radius:14px}
    .markethero{padding:9px 10px;border-radius:12px}.markethero:after{display:none}.marketeyebrow{font-size:9px}.marketmoney{font-size:28px;margin-top:3px}.marketrate{margin-top:2px;font-size:11px}.marketmission{display:none}
    .marketstats{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:6px}.marketstat,.marketstat:last-child{grid-column:auto;padding:4px 5px;border-radius:8px}.marketstat b{font-size:12px}.marketstat span{font-size:8.5px}
    .markettools{margin:6px 1px 5px;gap:5px;flex-wrap:nowrap}.markettools>b{font-size:11px;white-space:nowrap}.marketbuyset{padding:2px;gap:3px}.marketbuyset button{min-width:43px;min-height:30px;padding:3px 6px;font-size:11px}
    .marketventures{gap:5px}.marketbiz{grid-template-columns:42px minmax(0,1fr);gap:6px;padding:7px;border-radius:11px}.marketicon{width:40px;height:40px;font-size:24px;border-radius:11px}.marketname{font-size:15px;line-height:1.1}.marketowned{font-size:11px;margin-left:4px}.marketroute,.marketstory{display:none}
    .marketmeta{gap:6px;margin-top:3px;font-size:10px;line-height:1.1}.marketmeta span:nth-child(n+3){display:none}.marketbar{height:6px;margin-top:4px}
    .marketactions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:4px}.marketactions .btn{min-height:30px;padding:4px 5px;font-size:11px}.marketactions .marketmanager,.marketactions .marketmanaged{grid-column:1/-1;min-height:27px;font-size:10px;padding:3px}
    .marketprestige{margin-top:6px;padding:8px;border-radius:12px;gap:7px}.marketprestige .sigil{font-size:24px}.marketprestige .copy b{font-size:14px}.marketprestige .copy div{font-size:10px}.marketoffline{margin-bottom:5px;padding:6px 8px;font-size:11px}
  }
  @media(min-width:621px) and (max-width:1100px) and (orientation:portrait){.marketventures{grid-template-columns:repeat(2,minmax(0,1fr))}.marketbiz{align-content:start}}
  /* Agora Renaissance: authored trading floor, truthful commissions, and manual momentum. */
  .marketwrap.market-v2{position:relative;min-height:100dvh;margin:-4px -8px -14px;padding:64px 12px 28px;background-image:linear-gradient(180deg,rgba(7,17,17,.08),rgba(10,9,5,.32) 35%,rgba(7,6,4,.74) 78%,#070604),url('room-bg-market-desktop-v2.jpg');background-size:cover;background-position:center top;background-attachment:fixed;isolation:isolate}
  .marketwrap.market-v2:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 15%,rgba(255,226,139,.16),transparent 36%),linear-gradient(90deg,rgba(1,14,14,.22),transparent 26%,transparent 74%,rgba(1,14,14,.22));z-index:-1}
  .market-v2 .marketinner{width:min(1120px,100%);padding:10px;border:1px solid rgba(255,222,153,.3);border-radius:22px;background:linear-gradient(180deg,rgba(8,23,23,.75),rgba(10,8,5,.92));box-shadow:0 25px 80px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(8px)}
  .marketcommand{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:10px}
  .marketwelcome,.marketsnapshot{position:relative;overflow:hidden;padding:18px;border:1px solid rgba(222,181,92,.38);border-radius:18px;box-shadow:inset 0 1px rgba(255,241,189,.1),0 10px 27px rgba(0,0,0,.34)}
  .marketwelcome{background:radial-gradient(circle at 83% 10%,rgba(255,207,91,.17),transparent 28%),linear-gradient(145deg,rgba(12,69,62,.96),rgba(24,27,22,.97) 58%,rgba(67,39,13,.95))}.marketwelcome:after,.marketsnapshot:after{content:'';position:absolute;inset:auto -32px -54px auto;width:140px;height:140px;border:1px solid rgba(232,190,94,.13);border-radius:50%;box-shadow:0 0 0 14px rgba(232,190,94,.035),0 0 0 29px rgba(232,190,94,.025);pointer-events:none}
  .marketbrand{color:#f4cf7c;font:900 10px/1 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}.marketwelcome h1{max-width:720px;margin:7px 0 0;color:#fff2c2;font:900 clamp(26px,3.8vw,43px)/.98 Georgia,serif;letter-spacing:-.025em}.marketcommandcopy{max-width:720px;margin:8px 0 0;color:#d8e6dd;font-size:11px;line-height:1.45}
  .marketloop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:13px}.marketloopstep{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 8px;border:1px solid rgba(255,239,187,.15);border-radius:10px;background:rgba(0,0,0,.22);color:#d7e4dc;font-size:8.5px;font-weight:800}.marketloopstep i{display:grid;place-items:center;flex:none;width:21px;height:21px;border-radius:50%;background:#d29335;color:#1b1308;font-style:normal;font-size:10px;font-weight:950}.marketloopstep.current{border-color:rgba(255,217,111,.58);background:rgba(102,66,24,.42);color:#fff0b4}.marketloopstep.current i{background:#ffe18a;box-shadow:0 0 12px rgba(255,211,94,.42)}
  .marketnext{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;padding:10px;border:1px solid rgba(116,226,190,.3);border-radius:12px;background:linear-gradient(100deg,rgba(5,38,37,.8),rgba(68,43,19,.72))}.marketnext b{display:block;color:#93efd1;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.marketnext strong{display:block;margin-top:3px;color:#fff0b7;font:900 16px Georgia,serif}.marketnext p{margin:3px 0 0;color:#bed5ca;font-size:8px;line-height:1.35}.marketnext .btn{min-width:170px;min-height:43px;padding:8px 13px;font-size:11px}.marketnext .btn:disabled{opacity:.72}
  .marketsnapshot{background:radial-gradient(circle at 50% 0,rgba(242,190,75,.23),transparent 55%),linear-gradient(145deg,rgba(64,37,13,.97),rgba(25,20,13,.98));text-align:center}.market-v2 .marketmoney{margin-top:5px;color:#fff2ba;font-size:clamp(34px,4.6vw,52px);line-height:1}.market-v2 .marketrate{margin-top:5px;color:#b9efa6;font-size:10px}.marketminirow{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:9px}.marketminichip{padding:4px 7px;border:1px solid rgba(255,227,164,.18);border-radius:999px;background:rgba(0,0,0,.22);color:#e4d2aa;font-size:8px}.marketminichip b{color:#fff0b8}.marketsnapshotrank{margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,236,180,.14);color:#e5d4a9;font-size:8px}.marketsnapshotrank b{display:block;margin-bottom:2px;color:#fff0bd;font:900 14px Georgia,serif}.marketcommission{margin-top:9px;padding:8px;text-align:left;border:1px solid rgba(177,140,225,.28);border-radius:10px;background:rgba(45,28,67,.57)}.marketcommissionhead{display:flex;justify-content:space-between;gap:8px;color:#f4d88f;font-size:7px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.marketcommission strong{display:block;margin-top:3px;color:#fff0c8;font:900 13px Georgia,serif}.marketcommission p{margin:3px 0 0;color:#d7cde1;font-size:7.5px;line-height:1.3}
  .marketranktrack,.marketgoaltrack,.marketmomentumtrack{height:6px;margin-top:7px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:99px;background:rgba(0,0,0,.45)}.marketrankfill,.marketgoalfill,.marketmomentumfill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#b46f28,#ffd971);box-shadow:0 0 10px rgba(255,205,93,.4)}
  .marketsectionnav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 1px;padding:5px;border:1px solid rgba(255,226,158,.2);border-radius:13px;background:rgba(5,18,18,.86);box-shadow:inset 0 1px rgba(255,255,255,.05)}.marketsectionnav button{min-width:0;padding:8px;border:1px solid transparent;border-radius:9px;background:transparent;color:#c6d5cc;text-align:left;cursor:pointer}.marketsectionnav button b{display:block;color:#f1dba4;font-size:10px}.marketsectionnav button small{display:block;margin-top:2px;overflow:hidden;color:#9fb3a8;font-size:6.8px;white-space:nowrap;text-overflow:ellipsis}.marketsectionnav button:hover,.marketsectionnav button:focus-visible{outline:2px solid #f2d184;outline-offset:1px;background:rgba(255,255,255,.06)}.marketsectionnav button.active{border-color:rgba(116,231,195,.46);background:linear-gradient(120deg,rgba(20,92,81,.76),rgba(91,57,23,.7));box-shadow:0 0 18px rgba(71,207,171,.12)}.marketsectionnav button.active b{color:#fff0b3}.marketdeckitem[hidden]{display:none!important}
  /* Fishmonger's Row: the Market's fish tycoon. Cold-water palette against the
     Market's warm amber, so the two venues never read as the same screen. */
  /* ── Fishmonger's Row as the Market's front page ─────────────────── */
  .mkrowfront{margin:0 1px 12px;padding:15px 16px 14px;border:1px solid rgba(116,231,195,.42);border-radius:15px;background:linear-gradient(150deg,rgba(9,54,62,.94),rgba(11,28,42,.92));box-shadow:0 14px 34px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.05)}
  .mkrowhead{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;justify-content:space-between;margin-bottom:13px}
  .mkroweyebrow{color:#74e7c3;font:800 9px/1 Inter;letter-spacing:2px}
  .mkrowhead h2{margin:6px 0 4px;color:#e9fbf5;font:700 30px/1 'Cormorant Garamond',Georgia,serif}
  .mkrowhead p{max-width:56ch;margin:0;color:#a9cfc9;font:500 12px/1.5 Inter}
  .mkrowtill{flex:none;min-width:132px;padding:9px 12px;border:1px solid rgba(116,231,195,.3);border-radius:11px;background:rgba(4,22,28,.62);text-align:center}
  .mkrowtill small{display:block;color:#74e7c3;font:800 8px Inter;letter-spacing:1.6px}
  .mkrowtill b{display:block;margin-top:2px;color:#fff;font:800 27px/1 'Barlow Condensed',Inter}
  .mkrowtill span{display:block;margin-top:2px;color:#8fb8b3;font:700 9px Inter}
  .mkrowstalls{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:10px}
  .mkrowstall{display:flex;flex-direction:column;gap:7px;padding:11px 12px;border:1px solid rgba(116,231,195,.24);border-radius:12px;background:rgba(5,26,32,.66)}
  .mkrowstall.unbuilt{opacity:.82;border-style:dashed}
  .mkrowstalltop{display:flex;align-items:center;gap:9px}
  .mkrowicon{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:rgba(116,231,195,.13);font-size:19px}
  .mkrownames{min-width:0;flex:1}
  .mkrownames b{display:block;color:#eafaf5;font:700 13px/1.2 Inter}
  .mkrownames small{display:block;margin-top:1px;color:#8fb8b3;font:600 10px Inter}
  .mkrowowned{flex:none;color:#74e7c3;font:800 15px 'Barlow Condensed',Inter}
  .mkrowserve{width:100%;padding:11px 10px;border:0;border-radius:9px;background:linear-gradient(180deg,#f0c55a,#d09a2f);color:#20180a;font:800 13px Inter;letter-spacing:.4px;cursor:pointer}
  .mkrowserve:hover{filter:brightness(1.07)}
  .mkrowstall.unbuilt .mkrowserve{background:linear-gradient(180deg,#2b4a52,#1d3840);color:#a9cfc9}
  .mkrowstock{color:#8fb8b3;font:600 10px/1.4 Inter}
  .mkrowbuy{width:100%;padding:8px 10px;border:1px solid rgba(116,231,195,.34);border-radius:9px;background:rgba(9,44,52,.8);color:#dff3ee;font:700 11px Inter;cursor:pointer}
  .mkrowbuy:hover{background:rgba(14,62,72,.9)}
  .mkrowbuy.poor{opacity:.55}
  .mkrowloading{padding:14px 2px;color:#8fb8b3;font:600 12px Inter}
  .mkrowfoot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;margin-top:12px}
  .mkrowdeep{padding:9px 13px;border:1px solid rgba(116,231,195,.36);border-radius:9px;background:transparent;color:#74e7c3;font:700 11px Inter;cursor:pointer}
  .mkrowdeep:hover{background:rgba(116,231,195,.1)}
  @media(max-width:700px){.mkrowfront{padding:12px 12px 11px}.mkrowhead h2{font-size:24px}.mkrowstalls{grid-template-columns:1fr}}
  .frdoor{display:block;width:100%;margin:8px 1px;padding:11px 13px;border:1px solid rgba(116,231,195,.4);border-radius:13px;background:linear-gradient(120deg,rgba(9,52,60,.9),rgba(12,30,44,.86));color:#dff3ee;text-align:left;cursor:pointer}
  .frdoor b{display:block;color:#8ff0d2;font-size:15px}
  .frdoor span{display:block;margin-top:3px;color:#a9c6c2;font-size:9.5px;line-height:1.45}
  .frdoor:hover,.frdoor:focus-visible{outline:2px solid #74e7c3;outline-offset:1px;background:linear-gradient(120deg,rgba(13,68,78,.94),rgba(16,40,58,.9))}
  .frwrap{width:min(1180px,100%);margin:0 auto;padding:0 8px 26px}
  .frinner{display:block}
  .frhero{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:10px;margin:6px 0 8px;padding:13px;border:1px solid rgba(116,231,195,.26);border-radius:15px;background:linear-gradient(140deg,rgba(8,44,52,.92),rgba(9,24,36,.9))}
  .frherowords h2{margin:0;color:#9ff3d6;font-size:clamp(21px,3.3vw,31px)}
  .frherowords p{margin:5px 0 0;color:#b3cdc8;font-size:10.5px;line-height:1.5;max-width:60ch}
  .frtill{padding:9px;border:1px solid rgba(255,226,158,.2);border-radius:12px;background:rgba(4,16,18,.7);text-align:center}
  .frtilllabel{color:#8fb0aa;font-size:8px;letter-spacing:.9px;text-transform:uppercase}
  .frtillnum{color:#ffe6a8;font-size:26px;font-weight:900;line-height:1.15}
  .frrank{margin-top:2px;color:#74e7c3;font-size:10px}
  .frranktrack{height:4px;margin-top:5px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden}
  .frrankfill{height:100%;border-radius:99px;background:linear-gradient(90deg,#3fbf9a,#8ff0d2);transition:width .35s ease}
  .frsectionnav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 1px;padding:5px;border:1px solid rgba(116,231,195,.2);border-radius:13px;background:rgba(5,18,18,.86)}
  .frsectionnav button{min-width:0;padding:8px;border:1px solid transparent;border-radius:9px;background:transparent;color:#c6d5cc;text-align:left;cursor:pointer}
  .frsectionnav button b{display:block;color:#a8f0d8;font-size:10px}
  .frsectionnav button small{display:block;margin-top:2px;color:#8fb0aa;font-size:7px}
  .frsectionnav button.active{border-color:rgba(116,231,195,.46);background:linear-gradient(120deg,rgba(16,84,76,.76),rgba(12,44,58,.7))}
  .frbuymodes,.frswapamount,.frswaplist{display:flex;flex-wrap:wrap;gap:5px;margin:7px 1px}
  .frswapchip{padding:6px 11px;border:1px solid rgba(116,231,195,.3);border-radius:99px;background:rgba(6,26,28,.8);color:#bfe0d8;font-size:10px;cursor:pointer}
  .frswapchip.on{border-color:#74e7c3;background:linear-gradient(120deg,rgba(20,96,86,.9),rgba(14,52,64,.85));color:#eafff7}
  .frgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px;margin-top:7px}
  .frstand{display:flex;flex-direction:column;gap:6px;padding:11px;border:1px solid rgba(255,226,158,.18);border-radius:14px;background:linear-gradient(150deg,rgba(10,34,38,.92),rgba(7,20,28,.9))}
  .frstand.unbuilt{opacity:.82;border-style:dashed}
  .frstand.dry{border-color:rgba(255,146,110,.45)}
  .frstandhead{display:flex;gap:8px;align-items:center}
  .frstandicon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:rgba(255,226,158,.09);font-size:21px}
  .frstandtitles{flex:1;min-width:0}
  .frstandtitles b{display:block;color:#f3e4b8;font-size:13px}
  .frstandtitles small{display:block;color:#93b3ac;font-size:8.5px}
  .frstandcount{color:#8ff0d2;font-size:15px;font-weight:900}
  .frstandstory{margin:0;color:#a3bcb6;font-size:9px;line-height:1.5}
  .frserve{width:100%;min-height:42px;font-size:13px}
  .frserve.ready{box-shadow:0 0 0 2px rgba(143,240,210,.5),0 0 18px rgba(116,231,195,.28)}
  .frserves{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
  .frserve-variant{flex:1;min-width:130px}
  .frserve-variant.trophy{border-color:rgba(192,160,255,.55);color:#d9c6ff}
  .frserve-variant.golden{border-color:rgba(255,215,110,.65);color:#ffe6a8}
  .frstockmeter{height:5px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
  .frstockfill{height:100%;border-radius:99px;background:linear-gradient(90deg,#2f9fd0,#8ff0d2);transition:width .3s ease}
  .frstockline{color:#8fb0aa;font-size:8.5px}
  .frgofish{display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid rgba(255,146,110,.35);border-radius:10px;background:rgba(58,22,14,.55)}
  .frgofish b{color:#ffb59a;font-size:10px}
  .frgofish span{color:#d5b3a6;font-size:8.5px;line-height:1.45}
  .frstandactions{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
  .frmanaged{color:#8ff0d2;font-size:9px}
  .frpips{color:#ffd98a;font-size:7px;letter-spacing:1.5px;align-self:center}
  .froutfit{border-color:rgba(255,217,138,.45)}
  .frrate{margin-left:auto;color:#ffe6a8;font-size:9px;position:relative}
  .frtick{position:absolute;right:0;top:-11px;color:#ffd98a;font-size:8.5px;font-weight:900;pointer-events:none;animation:frtickup .85s ease-out forwards}
  @keyframes frtickup{0%{opacity:0;transform:translateY(4px)}20%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
  @media(prefers-reduced-motion:reduce){.frtick{display:none}}
  .frlocked{margin-top:9px;padding:9px;border:1px dashed rgba(255,226,158,.24);border-radius:11px;color:#9fb3a8;font-size:9.5px;text-align:center}
  .frhold,.frswap{margin-top:7px;padding:12px;border:1px solid rgba(116,231,195,.22);border-radius:14px;background:rgba(7,24,28,.88)}
  .frhold h3,.frswap h3{margin:0 0 4px;color:#9ff3d6;font-size:16px}
  .frholdnote{margin:0 0 8px;color:#9fb8b2;font-size:9px;line-height:1.5}
  .frholdgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:7px;margin-bottom:9px}
  .frholdcell{padding:9px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(4,14,18,.7);text-align:center}
  .frholdcell.stocked{border-color:rgba(116,231,195,.42);background:rgba(10,42,44,.75)}
  .frholdicon{font-size:22px}
  .frholdcell b{display:block;color:#e8dcb4;font-size:10px}
  .frholdkg{color:#8ff0d2;font-size:14px;font-weight:900}
  .frholdcell small{display:block;margin-top:2px;color:#87a49e;font-size:7.5px}
  .frsell{margin-bottom:9px;padding:10px;border:1px solid rgba(255,226,158,.26);border-radius:12px;background:rgba(28,20,8,.5)}
  .frsell b{display:block;color:#ffe6a8;font-size:11.5px}
  .frsell span{display:block;margin-top:3px;color:#bda880;font-size:9px;line-height:1.45}
  .frsellrow{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
  .frcallout{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:7px 1px;padding:10px 12px;border:1px solid rgba(255,146,110,.42);border-radius:12px;background:linear-gradient(120deg,rgba(62,26,16,.82),rgba(24,16,14,.8))}
  .frcallout b{color:#ffb59a;font-size:11.5px}
  .frcallout span{flex:1;min-width:160px;color:#d5b3a6;font-size:9px;line-height:1.45}
  .frcallout .frcontract{flex-basis:100%;color:#ffd98a}
  .frsetbadge{padding:5px 8px;border:1px solid rgba(255,215,110,.4);border-radius:9px;background:rgba(40,30,8,.55);color:#ffd98a;font-size:8.5px}
  .frprestige{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 1px;padding:10px 12px;border:1px solid rgba(255,215,110,.32);border-radius:13px;background:linear-gradient(120deg,rgba(46,34,10,.78),rgba(14,24,26,.82))}
  .frprestigecopy{flex:1;min-width:220px}
  .frprestigecopy b{display:block;color:#ffd98a;font-size:11.5px}
  .frprestigecopy span{display:block;margin-top:2px;color:#b3cdc8;font-size:9px;line-height:1.45}
  .frgoldflash{position:fixed;inset:0;z-index:9998;pointer-events:none;background:radial-gradient(circle at 50% 42%,rgba(255,215,110,.55),rgba(255,190,60,.16) 45%,transparent 72%);animation:frgoldflash .85s ease-out forwards}
  @keyframes frgoldflash{0%{opacity:0}18%{opacity:1}100%{opacity:0}}
  @media(prefers-reduced-motion:reduce){.frgoldflash{display:none}}
  .frholdvariants{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:4px}
  .frholdvariant{padding:2px 6px;border-radius:99px;border:1px solid rgba(255,255,255,.14);color:#bfe0d8;font-size:7.5px}
  .frholdvariant.trophy{border-color:rgba(192,160,255,.5);color:#d9c6ff}
  .frholdvariant.golden{border-color:rgba(255,215,110,.55);color:#ffe6a8}
  .frsell-trophy{border-color:rgba(192,160,255,.5);color:#d9c6ff}
  .frsell-golden{border-color:rgba(255,215,110,.6);color:#ffe6a8}
  .frdex{margin-top:7px;padding:12px;border:1px solid rgba(116,231,195,.22);border-radius:14px;background:rgba(7,24,28,.88)}
  .frdex h3{margin:0 0 4px;color:#9ff3d6;font-size:16px}
  .frorders{display:grid;gap:7px;margin-bottom:9px}
  .frorder{display:flex;gap:9px;align-items:center;padding:9px 10px;border:1px solid rgba(255,217,138,.3);border-radius:12px;background:rgba(26,20,8,.55)}
  .frorder.filled{opacity:.62;border-style:dashed}
  .frordericon{font-size:22px}
  .frorderwords{flex:1;min-width:170px}
  .frorderwords b{display:block;color:#ffe6a8;font-size:11px}
  .frorderwords small{display:block;margin-top:1px;color:#b3a78c;font-size:8.5px;line-height:1.4}
  .frorderside{text-align:right}
  .frorderreward{color:#8ff0d2;font-size:13px;font-weight:900;margin-bottom:3px}
  .frdexcount{display:inline-block;margin:0 0 9px;padding:3px 10px;border-radius:99px;border:1px solid rgba(255,215,110,.4);color:#ffe6a8;font-size:9px;font-weight:900}
  .frdexrow{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:5px;align-items:stretch;margin-bottom:5px;padding:6px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(4,14,18,.6)}
  .frdexrow.complete{border-color:rgba(255,215,110,.5);background:rgba(28,24,8,.55)}
  .frdexspecies{display:flex;align-items:center;gap:6px;min-width:0;color:#e8dcb4;font-size:10px}
  .frdexspecies b{display:block;font-size:10px}
  .frdexset{color:#ffd98a;font-size:7.5px;margin-top:2px}
  .frdexcell{padding:7px 4px;border-radius:9px;border:1px solid rgba(255,255,255,.09);background:rgba(3,10,13,.6);text-align:center}
  .frdexcell .ic{display:block;font-size:19px}
  .frdexcell small{display:block;margin-top:2px;color:#87a49e;font-size:7px}
  .frdexcell.missing .ic{filter:grayscale(1);opacity:.22}
  .frdexcell.missing small{opacity:.4}
  .frdexcell.trophy{border-color:rgba(192,160,255,.38)}
  .frdexcell.golden{border-color:rgba(255,215,110,.45);box-shadow:0 0 10px rgba(255,200,80,.12)}
  .frconfirmmask{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:rgba(2,6,8,.72)}
  .frconfirm{max-width:430px;margin:12px;padding:16px;border:1px solid rgba(255,215,110,.45);border-radius:15px;background:linear-gradient(150deg,#12262b,#08141b);color:#e8f3ee}
  .frconfirm h3{margin:0 0 6px;color:#ffd98a;font-size:16px}
  .frconfirm p{margin:0 0 12px;color:#b3cdc8;font-size:10.5px;line-height:1.5}
  .frconfirmactions{display:flex;gap:7px;justify-content:flex-end}
  .frtide{display:flex;align-items:center;gap:8px;margin:8px 1px;padding:9px 12px;border:1px solid rgba(104,160,190,.28);border-radius:12px;background:linear-gradient(110deg,rgba(8,30,40,.82),rgba(10,22,32,.85));color:#a8c8d8;font-size:10px}
  .frtideicon{font-size:15px}
  .frtide.active{position:relative;overflow:hidden;border-color:rgba(255,215,110,.65);background:linear-gradient(110deg,rgba(66,48,10,.88),rgba(30,24,8,.85));color:#ffe6a8;box-shadow:0 0 16px rgba(255,200,80,.16)}
  .frtide.active::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 32%,rgba(255,236,170,.22) 50%,transparent 68%);animation:frtideshimmer 2.2s linear infinite}
  @keyframes frtideshimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
  @media(prefers-reduced-motion:reduce){.frtide.active::after{display:none}}
  .frcoin{position:fixed;z-index:9999;font-size:17px;pointer-events:none;animation:frcoinfly .9s ease-out forwards}
  @keyframes frcoinfly{0%{opacity:0;transform:translate(0,0) scale(.6)}18%{opacity:1}100%{opacity:0;transform:translate(var(--dx,0),-58px) scale(1.05)}}
  @media(prefers-reduced-motion:reduce){.frcoin{display:none}}
  .frswapbox{margin-bottom:7px}
  .frswaplabel{color:#9fb8b2;font-size:8px;letter-spacing:.9px;text-transform:uppercase}
  @media(max-width:760px){.frhero{grid-template-columns:1fr}.frgrid{grid-template-columns:1fr}.frsectionnav button small{display:none}.frsectionnav button{text-align:center}}
  .marketmomentum{display:flex;align-items:center;gap:9px;margin:8px 1px 0;padding:8px 11px;border:1px solid rgba(112,207,172,.25);border-radius:12px;background:linear-gradient(90deg,rgba(22,75,66,.72),rgba(20,35,34,.82));color:#d8f5dc}.marketmomentum strong{font-size:12px;white-space:nowrap}.marketmomentumtrack{flex:1;margin:0;height:8px}.marketmomentumfill{width:0;background:linear-gradient(90deg,#55c797,#d7f270)}.marketmomentumstatus{min-width:92px;text-align:right;color:#b9d5c6;font-size:10px}.marketmomentum.hot{animation:marketBreathe 1.2s ease-in-out infinite alternate;border-color:rgba(190,241,116,.5)}
  .marketexchange{position:relative;overflow:hidden;margin:8px 1px;padding:12px;border:1px solid rgba(104,192,210,.48);border-radius:16px;background:linear-gradient(135deg,rgba(9,35,43,.94),rgba(13,23,31,.92) 54%,rgba(46,31,17,.9));box-shadow:inset 0 1px rgba(230,251,255,.12),0 12px 32px rgba(0,0,0,.38);color:#edf8ef}.marketexchangehead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.marketexchangetitle{margin-top:3px;color:#efffc9;font:900 22px/1 Georgia,serif}.marketexchangecopy{max-width:680px;margin-top:5px;color:#c4d9d6;font-size:10px;line-height:1.35}.marketexchangeportfolio{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:390px}.marketexchangechip{padding:5px 7px;border:1px solid rgba(147,218,222,.27);border-radius:999px;background:rgba(2,18,24,.67);color:#d8ebdc;font-size:8px;font-weight:850}.marketexchangechip b{color:#fff0a8}.marketexchangegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.marketlisting{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:9px;padding:10px;border:1px solid rgba(147,218,222,.24);border-radius:12px;background:linear-gradient(145deg,rgba(20,56,62,.78),rgba(8,19,25,.93))}.marketlisting.locked{filter:saturate(.55);opacity:.76}.marketlistinghead{display:flex;align-items:center;gap:7px}.marketlistingicon{font-size:28px}.marketlistinghead b{display:block;color:#fff1bf;font:900 15px Georgia,serif}.marketlistinghead small{display:block;color:#8fd1d7;font:800 8px var(--mono);letter-spacing:.12em}.marketlistingstory{margin-top:5px;color:#c6d5d1;font-size:8.5px;line-height:1.25}.marketlistingfacts{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.marketlistingfacts span{padding:3px 5px;border-radius:6px;background:rgba(0,0,0,.28);color:#dbe7d9;font-size:7.5px}.marketlistingfacts .gain{color:#9ee0a8}.marketlistingfacts .loss{color:#f0a09a}.marketlistingchart{width:100%;height:39px;margin-top:5px}.marketlistingchart path{fill:none;stroke:#9edac5;stroke-width:2}.marketlistingchart circle{fill:#ffe08c}.marketlistingquote{text-align:right}.marketlistingprice{color:#fff0a4;font:900 25px/1 Georgia,serif}.marketlistingspread{margin-top:3px;color:#b8d2ce;font-size:8px}.marketlistingactions{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:9px}.marketlistingactions .btn{min-height:31px;padding:4px;font-size:8px}.marketlistingactions .sell{grid-column:1/-1}.marketlistingstatus{margin-top:9px;padding:6px;text-align:center;border:1px solid rgba(255,224,141,.2);border-radius:8px;background:rgba(0,0,0,.25);color:#d9cfaf;font-size:8px}.marketexchangenote{margin-top:8px;color:#a9c5c4;font-size:8px;line-height:1.35}
  .marketguild{position:relative;overflow:hidden;margin:7px 1px;padding:10px 12px;border:1px solid rgba(236,194,102,.42);border-radius:14px;background-image:linear-gradient(90deg,rgba(17,12,7,.93),rgba(23,16,8,.82),rgba(7,19,18,.9)),url('room-bg-market-contracts-v1.jpg');background-size:cover;background-position:center 52%;box-shadow:inset 0 1px rgba(255,240,195,.12),0 8px 22px rgba(0,0,0,.28);color:#fff0c4}.marketguildhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.marketguildchapter{color:#f0c870;font:900 9px/1 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}.marketguildtitle{margin-top:3px;font:900 19px/1.05 Georgia,serif}.marketguildstory{max-width:720px;margin-top:4px;color:#d8ccb0;font-size:10px;line-height:1.25}.marketguildcount{flex:none;padding:5px 8px;border-radius:999px;background:rgba(5,18,17,.78);border:1px solid rgba(231,194,103,.35);color:#f4d685;font-size:9px;font-weight:900}.marketcrestroad{display:grid;grid-template-columns:repeat(12,1fr);gap:5px;margin:8px 0}.marketcrest{height:7px;border-radius:99px;background:rgba(62,43,25,.8);border:1px solid rgba(222,182,100,.28)}.marketcrest.done{background:linear-gradient(#f6d77b,#a85a24);box-shadow:0 0 8px rgba(250,198,84,.5)}.marketcrest.current{background:#fff0ae;box-shadow:0 0 0 2px rgba(255,220,123,.22),0 0 13px #e29b3e;animation:marketCrest 1s ease-in-out infinite alternate}.marketguildbody{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.marketobjectives{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.marketobjective{padding:6px 7px;border-radius:8px;background:rgba(7,15,13,.77);border:1px solid rgba(255,255,255,.1);color:#d8d0bc;font-size:9px;line-height:1.15}.marketobjective b{display:block;margin-top:3px;color:#fff1c2;font-size:10px}.marketobjective.done{border-color:rgba(111,213,152,.42);background:rgba(12,55,44,.78);color:#b9e2ca}.marketguildclaim{min-width:160px}.marketguildclaim .btn{width:100%;min-height:38px}.marketguildgrant{margin-top:3px;text-align:center;color:#d7c59c;font-size:8px}.marketguildcomplete{text-align:center;padding:8px;color:#ffe29b;font:900 16px Georgia,serif;text-shadow:0 2px 10px #000}.marketcontractwin{position:fixed;z-index:2750;left:50%;top:18%;transform:translateX(-50%);width:min(460px,90vw);padding:22px;text-align:center;border:2px solid #f2cb71;border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(255,215,112,.3),transparent 55%),linear-gradient(145deg,#50301b,#142f2b);color:#fff0be;box-shadow:0 28px 90px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketcontractwin .seal{font-size:42px}.marketcontractwin b{display:block;margin:5px 0;font:900 28px Georgia,serif}.marketcontractwin small{color:#c9ead5}
  .marketorders{position:relative;overflow:hidden;margin:7px 1px;padding:11px 12px;border:1px solid rgba(237,196,107,.45);border-radius:15px;background-image:linear-gradient(90deg,rgba(15,11,8,.93),rgba(8,29,29,.76),rgba(20,12,25,.91)),url('room-bg-market-patrons-v1.jpg');background-size:cover;background-position:center 48%;box-shadow:inset 0 1px rgba(255,244,207,.14),0 9px 25px rgba(0,0,0,.34);color:#fff1c4}.marketorderhead{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.marketorderhead h3{margin:2px 0 0;font:900 19px/1.05 Georgia,serif}.marketordercopy{margin-top:4px;max-width:670px;color:#d5d8c7;font-size:10px;line-height:1.25}.marketordercount{flex:none;padding:5px 8px;border:1px solid rgba(240,201,110,.4);border-radius:999px;background:rgba(4,20,20,.76);color:#f4d780;font-size:9px;font-weight:900}.marketorderoffers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}.marketoffer{display:grid;grid-template-rows:auto auto 1fr auto;gap:5px;padding:8px;border:1px solid rgba(255,218,130,.31);border-radius:11px;background:linear-gradient(145deg,rgba(67,40,18,.88),rgba(8,25,24,.9));box-shadow:inset 0 1px rgba(255,255,255,.08)}.marketoffer:nth-child(2){border-color:rgba(96,210,190,.38);background:linear-gradient(145deg,rgba(15,68,65,.88),rgba(8,24,25,.92))}.marketoffer:nth-child(3){border-color:rgba(198,144,224,.42);background:linear-gradient(145deg,rgba(75,37,79,.88),rgba(17,20,28,.93))}.marketofferpatron{color:#f7d980;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.marketoffertitle{color:#fff3cd;font:900 14px/1.05 Georgia,serif}.marketofferstory{color:#c8d2c5;font-size:8.5px;line-height:1.2}.marketoffercargo,.marketordercargo{display:flex;align-items:center;gap:3px;min-width:0}.marketcargostep{display:grid;place-items:center;min-width:27px;height:25px;padding:0 4px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:rgba(3,12,13,.7);font-size:14px}.marketcargoarrow{color:#c9aa62;font-size:9px}.marketofferfoot{display:flex;align-items:center;justify-content:space-between;gap:6px}.marketofferreward{color:#ffe08b;font-size:9px;font-weight:900}.marketoffer .btn{min-height:30px;padding:4px 8px;font-size:9px}.marketorderactive{margin-top:8px;padding:9px;border:1px solid rgba(106,220,182,.38);border-radius:11px;background:linear-gradient(90deg,rgba(5,42,39,.88),rgba(26,24,31,.9))}.marketorderactivehead{display:flex;align-items:center;justify-content:space-between;gap:8px}.marketorderactivehead b{color:#fff0bd;font:900 15px Georgia,serif}.marketorderactivehead .btn{min-height:26px;padding:3px 7px;font-size:8px}.marketorderactivebody{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:7px}.marketordercargo{gap:5px}.marketordercargo .marketcargostep{width:38px;height:34px}.marketcargostep.done{border-color:rgba(111,224,157,.5);background:rgba(14,82,61,.84);filter:saturate(.7)}.marketcargostep.next{border-color:#ffe087;box-shadow:0 0 0 2px rgba(255,219,113,.18),0 0 18px rgba(255,196,67,.4);animation:marketCargo 1s ease-in-out infinite alternate}.marketorderinstruction{color:#d7e7da;font-size:9px;line-height:1.3;text-align:right}.marketorderinstruction b{display:block;color:#ffe49a;font-size:11px}.marketwritbadge{display:inline-block;margin-top:4px;padding:2px 5px;border:1px solid rgba(255,220,118,.45);border-radius:999px;background:rgba(96,59,11,.65);color:#ffe18a;font-size:7px;font-weight:950;letter-spacing:.08em}.marketorderwin{position:fixed;z-index:2760;left:50%;top:17%;transform:translateX(-50%);width:min(450px,90vw);padding:21px;text-align:center;border:2px solid #f3cf73;border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(100,224,190,.24),transparent 55%),linear-gradient(145deg,#4b2d1b,#112e2d 65%,#35203c);color:#fff1bf;box-shadow:0 28px 90px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketorderwin .seal{font-size:42px}.marketorderwin b{display:block;margin:5px 0;font:900 28px Georgia,serif}.marketorderwin small{color:#c7e9d4}
  .marketrush{position:relative;overflow:hidden;margin:7px 1px;padding:12px;border:1px solid rgba(255,209,105,.55);border-radius:16px;background-image:linear-gradient(90deg,rgba(23,13,6,.92),rgba(5,27,28,.72),rgba(29,13,31,.88)),url('room-bg-market-rush-v1.jpg');background-size:cover;background-position:center 46%;box-shadow:inset 0 1px rgba(255,246,207,.16),0 12px 32px rgba(0,0,0,.4);color:#fff1c4}.marketrush:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 15%,rgba(255,228,153,.08) 42%,transparent 62%);transform:translateX(-110%)}.marketrush.pulse:after{animation:marketRushSweep .55s ease-out}.marketrushhead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.marketrushtitle{font:900 22px/1 Georgia,serif;color:#fff0b6}.marketrushcopy{max-width:640px;margin-top:4px;color:#d3dacb;font-size:10px;line-height:1.3}.marketrushcareer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:330px}.marketrushchip{padding:4px 7px;border:1px solid rgba(255,222,137,.27);border-radius:999px;background:rgba(4,19,19,.78);color:#f3dfad;font-size:8px;font-weight:850}.marketrushlobby{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:12px;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(5,14,13,.72)}.marketrushmedals{display:flex;gap:6px;margin-top:6px}.marketrushmedal{padding:5px 7px;border-radius:8px;background:rgba(8,11,11,.58);color:#dccda9;font-size:8px}.marketrushstart{min-width:185px}.marketrushstart .btn{width:100%;min-height:42px}.marketrushhint{margin-top:3px;text-align:center;color:#d6c59a;font-size:7.5px}.marketrushhud{display:grid;grid-template-columns:repeat(5,auto) minmax(90px,1fr);align-items:center;gap:6px;margin-top:9px}.marketrushstat{padding:5px 7px;border-radius:8px;background:rgba(3,14,14,.75);border:1px solid rgba(255,255,255,.1);color:#cbd8cb;font-size:8px}.marketrushstat b{display:block;color:#fff0b3;font-size:12px}.marketrushtimer{height:7px;border-radius:99px;background:rgba(0,0,0,.55);overflow:hidden}.marketrushtimerfill{height:100%;width:100%;background:linear-gradient(90deg,#ec713a,#ffd46e,#6fd5a0);transform-origin:left;transition:width .12s linear}.marketrushdeal{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1.8fr);gap:8px;margin-top:8px}.marketrushcargo{display:grid;place-items:center;align-content:center;min-height:104px;padding:8px;text-align:center;border:1px solid rgba(255,224,144,.36);border-radius:12px;background:radial-gradient(circle at 50% 20%,rgba(255,211,106,.25),transparent 62%),rgba(28,18,9,.8)}.marketrushcargoicon{font-size:40px;filter:drop-shadow(0 7px 8px rgba(0,0,0,.5))}.marketrushcargo b{margin-top:4px;color:#fff1be;font:900 15px Georgia,serif}.marketrushcargo small{margin-top:2px;color:#d5c296;font-size:8px}.marketrushbids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.marketrushbid{position:relative;min-width:0;padding:8px;text-align:left;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:linear-gradient(145deg,rgba(68,38,15,.9),rgba(13,25,23,.93));color:#f8e7bd;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:transform .12s ease,border-color .12s ease}.marketrushbid:nth-child(2){background:linear-gradient(145deg,rgba(8,68,65,.91),rgba(9,23,24,.94))}.marketrushbid:nth-child(3){background:linear-gradient(145deg,rgba(73,31,76,.91),rgba(21,19,27,.94))}.marketrushbid:hover,.marketrushbid:focus-visible{transform:translateY(-2px);border-color:#ffe08a;outline:none}.marketrushbid:disabled{opacity:.55;cursor:wait}.marketrushbuyer{font-size:9px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketrushamount{display:block;margin:8px 0 4px;color:#fff0a8;font:900 20px/1 Georgia,serif}.marketrushnote{color:#c9d0c2;font-size:7.5px;line-height:1.2}.marketrushend{margin-top:7px;text-align:right}.marketrushend .btn{min-height:25px;padding:3px 7px;font-size:8px}.marketrushcall{position:absolute;z-index:3;left:50%;top:48%;transform:translate(-50%,-50%);padding:8px 13px;border:1px solid #ffe299;border-radius:999px;background:rgba(7,25,23,.94);color:#fff0ac;font:900 15px Georgia,serif;box-shadow:0 10px 36px #000;pointer-events:none;animation:marketRushCall .7s ease-out forwards}.marketrushwin{position:fixed;z-index:2770;left:50%;top:14%;transform:translateX(-50%);width:min(470px,92vw);padding:23px;text-align:center;border:2px solid #f2cc71;border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(255,219,109,.28),transparent 48%),linear-gradient(145deg,#563019,#0e3430 62%,#3a203e);color:#fff1bd;box-shadow:0 30px 100px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketrushwin .seal{font-size:48px}.marketrushwin b{display:block;margin:5px 0;font:900 30px Georgia,serif}.marketrushwin small{color:#c7e7d6}.marketrushwin .rushfacts{display:flex;justify-content:center;gap:7px;margin-top:10px}.marketrushwin .rushfacts span{padding:5px 7px;border-radius:8px;background:rgba(0,0,0,.25);font-size:9px}
  .marketcaravan{position:relative;overflow:hidden;margin:7px 1px;padding:12px;border:1px solid rgba(108,215,200,.48);border-radius:16px;background-image:linear-gradient(90deg,rgba(9,20,21,.93),rgba(9,31,36,.66),rgba(31,18,12,.88)),url('room-bg-market-caravans-v1.jpg');background-size:cover;background-position:center 56%;box-shadow:inset 0 1px rgba(232,255,245,.14),0 12px 32px rgba(0,0,0,.4);color:#fff0c4}.marketcaravanhead{display:flex;justify-content:space-between;gap:12px}.marketcaravantitle{font:900 22px/1 Georgia,serif}.marketcaravancopy{max-width:660px;margin-top:4px;color:#cee0d5;font-size:10px}.marketcaravancareer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.marketcaravanchip{padding:4px 7px;border:1px solid rgba(132,226,210,.28);border-radius:999px;background:rgba(3,18,19,.8);color:#dbefdd;font-size:8px;font-weight:850}.marketcaravangrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.marketcaravancard{padding:9px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:linear-gradient(145deg,rgba(55,38,24,.88),rgba(6,25,26,.92))}.marketcaravancard:nth-child(2){background:linear-gradient(145deg,rgba(78,41,25,.88),rgba(22,25,25,.93))}.marketcaravancard:nth-child(3){background:linear-gradient(145deg,rgba(17,70,67,.88),rgba(10,24,28,.94))}.marketcaravancard.locked{filter:saturate(.55);opacity:.7}.marketcaravandest{display:flex;align-items:center;gap:6px}.marketcaravandest i{font-size:25px;font-style:normal}.marketcaravandest b{display:block;font:900 16px Georgia,serif}.marketcaravandest small{color:#e4c97e;font-size:8px}.marketcaravanstory{margin:5px 0;color:#cad6cd;font-size:8.5px}.marketcaravancargo{display:flex;gap:3px;margin:6px 0}.marketcaravancargo span{padding:4px;border-radius:7px;background:rgba(2,15,16,.72);font-size:13px}.marketcaravanpaces{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.marketcaravanpaces .btn{min-height:38px;padding:4px 3px;font-size:7.5px;line-height:1.2}.marketcaravanpaces .btn b{display:block;font-size:9px}.marketcaravanactive{margin-top:10px;padding:11px;border:1px solid rgba(255,226,145,.35);border-radius:13px;background:rgba(4,19,21,.78)}.marketcaravanroute{display:flex;align-items:center;justify-content:space-between;gap:10px}.marketcaravanroute b{font:900 18px Georgia,serif}.marketcaravanroute small{display:block;color:#c8ddcf;font-size:8px}.marketcaravantrack{height:8px;margin:9px 0;border-radius:99px;overflow:hidden;background:rgba(0,0,0,.55)}.marketcaravanfill{height:100%;background:linear-gradient(90deg,#c27b38,#f2d178,#66cdb9);transition:width .3s linear}.marketcaravanfacts{display:flex;gap:6px;flex-wrap:wrap}.marketcaravanfacts span{padding:4px 6px;border-radius:7px;background:rgba(0,0,0,.3);font-size:8px}.marketcaravanclaim{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.marketcaravanwin{position:fixed;z-index:2780;left:50%;top:16%;transform:translateX(-50%);width:min(450px,92vw);padding:22px;text-align:center;border:2px solid #73d9c4;border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(255,216,110,.26),transparent 50%),linear-gradient(145deg,#173b39,#422a19);color:#fff0bd;box-shadow:0 30px 100px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketcaravanwin .seal{font-size:46px}.marketcaravanwin b{display:block;font:900 27px Georgia,serif}.marketcaravanwin small{color:#c8ead9}
  @keyframes marketRushSweep{to{transform:translateX(110%)}}@keyframes marketRushCall{0%{opacity:0;transform:translate(-50%,-35%) scale(.75)}30%{opacity:1;transform:translate(-50%,-55%) scale(1.08)}100%{opacity:0;transform:translate(-50%,-95%) scale(1)}}
  .marketorderoffers{scrollbar-width:none}.marketorderoffers::-webkit-scrollbar{display:none}
  .market-v2 .markettools{margin:8px 2px 7px}.market-v2 .markettools>b{color:#ecdba9;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.market-v2 .marketbuyset{background:rgba(5,16,16,.72);border:1px solid rgba(98,155,139,.2)}
  .market-v2 .marketventures{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.market-v2 .marketbiz{position:relative;grid-template-columns:56px minmax(0,1fr) minmax(132px,158px);gap:9px;min-height:118px;padding:9px;border-color:rgba(213,172,84,.28);border-radius:14px;background:linear-gradient(120deg,rgba(47,36,19,.96),rgba(12,27,26,.96));transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.market-v2 .marketbiz:hover{transform:translateY(-2px);border-color:rgba(255,214,119,.6);box-shadow:0 10px 26px rgba(0,0,0,.43)}.market-v2 .marketbiz.marketfocus{border-color:rgba(255,211,98,.75);box-shadow:0 0 0 1px rgba(255,211,98,.2),0 8px 30px rgba(221,145,28,.16)}.market-v2 .marketbiz.marketcashout{animation:marketCashout .42s cubic-bezier(.2,.9,.25,1.25)}
  .market-v2 .marketicon{width:52px;height:52px;border-radius:14px;font-size:30px;background:radial-gradient(circle at 34% 25%,#fff4bd,#c47c24 68%,#3d4d35);box-shadow:inset 0 0 0 2px rgba(255,244,202,.34),0 5px 13px rgba(0,0,0,.42)}.market-v2 .marketname{font-size:16px}.market-v2 .marketroute{margin-top:3px}.market-v2 .marketstory{font-size:10.5px}.market-v2 .marketmeta{gap:6px;font-size:10.5px;margin-top:5px}.market-v2 .marketbar{height:7px;margin-top:5px}.market-v2 .marketactions{gap:4px}.market-v2 .marketactions .btn{min-height:34px;padding:5px 7px;font-size:11px}.market-v2 .marketactions .marketmanager{min-height:28px;font-size:10px}.marketmilestones{display:flex;gap:3px;margin-top:5px}.marketmilestones i{width:16px;height:4px;border-radius:3px;background:#243331;border:1px solid #4f625e}.marketmilestones i.on{background:#f0bb4e;border-color:#ffe39b;box-shadow:0 0 6px rgba(240,187,78,.48)}
  .marketgain{position:absolute;z-index:4;right:12px;top:10px;padding:7px 10px;border-radius:999px;background:#f4c95e;color:#291604;font-weight:950;font-size:13px;box-shadow:0 7px 22px rgba(0,0,0,.42);pointer-events:none;animation:marketGain 1.15s ease forwards}.marketrankup{position:fixed;z-index:2700;left:50%;top:22%;transform:translateX(-50%);width:min(390px,88vw);padding:18px;text-align:center;border:2px solid #f0cb71;border-radius:18px;background:radial-gradient(circle at 50% 0,rgba(255,210,101,.22),transparent 58%),linear-gradient(#183d3a,#111d1c);color:#fff0bf;box-shadow:0 24px 80px #000;animation:marketRank .36s cubic-bezier(.2,.9,.2,1.2)}.marketrankup b{display:block;font:900 27px Georgia,serif;margin-top:5px}.marketrankup small{color:#bee7ce}.marketfirstpulse{animation:marketPulse 1s ease-in-out infinite alternate;box-shadow:0 0 0 2px rgba(255,215,103,.25),0 0 22px rgba(255,190,58,.45)!important}
  .market-v2 .marketprestige{margin-top:7px;padding:10px;background:linear-gradient(135deg,rgba(53,35,86,.88),rgba(18,28,29,.9))}.market-v2 .marketprestige .sigil{font-size:26px}.market-v2 .marketprestige .copy b{font-size:14px}.market-v2 .marketprestige .copy div{font-size:10px}.market-v2 .marketoffline{margin-bottom:7px;background:linear-gradient(90deg,rgba(47,107,75,.9),rgba(21,59,54,.9))}
  @keyframes marketBreathe{to{box-shadow:0 0 18px rgba(122,230,167,.2)}}@keyframes marketCashout{45%{transform:scale(1.018)}100%{transform:none}}@keyframes marketGain{0%{opacity:0;transform:translateY(12px) scale(.8)}20%{opacity:1;transform:none}80%{opacity:1}100%{opacity:0;transform:translateY(-32px)}}@keyframes marketRank{from{opacity:0;transform:translateX(-50%) scale(.78)}}@keyframes marketPulse{to{filter:brightness(1.2);transform:translateY(-1px)}}@keyframes marketCrest{to{filter:brightness(1.22);transform:scaleY(1.25)}}@keyframes marketCargo{to{filter:brightness(1.2);transform:translateY(-2px)}}@keyframes marketContractWin{from{opacity:0;transform:translateX(-50%) translateY(18px) scale(.75)}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketwrap.market-v2{margin:-4px -8px -14px;padding:55px 4px 10px;background-image:linear-gradient(180deg,rgba(5,16,16,.04),rgba(7,8,5,.48) 26%,rgba(5,6,4,.92) 67%),url('room-bg-market-mobile-v2.jpg');background-position:center top;background-attachment:scroll}.market-v2 .marketinner{padding:5px;border-radius:14px;background:linear-gradient(180deg,rgba(8,25,24,.66),rgba(7,7,4,.94))}.marketcommand{grid-template-columns:.86fr 1.14fr;gap:4px}.marketpanel{min-height:90px;padding:8px;border-radius:11px}.marketcashpanel{grid-column:1/-1;grid-row:1;min-height:82px}.marketrankpanel{grid-column:1;grid-row:2}.marketgoalpanel{grid-column:2;grid-row:2}.marketbrand{font-size:8px}.marketrankname{font-size:15px;margin-top:5px}.marketranktrack,.marketgoaltrack{margin-top:7px;height:5px}.marketranknext{font-size:8px;margin-top:4px}.market-v2 .marketmoney{font-size:32px;margin-top:3px}.market-v2 .marketrate{font-size:10px}.marketminirow{margin-top:6px;gap:4px}.marketminichip{font-size:8px;padding:3px 5px}.marketgoaltitle{font-size:13px}.marketgoalcount{font-size:9px}.marketgoalcopy{font-size:8.5px;line-height:1.2;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marketgoalreward{font-size:8px;margin-top:3px}.marketmomentum{margin-top:4px;padding:5px 7px;gap:5px}.marketmomentum strong{font-size:9px}.marketmomentumstatus{min-width:65px;font-size:8px}.marketguild{margin:4px 1px;padding:7px;background-position:center}.marketguildtitle{font-size:14px}.marketguildstory{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.marketguildcount{font-size:7px;padding:3px 5px}.marketcrestroad{gap:2px;margin:5px 0}.marketcrest{height:5px}.marketguildbody{grid-template-columns:1fr 102px;gap:4px}.marketobjectives{gap:3px}.marketobjective{padding:4px;font-size:7px}.marketobjective b{font-size:8px;margin-top:2px}.marketguildclaim{min-width:0}.marketguildclaim .btn{min-height:32px;padding:4px;font-size:8px}.marketguildgrant{font-size:6.5px}.market-v2 .markettools{margin:4px 1px 3px}.market-v2 .marketventures{grid-template-columns:1fr;gap:4px}.market-v2 .marketbiz{grid-template-columns:39px minmax(0,1fr) 118px;gap:5px;min-height:76px;padding:5px;border-radius:9px}.market-v2 .marketicon{width:37px;height:37px;font-size:22px;border-radius:9px}.market-v2 .marketname{font-size:13px}.market-v2 .marketowned{font-size:9px}.market-v2 .marketroute,.market-v2 .marketstory{display:none}.market-v2 .marketmeta{font-size:8.5px;margin-top:2px;gap:4px}.market-v2 .marketmeta span:nth-child(n+3){display:none}.market-v2 .marketbar{height:5px;margin-top:3px}.marketmilestones{margin-top:3px}.marketmilestones i{width:12px;height:3px}.market-v2 .marketactions{grid-column:3;grid-row:1;align-self:center}.market-v2 .marketactions .btn{min-height:29px;font-size:9px;padding:3px 4px}.market-v2 .marketactions .marketmanager,.market-v2 .marketactions .marketmanaged{grid-column:auto;min-height:23px;font-size:8px}.market-v2 .marketprestige{margin-top:4px;padding:6px}.market-v2 .marketprestige .sigil{font-size:20px}.market-v2 .marketprestige .copy b{font-size:11px}.market-v2 .marketprestige .copy div{font-size:8px}.market-v2 .marketprestige .btn{width:auto;font-size:9px;padding:5px 7px}.marketgain{right:4px;top:3px;font-size:10px;padding:4px 6px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketcommand{grid-template-columns:1fr;gap:5px}.marketwelcome,.marketsnapshot{padding:10px;border-radius:12px}.marketwelcome h1{font-size:25px}.marketcommandcopy{font-size:8px}.marketloop{margin-top:8px;gap:3px}.marketloopstep{padding:5px;font-size:7px}.marketloopstep i{width:18px;height:18px}.marketnext{grid-template-columns:1fr;margin-top:7px;padding:7px}.marketnext strong{font-size:13px}.marketnext .btn{width:100%;min-width:0;min-height:37px}.marketsnapshot{display:grid;grid-template-columns:1fr 1fr;gap:5px;align-items:center;text-align:left}.marketsnapshot>.marketbrand,.marketsnapshot>.marketmoney,.marketsnapshot>.marketrate,.marketsnapshot>.marketminirow{grid-column:1}.marketsnapshotrank,.marketcommission{grid-column:2}.marketsnapshotrank{margin:0;padding:0;border:0}.marketcommission{margin:0}.marketsectionnav{position:sticky;top:48px;z-index:20;gap:2px;margin-top:5px;padding:3px}.marketsectionnav button{padding:6px 4px;text-align:center}.marketsectionnav button b{font-size:8px}.marketsectionnav button small{display:none}}
  @media(max-width:520px){.marketsnapshot{grid-template-columns:1fr}.marketsnapshot>.marketbrand,.marketsnapshot>.marketmoney,.marketsnapshot>.marketrate,.marketsnapshot>.marketminirow,.marketsnapshotrank,.marketcommission{grid-column:1}.marketsectionnav button b{font-size:7px}}
  .markethouses{position:relative;overflow:hidden;margin-top:8px;padding:12px;border:1px solid rgba(227,191,110,.5);border-radius:16px;background-image:linear-gradient(90deg,rgba(45,19,11,.9),rgba(11,27,29,.7),rgba(11,39,40,.88)),url('room-bg-market-houses-v1.jpg');background-size:cover;background-position:center 50%;box-shadow:inset 0 1px rgba(255,244,207,.16),0 12px 30px rgba(0,0,0,.38)}.markethouseshead{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.markethousestitle{font:900 21px/1 Georgia,serif;color:#fff0b9}.markethousescopy{max-width:660px;margin-top:4px;color:#d6ded4;font-size:9px;line-height:1.3}.markethousetotal{flex:none;padding:5px 8px;border:1px solid rgba(244,210,130,.4);border-radius:999px;background:rgba(3,18,19,.76);color:#ffe09a;font-size:8px;font-weight:900}.markethouseledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:9px}.markethouseseal{padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(9,18,18,.82)}.markethouseseal.hand{border-color:rgba(238,142,73,.48)}.markethouseseal.steward{border-color:rgba(230,218,187,.42)}.markethouseseal.navigator{border-color:rgba(92,210,196,.48)}.markethousesealhead{display:flex;align-items:center;gap:6px}.markethousesealhead i{font-style:normal;font-size:20px}.markethousesealhead b{display:block;color:#fff0c1;font:900 13px Georgia,serif}.markethousesealhead small{display:block;color:#d8bd7b;font-size:7px}.markethouseeffect{margin-top:5px;color:#c7d9ce;font-size:7.5px;line-height:1.2}.markethousefound{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.markethousefound small{color:#d9ceb5;font-size:8px}.markethousechoice{position:fixed;z-index:2790;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,7,8,.82);backdrop-filter:blur(7px)}.markethousechoicepanel{width:min(940px,96vw);max-height:92vh;max-height:92dvh;overflow:auto;padding:20px;border:2px solid #e1b75e;border-radius:22px;background-image:linear-gradient(180deg,rgba(7,18,24,.45),rgba(7,13,14,.88)),url('room-bg-market-houses-v1.jpg');background-size:cover;background-position:center;box-shadow:0 30px 110px #000;color:#fff0c4;animation:marketContractWin .38s cubic-bezier(.15,.9,.22,1.12)}.markethousechoicetop{text-align:center}.markethousechoicetop h2{margin:4px 0;font:900 30px Georgia,serif}.markethousechoicetop p{max-width:690px;margin:0 auto;color:#d4ded6;font-size:11px}.markethousechoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.markethousepick{display:flex;flex-direction:column;align-items:center;min-height:235px;padding:14px;text-align:center;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:linear-gradient(180deg,rgba(23,25,24,.8),rgba(6,12,13,.94));color:#fff0c4;cursor:pointer}.markethousepick.hand{border-color:#e68b4d}.markethousepick.steward{border-color:#e5d5ad}.markethousepick.navigator{border-color:#59cbb9}.markethousepick:hover,.markethousepick:focus-visible{transform:translateY(-3px);outline:2px solid #ffe08a}.markethousepick i{font-style:normal;font-size:42px}.markethousepick b{margin-top:6px;font:900 19px Georgia,serif}.markethousepick em{margin-top:3px;color:#e7c87f;font-size:9px;font-style:normal}.markethousepick p{flex:1;color:#c7d5cd;font-size:9px;line-height:1.35}.markethousepick strong{color:#ffe09a;font-size:10px}.markethousepick span{margin-top:9px;padding:7px 9px;border-radius:8px;background:#cf9638;color:#171009;font-size:9px;font-weight:950}.markethousecancel{display:block;margin:12px auto 0}.markethousewin{position:fixed;z-index:2800;left:50%;top:14%;transform:translateX(-50%);width:min(480px,92vw);padding:23px;text-align:center;border:2px solid #e2bc69;border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(255,218,108,.27),transparent 50%),linear-gradient(145deg,#53301c,#143a38);color:#fff1bd;box-shadow:0 30px 100px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.markethousewin .seal{font-size:48px}.markethousewin b{display:block;margin:4px 0;font:900 28px Georgia,serif}.markethousewin small{color:#cce7d8}
  .marketrivals{position:relative;overflow:hidden;margin:8px 1px;padding:13px;border:1px solid rgba(242,202,111,.55);border-radius:17px;background-image:linear-gradient(90deg,rgba(24,13,8,.94),rgba(5,25,27,.62),rgba(19,12,27,.92)),url('room-bg-market-rivals-v1.jpg');background-size:cover;background-position:center 47%;box-shadow:inset 0 1px rgba(255,246,210,.16),0 14px 36px rgba(0,0,0,.44);color:#fff1c4}.marketrivals:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 74%,rgba(255,215,112,.2),transparent 24%);opacity:0}.marketrivals.answer:after{animation:marketRivalGlow .65s ease-out}.marketrivalhead{position:relative;z-index:1;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.marketrivaltitle{font:900 23px/1 Georgia,serif}.marketrivalcopy{max-width:670px;margin-top:4px;color:#d3dfd6;font-size:10px;line-height:1.3}.marketrivalcareer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.marketrivalchip{padding:4px 7px;border:1px solid rgba(255,221,135,.3);border-radius:999px;background:rgba(3,17,19,.82);color:#f5deaa;font-size:8px;font-weight:900}.marketrivallegend{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.marketrivallaw{padding:6px 8px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(4,15,16,.75);font-size:8px;color:#cbdad0}.marketrivallaw b{display:block;color:#ffe29b;font-size:9px}.marketrivalroster{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:9px}.marketrivalcard{display:flex;flex-direction:column;min-width:0;min-height:150px;padding:8px;border:1px solid rgba(255,255,255,.17);border-radius:11px;background:linear-gradient(180deg,rgba(49,30,17,.85),rgba(5,14,16,.94));color:#f7e8c0}.marketrivalcard.teal{border-color:rgba(73,203,192,.42)}.marketrivalcard.plum{border-color:rgba(192,118,210,.42)}.marketrivalcard.crimson{border-color:rgba(220,105,77,.44)}.marketrivalcard.indigo{border-color:rgba(116,132,218,.5)}.marketrivalcard.locked{filter:saturate(.45);opacity:.68}.marketrivalidentity{display:flex;align-items:center;gap:5px}.marketrivalidentity i{font-style:normal;font-size:24px}.marketrivalidentity b{display:block;font:900 11px/1.05 Georgia,serif}.marketrivalidentity small{display:block;color:#e4c779;font-size:7px}.marketrivaldoctrine{flex:1;margin:6px 0;color:#c8d5cd;font-size:7.5px;line-height:1.25}.marketrivalseals{font-size:7px;color:#efcf83}.marketrivalcard .btn{width:100%;min-height:31px;margin-top:5px;padding:4px;font-size:8px}.marketrivalarena{position:relative;z-index:1;margin-top:10px;padding:11px;border:1px solid rgba(255,228,158,.3);border-radius:13px;background:rgba(3,13,15,.8)}.marketrivalhud{display:grid;grid-template-columns:repeat(5,auto);gap:5px}.marketrivalstat{padding:5px 7px;border-radius:8px;background:rgba(0,0,0,.32);font-size:7px;color:#c9d7cf}.marketrivalstat b{display:block;color:#fff0ae;font-size:11px}.marketrivaltelegraph{display:grid;grid-template-columns:minmax(145px,.72fr) minmax(0,1.7fr);gap:8px;margin-top:8px}.marketrivalmove{display:grid;place-items:center;align-content:center;min-height:126px;padding:10px;text-align:center;border:1px solid rgba(255,216,126,.38);border-radius:12px;background:radial-gradient(circle at 50% 20%,rgba(255,206,97,.23),transparent 62%),rgba(45,27,14,.8)}.marketrivalmove i{font-style:normal;font-size:36px}.marketrivalmove b{margin-top:4px;font:900 15px Georgia,serif}.marketrivalmove small{margin-top:3px;color:#ddc98f;font-size:8px}.marketrivaltactics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.marketrivaltactic{position:relative;min-width:0;min-height:126px;padding:9px;text-align:left;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:linear-gradient(145deg,rgba(64,36,18,.92),rgba(10,24,23,.95));color:#f7e7bb;cursor:pointer;transition:transform .13s ease,border-color .13s ease}.marketrivaltactic:nth-child(2){background:linear-gradient(145deg,rgba(13,67,61,.92),rgba(8,22,24,.95))}.marketrivaltactic:nth-child(3){background:linear-gradient(145deg,rgba(40,45,85,.92),rgba(18,19,29,.95))}.marketrivaltactic:hover,.marketrivaltactic:focus-visible{transform:translateY(-3px);border-color:#ffe18d;outline:none}.marketrivaltactic i{font-style:normal;font-size:25px}.marketrivaltactic b{display:block;margin-top:4px;font:900 12px Georgia,serif}.marketrivaltactic span{display:block;margin-top:5px;color:#c7d6cd;font-size:7.5px;line-height:1.25}.marketrivaltactic em{display:block;margin-top:7px;color:#ffe19a;font-size:7px;font-style:normal;font-weight:900}.marketrivalcall{position:absolute;z-index:4;left:50%;top:58%;transform:translate(-50%,-50%);padding:9px 14px;border:1px solid #ffe198;border-radius:999px;background:rgba(6,25,23,.96);color:#fff0a8;font:900 15px Georgia,serif;box-shadow:0 12px 42px #000;pointer-events:none;animation:marketRushCall .75s ease-out forwards}.marketrivalspark{position:absolute;z-index:5;width:7px;height:7px;border-radius:50%;background:#ffe08a;pointer-events:none;animation:marketRivalSpark .7s ease-out forwards}.marketrivalwin{position:fixed;z-index:2810;left:50%;top:13%;transform:translateX(-50%);width:min(480px,92vw);padding:23px;text-align:center;border:2px solid #efc96e;border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(255,219,110,.28),transparent 49%),linear-gradient(145deg,#4d2e1b,#123936 65%,#30203f);color:#fff1bd;box-shadow:0 30px 100px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketrivalwin .seal{font-size:48px}.marketrivalwin b{display:block;margin:4px 0;font:900 28px Georgia,serif}.marketrivalwin small{color:#cbe6d7}.marketrivalfacts{display:flex;justify-content:center;gap:6px;margin-top:9px}.marketrivalfacts span{padding:5px 7px;border-radius:8px;background:rgba(0,0,0,.26);font-size:8px}
  @keyframes marketRivalGlow{0%{opacity:0}35%{opacity:1}100%{opacity:0}}@keyframes marketRivalSpark{0%{opacity:0;transform:translate(0,0) scale(.5)}25%{opacity:1}100%{opacity:0;transform:translate(var(--rx),var(--ry)) scale(1.4)}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketrivals{margin:4px 1px;padding:8px;background-position:center}.marketrivalhead{display:block}.marketrivaltitle{font-size:18px}.marketrivalcopy{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketrivalcareer{justify-content:flex-start;margin-top:5px}.marketrivalchip{padding:3px 5px;font-size:7px}.marketrivallegend{gap:3px;margin-top:6px}.marketrivallaw{padding:4px;font-size:6.5px}.marketrivallaw b{font-size:7.5px}.marketrivalroster{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:min(72%,220px);overflow-x:auto;scroll-snap-type:x mandatory;gap:4px;margin-top:6px}.marketrivalcard{scroll-snap-align:start;min-height:125px;padding:6px}.marketrivaltelegraph{grid-template-columns:76px minmax(0,1fr);gap:4px}.marketrivalmove{min-height:104px;padding:4px}.marketrivalmove i{font-size:27px}.marketrivalmove b{font-size:10px}.marketrivaltactics{gap:3px}.marketrivaltactic{min-height:104px;padding:6px 4px}.marketrivaltactic i{font-size:20px}.marketrivaltactic b{font-size:9px}.marketrivaltactic span{font-size:6px}.marketrivaltactic em{font-size:6px}.marketrivalhud{grid-template-columns:repeat(5,1fr);gap:3px}.marketrivalstat{padding:3px;font-size:6px}.marketrivalstat b{font-size:8px}.marketrivalwin{top:10%;padding:18px}.marketrivalwin b{font-size:23px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.markethouses{padding:8px;background-position:center}.markethouseshead{display:block}.markethousestitle{font-size:17px}.markethousescopy{font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.markethousetotal{display:inline-block;margin-top:5px}.markethouseledger{gap:4px}.markethouseseal{padding:6px}.markethousesealhead i{font-size:16px}.markethousesealhead b{font-size:10px}.markethouseeffect{font-size:6.5px}.markethousefound{align-items:flex-end}.markethousechoice{padding:7px}.markethousechoicepanel{padding:11px}.markethousechoicetop h2{font-size:22px}.markethousechoicetop p{font-size:8px}.markethousechoices{gap:4px;margin-top:10px}.markethousepick{min-height:220px;padding:8px 4px}.markethousepick i{font-size:30px}.markethousepick b{font-size:12px}.markethousepick p{font-size:7px}.markethousepick strong{font-size:8px}.markethousepick span{padding:6px 4px;font-size:7px}.markethousewin{top:11%;padding:18px}.markethousewin b{font-size:23px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketrush{margin:4px 1px;padding:8px;background-position:center}.marketrushhead{display:block}.marketrushtitle{font-size:17px}.marketrushcopy{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketrushcareer{justify-content:flex-start;max-width:none;margin-top:5px}.marketrushchip{padding:3px 5px;font-size:7px}.marketrushlobby{grid-template-columns:minmax(0,1fr) 120px;gap:6px;margin-top:7px;padding:7px}.marketrushmedals{gap:3px}.marketrushmedal{padding:4px;font-size:6.5px}.marketrushstart{min-width:0}.marketrushstart .btn{min-height:35px;padding:4px;font-size:9px}.marketrushhint{font-size:6px}.marketrushhud{grid-template-columns:repeat(4,1fr);gap:3px;margin-top:6px}.marketrushstat{padding:3px 4px;font-size:6.5px}.marketrushstat b{font-size:9px}.marketrushtimer{grid-column:1/-1;height:5px}.marketrushdeal{grid-template-columns:74px minmax(0,1fr);gap:4px;margin-top:5px}.marketrushcargo{min-height:88px;padding:4px}.marketrushcargoicon{font-size:30px}.marketrushcargo b{font-size:10px}.marketrushcargo small{font-size:6.5px}.marketrushbids{gap:3px}.marketrushbid{min-height:88px;padding:5px 4px}.marketrushbuyer{font-size:7px}.marketrushamount{margin:7px 0 4px;font-size:13px}.marketrushnote{font-size:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marketrushend{margin-top:3px}.marketrushend .btn{font-size:7px}.marketrushwin{top:11%;padding:18px}.marketrushwin b{font-size:24px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketcaravan{margin:4px 1px;padding:8px;background-position:center}.marketcaravanhead{display:block}.marketcaravantitle{font-size:17px}.marketcaravancopy{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketcaravancareer{justify-content:flex-start;margin-top:5px}.marketcaravanchip{font-size:7px;padding:3px 5px}.marketcaravangrid{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:min(88%,295px);overflow-x:auto;scroll-snap-type:x mandatory;gap:5px;margin-top:7px}.marketcaravancard{scroll-snap-align:start;padding:7px}.marketcaravandest i{font-size:20px}.marketcaravandest b{font-size:14px}.marketcaravanstory{font-size:7.5px}.marketcaravanpaces .btn{min-height:36px;font-size:7px}.marketcaravanactive{padding:8px;margin-top:7px}.marketcaravanroute b{font-size:14px}.marketcaravanclaim{align-items:flex-end}.marketcaravanwin{top:12%;padding:18px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketorders{margin:4px 1px;padding:7px;background-position:center}.marketorderhead h3{font-size:14px}.marketordercopy{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:285px}.marketordercount{font-size:7px;padding:3px 5px}.marketorderoffers{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:min(82%,280px);overflow-x:auto;scroll-snap-type:x mandatory;gap:5px;margin-top:6px;padding-bottom:2px}.marketoffer{scroll-snap-align:start;padding:6px}.marketoffertitle{font-size:12px}.marketofferstory{font-size:7.5px}.marketoffer .btn{min-height:27px}.marketorderactive{padding:6px;margin-top:5px}.marketorderactivehead b{font-size:12px}.marketorderactivebody{grid-template-columns:1fr 104px;gap:5px;margin-top:5px}.marketordercargo{gap:2px;overflow:hidden}.marketordercargo .marketcargostep{width:28px;min-width:28px;height:27px;padding:0;font-size:13px}.marketorderinstruction{font-size:7px}.marketorderinstruction b{font-size:9px}.marketwritbadge{display:block;width:max-content;font-size:6px}}
  /* Six Masterworks: a spatial, permanent bazaar rather than another ledger grid. */
  /* Living Bazaar: the authoritative trade verb, spatialized before the progression archive. */
  .marketlivingmap{position:relative;overflow:hidden;margin:8px 1px;padding:14px;border:1px solid rgba(255,214,119,.72);border-radius:21px;background:linear-gradient(145deg,rgba(8,29,29,.96),rgba(38,23,13,.98));color:#fff1c4;box-shadow:inset 0 1px rgba(255,248,215,.22),0 22px 55px rgba(0,0,0,.56);isolation:isolate}.marketmaphead{display:flex;align-items:flex-start;justify-content:space-between;gap:13px}.marketmaphead h2{margin:3px 0 0;color:#fff0ae;font:900 clamp(25px,3.4vw,40px)/.95 Georgia,serif}.marketmaphead p{max-width:690px;margin:7px 0 0;color:#d5e3d9;font-size:10px;line-height:1.4}.marketcompass{flex:none;max-width:290px;padding:8px 10px;border:1px solid rgba(105,226,193,.45);border-radius:12px;background:linear-gradient(140deg,rgba(8,69,64,.88),rgba(45,31,16,.9));box-shadow:inset 0 1px rgba(255,255,255,.1)}.marketcompass b{display:block;color:#8ff1d4;font-size:8px;letter-spacing:.11em;text-transform:uppercase}.marketcompass span{display:block;margin:3px 0 6px;color:#fff1ba;font:900 13px Georgia,serif}.marketcompass button{width:100%;min-height:29px;font-size:8px}.marketmapdock{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:8px;margin-top:11px;padding:10px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:linear-gradient(120deg,rgba(5,22,25,.94),rgba(34,23,15,.93));box-shadow:inset 0 1px rgba(255,255,255,.08)}.marketmaproutehead{display:flex;align-items:center;gap:8px}.marketmaproutehead i{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:radial-gradient(circle at 35% 25%,#fff0ac,#c17b2e 69%,#274b43);font-style:normal;font-size:27px;box-shadow:inset 0 0 0 2px rgba(255,247,210,.25)}.marketmaproutehead b{display:block;color:#ffe29a;font:900 18px Georgia,serif}.marketmaproutehead small{display:block;margin-top:2px;color:#bcd6cb;font-size:8px}.marketmaprouteproof{display:flex;flex-wrap:wrap;gap:4px;margin:7px 0}.marketmaprouteproof span{padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.07);color:#d7e4dc;font-size:7px}.marketmaprouteproof span.focus{background:rgba(110,221,182,.18);color:#baf3d7}.marketmapbar{height:8px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.56);box-shadow:inset 0 1px 3px #000}.marketmapbarfill{height:100%;width:0;background:linear-gradient(90deg,#d4862d,#ffe172 58%,#68d9ba);box-shadow:0 0 12px rgba(255,222,109,.58);transition:width .2s linear}.marketmapactions{display:grid;grid-template-columns:1.15fr .85fr .9fr;gap:5px;margin-top:7px}.marketmapactions .btn{min-height:34px;padding:5px 6px;font-size:9px}.marketmapmanager{grid-column:1/-1;min-height:27px!important}.marketmapbuyset{display:flex;gap:3px}.marketmapbuyset button{flex:1;min-width:0;padding:3px 4px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:rgba(0,0,0,.25);color:#d9e2dc;font-size:7px;cursor:pointer}.marketmapbuyset button.on{border-color:#f0ca6d;background:#8c5b22;color:#fff3bd}.marketmapcircuit{padding:9px;border:1px solid rgba(255,213,102,.24);border-radius:11px;background:radial-gradient(circle at 50% 0,rgba(255,210,91,.12),transparent 52%),rgba(0,0,0,.23)}.marketmapcircuittop{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.marketmapcircuittop b{display:block;color:#ffe29a;font:900 16px Georgia,serif}.marketmapcircuittop small{display:block;margin-top:2px;color:#bdd4c8;font-size:7px;line-height:1.35}.marketmapcircuitbest{padding:4px 7px;border:1px solid rgba(255,226,139,.38);border-radius:999px;background:rgba(0,0,0,.35);color:#ffe09a;font-size:7px;font-weight:950;white-space:nowrap}.marketcircuitroad{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin:9px 0 6px}.marketcircuitroad i{position:relative;height:8px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 2px #000}.marketcircuitroad i.on{background:linear-gradient(90deg,#e28c31,#ffe17e,#66d9bb);box-shadow:0 0 10px rgba(255,211,89,.55)}.marketmapcircuit em{display:block;color:#aebfb6;font-size:6.7px;font-style:normal;line-height:1.35}.marketmapstage{position:relative;height:500px;margin-top:9px;overflow:hidden;border:1px solid rgba(255,240,195,.32);border-radius:16px;background-image:linear-gradient(180deg,rgba(4,12,13,.04),rgba(3,16,17,.15)),url('room-bg-market-living-bazaar-v2.webp');background-size:cover;background-position:center;box-shadow:inset 0 0 45px rgba(2,10,11,.35)}.marketmapstage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(2,12,13,.2),transparent 16%,transparent 84%,rgba(2,12,13,.2)),linear-gradient(180deg,rgba(3,13,14,.08),transparent 58%,rgba(3,13,14,.3))}.marketmapnodes{position:absolute;inset:0;z-index:2}.marketmapnode{position:absolute;width:clamp(122px,15.5%,172px);min-height:65px;padding:7px;border:1px solid rgba(255,247,208,.46);border-radius:13px;background:linear-gradient(145deg,rgba(9,28,28,.91),rgba(57,33,17,.89));color:#fff1c5;text-align:left;box-shadow:0 10px 28px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.12);backdrop-filter:blur(4px);cursor:pointer;transform:translate(-50%,-50%);transition:transform .16s ease,border-color .16s ease,filter .16s ease}.marketmapnode.p0{left:18%;top:22%}.marketmapnode.p1{left:50%;top:19%}.marketmapnode.p2{left:82%;top:22%}.marketmapnode.p3{left:18%;top:78%}.marketmapnode.p4{left:50%;top:81%}.marketmapnode.p5{left:82%;top:78%}.marketmapnode:hover,.marketmapnode:focus-visible{z-index:4;outline:2px solid #fff0a2;outline-offset:2px;transform:translate(-50%,-50%) scale(1.06)}.marketmapnode.selected{z-index:3;border-color:#70e5c2;background:linear-gradient(145deg,rgba(13,92,81,.95),rgba(72,43,19,.94));box-shadow:0 0 0 2px rgba(90,231,192,.2),0 12px 34px rgba(0,0,0,.5),0 0 25px rgba(78,228,190,.34)}.marketmapnode.recommended{border-color:#ffe078}.marketmapnode.ready{animation:marketMapReady 1s ease-in-out infinite alternate}.marketmapnode.circuit{box-shadow:0 0 0 2px rgba(255,218,103,.22),0 0 25px rgba(255,192,57,.42)}.marketmapnode.locked{filter:saturate(.45);opacity:.7}.marketmapnode i{float:left;display:grid;place-items:center;width:31px;height:31px;margin-right:6px;border-radius:9px;background:rgba(0,0,0,.3);font-style:normal;font-size:20px}.marketmapnode b{display:block;overflow:hidden;color:#fff0b2;font:900 11px/1.1 Georgia,serif;white-space:nowrap;text-overflow:ellipsis}.marketmapnode small{display:block;margin-top:3px;color:#c6d8cf;font-size:6.5px;font-weight:900;letter-spacing:.07em}.marketmaplaw{margin-top:8px;padding:6px;text-align:center;border:1px solid rgba(255,255,255,.11);border-radius:9px;background:rgba(0,0,0,.22);color:#bdcbc4;font-size:7px}.marketcircuitwin{position:fixed;z-index:2860;left:50%;top:12%;transform:translateX(-50%);width:min(500px,92vw);padding:23px;text-align:center;border:2px solid #ffe083;border-radius:23px;background:radial-gradient(circle at 50% 0,rgba(255,224,110,.34),transparent 52%),linear-gradient(145deg,#61371c,#0d4d45 64%,#34264e);color:#fff2bd;box-shadow:0 32px 110px #000;animation:marketCircuitWin .48s cubic-bezier(.15,.9,.22,1.2)}.marketcircuitwin .seal{font-size:50px}.marketcircuitwin b{display:block;margin:5px 0;font:900 28px Georgia,serif}.marketcircuitwin small{color:#d2e9dc}@keyframes marketMapReady{to{filter:brightness(1.18);box-shadow:0 0 0 2px rgba(255,221,114,.25),0 0 30px rgba(255,184,54,.48)}}@keyframes marketCircuitWin{from{opacity:0;transform:translateX(-50%) translateY(20px) scale(.72)}}
  /* Merchant Tactics: every hand sale becomes one disclosed, tactile decision. */
  .markettactics{margin:7px 0;padding:7px;border:1px solid rgba(255,218,126,.23);border-radius:11px;background:linear-gradient(135deg,rgba(4,16,18,.72),rgba(45,25,13,.58))}.markettacticshead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.markettacticshead b{color:#ffe49c;font:900 11px Georgia,serif}.markettacticshead span{color:#b9cec3;font-size:6.5px}.markettacticgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.markettactic{position:relative;isolation:isolate;min-width:0;min-height:79px;overflow:hidden;padding:39px 6px 6px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background-image:linear-gradient(180deg,transparent 16%,rgba(2,10,12,.9) 61%,rgba(2,10,12,.98)),url('room-bg-market-tactics-v2.webp');background-repeat:no-repeat;background-size:300% auto;color:#dbe8df;text-align:left;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.1);transition:transform .14s ease,border-color .14s ease,filter .14s ease}.markettactic.street{background-position:left center}.markettactic.fair{background-position:center center}.markettactic.grand{background-position:right center}.markettactic:hover,.markettactic:focus-visible{outline:2px solid #fff0a0;outline-offset:1px;transform:translateY(-2px)}.markettactic[aria-pressed="true"]{border-color:#79e9c5;box-shadow:0 0 0 2px rgba(105,230,191,.18),inset 0 0 22px rgba(255,217,112,.12);filter:brightness(1.12)}.markettactic:disabled{cursor:default}.markettactic:disabled:not([aria-pressed="true"]){filter:saturate(.45) brightness(.66)}.markettactic b{display:block;color:#fff0b0;font:900 10px/1 Georgia,serif;text-shadow:0 2px 5px #000}.markettactic small{display:block;margin-top:2px;color:#d9e6df;font-size:6.3px;font-weight:900}.markettactic em{display:block;margin-top:2px;color:#9fc5b6;font-size:5.7px;font-style:normal;line-height:1.18}.markettacticlock{position:absolute;z-index:2;right:4px;top:4px;padding:2px 4px;border-radius:99px;background:#0d6d5d;color:#d9fff1;font-size:5px;font-weight:950;letter-spacing:.06em}.markettactics.compact{padding:4px;margin:5px 0}.markettactics.compact .markettacticshead{display:none}.markettactics.compact .markettactic{min-height:40px;padding:20px 4px 3px}.markettactics.compact .markettactic b{font-size:7px}.markettactics.compact .markettactic small{font-size:5.3px}.markettactics.compact .markettactic em{display:none}.markettacticcall{position:fixed;z-index:2870;left:50%;top:13%;transform:translateX(-50%);display:grid;grid-template-columns:78px 1fr;align-items:center;width:min(390px,90vw);min-height:94px;overflow:hidden;border:2px solid #ffe18a;border-radius:18px;background:#07191a;color:#fff1b7;box-shadow:0 25px 90px #000;animation:marketTacticCall 1.35s ease-out forwards;pointer-events:none}.markettacticcall i{align-self:stretch;background-image:url('room-bg-market-tactics-v2.webp');background-repeat:no-repeat;background-size:300% auto;background-position:center;font-style:normal}.markettacticcall.street i{background-position:left center}.markettacticcall.grand i{background-position:right center}.markettacticcall div{padding:11px}.markettacticcall b{display:block;color:#ffe49d;font:900 21px Georgia,serif}.markettacticcall small{display:block;margin-top:4px;color:#cbe3d7;font-size:8px}@keyframes marketTacticCall{0%{opacity:0;transform:translateX(-50%) translateY(20px) scale(.8)}20%,72%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}100%{opacity:0;transform:translateX(-50%) translateY(-12px) scale(.96)}}
  .marketmasterworks{position:relative;overflow:hidden;margin:8px 1px;padding:15px;border:1px solid rgba(255,211,111,.62);border-radius:19px;background:linear-gradient(180deg,rgba(9,15,17,.28),rgba(7,13,15,.72) 42%,rgba(7,10,11,.95)),url('room-bg-market-masterworks-v2.webp');background-size:cover;background-position:center;box-shadow:inset 0 1px rgba(255,248,213,.18),0 18px 45px rgba(0,0,0,.52);color:#fff2c8;isolation:isolate}.marketmasterworks:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 48%,rgba(255,213,112,.17),transparent 27%),linear-gradient(90deg,rgba(2,11,13,.4),transparent 32%,transparent 68%,rgba(2,11,13,.4))}.marketmasterworkhead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;text-shadow:0 2px 12px #000}.marketmasterworkhead h2{margin:3px 0 0;font:900 clamp(24px,3.4vw,39px)/.95 Georgia,serif;color:#fff0b0}.marketmasterworkhead p{max-width:720px;margin:7px 0 0;color:#e1e7d9;font-size:10px;line-height:1.35}.marketmasterworktotal{flex:none;padding:6px 10px;border:1px solid rgba(255,220,136,.5);border-radius:999px;background:rgba(4,18,20,.78);color:#ffe19a;font-size:9px;font-weight:950}.marketmasterworkmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:410px;margin-top:16px;align-content:space-between}.marketdistrict{position:relative;min-height:158px;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:linear-gradient(150deg,rgba(36,25,14,.9),rgba(5,19,21,.88));box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.09);backdrop-filter:blur(7px);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.marketdistrict:nth-child(2),.marketdistrict:nth-child(4){background:linear-gradient(150deg,rgba(65,35,57,.88),rgba(7,18,21,.9))}.marketdistrict:nth-child(3),.marketdistrict:nth-child(6){background:linear-gradient(150deg,rgba(13,54,53,.89),rgba(7,17,21,.91))}.marketdistrict:hover{transform:translateY(-3px);border-color:rgba(255,222,143,.65)}.marketdistrict.ready{border-color:#ffe08b;box-shadow:0 0 0 2px rgba(255,213,111,.16),0 12px 34px rgba(0,0,0,.48),0 0 30px rgba(242,177,62,.2);animation:marketMasterworkReady 1.35s ease-in-out infinite alternate}.marketdistrict.complete{border-color:rgba(116,226,182,.64);background:linear-gradient(145deg,rgba(40,60,35,.91),rgba(7,34,34,.92))}.marketdistricthead{display:flex;align-items:center;gap:7px}.marketdistricthead i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(0,0,0,.35);font-style:normal;font-size:21px}.marketdistricthead b{display:block;color:#fff0b9;font:900 14px/1.05 Georgia,serif}.marketdistricthead small{display:block;margin-top:2px;color:#e1c87f;font-size:7px}.marketdistrictstage{margin-top:7px;color:#e8efdf;font-size:9px;font-weight:900}.marketdistricttiers{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-top:5px}.marketdistricttiers i{height:5px;border-radius:99px;background:rgba(255,255,255,.1)}.marketdistricttiers i.built{background:linear-gradient(90deg,#b9692d,#ffe083);box-shadow:0 0 7px rgba(255,196,72,.45)}.marketdistricttiers i.next{border:1px solid rgba(255,220,132,.55)}.marketdistrictneeds{display:flex;flex-wrap:wrap;gap:3px;margin-top:7px}.marketdistrictneeds span{padding:3px 5px;border-radius:6px;background:rgba(0,0,0,.32);color:#cbd2c8;font-size:6.8px}.marketdistrictneeds span.met{color:#b8f0c9;background:rgba(11,70,50,.52)}.marketbuild{width:100%;min-height:29px;margin-top:7px;padding:4px;font-size:8px}.marketdistrictopen{display:block;width:100%;margin-top:5px;padding:0;border:0;background:transparent;color:#d8c078;font-size:7px;text-decoration:underline;cursor:pointer}.marketdistrictcomplete{margin-top:11px;padding:7px;text-align:center;border-radius:8px;background:rgba(18,91,65,.55);color:#c9f5d6;font-size:7.5px;font-weight:950;letter-spacing:.05em}.marketmasterworklaw{margin-top:11px;padding:6px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(3,12,14,.62);color:#cedbd1;font-size:8px}.marketmasterworkbadge{display:inline-block;margin-top:4px;padding:2px 5px;border:1px solid rgba(102,218,177,.42);border-radius:999px;background:rgba(9,69,52,.52);color:#c7f2d3;font-size:7px;font-weight:900}.marketmasterworkcall{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);padding:7px 11px;border:1px solid #ffe19a;border-radius:999px;background:rgba(5,24,22,.96);color:#fff0a7;font:900 11px Georgia,serif;white-space:nowrap;box-shadow:0 12px 38px #000;animation:marketRushCall 1s ease-out forwards;pointer-events:none}.marketdistrict.built{animation:marketMasterworkBuild .9s cubic-bezier(.15,.9,.22,1.15)}.marketdistrict.traded{box-shadow:0 0 0 2px rgba(105,225,176,.3),0 0 30px rgba(94,221,169,.28)}.marketmasterworkwin{position:fixed;z-index:2820;left:50%;top:12%;transform:translateX(-50%);width:min(500px,92vw);padding:24px;text-align:center;border:2px solid #f0c768;border-radius:23px;background:radial-gradient(circle at 50% 0,rgba(255,222,115,.32),transparent 52%),linear-gradient(145deg,#5a341b,#123f3a 65%,#29253e);color:#fff2bf;box-shadow:0 32px 110px #000;animation:marketContractWin .45s cubic-bezier(.15,.9,.22,1.25)}.marketmasterworkwin .seal{font-size:52px}.marketmasterworkwin b{display:block;margin:5px 0;font:900 30px Georgia,serif}.marketmasterworkwin small{color:#d0eadb}
  @keyframes marketMasterworkReady{to{box-shadow:0 0 0 2px rgba(255,213,111,.22),0 14px 38px rgba(0,0,0,.5),0 0 38px rgba(242,177,62,.34)}}@keyframes marketMasterworkBuild{0%{transform:scale(.94);filter:brightness(1.6)}45%{transform:scale(1.035);filter:brightness(1.25)}100%{transform:none;filter:none}}
  /* Mosaic Chronicle: existing career truth becomes one collectible civic artwork. */
  .marketmasterworks:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.46;transition:background .35s ease,opacity .35s ease}.marketmasterworks[data-market-atmosphere="stone"]:after{background:linear-gradient(180deg,rgba(87,83,70,.24),rgba(18,20,18,.42));mix-blend-mode:saturation}.marketmasterworks[data-market-atmosphere="sunrise"]:after{background:radial-gradient(circle at 20% 8%,rgba(255,202,89,.56),transparent 42%),linear-gradient(120deg,rgba(229,112,43,.18),transparent 55%);mix-blend-mode:screen}.marketmasterworks[data-market-atmosphere="aegean"]:after{background:radial-gradient(circle at 70% 12%,rgba(85,218,230,.4),transparent 40%),linear-gradient(180deg,rgba(24,91,125,.24),rgba(8,34,50,.28));mix-blend-mode:screen}.marketmasterworks[data-market-atmosphere="royal"]:after{background:radial-gradient(circle at 50% 4%,rgba(222,124,217,.34),transparent 38%),linear-gradient(180deg,rgba(72,30,107,.3),rgba(7,22,34,.36));mix-blend-mode:screen}.marketmasterworks[data-market-atmosphere="festival"]:after{opacity:.72;background:radial-gradient(circle at 8% 12%,#ffd66b 0 3px,transparent 4px),radial-gradient(circle at 25% 7%,#ff9f55 0 3px,transparent 4px),radial-gradient(circle at 43% 14%,#ffe69b 0 3px,transparent 4px),radial-gradient(circle at 62% 8%,#ffb768 0 3px,transparent 4px),radial-gradient(circle at 80% 13%,#ffe47d 0 3px,transparent 4px),radial-gradient(circle at 94% 6%,#ffad6c 0 3px,transparent 4px),linear-gradient(180deg,rgba(29,23,72,.26),rgba(7,32,38,.4));background-size:100% 100%;filter:drop-shadow(0 0 5px #ffc860);animation:marketChronicleLanterns 2.4s ease-in-out infinite alternate}
  .marketchronicle{position:relative;margin:8px 1px;padding:14px;border:1px solid rgba(242,202,112,.58);border-radius:19px;background:linear-gradient(145deg,rgba(7,20,23,.98),rgba(35,22,13,.96));box-shadow:inset 0 1px rgba(255,246,205,.15),0 18px 45px rgba(0,0,0,.48);color:#fff0c1}.marketchroniclehead{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.marketchronicletitle{font:900 clamp(22px,3vw,34px)/1 Georgia,serif;color:#ffe59b}.marketchroniclecopy{max-width:690px;margin-top:5px;color:#cddbd3;font-size:9px;line-height:1.35}.marketchroniclecount{flex:none;padding:6px 10px;border:1px solid rgba(255,221,132,.48);border-radius:999px;background:rgba(2,14,16,.78);color:#ffe099;font-size:9px;font-weight:950}.marketchroniclechapters{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:9px}.marketchroniclechapter{padding:5px 7px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(0,0,0,.24);font-size:7px;color:#bdc9c2}.marketchroniclechapter b{display:block;color:#f6d78e;font-size:8px}.marketchroniclechapter.complete{border-color:rgba(112,227,178,.4);background:rgba(15,84,59,.34);color:#c5efd7}.marketchronicleart{position:relative;display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(4,1fr);aspect-ratio:3/2;margin-top:10px;overflow:hidden;border:2px solid #c99442;border-radius:12px;background:url('room-bg-market-chronicle-v2.webp') center/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(255,240,179,.32),0 14px 38px #000}.marketchronicletile{position:relative;min-width:0;padding:5px;border:1px solid rgba(241,204,127,.23);background:linear-gradient(150deg,rgba(3,14,17,.93),rgba(13,13,12,.9));color:#bfcac3;text-align:left;cursor:pointer;transition:background .24s ease,transform .16s ease,box-shadow .2s ease}.marketchronicletile:hover,.marketchronicletile:focus-visible{z-index:2;outline:2px solid #ffe196;outline-offset:-2px;transform:scale(1.035)}.marketchronicletile.complete{background:linear-gradient(180deg,rgba(2,12,14,.08),rgba(2,12,14,.35));box-shadow:inset 0 0 18px rgba(255,220,122,.14)}.marketchronicletile.complete:hover,.marketchronicletile.complete:focus-visible{background:rgba(4,17,18,.56)}.marketchronicletile i{display:block;font-style:normal;font-size:clamp(15px,2.1vw,27px);filter:saturate(.55)}.marketchronicletile.complete i{filter:none;text-shadow:0 2px 7px #000}.marketchronicletile b{display:block;margin-top:2px;color:#d4c89f;font:900 clamp(7px,1vw,11px)/1.05 Georgia,serif;text-shadow:0 1px 4px #000}.marketchronicletile.complete b{color:#fff0b0}.marketchronicletile small{display:block;margin-top:3px;color:#aeb9b3;font-size:clamp(5.5px,.7vw,8px)}.marketchronicletile.complete small{color:#d7efdc}.marketchronicletile .marketchroniclebar{position:absolute;left:5px;right:5px;bottom:4px;height:3px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}.marketchronicletile .marketchroniclebar span{display:block;height:100%;background:linear-gradient(90deg,#b66b32,#ffe08b)}.marketchronicledetail{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:8px;padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(2,13,15,.72)}.marketchronicledetail i{font-style:normal;font-size:26px}.marketchronicledetail b{display:block;color:#ffe19a;font:900 13px Georgia,serif}.marketchronicledetail p{margin:2px 0 0;color:#c5d3cb;font-size:8px}.marketchronicledetail strong{color:#d9eddd;font-size:9px;white-space:nowrap}.marketatmospheres{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:9px}.marketatmospheres>span{margin-right:3px;color:#dfcf9e;font-size:8px;font-weight:900}.marketatmosphere{min-height:28px;padding:4px 7px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(3,15,17,.72);color:#c8d2cc;font-size:7px;cursor:pointer}.marketatmosphere.active{border-color:#ffe08a;background:linear-gradient(90deg,#754322,#1c625b);color:#fff0b3;box-shadow:0 0 15px rgba(255,201,86,.2)}.marketatmosphere:disabled{opacity:.38;cursor:not-allowed}.marketchroniclelaw{margin-top:8px;text-align:center;color:#adbbb3;font-size:7px}.marketchroniclewin{position:fixed;z-index:2830;left:50%;top:11%;transform:translateX(-50%);width:min(500px,92vw);padding:23px;text-align:center;border:2px solid #f0ca70;border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(255,222,111,.34),transparent 51%),linear-gradient(145deg,#5a341b,#113d3a 65%,#2d2550);color:#fff1ba;box-shadow:0 32px 110px #000;animation:marketChronicleReveal .48s cubic-bezier(.15,.9,.22,1.2)}.marketchroniclewin .seal{font-size:50px}.marketchroniclewin b{display:block;margin:5px 0;font:900 28px Georgia,serif}.marketchroniclewin small{color:#d1e9da}.marketchroniclewin em{display:block;margin-top:8px;color:#ffe092;font-size:9px;font-style:normal;font-weight:900}
  @keyframes marketChronicleReveal{from{opacity:0;transform:translateX(-50%) translateY(22px) scale(.74)}}@keyframes marketChronicleLanterns{to{opacity:.94;filter:drop-shadow(0 0 9px #ffd36c)}}
  /* Routeworks: a deterministic rotate-the-roads campaign, with code-owned connection truth. */
  .marketrouteworks{position:relative;overflow:hidden;margin:8px 1px;padding:15px;border:1px solid rgba(240,198,104,.65);border-radius:20px;background:linear-gradient(135deg,rgba(3,13,17,.87),rgba(18,13,8,.84)),url('room-bg-market-routeworks-v2.webp') center/cover;color:#fff1c2;box-shadow:inset 0 1px rgba(255,246,207,.19),0 20px 48px rgba(0,0,0,.5);isolation:isolate}.marketrouteworks:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 50%,rgba(9,35,58,.14),rgba(2,9,12,.62) 75%);pointer-events:none}.marketrouteworks.laureled{border-color:#ffe48c;box-shadow:inset 0 1px rgba(255,250,214,.28),0 20px 48px rgba(0,0,0,.52),0 0 34px rgba(242,195,76,.22)}.marketroutehead{display:flex;align-items:flex-start;justify-content:space-between;gap:13px;text-shadow:0 2px 12px #000}.marketroutehead h2{margin:3px 0 0;font:900 clamp(24px,3.2vw,38px)/.95 Georgia,serif;color:#ffe39a}.marketroutehead p{max-width:720px;margin:6px 0 0;color:#d7e0d8;font-size:9px;line-height:1.4}.marketroutelaurel{flex:none;padding:6px 9px;border:1px solid rgba(255,222,128,.48);border-radius:999px;background:rgba(2,15,19,.82);color:#ffe199;font-size:8px;font-weight:950}.marketroutelevels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:10px}.marketroutelevel{min-width:0;padding:6px 4px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(1,12,16,.75);color:#c7d1ca;cursor:pointer}.marketroutelevel b{display:block;color:#f1d58f;font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketroutelevel small{display:block;margin-top:2px;color:#aebcb4;font-size:6px}.marketroutelevel.active{border-color:#ffe188;background:linear-gradient(145deg,rgba(118,65,25,.9),rgba(11,74,71,.88));box-shadow:0 0 17px rgba(255,206,94,.2)}.marketroutelevel:disabled{opacity:.38;cursor:not-allowed}.marketrouteplay{display:grid;grid-template-columns:minmax(260px,1fr) minmax(190px,.72fr);gap:12px;align-items:center;margin-top:10px}.marketrouteboard{display:grid;aspect-ratio:1;max-width:470px;width:100%;margin:auto;padding:4%;gap:4px;border:2px solid rgba(236,196,99,.7);border-radius:15px;background:rgba(2,18,34,.83);box-shadow:inset 0 0 40px rgba(0,0,0,.72),0 14px 34px rgba(0,0,0,.45)}.marketroutetile,.marketrouteempty{position:relative;min-width:0;min-height:0;border-radius:9px}.marketroutetile{overflow:hidden;border:1px solid rgba(255,222,138,.24);background:radial-gradient(circle,rgba(41,73,83,.93),rgba(8,27,42,.96));color:#fff;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:transform .16s ease,filter .2s ease,box-shadow .2s ease}.marketroutetile:hover,.marketroutetile:focus-visible{z-index:3;outline:2px solid #ffe48f;outline-offset:-2px;transform:scale(1.055)}.marketroutetile.connected{background:radial-gradient(circle,rgba(67,106,89,.98),rgba(8,43,51,.97));box-shadow:inset 0 0 17px rgba(255,218,100,.18),0 0 10px rgba(70,219,183,.18)}.marketroutearm{position:absolute;z-index:1;border-radius:99px;background:linear-gradient(90deg,#654e31,#9a7540);box-shadow:0 1px 2px #000}.marketroutearm.n,.marketroutearm.s{left:43%;width:14%;height:52%}.marketroutearm.e,.marketroutearm.w{top:43%;height:14%;width:52%}.marketroutearm.n{top:-2%}.marketroutearm.s{bottom:-2%}.marketroutearm.e{right:-2%}.marketroutearm.w{left:-2%}.marketroutetile.connected .marketroutearm{background:linear-gradient(90deg,#44b9ab,#ffe081);box-shadow:0 0 7px rgba(255,218,106,.56)}.marketroutehub{position:absolute;z-index:2;left:50%;top:50%;display:grid;place-items:center;width:31%;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid rgba(255,224,145,.45);border-radius:50%;background:#142d35;color:#ffe28f;font-size:clamp(9px,1.55vw,18px);box-shadow:0 2px 7px #000}.marketroutetile.connected .marketroutehub{background:#17675f;color:#fff1a8;box-shadow:0 0 12px rgba(255,220,102,.58)}.marketroutetile.target .marketroutehub{border-color:#ffdd72}.marketroutetile.source .marketroutehub{background:#755020}.marketrouteempty{background:rgba(9,23,29,.3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}.marketroutepanel{padding:13px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(1,13,18,.84);box-shadow:inset 0 1px rgba(255,255,255,.07)}.marketroutepanel h3{margin:0;color:#ffe099;font:900 20px Georgia,serif}.marketroutepanel .district{margin-top:3px;color:#d7bc78;font-size:7px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.marketroutepanel p{margin:8px 0;color:#c9d8cf;font-size:8px;line-height:1.45}.marketroutemeters{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:8px 0}.marketroutemeter{padding:6px 3px;text-align:center;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.04);color:#d6e2da;font-size:7px}.marketroutemeter b{display:block;color:#ffe198;font-size:13px}.marketrouteactions{display:flex;gap:5px}.marketrouteactions button{flex:1;min-height:32px;font-size:7px}.marketrouteproof{margin-top:8px;color:#aebeb5;font-size:6.5px;line-height:1.35}.marketroutewin{position:fixed;z-index:2840;left:50%;top:10%;transform:translateX(-50%);width:min(500px,92vw);padding:23px;text-align:center;border:2px solid #f2cb70;border-radius:23px;background:radial-gradient(circle at 50% 0,rgba(255,225,119,.36),transparent 53%),linear-gradient(145deg,#5d3519,#0d4541 64%,#30274e);color:#fff2bd;box-shadow:0 32px 110px #000;animation:marketRouteResolve .48s cubic-bezier(.15,.9,.22,1.2)}.marketroutewin .seal{font-size:50px}.marketroutewin b{display:block;margin:5px 0;font:900 27px Georgia,serif}.marketroutewin small{color:#d3eadc}.marketroutewin em{display:block;margin-top:8px;color:#ffe08f;font-size:10px;font-style:normal;font-weight:950}.marketrouteworks.pulsing .marketroutetile.connected{filter:brightness(1.5);box-shadow:0 0 22px rgba(80,238,199,.55)}
  @keyframes marketRouteResolve{from{opacity:0;transform:translateX(-50%) translateY(22px) scale(.72)}}
  /* Cargo Cascade: authored swap-and-chain play with generated mosaic cargo tokens. */
  .marketcascade{position:relative;overflow:hidden;margin:8px 1px;padding:15px;border:1px solid rgba(118,224,201,.58);border-radius:20px;background:radial-gradient(circle at 50% 46%,rgba(15,70,82,.28),transparent 42%),linear-gradient(145deg,#061923,#17130d 72%,#2a1d37);color:#fff1c5;box-shadow:inset 0 1px rgba(255,246,207,.18),0 20px 48px rgba(0,0,0,.52);isolation:isolate}.marketcascade:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.24;background:url('room-bg-market-cascade-tokens-v2.webp') center/cover;filter:saturate(.7) brightness(.55);pointer-events:none}.marketcascade.wreathed{border-color:#ffe18a;box-shadow:inset 0 1px rgba(255,250,214,.27),0 20px 48px rgba(0,0,0,.54),0 0 36px rgba(62,220,181,.2)}.marketcascade.sunburstready:after{content:'';position:absolute;z-index:-1;inset:-35%;background:conic-gradient(from 0deg,transparent,rgba(255,220,108,.09),transparent 18%,rgba(77,229,203,.08),transparent 42%);animation:cascadeAura 22s linear infinite}.cascadehead{display:flex;align-items:flex-start;justify-content:space-between;gap:13px;text-shadow:0 2px 12px #000}.cascadehead h2{margin:3px 0 0;font:900 clamp(24px,3.2vw,38px)/.95 Georgia,serif;color:#ffe39a}.cascadehead p{max-width:740px;margin:6px 0 0;color:#d5e3dc;font-size:9px;line-height:1.4}.cascadewreath{flex:none;padding:6px 9px;border:1px solid rgba(255,222,128,.48);border-radius:999px;background:rgba(2,15,19,.84);color:#ffe199;font-size:8px;font-weight:950}.cascadelevels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:10px}.cascadelevel{min-width:0;padding:6px 4px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(1,12,18,.8);color:#c7d5cf;cursor:pointer}.cascadelevel b{display:block;color:#f2d791;font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cascadelevel small{display:block;margin-top:2px;color:#aebdb6;font-size:6px}.cascadelevel.sunburst{border-color:rgba(255,207,92,.3);background:linear-gradient(145deg,rgba(50,37,11,.82),rgba(2,24,29,.86))}.cascadelevel.active{border-color:#77e3c5;background:linear-gradient(145deg,rgba(20,99,89,.92),rgba(86,52,25,.9));box-shadow:0 0 18px rgba(73,225,188,.2)}.cascadelevel:disabled{opacity:.38;cursor:not-allowed}.cascadeplay{display:grid;grid-template-columns:minmax(300px,1fr) minmax(210px,.73fr);gap:13px;align-items:center;margin-top:10px}.cascadeboard{position:relative;display:grid;aspect-ratio:1;max-width:510px;width:100%;margin:auto;padding:2.4%;gap:4px;border:2px solid rgba(238,199,100,.72);border-radius:17px;background:radial-gradient(circle,#0d3041,#031522 75%);box-shadow:inset 0 0 48px rgba(0,0,0,.74),0 15px 38px rgba(0,0,0,.48)}.cascadetile{position:relative;min-width:0;min-height:0;padding:0;overflow:hidden;border:1px solid rgba(255,230,162,.2);border-radius:10px;background:linear-gradient(145deg,rgba(39,71,78,.74),rgba(7,21,33,.92));cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:transform .13s ease,border-color .13s ease,filter .18s ease}.cascadetile:hover,.cascadetile:focus-visible{z-index:3;outline:2px solid #ffe293;outline-offset:-2px;transform:scale(1.055)}.cascadetile.selected{z-index:4;border-color:#76f0d2;box-shadow:0 0 0 2px rgba(82,233,197,.28),0 0 22px rgba(72,230,190,.45);transform:scale(1.08)}.cascadegem{position:absolute;inset:6%;border-radius:50%;background-image:url('room-bg-market-cascade-tokens-v2.webp');background-size:300% 200%;background-repeat:no-repeat;filter:drop-shadow(0 5px 5px rgba(0,0,0,.5));transition:transform .18s cubic-bezier(.18,.86,.2,1.2),filter .18s ease}.cascadegem.c0{background-position:0 0}.cascadegem.c1{background-position:50% 0}.cascadegem.c2{background-position:100% 0}.cascadegem.c3{background-position:0 100%}.cascadegem.c4{background-position:50% 100%}.cascadegem.c5{background-position:100% 100%}.cascadespecial{position:absolute;z-index:2;inset:-2%;background-image:url('room-bg-market-cascade-sunbursts-v2.webp');background-size:300% 100%;background-repeat:no-repeat;filter:drop-shadow(0 0 7px #fff0a5) drop-shadow(0 0 10px rgba(52,229,207,.75));pointer-events:none}.cascadespecial.row{background-position:0 50%}.cascadespecial.column{background-position:50% 50%}.cascadespecial.cross{background-position:100% 50%}.cascadetile.burst .cascadegem{animation:cascadeBurst .32s cubic-bezier(.15,.9,.22,1.2)}.cascadetile.settle .cascadegem{animation:cascadeSettle .3s cubic-bezier(.18,.9,.2,1.25)}.cascadetile.sunburst-created{z-index:5;animation:cascadeForge .55s cubic-bezier(.12,.86,.16,1.28)}.cascadetile.sunburst-activated{z-index:6;animation:cascadeDetonate .35s ease-out}.marketcascade.invalid .cascadetile.selected,.cascadetile.invalid{animation:cascadeDeny .3s ease}.cascadechain{position:absolute;z-index:8;left:50%;top:46%;transform:translate(-50%,-50%);padding:8px 13px;border:1px solid #ffe08e;border-radius:999px;background:rgba(4,30,34,.94);color:#fff1a7;font:900 clamp(12px,2vw,21px) Georgia,serif;box-shadow:0 12px 34px #000;pointer-events:none;animation:cascadeCall .7s ease-out forwards}.cascadespark{position:absolute;z-index:7;width:6px;height:6px;border-radius:50%;background:#ffe18a;box-shadow:0 0 9px #58e7c2;animation:cascadeSpark .6s ease-out forwards;pointer-events:none}.cascadepanel{padding:13px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(1,13,18,.86);box-shadow:inset 0 1px rgba(255,255,255,.07)}.cascadepanel .patron{color:#7fe3c8;font-size:7px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.cascadepanel h3{margin:3px 0 0;color:#ffe099;font:900 20px Georgia,serif}.cascadepanel p{margin:7px 0;color:#c9d9d1;font-size:8px;line-height:1.45}.cascadesunburstguide{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:7px 0}.cascadesunburstguide span{min-width:0;padding:5px 3px;text-align:center;border:1px solid rgba(255,215,105,.25);border-radius:8px;background:rgba(93,66,16,.2);color:#dceae2;font-size:5.8px}.cascadesunburstguide i{display:block;width:31px;aspect-ratio:1;margin:0 auto 2px;background:url('room-bg-market-cascade-sunbursts-v2.webp') 0 50%/300% 100% no-repeat;filter:drop-shadow(0 0 5px #ffe6a2)}.cascadesunburstguide .column{background-position:50% 50%}.cascadesunburstguide .cross{background-position:100% 50%}.cascadeorders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:8px 0}.cascadeorder{position:relative;min-width:0;padding:6px 4px;text-align:center;border:1px solid rgba(255,255,255,.11);border-radius:9px;background:rgba(255,255,255,.04);color:#d6e4dc;font-size:6.5px}.cascadeorder i{display:block;font-style:normal;font-size:17px}.cascadeorder b{display:block;color:#ffe198;font-size:10px}.cascadeorder.complete{border-color:rgba(94,229,183,.44);background:rgba(14,87,67,.42);color:#c8f2dc}.cascadestats{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:7px 0}.cascadestat{padding:5px 3px;text-align:center;border-radius:8px;background:rgba(0,0,0,.25);color:#bbc9c2;font-size:6.5px}.cascadestat b{display:block;color:#ffe098;font-size:12px}.cascadeactions{display:flex;gap:5px}.cascadeactions button{flex:1;min-height:32px;font-size:7px}.cascadeproof{margin-top:8px;color:#acbcb4;font-size:6.5px;line-height:1.38}.cascadewin{position:fixed;z-index:2850;left:50%;top:9%;transform:translateX(-50%);width:min(520px,92vw);padding:24px;text-align:center;border:2px solid #f2cb70;border-radius:23px;background:radial-gradient(circle at 50% 0,rgba(91,239,201,.3),transparent 52%),linear-gradient(145deg,#5b351a,#0c4b45 64%,#342652);color:#fff2bd;box-shadow:0 32px 110px #000;animation:cascadeWin .48s cubic-bezier(.15,.9,.22,1.2)}.cascadewin .seal{font-size:51px}.cascadewin b{display:block;margin:5px 0;font:900 28px Georgia,serif}.cascadewin small{color:#d3eadf}.cascadewin em{display:block;margin-top:8px;color:#ffe08f;font-size:10px;font-style:normal;font-weight:950}@keyframes cascadeBurst{0%{transform:scale(1)}45%{transform:scale(1.28) rotate(4deg);filter:brightness(1.8) drop-shadow(0 0 14px #ffe071)}100%{transform:scale(.15);opacity:.2}}@keyframes cascadeSettle{from{transform:translateY(-34%) scale(.86);filter:brightness(1.45)}}@keyframes cascadeForge{0%{opacity:.15;transform:scale(.35) rotate(-16deg)}60%{filter:brightness(1.9);box-shadow:0 0 35px #ffe074}100%{opacity:1;transform:scale(1)}}@keyframes cascadeDetonate{30%{transform:scale(1.16);filter:brightness(2.4)}100%{transform:scale(.35);opacity:.25}}@keyframes cascadeAura{to{transform:rotate(360deg)}}@keyframes cascadeDeny{25%{transform:translateX(-5px)}55%{transform:translateX(5px)}80%{transform:translateX(-2px)}}@keyframes cascadeCall{to{opacity:0;transform:translate(-50%,-95%) scale(1.08)}}@keyframes cascadeSpark{to{opacity:0;transform:translate(var(--cx),var(--cy)) scale(.2)}}@keyframes cascadeWin{from{opacity:0;transform:translateX(-50%) translateY(23px) scale(.72)}}
  .marketcascade.constellationready{border-color:rgba(153,243,255,.72);box-shadow:inset 0 1px rgba(255,255,255,.22),0 20px 48px rgba(0,0,0,.56),0 0 42px rgba(111,211,255,.16)}.cascadelevel.constellation{border-color:rgba(142,223,255,.48);background:linear-gradient(145deg,rgba(30,34,88,.92),rgba(3,37,47,.9))}.cascadelevel.constellation b{color:#e9f7ff}.cascadeboard.constellation{background:radial-gradient(circle at 50% 42%,rgba(70,54,132,.58),transparent 48%),linear-gradient(155deg,#06182d,#061d26 67%,#21163f);box-shadow:inset 0 0 55px rgba(0,0,0,.74),0 15px 38px rgba(0,0,0,.52),0 0 28px rgba(110,222,255,.16)}.cascadespecial.prism{inset:-7%;background-image:url('room-bg-market-cascade-constellations-v2.webp');background-size:400% 100%;background-position:0 50%;filter:drop-shadow(0 0 8px #fff) drop-shadow(0 0 14px rgba(112,224,255,.95));animation:cascadePrism 3.2s ease-in-out infinite}.cascadechain.combo{display:flex;align-items:center;gap:8px;padding:7px 15px 7px 8px;border-color:#d8f8ff;background:linear-gradient(120deg,rgba(18,30,76,.97),rgba(4,54,57,.97));color:#fff7c6;box-shadow:0 14px 40px #000,0 0 34px rgba(120,229,255,.56);letter-spacing:.04em}.cascadecomboicon{display:block;width:42px;aspect-ratio:1;flex:none;background:url('room-bg-market-cascade-constellations-v2.webp') 33.333% 50%/400% 100% no-repeat;filter:drop-shadow(0 0 8px #fff2ad)}.cascadecomboicon.prism-cargo,.cascadecomboicon.prism-row,.cascadecomboicon.prism-column,.cascadecomboicon.prism-cross{background-position:0 50%}.cascadecomboicon.pharos-row,.cascadecomboicon.pharos-column,.cascadecomboicon.twin-pharos{background-position:66.667% 50%}.cascadecomboicon.twin-prism{background-position:100% 50%}.cascadeconstellationguide{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:7px 0}.cascadeconstellationguide span{min-width:0;padding:4px 2px;text-align:center;border:1px solid rgba(142,225,255,.28);border-radius:8px;background:rgba(27,33,88,.35);color:#dceef1;font-size:5.35px;line-height:1.2}.cascadeconstellationguide i{display:block;width:34px;aspect-ratio:1;margin:0 auto 2px;background:url('room-bg-market-cascade-constellations-v2.webp') 0 50%/400% 100% no-repeat;filter:drop-shadow(0 0 6px rgba(184,241,255,.9))}.cascadeconstellationguide .beam{background-position:33.333% 50%}.cascadeconstellationguide .weave{background-position:66.667% 50%}.cascadeconstellationguide .grand{background-position:100% 50%}@keyframes cascadePrism{50%{transform:rotate(7deg) scale(1.08);filter:drop-shadow(0 0 11px #fff) drop-shadow(0 0 18px rgba(112,224,255,1))}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketlivingmap{margin:4px 1px;padding:8px;border-radius:15px}.marketmaphead{display:block}.marketmaphead h2{font-size:23px}.marketmaphead p{margin-top:4px;font-size:7.5px;line-height:1.3}.marketcompass{max-width:none;margin-top:7px;padding:6px 7px}.marketcompass span{display:inline;margin:0 5px;font-size:10px}.marketcompass button{width:auto;float:right;min-height:24px;padding:3px 6px}.marketmapdock{grid-template-columns:1fr;margin-top:7px;padding:7px}.marketmaproutehead i{width:35px;height:35px;font-size:22px}.marketmaproutehead b{font-size:15px}.marketmaprouteproof{margin:5px 0}.marketmapactions{grid-template-columns:1.1fr .9fr .8fr;margin-top:5px}.marketmapactions .btn{min-height:30px;font-size:7.5px}.marketmapcircuit{padding:6px}.marketmapcircuittop b{font-size:13px}.marketcircuitroad{margin:6px 0 4px}.marketmapstage{height:390px;margin-top:7px;background-image:linear-gradient(180deg,rgba(4,12,13,.04),rgba(3,16,17,.18)),url('room-bg-market-living-bazaar-mobile-v2.webp');background-size:100% 100%;background-position:center}.marketmapnode{width:42%;min-height:52px;padding:5px;border-radius:9px}.marketmapnode.p0{left:25%;top:15%}.marketmapnode.p1{left:75%;top:15%}.marketmapnode.p2{left:25%;top:49%}.marketmapnode.p3{left:75%;top:49%}.marketmapnode.p4{left:25%;top:83%}.marketmapnode.p5{left:75%;top:83%}.marketmapnode i{width:25px;height:25px;margin-right:4px;font-size:16px}.marketmapnode b{font-size:9px}.marketmapnode small{font-size:5.7px}.marketmaplaw{font-size:5.8px}.marketcircuitwin{top:8%;padding:18px}.marketcircuitwin b{font-size:22px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.markettactics{padding:5px}.markettacticshead b{font-size:9px}.markettacticshead span{font-size:5.7px}.markettacticgrid{gap:3px}.markettactic{min-height:68px;padding:33px 4px 4px}.markettactic b{font-size:8px}.markettactic small{font-size:5.4px}.markettactic em{font-size:5px}.markettacticcall{grid-template-columns:67px 1fr;min-height:82px}.markettacticcall b{font-size:18px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketmasterworks{margin:4px 1px;padding:9px;background-position:center;}.marketmasterworkhead{display:block}.marketmasterworkhead h2{font-size:23px}.marketmasterworkhead p{font-size:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marketmasterworktotal{display:inline-block;margin-top:6px}.marketmasterworkmap{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:min(78%,245px);min-height:0;overflow-x:auto;align-content:initial;scroll-snap-type:x mandatory;gap:5px;margin-top:9px;padding:2px 1px 6px}.marketdistrict{scroll-snap-align:center;min-height:156px;padding:8px}.marketmasterworklaw{font-size:6.5px}.marketmasterworkwin{top:9%;padding:18px}.marketmasterworkwin b{font-size:24px}.marketmasterworkbadge{font-size:6px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketchronicle{margin:4px 1px;padding:8px}.marketchroniclehead{display:block}.marketchronicletitle{font-size:21px}.marketchroniclecopy{font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketchroniclecount{display:inline-block;margin-top:5px}.marketchroniclechapters{gap:2px;margin-top:6px}.marketchroniclechapter{padding:3px;font-size:5.8px}.marketchroniclechapter b{font-size:6.5px}.marketchronicleart{margin-top:6px;border-radius:8px}.marketchronicletile{padding:2px}.marketchronicletile i{font-size:15px}.marketchronicletile b,.marketchronicletile small{display:none}.marketchronicletile .marketchroniclebar{left:2px;right:2px;bottom:2px;height:2px}.marketchronicledetail{grid-template-columns:auto minmax(0,1fr);gap:6px;padding:6px}.marketchronicledetail i{font-size:21px}.marketchronicledetail b{font-size:10px}.marketchronicledetail p{font-size:6.5px}.marketchronicledetail strong{grid-column:1/-1;font-size:7px}.marketatmospheres{gap:3px;margin-top:6px}.marketatmosphere{min-height:26px;padding:3px 5px;font-size:6px}.marketchroniclelaw{font-size:6px}.marketchroniclewin{top:9%;padding:18px}.marketchroniclewin b{font-size:23px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketrouteworks{margin:4px 1px;padding:8px}.marketroutehead{display:block}.marketroutehead h2{font-size:22px}.marketroutehead p{font-size:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.marketroutelaurel{display:inline-block;margin-top:5px}.marketroutelevels{grid-template-columns:repeat(3,1fr);gap:3px;margin-top:7px}.marketroutelevel{padding:4px 2px}.marketrouteplay{display:block;margin-top:7px}.marketrouteboard{max-width:355px;padding:3%;gap:3px;border-radius:11px}.marketroutetile,.marketrouteempty{border-radius:6px}.marketroutepanel{margin-top:7px;padding:8px}.marketroutepanel h3{font-size:16px}.marketroutepanel p{margin:5px 0;font-size:7px}.marketroutemeters{margin:5px 0}.marketroutemeter{padding:4px 2px;font-size:6px}.marketroutemeter b{font-size:11px}.marketrouteproof{font-size:5.8px}.marketroutewin{top:8%;padding:18px}.marketroutewin b{font-size:22px}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketcascade{margin:4px 1px;padding:8px}.cascadehead{display:block}.cascadehead h2{font-size:22px}.cascadehead p{font-size:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cascadewreath{display:inline-block;margin-top:5px}.cascadelevels{grid-template-columns:repeat(3,1fr);gap:3px;margin-top:7px}.cascadelevel{padding:4px 2px}.cascadeplay{display:block;margin-top:7px}.cascadeboard{max-width:355px;padding:2%;gap:3px;border-radius:11px}.cascadetile{border-radius:7px}.cascadepanel{margin-top:7px;padding:8px}.cascadepanel h3{font-size:16px}.cascadepanel p{margin:4px 0;font-size:7px}.cascadeorders{margin:5px 0}.cascadeorder{padding:3px 2px;font-size:5.8px}.cascadeorder i{font-size:14px}.cascadeorder b{font-size:8px}.cascadestats{margin:4px 0}.cascadestat{padding:3px 2px;font-size:5.8px}.cascadestat b{font-size:10px}.cascadeproof{font-size:5.7px}.cascadewin{top:8%;padding:18px}.cascadewin b{font-size:22px}}
  @media(prefers-reduced-motion:reduce){.marketmomentum.hot,.marketcrest.current,.marketcontractwin,.marketorderwin,.marketcargostep.next,.market-v2 .marketbiz,.market-v2 .marketbiz.marketcashout,.marketgain,.marketrankup,.marketfirstpulse,.marketrush:after,.marketrushbid,.marketrushcall,.marketrushwin,.marketcaravanwin,.marketcaravanfill,.markethousechoicepanel,.markethousepick,.markethousewin,.marketrivals:after,.marketrivaltactic,.marketrivalcall,.marketrivalspark,.marketrivalwin,.marketmapnode,.marketmapnode.ready,.marketmapbarfill,.markettactic,.markettacticcall,.marketcircuitwin,.marketdistrict,.marketdistrict.ready,.marketdistrict.built,.marketmasterworkcall,.marketmasterworkwin,.marketchronicletile,.marketchroniclewin,.marketmasterworks:after,.marketroutetile,.marketroutewin,.marketcascade:after,.cascadetile,.cascadegem,.cascadechain,.cascadespark,.cascadewin{animation:none!important;transition:none!important}.marketgain{opacity:1;position:static;display:inline-block;margin-top:3px}.marketrushcall,.marketrivalcall,.marketmasterworkcall,.cascadechain{opacity:1}.marketrivalspark,.cascadespark{display:none}}
  @media(max-width:760px),(max-width:1100px) and (orientation:portrait){.marketexchange{margin:4px 1px;padding:8px}.marketexchangehead{display:block}.marketexchangetitle{font-size:18px}.marketexchangecopy{font-size:8px}.marketexchangeportfolio{justify-content:flex-start;margin-top:6px}.marketexchangechip{padding:3px 5px;font-size:7px}.marketexchangegrid{grid-template-columns:1fr;gap:5px;margin-top:7px}.marketlisting{grid-template-columns:minmax(0,1fr) 118px;padding:7px;gap:6px}.marketlistingicon{font-size:22px}.marketlistinghead b{font-size:12px}.marketlistingstory{display:none}.marketlistingprice{font-size:20px}.marketlistingactions .btn{min-height:29px;font-size:7px}.marketexchangenote{font-size:7px}}
  @media(prefers-reduced-motion:reduce){.marketmomentum.hot,.marketcrest.current,.marketcontractwin,.marketorderwin,.marketcargostep.next,.market-v2 .marketbiz,.market-v2 .marketbiz.marketcashout,.marketgain,.marketrankup,.marketfirstpulse,.marketrush:after,.marketrushbid,.marketrushcall,.marketrushwin,.marketcaravanwin,.marketcaravanfill,.markethousechoicepanel,.markethousepick,.markethousewin,.marketrivals:after,.marketrivaltactic,.marketrivalcall,.marketrivalspark,.marketrivalwin{animation:none!important;transition:none!important}.marketgain{opacity:1;position:static;display:inline-block;margin-top:3px}.marketrushcall,.marketrivalcall{opacity:1}.marketrivalspark{display:none}}
  /* ── Lexicon, the word den: timber and marble, glowing premium gems, tiles
     that lift, fly, and thock. Namespaced .lx*, phone-first. ── */

  /* ── A serve you can see land ─────────────────────────────────────────── */
  .mkrowserve{position:relative;overflow:hidden;display:grid;gap:2px;justify-items:center}
  .mkrowserve b{font:800 13px Inter;letter-spacing:.3px}
  .mkrowserve small{font:700 9px Inter;opacity:.72}
  .mkrowserve .mkrowauto{font:800 8px Inter;font-style:normal;letter-spacing:1.2px;opacity:.85}
  /* The cycle made a tap do nothing with no explanation. Now you watch it. */
  .mkrowserve:before{content:"";position:absolute;inset:0;width:var(--fill,100%);background:rgba(255,255,255,.22);transition:width .08s linear;pointer-events:none}
  .mkrowserve.cooling{filter:saturate(.7) brightness(.92);cursor:progress}
  .mkrowserve.cooling:before{background:rgba(255,255,255,.14)}
  .mkrowpop{position:fixed;z-index:60;transform:translate(-50%,0);color:#ffd985;font:900 20px 'Barlow Condensed',Inter;text-shadow:0 2px 8px rgba(0,0,0,.7);pointer-events:none;animation:mkrowpop .9s ease-out forwards}
  @keyframes mkrowpop{0%{opacity:0;transform:translate(-50%,4px) scale(.85)}18%{opacity:1;transform:translate(-50%,-6px) scale(1.08)}100%{opacity:0;transform:translate(-50%,-38px) scale(1)}}
  .mkrowcoin{position:fixed;z-index:59;font-size:15px;pointer-events:none;animation:mkrowcoin .82s ease-out forwards}
  @keyframes mkrowcoin{0%{opacity:0;transform:translate(0,0) scale(.7)}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx,0),-46px) scale(1.05)}}
  .mkrowtill b.bump{animation:mkrowbump .42s ease-out}
  @keyframes mkrowbump{0%{transform:scale(1)}35%{transform:scale(1.16);color:#ffe9ad}100%{transform:scale(1)}}

  /* ── What am I doing? ─────────────────────────────────────────────────── */
  .mkrownext{display:grid;gap:2px;margin:0 0 12px;padding:10px 12px;border-left:3px solid var(--orange,#f0c55a);border-radius:0 8px 8px 0;background:rgba(240,197,90,.09)}
  .mkrownext b{color:#ffe6ac;font:800 13px Inter;letter-spacing:.2px}
  .mkrownext span{color:#a9cfc9;font:600 11px/1.45 Inter}
  @media(prefers-reduced-motion:reduce){.mkrowpop,.mkrowcoin,.mkrowtill b.bump{animation:none}.mkrowcoin{display:none}}
  .mkrestlabel{display:grid;gap:2px;margin:22px 1px 8px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}
  .mkrestlabel b{color:#e6d5a8;font:800 12px Inter;letter-spacing:1.2px;text-transform:uppercase}
  .mkrestlabel span{color:#9c8f74;font:600 11px Inter}

  /* ── The serve, per DOPAMINE.md: actor motion, capped shake, reward arc ── */
  .mkrowstall.served{animation:mkrowserved .26s ease-out}
  @keyframes mkrowserved{0%{transform:none}30%{transform:translateY(2px) scale(.985)}60%{transform:translateY(-1px) scale(1.006)}100%{transform:none}}
  .mkrowcoin.arcing{animation:mkrowarc .78s cubic-bezier(.3,.05,.6,1) forwards}
  /* The coin lifts, then falls into the till: value goes where value lands. */
  @keyframes mkrowarc{
    0%{opacity:0;transform:translate(0,0) scale(.7)}
    14%{opacity:1;transform:translate(calc(var(--tx)*.14),calc(var(--ty)*.14 + var(--lift,-40px))) scale(1.05)}
    100%{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.55)}
  }
  @media(prefers-reduced-motion:reduce){.mkrowstall.served{animation:none}.mkrowcoin.arcing{animation:none;display:none}}

  /* ── The street: a tycoon has to be a place, not a list ────────────────── */
  .mkstreet{position:relative;display:flex;gap:18px;align-items:flex-end;min-height:190px;margin:0 0 14px;padding:20px 18px 0;overflow-x:auto;border:1px solid rgba(116,231,195,.22);border-radius:12px;background:linear-gradient(180deg,rgba(9,44,58,.95) 0%,rgba(10,52,64,.82) 42%,rgba(6,26,33,.95) 62%,rgba(4,18,24,.98) 100%)}
  /* the boards of the quay, so the stalls are standing ON something */
  .mkstreet:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:repeating-linear-gradient(90deg,rgba(92,70,42,.55) 0 26px,rgba(66,50,30,.55) 26px 28px);border-top:2px solid rgba(120,92,54,.7);pointer-events:none}
  .mkstreet>*{position:relative;z-index:1;padding-bottom:16px}
  .mkstreet.shut{filter:saturate(.35) brightness(.72)}
  .mkdock{flex:none;display:grid;gap:5px;padding-right:14px;border-right:1px dashed rgba(116,231,195,.28)}
  .mkdock>small{color:#74e7c3;font:800 7px Inter;letter-spacing:1.5px}
  .mkcrates{display:flex;gap:5px;align-items:flex-end}
  .mkcrate{display:grid;justify-items:center;gap:2px;min-width:50px;padding:7px 5px;border:1px solid #6b5836;border-radius:3px;background:linear-gradient(180deg,#5a4527,#3b2c19);box-shadow:inset 0 2px 0 rgba(255,255,255,.09),0 3px 7px rgba(0,0,0,.35)}
  .mkcrate.full{min-height:76px}.mkcrate.half{min-height:58px;opacity:.95}.mkcrate.low{min-height:42px;opacity:.85}
  .mkcrate b{font-size:20px;line-height:1}
  .mkcrate small{color:#e8d3a6;font:700 7px Inter}
  .mkcrateempty{padding:14px 8px;color:#6d8f94;font:600 10px Inter;font-style:italic}
  .mklane{display:flex;gap:12px;align-items:flex-end;min-height:132px}
  .mklot{flex:none;display:grid;justify-items:center;gap:4px;min-width:74px}
  .mklot small{color:#8fb8b3;font:700 8px Inter}
  .mklot.empty .mkplot{display:grid;place-items:center;width:66px;height:46px;border:1px dashed rgba(255,255,255,.17);border-radius:4px;color:#4d6a70;font-size:16px}
  .mklot.empty small{opacity:.6;font-style:italic}
  /* Height reads the count: a busy Row looks busy from across the page. */
  .mklot.built .mkstallicon{display:grid;place-items:center;width:66px;border:1px solid rgba(116,231,195,.34);border-top:0;border-radius:0 0 5px 5px;background:linear-gradient(180deg,rgba(14,60,70,.96),rgba(7,30,38,.98));box-shadow:inset 0 -10px 18px rgba(0,0,0,.35);font-size:27px}
  .mklot.tier1 .mkstallicon{height:52px}.mklot.tier2 .mkstallicon{height:72px}
  .mklot.tier3 .mkstallicon{height:94px}.mklot.tier4 .mkstallicon{height:116px}
  .mkawning{display:flex;width:76px;height:16px;border-radius:4px 4px 0 0;overflow:hidden;box-shadow:0 3px 7px rgba(0,0,0,.4)}
  .mkawning i{flex:1;background:repeating-linear-gradient(90deg,#f0c55a 0 6px,#b8862c 6px 12px)}
  .mklot.dry{opacity:.5}
  .mklot.dry .mkawning i{background:repeating-linear-gradient(90deg,#4a5a5e 0 6px,#33403f 6px 12px)}
  .mklot.dry .mkstallicon{filter:grayscale(1)}
  .mkshut{position:absolute;inset:auto 14px 10px;display:grid;gap:1px;padding:7px 10px;border-radius:6px;background:rgba(6,20,26,.9)}
  .mkshut b{color:#ffb27a;font:800 11px Inter}
  .mkshut span{color:#a9cfc9;font:600 10px Inter}
  @media(max-width:700px){.mkstreet{padding:10px}.mklot{min-width:48px}}

  /* ── Life on the boards ───────────────────────────────────────────────── */
  .mklot{position:relative}
  /* The stall serves: the awning takes the knock and settles. */
  .mklot.selling .mkawning{animation:mkawn .34s ease-out}
  .mklot.selling .mkstallicon{animation:mkstallpop .34s ease-out}
  @keyframes mkawn{0%{transform:none}28%{transform:translateY(2px) scaleX(1.04)}100%{transform:none}}
  @keyframes mkstallpop{0%{transform:none}30%{transform:scale(1.06)}100%{transform:none}}
  /* One walker per real sale: in from the street, served, away with the food. */
  .mkeater{position:absolute;left:50%;bottom:-2px;display:grid;justify-items:center;pointer-events:none;animation:mkwalk var(--walk,1.7s) ease-in-out forwards}
  .mkeater b{font-size:15px;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
  .mkeater i{font-size:10px;font-style:normal;opacity:0;animation:mkhandover .9s ease-out .55s forwards}
  @keyframes mkwalk{
    0%{opacity:0;transform:translate(38px,0)}
    16%{opacity:1;transform:translate(10px,var(--lift,-2px))}
    46%{opacity:1;transform:translate(0,0)}
    62%{opacity:1;transform:translate(-2px,var(--lift,-2px))}
    100%{opacity:0;transform:translate(-46px,0)}
  }
  @keyframes mkhandover{0%{opacity:0;transform:translateY(2px) scale(.7)}35%{opacity:1;transform:translateY(-7px) scale(1.05)}100%{opacity:0;transform:translateY(-15px) scale(.9)}}
  @media(prefers-reduced-motion:reduce){.mkeater{display:none}.mklot.selling .mkawning,.mklot.selling .mkstallicon{animation:none}}
  /* ARENA_SLICE_END 14-deep-dock-market */
  /* ARENA_SLICE_START 15-lexicon-marble-gold -- spliced from arena-css/15-lexicon-marble-gold.css; edit that file, not this region */
  .lxstage{position:relative;max-width:760px;margin:2px auto 0;padding:0 6px 14px;-webkit-user-select:none;user-select:none}
  .lxhead{display:flex;align-items:stretch;justify-content:space-between;gap:6px;margin:0 auto 7px;width:var(--lxbw,640px);max-width:100%}
  .lxseat{position:relative;display:flex;align-items:center;gap:8px;padding:4px 11px 4px 5px;border-radius:14px;background:rgba(24,16,8,.74);border:1px solid rgba(226,180,90,.15);min-width:0;color:var(--ink);font:inherit;text-align:left;transition:border-color .35s,box-shadow .35s}
  .lxseat.rv{cursor:pointer;flex-direction:row-reverse;text-align:right;padding:4px 5px 4px 11px}
  .lxseat.on{border-color:rgba(240,196,104,.6);box-shadow:0 0 16px rgba(240,196,104,.22)}
  .lxseat .pv{width:36px;height:36px;border-radius:50%;overflow:hidden;flex:0 0 auto;background:#241a10;box-shadow:0 2px 5px rgba(0,0,0,.5)}
  .lxseat .pv svg{display:block;width:100%;height:100%}
  .lxseat .col{display:flex;flex-direction:column;min-width:0}
  .lxseat .nm{font-size:11.5px;color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:92px}
  .lxseat .sc{font:800 19px/1.05 var(--serif);color:var(--gold2)}
  .lxpouch{display:flex;align-items:center;gap:5px;align-self:center;padding:6px 10px;border-radius:999px;background:rgba(24,16,8,.7);border:1px solid rgba(226,180,90,.14);font-size:13px;color:var(--soft)}
  .lxpouch b{color:var(--ink)}
  .lxthink{position:absolute;top:calc(100% + 5px);right:4px;z-index:7;padding:4px 10px;border-radius:10px;background:rgba(14,9,4,.92);border:1px solid rgba(226,180,90,.3);font-size:11.5px;color:var(--soft);white-space:nowrap;opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s;pointer-events:none}
  .lxthink.on{opacity:1;transform:none;animation:lxthinkpulse 1.6s ease-in-out infinite}
  @keyframes lxthinkpulse{0%,100%{border-color:rgba(226,180,90,.25)}50%{border-color:rgba(240,196,104,.6)}}
  .lxboardwrap{position:relative;width:var(--lxbw,640px);max-width:100%;margin:0 auto}
  .lxboard{position:relative;display:grid;grid-template-columns:repeat(15,1fr);gap:2px;padding:8px;border-radius:14px;
    background:
      linear-gradient(180deg,rgba(16,20,32,.97),rgba(11,14,24,.97)) center/calc(100% - 12px) calc(100% - 12px) no-repeat,
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.011 0.13' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0.32 0 0 0 0 0.19 0 0 0 0 0.07 0 0 0 0.55 0'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23w)'/%3E%3C/svg%3E"),
      linear-gradient(165deg,#7a4f28,#54341a 55%,#6b4423);
    box-shadow:0 14px 34px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,222,150,.3),inset 0 -2px 4px rgba(0,0,0,.5)}
  .lxcell{position:relative;aspect-ratio:1;min-width:0;border:0;padding:0;margin:0;border-radius:12%;cursor:pointer;font:inherit;color:#8d99b5;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(180deg,#242e46,#1a2236);box-shadow:inset 0 2px 4px rgba(0,0,0,.5),inset 0 -1px 0 rgba(255,255,255,.05)}
  .lxcell:focus-visible{outline:2px solid rgba(240,196,104,.85);outline-offset:-2px}
  .lxcell .plab{font:800 calc(var(--lxc,40px)*.3)/1 var(--sans);letter-spacing:.02em;pointer-events:none}
  .lxcell .plab.star{font-size:calc(var(--lxc,40px)*.5)}
  .lxcell.p2{background:linear-gradient(180deg,#7d5a20,#5e4014);color:#f4d391}
  .lxcell.p3{background:linear-gradient(180deg,#83372a,#5f231a);color:#ffb09a}
  .lxcell.p20{background:linear-gradient(180deg,#2b4a7c,#1f3357);color:#a9c6ff}
  .lxcell.p30{background:linear-gradient(180deg,#2a6648,#1c4531);color:#96e0b4}
  .lxcell.p2::after,.lxcell.p3::after,.lxcell.p20::after,.lxcell.p30::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;animation:lxbreath 3.4s ease-in-out infinite}
  .lxcell.p2::after{box-shadow:0 0 9px rgba(244,197,110,.5),inset 0 0 5px rgba(244,197,110,.28)}
  .lxcell.p3::after{box-shadow:0 0 10px rgba(255,120,90,.55),inset 0 0 5px rgba(255,120,90,.3)}
  .lxcell.p20::after{box-shadow:0 0 9px rgba(120,160,255,.45),inset 0 0 5px rgba(120,160,255,.26)}
  .lxcell.p30::after{box-shadow:0 0 9px rgba(90,220,150,.45),inset 0 0 5px rgba(90,220,150,.26)}
  @keyframes lxbreath{0%,100%{opacity:.28}50%{opacity:.75}}
  .lxtile{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:16%;color:#2e1e0c;font-family:var(--serif);
    background:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='2' seed='3'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.42 0 0 0 0 0.22 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='90' height='90' filter='url(%23g)'/%3E%3C/svg%3E"),
      linear-gradient(168deg,#f6ebcd,#e8d6ac 55%,#d9c294);
    box-shadow:0 2px 3px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 3px rgba(150,110,60,.4)}
  .lxtile .lt{font-size:calc(var(--lxc,40px)*.54);line-height:1;font-weight:700}
  .lxtile .lv{position:absolute;right:7%;bottom:3%;font:600 calc(var(--lxc,40px)*.24)/1 var(--sans)}
  .lxtile.blank .lt{font-style:italic;color:#5a4020}
  .lxtile.blank::before{content:'';position:absolute;left:11%;top:11%;width:13%;height:13%;border-radius:50%;background:rgba(150,100,40,.55)}
  .lxcell.laid .lxtile{background:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='2' seed='3'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.38 0 0 0 0 0.2 0 0 0 0.07 0'/%3E%3C/filter%3E%3Crect width='90' height='90' filter='url(%23g)'/%3E%3C/svg%3E"),
      linear-gradient(168deg,#e9dab6,#d9c497 55%,#c9b083);box-shadow:0 1px 2px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.5),inset 0 -2px 3px rgba(140,100,55,.4)}
  .lxcell.pend .lxtile{box-shadow:0 4px 9px rgba(0,0,0,.5),0 0 11px rgba(240,196,104,.55),inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 3px rgba(150,110,60,.4)}
  .lxcell.settle .lxtile{animation:lxsettle .34s cubic-bezier(.2,.8,.3,1.3)}
  @keyframes lxsettle{0%{transform:scale(1.22)}55%{transform:scale(.93)}100%{transform:scale(1)}}
  .lxcell.popfx .lxtile{animation:lxpop .4s ease-out}
  @keyframes lxpop{0%{transform:scale(1)}35%{transform:scale(1.28);filter:brightness(1.5)}100%{transform:scale(1)}}
  .lxcell.shk .lxtile{animation:lxshake .5s ease-in-out}
  @keyframes lxshake{0%,100%{transform:none}20%{transform:translateX(-3px) rotate(-2deg)}40%{transform:translateX(3px) rotate(2deg)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}
  .lxcell.hot{outline:2px solid rgba(240,196,104,.9);outline-offset:-2px;filter:brightness(1.25)}
  .lxcell.hintp{animation:lxhint .85s ease-in-out 3}
  @keyframes lxhint{0%,100%{filter:none}50%{filter:brightness(1.6) drop-shadow(0 0 6px rgba(240,196,104,.8))}}
  .lxfx{position:absolute;inset:0;pointer-events:none;z-index:5}
  .lxfloats{position:absolute;inset:0;pointer-events:none;z-index:6;overflow:visible}
  .lxfloat{position:absolute;transform:translate(-50%,0);font:800 14px var(--sans);color:#ffe9ad;text-shadow:0 1px 3px rgba(0,0,0,.85);white-space:nowrap;animation:lxrise 1.15s ease-out forwards}
  .lxfloat.big{font:800 20px var(--serif);color:#ffd77e;letter-spacing:.04em}
  .lxfloat.prem{color:#b8ffd6}
  @keyframes lxrise{0%{opacity:0;transform:translate(-50%,7px)}14%{opacity:1}72%{opacity:1}100%{opacity:0;transform:translate(-50%,-52px)}}
  .lxbingo{position:absolute;left:50%;top:42%;z-index:7;transform:translate(-50%,-50%);padding:12px 22px;border-radius:16px;background:rgba(14,9,3,.9);border:1px solid rgba(240,196,104,.65);font:800 24px var(--serif);color:#ffd77e;text-shadow:0 0 16px rgba(255,200,90,.6);white-space:nowrap;animation:lxbingoin 1.9s ease-out forwards}
  @keyframes lxbingoin{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}12%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}22%{transform:translate(-50%,-50%) scale(1)}78%{opacity:1}100%{opacity:0;transform:translate(-50%,-58%) scale(1)}}
  .lxmeter{display:flex;align-items:center;gap:10px;margin:9px auto 0;width:var(--lxbw,640px);max-width:100%;min-height:42px;padding:5px 13px;border-radius:13px;background:rgba(22,14,7,.72);border:1px solid rgba(226,180,90,.14)}
  .lxmeter .num{font:800 22px/1 var(--serif);color:var(--gold2);min-width:40px;text-align:center}
  .lxmeter .bar{flex:0 0 26%;height:8px;border-radius:99px;background:rgba(0,0,0,.45);overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.6)}
  .lxmeter .bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#8f6b2a,#f0c468);box-shadow:0 0 8px rgba(240,196,104,.55);transition:width .3s ease}
  .lxmeter .lbl{flex:1;font-size:12.5px;line-height:1.35;color:var(--soft);min-width:0}
  .lxmeter.blaze{border-color:rgba(240,196,104,.5)}
  .lxmeter.blaze .num{color:#ffe2a1;text-shadow:0 0 13px rgba(255,200,90,.65)}
  .lxrackwrap{margin:10px auto 0;width:var(--lxbw,640px);max-width:100%}
  .lxrack{display:flex;gap:6px;justify-content:center;padding:9px 10px 13px;border-radius:15px;
    background:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.013 0.15' numOctaves='3' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 0.3 0 0 0 0 0.17 0 0 0 0 0.06 0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23w)'/%3E%3C/svg%3E"),
      linear-gradient(180deg,#6e4523,#4c2e15 65%,#5d3a1d);
    box-shadow:0 10px 24px rgba(0,0,0,.5),inset 0 2px 0 rgba(255,225,160,.3),inset 0 -7px 11px rgba(0,0,0,.42)}
  .lxrack.nudge{animation:lxnudge .45s ease-in-out}
  @keyframes lxnudge{0%,100%{transform:none}30%{transform:translateY(-5px)}60%{transform:translateY(2px)}}
  .lxrack.shuffled .lxtile.rk{animation:lxshuf .4s ease-out}
  @keyframes lxshuf{0%{transform:translateY(-9px) rotate(-4deg);opacity:.4}100%{transform:none;opacity:1}}
  .lxslot{width:var(--lxr,46px);height:calc(var(--lxr,46px)*1.14);border-radius:10px;background:rgba(0,0,0,.32);box-shadow:inset 0 2px 5px rgba(0,0,0,.55)}
  .lxtile.rk{border:0;padding:0;cursor:grab;touch-action:none;transition:transform .15s ease,box-shadow .15s ease,opacity .15s}
  .lxtile.rk .lt{font-size:calc(var(--lxr,46px)*.5)}
  .lxtile.rk .lv{font-size:calc(var(--lxr,46px)*.24)}
  .lxtile.rk.sel{transform:translateY(-9px) scale(1.08) rotate(-2deg);box-shadow:0 11px 17px rgba(0,0,0,.5),0 0 13px rgba(240,196,104,.5),inset 0 1px 0 rgba(255,255,255,.65)}
  .lxtile.rk.mk{transform:translateY(3px) scale(.94);filter:saturate(.55) brightness(.8);box-shadow:0 1px 2px rgba(0,0,0,.5),0 0 9px rgba(255,110,80,.5)}
  .lxtile.rk.ghosted{opacity:.25}
  .lxflight{position:fixed;z-index:3000;pointer-events:none;filter:drop-shadow(0 9px 11px rgba(0,0,0,.55))}
  .lxflight .lxtile{width:100%;height:100%}
  .lxflight .lxtile .lt{font-size:130%}
  .lxflight.drag{transform:scale(1.12)}
  .lxbar{display:flex;gap:8px;justify-content:center;align-items:center;margin:10px auto 0;flex-wrap:wrap;width:var(--lxbw,640px);max-width:100%}
  .lxplay{flex:1 1 150px;max-width:250px;font-size:16.5px;padding:11px 8px}
  .lxtool{width:46px;height:46px;border-radius:13px;font-size:19px;padding:0;line-height:1}
  .lxtool.onmode{border-color:rgba(255,140,110,.65);box-shadow:0 0 10px rgba(255,120,90,.3)}
  .lxtool.pulse{animation:lxlamp 1.15s ease-in-out infinite}
  @keyframes lxlamp{0%,100%{box-shadow:0 0 0 rgba(240,196,104,0)}50%{box-shadow:0 0 15px rgba(240,196,104,.75)}}
  .lxpass{padding:10px 14px}
  .lxovl{position:fixed;inset:0;z-index:2740;background:rgba(8,6,3,.8);display:flex;align-items:center;justify-content:center;padding:14px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  .lxcard{background:linear-gradient(180deg,#26190e,#150e07);border:1px solid rgba(226,180,90,.42);border-radius:17px;padding:18px 18px 16px;max-width:400px;width:100%;max-height:88vh;max-height:88dvh;overflow:auto;text-align:center;box-shadow:0 26px 60px rgba(0,0,0,.65)}
  .lxcard.wide{max-width:430px}
  .lxcard .ttl{display:block;font:800 20px var(--serif);color:var(--ink);margin-bottom:4px}
  .lxcard .sub{font-size:13px;margin-bottom:10px}
  .lxcard .sub2{font-size:12.5px;margin-top:10px}
  .lxcard .pv.big{width:84px;height:84px;border-radius:50%;overflow:hidden;margin:0 auto 9px;box-shadow:0 4px 14px rgba(0,0,0,.55);border:2px solid rgba(226,180,90,.4)}
  .lxcard .pv.big svg{display:block;width:100%;height:100%}
  .lxscoreline{font:800 22px var(--serif);color:var(--gold2);margin:7px 0 3px}
  .lxfinest,.lxled{margin:9px auto 0;max-width:270px;text-align:left}
  .lxfinest .row,.lxled .row{display:flex;justify-content:space-between;gap:10px;padding:4px 2px;border-bottom:1px dashed rgba(226,180,90,.16)}
  .lxfinest .w,.lxled .w{font-family:var(--serif);letter-spacing:.09em}
  .lxfinest .s,.lxled .s{color:var(--gold2)}
  .lxcard .rc{margin-top:9px;font-size:12.5px}
  .lxunlock{display:flex;align-items:center;gap:9px;justify-content:center;margin-top:11px;padding:8px 10px;border-radius:12px;background:rgba(240,196,104,.09);border:1px solid rgba(240,196,104,.4);font-size:13.5px;text-align:left}
  .lxunlock .pv{width:40px;height:40px;border-radius:50%;overflow:hidden;flex:0 0 auto}
  .lxunlock .pv svg{display:block;width:100%;height:100%}
  .lxrival{display:flex;gap:11px;align-items:center;text-align:left;width:100%;margin-top:9px;padding:9px 10px;border-radius:14px;border:1px solid rgba(226,180,90,.2);background:rgba(36,24,12,.6);cursor:pointer;font:inherit;color:inherit;transition:border-color .2s,transform .12s}
  .lxrival:not(.lock):hover{border-color:rgba(240,196,104,.55);transform:translateY(-1px)}
  .lxrival.lock{opacity:.55;cursor:default}
  .lxrival.cur{border-color:rgba(240,196,104,.65);box-shadow:0 0 12px rgba(240,196,104,.22)}
  .lxrival .pv{width:56px;height:56px;flex:0 0 auto;border-radius:50%;overflow:hidden;border:2px solid rgba(226,180,90,.35)}
  .lxrival .pv svg{display:block;width:100%;height:100%}
  .lxrival .col{min-width:0}
  .lxrival .ln{font-size:12.5px;line-height:1.4}
  .lxrival .rc{font-size:11.5px;margin-top:2px;color:var(--gold2)}
  .lxscrim{position:fixed;inset:0;z-index:2748;background:rgba(5,3,1,.55)}
  .lxsheet{position:fixed;left:0;right:0;bottom:0;z-index:2750;background:linear-gradient(180deg,#271a0e,#170f07);border-top:1px solid rgba(226,180,90,.45);border-radius:18px 18px 0 0;padding:15px 12px calc(13px + env(safe-area-inset-bottom,0px));text-align:center;transform:translateY(105%);transition:transform .22s ease;box-shadow:0 -14px 40px rgba(0,0,0,.5)}
  .lxsheet.up{transform:none}
  .lxsheet .sub{font-size:12.5px;margin-top:2px}
  .lxsheet .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:7px;max-width:560px;margin:11px auto 0}
  .lxsheet .lxtile.pickable{aspect-ratio:1;width:auto;height:auto;border:0;cursor:pointer}
  .lxsheet .lxtile.pickable .lt{font-size:22px}
  .lxdemo{min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;margin:10px 0 6px;padding:10px;border-radius:13px;background:rgba(12,8,4,.55);border:1px solid rgba(226,180,90,.14)}
  .lxdemo .t1row{display:flex;gap:4px}
  .lxdemo .dcell{position:relative;width:42px;height:42px;border-radius:6px;background:linear-gradient(180deg,#242e46,#1a2236);box-shadow:inset 0 2px 4px rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;font-size:19px}
  .lxdemo .dcell .lxtile{position:absolute;inset:2px;width:auto;height:auto}
  .lxdemo .dcell .lxtile .lt{font-size:20px}
  .lxdemo .dcell.star{background:linear-gradient(180deg,#7d5a20,#5e4014)}
  .lxdemo .t1rack{display:flex;gap:5px;padding:6px 9px;border-radius:9px;background:linear-gradient(180deg,#6e4523,#4c2e15)}
  .lxdemo .t1rack .lxtile{width:36px;height:40px}
  .lxdemo .t1rack .lxtile .lt{font-size:18px}
  .lxdemo .dcell .lxtile.fly{animation:lxdemofly 2.6s ease-in-out infinite}
  @keyframes lxdemofly{0%,18%{opacity:0;transform:translateY(74px) scale(.9)}42%,86%{opacity:1;transform:none}100%{opacity:0;transform:none}}
  .lxdemo .t1rack .lxtile.src{animation:lxdemosrc 2.6s ease-in-out infinite}
  @keyframes lxdemosrc{0%,14%{opacity:1}30%,100%{opacity:.18}}
  .lxdemo .t2row{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}
  .lxdemo .gem{display:flex;flex-direction:column;align-items:center;gap:3px;width:64px;padding:8px 2px;border-radius:9px;font:800 14px var(--sans);animation:lxbreath 3.2s ease-in-out infinite}
  .lxdemo .gem i{font:400 9.5px/1.2 var(--sans);opacity:.9;font-style:normal}
  .lxdemo .g20{background:linear-gradient(180deg,#2b4a7c,#1f3357);color:#a9c6ff}
  .lxdemo .g30{background:linear-gradient(180deg,#2a6648,#1c4531);color:#96e0b4}
  .lxdemo .g2{background:linear-gradient(180deg,#7d5a20,#5e4014);color:#f4d391}
  .lxdemo .g3{background:linear-gradient(180deg,#83372a,#5f231a);color:#ffb09a}
  .lxdemo .t2math{font-size:13.5px;color:var(--soft)}
  .lxdemo .t2math b{color:var(--ink)}
  .lxdemo .t2math .up{color:#96e0b4;font-size:16px;animation:lxupflash 2s ease-in-out infinite}
  @keyframes lxupflash{0%,100%{text-shadow:none}50%{text-shadow:0 0 11px rgba(120,230,160,.8)}}
  .lxdemo .t3row{display:flex;gap:13px;font-size:21px}
  .lxdemo .t3row span{display:flex;flex-direction:column;align-items:center;gap:2px}
  .lxdemo .t3row i{font:400 10px var(--sans);color:var(--soft);font-style:normal}
  .lxdemo .t3bingo{display:flex;gap:3px}
  .lxdemo .t3bingo .lxtile{width:30px;height:33px;animation:lxwave 1.7s ease-in-out infinite}
  .lxdemo .t3bingo .lxtile .lt{font-size:14px}
  .lxdemo .t3bingo .lxtile:nth-child(2){animation-delay:.09s}.lxdemo .t3bingo .lxtile:nth-child(3){animation-delay:.18s}.lxdemo .t3bingo .lxtile:nth-child(4){animation-delay:.27s}.lxdemo .t3bingo .lxtile:nth-child(5){animation-delay:.36s}.lxdemo .t3bingo .lxtile:nth-child(6){animation-delay:.45s}.lxdemo .t3bingo .lxtile:nth-child(7){animation-delay:.54s}
  @keyframes lxwave{0%,100%{transform:none}30%{transform:translateY(-6px)}}
  .lxcard .cp{font-size:13.5px;line-height:1.55;min-height:58px}
  .lxdots{display:flex;gap:6px;justify-content:center;margin:9px 0 11px}
  .lxdots span{width:8px;height:8px;border-radius:50%;background:rgba(226,180,90,.25)}
  .lxdots span.on{background:var(--gold2)}
  .lxcard .rowb{display:flex;gap:9px;justify-content:center}
  @media (max-width:480px){
    .lxstage{padding:0 4px 10px}
    .lxseat .nm{max-width:64px;font-size:10.5px}
    .lxseat .sc{font-size:17px}
    .lxpouch{padding:5px 8px;font-size:12px}
    .lxmeter .num{font-size:19px;min-width:34px}
    .lxmeter .bar{flex-basis:21%}
    .lxtool{width:43px;height:43px}
    .lxplay{font-size:15.5px}
  }
  @media (prefers-reduced-motion:reduce){
    .lxcell.p2::after,.lxcell.p3::after,.lxcell.p20::after,.lxcell.p30::after,.lxthink.on,.lxtool.pulse,.lxdemo .gem,.lxdemo .t2math .up,
    .lxdemo .dcell .lxtile.fly,.lxdemo .t1rack .lxtile.src,.lxdemo .t3bingo .lxtile{animation:none}
    .lxcell.settle .lxtile,.lxcell.popfx .lxtile,.lxcell.shk .lxtile,.lxrack.nudge,.lxrack.shuffled .lxtile.rk{animation:none}
    .lxfloat{animation:lxfade 1s ease-out forwards}
    @keyframes lxfade{0%{opacity:0}18%{opacity:1}75%{opacity:1}100%{opacity:0}}
    .lxbingo{animation:lxfade 1.6s ease-out forwards}
    .lxtile.rk{transition:none}
  }
  .gmhelp{position:fixed;top:calc(9px + env(safe-area-inset-top,0px));left:auto;right:auto;z-index:2600;background:rgba(10,7,4,.62);border:1px solid rgba(255,222,150,.28);border-radius:999px;width:32px;height:32px;color:var(--ink);font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  #mechip{display:inline-flex;align-items:center;gap:7px;padding:2px 11px 2px 2px;cursor:pointer}
  #mechip.bare{padding:2px}
  #mechip .avname{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--ink)}
  .avhead{width:30px;height:30px;border-radius:50%;overflow:hidden;position:relative;flex:0 0 auto;background:radial-gradient(circle at 50% 34%,#57431f,#2a1d0d);box-shadow:inset 0 0 0 1.5px rgba(240,196,104,.55)}
  .avhead svg{position:absolute;left:50%;top:-2px;width:34px;height:34px;transform:translateX(-50%)}
  .avgold{font-weight:800;white-space:nowrap}

  /* ══ MARBLE & GOLD — the storybook Greek chrome (owner's poster direction) ══
     Parchment surfaces, deep-blue banner titles, engraved bronze controls,
     meander borders, laurel warmth. The world's painted scenes keep their dusk;
     every panel and scroll the player touches stays readable and tactile. */
  :root{
    --mgparch:#f0e3c4; --mgparch2:#e6d5ac; --mgink:#3a2d18; --mgink2:#6b5836;
    --mgblue:#2b4a8c; --mgblue2:#1e3564; --mggold:#d9a13b; --mggold2:#b07f22; --mggold3:#f3cf7e;
  }
  /* Museum-night interface: quiet brass, charcoal glass, and crisp type. */
  .btn{position:relative;min-height:38px;padding:9px 16px;border:1px solid rgba(220,177,91,.72);border-radius:7px;background:linear-gradient(180deg,#d8ad59,#b77b2f);color:#17120b;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-size:13px;font-weight:820;letter-spacing:.02em;text-shadow:none;box-shadow:0 5px 16px rgba(0,0,0,.28),inset 0 1px rgba(255,238,191,.34);transition:transform .12s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
  .btn:not(:disabled):hover{filter:none;border-color:#f0d28a;background:linear-gradient(180deg,#e3bd6e,#c58a3b);box-shadow:0 8px 22px rgba(0,0,0,.34),0 0 0 1px rgba(241,208,133,.12)}
  .btn:focus-visible{outline:2px solid #efd18a;outline-offset:3px}
  .btn:not(:disabled):active{transform:translateY(1px);box-shadow:0 3px 9px rgba(0,0,0,.32),inset 0 1px 3px rgba(67,42,13,.28)}
  .btn.ghost{background:rgba(14,17,20,.82);color:#e8dfcc;border:1px solid rgba(207,177,115,.38);text-shadow:none;box-shadow:0 5px 15px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.045)}
  .btn.ghost:not(:disabled):hover{border-color:rgba(235,202,132,.72);background:#202326;color:#fff2d6}
  .btn.gold{background:linear-gradient(180deg,#dcb463,#b77b2f);color:#17120b;border:1px solid rgba(239,205,134,.84)}
  body.plazamode .top .row .chip,body.plazamode .top .row #menubtn,body.gamemode .top .row .chip,body.gamemode .top .row #menubtn,body.plazamode .top .utilityrail .hudutil,body.gamemode .top .utilityrail .hudutil{background:radial-gradient(100% 90% at 50% 0,rgba(224,187,103,.17),transparent 62%),linear-gradient(180deg,rgba(48,36,23,.92),rgba(18,13,9,.92))!important;border:1px solid rgba(226,187,94,.62)!important;color:#f6e4b5!important;box-shadow:inset 0 0 0 2px rgba(7,4,2,.3),inset 0 1px 0 rgba(255,235,183,.17),0 3px 10px rgba(0,0,0,.48)!important}
  body.plazamode .top .row .chip:hover,body.plazamode .top .row #menubtn:hover,body.plazamode .top .utilityrail .hudutil:hover{border-color:#f0cf79!important;filter:brightness(1.12)}
  /* ARENA_SLICE_END 15-lexicon-marble-gold */
  /* ARENA_SLICE_START 16-boards-identity-arrival -- spliced from arena-css/16-boards-identity-arrival.css; edit that file, not this region */
  .card, .empstat, .emphud, .emptrib, .empcard{background:linear-gradient(180deg,var(--mgparch),var(--mgparch2)) !important;color:var(--mgink) !important;border:1.5px solid #b99a5c !important;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.35), inset 0 0 26px rgba(185,150,80,.16)}
  .card .t, .empstat .esl, .empname{color:var(--mgblue2) !important}
  .card .muted, .empstat .esv, .empsub{color:var(--mgink2) !important}
  /* Empire HUD sat on dark; on parchment its gold text needs dark ink. */
  .emphud .empgold, .emphud .empgold b, .emprankn, .empbig{color:var(--mgblue2) !important}
  .emprlvl, .empratebox{color:var(--mgink2) !important}
  .boardovl{background:radial-gradient(circle at 50% 42%,rgba(32,39,43,.2),rgba(4,6,8,.84) 68%)!important;-webkit-backdrop-filter:blur(8px) saturate(.78);backdrop-filter:blur(8px) saturate(.78)}
  .boardcard{position:relative;background:radial-gradient(circle at 18% 0,rgba(197,153,73,.09),transparent 32%),linear-gradient(155deg,rgba(35,38,41,.985),rgba(13,15,17,.99) 66%,rgba(20,16,12,.99))!important;color:#eee7d9!important;border:1px solid rgba(211,176,105,.56)!important;border-image:none!important;border-radius:18px!important;box-shadow:0 30px 90px rgba(0,0,0,.7),inset 0 1px rgba(255,246,218,.06),inset 0 0 0 8px rgba(255,255,255,.012)!important}
  .boardcard::after{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(242,211,146,.78),transparent);pointer-events:none}
  .boardcard h3{margin:0!important;padding:1px 0 12px!important;border-bottom:1px solid rgba(210,178,111,.22);border-radius:0;background:none!important;color:#f3e7ce!important;font:650 clamp(18px,2.3vw,24px)/1.15 system-ui,-apple-system,'Segoe UI',sans-serif!important;letter-spacing:.015em;text-align:left!important;text-shadow:none!important;box-shadow:none!important}
  .boardcard .muted,.boardcard .empty{color:#aaa79f!important}
  .boardhead{min-height:44px;margin-bottom:12px!important}.boardclose{flex:0 0 auto;width:38px;height:38px;min-height:38px;padding:0!important;border-radius:50%!important;font-size:15px!important}
  dialog{background:radial-gradient(circle at 20% 0,rgba(197,153,73,.09),transparent 34%),linear-gradient(155deg,#25282b,#0f1113 68%);color:#eee7d9;border:1px solid rgba(211,176,105,.56);border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.72)}
  dialog h2{color:#f3e7ce;font-family:system-ui,-apple-system,'Segoe UI',sans-serif}
  dialog .muted{color:#aaa79f}
  dialog input,dialog textarea{background:rgba(5,7,9,.72)!important;color:#f4ecdd!important;border:1px solid rgba(203,174,116,.4)!important}
  .howto-briefing-ovl{padding:18px!important}.boardcard.howto-briefing{max-width:680px!important;padding:0!important;overflow:hidden!important}.howto-briefing .boardhead{margin:0!important;padding:18px 20px 15px;border-bottom:1px solid rgba(211,177,105,.2);background:rgba(9,11,13,.42)}.howto-briefing .boardhead h3{padding:0!important;border:0!important;font-size:clamp(19px,3vw,26px)!important}.howto-body{padding:19px 20px 21px}.howto-kicker{margin-bottom:10px;color:#d1aa62;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.howto-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:11px;padding:12px 0;border-top:1px solid rgba(255,255,255,.07);color:#d7d2c8;font-size:13.5px;line-height:1.52}.howto-step:first-of-type{border-top:0}.howto-number{display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(215,178,105,.38);border-radius:50%;color:#e0bb73;font:800 9px/1 system-ui,sans-serif;letter-spacing:.06em}.howto-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:16px;border-top:1px solid rgba(214,179,108,.2)}.howto-actions small{color:#888984;font-size:10px}.howto-actions .btn{min-width:170px}
  @media(max-width:600px){.howto-briefing-ovl{align-items:flex-end!important;padding:0!important}.boardcard.howto-briefing{max-height:92dvh!important;border-width:1px 0 0!important;border-radius:18px 18px 0 0!important}.howto-briefing .boardhead{padding:15px 15px 12px}.howto-body{padding:13px 15px max(18px,env(safe-area-inset-bottom))}.howto-step{padding:10px 0;font-size:12.5px}.howto-actions{align-items:stretch;flex-direction:column}.howto-actions .btn{width:100%}.boardcard.howto-briefing{overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.howto-actions{position:sticky;bottom:0;z-index:1;margin:13px -15px 0;padding:12px 15px max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(13,15,17,.86),rgba(13,15,17,.985) 38%)}.howto-actions .btn{min-height:44px}}
  #view>h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:.6px;color:#f0c468;text-shadow:0 2px 0 rgba(90,60,10,.55),0 4px 10px rgba(0,0,0,.5)}
  .menudrop{background:linear-gradient(180deg,#f4e8cb,#e9d8b0) !important;border:2px solid #b99a5c !important;box-shadow:0 14px 34px rgba(0,0,0,.5) !important}
  .menudrop a{color:var(--mgink) !important;border-bottom:1px solid rgba(150,120,60,.35) !important}
  .menudrop a:hover{background:rgba(217,161,59,.18) !important}
  .menudrop div{color:var(--mgblue2) !important;border-bottom:2px solid var(--mggold) !important;font-family:Georgia,'Times New Roman',serif}
  /* Identity is a moment of arrival, not a cartoon utility dialog. */
  .boardovl.identity-choices-ovl{box-sizing:border-box;height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(circle at 50% 43%,rgba(18,31,45,.12),rgba(5,7,10,.76) 68%,rgba(2,3,5,.88))!important;-webkit-backdrop-filter:blur(6px) saturate(.72);backdrop-filter:blur(6px) saturate(.72)}
  .boardcard.identity-choices{position:relative;isolation:isolate;max-width:820px!important;max-height:calc(100vh - 28px)!important;max-height:min(calc(100dvh - 28px),720px)!important;padding:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-color:#957340 #15181d;border:1px solid rgba(210,177,109,.64)!important;border-image:none!important;border-radius:24px!important;background:radial-gradient(circle at 18% 30%,rgba(214,169,87,.12),transparent 36%),linear-gradient(145deg,rgba(34,39,46,.985),rgba(15,18,23,.99) 62%,rgba(25,18,13,.99))!important;color:#ede4d2!important;box-shadow:0 32px 100px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,243,210,.08),inset 0 -32px 70px rgba(0,0,0,.28)!important}
  .boardcard.identity-choices::before{content:"";position:absolute;z-index:-1;inset:9px;border:1px solid rgba(209,173,98,.19);border-radius:17px;pointer-events:none}
  .boardcard.identity-choices>div:first-child{position:sticky;z-index:5;top:0;margin:0!important;padding:16px 18px 13px;border-bottom:1px solid rgba(213,177,102,.24);background:linear-gradient(180deg,rgba(54,49,43,.98),rgba(25,27,31,.96));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
  .boardcard.identity-choices>div:first-child h3{margin:0!important;padding:0!important;background:none!important;color:#f2dfb4!important;font:700 clamp(18px,2.2vw,24px)/1.1 Georgia,'Times New Roman',serif!important;letter-spacing:.08em;text-align:left;text-transform:uppercase;text-shadow:0 2px 7px #000!important;box-shadow:none!important}
  .boardcard.identity-choices>div:first-child .btn{width:40px;height:40px;padding:0;border:1px solid rgba(218,186,119,.46)!important;border-radius:50%!important;background:rgba(8,10,13,.62)!important;color:#eadbbd!important;font-size:17px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.035)!important}
  .identity-hero{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:250px}
  .identity-stage{position:relative;display:grid;place-items:center;overflow:hidden;border-right:1px solid rgba(210,176,104,.2);background:radial-gradient(circle at 50% 46%,rgba(232,195,112,.22),transparent 38%),linear-gradient(180deg,rgba(71,70,68,.3),rgba(16,18,22,.54))}
  .identity-stage::before{content:"";position:absolute;width:154px;height:154px;border:1px solid rgba(220,188,118,.32);border-radius:50%;box-shadow:0 0 42px rgba(222,170,73,.13),inset 0 0 35px rgba(229,194,118,.08)}
  .identity-stage::after{content:"";position:absolute;left:22%;right:22%;bottom:25px;height:17px;border-radius:50%;background:rgba(0,0,0,.45);filter:blur(6px)}
  .identity-avatar{position:relative;z-index:2;height:220px;display:flex;align-items:flex-end;filter:drop-shadow(0 12px 11px rgba(0,0,0,.58))}.identity-avatar svg{height:210px!important;width:auto!important}
  .identity-copy{display:flex;flex-direction:column;justify-content:center;padding:28px clamp(22px,4vw,44px)}
  .identity-kicker{color:#d6ae61;font:800 10px/1.2 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}
  .identity-copy h4{margin:7px 0 8px;color:#f6e8c8;font:700 clamp(25px,4vw,38px)/1.03 Georgia,'Times New Roman',serif;letter-spacing:-.02em}
  .identity-copy p{max-width:480px;margin:0;color:#bdb7aa;font:500 14px/1.55 system-ui,sans-serif}.identity-returning{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;padding-top:11px;border-top:1px solid rgba(215,180,106,.18);color:#aaa49a;font:600 9px/1.3 system-ui,sans-serif}.identity-returning button{appearance:none;flex:0 0 auto;padding:4px 8px;border:1px solid rgba(225,185,101,.4);border-radius:999px;background:rgba(8,10,13,.54);color:#edcb83;font:800 9px/1 system-ui,sans-serif;cursor:pointer}.identity-returning button:hover,.identity-returning button:focus-visible{border-color:#e1b965;background:rgba(104,78,39,.55);outline:none}
  .avatar-uncreated-sprite{--mystery-size:64px;position:relative;display:inline-block;vertical-align:bottom;width:var(--mystery-size);height:calc(var(--mystery-size) * 2.09);overflow:visible;line-height:0;filter:drop-shadow(0 4px 3px rgba(22,12,4,.92)) drop-shadow(0 0 7px rgba(255,205,83,.66))}.avatar-uncreated-sprite img{display:block;width:100%;height:100%;object-fit:contain}.avatar-uncreated-sprite.portrait{width:var(--mystery-size);height:var(--mystery-size);overflow:hidden;border-radius:50%;background:#101926}.avatar-uncreated-sprite.portrait img{position:absolute;top:-2%;left:-23%;width:146%;height:auto;max-width:none}.identity-avatar .avatar-uncreated-sprite{filter:drop-shadow(0 9px 7px rgba(0,0,0,.72)) drop-shadow(0 0 9px rgba(255,205,83,.4))}
  .identity-onboarding{display:grid;gap:17px;padding:0 clamp(20px,4vw,42px) 28px}.identity-step{padding-top:16px;border-top:1px solid rgba(216,178,99,.19)}.identity-step:first-child{padding-top:0;border-top:0}.identity-step-head{display:flex;align-items:center;gap:9px;margin-bottom:9px}.identity-step-number{display:grid;place-items:center;width:24px;height:24px;border:1px solid rgba(225,185,101,.48);border-radius:50%;background:rgba(9,11,14,.44);color:#e7c477;font:800 10px/1 system-ui,sans-serif}.identity-step-head b{color:#f0ddb5;font:700 15px var(--serif)}.identity-step-head small{margin-left:auto;color:#8f918e;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
  .identity-name-input{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid rgba(221,185,110,.42);border-radius:11px;background:rgba(4,6,8,.5);color:#fff0d1;font:700 16px system-ui,sans-serif;outline:none}.identity-name-input:focus{border-color:#e4bd6d;box-shadow:0 0 0 3px rgba(228,189,109,.12)}
  .identity-presentation{padding:0 clamp(20px,4vw,42px) 17px}.identity-presentation-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:8px}.identity-presentation-head b{color:#e7cf9d;font:700 13px var(--serif);letter-spacing:.04em}.identity-presentation-head span{color:#8f918e;font-size:9px;text-transform:uppercase;letter-spacing:.09em}.identity-age-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  /* The frictionless open state. Every question is answered, so the screen shows
     one field, one sentence saying what will happen, and one button. The rest is
     one tap away and unchanged underneath. Declared after the full-form rules so
     it wins without !important, and the full grid stays exactly as it was for
     anyone who opens it. */
  .identity-onboarding.identity-simple:not(.identity-open){align-content:start}
  /* With four steps hidden the card is mostly air, and air reads as unfinished.
     Centre the three things that remain and let the one action be the largest
     thing on the screen. */
  .identity-onboarding.identity-simple:not(.identity-open) .identity-name-input{min-height:52px;font-size:17px}
  /* A borrowed name, shimmering until it is yours. It has to pull the eye toward
     tapping without ever implying the field must be filled in before you can
     play, so this is decoration on a control that is already valid: the glow
     stops the moment the visitor types, and the button never depended on it. */
  .identity-name-input.is-suggested{
    background:linear-gradient(100deg,rgba(9,11,14,.55) 0%,rgba(9,11,14,.55) 38%,rgba(240,198,101,.14) 50%,rgba(9,11,14,.55) 62%,rgba(9,11,14,.55) 100%);
    background-size:280% 100%;border-color:rgba(240,198,101,.55);color:#ffe9b4;
    animation:nameShimmer 3.4s ease-in-out infinite}
  .identity-name-input.is-suggested:focus{animation:none}
  @keyframes nameShimmer{0%{background-position:120% 0;box-shadow:0 0 0 rgba(240,198,101,0)}
    50%{background-position:-20% 0;box-shadow:0 0 16px rgba(240,198,101,.20)}
    100%{background-position:-160% 0;box-shadow:0 0 0 rgba(240,198,101,0)}}
  @media(prefers-reduced-motion:reduce){.identity-name-input.is-suggested{animation:none;box-shadow:0 0 12px rgba(240,198,101,.16)}}
  .identity-name-hint{margin-top:5px;color:#c2ab7d;font-size:11px;letter-spacing:.02em}
  .identity-onboarding.identity-open .identity-name-hint{display:none}
  .identity-onboarding.identity-simple:not(.identity-open) .identity-finish{grid-template-columns:minmax(0,1fr);gap:8px;justify-items:stretch}
  .identity-onboarding.identity-simple:not(.identity-open) .identity-finish .btn{width:100%;min-height:56px;font-size:15px;padding:10px 14px}
  .identity-onboarding.identity-simple:not(.identity-open) .identity-finish-status{order:2;text-align:center;font-size:11px;opacity:.75}
  /* Nothing is hidden behind a toggle any more. The Change button, the summary
     it collapsed into, and the standalone Plaza door are all gone: the Plaza is
     a tile in the grid like every other destination, so the screen has exactly
     one gold button and it says where you are going. */

  /* The Plaza tile: the one destination that is a place rather than a game, so
     it gets a purple wash instead of the warm gold the games share. */
  .identity-game-plaza{border-color:rgba(176,146,216,.32)!important;
    background:linear-gradient(150deg,rgba(58,42,80,.54),rgba(18,13,27,.76))!important}
  .identity-game-plaza:hover,.identity-game-plaza:focus-visible,.identity-game-plaza.on{
    border-color:#c3a2ec!important;background:linear-gradient(150deg,rgba(90,63,128,.66),rgba(24,17,35,.86))!important}
  .identity-game-plaza b{color:#ead9fb}
  /* The Pet House is the other destination that is a place rather than a game.
     Green so the two places are distinguishable from each other as well as from
     the warm gold the games share. */
  .identity-game-pethouse{border-color:rgba(146,200,160,.3)!important;
    background:linear-gradient(150deg,rgba(36,62,46,.52),rgba(13,21,17,.76))!important}
  .identity-game-pethouse:hover,.identity-game-pethouse:focus-visible,.identity-game-pethouse.on{
    border-color:#9fd8b2!important;background:linear-gradient(150deg,rgba(54,98,72,.64),rgba(16,27,21,.86))!important}
  .identity-game-pethouse b{color:#dcf3e3}
  .identity-game-pethouse.on{box-shadow:0 8px 24px rgba(0,0,0,.42),inset 0 0 0 1px rgba(168,225,187,.2)!important}
  .identity-game-plaza.on{box-shadow:0 8px 24px rgba(0,0,0,.42),inset 0 0 0 1px rgba(206,172,247,.2)!important}

  /* Squash and settle on the picked tile. ~260ms, capped, and purely decorative:
     the selection is already applied before this runs. */
  @keyframes identpick{0%{transform:scale(1)}34%{transform:scale(1.075)}68%{transform:scale(.985)}100%{transform:scale(1)}}
  .identity-game.picked,.identity-age.picked{animation:identpick .26s cubic-bezier(.2,.8,.3,1)}
  @media(prefers-reduced-motion:reduce){.identity-game.picked,.identity-age.picked{animation:none}}
.identity-presentation-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .identity-age{appearance:none;display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;min-height:64px;padding:9px 12px;border:1px solid rgba(216,178,99,.24);border-radius:13px;background:rgba(7,10,13,.36);color:#d7d2c8;text-align:left;cursor:pointer}.identity-age:hover,.identity-age:focus-visible,.identity-age.on{border-color:#e1b965;background:linear-gradient(145deg,rgba(104,78,39,.55),rgba(20,27,31,.82));outline:none}.identity-age-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(227,193,120,.3);border-radius:50%;background:rgba(4,6,8,.4);font-size:20px}.identity-age b{display:block;color:#f2ddb0;font:700 14px var(--serif)}.identity-age small{display:block;margin-top:2px;color:#9a9e98;font-size:8.5px;line-height:1.25;text-transform:uppercase;letter-spacing:.04em}
  .identity-body{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center;min-height:72px;padding:7px 9px;border:1px solid rgba(216,178,99,.24);border-radius:13px;background:rgba(7,10,13,.36);color:#d7d2c8;text-align:left;cursor:pointer}.identity-body:hover,.identity-body:focus-visible,.identity-body.on{border-color:#e1b965;background:linear-gradient(145deg,rgba(104,78,39,.55),rgba(20,27,31,.82));outline:none}.identity-body-preview{height:58px;display:grid;place-items:center;overflow:hidden}.identity-body-preview svg{height:66px!important;width:auto!important}.identity-body b{display:block;color:#f2ddb0;font:700 13px var(--serif)}.identity-body small{display:block;margin-top:2px;color:#8f9592;font-size:8.5px;line-height:1.2;text-transform:uppercase;letter-spacing:.04em}
  .identity-choice-gate{grid-column:1/-1;padding:13px;border:1px dashed rgba(218,183,109,.3);border-radius:12px;color:#a8a49b;font-size:11px;text-align:center}.identity-step.atelier-bound .identity-games{opacity:.42;filter:saturate(.5);pointer-events:none}.identity-step.atelier-bound .identity-step-head small{color:#c7a9d4}
  @media(max-width:680px){.identity-presentation{padding:0 14px 12px}.identity-age-row,.identity-presentation-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.identity-age{grid-template-columns:1fr;justify-items:center;min-height:91px;padding:7px;text-align:center}.identity-body{grid-template-columns:1fr;justify-items:center;min-height:102px;padding:5px;text-align:center}.identity-body-preview{height:55px}.identity-body b{font-size:11px}.identity-body small,.identity-age small{font-size:7px}}
  /* Two retired rows, reborn as chips on the header line they belong to. A
     full-width row of 8px small print is real estate nobody spends attention
     on; a chip is glanceable, and the Atelier one still toggles exactly what
     the row did. */
  .identity-head-chips{display:flex;gap:6px;margin-left:auto;flex:0 0 auto}
  .identity-chip{appearance:none;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 11px;
    border:1px solid rgba(216,178,99,.3);border-radius:999px;background:rgba(9,11,14,.5);color:#d9c79c;
    font:700 11px/1 system-ui,sans-serif;cursor:pointer;white-space:nowrap;
    transition:transform .15s ease,border-color .15s ease,background .15s ease}
  .identity-chip:hover,.identity-chip:focus-visible{border-color:#f0c665;background:rgba(216,161,57,.16);color:#f7e3b2;outline:none;transform:translateY(-1px)}
  .identity-chip.on{border-color:#f0c665;background:linear-gradient(145deg,rgba(124,92,44,.6),rgba(20,27,31,.85));color:#ffe9b8}
  .identity-chip.on .identity-chip-icon{filter:drop-shadow(0 0 6px rgba(255,214,120,.55))}
  .identity-chip-icon{font-size:14px;line-height:1}
  .identity-chip.picked{animation:identpick .26s cubic-bezier(.2,.8,.3,1)}
  @media(prefers-reduced-motion:reduce){.identity-chip.picked,.identity-chip:hover{animation:none;transform:none}}
  .identity-games{display:grid;grid-template-columns:repeat(var(--dest-count,4),minmax(0,1fr));gap:9px}.identity-game{appearance:none;min-width:0;min-height:118px;padding:14px 10px;border:1px solid rgba(216,178,99,.22);border-radius:12px;background:rgba(7,10,13,.36);color:#d7d2c8;text-align:center;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.identity-game:hover,.identity-game:focus-visible,.identity-game.on{border-color:#e1b965;background:linear-gradient(145deg,rgba(104,78,39,.55),rgba(20,27,31,.82));outline:none}.identity-game:hover,.identity-game:focus-visible{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.42)}.identity-game.on{box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,231,175,.16)}@media(prefers-reduced-motion:reduce){.identity-game:hover,.identity-game:focus-visible{transform:none}}.identity-game-icon{display:block;font-size:32px;line-height:1.05;filter:drop-shadow(0 3px 5px rgba(0,0,0,.45))}.identity-game b{display:block;margin-top:7px;color:#f2ddb0;font:700 15px var(--serif)}.identity-game small{display:block;margin-top:4px;color:#a49c8d;font-size:10.5px;line-height:1.3}.identity-finish{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding-top:16px;border-top:1px solid rgba(216,178,99,.22)}.identity-finish-status{color:#a8a49b;font-size:10px;line-height:1.35}.identity-finish .btn{min-width:250px;min-height:49px}.identity-finish .btn:disabled{filter:saturate(.3);opacity:.55;cursor:not-allowed}
  .boardcard.identity-rename{max-width:620px!important;border-image:none!important;border:1px solid rgba(210,177,109,.62)!important;border-radius:20px!important;background:linear-gradient(150deg,#31343a,#171a1f 65%,#261b13)!important;color:#eee2ca!important}.boardcard.identity-rename h3{background:none!important;color:#f1ddb1!important;box-shadow:none!important}.boardcard.identity-rename .muted{color:#aaa59a!important}.boardcard.identity-rename input{width:100%;box-sizing:border-box;padding:13px 15px;border:1px solid rgba(221,185,110,.48)!important;border-radius:11px;background:rgba(4,6,8,.52)!important;color:#fff0d1!important}
  @media(max-width:680px){.boardovl.identity-choices-ovl{align-items:flex-start!important;padding:8px!important;padding-top:max(8px,env(safe-area-inset-top))!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important}.boardcard.identity-choices{margin:auto 0!important;max-height:calc(100vh - 16px)!important;max-height:calc(100dvh - 16px)!important;border-radius:18px!important}.identity-hero{grid-template-columns:126px minmax(0,1fr);min-height:200px}.identity-avatar{height:170px}.identity-avatar svg{height:160px!important}.identity-copy{padding:20px 15px}.identity-copy h4{font-size:25px}.identity-copy p{font-size:12px}.identity-onboarding{padding:0 14px max(18px,env(safe-area-inset-bottom))}.identity-games{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}.identity-game{min-height:104px}.identity-finish{grid-template-columns:1fr}.identity-finish .btn{width:100%;min-width:0}}
  @media(max-height:700px){.boardovl.identity-choices-ovl{align-items:flex-start!important;padding:6px!important}.boardcard.identity-choices{margin:auto 0!important;max-height:calc(100vh - 12px)!important;max-height:calc(100dvh - 12px)!important}.boardcard.identity-choices>div:first-child{padding:11px 14px 9px}.identity-hero{min-height:168px}.identity-avatar{height:145px}.identity-avatar svg{height:138px!important}.identity-copy{padding-top:13px;padding-bottom:13px}.identity-copy h4{margin:4px 0 5px;font-size:22px}.identity-copy p{font-size:11px;line-height:1.4}.identity-body{min-height:88px}.identity-onboarding{gap:12px}.identity-step{padding-top:12px}}
  /* The arrival board is one viewport-sized workbench: at any viewport that can
     hold it, the full decision stays visible at once and nothing scrolls.
     ⚠ It may NOT refuse to scroll when it does not fit. `height:100dvh` does not
     shrink for the on-screen keyboard on iOS, so the moment a phone visitor taps
     the name field -- which this screen explicitly invites them to do -- the
     bottom of the card sits behind the keyboard. With `overflow:hidden` the
     finish row was then unreachable by any gesture: measured at a 340px-tall
     viewport, "Create my character" sat at y=520 with the card clipped at 328
     and neither the card nor the overlay would pan. Scrolling is the fallback
     that only engages when the workbench cannot fit, which is exactly the case
     where "visible at once" has already failed. */
  .boardovl.identity-choices-ovl{padding:10px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain}
  .boardcard.identity-choices{width:min(1180px,calc(100vw - 20px))!important;max-width:1180px!important;height:auto!important;max-height:min(760px,calc(100dvh - 20px))!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .boardcard.identity-choices>div:first-child{position:relative;top:auto;padding:13px 18px 11px}
  .identity-workbench{display:grid;grid-template-columns:245px minmax(0,1fr);height:auto;min-height:0}
  .identity-hero{display:flex;min-height:0;flex-direction:column;border-right:1px solid rgba(210,176,104,.2)}
  .identity-stage{min-height:0;flex:1;border-right:0}.identity-avatar{height:300px}.identity-avatar svg{height:286px!important}.identity-copy{display:block;padding:16px 17px 18px;border-top:1px solid rgba(210,176,104,.16)}.identity-copy h4{margin:6px 0 7px;font-size:24px}.identity-copy p{font-size:11px;line-height:1.45}.identity-returning{margin-top:9px;padding-top:8px;font-size:8px}.identity-returning button{font-size:8px}
  .identity-onboarding{display:grid;grid-template-columns:minmax(220px,.82fr) minmax(380px,1.45fr);grid-template-areas:"name kind" "body body" "game game" "finish finish";gap:9px 13px;min-height:0;padding:13px 17px 15px}.identity-step{min-width:0;padding-top:8px}.identity-name-step{grid-area:name}.identity-kind-step{grid-area:kind}.identity-body-step{grid-area:body}.identity-game-step{grid-area:game}.identity-finish{grid-area:finish}.identity-name-step,.identity-kind-step{padding-top:0;border-top:0}.identity-step-head{gap:7px;margin-bottom:6px}.identity-step-number{width:21px;height:21px;font-size:9px}.identity-step-head b{font-size:13px}.identity-step-head small{font-size:7.5px}.identity-name-input{height:48px;padding:9px 12px;font-size:15px}
  .identity-age-row{gap:5px}.identity-age{grid-template-columns:25px minmax(0,1fr);gap:6px;min-height:48px;padding:5px 7px;border-radius:11px}.identity-age-icon{width:25px;height:25px;font-size:14px}.identity-age b{font-size:12.5px}.identity-age small{font-size:6.3px;line-height:1.15}
  .identity-presentation-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.identity-body{grid-template-columns:52px minmax(0,1fr);gap:7px;min-height:79px;padding:5px 7px;border-radius:12px}.identity-body:hover,.identity-body:focus-visible,.identity-body.on{transform:translateY(-1px)}.identity-body-preview{height:68px}.identity-body-preview svg{height:78px!important}.identity-body b{font-size:11px}.identity-body small{font-size:6.7px}.identity-choice-gate{padding:17px;font-size:10px}

  .identity-games{gap:7px;grid-template-columns:repeat(var(--dest-count,4),minmax(0,1fr))}.identity-game{min-height:104px;padding:11px 8px;border-radius:12px}.identity-game-icon{font-size:31px}.identity-game b{margin-top:5px;font-size:13.5px}.identity-game small{margin-top:3px;font-size:9.5px}.identity-finish{gap:10px;padding-top:8px}.identity-finish-status{font-size:8px}.identity-finish .btn{min-height:41px;padding-top:7px;padding-bottom:7px}
  @media(max-width:680px){.boardovl.identity-choices-ovl{padding:max(5px,env(safe-area-inset-top)) 5px max(5px,env(safe-area-inset-bottom))!important}.boardcard.identity-choices{width:calc(100vw - 10px)!important;height:calc(100dvh - 10px)!important;max-height:calc(100dvh - 10px)!important;margin:0!important;border-radius:16px!important}.boardcard.identity-choices>div:first-child{padding:8px 10px 7px}.boardcard.identity-choices>div:first-child .btn{width:32px;height:32px;min-height:32px}.identity-workbench{display:block;height:calc(100% - 48px)}.identity-hero{display:grid;grid-template-columns:96px minmax(0,1fr);height:104px;min-height:104px;border-right:0;border-bottom:1px solid rgba(210,176,104,.2)}.identity-stage{border-right:1px solid rgba(210,176,104,.16)}.identity-stage::before{width:75px;height:75px}.identity-stage::after{bottom:7px}.identity-avatar{height:96px}.identity-avatar .avatar-uncreated-sprite{--mystery-size:44px!important}.identity-avatar svg{height:94px!important}.identity-copy{display:flex;flex-direction:column;justify-content:center;padding:5px 8px;border-top:0}.identity-kicker{font-size:10px}.identity-copy h4{margin:2px 0;font-size:14px}.identity-copy p{font-size:10.5px;line-height:1.3}.identity-returning{gap:5px;margin-top:4px;padding-top:3px;font-size:10px}.identity-returning button{padding:3px 6px;font-size:10px}.identity-onboarding{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);grid-template-areas:"name kind" "body body" "game game" "finish finish";gap:4px 7px;align-content:start;height:calc(100% - 104px);padding:5px 7px max(5px,env(safe-area-inset-bottom))}.identity-step{padding-top:3px}.identity-step-head{gap:4px;margin-bottom:3px}.identity-step-number{width:20px;height:20px;font-size:9px}.identity-step-head b{font-size:12.5px}.identity-step-head small{display:none}.identity-name-input{height:52px;padding:9px 12px;font-size:17px}.identity-age-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.identity-age{display:block;min-height:64px;padding:8px 4px;text-align:center}.identity-age-icon{width:30px;height:30px;margin:auto;font-size:17px}.identity-age b{margin-top:3px;font-size:12.5px}.identity-age small{display:none}.identity-presentation-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.identity-body{display:block;min-height:118px;padding:9px 6px;text-align:center}.identity-body-preview{height:82px}.identity-body-preview svg{height:96px!important}.identity-body b{margin-top:3px;font-size:14.5px}.identity-body small{display:none}.identity-choice-gate{padding:16px 4px;font-size:10px}.identity-games{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px}.identity-games.odd-tail .identity-game:last-child{grid-column:1/-1}.identity-game{min-height:112px;padding:12px 8px}.identity-game-icon{font-size:32px}.identity-game b{font-size:14.5px}.identity-game small{display:block;font-size:10.5px;line-height:1.3}.identity-finish{grid-template-columns:minmax(0,1fr) minmax(142px,1.15fr);gap:7px;padding:8px 7px;margin:0 -7px;position:sticky;bottom:0;z-index:3;border-top:1px solid rgba(216,178,99,.22);background:linear-gradient(180deg,#171a1f,#101318)}.identity-finish-status{font-size:10px}.identity-finish .btn{width:100%;min-width:0;min-height:46px;padding:8px 10px;font-size:13.5px}}
  @media(max-height:700px) and (min-width:681px){.boardcard.identity-choices{max-height:calc(100dvh - 12px)!important}.identity-workbench{grid-template-columns:200px minmax(0,1fr)}.identity-avatar{height:225px}.identity-avatar svg{height:215px!important}.identity-copy h4{font-size:19px}.identity-copy p{font-size:9px}.identity-onboarding{gap:6px 10px;padding:8px 12px}.identity-body{min-height:104px}.identity-body-preview{height:74px}.identity-body-preview svg{height:86px!important}.identity-game{min-height:58px}}
  /* Entering a camp building replaces the field with a painted, usable room. */
  .boardovl.deepinteriorovl{align-items:stretch!important;padding:58px clamp(10px,3vw,34px) 22px!important;overflow:auto;background:#08090a!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  .boardovl.deepinteriorovl::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,220,146,.08),transparent 22%,rgba(0,0,0,.48));box-shadow:inset 0 0 130px rgba(0,0,0,.68)}
  .boardovl.deepinteriorovl .boardcard{position:relative;margin:auto;max-height:none!important;border-image:none!important;color:#eee1c5!important}
  .boardovl.deep-shop-interior{background:linear-gradient(180deg,rgba(5,5,6,.22),rgba(4,5,6,.86)),url('deep-shop-interior-v1.webp') center/cover fixed!important}
  .boardovl.deep-shop-interior .boardcard{width:min(1080px,96vw)!important;max-width:1080px!important;border:1px solid rgba(216,177,98,.6)!important;border-radius:22px!important;background:linear-gradient(180deg,rgba(21,18,15,.9),rgba(12,12,12,.97))!important;box-shadow:0 30px 90px rgba(0,0,0,.76),inset 0 0 0 1px rgba(255,239,196,.08)!important}
  .boardovl.deep-shop-interior .deepshopmodal>div:first-child{margin:0!important;padding:14px 17px!important;border-bottom:1px solid rgba(219,180,103,.24);background:linear-gradient(180deg,rgba(50,40,31,.98),rgba(20,19,18,.98))}.boardovl.deep-shop-interior .deepshopmodal>div:first-child h3{margin:0!important;padding:0!important;background:none!important;color:#f2daa6!important;box-shadow:none!important;text-align:left!important;letter-spacing:.04em}
  .deepshopscene{min-height:205px;display:flex;align-items:flex-end;margin:-14px -16px 14px;padding:20px;border-bottom:1px solid rgba(230,190,108,.38);background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(9,8,7,.16) 43%,rgba(9,8,7,.93)),url('deep-shop-interior-v1.webp') center 55%/cover no-repeat;box-shadow:inset 0 -24px 38px rgba(0,0,0,.26)}
  .deepshopscenecopy{max-width:620px;text-shadow:0 2px 7px #000}.deepshopscenecopy small{display:block;color:#e4bd72;font:900 9px/1 system-ui,sans-serif;letter-spacing:.18em}.deepshopscenecopy strong{display:block;margin:5px 0 4px;color:#fff0c5;font:900 clamp(22px,3vw,34px)/1 Georgia,'Times New Roman',serif}.deepshopscenecopy span{color:#d7c9ad;font:750 12px/1.35 system-ui,sans-serif}
  .boardovl.deep-shop-interior .deepshopcounter{border-color:rgba(218,180,102,.34);background:linear-gradient(145deg,rgba(74,59,42,.82),rgba(20,20,19,.9))}.boardovl.deep-shop-interior .deepshoptabs{border-color:rgba(213,176,99,.28);background:rgba(11,12,13,.84)}
  .boardovl.deep-shop-interior .deepshopbody{max-height:calc(88vh - 68px);max-height:calc(88dvh - 68px)}
  .boardovl.deep-house-interior{background:linear-gradient(180deg,rgba(6,6,7,.22),rgba(5,5,6,.88)),url('deep-house-interior-v1.webp') center/cover fixed!important}
  .boardcard.deephousemodal{width:min(1040px,96vw)!important;max-width:1040px!important;padding:0!important;overflow:hidden!important;border:1px solid rgba(218,180,105,.62)!important;border-image:none!important;border-radius:22px!important;background:#151413!important;box-shadow:0 30px 90px rgba(0,0,0,.76),inset 0 0 0 1px rgba(255,239,201,.08)!important}
  .deephousemodal>div:first-child{margin:0!important;padding:13px 16px!important;border-bottom:1px solid rgba(219,180,103,.25);background:linear-gradient(180deg,rgba(50,40,31,.98),rgba(20,19,18,.98))}.deephousemodal>div:first-child h3{margin:0!important;padding:0!important;background:none!important;color:#f2daa6!important;box-shadow:none!important;text-align:left!important}
  .deephouseroom{position:relative;display:grid;grid-template-columns:minmax(420px,1.55fr) minmax(270px,.75fr);min-height:520px;overflow:hidden;background:#171513;color:#eee0c2}
  .deephousescene{position:relative;min-height:520px;border-right:1px solid rgba(219,180,103,.25);background:linear-gradient(90deg,transparent 48%,rgba(6,5,4,.18)),url('deep-house-interior-v1.webp') center/cover no-repeat}
  .deephouseplayer{position:absolute;z-index:3;left:43%;bottom:5%;height:225px;filter:drop-shadow(0 13px 10px rgba(0,0,0,.62))}.deephouseplayer svg{height:215px!important;width:auto!important}
  .deephousepanel{display:flex;flex-direction:column;justify-content:center;padding:30px;background:linear-gradient(90deg,rgba(16,14,13,.88),rgba(12,12,12,.98));box-shadow:-18px 0 30px rgba(0,0,0,.26)}.deephousekicker{color:#dcb361;font:800 10px system-ui,sans-serif;letter-spacing:.17em;text-transform:uppercase}.deephousepanel h4{margin:7px 0 8px;color:#f6e6c1;font:700 30px/1 Georgia,'Times New Roman',serif}.deephousepanel p{margin:0 0 18px;color:#bfb5a2;line-height:1.5}
  .deephousemeter{height:10px;margin:3px 0 16px;border:1px solid rgba(139,199,230,.35);border-radius:999px;background:rgba(0,0,0,.42);overflow:hidden}.deephousemeter i{display:block;height:100%;background:linear-gradient(90deg,#287abd,#8fe5ff);box-shadow:0 0 12px #5ebce8}.deephouseactions{display:grid;gap:9px}.deephouseactions .btn{min-height:46px}
  .deepchip-xp{border-color:rgba(207,159,255,.46)!important;background:linear-gradient(180deg,rgba(73,38,104,.94),rgba(29,18,42,.96))!important;color:#ead2ff!important}.deepchip-xp.deepxppulse{animation:deepXpPulse .42s ease-out}
  .deeptool-energy.deepenergyhint{position:relative;z-index:8;border-color:#9ef2ff!important;animation:deepEnergyHint .75s ease-in-out infinite;box-shadow:0 0 0 4px rgba(89,213,255,.28),0 0 30px rgba(84,221,255,.9)!important}.deeptool-energy.deepenergyhint:before{content:'DRINK ME';position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);padding:4px 7px;border:1px solid rgba(166,242,255,.75);border-radius:7px;background:#123948;color:#d8faff;font:900 8px system-ui,sans-serif;letter-spacing:.08em;white-space:nowrap;box-shadow:0 4px 16px rgba(0,0,0,.5)}
  @keyframes deepEnergyHint{0%,100%{transform:scale(1)}50%{transform:scale(1.13);filter:brightness(1.35)}}
  @media(prefers-reduced-motion:reduce){.deeptool-energy.deepenergyhint{animation:none;filter:brightness(1.3)}}
  .deeptraining{margin:4px 0 18px}.deeptraininghead{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:9px}.deeptraininghead strong{color:#f5dfae;font:800 12px system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}.deeptraininghead span{color:#d6b0fa;font:800 12px system-ui,sans-serif}.deeptraininggrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.deeptrainingcard{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;min-height:58px;padding:8px;border:1px solid rgba(215,183,121,.2);border-radius:12px;background:linear-gradient(145deg,rgba(67,54,43,.58),rgba(21,19,18,.88))}.deeptrainingcard.deepabilityup{animation:deepAbilityUp .55s ease-out}.deeptrainingicon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(0,0,0,.26);font-size:20px}.deeptrainingcopy b{display:block;color:#f0dfbd;font-size:11px}.deeptrainingcopy small{display:block;color:#aa9f8d;font-size:9px}.deeptrainingrank{color:#cc9dfa;font:900 9px system-ui,sans-serif}.deeptrainingcard button{grid-column:1/-1;min-height:30px!important;font-size:10px!important}.deeptrainingcard button:disabled{opacity:.42}
  /* ARENA_SLICE_END 16-boards-identity-arrival */
  /* ARENA_SLICE_START 17-oikos -- spliced from arena-css/17-oikos.css; edit that file, not this region */
  /* Oikos, a three-day household-management simulation. The full game stays inside its
     own fixed shell so the Plaza chrome never steals the dollhouse floor. */
  .oi-shell{--oi-ink:#2b2118;--oi-paper:#fff4d8;--oi-gold:#f0bb55;--oi-teal:#2e9588;--oi-coral:#dd765d;position:fixed;inset:0;z-index:2700;display:flex;flex-direction:column;overflow:hidden;color:var(--oi-paper);background:radial-gradient(circle at 18% 4%,rgba(255,202,112,.2),transparent 34%),linear-gradient(155deg,#3c2530 0,#161c2d 46%,#0c1620 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
  .oi-shell *{box-sizing:border-box}.oi-shell button,.oi-shell a{font:inherit;touch-action:manipulation}.oi-shell button:focus-visible,.oi-shell a:focus-visible{outline:3px solid #fff1a7;outline-offset:2px}
  .oi-top{position:relative;z-index:20;min-height:68px;display:grid;grid-template-columns:minmax(190px,1fr) auto minmax(250px,1fr);align-items:center;gap:12px;padding:9px max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));border-bottom:1px solid rgba(255,230,174,.24);background:linear-gradient(180deg,rgba(35,27,42,.98),rgba(21,25,37,.94));box-shadow:0 8px 28px rgba(0,0,0,.3)}
  .oi-brand{display:flex;align-items:center;gap:10px;min-width:0}.oi-back{min-height:42px;display:inline-flex;align-items:center;padding:0 13px;border:1px solid rgba(255,234,190,.28);border-radius:12px;color:#fff0c9;background:rgba(255,255,255,.06);font-weight:850;text-decoration:none}.oi-back:hover{background:rgba(255,255,255,.12)}
  .oi-title{min-width:0}.oi-title b,.oi-title small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oi-title b{color:#ffe8ad;font:800 clamp(19px,2vw,25px) Georgia,serif;letter-spacing:.01em}.oi-title small{margin-top:2px;color:#bcb4bd;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
  .oi-time{display:flex;align-items:center;justify-content:center;gap:8px}.oi-day,.oi-clock,.oi-funds{min-height:42px;display:grid;place-items:center;padding:5px 11px;border:1px solid rgba(255,224,159,.22);border-radius:12px;background:rgba(5,10,17,.34);box-shadow:inset 0 1px rgba(255,255,255,.06);font-weight:900}.oi-day{color:#f6c86e}.oi-clock{min-width:76px;color:#fff}.oi-funds{color:#7ee0c4}
  .oi-controls{display:flex;justify-content:flex-end;gap:7px}.oi-control{min-width:44px;min-height:42px;padding:0 11px;border:1px solid rgba(255,231,187,.24);border-radius:12px;color:#eee4d8;background:rgba(255,255,255,.06);cursor:pointer;font-weight:900}.oi-control.on{color:#281d12;border-color:#ffdb84;background:linear-gradient(#ffe59f,#dda441)}.oi-control:active{transform:translateY(1px)}
  .oi-game{min-height:0;flex:1;display:grid;grid-template-columns:218px minmax(420px,1fr) 250px;grid-template-rows:minmax(0,1fr) auto;gap:10px;padding:10px;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:28px 28px}
  .oi-panel{min-height:0;overflow:auto;border:1px solid rgba(245,213,151,.2);border-radius:18px;background:linear-gradient(150deg,rgba(49,39,47,.93),rgba(17,25,34,.95));box-shadow:0 14px 38px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.05)}
  .oi-household{grid-column:1;grid-row:1;padding:10px}.oi-panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 2px 9px;color:#ddc99f;font-size:9px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.oi-panel-title b{color:#fff0c9;font-size:11px;letter-spacing:.04em}
  .oi-resident{--person:#d17a64;position:relative;width:100%;display:grid;grid-template-columns:43px minmax(0,1fr);gap:8px;align-items:center;margin:0 0 8px;padding:9px;border:1px solid rgba(255,255,255,.11);border-radius:14px;color:#eee5d9;background:rgba(255,255,255,.045);cursor:pointer;text-align:left;transition:transform .15s,border-color .15s,background .15s}.oi-resident:hover{transform:translateY(-1px);background:rgba(255,255,255,.075)}.oi-resident.selected{border-color:var(--person);background:color-mix(in srgb,var(--person) 13%,rgba(18,20,28,.92));box-shadow:0 0 0 1px color-mix(in srgb,var(--person) 40%,transparent),0 8px 24px rgba(0,0,0,.2)}
  .oi-portrait{position:relative;width:43px;height:48px;display:grid;place-items:end center;border-radius:13px 13px 16px 16px;background:linear-gradient(145deg,color-mix(in srgb,var(--person) 30%,#27243a),#171923);overflow:hidden}.oi-portrait:before{content:"";position:absolute;left:12px;top:6px;width:19px;height:20px;border-radius:48% 48% 44% 44%;background:#d9a477;box-shadow:0 -5px 0 #4b332d}.oi-portrait:after{content:"";width:27px;height:23px;border-radius:12px 12px 5px 5px;background:var(--person);clip-path:polygon(15% 0,85% 0,100% 100%,0 100%)}
  .oi-resident-copy{min-width:0}.oi-resident-name{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:6px}.oi-resident-name b{font:800 14px Georgia,serif}.oi-resident-name small{color:#a9a2aa;font-size:8px;text-transform:uppercase}.oi-need-list{display:grid;grid-template-columns:1fr 1fr;gap:4px}.oi-need{display:grid;grid-template-columns:13px 1fr;gap:3px;align-items:center;color:#bdb4ac;font-size:9px}.oi-need-track{height:5px;overflow:hidden;border-radius:5px;background:#0d1219}.oi-need-track i{display:block;height:100%;border-radius:inherit;background:var(--need,#61c8a6);transition:width .28s,background .28s}.oi-need.low .oi-need-track i{background:#e66d57}.oi-need.low{color:#ffc5b8}.oi-resident-state{grid-column:1/-1;min-height:15px;margin-top:4px;color:#8fe0c6;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oi-resident-state.wait{color:#d7b878}.oi-resident-state.idle{color:#8f9299}
  .oi-queue{grid-column:1/-1;display:flex;gap:4px;margin-top:5px}.oi-qslot{height:5px;flex:1;border-radius:6px;background:rgba(255,255,255,.08)}.oi-qslot.full{background:var(--person)}
  .oi-stage{position:relative;grid-column:2;grid-row:1;min-height:470px;overflow:hidden;border:1px solid rgba(250,210,136,.34);border-radius:20px;background:radial-gradient(circle at 82% 5%,rgba(255,221,139,.54),transparent 24%),linear-gradient(180deg,#698d8f 0,#8db0a0 31%,#b6916c 31.2%,#604834 100%);box-shadow:0 20px 55px rgba(0,0,0,.4),inset 0 0 70px rgba(35,21,22,.28);isolation:isolate}
  .oi-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 48%,rgba(255,246,204,.09) 48.3% 48.8%,transparent 49.1%),radial-gradient(ellipse at 12% 4%,rgba(255,247,195,.55),transparent 28%);pointer-events:none}.oi-stage:after{content:"";position:absolute;left:-5%;right:-5%;bottom:-27px;height:32%;background:repeating-linear-gradient(98deg,#29211d 0 3px,#171719 4px 11px);clip-path:polygon(0 30%,100% 0,100% 100%,0 100%);z-index:-1}
  .oi-house{position:absolute;left:4%;right:4%;top:7%;bottom:7%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:4px;padding:18px;border:2px solid #70513a;border-radius:4px 42px 4px 34px;background:#a36d4c;box-shadow:0 24px 42px rgba(24,15,16,.42),inset 0 0 0 7px #d6ad7e;transform:perspective(1000px) rotateX(2deg)}
  .oi-room{position:relative;overflow:hidden;border:1px solid rgba(91,57,38,.55);background-color:#d5b482;background-image:linear-gradient(90deg,rgba(116,75,51,.11) 1px,transparent 1px),linear-gradient(rgba(116,75,51,.11) 1px,transparent 1px);background-size:18px 18px}.oi-room:nth-child(2n){background-color:#c5b58e}.oi-room:nth-child(3n){background-color:#c99876}.oi-room:before{content:attr(data-room);position:absolute;left:7px;top:5px;color:rgba(63,39,30,.48);font:900 8px system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
  .oi-slot{--sx:50%;--sy:50%;position:absolute;z-index:5;left:var(--sx);top:var(--sy);width:86px;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px;border:0;border-radius:16px;color:#3a281c;background:transparent;cursor:pointer;transform:translate(-50%,-50%);transition:transform .16s,filter .16s}.oi-slot:hover{transform:translate(-50%,-54%) scale(1.04);filter:brightness(1.06)}.oi-slot:active{transform:translate(-50%,-48%) scale(.98)}.oi-slot.busy{filter:drop-shadow(0 0 10px #fff3b1)}.oi-slot.selected{background:rgba(255,244,187,.24);box-shadow:0 0 0 2px #fff0a5}.oi-slot.placeable{background:rgba(76,215,173,.2);box-shadow:0 0 0 2px #72e2bd;animation:oiPlacePulse 1s ease-in-out infinite}.oi-slot.empty{width:72px;height:56px;border:2px dashed rgba(79,57,39,.35);color:rgba(68,43,31,.6);font-size:22px}.oi-slot.empty:not(.placeable){opacity:.55}.oi-object-icon{display:grid;place-items:center;width:58px;height:44px;border:1px solid rgba(74,43,25,.35);border-radius:18px 18px 12px 12px;background:linear-gradient(145deg,#ffe4a6,#b87649);box-shadow:0 8px 0 rgba(95,53,31,.38),0 11px 15px rgba(52,33,25,.25);font-size:28px;line-height:1}.oi-slot[data-type="bed"] .oi-object-icon{background:linear-gradient(145deg,#f2ddbf,#806c9c)}.oi-slot[data-type="couch"] .oi-object-icon{background:linear-gradient(145deg,#e1aa78,#9b4f4f)}.oi-slot[data-type="bath"] .oi-object-icon{background:linear-gradient(145deg,#eaf7e7,#6fa5a7)}.oi-slot[data-type="garden"] .oi-object-icon{background:linear-gradient(145deg,#bde794,#4f8752)}.oi-slot[data-type="fountain"] .oi-object-icon{background:linear-gradient(145deg,#d8f5f6,#5599ae)}.oi-object-name{padding:2px 6px;border-radius:7px;background:rgba(255,239,200,.8);font-size:8px;font-weight:950;white-space:nowrap}
  .oi-person{--person:#dc785f;position:absolute;z-index:12;left:var(--px,50%);top:var(--py,78%);width:44px;height:66px;pointer-events:none;transform:translate(-50%,-60%);transition:left .62s cubic-bezier(.24,.82,.31,1),top .62s cubic-bezier(.24,.82,.31,1),filter .2s}.oi-person.selected{filter:drop-shadow(0 0 8px #fff1a4)}.oi-person:before{content:"";position:absolute;left:8px;bottom:0;width:28px;height:10px;border-radius:50%;background:rgba(48,28,23,.28)}.oi-person-body{position:absolute;left:10px;bottom:7px;width:25px;height:34px;border-radius:12px 12px 7px 7px;background:var(--person);clip-path:polygon(16% 0,84% 0,100% 100%,0 100%);transform-origin:50% 90%}.oi-person-head{position:absolute;left:12px;top:4px;width:21px;height:24px;border-radius:48% 48% 44% 44%;background:#d7a075;box-shadow:0 -6px 0 #4a322e}.oi-person-name{position:absolute;left:50%;top:-13px;padding:2px 5px;border-radius:6px;color:#fff8e1;background:rgba(31,24,25,.76);font-size:7.5px;font-weight:900;white-space:nowrap;transform:translateX(-50%)}.oi-person-bubble{position:absolute;left:50%;bottom:66px;min-width:30px;padding:4px 6px;border-radius:12px 12px 12px 2px;color:#3c2a1e;background:#fff0c8;box-shadow:0 4px 13px rgba(0,0,0,.25);font-size:15px;text-align:center;opacity:0;transform:translate(-50%,6px) scale(.8);transition:opacity .16s,transform .16s}.oi-person.acting .oi-person-bubble{opacity:1;transform:translate(-50%,0) scale(1)}.oi-person.acting .oi-person-body{animation:oiWork .62s ease-in-out infinite alternate}.oi-person.complete .oi-person-body{animation:oiPop .36s ease-out}.oi-person.low .oi-person-bubble{color:#fff;background:#d66051}
  .oi-action-progress{position:absolute;z-index:13;left:50%;bottom:-4px;width:38px;height:5px;overflow:hidden;border-radius:5px;background:#2b2728;transform:translateX(-50%);opacity:0}.oi-person.acting .oi-action-progress{opacity:1}.oi-action-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5dc6a0,#ffe17f);transition:width .12s linear}
  .oi-right{grid-column:3;grid-row:1;padding:12px}.oi-goal{padding:12px;border:1px solid rgba(247,196,95,.3);border-radius:14px;background:radial-gradient(circle at 90% 0,rgba(255,204,92,.13),transparent 35%),rgba(6,10,16,.24)}.oi-goal.done{border-color:#61d0a5;background:rgba(50,159,119,.13)}.oi-goal-kicker{color:#f2c76c;font-size:8px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.oi-goal h3{margin:4px 0 5px;color:#fff0c7;font:800 18px Georgia,serif}.oi-goal p{margin:0;color:#b8b0a8;font-size:10px;line-height:1.45}.oi-goal-progress{height:7px;margin-top:9px;overflow:hidden;border-radius:8px;background:#0c1218}.oi-goal-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d97855,#f1c86e,#5fd3ac);transition:width .28s}.oi-goal-reward{display:flex;justify-content:space-between;gap:6px;margin-top:7px;color:#8eddbf;font-size:8px;font-weight:900}
  .oi-harmony{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;margin:10px 0;padding:10px;border:1px solid rgba(204,157,255,.28);border-radius:13px;background:rgba(98,54,125,.14)}.oi-harmony strong{color:#e6b6ff;font:900 27px Georgia,serif}.oi-harmony span,.oi-harmony small{display:block}.oi-harmony span{color:#d7c3df;font-size:9px;font-weight:900;text-transform:uppercase}.oi-harmony small{color:#978a9c;font-size:8px}
  .oi-bonds{display:grid;gap:6px}.oi-bond{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:center;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.04);color:#c8bec0;font-size:8px}.oi-bond i{display:block;grid-column:1/-1;height:5px;border-radius:5px;background:linear-gradient(90deg,#bf6a74 var(--bond,30%),#24212a var(--bond,30%))}.oi-bond b{color:#f1c6c8}.oi-tip{margin-top:10px;padding:9px;border:1px dashed rgba(255,255,255,.16);border-radius:11px;color:#9b979c;font-size:8.5px;line-height:1.45}
  .oi-tray{grid-column:1/-1;grid-row:2;min-height:118px;display:grid;grid-template-columns:218px minmax(0,1fr) 250px;gap:10px;padding:9px;border:1px solid rgba(245,213,151,.2);border-radius:18px;background:linear-gradient(135deg,rgba(40,31,39,.97),rgba(12,19,28,.98));box-shadow:0 -10px 30px rgba(0,0,0,.25)}.oi-tray-person{display:flex;align-items:center;gap:9px;padding:8px}.oi-tray-face{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--person,#d77b61);border-radius:50%;background:rgba(255,255,255,.07);font-size:24px}.oi-tray-person b,.oi-tray-person small{display:block}.oi-tray-person b{color:#ffe9bd;font:800 17px Georgia,serif}.oi-tray-person small{margin-top:3px;color:#aaa4a5;font-size:8px;line-height:1.35}
  .oi-actions{min-width:0;display:flex;align-items:stretch;gap:7px;overflow-x:auto;padding:3px;scroll-snap-type:x proximity}.oi-action{min-width:150px;max-width:205px;flex:1 0 150px;display:grid;grid-template-columns:38px minmax(0,1fr);gap:7px;align-items:center;padding:9px;border:1px solid rgba(255,255,255,.14);border-radius:13px;color:#efe4d5;background:rgba(255,255,255,.055);cursor:pointer;text-align:left;scroll-snap-align:start;transition:transform .14s,border-color .14s,background .14s}.oi-action:hover{transform:translateY(-2px);border-color:#edbf68;background:rgba(255,205,113,.09)}.oi-action:disabled{cursor:not-allowed;filter:grayscale(.8);opacity:.43;transform:none}.oi-action-icon{font-size:25px;text-align:center}.oi-action b,.oi-action small{display:block}.oi-action b{font-size:10px}.oi-action small{margin-top:3px;color:#aaa2a0;font-size:7.5px;line-height:1.3}.oi-action-cost{grid-column:1/-1;color:#76d8b8;font-size:7px;font-weight:900;text-align:right}.oi-action-cost.spend{color:#f0bd69}
  .oi-build{display:flex;align-items:center;justify-content:flex-end;padding:7px}.oi-build-button{min-height:54px;width:100%;padding:8px 13px;border:1px solid #e8b95f;border-radius:14px;color:#2d2115;background:linear-gradient(#ffdf8b,#d99c38);cursor:pointer;font-weight:950}.oi-build-button.on{color:#f7ead0;background:linear-gradient(#8a4d39,#432d35)}.oi-build-button small{display:block;margin-top:2px;font-size:7px;font-weight:800;opacity:.72}.oi-build-palette{grid-column:1/-1;display:flex;gap:7px;overflow-x:auto;padding:2px}.oi-build-item{min-width:145px;display:grid;grid-template-columns:35px 1fr;gap:7px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.13);border-radius:12px;color:#eadfcf;background:rgba(255,255,255,.045);cursor:pointer;text-align:left}.oi-build-item.selected{border-color:#65ddba;background:rgba(61,175,137,.15)}.oi-build-item:disabled{opacity:.42}.oi-build-item>span{font-size:25px}.oi-build-item b,.oi-build-item small{display:block}.oi-build-item b{font-size:10px}.oi-build-item small{color:#aaa09c;font-size:7px}.oi-build-item em{grid-column:1/-1;color:#80dcbf;font-size:7px;font-style:normal;text-align:right}
  .oi-intro,.oi-end{position:absolute;z-index:50;inset:0;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 25%,rgba(241,181,83,.18),transparent 35%),rgba(7,10,17,.84);backdrop-filter:blur(9px)}.oi-intro-card,.oi-end-card{width:min(690px,100%);max-height:min(760px,calc(100dvh - 34px));overflow:auto;padding:clamp(20px,4vw,38px);border:1px solid rgba(255,218,145,.5);border-radius:26px;background:radial-gradient(circle at 85% 0,rgba(100,199,171,.17),transparent 29%),linear-gradient(150deg,#443143,#151f2b 76%);box-shadow:0 30px 90px rgba(0,0,0,.62),inset 0 1px rgba(255,255,255,.11);text-align:center}.oi-intro-mark{font-size:55px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.35))}.oi-intro-card h1,.oi-end-card h2{margin:8px 0;color:#ffebbb;font:800 clamp(32px,6vw,56px) Georgia,serif;letter-spacing:-.035em}.oi-intro-card>p,.oi-end-card>p{max-width:540px;margin:0 auto 18px;color:#c8bec0;font-size:14px;line-height:1.55}.oi-house-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:17px 0}.oi-house-choice{padding:13px 9px;border:1px solid rgba(255,255,255,.16);border-radius:15px;color:#eee2d3;background:rgba(255,255,255,.05);cursor:pointer}.oi-house-choice.selected{border-color:#f4c96e;background:rgba(241,189,83,.14);box-shadow:0 0 0 1px rgba(241,189,83,.35)}.oi-house-choice span,.oi-house-choice b,.oi-house-choice small{display:block}.oi-house-choice span{font-size:28px}.oi-house-choice b{margin:5px 0 3px;font:800 13px Georgia,serif}.oi-house-choice small{color:#a9a1a3;font-size:8px;line-height:1.35}.oi-teach{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0;text-align:left}.oi-teach div{padding:10px;border-radius:12px;background:rgba(6,11,17,.29)}.oi-teach b,.oi-teach span{display:block}.oi-teach b{color:#86dfc0;font-size:9px}.oi-teach span{margin-top:3px;color:#aaa2a3;font-size:8px;line-height:1.35}.oi-start,.oi-again{min-height:50px;min-width:210px;padding:0 25px;border:0;border-radius:15px;color:#2c1e12;background:linear-gradient(#ffe69c,#dfa63e);box-shadow:0 6px 0 #87571d;cursor:pointer;font-weight:950}.oi-start:active,.oi-again:active{transform:translateY(4px);box-shadow:0 2px 0 #87571d}.oi-end-score{color:#f4cd77;font:900 clamp(46px,9vw,82px) Georgia,serif}.oi-end-label{margin-top:-7px;color:#a89da1;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.oi-end-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.oi-end-stats div{padding:11px;border-radius:12px;background:rgba(255,255,255,.055)}.oi-end-stats b,.oi-end-stats span{display:block}.oi-end-stats b{color:#8fe0c1;font-size:22px}.oi-end-stats span{color:#aaa2a3;font-size:8px}
  .oi-toastline{position:absolute;z-index:30;left:50%;top:78px;max-width:min(520px,calc(100vw - 30px));padding:9px 13px;border:1px solid rgba(255,221,151,.4);border-radius:11px;color:#fff2cf;background:rgba(31,24,30,.93);box-shadow:0 10px 34px rgba(0,0,0,.42);font-size:10px;font-weight:850;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,-8px);transition:opacity .16s,transform .16s}.oi-toastline.show{opacity:1;transform:translate(-50%,0)}
  .oi-spark{position:fixed;z-index:80;left:var(--fx);top:var(--fy);color:var(--fc,#ffe082);font-size:var(--fs,12px);pointer-events:none;animation:oiSpark .72s ease-out forwards}.oi-float{position:fixed;z-index:81;left:var(--fx);top:var(--fy);color:var(--fc,#fff1a2);font-size:12px;font-weight:950;pointer-events:none;text-shadow:0 2px 4px #000;animation:oiFloat .85s ease-out forwards}.oi-impact{animation:oiImpact .16s linear}
  @keyframes oiWork{to{transform:translateY(-3px) rotate(2deg)}}@keyframes oiPop{45%{transform:scale(1.14,.9)}75%{transform:scale(.94,1.08)}}@keyframes oiPlacePulse{50%{box-shadow:0 0 0 4px rgba(114,226,189,.3),0 0 22px rgba(114,226,189,.35)}}@keyframes oiSpark{to{transform:translate(var(--dx),var(--dy)) rotate(var(--rot));opacity:0}}@keyframes oiFloat{to{transform:translate(-50%,-52px) scale(1.08);opacity:0}}@keyframes oiImpact{30%{transform:translateX(-2px)}65%{transform:translateX(2px)}}
  @media(max-width:1080px){.oi-game{grid-template-columns:190px minmax(390px,1fr);grid-template-rows:minmax(0,1fr) auto auto}.oi-right{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1.4fr .7fr 1.2fr;gap:8px;padding:8px;overflow:visible}.oi-bonds{grid-template-columns:repeat(3,1fr)}.oi-tip{display:none}.oi-tray{grid-row:3;grid-template-columns:190px minmax(0,1fr) 180px}.oi-stage{min-height:440px}}
  @media(max-width:760px){.oi-shell{overflow:auto}.oi-top{position:sticky;top:0;grid-template-columns:minmax(0,1fr) auto;min-height:58px;padding-top:max(7px,env(safe-area-inset-top));gap:7px}.oi-title small{display:none}.oi-back{min-height:40px;padding:0 9px}.oi-time{grid-column:2;grid-row:1}.oi-day{display:none}.oi-clock,.oi-funds{min-height:38px;padding:4px 8px;font-size:11px}.oi-controls{grid-column:1/-1;justify-content:center;display:flex}.oi-game{display:flex;flex-direction:column;gap:7px;min-height:auto;padding:7px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.oi-household{order:1;display:flex;gap:7px;overflow-x:auto;padding:7px;scroll-snap-type:x mandatory}.oi-household .oi-panel-title{display:none}.oi-resident{min-width:172px;margin:0;scroll-snap-align:start}.oi-stage{order:2;flex:0 0 min(61vh,510px);width:100%;min-height:390px;border-radius:16px}.oi-house{left:1.5%;right:1.5%;top:4%;bottom:4%;padding:10px;gap:3px}.oi-slot{width:67px;min-height:55px}.oi-object-icon{width:47px;height:37px;font-size:22px}.oi-object-name{font-size:6.5px}.oi-person{transform:translate(-50%,-60%) scale(.88)}.oi-right{order:3;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(95px,.7fr);gap:7px;padding:7px;overflow:visible}.oi-bonds{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.oi-bond{padding:5px;font-size:7px}.oi-tray{order:4;display:flex;flex-direction:column;min-height:0;padding:7px;gap:6px}.oi-tray-person{padding:2px 5px}.oi-tray-face{width:37px;height:37px;font-size:19px}.oi-actions{width:100%}.oi-action{min-width:137px;flex-basis:137px;min-height:65px;padding:7px}.oi-build{padding:2px}.oi-build-button{min-height:46px}.oi-house-choices,.oi-teach{grid-template-columns:1fr}.oi-house-choice{display:grid;grid-template-columns:35px 1fr;gap:7px;text-align:left}.oi-house-choice span{grid-row:1/3}.oi-intro,.oi-end{position:fixed;padding:8px}.oi-intro-card,.oi-end-card{padding:18px;border-radius:20px}.oi-intro-mark{font-size:38px}.oi-end-stats{grid-template-columns:repeat(3,1fr)}}
  @media(max-width:430px){.oi-title b{font-size:17px}.oi-time{gap:4px}.oi-clock,.oi-funds{padding:4px 6px}.oi-stage{min-height:365px}.oi-room:before{font-size:6px}.oi-slot{width:58px}.oi-object-icon{width:42px;height:34px}.oi-object-name{display:none}.oi-person{transform:translate(-50%,-60%) scale(.78)}.oi-right{grid-template-columns:1fr}.oi-harmony{margin:0}.oi-bonds{grid-template-columns:1fr 1fr 1fr}.oi-goal h3{font-size:15px}.oi-goal p{font-size:8px}.oi-tray-person small{display:none}}
  @media(pointer:coarse){.oi-slot{min-width:56px;min-height:56px}.oi-action,.oi-build-item,.oi-resident{min-height:56px}}
  @media(prefers-reduced-motion:reduce){.oi-shell *{scroll-behavior:auto!important}.oi-slot,.oi-person,.oi-person-bubble,.oi-need-track i,.oi-goal-progress i,.oi-resident,.oi-action,.oi-toastline{transition:none!important}.oi-slot.placeable,.oi-person.acting .oi-person-body,.oi-person.complete .oi-person-body,.oi-impact{animation:none!important}.oi-spark,.oi-float{display:none!important}}
  /* ARENA_SLICE_END 17-oikos */
  /* ARENA_SLICE_START 17-titan-sports-playgarden -- spliced from arena-css/17-titan-sports-playgarden.css; edit that file, not this region */
  .boardcard.deepdisciplinemodal{width:min(1040px,calc(100vw - 24px))!important;max-width:1040px!important;max-height:calc(100dvh - 24px)!important;padding:0!important;overflow:hidden!important;border:2px solid #8b6d42!important;background:radial-gradient(circle at 50% -12%,rgba(197,137,68,.2),transparent 42%),linear-gradient(150deg,#29221d,#111216 74%)!important}.deepdisciplinemodal>div:first-child{padding:12px 16px!important;border-bottom:1px solid rgba(228,185,104,.28);background:linear-gradient(180deg,#443426,#211b18)}.deepdisciplinemodal>div:first-child h3{margin:0;color:#ffe3a7;font:900 23px Georgia,serif}.deepdisciplinebody{max-height:calc(100dvh - 82px);padding:13px;overflow:auto}.deepdisciplinehero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid rgba(235,190,104,.35);border-radius:14px;background:linear-gradient(120deg,rgba(91,61,34,.68),rgba(22,29,33,.88))}.deepdisciplinehero strong,.deepdisciplinehero span{display:block}.deepdisciplinehero strong{color:#ffebbd;font:900 20px Georgia,serif}.deepdisciplinehero span{margin-top:4px;color:#c8bba5;font-size:10px;line-height:1.4}.deepdisciplinepoints{min-width:112px;padding:8px 11px;border:1px solid rgba(208,159,255,.42);border-radius:12px;background:rgba(31,20,42,.62);text-align:center}.deepdisciplinepoints b{display:block;color:#dcb1ff;font:950 27px Georgia,serif}.deepdisciplinepoints small{color:#b99bd0;font:900 8px system-ui,sans-serif;letter-spacing:.12em}.deepdisciplinebuild{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.deepdisciplinebuild span{padding:4px 7px;border:1px solid rgba(202,175,123,.2);border-radius:999px;background:rgba(0,0,0,.28);color:#d7c8ad;font:800 8px system-ui,sans-serif}.deepdisciplinegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.deepdisciplinetree{--discipline-color:#d7ad68;padding:10px;border:1px solid color-mix(in srgb,var(--discipline-color) 42%,#4a4542);border-radius:15px;background:linear-gradient(160deg,color-mix(in srgb,var(--discipline-color) 10%,#252126),#121318 72%)}.deepdisciplinetreehead{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--discipline-color) 25%,transparent)}.deepdisciplinetreeicon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--discipline-color);border-radius:50%;background:rgba(0,0,0,.32);color:var(--discipline-color);font:900 21px Georgia,serif}.deepdisciplinetreehead strong,.deepdisciplinetreehead small{display:block}.deepdisciplinetreehead strong{color:var(--discipline-color);font:900 14px Georgia,serif}.deepdisciplinetreehead small{margin-top:2px;color:#9f9892;font-size:7.5px}.deepdisciplinetreehead b{color:#d9c6a5;font:900 9px system-ui,sans-serif}.deepdisciplinenodes{display:grid;gap:7px}.deepdisciplinenode{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:7px;align-items:center;min-height:72px;padding:8px;border:1px solid rgba(194,180,157,.18);border-radius:11px;background:rgba(7,8,11,.46)}.deepdisciplinenode.active{border-color:color-mix(in srgb,var(--discipline-color) 62%,#555);box-shadow:inset 0 0 17px color-mix(in srgb,var(--discipline-color) 9%,transparent)}.deepdisciplinenode.locked{filter:saturate(.45);opacity:.68}.deepdisciplinenodeicon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:color-mix(in srgb,var(--discipline-color) 13%,#151418);color:var(--discipline-color);font:900 17px Georgia,serif}.deepdisciplinenodecopy strong,.deepdisciplinenodecopy span,.deepdisciplinenodecopy small{display:block}.deepdisciplinenodecopy strong{color:#eee0c7;font-size:10px}.deepdisciplinenodecopy span{margin-top:2px;color:#aaa29a;font-size:7.5px;line-height:1.3}.deepdisciplinenodecopy small{margin-top:3px;color:var(--discipline-color);font-size:7px}.deepdisciplinerank{color:#e7d6b8;font:900 8px system-ui,sans-serif;white-space:nowrap}.deepdisciplinenode button{grid-column:1/-1;min-height:28px!important;padding:4px 6px!important;border-color:color-mix(in srgb,var(--discipline-color) 40%,#555)!important;font-size:8px!important}.deepdisciplinefooter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;padding:9px 11px;border:1px solid rgba(204,170,105,.2);border-radius:11px;background:rgba(0,0,0,.25);color:#a99f90;font-size:9px;line-height:1.4}.deepdisciplinefooter b{color:#e3c987}.deepdisciplinefooter .btn{min-width:188px}.deepdisciplinefooter .btn:disabled{opacity:.45}
  .boardcard.deepsettlementmodal{width:min(980px,96vw)!important;max-width:980px!important;border:1px solid rgba(226,178,86,.58)!important;border-radius:22px!important;background:radial-gradient(circle at 88% 0,rgba(219,154,65,.2),transparent 36%),linear-gradient(150deg,#211a14,#0e1215 64%,#15110d)!important;box-shadow:0 34px 110px rgba(0,0,0,.82)!important}.deepsettlementbody{max-height:min(760px,82vh);max-height:min(760px,82dvh);overflow:auto;padding:3px}.deepsettlementhero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 20px;border:1px solid rgba(225,178,89,.38);border-radius:18px;background:linear-gradient(140deg,rgba(76,52,30,.9),rgba(20,23,25,.94))}.deepsettlementhero small{color:#efbd63;font:900 9px system-ui,sans-serif;letter-spacing:.17em}.deepsettlementhero h4{margin:4px 0;color:#fff0c8;font:900 29px Georgia,serif}.deepsettlementhero p{max-width:690px;margin:0;color:#c9bca5;font-size:11px;line-height:1.45}.deepsettlementtier{min-width:108px;padding:12px;border:1px solid rgba(238,196,109,.36);border-radius:15px;background:rgba(8,9,10,.46);text-align:center}.deepsettlementtier b{display:block;color:#ffe094;font:900 27px Georgia,serif}.deepsettlementtier span{color:#a99a81;font:900 8px system-ui,sans-serif;letter-spacing:.12em}.deepsettlementrequirements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:11px 0}.deepsettlementrequirement{display:grid;grid-template-columns:25px 1fr;gap:7px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(0,0,0,.25)}.deepsettlementrequirement i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#3c2623;color:#f09b82;font:normal 900 12px system-ui,sans-serif}.deepsettlementrequirement.met{border-color:rgba(102,221,166,.36)}.deepsettlementrequirement.met i{background:#173c31;color:#8ff2c3}.deepsettlementrequirement b,.deepsettlementrequirement small{display:block}.deepsettlementrequirement b{color:#eadcc1;font-size:9px}.deepsettlementrequirement small{margin-top:2px;color:#958b7b;font-size:7.5px}.deepsettlementblueprint{padding:9px 11px;border:1px dashed rgba(223,176,86,.38);border-radius:11px;color:#c7b89e;font-size:9px;line-height:1.4}.deepsettlementresidents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:11px}.deepsettlementresident{--resident-color:#e7bd6a;display:flex;flex-direction:column;min-height:188px;padding:11px;border:1px solid color-mix(in srgb,var(--resident-color) 45%,#493d35);border-radius:15px;background:linear-gradient(145deg,rgba(50,43,38,.9),rgba(16,18,20,.97))}.deepsettlementresident.locked{filter:saturate(.45);opacity:.56}.deepsettlementresidenthead{display:grid;grid-template-columns:44px 1fr;gap:9px;align-items:center}.deepsettlementportrait{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--resident-color);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--resident-color) 30%,transparent),#141318 70%);font-size:23px}.deepsettlementresident strong,.deepsettlementresident span,.deepsettlementresident small{display:block}.deepsettlementresident strong{color:var(--resident-color);font:850 14px Georgia,serif}.deepsettlementresident span{color:#ad9f90;font-size:8px}.deepsettlementresident p{flex:1;margin:9px 0;color:#c8bba9;font-size:9px;line-height:1.4}.deepsettlementresident small{margin:6px 0;color:#8f8177;font-size:7.5px;line-height:1.35}.deepsettlementvault{margin-top:9px;padding:9px;border:1px solid rgba(233,202,114,.28);border-radius:12px;background:rgba(0,0,0,.24)}.deepsettlementvaulthead{display:flex;justify-content:space-between;gap:8px;color:#e8ce85;font:900 9px system-ui,sans-serif}.deepsettlementvaultactions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.deepsettlementresident .btn{min-height:34px!important;padding:6px 8px!important;font-size:9px!important}.deephouseactions .deepsettlementopen{border-color:#d7a64d;color:#ffe2a0;background:linear-gradient(180deg,rgba(106,67,22,.78),rgba(50,35,20,.86))}
  .deepsettlementworkshead{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:17px 2px 8px}.deepsettlementworkshead strong,.deepsettlementworkshead span{display:block}.deepsettlementworkshead strong{color:#ffe2a0;font:900 18px Georgia,serif}.deepsettlementworkshead span{max-width:710px;margin-top:3px;color:#998d7c;font-size:8px;line-height:1.4}.deepsettlementworkshead>b{color:#e9cd72;font:900 12px system-ui,sans-serif}.deepsettlementworks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.deepsettlementwork{--work-color:#e9cd72;display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-content:start;padding:11px;border:1px solid color-mix(in srgb,var(--work-color) 38%,#3d3732);border-radius:15px;background:linear-gradient(150deg,color-mix(in srgb,var(--work-color) 9%,#211d1a),rgba(12,14,16,.98))}.deepsettlementwork.locked{filter:saturate(.45);opacity:.62}.deepsettlementwork.complete{box-shadow:inset 0 0 22px color-mix(in srgb,var(--work-color) 10%,transparent)}.deepsettlementworkicon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--work-color);border-radius:12px;background:color-mix(in srgb,var(--work-color) 15%,#151416);color:var(--work-color);font:900 23px Georgia,serif}.deepsettlementworkcopy small,.deepsettlementworkcopy strong,.deepsettlementworkcopy span{display:block}.deepsettlementworkcopy small{color:var(--work-color);font:900 7px system-ui,sans-serif;letter-spacing:.1em}.deepsettlementworkcopy strong{margin-top:2px;color:#f4e7cd;font:850 13px Georgia,serif}.deepsettlementworkcopy span{margin-top:3px;color:#b5aa9a;font-size:8px}.deepsettlementworkcopy p{margin:7px 0;color:#948a7d;font-size:8px;line-height:1.38}.deepsettlementworkcosts{display:flex;flex-wrap:wrap;gap:4px}.deepsettlementworkcosts i{padding:3px 5px;border:1px solid rgba(224,119,93,.28);border-radius:999px;background:rgba(58,24,20,.34);color:#d99a87;font:normal 800 7px system-ui,sans-serif}.deepsettlementworkcosts i.met{border-color:rgba(93,214,156,.3);background:rgba(20,62,48,.36);color:#8de0b8}.deepsettlementwork>.btn{grid-column:1/-1;min-height:34px!important;padding:6px 8px!important;font-size:8.5px!important}.deepwaygatecard.underrail{border-color:rgba(233,205,114,.38);background:linear-gradient(135deg,rgba(86,66,27,.32),rgba(12,17,20,.92))}.deepwaygatecard.underrail .deepwaygateicon{color:#e9cd72}
  .deepsiegecouncil{--siege-color:#ef765e;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:15px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--siege-color) 48%,#46332e);border-radius:17px;background:radial-gradient(circle at 88% 0,color-mix(in srgb,var(--siege-color) 15%,transparent),transparent 42%),linear-gradient(145deg,rgba(56,30,29,.94),rgba(12,16,19,.98))}.deepsiegecouncil.locked{--siege-color:#8f8577;filter:saturate(.45)}.deepsiegecouncil.complete{--siege-color:#7ee2bd}.deepsiegecouncil.failed{--siege-color:#c86a62}.deepsiegesigil{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--siege-color);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--siege-color) 28%,transparent),#151317 72%);color:var(--siege-color);font:900 29px Georgia,serif;box-shadow:0 0 24px color-mix(in srgb,var(--siege-color) 18%,transparent)}.deepsiegecopy small,.deepsiegecopy strong,.deepsiegecopy span{display:block}.deepsiegecopy small{color:var(--siege-color);font:900 7.5px system-ui,sans-serif;letter-spacing:.13em}.deepsiegecopy strong{margin-top:3px;color:#ffe7c1;font:900 17px Georgia,serif}.deepsiegecopy span{margin-top:4px;color:#baa99d;font-size:9px;line-height:1.38}.deepsiegemeta{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.deepsiegemeta i{padding:3px 6px;border:1px solid color-mix(in srgb,var(--siege-color) 30%,transparent);border-radius:999px;background:rgba(0,0,0,.27);color:#dfcabc;font:normal 800 7px system-ui,sans-serif}.deepsiegewaves{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.deepsiegewave{padding:7px 8px;border:1px solid rgba(235,184,128,.14);border-radius:10px;background:rgba(0,0,0,.24);color:#a99b91;font-size:8px}.deepsiegewave b{display:block;color:#ead8be;font-size:9px}.deepsiegewave.current{border-color:var(--siege-color);color:#e7c9b8}.deepsiegewave.done{border-color:rgba(104,220,165,.38);background:rgba(26,73,58,.24)}.deepsiegecouncil>.btn{min-width:180px}.deepsiegehud{position:absolute;z-index:7;left:50%;top:72px;display:none;min-width:min(430px,calc(100% - 28px));transform:translateX(-50%);padding:8px 13px;border:1px solid rgba(239,118,94,.64);border-radius:12px;background:linear-gradient(110deg,rgba(68,27,29,.94),rgba(15,18,22,.95));color:#ffe0bf;box-shadow:0 10px 30px rgba(0,0,0,.38),0 0 22px rgba(219,76,62,.16);font:900 10px system-ui,sans-serif;text-align:center;letter-spacing:.035em;cursor:pointer}.deepsiegehud.on{display:block}.deepsiegehud.complete{border-color:#7ee2bd;background:linear-gradient(110deg,rgba(22,72,58,.95),rgba(15,22,22,.95));color:#d4ffeb}.deepsiegehud.failed{border-color:#c86a62;color:#ffc2b4}.deepsiegehud b{color:#fff0c8}.deepsiegehud span{color:#ffad91}.deepsiegehud.complete span{color:#9ff1c9}
  .boardcard.deepcraftmodal{width:min(980px,96vw)!important;max-width:980px!important;overflow:hidden!important;border:1px solid rgba(218,180,105,.5)!important;border-radius:22px!important;background:linear-gradient(145deg,#201b18,#111214)!important;box-shadow:0 32px 100px rgba(0,0,0,.8)!important}.deepcraftbody{max-height:min(720px,82vh);max-height:min(720px,82dvh);padding:4px;overflow:auto}.deepcrafthero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:18px 20px;border:1px solid rgba(215,174,92,.3);border-radius:18px;background:radial-gradient(circle at 15% 10%,rgba(235,178,74,.22),transparent 38%),linear-gradient(135deg,rgba(69,49,31,.94),rgba(23,25,28,.95))}.deepcraftkicker{color:#e7b85a;font:900 10px system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}.deepcrafthero h4{margin:3px 0;color:#fff0c8;font:700 27px Georgia,serif}.deepcrafthero p{margin:0;color:#c4b69d;font-size:12px}.deepcraftready{min-width:92px;padding:12px;border:1px solid rgba(239,192,96,.34);border-radius:14px;background:rgba(9,10,11,.48);text-align:center}.deepcraftready b{display:block;color:#ffe19a;font-size:25px}.deepcraftready small{color:#ae9f86;font:800 9px system-ui,sans-serif;text-transform:uppercase}
  .deepcrafttabs{display:flex;gap:7px;margin-bottom:12px;overflow-x:auto}.deepcrafttab{min-height:34px;padding:7px 12px;border:1px solid rgba(216,183,119,.2);border-radius:999px;background:rgba(16,18,20,.76);color:#bdb2a0;font:800 10px system-ui,sans-serif;white-space:nowrap;cursor:pointer}.deepcrafttab.on{border-color:#e1ad4b;background:linear-gradient(180deg,#795019,#3e2b13);color:#fff0c6}.deepcraftgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.deepcraftcard{display:grid;grid-template-columns:84px 1fr;gap:13px;min-height:145px;padding:13px;border:1px solid rgba(214,181,118,.22);border-radius:17px;background:linear-gradient(145deg,rgba(49,43,37,.88),rgba(17,19,21,.96))}.deepcraftcard.deepcrafted{animation:deepCraftPop .52s ease-out}.deepcraftart{display:grid;place-items:center;height:84px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:radial-gradient(circle at 45% 35%,var(--craft-glow,#744),rgba(0,0,0,.68));font-size:45px}.deepcraftcopy h5{margin:1px 0;color:#f7e7c3;font:800 14px system-ui,sans-serif}.deepcraftformula{color:#d9ad5f;font:800 10px system-ui,sans-serif}.deepcraftcopy p{min-height:31px;margin:6px 0;color:#a9a194;font-size:10px}.deepcraftingredients{display:flex;flex-wrap:wrap;gap:4px}.deepcraftingredient{padding:3px 6px;border-radius:7px;background:rgba(0,0,0,.25);color:#cfc4b0;font:700 9px system-ui,sans-serif}.deepcraftingredient.missing{color:#e88e82}.deepcraftactions{grid-column:1/-1;display:flex;gap:7px}.deepcraftactions .btn{flex:1}.deepcraftempty{grid-column:1/-1;padding:28px;text-align:center;color:#ac9e88}
  .deepbuildshelf{min-width:min(640px,90vw)}.deepbuildintro{margin:-2px 0 13px;color:#bdb09b;font-size:12px}.deepbuildgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.deepbuildchoice{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;min-height:72px;padding:10px;border:1px solid rgba(212,176,106,.23);border-radius:14px;background:linear-gradient(145deg,rgba(55,45,35,.88),rgba(18,19,21,.95));color:#e9d8b7;text-align:left;cursor:pointer}.deepbuildchoice:hover:not(:disabled){border-color:#dba64a;transform:translateY(-1px)}.deepbuildchoice:disabled{opacity:.42}.deepbuildicon{display:grid;place-items:center;width:50px;height:50px;border-radius:13px;background:radial-gradient(circle,rgba(226,174,73,.3),rgba(0,0,0,.42));font-size:29px}.deepbuildcopy b{display:block;font-size:12px}.deepbuildcopy small{display:block;color:#a89c89;font-size:9px}.deepbuildcount{padding:4px 7px;border-radius:999px;background:rgba(0,0,0,.28);color:#f5c767;font:900 10px system-ui,sans-serif}
  .deepdelveboard{min-width:min(700px,91vw);background:radial-gradient(circle at 82% 0,rgba(179,79,242,.18),transparent 38%),linear-gradient(155deg,#17111f,#0c1117 58%,#17110d)!important}.deepdelvehero{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(213,156,255,.38);border-radius:17px;background:linear-gradient(145deg,rgba(74,34,102,.65),rgba(22,16,28,.9))}.deepdelvesigil{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#f1b8ff,#692b82 45%,#160e21 72%);font-size:34px;box-shadow:0 0 28px rgba(192,91,255,.34)}.deepdelvehero h4{margin:0;color:#f5d5ff;font:900 25px/1 Georgia,serif}.deepdelvehero p{margin:6px 0 0;color:#c9b9cf;font-size:10px;line-height:1.4}.deepdelvestake{text-align:right;color:#f8cf76;font:900 13px system-ui,sans-serif}.deepdelvestake small{display:block;margin-top:4px;color:#af9db5;font-size:8px}.deepdelvemods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.deepdelvemod{padding:10px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(0,0,0,.25)}.deepdelvemod.hazard{border-color:rgba(255,112,99,.36)}.deepdelvemod.boon{border-color:rgba(106,231,189,.36)}.deepdelvemod b,.deepdelvemod small{display:block}.deepdelvemod b{color:#f2dfbf;font-size:11px}.deepdelvemod small{margin-top:4px;color:#b9adb9;font-size:8px;line-height:1.35}.deepdelvestages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:11px 0}.deepdelvestage{padding:9px 7px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(0,0,0,.27);opacity:.58}.deepdelvestage.current{opacity:1;border-color:#d98cff;box-shadow:0 0 18px rgba(194,83,255,.16)}.deepdelvestage.done{opacity:.8;border-color:rgba(105,224,168,.48);background:rgba(35,100,75,.22)}.deepdelvestage i,.deepdelvestage b,.deepdelvestage small{display:block}.deepdelvestage i{color:#b985d1;font:900 8px system-ui,sans-serif}.deepdelvestage b{margin:4px 0;color:#f3e5f6;font-size:10px;line-height:1.2}.deepdelvestage small{color:#b9aebd;font-size:8px}.deepdelveprogress{height:7px;margin-top:7px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.08)}.deepdelveprogress i{height:100%;background:linear-gradient(90deg,#7e3aad,#e39cff);box-shadow:0 0 9px #c66cff}.deepdelvemeta{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.deepdelvebadge{padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.07);color:#d8c9dc;font:800 8px system-ui,sans-serif}.deepdelveactions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:11px}.deepdelvelocked{padding:16px;border:1px dashed rgba(214,173,104,.42);border-radius:14px;color:#d8c6a7;text-align:center}.deepdelvebtn.active{color:#f4d0ff;border-color:#d178f1;box-shadow:0 0 15px rgba(195,82,242,.22);animation:deepDelvePulse 1.8s ease-in-out infinite alternate}.deepdelvebtn.complete{color:#d6ffe6;border-color:#66d99d;box-shadow:0 0 18px rgba(85,221,147,.25)}
  @keyframes deepDelvePulse{to{filter:brightness(1.17);transform:translateY(-1px)}}
  .boardcard.deepforgemodal{width:min(1020px,96vw)!important;max-width:1020px!important;overflow:hidden!important;border:2px solid rgba(222,125,72,.7)!important;border-radius:22px!important;background:radial-gradient(circle at 50% -10%,rgba(255,111,42,.2),transparent 43%),linear-gradient(150deg,#281915,#100f12 70%)!important;box-shadow:0 34px 110px rgba(0,0,0,.84),inset 0 0 0 1px rgba(255,202,133,.12)!important}.deepforgebody{max-height:min(760px,82vh);max-height:min(760px,82dvh);padding:5px;overflow:auto}.deepforgehero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:13px;padding:18px 20px;border:1px solid rgba(244,144,75,.36);border-radius:18px;background:radial-gradient(circle at 10% 15%,rgba(255,153,76,.2),transparent 38%),linear-gradient(135deg,rgba(74,39,28,.95),rgba(27,24,31,.96))}.deepforgehero small{color:#ffb06b;font:900 9px system-ui,sans-serif;letter-spacing:.19em}.deepforgehero h4{margin:4px 0;color:#fff0cf;font:800 27px Georgia,serif}.deepforgehero p{max-width:690px;margin:0;color:#c9b8a7;font-size:11px;line-height:1.45}.deepforgeheat{min-width:105px;padding:12px;border:1px solid rgba(255,172,92,.38);border-radius:14px;background:rgba(10,8,10,.52);text-align:center}.deepforgeheat b{display:block;color:#ffd080;font:900 25px Georgia,serif}.deepforgeheat span{color:#bca48e;font:800 8px system-ui,sans-serif;letter-spacing:.13em}.deepforgegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.deepforgecard{--forge-color:#ff9b5b;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:128px;padding:12px;border:1px solid color-mix(in srgb,var(--forge-color) 52%,#594338);border-radius:16px;background:linear-gradient(145deg,rgba(61,43,38,.94),rgba(22,20,25,.97));box-shadow:inset 0 0 23px rgba(0,0,0,.3)}.deepforgecard.forged{animation:deepCraftPop .52s ease-out}.deepforgesigil{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--forge-color);border-radius:16px;background:radial-gradient(circle, color-mix(in srgb,var(--forge-color) 30%,transparent),rgba(8,7,10,.88) 70%);color:var(--forge-color);font:900 31px Georgia,serif;box-shadow:0 0 18px color-mix(in srgb,var(--forge-color) 18%,transparent)}.deepforgecopy strong,.deepforgecopy span,.deepforgecopy small{display:block}.deepforgecopy strong{color:#ffe8be;font:800 15px Georgia,serif}.deepforgecopy span{margin-top:3px;color:var(--forge-color);font:900 9px system-ui,sans-serif;letter-spacing:.12em}.deepforgecopy small{margin-top:5px;color:#b9aa9e;font-size:9.5px;line-height:1.35}.deepforgeingredients{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.deepforgeingredient{padding:3px 6px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(0,0,0,.28);color:#d8cbbb;font:800 8.5px system-ui,sans-serif}.deepforgeingredient.missing{border-color:rgba(220,91,76,.35);color:#ee9285}.deepforgeaction{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:105px}.deepforgeaction .btn{min-height:34px;padding:6px 9px;font-size:10px}.deepforgeaction em{color:#9c8d83;font:normal 8px/1.3 system-ui,sans-serif;text-align:center}.deepforgecomplete{color:#ffd17f!important;font-weight:900!important}
  .deepmasterwork{margin-top:15px;padding:13px;border:1px solid rgba(181,119,242,.42);border-radius:18px;background:radial-gradient(circle at 88% 0,rgba(150,74,225,.18),transparent 36%),linear-gradient(145deg,rgba(36,24,47,.94),rgba(13,14,19,.97))}.deepmasterworkhead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.deepmasterworkhead small{color:#c894ff;font:900 8px system-ui,sans-serif;letter-spacing:.16em}.deepmasterworkhead h4{margin:4px 0;color:#f2ddff;font:900 22px Georgia,serif}.deepmasterworkhead p{max-width:730px;margin:0;color:#b9aebf;font-size:9.5px;line-height:1.4}.deepmasterworkmarks{min-width:104px;padding:10px;border:1px solid rgba(205,154,255,.42);border-radius:13px;background:rgba(8,8,13,.62);text-align:center}.deepmasterworkmarks b{display:block;color:#e2b5ff;font:900 25px Georgia,serif}.deepmasterworkmarks span{display:block;color:#a68caf;font:900 7px system-ui,sans-serif;letter-spacing:.13em}.deepmasterworkresonance,.deeprelicresonance{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(0,0,0,.28);color:#9d91a3;font-size:8.5px}.deepmasterworkresonance b,.deeprelicresonance b{color:#c9bbcf}.deepmasterworkresonance.active,.deeprelicresonance.active{border-color:rgba(209,155,255,.45);box-shadow:inset 0 0 18px rgba(176,92,233,.1)}.deepmasterworkresonance.active b,.deeprelicresonance.active b{color:#edceff}.deepmasterworkpantheons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.deepmasterworkpantheon{--masterwork-color:#c894ff;display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;align-items:center;padding:8px;border:1px solid color-mix(in srgb,var(--masterwork-color) 28%,#443b48);border-radius:11px;background:rgba(0,0,0,.21)}.deepmasterworkpantheon.resonant{border-color:var(--masterwork-color);box-shadow:0 0 15px color-mix(in srgb,var(--masterwork-color) 14%,transparent)}.deepmasterworkpantheon i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:color-mix(in srgb,var(--masterwork-color) 18%,#111016);color:var(--masterwork-color);font:normal 18px Georgia,serif}.deepmasterworkpantheon strong,.deepmasterworkpantheon span,.deepmasterworkpantheon small{display:block}.deepmasterworkpantheon strong{color:var(--masterwork-color);font-size:10px}.deepmasterworkpantheon span{margin-top:2px;color:#b7abbc;font-size:7.5px;line-height:1.3}.deepmasterworkpantheon small{margin-top:3px;color:#837988;font-size:6.5px;line-height:1.25}.deepmasterworkequipped{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:9px}.deepmasterworkitem{--masterwork-color:#c894ff;display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid rgba(200,148,245,.25);border-radius:12px;background:linear-gradient(145deg,rgba(54,41,62,.82),rgba(23,21,27,.94))}.deepmasterworkitem.forged{animation:deepCraftPop .52s ease-out}.deepmasterworksigil{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--masterwork-color);border-radius:11px;background:radial-gradient(circle,color-mix(in srgb,var(--masterwork-color) 24%,transparent),#151219 72%);color:var(--masterwork-color);font:900 20px Georgia,serif}.deepmasterworkcopy strong,.deepmasterworkcopy span,.deepmasterworkcopy small{display:block}.deepmasterworkcopy strong{color:#f0dfef;font:850 11px Georgia,serif}.deepmasterworkcopy span{margin-top:2px;color:#b9adb9;font-size:7.5px;line-height:1.3}.deepmasterworkaspect{margin-top:4px!important;color:#e6c2ff!important;font-size:7.5px!important;line-height:1.3}.deepmasterworkstate{margin-top:3px!important;color:#85778d!important;font-size:7px!important}.deepmasterworkstate.on{color:var(--masterwork-color)!important}.deepmasterworkactions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.deepmasterworkactions .btn{min-width:0;min-height:31px;padding:4px 3px;border-color:color-mix(in srgb,var(--masterwork-color) 34%,#514b55);font-size:7px;line-height:1.1}.deepmasterworkactions .btn.on{border-color:var(--masterwork-color);color:var(--masterwork-color);box-shadow:inset 0 0 12px color-mix(in srgb,var(--masterwork-color) 12%,transparent)}.deepmasterworklinks{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.deeprelicaspect{color:#e2b7ff!important;line-height:1.3}.deeprelictemper{padding:3px 5px;width:max-content;border:1px solid rgba(187,134,231,.22);border-radius:999px;color:#817489!important;font-size:8px!important}.deeprelictemper.on{border-color:rgba(208,157,250,.5);color:#e5c0ff!important}.deeprelicresonance{margin-top:-2px}.deeprelicresonance span{white-space:nowrap}
  @keyframes deepXpPulse{45%{transform:scale(1.16);box-shadow:0 0 22px rgba(203,132,255,.65)}}@keyframes deepAbilityUp{40%{transform:scale(1.045);border-color:#d4a0ff;box-shadow:0 0 24px rgba(177,102,233,.38)}}@keyframes deepCraftPop{48%{transform:scale(1.025);border-color:#ffd275;box-shadow:0 0 28px rgba(229,165,55,.34)}}
  .deepjeweler{margin-top:15px;padding:13px;border:1px solid rgba(90,211,190,.42);border-radius:18px;background:radial-gradient(circle at 86% 0,rgba(69,209,184,.15),transparent 36%),linear-gradient(145deg,rgba(20,43,43,.94),rgba(13,14,19,.97))}.deepjewelerhead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.deepjewelerhead small{color:#79e0c9;font:900 8px system-ui,sans-serif;letter-spacing:.16em}.deepjewelerhead h4{margin:4px 0;color:#dbfff4;font:900 22px Georgia,serif}.deepjewelerhead p{max-width:720px;margin:0;color:#aebfba;font-size:9.5px;line-height:1.4}.deepgempurse{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:290px}.deepgempurse span{padding:5px 7px;border:1px solid rgba(164,239,220,.2);border-radius:9px;background:rgba(4,12,13,.52);color:#cde8df;font:800 8px system-ui,sans-serif}.deepgemresonance{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:10px 0;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(0,0,0,.28);color:#8fa8a1;font-size:8.5px}.deepgemresonance b{color:#bad4cc}.deepgemresonance.active{border-color:rgba(102,232,203,.5);box-shadow:inset 0 0 18px rgba(75,218,184,.1)}.deepgemresonance.active b{color:#caffef}.deepgemslots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.deepgemslot{--gem-color:#79e0c9;padding:9px;border:1px solid rgba(105,214,191,.25);border-radius:12px;background:linear-gradient(145deg,rgba(35,61,58,.82),rgba(18,23,25,.94))}.deepgemslot.socketed{border-color:color-mix(in srgb,var(--gem-color) 52%,#35514c);box-shadow:inset 0 0 16px color-mix(in srgb,var(--gem-color) 9%,transparent)}.deepgemslothead{display:grid;grid-template-columns:38px minmax(0,1fr);gap:7px;align-items:center}.deepgemslothead i{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--gem-color);border-radius:50%;background:color-mix(in srgb,var(--gem-color) 15%,#0d1515);color:var(--gem-color);font:normal 18px Georgia,serif}.deepgemslothead strong,.deepgemslothead span{display:block}.deepgemslothead strong{color:#e2f6ef;font:850 11px Georgia,serif}.deepgemslothead span{margin-top:2px;color:#9bb1aa;font-size:7px;line-height:1.3}.deepgemchoices{display:grid;grid-template-columns:1fr;gap:4px;margin-top:7px}.deepgemchoice{--gem-color:#79e0c9;display:grid;grid-template-columns:26px minmax(0,1fr);gap:5px;align-items:center;min-height:42px;padding:4px 5px!important;border-color:color-mix(in srgb,var(--gem-color) 30%,#4a5552)!important;text-align:left!important}.deepgemchoice.current{border-color:var(--gem-color)!important;box-shadow:inset 0 0 12px color-mix(in srgb,var(--gem-color) 12%,transparent)}.deepgemchoice b{grid-row:1/3;display:grid;place-items:center;color:var(--gem-color);font-size:16px}.deepgemchoice strong{color:#e8f4ef;font-size:7.5px;line-height:1.15}.deepgemchoice small{color:#8da099;font-size:6.5px;line-height:1.15}.deeprelicsocket{padding:3px 5px;width:max-content;border:1px solid rgba(96,218,191,.28);border-radius:999px;color:#9ce8d6!important;font-size:8px!important}.deeprelicsocket.open{color:#756f72!important;border-color:rgba(255,255,255,.1)}
  @media(max-width:760px){.deepcraftgrid,.deeptraininggrid,.deepbuildgrid{grid-template-columns:1fr}.deepforgegrid{grid-template-columns:1fr}.deepgemslots{grid-template-columns:1fr}.deepjewelerhead{grid-template-columns:1fr}.deepgempurse{justify-content:flex-start;max-width:none}.deepgemresonance{display:block}.deepgemresonance span{display:block;margin-top:4px}.deepsettlementresidents,.deepsettlementworks{grid-template-columns:1fr}.deepdisciplinegrid{grid-template-columns:1fr}.deepcrafthero,.deepforgehero,.deepsettlementhero{padding:14px}.deepcrafthero h4,.deepforgehero h4,.deepsettlementhero h4{font-size:22px}.deephouseroom{min-height:760px}.deepsettlementrequirements{grid-template-columns:repeat(2,minmax(0,1fr))}.deepsettlementresident{min-height:0}.deepsettlementbody{max-height:calc(100dvh - 76px)}.deepsiegecouncil{grid-template-columns:48px minmax(0,1fr)}.deepsiegesigil{width:46px;height:46px}.deepsiegecouncil>.btn{grid-column:1/-1;width:100%}.deepsiegewaves{grid-template-columns:1fr}.deepsiegehud{top:108px;min-width:calc(100% - 20px);font-size:8.5px}.boardcard.deepdisciplinemodal{width:100vw!important;max-height:100dvh!important;border-radius:0!important}.deepdisciplinebody{max-height:calc(100dvh - 58px);padding:9px}.deepdisciplinehero{grid-template-columns:minmax(0,1fr) 92px}.deepdisciplinehero strong{font-size:17px}.deepdisciplinefooter{grid-template-columns:1fr}.deepdisciplinefooter .btn{width:100%;min-width:0}}
  @media(max-width:760px){.deepdelvehero{grid-template-columns:52px 1fr}.deepdelvesigil{width:52px;height:52px}.deepdelvestake{grid-column:1/-1;text-align:left}.deepdelvestages{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:440px){.deepcraftcard{grid-template-columns:68px 1fr;padding:10px}.deepcraftart{height:68px;font-size:38px}.deepcraftready{min-width:72px}}
  @media(max-width:440px){.boardcard.deepsettlementmodal{width:100vw!important;max-height:100dvh!important;border-radius:0!important}.deepsettlementhero{grid-template-columns:1fr}.deepsettlementtier{display:flex;align-items:center;justify-content:space-between;padding:8px 10px}.deepsettlementtier b{font-size:21px}.deepsettlementrequirements{grid-template-columns:1fr}}
  @media(max-width:520px){.deepforgehero{grid-template-columns:1fr}.deepforgeheat{display:none}.deepforgecard{grid-template-columns:52px minmax(0,1fr);padding:10px}.deepforgesigil{width:50px;height:50px;font-size:25px}.deepforgeaction{grid-column:1/-1;display:grid;grid-template-columns:1fr auto}.deepforgeaction em{align-self:center}.boardcard.deepforgemodal{width:100vw!important;max-height:100dvh!important;border-radius:0!important}.deepforgebody{max-height:calc(100dvh - 58px)}}
  @media(max-width:760px){.deepmasterworkpantheons,.deepmasterworkequipped{grid-template-columns:1fr}.deepmasterworkhead{grid-template-columns:1fr}.deepmasterworkmarks{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px}.deepmasterworkmarks b{font-size:20px}.deepmasterworkresonance,.deeprelicresonance{display:block}.deepmasterworkresonance span,.deeprelicresonance span{display:block;margin-top:4px;white-space:normal}}
  @media(max-width:420px){.deepmasterwork{padding:8px}.deepmasterworkhead h4{font-size:18px}.deepmasterworkactions{grid-template-columns:1fr}.deepmasterworkactions .btn{min-height:32px;font-size:8px}.deepmasterworkpantheon small{font-size:7px}}
  @media(prefers-reduced-motion:reduce){.deepmasterworkitem.forged{animation:none!important}}
  @media(max-width:680px){.deepshopscene{min-height:180px;background-position:center}.deephouseroom{grid-template-columns:1fr;min-height:680px}.deephousescene{min-height:350px;border-right:0;border-bottom:1px solid rgba(219,180,103,.2);background-size:auto 100%;background-position:center}.deephousepanel{padding:22px;box-shadow:0 -16px 28px rgba(0,0,0,.25)}.deephouseplayer{left:46%;height:175px}.deephouseplayer svg{height:170px!important}.boardovl.deepinteriorovl{padding:52px 0 0!important}.boardovl.deepinteriorovl .boardcard{width:100vw!important;border-radius:18px 18px 0 0!important}}
  .boardovl.deep-house-interior{align-items:center!important;padding:10px clamp(8px,2vw,24px)!important;overflow:hidden!important}.boardovl.deep-house-interior .boardcard.deephousemodal{display:flex;flex-direction:column;height:min(720px,calc(100dvh - 20px))!important;max-height:calc(100dvh - 20px)!important}.deephousemodal>div:first-child{flex:0 0 auto}.deep-house-interior .deephouseroom{flex:1;min-height:0;height:auto;grid-template-columns:minmax(360px,1.35fr) minmax(340px,.9fr)}.deep-house-interior .deephousescene{min-height:0}.deep-house-interior .deephousepanel{min-height:0;justify-content:space-between;padding:clamp(12px,2dvh,22px)}.deep-house-interior .deephousepanel h4{margin:4px 0 6px;font-size:clamp(22px,2.4vw,28px)}.deep-house-interior .deephousepanel p{margin:0 0 10px;font-size:12px;line-height:1.35}.deep-house-interior .deephousemeter{height:8px;margin:3px 0 10px}.deep-house-interior .deeptraining{margin:2px 0 10px}.deep-house-interior .deeptraininghead{margin-bottom:6px}.deep-house-interior .deeptrainingcard{grid-template-columns:28px 1fr auto;gap:6px;min-height:0;padding:6px}.deep-house-interior .deeptrainingicon{width:28px;height:28px;font-size:16px}.deep-house-interior .deeptrainingcard button{min-height:26px!important;padding:4px 7px!important}.deep-house-interior .deephouseactions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.deep-house-interior .deephouseactions .btn{min-height:38px}
  @media(max-height:760px) and (min-width:681px){.boardovl.deep-house-interior{padding:6px!important}.boardovl.deep-house-interior .boardcard.deephousemodal{height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important}.deep-house-interior .deephousemodal>div:first-child{padding:8px 12px!important}.deep-house-interior .deephousepanel{padding:9px 13px}.deep-house-interior .deephousepanel h4{font-size:21px}.deep-house-interior .deephousepanel p{font-size:10px;margin-bottom:6px}.deep-house-interior .deeptrainingcopy small{font-size:8px}.deep-house-interior .deephouseplayer{height:175px}.deep-house-interior .deephouseplayer svg{height:168px!important}}
  @media(max-width:680px){.boardovl.deep-house-interior{padding:0!important}.boardovl.deep-house-interior .boardcard.deephousemodal{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.deep-house-interior .deephouseroom{position:relative;display:block;min-height:0!important;height:auto}.deep-house-interior .deephousescene{position:absolute;inset:0;min-height:0!important;border:0;opacity:.24}.deep-house-interior .deephouseplayer{display:none}.deep-house-interior .deephousepanel{position:relative;z-index:1;height:100%;padding:10px 12px;overflow:hidden;background:linear-gradient(90deg,rgba(16,14,13,.91),rgba(12,12,12,.98))}.deep-house-interior .deeptraininggrid{grid-template-columns:1fr 1fr}.deep-house-interior .deephousepanel h4{font-size:22px}.deep-house-interior .deephousepanel p{font-size:10px}.deep-house-interior .deeptrainingcopy small{font-size:7.5px}}
  .boardovl.deep-shop-interior{align-items:center!important;padding:10px clamp(8px,2vw,24px)!important;overflow:hidden!important}.boardovl.deep-shop-interior .boardcard.deepshopmodal{display:flex;flex-direction:column;width:min(960px,96vw)!important;height:min(720px,calc(100dvh - 20px))!important;max-height:calc(100dvh - 20px)!important}.deep-shop-interior .deepshopmodal>div:first-child{flex:0 0 auto}.deep-shop-interior .deepshopbody{flex:1;min-height:0;max-height:none!important;overflow:auto;overflow-x:hidden;padding:10px 13px 13px}.deep-shop-interior .deepshopscene{min-height:clamp(120px,21dvh,175px);margin:-10px -13px 9px;padding:13px}.deep-shop-interior .deepshopcounter{grid-template-columns:56px minmax(0,1fr) minmax(0,auto);gap:9px;padding:8px 10px}.deep-shop-interior .deepshopkeeper{width:50px;height:50px;font-size:24px}.deep-shop-interior .deepshopgreet strong{font-size:17px}.deep-shop-interior .deepshopgreet span{font-size:10px}.deep-shop-interior .deepshopwallet{font-size:18px}.deep-shop-interior .deepshoptabs{margin:8px 0;padding:4px}.deep-shop-interior .deepshoptab{padding:7px 6px}.deep-shop-interior .deepshopsectiontitle{margin:2px 0 6px;font-size:15px}.deep-shop-interior .deepshopgrid{gap:7px}.deep-shop-interior .deepshopitem{min-height:60px;padding:7px;grid-template-columns:38px minmax(0,1fr) auto;gap:7px}.deep-shop-interior .deepshopicon{width:36px;height:36px;font-size:21px}.deep-shop-interior .deepshopdesc{font-size:9.5px}.deep-shop-interior .deepshoptier{margin-top:4px}
  @media(max-height:760px) and (min-width:681px){.boardovl.deep-shop-interior{padding:6px!important}.boardovl.deep-shop-interior .boardcard.deepshopmodal{height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important}.deep-shop-interior .deepshopmodal>div:first-child{padding:8px 12px!important}.deep-shop-interior .deepshopscene{min-height:105px}.deep-shop-interior .deepshopitem{min-height:54px;padding:5px 7px}.deep-shop-interior .deepshopdesc{font-size:8.5px}}
  @media(max-width:680px){.boardovl.deep-shop-interior{padding:0!important}.boardovl.deep-shop-interior .boardcard.deepshopmodal{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.deep-shop-interior .deepshopbody{padding:8px 10px 10px}.deep-shop-interior .deepshopscene{min-height:112px;margin:-8px -10px 7px}.deep-shop-interior .deepshopgrid{grid-template-columns:1fr 1fr}.deep-shop-interior .deepshopitem{grid-template-columns:30px minmax(0,1fr) auto;min-height:52px;padding:5px}.deep-shop-interior .deepshopicon{width:29px;height:29px;font-size:17px}.deep-shop-interior .deepshopname{font-size:10px}.deep-shop-interior .deepshopdesc{font-size:7.5px}.deep-shop-interior .deepshopitem .btn{min-height:28px!important;padding:4px 6px!important;font-size:9px}}
  /* Titan Wilds: a full-bleed dinosaur survival expedition inside Pet House. */
  body.dinosaurmode{overflow:hidden;background:#101d17}body.dinosaurmode .utilityrail{display:none!important}
  /* NFL Fantasy: one live, server-scored five bound to the Plaza character. */
  .nflf-hero,.nflf-identity,.nflf-scoreboard,.nflf-lineup,.nflf-board,.nflf-draft,.nflf-empty-live,.nflf-offseason,.nflf-loading,.nflf-offline{position:relative;overflow:hidden;margin:0 0 12px;border:1px solid rgba(170,211,153,.24);border-radius:18px;color:#f2f5ea;box-shadow:0 15px 38px rgba(0,0,0,.24)}
  .nflf-hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;min-height:210px;padding:24px 26px;background:radial-gradient(circle at 87% 30%,rgba(225,177,70,.22),transparent 26%),linear-gradient(135deg,rgba(13,55,39,.98),rgba(8,28,28,.99) 57%,rgba(28,24,17,.98))}
  .nflf-hero::before{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),rgba(255,255,255,.18) calc(10% - 1px) 10%),linear-gradient(180deg,transparent 48%,rgba(255,255,255,.42) 49% 51%,transparent 52%)}
  .nflf-hero>div{position:relative;z-index:1}.nflf-kicker{color:#d7b35f;font:950 9px/1.25 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.nflf-hero h2{max-width:720px;margin:7px 0;color:#fff0ba;font:900 clamp(29px,5vw,48px)/.98 Georgia,serif}.nflf-hero p{max-width:720px;margin:0;color:#c3d4c5;font-size:13px;line-height:1.52}.nflf-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.nflf-badges span{padding:5px 8px;border:1px solid rgba(238,206,127,.28);border-radius:999px;background:rgba(5,15,12,.38);color:#ead9a9;font-size:9px;font-weight:850}.nflf-ball{display:grid;place-items:center;width:122px;height:122px;margin:auto;border:1px solid rgba(244,213,133,.38);border-radius:50%;background:radial-gradient(circle,rgba(236,196,105,.18),rgba(0,0,0,.22) 68%);font-size:78px;filter:drop-shadow(0 15px 10px rgba(0,0,0,.38));animation:nflf-ball-float 2.8s ease-in-out infinite alternate}
  .nflf-identity{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:15px;align-items:center;padding:14px 17px;background:linear-gradient(135deg,rgba(37,32,23,.98),rgba(19,26,25,.98))}.nflf-avatar{display:grid;place-items:center;width:76px;height:76px;overflow:hidden;border:2px solid #d6b15b;border-radius:50%;background:radial-gradient(circle,#394f3e,#141c18 72%);color:#ffe3a0;font:900 34px Georgia,serif;box-shadow:0 0 0 4px rgba(214,177,91,.09)}.nflf-avatar svg{width:74px;height:74px}.nflf-identity-copy h3{margin:4px 0;color:#ffe4a1;font:900 25px/1 Georgia,serif}.nflf-identity-copy p{max-width:700px;margin:5px 0 0;color:#bbbba9;font-size:11px;line-height:1.45}.nflf-character-seal{padding:9px 12px;border:1px solid rgba(219,183,92,.36);border-radius:12px;background:rgba(91,67,27,.22);text-align:center}.nflf-character-seal b,.nflf-character-seal span{display:block}.nflf-character-seal b{color:#f3cc73;font:950 15px Georgia,serif;letter-spacing:.1em}.nflf-character-seal span{margin-top:2px;color:#a99b7d;font-size:7px;font-weight:900;text-transform:uppercase}
  .nflf-scoreboard{padding:15px;background:linear-gradient(145deg,rgba(14,28,29,.98),rgba(11,17,21,.98))}.nflf-scoreboard-head,.nflf-lineup-head,.nflf-board-head,.nflf-draft-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.nflf-scoreboard-head h3,.nflf-lineup-head h3,.nflf-board-head h3,.nflf-draft-head h3{margin:3px 0;color:#e7f2da;font:900 22px/1 Georgia,serif}.nflf-wire-state,.nflf-entry-count,.nflf-lock,.nflf-filed{padding:6px 9px;border:1px solid rgba(153,190,153,.24);border-radius:999px;background:rgba(24,54,46,.38);color:#a7c9b6;font-size:8px;font-weight:950;letter-spacing:.08em;white-space:nowrap}.nflf-wire-state.live{border-color:rgba(101,238,151,.48);background:rgba(22,105,61,.3);color:#8dffba;animation:nflf-live-pulse 1.25s ease-in-out infinite alternate}.nflf-games{display:flex;gap:8px;margin-top:11px;padding:2px 0 7px;overflow-x:auto;scroll-snap-type:x proximity}.nflf-game{flex:0 0 146px;padding:8px 9px;border:1px solid rgba(166,197,178,.16);border-radius:11px;background:rgba(2,10,13,.38);scroll-snap-align:start}.nflf-game.in{border-color:rgba(92,232,142,.4);box-shadow:inset 0 0 17px rgba(53,199,112,.08)}.nflf-game.post{opacity:.78}.nflf-game-status{min-height:25px;margin-bottom:4px;color:#87a59d;font-size:8px;font-weight:800;line-height:1.25}.nflf-game.in .nflf-game-status{color:#7ff0a9}.nflf-team{display:grid;grid-template-columns:8px 1fr auto;gap:6px;align-items:center;padding:3px 0}.nflf-team i{width:7px;height:17px;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}.nflf-team b{color:#e3e9df;font-size:11px}.nflf-team span{color:#fff0b8;font:900 15px Georgia,serif}
  .nflf-lineup{padding:16px;background:radial-gradient(circle at 90% 0,rgba(197,157,69,.12),transparent 34%),linear-gradient(145deg,rgba(24,35,31,.98),rgba(13,17,20,.98))}.nflf-lineup-head p,.nflf-draft-head p{max-width:660px;margin:5px 0 0;color:#aebbb0;font-size:10px;line-height:1.4}.nflf-total{min-width:94px;padding:8px 10px;border:1px solid rgba(221,188,101,.4);border-radius:12px;background:rgba(83,61,24,.28);text-align:center}.nflf-total b,.nflf-total span{display:block}.nflf-total b{color:#ffdf84;font:950 28px/1 Georgia,serif}.nflf-total span{margin-top:3px;color:#aa9c7d;font-size:7px;font-weight:900;text-transform:uppercase}.nflf-filed{border-color:rgba(220,183,86,.4);color:#f0c966}.nflf-lineup-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:12px}.nflf-pick{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);gap:7px;align-items:center;min-height:86px;padding:22px 7px 7px;border:1px solid rgba(160,191,172,.16);border-radius:12px;background:rgba(3,10,12,.35)}.nflf-pick.in{border-color:rgba(86,227,136,.4);box-shadow:inset 0 0 16px rgba(66,216,119,.07)}.nflf-slot-badge{position:absolute;left:7px;top:6px;color:#d7b45d;font-size:7px;font-weight:950;letter-spacing:.12em}.nflf-headshot,.nflf-slot-face{position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(218,190,122,.28);border-radius:50%;background:#1b2c27}.nflf-headshot{width:44px;height:44px}.nflf-headshot img,.nflf-slot-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.nflf-headshot-fallback{font-size:19px}.nflf-pick-copy{min-width:0}.nflf-pick-copy b,.nflf-pick-copy span,.nflf-pick-copy small{display:block;overflow:hidden;text-overflow:ellipsis}.nflf-pick-copy b{color:#eef0e5;font-size:10px;white-space:nowrap}.nflf-pick-copy span{margin-top:2px;color:#aab8ae;font-size:8px}.nflf-pick-copy small{margin-top:3px;color:#82958b;font-size:7px;line-height:1.25}.nflf-pick-score{grid-column:1/-1;display:flex;align-items:end;justify-content:space-between;border-top:1px solid rgba(255,255,255,.06);padding-top:5px}.nflf-pick-score b{color:#ffdf8c;font:900 17px Georgia,serif}.nflf-pick-score small{color:#87c89d;font-size:7px;font-weight:900}
  .nflf-board{padding:16px;background:linear-gradient(145deg,rgba(18,29,29,.98),rgba(11,18,22,.98))}.nflf-rank{display:grid;grid-template-columns:43px minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:6px;padding:9px 11px;border:1px solid rgba(144,184,170,.13);border-radius:10px;background:rgba(0,0,0,.2)}.nflf-rank.mine{border-color:rgba(232,194,96,.42);background:linear-gradient(90deg,rgba(102,75,27,.34),rgba(11,22,21,.38));box-shadow:inset 3px 0 #d6ac4e}.nflf-place{color:#d8b862;font:900 15px Georgia,serif}.nflf-rank div b,.nflf-rank div small{display:block}.nflf-rank div b{color:#e7eee5;font-size:11px}.nflf-rank div small{margin-top:2px;color:#829b92;font-size:8px}.nflf-rank>strong{color:#ffe092;font:900 20px Georgia,serif}.nflf-empty{padding:18px;border:1px dashed rgba(148,191,172,.25);border-radius:11px;color:#91a69c;text-align:center}.nflf-truth{margin:10px 2px 0;color:#789087;font-size:9px;line-height:1.4}
  .nflf-empty-live,.nflf-offseason{padding:17px;background:linear-gradient(145deg,rgba(27,33,29,.96),rgba(16,18,20,.98))}.nflf-empty-live h3,.nflf-offseason h3{margin:4px 0;color:#dedfce;font:900 20px Georgia,serif}.nflf-empty-live p,.nflf-offseason p{margin:0;color:#9ca99e;font-size:11px;line-height:1.45}
  .nflf-draft{padding:18px;background:radial-gradient(circle at 90% 0,rgba(224,176,67,.16),transparent 30%),linear-gradient(145deg,rgba(37,31,21,.98),rgba(15,22,20,.99) 62%)}.nflf-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:14px}.nflf-draft-slot{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:7px;align-items:center;min-height:69px;padding:22px 8px 8px;border:1px dashed rgba(213,181,104,.28);border-radius:12px;background:rgba(2,10,10,.29);color:#d4d7cb;text-align:left;cursor:pointer}.nflf-draft-slot:hover,.nflf-draft-slot:focus-visible{border-color:#d5ae55;outline:none}.nflf-draft-slot.active{border-style:solid;border-color:#edc361;box-shadow:0 0 0 2px rgba(231,186,80,.1),inset 0 0 20px rgba(215,169,63,.08)}.nflf-draft-slot.filled{border-style:solid;background:rgba(23,53,40,.42)}.nflf-slot-label{position:absolute;left:8px;top:6px;color:#e6bd5d;font-size:8px;font-weight:950;letter-spacing:.12em}.nflf-draft-slot>b,.nflf-draft-slot>small,.nflf-draft-slot>span:not(.nflf-slot-face):not(.nflf-slot-label) b,.nflf-draft-slot>span:not(.nflf-slot-face):not(.nflf-slot-label) small{display:block}.nflf-draft-slot>b,.nflf-draft-slot>span b{overflow:hidden;color:#e8eee4;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.nflf-draft-slot>small,.nflf-draft-slot>span small{margin-top:2px;color:#83978b;font-size:7px}.nflf-slot-face{width:38px;height:38px}.nflf-roster-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px}.nflf-search,.nflf-team-filter{min-height:40px;border:1px solid rgba(184,194,170,.23);border-radius:10px;background:rgba(3,10,11,.55);color:#eef1e8;font:inherit;font-size:11px}.nflf-search{flex:1;min-width:190px;padding:0 11px}.nflf-team-filter{padding:0 9px}.nflf-position-tools{display:flex;gap:4px}.nflf-filter{min-height:38px;padding:0 9px;border:1px solid rgba(192,181,136,.2);border-radius:9px;background:rgba(4,11,12,.42);color:#9ea99d;font-size:8px;font-weight:900;cursor:pointer}.nflf-filter.active{border-color:#d9b354;background:rgba(113,79,24,.4);color:#ffe39b}.nflf-roster-result{margin:8px 2px 6px;color:#899b91;font-size:8px}.nflf-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:420px;padding:2px 3px 6px 0;overflow:auto}.nflf-player{display:grid;grid-template-columns:45px minmax(0,1fr) auto;gap:7px;align-items:center;min-height:62px;padding:7px;border:1px solid rgba(151,181,164,.14);border-radius:11px;background:rgba(2,9,10,.3);color:#dbe2d9;text-align:left;cursor:pointer}.nflf-player:hover,.nflf-player:focus-visible{border-color:rgba(221,187,101,.56);outline:none;background:rgba(73,58,25,.28)}.nflf-player.selected{border-color:#e4bc59;background:linear-gradient(90deg,rgba(102,73,22,.44),rgba(11,29,25,.45))}.nflf-player-copy{min-width:0}.nflf-player-copy b,.nflf-player-copy span,.nflf-player-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nflf-player-copy b{font-size:10px}.nflf-player-copy span{margin-top:2px;color:#a5b4a9;font-size:8px}.nflf-player-copy small{margin-top:2px;color:#788c82;font-size:7px}.nflf-player>strong{color:#dbb65c;font-size:7px;white-space:nowrap}.nflf-draft-actions{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07);color:#9aa89d;font-size:9px}.nflf-enter{min-width:190px}.nflf-draft>.nflf-lineup{margin:13px 0 0;box-shadow:none}
  .nflf-rules{margin:0 0 8px;padding:11px 13px;border:1px solid rgba(159,187,168,.18);border-radius:12px;background:rgba(4,13,14,.32);color:#96a79d;font-size:10px}.nflf-rules summary{color:#d8c17f;font-weight:900;cursor:pointer}.nflf-rules p{margin:8px 0 0;line-height:1.5}.nflf-refresh{display:flex;align-items:center;justify-content:flex-end;gap:9px;color:#768a80;font-size:8px}.nflf-refresh .btn{min-height:31px!important;padding:4px 9px!important;font-size:8px!important}.nflf-loading,.nflf-offline{display:grid;place-items:center;min-height:280px;padding:25px;background:linear-gradient(145deg,rgba(15,45,33,.97),rgba(11,20,21,.99));text-align:center}.nflf-loading>span,.nflf-offline>span{font-size:58px;filter:drop-shadow(0 10px 8px rgba(0,0,0,.36))}.nflf-loading>b,.nflf-offline h3{margin-top:8px;color:#ffe2a0;font:900 24px Georgia,serif}.nflf-loading>small,.nflf-offline p{max-width:470px;margin:5px auto 13px;color:#9eb4a6;line-height:1.45}
  @keyframes nflf-live-pulse{to{box-shadow:0 0 15px rgba(90,240,142,.28)}}@keyframes nflf-ball-float{to{transform:translateY(-7px) rotate(-3deg)}}
  @media(max-width:900px){.nflf-lineup-grid,.nflf-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.nflf-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.nflf-pick:nth-child(4),.nflf-draft-slot:nth-child(4){grid-column:auto}.nflf-pick:last-child,.nflf-draft-slot:last-child{grid-column:span 2}}
  @media(max-width:620px){.nflf-hero{grid-template-columns:1fr;min-height:0;padding:19px 15px}.nflf-hero h2{font-size:31px}.nflf-ball{position:absolute;right:-20px;top:-12px;width:90px;height:90px;opacity:.2;font-size:58px}.nflf-identity{grid-template-columns:62px minmax(0,1fr);padding:12px}.nflf-avatar,.nflf-avatar svg{width:58px;height:58px}.nflf-character-seal{grid-column:1/-1}.nflf-scoreboard,.nflf-lineup,.nflf-board,.nflf-draft{padding:12px 10px}.nflf-scoreboard-head,.nflf-lineup-head,.nflf-board-head,.nflf-draft-head{align-items:flex-start}.nflf-lineup-grid,.nflf-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.nflf-pick:last-child,.nflf-draft-slot:last-child{grid-column:1/-1}.nflf-pick{min-height:80px}.nflf-roster{grid-template-columns:1fr;max-height:390px}.nflf-roster-tools{align-items:stretch}.nflf-search{flex-basis:100%}.nflf-team-filter{flex:1}.nflf-draft-actions{align-items:stretch;flex-direction:column}.nflf-enter{width:100%}.nflf-lock{max-width:125px;overflow:hidden;text-overflow:ellipsis}.nflf-refresh{justify-content:space-between}}
  @media(prefers-reduced-motion:reduce){.nflf-ball,.nflf-wire-state.live{animation:none}.nflf-games{scroll-behavior:auto}.nflf-player,.nflf-draft-slot{transition:none}}
  /* Sports Book: a wide live-data floor with two recognizable desks. */
  .sportsbook-app{position:relative;left:50%;isolation:isolate;width:min(1600px,calc(100vw - 32px));margin:2px 0 46px;padding:20px;overflow:hidden;transform:translateX(-50%);border:1px solid rgba(223,181,91,.28);border-radius:28px;background:radial-gradient(circle at 82% -8%,rgba(224,178,66,.13),transparent 33%),radial-gradient(circle at 3% 32%,rgba(35,112,77,.13),transparent 29%),linear-gradient(155deg,#141713,#090b0c 56%,#10100d);box-shadow:0 30px 90px rgba(0,0,0,.45),inset 0 1px rgba(255,239,191,.06);color:#f3f2e8}.sportsbook-app::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;pointer-events:none;background-image:radial-gradient(circle at 20% 20%,#efd281 0 1px,transparent 1.5px),radial-gradient(circle at 70% 44%,#efd281 0 1px,transparent 1.5px);background-size:190px 190px,260px 260px}
  .sportsbook-mast{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;min-height:118px;padding:22px 25px;border:1px solid rgba(225,189,103,.22);border-radius:21px;background:linear-gradient(110deg,rgba(61,48,25,.63),rgba(19,32,27,.78) 50%,rgba(10,17,18,.9));box-shadow:inset 0 1px rgba(255,243,203,.07)}.sportsbook-back{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid rgba(227,194,116,.28);border-radius:999px;background:rgba(6,10,10,.34);color:#e8cf91;font-size:13px;font-weight:900;text-decoration:none}.sportsbook-back:hover{border-color:#e3bb61;color:#ffe8ac}.sportsbook-kicker{color:#d9b65c;font-size:10px;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.sportsbook-brand h1{margin:5px 0 3px;color:#fff0bd;font:950 clamp(37px,4vw,58px)/.94 Georgia,serif;letter-spacing:-.025em}.sportsbook-brand p{margin:0;color:#bdc7ba;font-size:15px}.sportsbook-live{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(83,230,142,.32);border-radius:999px;background:rgba(24,88,54,.28);color:#9af1b8;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.sportsbook-live i{width:8px;height:8px;border-radius:50%;background:#62ef9a;box-shadow:0 0 13px #62ef9a;animation:sportsbook-live 1.2s ease-in-out infinite alternate}
  .sportsbook-desks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.sportsbook-desk{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:13px;align-items:center;min-height:86px;padding:13px 16px;border:1px solid rgba(208,189,141,.18);border-radius:17px;background:linear-gradient(145deg,rgba(32,38,34,.88),rgba(12,15,16,.94));color:#d8ddd5;text-align:left;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.2);transition:border-color .16s,transform .16s,background .16s}.sportsbook-desk::after{content:"ENTER";color:#7e9187;font-size:8px;font-weight:950;letter-spacing:.12em}.sportsbook-desk:hover,.sportsbook-desk:focus-visible{border-color:rgba(227,188,88,.58);outline:none;transform:translateY(-2px)}.sportsbook-desk.active{border-color:#e1b858;background:radial-gradient(circle at 92% 20%,rgba(230,183,72,.18),transparent 31%),linear-gradient(135deg,rgba(35,78,56,.9),rgba(47,38,20,.92));box-shadow:0 13px 30px rgba(0,0,0,.29),inset 4px 0 #e0b552}.sportsbook-desk.active::after{content:"OPEN";color:#f3cc72}.sportsbook-desk-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(231,196,110,.22);border-radius:15px;background:rgba(3,9,9,.38);font-size:29px}.sportsbook-desk-copy strong,.sportsbook-desk-copy small{display:block}.sportsbook-desk-copy strong{color:#f8efd5;font:900 18px Georgia,serif}.sportsbook-desk-copy small{margin-top:4px;color:#99aaa0;font-size:11px;line-height:1.35}.sportsbook-stage{min-width:0}
  .nflf-hero,.nflf-identity,.nflf-scoreboard,.nflf-lineup,.nflf-board,.nflf-draft,.nflf-empty-live,.nflf-offseason,.nflf-loading,.nflf-offline{margin-bottom:16px;border-radius:22px}.nflf-hero{grid-template-columns:minmax(0,1fr) 220px;min-height:310px;padding:39px 43px}.nflf-kicker{font-size:11px}.nflf-hero h2{max-width:920px;font-size:clamp(42px,5vw,70px)}.nflf-hero p{max-width:850px;font-size:16px}.nflf-badges{gap:8px;margin-top:20px}.nflf-badges span{padding:7px 10px;font-size:11px}.nflf-ball{width:168px;height:168px;font-size:105px}.nflf-identity{grid-template-columns:96px minmax(0,1fr) auto;gap:19px;padding:19px 22px}.nflf-avatar,.nflf-avatar svg{width:88px;height:88px}.nflf-identity-copy h3{font-size:30px}.nflf-identity-copy p{font-size:14px}.nflf-character-seal{padding:12px 15px}.nflf-character-seal b{font-size:18px}.nflf-character-seal span{font-size:9px}
  .nflf-scoreboard,.nflf-lineup,.nflf-board,.nflf-draft{padding:21px}.nflf-scoreboard-head h3,.nflf-lineup-head h3,.nflf-board-head h3,.nflf-draft-head h3{font-size:27px}.nflf-lineup-head p,.nflf-draft-head p{font-size:13px}.nflf-wire-state,.nflf-entry-count,.nflf-lock,.nflf-filed{padding:8px 11px;font-size:10px}.nflf-games{gap:11px;margin-top:15px}.nflf-game{flex-basis:190px;padding:12px}.nflf-game-status{font-size:10px}.nflf-team b{font-size:14px}.nflf-team span{font-size:20px}.nflf-lineup-grid,.nflf-slots{gap:10px;margin-top:16px}.nflf-pick{grid-template-columns:58px minmax(0,1fr);min-height:116px;padding:27px 11px 11px}.nflf-headshot{width:56px;height:56px}.nflf-slot-badge{font-size:9px}.nflf-pick-copy b{font-size:13px}.nflf-pick-copy span{font-size:10px}.nflf-pick-copy small{font-size:9px}.nflf-pick-score b{font-size:21px}.nflf-pick-score small{font-size:9px}.nflf-rank{min-height:58px;padding:11px 14px}.nflf-place{font-size:18px}.nflf-rank div b{font-size:14px}.nflf-rank div small{font-size:10px}.nflf-rank>strong{font-size:24px}.nflf-truth{font-size:11px}.nflf-empty-live,.nflf-offseason{padding:22px}.nflf-empty-live h3,.nflf-offseason h3{font-size:25px}.nflf-empty-live p,.nflf-offseason p{font-size:13px}
  .nflf-draft-slot{grid-template-columns:50px minmax(0,1fr);min-height:87px;padding:28px 11px 10px}.nflf-slot-face{width:47px;height:47px}.nflf-slot-label{font-size:9px}.nflf-draft-slot>b,.nflf-draft-slot>span b{font-size:12px}.nflf-draft-slot>small,.nflf-draft-slot>span small{font-size:9px}.nflf-search,.nflf-team-filter{min-height:46px;font-size:13px}.nflf-filter{min-height:43px;font-size:10px}.nflf-roster-result{font-size:10px}.nflf-roster{gap:8px;max-height:570px}.nflf-player{grid-template-columns:54px minmax(0,1fr) auto;min-height:76px;padding:9px}.nflf-player-copy b{font-size:13px}.nflf-player-copy span{font-size:10px}.nflf-player-copy small{font-size:9px}.nflf-player>strong{font-size:9px}.nflf-draft-actions{font-size:12px}.nflf-rules{padding:14px 16px;font-size:13px}.nflf-refresh{font-size:11px}
  .pickem-hero,.pickem-metrics,.pickem-status,.pickem-game,.pickem-submit,.pickem-board,.pickem-loading{position:relative;border:1px solid rgba(181,202,193,.2);border-radius:22px;background:#111719;color:#eef2ed;box-shadow:0 15px 38px rgba(0,0,0,.24)}.pickem-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:25px;align-items:center;min-height:280px;margin-bottom:14px;padding:35px 39px;overflow:hidden;background:radial-gradient(circle at 88% 28%,rgba(227,179,66,.24),transparent 25%),linear-gradient(135deg,#192e28,#111e27 55%,#2d2115)}.pickem-hero::before{content:"";position:absolute;inset:0;opacity:.13;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0 32px,rgba(255,255,255,.13) 33px 34px)}.pickem-hero>div{position:relative}.pickem-kicker{color:#e0b95c;font-size:11px;font-weight:950;letter-spacing:.17em;text-transform:uppercase}.pickem-hero h2{margin:6px 0;color:#fff0bb;font:950 clamp(42px,5vw,66px)/.96 Georgia,serif;letter-spacing:-.025em}.pickem-hero p{max-width:850px;margin:0;color:#c3d0ca;font-size:16px;line-height:1.55}.pickem-how{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.pickem-how span{padding:7px 10px;border:1px solid rgba(232,199,118,.24);border-radius:999px;background:rgba(2,11,12,.32);color:#e6d5a8;font-size:11px;font-weight:850}.pickem-target{display:grid;place-items:center;width:158px;height:158px;margin:auto;border:1px solid rgba(238,201,111,.42);border-radius:50%;background:radial-gradient(circle,rgba(225,180,72,.22),rgba(7,14,15,.52) 68%);text-align:center;box-shadow:0 0 0 10px rgba(224,180,72,.035),0 16px 28px rgba(0,0,0,.27)}.pickem-target span{font-size:53px}.pickem-target b,.pickem-target small{display:block}.pickem-target b{color:#ffe29a;font:950 21px Georgia,serif}.pickem-target small{color:#a99c7d;font-size:8px;font-weight:950;letter-spacing:.12em}
  .pickem-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:14px;padding:0;overflow:hidden;background:rgba(196,211,201,.12)}.pickem-metric{padding:18px 15px;background:linear-gradient(145deg,#171f1f,#0e1416);text-align:center}.pickem-metric strong,.pickem-metric span{display:block}.pickem-metric strong{color:#ffe09a;font:950 27px Georgia,serif}.pickem-metric span{margin-top:5px;color:#8fa39a;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.pickem-status{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px;padding:14px 17px;border-left:4px solid #ddb354}.pickem-status b{color:#f7e5b1;font-size:14px}.pickem-status span{color:#96a79f;font-size:12px}.pickem-status.filed{border-left-color:#68db9b;background:linear-gradient(90deg,rgba(26,89,57,.4),#111719)}.pickem-status.locked{border-left-color:#aa7e6a}
  .pickem-games{display:grid;grid-template-columns:repeat(auto-fit,minmax(370px,1fr));gap:12px;margin-bottom:14px}.pickem-game{overflow:hidden;border-radius:18px;background:linear-gradient(145deg,#171e1f,#0b1012)}.pickem-game.in{border-color:rgba(95,233,148,.46);box-shadow:0 15px 38px rgba(0,0,0,.24),inset 0 0 26px rgba(64,209,120,.06)}.pickem-game-head{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.07);color:#8da097;font-size:11px}.pickem-game-head b{color:#d5bd7e;font-size:10px;letter-spacing:.08em}.pickem-game.in .pickem-game-head b{color:#72f1a6}.pickem-matchup{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);gap:6px;align-items:center;padding:12px}.pickem-at{color:#65746e;font-size:11px;font-weight:950;text-align:center}.pickem-team{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-height:66px;padding:10px 12px;border:1px solid rgba(180,199,189,.16);border-radius:12px;background:rgba(2,10,12,.35);color:#dde5df;text-align:left;cursor:pointer}.pickem-team:hover:not(:disabled),.pickem-team:focus-visible:not(:disabled){border-color:#e0b85c;outline:none;background:rgba(82,63,24,.34)}.pickem-team:disabled{opacity:1;cursor:default}.pickem-team.selected{border-color:#e2b95a;background:linear-gradient(135deg,rgba(104,76,24,.5),rgba(16,38,30,.55));box-shadow:inset 3px 0 #e2b95a}.pickem-team.winner{border-color:rgba(91,224,147,.5)}.pickem-team.wrong{border-color:rgba(222,105,90,.42);opacity:.68}.pickem-team span b,.pickem-team span small{display:block}.pickem-team span b{overflow:hidden;color:#eef2ed;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.pickem-team span small{margin-top:3px;color:#82958c;font-size:9px;text-transform:uppercase}.pickem-team>strong{color:#f2cc73;font:950 19px Georgia,serif;white-space:nowrap}.pickem-team.winner>strong{color:#78efa9}.pickem-result{padding:7px 12px;border-top:1px solid rgba(255,255,255,.06);color:#8ba096;font-size:10px;font-weight:900;text-align:right}.pickem-result.correct{color:#72e9a2}.pickem-result.miss{color:#dc8c7e}
  .pickem-submit{position:sticky;z-index:3;bottom:10px;display:flex;justify-content:space-between;gap:16px;align-items:center;margin:14px 0;padding:17px 19px;border-color:rgba(226,184,83,.44);background:linear-gradient(105deg,rgba(65,49,20,.96),rgba(13,28,24,.97));backdrop-filter:blur(12px)}.pickem-submit b,.pickem-submit span{display:block}.pickem-submit b{color:#ffe3a0;font-size:15px}.pickem-submit span{margin-top:3px;color:#a9b4aa;font-size:11px}.pickem-submit .btn{min-width:230px;min-height:48px}.pickem-board{padding:21px;background:linear-gradient(145deg,#162321,#0d1417)}.pickem-section-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.pickem-section-head h3{margin:4px 0;color:#e9f2e9;font:950 28px Georgia,serif}.pickem-section-head p{margin:0;color:#9dafaa;font-size:12px}.pickem-count{padding:7px 10px;border:1px solid rgba(114,205,166,.28);border-radius:999px;background:rgba(24,78,58,.28);color:#9ee4bd;font-size:10px;font-weight:900}.pickem-rank{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:57px;margin-top:7px;padding:10px 13px;border:1px solid rgba(160,191,177,.13);border-radius:11px;background:rgba(0,0,0,.2)}.pickem-rank.mine{border-color:rgba(231,192,93,.43);box-shadow:inset 3px 0 #ddb354}.pickem-place{color:#d9b85f;font:950 18px Georgia,serif}.pickem-rank div b,.pickem-rank div small{display:block}.pickem-rank div b{color:#e6eee8;font-size:14px}.pickem-rank div small{margin-top:2px;color:#81958c;font-size:10px}.pickem-rank>strong{color:#ffe096;font:950 21px Georgia,serif}.pickem-empty{margin-top:12px;padding:22px;border:1px dashed rgba(135,194,168,.28);border-radius:13px;color:#91a69d;text-align:center}.pickem-truth{margin:12px 2px 0;color:#7e948a;font-size:11px}.pickem-loading{display:grid;place-items:center;min-height:380px;padding:30px;background:linear-gradient(145deg,#18342a,#0b1518);text-align:center}.pickem-loading>span{font-size:67px}.pickem-loading h3{margin:8px 0 0;color:#ffe1a0;font:950 29px Georgia,serif}.pickem-loading p{max-width:560px;margin:6px auto 15px;color:#a3b5aa;font-size:13px}
  @keyframes sportsbook-live{to{opacity:.45;box-shadow:0 0 4px #62ef9a}}
  @media(max-width:900px){.sportsbook-app{width:calc(100vw - 20px);padding:13px}.sportsbook-mast{grid-template-columns:auto minmax(0,1fr);gap:15px;padding:18px}.sportsbook-live{grid-column:1/-1;width:max-content;margin-left:auto}.sportsbook-brand h1{font-size:43px}.nflf-hero{grid-template-columns:minmax(0,1fr) 150px;min-height:260px;padding:29px 28px}.nflf-hero h2{font-size:49px}.nflf-ball{width:130px;height:130px;font-size:82px}.pickem-games{grid-template-columns:1fr}.pickem-hero{grid-template-columns:minmax(0,1fr) 140px;padding:28px}.pickem-target{width:128px;height:128px}}
  @media(max-width:620px){.sportsbook-app{width:calc(100vw - 12px);margin-top:0;padding:8px;border-radius:19px}.sportsbook-mast{grid-template-columns:1fr auto;gap:10px;min-height:0;padding:13px;border-radius:15px}.sportsbook-back{grid-column:1;grid-row:1;justify-self:start;min-height:36px;padding:0 11px;font-size:11px}.sportsbook-brand{grid-column:1/-1;grid-row:2}.sportsbook-brand h1{font-size:36px}.sportsbook-brand p{font-size:12px}.sportsbook-kicker{font-size:8px}.sportsbook-live{grid-column:2;grid-row:1;margin:0;padding:7px 9px;font-size:8px}.sportsbook-desks{gap:6px;margin:8px 0}.sportsbook-desk{grid-template-columns:34px minmax(0,1fr);gap:7px;min-height:62px;padding:8px;border-radius:12px}.sportsbook-desk::after{display:none}.sportsbook-desk-icon{width:33px;height:33px;border-radius:9px;font-size:20px}.sportsbook-desk-copy strong{font-size:13px}.sportsbook-desk-copy small{display:none}.nflf-hero{grid-template-columns:1fr;min-height:220px;padding:24px 18px}.nflf-hero h2{font-size:39px}.nflf-hero p{font-size:14px}.nflf-ball{right:-28px;top:-20px;width:120px;height:120px;font-size:76px}.nflf-identity{grid-template-columns:64px minmax(0,1fr);gap:11px;padding:13px}.nflf-avatar,.nflf-avatar svg{width:61px;height:61px}.nflf-identity-copy h3{font-size:22px}.nflf-identity-copy p{font-size:11px}.nflf-character-seal{grid-column:1/-1}.nflf-scoreboard,.nflf-lineup,.nflf-board,.nflf-draft{padding:14px 11px}.nflf-scoreboard-head h3,.nflf-lineup-head h3,.nflf-board-head h3,.nflf-draft-head h3{font-size:22px}.nflf-game{flex-basis:174px}.nflf-lineup-grid,.nflf-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.nflf-pick{grid-template-columns:44px minmax(0,1fr);min-height:96px;padding:25px 8px 8px}.nflf-headshot{width:43px;height:43px}.nflf-pick-copy b{font-size:11px}.nflf-pick-copy span{font-size:9px}.nflf-roster{max-height:440px}.pickem-hero{grid-template-columns:1fr;min-height:220px;padding:23px 17px}.pickem-hero h2{font-size:39px}.pickem-hero p{font-size:14px}.pickem-target{position:absolute;right:-25px;top:-21px;width:120px;height:120px;opacity:.2}.pickem-how span{font-size:9px}.pickem-metrics{grid-template-columns:repeat(2,1fr)}.pickem-metric{padding:14px 8px}.pickem-metric strong{font-size:22px}.pickem-status{align-items:flex-start;flex-direction:column;padding:12px}.pickem-games{gap:8px}.pickem-matchup{grid-template-columns:1fr;gap:5px}.pickem-at{height:0;overflow:hidden}.pickem-team{min-height:57px}.pickem-submit{position:static;align-items:stretch;flex-direction:column;padding:14px}.pickem-submit .btn{width:100%;min-width:0}.pickem-board{padding:15px 11px}.pickem-section-head h3{font-size:24px}.pickem-rank{grid-template-columns:38px minmax(0,1fr) auto;padding:9px}.pickem-rank>strong{font-size:18px}.pickem-loading{min-height:300px}.pickem-loading h3{font-size:24px}}
  @media(prefers-reduced-motion:reduce){.sportsbook-live i{animation:none}.sportsbook-desk{transition:none}.sportsbook-desk:hover,.sportsbook-desk:focus-visible{transform:none}}
  /* Play Garden: companion-first agility run with authored environment art. */
  body.playgardenmode{overflow:hidden;background:#172518}
  body.playgardenmode .wrap{max-width:none;padding:0}
  body.playgardenmode #view{width:100%;max-width:none;min-height:100dvh;padding:0}
  .pg-app{position:relative;min-height:100dvh;overflow:hidden;background:linear-gradient(180deg,#4b291d,#152319);color:#fff3d2}
  .pg-back{position:fixed;z-index:20;left:14px;top:13px;display:inline-flex;align-items:center;min-height:36px;padding:0 13px;border:1px solid rgba(255,226,151,.62);border-radius:999px;background:rgba(20,23,19,.78);color:#fff0bd;font-size:12px;font-weight:900;text-decoration:none;box-shadow:0 7px 20px rgba(0,0,0,.28);backdrop-filter:blur(8px)}
  .pg-stage{position:absolute;inset:0;isolation:isolate;overflow:hidden;touch-action:none;background-position:center;background-size:cover}
  .pg-stage::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(30,15,9,.1) 0,transparent 36%,rgba(8,25,16,.12) 65%,rgba(5,16,10,.58) 100%),radial-gradient(circle at 50% 28%,transparent 0 35%,rgba(5,16,11,.2) 92%)}
  .pg-stage.impact{animation:pg-shake .11s linear}
  .pg-top{position:fixed;z-index:12;left:68px;right:14px;top:10px;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:center;pointer-events:none}
  .pg-identity,.pg-hud{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,224,144,.42);border-radius:18px;background:linear-gradient(135deg,rgba(26,34,25,.9),rgba(50,31,22,.82));box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(9px)}
  .pg-identity{width:max-content;max-width:100%;padding:7px 13px 7px 9px}
  .pg-portrait{--pet-preview:50px;flex:none}
  .pg-identity-copy{min-width:0}.pg-kicker{color:#f5c765;font-size:8px;font-weight:1000;letter-spacing:.16em;text-transform:uppercase}.pg-name{overflow:hidden;color:#fff0c2;font:900 17px/1.1 var(--serif);text-overflow:ellipsis;white-space:nowrap}.pg-rank{margin-top:2px;color:#c4dac4;font-size:9px;font-weight:800}
  .pg-hud{justify-self:end;padding:8px}
  .pg-stat{min-width:62px;padding:4px 8px;border-left:1px solid rgba(255,255,255,.1);text-align:center}.pg-stat:first-child{border-left:0}.pg-stat b{display:block;color:#ffecb3;font:950 18px/1 var(--serif)}.pg-stat small{display:block;margin-top:3px;color:#b7cbb7;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
  .pg-phase{position:fixed;z-index:9;left:50%;top:84px;transform:translateX(-50%);padding:7px 12px;border:1px solid rgba(255,227,154,.45);border-radius:999px;background:rgba(34,31,19,.72);color:#fff0ba;font-size:9px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 8px 22px rgba(0,0,0,.24);backdrop-filter:blur(7px);pointer-events:none}
  .pg-objective{position:fixed;z-index:9;right:15px;top:87px;width:min(260px,38vw);padding:9px 11px;border:1px solid rgba(178,220,154,.33);border-radius:13px;background:rgba(20,40,27,.72);color:#d9ead4;font-size:9px;line-height:1.35;box-shadow:0 8px 22px rgba(0,0,0,.22);backdrop-filter:blur(7px);pointer-events:none}
  .pg-glow{position:fixed;z-index:9;left:15px;bottom:18px;width:190px;padding:8px 10px;border:1px solid rgba(255,218,109,.38);border-radius:13px;background:rgba(31,34,21,.75);box-shadow:0 8px 22px rgba(0,0,0,.24);backdrop-filter:blur(7px)}.pg-glow-head{display:flex;justify-content:space-between;color:#ffe9ab;font-size:8px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.pg-glow-track{height:7px;margin-top:6px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.4)}.pg-glow-fill{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#82c86f,#ffe37d);box-shadow:0 0 12px rgba(255,224,101,.58);transition:width .15s}.pg-glow.on{border-color:#ffe37a;box-shadow:0 0 26px rgba(255,219,82,.25)}
  .pg-pet{--pet-preview:96px;position:absolute;z-index:6;left:50%;bottom:7%;transform:translateX(-50%);filter:drop-shadow(0 9px 7px rgba(0,0,0,.55));will-change:left,transform}.pg-pet.running{animation:pg-run .34s ease-in-out infinite alternate}.pg-pet.pounce{animation:pg-pounce .33s cubic-bezier(.2,.8,.3,1)}.pg-pet.stung{animation:pg-stung .35s linear}
  .pg-shadow{position:absolute;z-index:4;left:50%;bottom:6.4%;width:84px;height:20px;transform:translateX(-50%);border-radius:50%;background:rgba(16,25,11,.38);filter:blur(4px);pointer-events:none}
  .pg-drop{position:absolute;z-index:5;display:grid;place-items:center;width:50px;height:50px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.35);border-radius:50%;background:radial-gradient(circle at 38% 30%,rgba(255,255,255,.64),rgba(86,53,28,.82));font-size:29px;filter:drop-shadow(0 8px 5px rgba(0,0,0,.38));will-change:left,top,transform}.pg-drop.good{box-shadow:0 0 0 4px rgba(255,224,130,.1),0 0 18px rgba(255,205,82,.24)}.pg-drop.rare{border-color:#ffe779;background:radial-gradient(circle at 36% 28%,#fff9bd,#c98523 68%,#744519);box-shadow:0 0 23px rgba(255,220,84,.6);animation:pg-rare .75s ease-in-out infinite alternate}.pg-drop.bad{border-color:rgba(255,187,151,.5);background:radial-gradient(circle at 36% 28%,#9cb65c,#4d572a 70%);box-shadow:0 0 14px rgba(105,43,26,.35)}.pg-drop.called{outline:3px solid rgba(255,225,95,.85);outline-offset:4px}.pg-drop.faded{opacity:.34}.pg-drop.rhythm{animation:pg-rhythm .46s ease-in-out infinite alternate}
  .pg-pop{position:absolute;z-index:11;transform:translate(-50%,-50%);color:#fff1a8;font:1000 21px var(--serif);text-shadow:0 3px 6px #301c0f;pointer-events:none;animation:pg-pop .72s ease-out forwards}.pg-particle{position:absolute;z-index:10;width:8px;height:8px;border-radius:50%;background:var(--spark,#ffe27a);box-shadow:0 0 7px var(--spark,#ffe27a);pointer-events:none;animation:pg-spark .62s ease-out forwards}
  .pg-coach{position:fixed;z-index:13;left:50%;bottom:92px;max-width:min(520px,82vw);transform:translateX(-50%) translateY(8px);padding:8px 12px;border:1px solid rgba(255,225,145,.5);border-radius:999px;background:rgba(17,32,22,.9);color:#fff0bd;font-size:10px;font-weight:900;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.3);opacity:0;transition:opacity .18s,transform .18s;pointer-events:none}.pg-coach.on{opacity:1;transform:translateX(-50%) translateY(0)}
  .pg-controls{position:fixed;z-index:14;right:18px;bottom:18px;display:flex;align-items:center;gap:9px}.pg-call,.pg-pounce{min-height:52px;border:1px solid rgba(255,227,152,.58);border-radius:16px;background:linear-gradient(180deg,rgba(70,76,47,.94),rgba(35,48,31,.96));color:#fff0bd;font-weight:1000;box-shadow:0 10px 24px rgba(0,0,0,.32);cursor:pointer}.pg-call{max-width:180px;padding:0 13px;font-size:9px}.pg-pounce{min-width:132px;padding:0 19px;background:linear-gradient(180deg,#f3c862,#ad6e29);color:#2e2112;font-size:14px;letter-spacing:.04em}.pg-pounce:active{transform:translateY(2px)}.pg-call:disabled{opacity:.48}.pg-pounce:disabled{opacity:.62;cursor:wait}
  .pg-intro,.pg-finish{position:fixed;z-index:18;left:50%;top:50%;width:min(560px,calc(100vw - 28px));transform:translate(-50%,-50%);padding:23px;border:1px solid rgba(255,224,139,.62);border-radius:24px;background:radial-gradient(circle at 86% 4%,rgba(240,189,76,.17),transparent 33%),linear-gradient(145deg,rgba(25,45,31,.96),rgba(47,28,23,.96));box-shadow:0 26px 80px rgba(0,0,0,.5);backdrop-filter:blur(13px);text-align:center}.pg-intro h1,.pg-finish h2{margin:4px 0 7px;color:#fff0bd;font:950 clamp(30px,6vw,48px)/.98 var(--serif)}.pg-intro p,.pg-finish p{max-width:470px;margin:0 auto;color:#d0dfcd;font-size:12px;line-height:1.55}.pg-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.pg-rule{padding:10px 8px;border:1px solid rgba(192,224,173,.2);border-radius:13px;background:rgba(8,24,17,.42)}.pg-rule b{display:block;color:#ffe4a0;font-size:11px}.pg-rule small{display:block;margin-top:4px;color:#afc3ad;font-size:9px;line-height:1.35}.pg-start{min-width:210px;min-height:48px}.pg-trial{margin-top:9px;color:#f3d37e;font-size:9px;font-weight:900}.pg-finish-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.pg-finish-stat{padding:11px 8px;border:1px solid rgba(255,221,132,.23);border-radius:13px;background:rgba(9,24,17,.48)}.pg-finish-stat b{display:block;color:#ffe7a5;font:950 23px var(--serif)}.pg-finish-stat small{color:#afc5af;font-size:8px;font-weight:900;text-transform:uppercase}.pg-finish-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
  .pg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  @keyframes pg-run{to{transform:translateX(-50%) rotate(2deg) translateY(-2px)}}@keyframes pg-pounce{0%{transform:translateX(-50%) scale(1)}45%{transform:translateX(-50%) translateY(-44px) scale(1.12,.9)}100%{transform:translateX(-50%) scale(1)}}@keyframes pg-stung{0%,100%{transform:translateX(-50%)}25%{transform:translateX(calc(-50% - 9px)) rotate(-7deg)}75%{transform:translateX(calc(-50% + 9px)) rotate(7deg)}}@keyframes pg-shake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@keyframes pg-rare{to{transform:translate(-50%,-50%) scale(1.09) rotate(5deg)}}@keyframes pg-rhythm{to{transform:translate(-50%,-50%) scale(1.08)}}@keyframes pg-pop{to{transform:translate(-50%,-105%);opacity:0}}@keyframes pg-spark{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
  @media(max-width:760px){.pg-top{left:58px;right:8px;grid-template-columns:minmax(0,1fr) auto}.pg-identity{padding:5px 8px}.pg-portrait{--pet-preview:40px}.pg-name{font-size:14px}.pg-rank{font-size:8px}.pg-hud{gap:0;padding:6px}.pg-stat{min-width:48px;padding:3px 5px}.pg-stat b{font-size:15px}.pg-stat small{font-size:6.5px}.pg-phase{top:68px}.pg-objective{display:none}.pg-glow{left:8px;bottom:76px;width:144px}.pg-controls{left:8px;right:8px;bottom:9px;justify-content:flex-end}.pg-call{max-width:126px;min-height:48px}.pg-pounce{min-width:116px;min-height:50px;padding:0 14px}.pg-coach{bottom:137px}.pg-pet{--pet-preview:78px;bottom:10%}.pg-shadow{bottom:9.4%;width:68px}.pg-rules{grid-template-columns:1fr;gap:6px}.pg-rule{padding:7px}.pg-intro,.pg-finish{padding:18px}.pg-intro h1,.pg-finish h2{font-size:31px}.pg-intro p,.pg-finish p{font-size:10.5px}}
  @media(max-height:610px){.pg-phase{display:none}.pg-glow{bottom:69px}.pg-coach{bottom:124px}.pg-intro,.pg-finish{padding:14px}.pg-rules{margin:10px 0}.pg-rule{padding:6px}.pg-rule small{display:none}}
  @media(prefers-reduced-motion:reduce){.pg-stage.impact,.pg-pet.running,.pg-pet.pounce,.pg-pet.stung,.pg-drop.rare,.pg-drop.rhythm,.pg-pop,.pg-particle{animation:none}.pg-coach,.pg-glow-fill{transition:none}}
  /* Gubbin Pen: the Pet House's kid-safe sunny pen for six tinted OSWT Gubbins
     (2026-08-19). No island content; the whole cast is the blessed impostor
     strip, and every control is a real button so small hands and keyboards
     both play. */
  body.gubbinpenmode{overflow:hidden;background:#3f6b35}
  body.gubbinpenmode .wrap{max-width:none;padding:0}
  body.gubbinpenmode #view{width:100%;max-width:none;min-height:100dvh;padding:0}
  .gb-app{position:relative;min-height:100dvh;overflow:hidden;color:#fff6dc}
  .gb-back{position:fixed;z-index:20;left:14px;top:13px;display:inline-flex;align-items:center;min-height:36px;padding:0 13px;border:1px solid rgba(255,226,151,.62);border-radius:999px;background:rgba(31,51,24,.8);color:#fff0bd;font-size:12px;font-weight:900;text-decoration:none;box-shadow:0 7px 20px rgba(0,0,0,.28);backdrop-filter:blur(8px)}
  .gb-stage{position:absolute;inset:0;isolation:isolate;overflow:hidden;touch-action:none;background:linear-gradient(180deg,#8ec6e8 0,#b5dcf0 21%,#ffedb9 33%,#ffe0a0 38.5%,#7fb069 39%,#6da358 62%,#568a45 100%)}
  .gb-stage::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 78% 11%,rgba(255,246,200,.95) 0 5.5%,rgba(255,233,168,.42) 12%,transparent 30%),radial-gradient(ellipse 54% 12% at 22% 17%,rgba(255,255,255,.8),transparent 70%),radial-gradient(ellipse 42% 9% at 60% 25%,rgba(255,255,255,.55),transparent 70%),radial-gradient(ellipse 90% 30% at 50% 108%,rgba(43,74,33,.5),transparent 60%)}
  .gb-stage::after{content:"";position:absolute;left:0;right:0;top:36.5%;height:46px;z-index:1;pointer-events:none;opacity:.92;background:repeating-linear-gradient(90deg,rgba(150,110,68,.95) 0 15px,rgba(122,88,52,.95) 15px 17px,transparent 17px 76px),linear-gradient(180deg,transparent 7px,rgba(164,124,76,.95) 7px 14px,transparent 14px 30px,rgba(164,124,76,.95) 30px 37px,transparent 37px)}
  .gb-top{position:fixed;z-index:12;left:68px;right:64px;top:10px;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:center;pointer-events:none}
  .gb-identity,.gb-hud{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,232,160,.46);border-radius:18px;background:linear-gradient(135deg,rgba(35,58,26,.9),rgba(74,52,26,.84));box-shadow:0 10px 28px rgba(0,0,0,.26);backdrop-filter:blur(9px)}
  .gb-identity{width:max-content;max-width:100%;padding:7px 13px 7px 9px}
  .gb-portrait{flex:none;font-size:50px}
  .gb-identity-copy{min-width:0}.gb-kicker{color:#ffd98a;font-size:8px;font-weight:1000;letter-spacing:.16em;text-transform:uppercase}.gb-name{overflow:hidden;color:#fff4c8;font:900 17px/1.1 var(--serif);text-overflow:ellipsis;white-space:nowrap}.gb-rank{margin-top:2px;color:#cfe6bd;font-size:9px;font-weight:800}
  .gb-hud{justify-self:end;padding:8px}
  .gb-stat{min-width:62px;padding:4px 8px;border-left:1px solid rgba(255,255,255,.1);text-align:center}.gb-stat:first-child{border-left:0}.gb-stat b{display:block;color:#ffecb3;font:950 18px/1 var(--serif)}.gb-stat small{display:block;margin-top:3px;color:#c4dcb2;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
  .gb-phase{position:fixed;z-index:9;left:50%;top:84px;transform:translateX(-50%);padding:7px 12px;border:1px solid rgba(255,231,158,.5);border-radius:999px;background:rgba(52,48,22,.74);color:#fff2c2;font-size:9px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 8px 22px rgba(0,0,0,.22);backdrop-filter:blur(7px);pointer-events:none}
  .gb-objective{position:fixed;z-index:9;right:15px;top:87px;width:min(260px,38vw);padding:9px 11px;border:1px solid rgba(206,236,172,.38);border-radius:13px;background:rgba(32,58,26,.74);color:#e6f4d6;font-size:9px;line-height:1.35;box-shadow:0 8px 22px rgba(0,0,0,.2);backdrop-filter:blur(7px);pointer-events:none}
  .gb-parade{position:fixed;z-index:12;left:14px;bottom:16px;width:196px;padding:9px 11px;border:1px solid rgba(255,227,143,.4);border-radius:14px;background:rgba(31,51,25,.78);box-shadow:0 10px 26px rgba(0,0,0,.26);backdrop-filter:blur(8px);pointer-events:none}
  .gb-parade-head{display:flex;justify-content:space-between;margin-bottom:5px;color:#ffe9ad;font-size:8.5px;font-weight:1000;letter-spacing:.09em;text-transform:uppercase}
  .gb-parade-track{height:9px;overflow:hidden;border-radius:999px;background:rgba(8,18,8,.5)}
  .gb-parade-fill{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffd76a,#ffb1c8,#b7e3ff);transition:width .16s}
  .gb-parade.on{border-color:rgba(255,234,154,.9);box-shadow:0 0 24px rgba(255,215,106,.5)}
  .gb-critter{position:absolute;z-index:6;width:1em;height:1em;font-size:clamp(64px,14vmin,110px);transform:translate(-50%,-50%);pointer-events:none;will-change:left,top}
  .gb-gubbin{position:relative;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 10px 8px rgba(30,48,20,.4));-webkit-tap-highlight-color:transparent}
  .gb-critter .gb-gubbin{font-size:inherit}
  .gb-gubbin:focus-visible{outline:3px solid #ffe9a8;outline-offset:2px;border-radius:50%}
  .gb-glyph{font-size:1em;will-change:transform}
  .gb-rose .gb-glyph{filter:hue-rotate(-52deg) saturate(1.4) brightness(1.04)}
  .gb-cream .gb-glyph{filter:brightness(1.24) saturate(.55)}
  .gb-honey .gb-glyph{filter:hue-rotate(12deg) saturate(1.65) brightness(1.12)}
  .gb-sky .gb-glyph{filter:hue-rotate(178deg) saturate(1.1) brightness(1.05)}
  .gb-plum .gb-glyph{filter:hue-rotate(248deg) saturate(1.12) brightness(.97)}
  .gb-critter.hop .gb-gubbin{animation:gb-hop .34s ease-in-out infinite alternate}
  .gb-gubbin.boop{animation:gb-boop .34s cubic-bezier(.2,.8,.3,1)}
  .gb-critter.munch .gb-gubbin{animation:gb-munch .5s ease-in-out}
  .gb-wish{position:absolute;left:50%;top:-.3em;transform:translateX(-50%) scale(0);display:grid;place-items:center;width:1.5em;height:1.5em;border-radius:50%;border:2px solid rgba(214,164,74,.85);background:rgba(255,252,240,.96);font-size:.38em;box-shadow:0 6px 14px rgba(43,60,28,.3);transition:transform .18s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
  .gb-critter.wishing .gb-wish{transform:translateX(-50%) scale(1);animation:gb-wish 1.1s ease-in-out infinite alternate}
  .gb-zoomie{position:absolute;z-index:9;width:1em;height:1em;font-size:clamp(56px,12vmin,94px);transform:translate(-50%,-50%);border-radius:50%;will-change:left,top;animation:gb-zoomie-glow .5s ease-in-out infinite alternate}
  .gb-zoomie .gb-glyph{filter:hue-rotate(8deg) saturate(2) brightness(1.3)}
  .gb-pop{position:absolute;z-index:11;transform:translate(-50%,-50%);color:#fff1a8;font:1000 21px var(--serif);text-shadow:0 3px 6px #27401c;pointer-events:none;animation:gb-pop .72s ease-out forwards}
  .gb-particle{position:absolute;z-index:10;width:8px;height:8px;border-radius:50%;background:var(--spark,#ffe27a);box-shadow:0 0 7px var(--spark,#ffe27a);pointer-events:none;animation:gb-spark .62s ease-out forwards}
  .gb-heart{position:absolute;z-index:10;font-style:normal;font-size:22px;text-shadow:0 2px 5px rgba(43,60,28,.4);pointer-events:none;animation:gb-heart .9s ease-out forwards}
  .gb-coach{position:fixed;z-index:13;left:50%;bottom:92px;max-width:min(520px,82vw);transform:translateX(-50%) translateY(8px);padding:8px 12px;border:1px solid rgba(255,229,152,.5);border-radius:999px;background:rgba(30,50,23,.9);color:#fff4c4;font-size:10px;font-weight:900;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.3);opacity:0;transition:opacity .18s,transform .18s;pointer-events:none}.gb-coach.on{opacity:1;transform:translateX(-50%) translateY(0)}
  .gb-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .gb-intro,.gb-finish{position:fixed;z-index:18;left:50%;top:50%;width:min(560px,calc(100vw - 28px));transform:translate(-50%,-50%);padding:23px;border:1px solid rgba(255,229,146,.64);border-radius:24px;background:radial-gradient(circle at 86% 4%,rgba(255,214,110,.2),transparent 33%),linear-gradient(145deg,rgba(36,62,28,.96),rgba(74,52,26,.96));box-shadow:0 26px 80px rgba(0,0,0,.46);backdrop-filter:blur(13px);text-align:center}.gb-intro h1,.gb-finish h2{margin:4px 0 7px;color:#fff4c4;font:950 clamp(30px,6vw,48px)/.98 var(--serif)}.gb-intro p,.gb-finish p{max-width:470px;margin:0 auto;color:#dceccd;font-size:12px;line-height:1.55}.gb-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 0}.gb-rule{padding:10px 8px;border:1px solid rgba(216,236,182,.22);border-radius:13px;background:rgba(14,28,12,.42)}.gb-rule b{display:block;color:#ffe8a9;font-size:11px}.gb-rule small{display:block;margin-top:4px;color:#bcd6a8;font-size:9px;line-height:1.35}.gb-start{min-width:210px;min-height:48px}.gb-trial{margin-top:9px;color:#f5d98c;font-size:9px;font-weight:900}.gb-finish-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.gb-finish-stat{padding:11px 8px;border:1px solid rgba(255,226,140,.26);border-radius:13px;background:rgba(14,28,13,.48)}.gb-finish-stat b{display:block;color:#ffecb0;font:950 23px var(--serif)}.gb-finish-stat small{color:#bcd6ac;font-size:8px;font-weight:900;text-transform:uppercase}.gb-finish-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
  @keyframes gb-hop{from{transform:translateY(0) scale(1,1)}to{transform:translateY(-13%) scale(.95,1.07)}}
  @keyframes gb-boop{0%{transform:scale(1,1)}40%{transform:scale(1.18,.82)}100%{transform:scale(1,1)}}
  @keyframes gb-munch{0%,100%{transform:rotate(0) scale(1)}25%{transform:rotate(-7deg) scale(1.06)}55%{transform:rotate(6deg) scale(1.03)}80%{transform:rotate(-3deg) scale(1.05)}}
  @keyframes gb-wish{from{transform:translateX(-50%) translateY(0) scale(1)}to{transform:translateX(-50%) translateY(-9%) scale(1.06)}}
  @keyframes gb-zoomie-glow{from{box-shadow:0 0 0 3px rgba(255,224,120,.45),0 0 18px 5px rgba(255,214,90,.5)}to{box-shadow:0 0 0 6px rgba(255,228,130,.75),0 0 34px 12px rgba(255,216,96,.8)}}
  @keyframes gb-pop{to{transform:translate(-50%,-105%);opacity:0}}
  @keyframes gb-spark{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
  @keyframes gb-heart{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}25%{opacity:1}100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.15);opacity:0}}
  @media(max-width:760px){.gb-top{left:58px;right:8px;grid-template-columns:minmax(0,1fr) auto}.gb-identity{padding:5px 8px}.gb-portrait{font-size:38px}.gb-name{font-size:14px}.gb-rank{font-size:8px}.gb-hud{gap:0;padding:6px}.gb-stat{min-width:48px;padding:3px 5px}.gb-stat b{font-size:15px}.gb-stat small{font-size:6.5px}.gb-phase{top:68px}.gb-objective{display:none}.gb-parade{left:8px;bottom:12px;width:150px}.gb-coach{bottom:66px}.gb-rules{grid-template-columns:1fr;gap:6px}.gb-rule{padding:7px}.gb-intro,.gb-finish{padding:18px}.gb-intro h1,.gb-finish h2{font-size:31px}.gb-intro p,.gb-finish p{font-size:10.5px}}
  @media(max-height:610px){.gb-phase{display:none}.gb-coach{bottom:60px}.gb-intro,.gb-finish{padding:14px}.gb-rules{margin:10px 0}.gb-rule{padding:6px}.gb-rule small{display:none}}
  @media(prefers-reduced-motion:reduce){.gb-critter.hop .gb-gubbin,.gb-gubbin.boop,.gb-critter.munch .gb-gubbin,.gb-critter.wishing .gb-wish,.gb-zoomie,.gb-pop,.gb-particle,.gb-heart{animation:none}.gb-coach,.gb-parade-fill{transition:none}}
  /* ARENA_SLICE_END 17-titan-sports-playgarden */
  /* ARENA_SLICE_START 18-iphone-safari -- spliced from arena-css/18-iphone-safari.css; edit that file, not this region */
  /* iPhone / mobile Safari — the rules that belong to no single venue.

     Everything here is cross-cutting: it applies to the Plaza, every room and
     every game, so filing it under a venue slice would scatter it and put it
     back in the path of the false sharing the split was meant to end.

     This slice is LAST, so a plain selector here wins on equal specificity.
     That is the point for the overrides below — but it makes a global BASELINE
     dangerous, because a baseline that wins is a baseline nobody can escape.
     So every baseline is written with :where(), whose arguments contribute
     nothing to specificity: `:where(button){touch-action:manipulation}` is
     (0,0,0), and .pag-control{touch-action:none} still beats it from slice 13.
     Baselines here are floors, not ceilings. */

  /* WebKit still reflows text at a larger size when a phone rotates unless it
     is told not to, which silently breaks any layout measured in ch or em. */
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}

  @media (pointer:coarse){
    /* Mobile Safari ZOOMS THE WHOLE PAGE IN when a text field smaller than
       16px takes focus, and does not zoom back out when it blurs. One tap on
       a chat bar therefore leaves the world scaled up and horizontally
       scrollable for the rest of the session — the single most common way a
       phone player ends up somewhere they cannot navigate out of.

       Raising the field is the fix that keeps pinch-zoom: the alternative,
       maximum-scale=1 on the viewport, cures the zoom by taking zooming away
       from everyone, including players who need it to read. Touch pointers
       only, so desktop density is untouched. */
    :where(input,textarea,select){font-size:16px}
    /* …and the fields that carry a smaller size of their own, which the
       :where() floor above cannot reach. The two that set it inline
       (#fbBody and the referral link) are fixed at their source in arena.html,
       because an inline style outranks any stylesheet rule. */
    .plazachat input,.emailcard input,.door-reveal-name input,
    .apublishrow input,.teacher-course,.nflf-search,.nflf-team-filter{font-size:16px}

    /* A long press on a control must not raise the iOS callout — the
       copy / share / "Save Image" sheet — or leave the grey tap flash behind.
       Holding IS the verb in several contests: Aegis holds to fire, Bastion
       holds to aim, Karaoke holds to sing, and the Tar Pits drag a column up.
       Text stays selectable: only controls and canvases are covered. */
    :where(button,.btn,a,canvas,[role=button]){-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}
    :where(button,.btn,canvas,[role=button]){-webkit-user-select:none;user-select:none}
    /* Controls respond on the first tap instead of waiting out the
       double-tap-to-zoom window. Anything that needs to own the gesture
       outright (a drag, a joystick) sets touch-action:none in its own slice
       and still wins. */
    :where(button,.btn,a,[role=button]){touch-action:manipulation}
  }

  /* A rotated phone is WIDE (844px) but only ~390px tall, so the Plaza's phone
     media query -- max-width:600px, or 1100px in portrait -- does not match it,
     and the Nightly Agon strip keeps its desktop centring: left:50% with a
     translateX(-50%). Centred on a short landscape viewport it lands exactly on
     "Create your character and play", the one CTA a new soul has to reach.
     Measured covered in 6 of 8 samples; the 2 clean ones were sampled before
     the strip had loaded.

     The header is right-aligned in plazamode, so the top-left is free: the
     strip moves there and is bounded so it cannot grow back under the CTA. */
  @media (pointer:coarse) and (orientation:landscape) and (max-height:520px){
    .agonstrip{top:calc(9px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));transform:none;max-width:42vw;padding:6px 11px;font-size:12px}
  }
  /* ARENA_SLICE_END 18-iphone-safari */
