:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#dce9eb;background:#081b22}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.lab-ribbon{background:#08734e;color:#fff;text-align:center;letter-spacing:.16em;font-size:.68rem;font-weight:800;padding:.45rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem max(3vw,20px);background:#07151b;border-bottom:1px solid #244149;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.8rem;min-width:190px}.brand-mark{display:grid;place-items:center;width:45px;height:45px;border:2px solid #18c07c;border-radius:12px;color:#19d884;font-size:1.65rem;font-weight:1000;transform:skew(-7deg)}.brand small{display:block;font-size:.55rem;letter-spacing:.16em;color:#8aa8aa}.brand strong{font-size:1.25rem}.green{color:#23c47f}.topnav{display:flex;align-items:center;gap:.3rem}.nav-item{background:transparent;color:#9db5bb;border:0;border-radius:8px;padding:.7rem .95rem;font-weight:700;font-size:.86rem}.nav-item:hover,.nav-item.active{background:#173a35;color:#37e2a0}.account{display:flex;align-items:center;gap:.8rem;white-space:nowrap;font-size:.8rem}.small-button,.outline{border:1px solid #426066;background:#122a33;color:#d8edf0;border-radius:9px;padding:.62rem .9rem;font-weight:800}.small-button:hover,.outline:hover{border-color:#23c47f}.primary{border:0;background:#08a968;color:#fff;border-radius:9px;padding:.78rem 1.15rem;font-weight:900;box-shadow:0 8px 30px #06a6673b}.primary:hover{background:#08ba72}main{max-width:1620px;margin:auto;padding:2rem max(3vw,20px) 5rem}.hero{min-height:290px;display:grid;grid-template-columns:3fr 1.2fr;align-items:center;overflow:hidden;border:1px solid #286357;border-radius:22px;padding:2.5rem 3rem;background:radial-gradient(circle at 82% 20%,#1c7059 0%,transparent 31%),linear-gradient(135deg,#123b3a,#0a2028 70%);box-shadow:0 20px 70px #0004}.eyebrow{font-size:.7rem;letter-spacing:.19em;font-weight:900;color:#3ddba1}.hero h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1;margin:.6rem 0 1rem;max-width:700px}.hero p:not(.eyebrow){max-width:670px;color:#b5d0d0;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:1.5rem;margin-top:1.5rem}.live-dot{font-size:.78rem;color:#bfe5cf}.live-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#31d58c;margin-right:.5rem;box-shadow:0 0 12px #31d58c}.hero-art{position:relative;display:grid;place-items:center;height:245px}.hero-chip{display:grid;place-items:center;width:180px;height:180px;border:13px dashed #e0bd65;border-radius:50%;background:radial-gradient(circle,#288d69,#084935);font-size:4rem;font-weight:1000;color:#f8efb7;box-shadow:0 24px 35px #0007,0 0 50px #0ad57a80}.hero-chip span{font-size:1.6rem}.card-orbit{position:absolute;background:#fff;color:#0b7651;border-radius:12px;padding:1rem;font-size:2rem;box-shadow:0 15px 25px #0006}.orbit-one{top:8%;left:7%;transform:rotate(-18deg)}.orbit-two{right:4%;bottom:4%;transform:rotate(14deg)}.workspace{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;margin-top:2rem}.sidebar{background:#0c252d;border:1px solid #2b4b51;border-radius:16px;padding:1.25rem;height:fit-content}.side{display:block;width:100%;text-align:left;padding:.8rem .9rem;margin:.25rem 0;border:0;border-radius:8px;color:#bcd3d4;background:transparent;font-weight:750}.side.active,.side:hover{background:#174c42;color:#50e4a7}.aside-note{margin-top:2rem;padding:1rem;border:1px solid #52635d;border-radius:10px;color:#a5bfbd;font-size:.8rem;line-height:1.5}.aside-note b{color:#e7f5ed}.aside-note p{margin:.3rem 0}.catalogue{background:#0c252d;border:1px solid #2b4b51;border-radius:16px;padding:1.5rem;min-height:460px}.catalogue-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.catalogue h2{font-size:1.7rem;margin:.15rem 0}.catalogue-heading p:last-child{color:#a3c0c0;font-size:.88rem;margin:.2rem 0}.search-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1.6rem 0}.search-row input,dialog input{border:1px solid #3b6268;background:#092027;color:#fff;border-radius:9px;padding:.8rem 1rem;outline:none}.search-row input{width:min(420px,100%)}.search-row input:focus,dialog input:focus{border-color:#30d48e}.search-row span{color:#9eb8b9;font-size:.8rem}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1rem}.game-card{background:#13333a;border:1px solid #335d5e;border-radius:13px;overflow:hidden;display:flex;flex-direction:column}.game-card img,.game-fallback{height:140px;width:100%;object-fit:cover;background:radial-gradient(circle,#16775a,#0a292c)}.game-fallback{display:grid;place-items:center;font-size:3rem;color:#6af6aa}.game-card-body{padding:.85rem;display:flex;flex-direction:column;flex:1;gap:.3rem}.game-card strong{font-size:.93rem}.game-card small{color:#8fb1b0}.game-card button{margin-top:auto;align-self:flex-start;border:0;color:#fff;background:#078d5b;border-radius:7px;padding:.48rem .7rem;font-weight:800}.empty{padding:4rem 1rem;color:#91aeb1;text-align:center;grid-column:1/-1;border:1px dashed #396064;border-radius:12px}dialog{border:1px solid #3d6d66;border-radius:18px;background:#0d2930;color:#e8f2f2;max-width:min(440px,calc(100vw - 30px));box-shadow:0 30px 80px #0009;padding:1.5rem}dialog::backdrop{background:#001217c9}dialog h2{margin:.2rem 0 1rem}dialog p{line-height:1.5;color:#a3c3c2}dialog label{display:block;font-size:.8rem;font-weight:800;margin:1.2rem 0 .4rem}dialog input{width:100%}dialog .primary{width:100%}.close{float:right;border:0;background:transparent;color:#c8dede;font-size:1.6rem}#game-dialog{max-width:min(1100px,95vw);width:95vw;height:90vh}.game-dialog-head{display:flex;justify-content:space-between;align-items:center}#game-container{height:calc(100% - 110px);display:grid;place-items:center}#game-container iframe{border:0;width:100%;height:100%;background:#fff}.game-note{font-size:.75rem}.error{color:#ff8c8c;min-height:1rem}#toast{position:fixed;right:1rem;bottom:1rem;z-index:100;background:#123e37;color:#e6fff2;border-radius:9px;padding:.8rem 1rem;display:none;max-width:380px}@media(max-width:850px){.topbar{flex-wrap:wrap}.topnav{order:3;overflow:auto;width:100%}.nav-item{white-space:nowrap}.workspace{grid-template-columns:1fr}.sidebar{display:flex;flex-wrap:wrap;gap:.2rem}.sidebar .eyebrow,.aside-note{display:none}.side{width:auto}.hero{grid-template-columns:1fr;padding:2rem}.hero-art{display:none}.account{margin-left:auto}}@media(max-width:500px){main{padding:1rem 12px}.brand{min-width:0}.brand small{display:none}.topbar{gap:.5rem}.catalogue-heading{align-items:start;flex-direction:column}.hero h1{font-size:2.3rem}}

