:root{--primary:#00f5ff;--secondary:#9b5cff;--gold:#ffd166;--bg:#050716;--panel:rgba(11,18,43,.72);--text:#eef7ff;--muted:#9fb4c7;--danger:#ff4d6d;--success:#6dff9d;--line:rgba(255,255,255,.12)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 10% 10%,rgba(0,245,255,.18),transparent 28%),radial-gradient(circle at 80% 0,rgba(155,92,255,.2),transparent 30%),linear-gradient(145deg,#02030a,#0a1026 55%,#050716);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Arial,sans-serif;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at center,black,transparent 80%);pointer-events:none}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.shell{width:min(1280px,94vw);margin:0 auto}.top-banner{position:relative;z-index:2;text-align:center;padding:10px 16px;background:linear-gradient(90deg,rgba(0,245,255,.18),rgba(155,92,255,.16),rgba(255,209,102,.12));border-bottom:1px solid var(--line);letter-spacing:.02em}.site-header{position:relative;z-index:2;padding:18px 0;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-weight:900;font-size:clamp(1.25rem,3vw,2rem);letter-spacing:.04em;text-shadow:0 0 18px rgba(0,245,255,.55)}.brand small{display:block;font-weight:500;color:var(--muted);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}.nav-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.btn,button{border:1px solid rgba(0,245,255,.32);background:rgba(255,255,255,.06);color:var(--text);border-radius:999px;padding:10px 15px;cursor:pointer;font-weight:800;transition:.18s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover,button:hover{transform:translateY(-1px);box-shadow:0 0 18px rgba(0,245,255,.25);text-decoration:none}.btn.primary,button.primary{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#050716;border:0}.btn.gold{background:linear-gradient(135deg,var(--gold),#ff8c42);color:#140d00;border:0}.btn.danger{background:rgba(255,77,109,.15);border-color:rgba(255,77,109,.45)}.adbar{margin:16px auto;padding:13px 18px;background:rgba(255,255,255,.055)}.layout{display:grid;grid-template-columns:1fr 310px;gap:22px;padding:22px 0}.panel{border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:20px;box-shadow:0 20px 60px rgba(0,0,0,.28);backdrop-filter:blur(18px);position:relative}.panel:after{content:"";position:absolute;inset:0;border-radius:24px;pointer-events:none;box-shadow:inset 0 0 38px rgba(0,245,255,.06)}.hero{min-height:480px;display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center}.hero h1{font-size:clamp(2.2rem,6vw,5.4rem);line-height:.92;margin:0 0 18px;text-shadow:0 0 28px rgba(0,245,255,.35)}.hero p{font-size:1.1rem;color:var(--muted);max-width:720px}.holo-table{min-height:320px;border-radius:28px;border:1px solid rgba(0,245,255,.25);background:radial-gradient(circle,rgba(0,245,255,.12),rgba(155,92,255,.08),transparent 62%);display:grid;place-items:center;overflow:hidden;position:relative}.holo-table:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;border:2px solid rgba(0,245,255,.22);animation:spin 16s linear infinite}.holo-table:after{content:"BONEYARD BEYOND";position:absolute;bottom:24px;color:rgba(255,255,255,.35);letter-spacing:.28em;font-size:.7rem}.floating-bones{position:absolute;inset:0;pointer-events:none}.glyph{position:absolute;color:rgba(0,245,255,.28);font-weight:900;animation:float 5s ease-in-out infinite}.g1{left:10%;top:18%;animation-delay:0s}.g2{right:14%;top:32%;animation-delay:1s}.g3{left:30%;bottom:18%;animation-delay:1.8s}.g4{right:28%;bottom:15%;animation-delay:.6s}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-16px) scale(1.05);opacity:.8}}.side-stack{display:grid;gap:16px}.ad-box{padding:14px;background:rgba(255,255,255,.05);min-height:90px;overflow:hidden}.muted{color:var(--muted)}.notice{border-radius:16px;padding:13px 15px;margin:12px 0;border:1px solid var(--line);background:rgba(255,255,255,.06)}.notice.success{border-color:rgba(109,255,157,.4);background:rgba(109,255,157,.08)}.notice.danger{border-color:rgba(255,77,109,.5);background:rgba(255,77,109,.1)}.notice.gold{border-color:rgba(255,209,102,.45);background:rgba(255,209,102,.08)}input,select,textarea{width:100%;padding:11px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:var(--text);outline:none}textarea{min-height:110px;resize:vertical}label{display:grid;gap:7px;color:var(--muted);font-weight:700}.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid-form .full{grid-column:1/-1}.auth-card{max-width:620px;margin:30px auto}.legal{line-height:1.7}.legal h2{margin-top:1.8rem}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.tab-panel{display:none}.tab-panel.active{display:block}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--gold);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.game-shell{display:grid;grid-template-columns:1fr 300px;gap:18px}.game-top{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.stat{padding:12px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid var(--line)}.stat b{display:block;font-size:1.4rem;color:var(--gold)}.game-field{min-height:440px;position:relative;border-radius:28px;border:1px solid rgba(0,245,255,.26);background:radial-gradient(circle at center,rgba(0,245,255,.16),rgba(155,92,255,.08) 42%,rgba(0,0,0,.18) 70%),linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.02));overflow:auto;padding:28px}.board-grid{min-width:720px;min-height:360px;display:grid;grid-template-columns:1fr 130px 1fr;grid-template-rows:1fr 110px 1fr;gap:12px;align-items:center;justify-items:center}.path{display:flex;gap:8px;align-items:center;justify-content:center;min-width:120px;min-height:76px;border:1px dashed rgba(255,255,255,.08);border-radius:18px;padding:8px;background:rgba(0,0,0,.08)}.path.left{grid-column:1;grid-row:2;flex-direction:row-reverse}.path.right{grid-column:3;grid-row:2}.path.top{grid-column:2;grid-row:1;flex-direction:column-reverse}.path.bottom{grid-column:2;grid-row:3;flex-direction:column}.center-zone{grid-column:2;grid-row:2;display:grid;place-items:center;min-width:120px;min-height:100px;border-radius:22px;border:1px solid rgba(255,209,102,.25);background:rgba(255,209,102,.05);position:relative}.spinner-badge{position:absolute;top:-14px;right:-14px;background:linear-gradient(135deg,var(--gold),#ff46d7);color:#1a0d00;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:900;box-shadow:0 0 22px rgba(255,209,102,.5);animation:pulse 1.4s infinite}.empty-center{color:var(--muted);text-align:center;font-size:.92rem}.domino{width:74px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.65);background:linear-gradient(135deg,#f8fbff,#bcd7ff);color:#071022;box-shadow:0 8px 22px rgba(0,0,0,.24),0 0 12px rgba(0,245,255,.18);display:grid;grid-template-columns:1fr 1px 1fr;align-items:center;justify-items:center;font-weight:950;flex:0 0 auto}.domino.vertical{width:42px;height:78px;grid-template-columns:1fr;grid-template-rows:1fr 1px 1fr}.domino .bar{background:rgba(0,0,0,.25);align-self:stretch;justify-self:stretch}.domino.vertical .bar{height:1px;width:100%}.domino.selected{outline:3px solid var(--gold);transform:translateY(-4px);box-shadow:0 0 26px rgba(255,209,102,.45)}.domino.playable{box-shadow:0 0 24px rgba(0,245,255,.45),0 8px 22px rgba(0,0,0,.2)}.hand{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.hand .domino{cursor:pointer}.end-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:12px 0}.log{height:140px;overflow:auto;background:rgba(0,0,0,.22);border-radius:18px;border:1px solid var(--line);padding:12px;font-size:.88rem}.score-burst{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);font-size:3rem;font-weight:1000;color:var(--gold);text-shadow:0 0 28px var(--gold);pointer-events:none;animation:burst 1s ease forwards;z-index:10}@keyframes burst{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}100%{opacity:0;transform:translate(-50%,-90%) scale(1)}}@keyframes pulse{50%{transform:scale(1.08)}}.modal{position:fixed;inset:0;display:none;place-items:center;background:rgba(2,3,10,.82);z-index:20;backdrop-filter:blur(16px)}.modal.active{display:grid}.modal-card{max-width:760px;width:min(92vw,760px);border-radius:28px;padding:30px;background:linear-gradient(145deg,rgba(9,16,40,.96),rgba(20,9,44,.96));border:1px solid rgba(0,245,255,.28);box-shadow:0 0 60px rgba(0,245,255,.18)}.modal-card h2{font-size:clamp(2rem,5vw,4rem);margin:0 0 10px;text-shadow:0 0 26px rgba(255,209,102,.38)}.modal-card .whisper{font-size:1.2rem;color:var(--gold);line-height:1.65}.install-wrap{max-width:760px;margin:40px auto}.footer{padding:28px 0;color:var(--muted);border-top:1px solid var(--line);margin-top:30px}.small{font-size:.85rem}.avatar-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.06)}@media(max-width:920px){.layout,.hero,.game-shell{grid-template-columns:1fr}.game-top{grid-template-columns:repeat(2,1fr)}.grid-form,.admin-grid{grid-template-columns:1fr}.side-stack{order:-1}.nav{align-items:flex-start;flex-direction:column}.board-grid{min-width:620px}.game-field{padding:14px}}@media(max-width:560px){.shell{width:96vw}.panel{padding:14px}.game-top{grid-template-columns:1fr}.end-buttons{grid-template-columns:1fr}.domino{width:64px;height:34px}.domino.vertical{width:38px;height:68px}}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.price-card{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:22px;padding:18px;box-shadow:inset 0 0 28px rgba(0,245,255,.04)}.price-card h2{margin:.2rem 0}.price-card h3{color:var(--gold);font-size:1.55rem;margin:.3rem 0 1rem}.ticket-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,209,102,.42);background:rgba(255,209,102,.09);color:var(--gold);border-radius:999px;padding:6px 10px;font-weight:900;margin:4px 6px 4px 0}.feature-player{text-align:center}.feature-player img,.prize-img{max-width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 22px rgba(0,245,255,.14)}.lead-copy{font-size:1.08rem;line-height:1.72}.end-buttons button[data-end="left"]{border-color:rgba(0,245,255,.65)}.end-buttons button[data-end="right"]{border-color:rgba(155,92,255,.65)}.end-buttons button[data-end="top"],.end-buttons button[data-end="bottom"]{border-color:rgba(255,209,102,.72);box-shadow:0 0 18px rgba(255,209,102,.12)}.path:before{position:absolute;font-size:.68rem;letter-spacing:.12em;color:rgba(255,255,255,.26);font-weight:900}.path{position:relative}.path.left:before{content:'LEFT END';top:-18px}.path.right:before{content:'RIGHT END';top:-18px}.path.top:before{content:'TOP SPINNER END';top:-20px}.path.bottom:before{content:'BOTTOM SPINNER END';bottom:-20px}@media(max-width:1000px){.pricing-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.pricing-grid{grid-template-columns:1fr}}

/* v1.2 realistic domino playfield update */
.domino{
  position:relative;
  display:grid;
  grid-template-columns:1fr 2px 1fr;
  align-items:stretch;
  justify-items:stretch;
  padding:4px;
  gap:0;
  font-size:0;
}
.domino.vertical{
  grid-template-columns:1fr;
  grid-template-rows:1fr 2px 1fr;
}
.domino .bar{
  background:rgba(7,16,34,.35);
  border-radius:999px;
  align-self:stretch;
  justify-self:stretch;
}
.domino.vertical .bar{
  width:100%;
  height:2px;
}
.pip-half{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:block;
}
.pip{
  position:absolute;
  width:5.5px;
  height:5.5px;
  border-radius:50%;
  background:#071022;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28);
  display:none;
}
.pip-1{left:18%;top:18%}.pip-2{left:50%;top:18%;transform:translateX(-50%)}.pip-3{right:18%;top:18%}.pip-4{left:50%;top:50%;transform:translate(-50%,-50%)}.pip-5{left:18%;bottom:18%}.pip-6{left:50%;bottom:18%;transform:translateX(-50%)}.pip-7{right:18%;bottom:18%}
.pips-1 .pip-4{display:block}
.pips-2 .pip-1,.pips-2 .pip-7{display:block}
.pips-3 .pip-1,.pips-3 .pip-4,.pips-3 .pip-7{display:block}
.pips-4 .pip-1,.pips-4 .pip-3,.pips-4 .pip-5,.pips-4 .pip-7{display:block}
.pips-5 .pip-1,.pips-5 .pip-3,.pips-5 .pip-4,.pips-5 .pip-5,.pips-5 .pip-7{display:block}
.pips-6 .pip-1,.pips-6 .pip-2,.pips-6 .pip-3,.pips-6 .pip-5,.pips-6 .pip-6,.pips-6 .pip-7{display:block}
.domino.spinner-center{
  outline:2px solid rgba(255,209,102,.78);
  box-shadow:0 0 28px rgba(255,209,102,.38),0 8px 22px rgba(0,0,0,.24);
}
.open-chip{
  position:absolute;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#050716;
  font-weight:1000;
  font-size:.82rem;
  background:linear-gradient(135deg,var(--gold),#fff2b1);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 0 18px rgba(255,209,102,.42);
  z-index:3;
}
.open-chip.left{left:-15px;top:50%;transform:translateY(-50%)}
.open-chip.right{right:-15px;top:50%;transform:translateY(-50%)}
.open-chip.top{top:-15px;left:50%;transform:translateX(-50%)}
.open-chip.bottom{bottom:-15px;left:50%;transform:translateX(-50%)}
.center-zone:before,.center-zone:after{
  content:"";
  position:absolute;
  background:linear-gradient(90deg,transparent,rgba(255,209,102,.45),transparent);
  pointer-events:none;
}
.center-zone:before{width:190px;height:1px;left:50%;top:50%;transform:translate(-50%,-50%)}
.center-zone:after{width:1px;height:160px;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(180deg,transparent,rgba(255,209,102,.35),transparent)}
.spinner-badge{content:'SPINNER'}
.game-field:after{
  content:"Realistic play: match the exact number on the open end. One spinner only opens north/south.";
  position:absolute;
  left:18px;
  bottom:10px;
  color:rgba(255,255,255,.45);
  font-size:.74rem;
  letter-spacing:.04em;
}