.provider-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #335d5e}
.provider-section .eyebrow{margin:.2rem .9rem .7rem}
.provider-filters{display:grid;gap:.3rem}
.provider-option{width:100%;padding:.65rem .9rem;text-align:left;color:#bcd3d4;background:transparent;border:0;border-radius:8px;font-weight:700}
.provider-option:hover,.provider-option.active{background:#174c42;color:#50e4a7}
.game-list{display:grid;gap:2rem}
.provider-group h3{font-size:1rem;color:#a9e2ca;margin:0 0 .8rem;padding-bottom:.55rem;border-bottom:1px solid #335d5e}
.game-cover{display:block;width:100%;height:140px;padding:0;margin:0;border:0;border-radius:0;background:#0a292c;overflow:hidden}
.game-cover:hover img{transform:scale(1.04)}
.game-cover img{display:block;transition:transform .2s ease}
.game-cover:focus-visible,.provider-option:focus-visible,.side:focus-visible{outline:3px solid #50e4a7;outline-offset:2px}
.game-card .game-cover{align-self:stretch}
.game-card .game-cover .game-fallback{height:140px}
@media(max-width:850px){
  .provider-section{width:100%;margin-top:.7rem}
  .provider-section .eyebrow{display:block}
  .provider-filters{display:flex;overflow:auto;gap:.4rem}
  .provider-option{width:auto;white-space:nowrap;border:1px solid #335d5e}
}
@media(max-width:500px){
  .topbar{padding:.7rem 12px}
  .topnav{gap:.1rem}
  .nav-item{padding:.5rem .6rem}
  .account{font-size:.72rem}
  .small-button{padding:.45rem .6rem}
  .sidebar{padding:.65rem}
  .side{padding:.55rem .65rem}
  .catalogue{padding:1rem}
  .search-row{align-items:stretch;flex-direction:column;gap:.5rem;margin:1rem 0}
  .search-row input{width:100%}
  .game-grid{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:.7rem}
  #game-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;margin:0;padding:1rem}
  #game-container{height:calc(100% - 115px)}
}
.game-card .game-cover{display:block;align-self:stretch;width:100%;height:140px;padding:0;margin:0;border:0;border-radius:0;background:#0a292c;overflow:hidden}
@media(max-width:850px){
  .workspace{grid-template-columns:minmax(0,1fr)}
  .sidebar,.catalogue,.provider-group,.game-grid{min-width:0}
}
[hidden]{display:none!important}
.access-page{min-height:100dvh;background:radial-gradient(circle at 50% 15%,#17614a 0,#0b2d30 36%,#07171d 75%)}
.access-layout{min-height:100dvh;max-width:500px;margin:auto;padding:clamp(24px,6vh,72px) 18px;display:flex;flex-direction:column;justify-content:center;gap:1.7rem}
.access-brand{display:flex;align-items:center;gap:.8rem;font-size:1.4rem}
.access-card{background:#0d2930;border:1px solid #3d6d66;border-radius:20px;padding:clamp(22px,5vw,38px);box-shadow:0 25px 80px #0007}
.access-card h1{font-size:clamp(1.8rem,6vw,2.6rem);margin:.3rem 0 1rem;line-height:1.1}
.access-card>p:not(.eyebrow){color:#abc8c7;line-height:1.6}
.access-card form{display:grid;gap:.8rem;margin-top:1.4rem}
.access-card label{font-size:.85rem;font-weight:800}
.access-card input{width:100%;border:1px solid #3b6268;background:#092027;color:#fff;border-radius:9px;padding:.85rem 1rem;outline:none}
.access-card input:focus{border-color:#30d48e}
.access-card button{width:100%;margin-top:.4rem}
.access-message{color:#96ecc1;min-height:1.4rem;line-height:1.5}
.access-hint{color:#a3c3c2;font-size:.8rem;margin:0}
