
:root{--bg:#022c22;--surface:#034435;--text:#eaedf3;--heading:#f8fafc;--muted:#a3adbe;--primary:#22c55e;--on-primary:#000000;--accent:#92400e;--border:rgba(255,255,255,0.12);}
*{box-sizing:border-box;}
body{background:var(--bg);color:var(--text);font-family:'Segoe UI',system-ui,sans-serif;margin:0;padding:0;}
h1,h2,h3,h4,h5,h6{color:var(--heading);}
a{color:var(--primary);text-decoration:none;}
a:hover{color:var(--primary);opacity:.85;}

/* Navbar */
.navbar{background:var(--surface);border-bottom:1px solid var(--border);}
.navbar-brand img{height:40px;}
.navbar-toggler{border-color:var(--border);}
.navbar-toggler-icon{filter:invert(1);}
.nav-link{color:var(--text) !important;font-size:.93rem;padding:.5rem .8rem !important;}
.nav-link:hover,.nav-link.active{color:var(--primary) !important;}

/* Buttons */
.btn-primary-custom{background:var(--primary);color:var(--on-primary);font-weight:700;border:none;border-radius:8px;padding:.65rem 1.7rem;font-size:1rem;transition:transform .2s,box-shadow .2s;display:inline-block;}
.btn-primary-custom:hover{transform:translateY(-2px);box-shadow:0 0 18px rgba(34,197,94,.45);color:var(--on-primary);}
.btn-outline-custom{background:transparent;color:var(--primary);font-weight:700;border:2px solid var(--primary);border-radius:8px;padding:.6rem 1.5rem;font-size:1rem;transition:.2s;display:inline-block;}
.btn-outline-custom:hover{background:var(--primary);color:var(--on-primary);}

/* Breadcrumb */
.breadcrumb-wrap{background:var(--surface);border-bottom:1px solid var(--border);padding:.75rem 0;}
.breadcrumb{margin:0;background:none;padding:0;}
.breadcrumb-item a{color:var(--primary);font-size:.88rem;}
.breadcrumb-item.active{color:var(--muted);font-size:.88rem;}
.breadcrumb-item+.breadcrumb-item::before{color:var(--muted);}

/* Hero */
.hero{background:linear-gradient(135deg,var(--bg) 0%,var(--surface) 60%,var(--bg) 100%);padding:84px 0 68px;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 45%,rgba(34,197,94,.1) 0%,transparent 62%);}
.hero h1{font-size:clamp(1.85rem,3.5vw,2.8rem);font-weight:800;line-height:1.22;}
.hero .lead{color:var(--muted);font-size:1.05rem;max-width:560px;}

/* Live indicator */
.live-badge{display:inline-flex;align-items:center;gap:.45rem;background:rgba(220,38,38,.14);border:1px solid rgba(220,38,38,.35);border-radius:20px;padding:.3rem .9rem;font-size:.82rem;font-weight:700;color:#fca5a5;margin-bottom:1.1rem;}
.live-dot{width:8px;height:8px;background:#dc2626;border-radius:50%;animation:pulseDot 1.1s infinite;}
@keyframes pulseDot{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.2;transform:scale(.7);}}

/* Sections */
section{padding:64px 0;}
.section-alt{background:var(--surface);}
.section-title{font-size:1.75rem;font-weight:700;color:var(--heading);margin-bottom:.4rem;}
.section-sub{color:var(--muted);margin-bottom:2rem;font-size:.97rem;}

/* Content image */
.content-img{border-radius:14px;border:1px solid var(--border);width:100%;height:auto;display:block;}

/* Stats */
.stat-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.15rem 1rem;text-align:center;}
.stat-box .num{font-size:2rem;font-weight:800;color:var(--primary);display:block;line-height:1;text-shadow:0 0 14px rgba(34,197,94,.35);}
.stat-box .lbl{color:var(--muted);font-size:.78rem;margin-top:.25rem;}

/* Game category cards */
.game-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:0;height:100%;overflow:hidden;position:relative;transition:transform .22s,box-shadow .22s;}
.game-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px rgba(34,197,94,.2);}
.game-card.featured{border-color:var(--primary);}
.game-card-header{padding:1.6rem 1.4rem 1rem;background:var(--bg);}
.game-card-body{padding:.8rem 1.4rem 1.4rem;}
.game-icon{font-size:2.8rem;color:var(--primary);display:block;margin-bottom:.7rem;}
.game-card h5{color:var(--heading);font-weight:700;margin-bottom:.35rem;}
.game-card p{color:var(--muted);font-size:.85rem;line-height:1.65;margin:0;}
.game-badge{position:absolute;top:12px;right:12px;background:var(--primary);color:var(--on-primary);font-size:.68rem;font-weight:800;padding:3px 9px;border-radius:20px;text-transform:uppercase;}
.game-badge.accent{background:var(--accent);color:var(--heading);}
.game-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem;}
.meta-chip{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:.18rem .65rem;font-size:.72rem;color:var(--muted);}
.meta-chip b{color:var(--primary);}

/* Live table tracker */
.table-tracker{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.tracker-header{background:var(--bg);padding:.6rem 1.1rem;display:flex;align-items:center;gap:.5rem;border-bottom:1px solid var(--border);}
.tracker-header span{color:var(--muted);font-size:.8rem;}
.tracker-row{padding:.85rem 1.1rem;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:.7rem;transition:background .18s;}
.tracker-row:last-child{border-bottom:none;}
.tracker-row:hover{background:var(--bg);}
.trow-name{color:var(--heading);font-size:.88rem;font-weight:600;}
.trow-dealer{color:var(--muted);font-size:.75rem;}
.trow-players{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.22rem .55rem;font-size:.75rem;color:var(--text);white-space:nowrap;}
.trow-limit{color:var(--muted);font-size:.75rem;white-space:nowrap;}
.trow-status{border-radius:20px;padding:.2rem .65rem;font-size:.72rem;font-weight:700;white-space:nowrap;}
.status-open{background:rgba(34,197,94,.15);color:var(--primary);border:1px solid rgba(34,197,94,.3);}
.status-full{background:rgba(220,38,38,.13);color:#fca5a5;border:1px solid rgba(220,38,38,.28);}

/* Provider logos (text-based) */
.prov-strip{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;}
.prov-pill{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.5rem 1.1rem;color:var(--heading);font-size:.82rem;font-weight:700;transition:.18s;}
.prov-pill:hover{border-color:var(--primary);color:var(--primary);}

/* Feature rows */
.feat-row{display:flex;gap:1rem;align-items:flex-start;padding:1rem 0;border-bottom:1px solid var(--border);}
.feat-row:last-child{border-bottom:none;padding-bottom:0;}
.feat-icon-wrap{width:46px;height:46px;border-radius:10px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.feat-icon-wrap i{font-size:1.4rem;color:var(--primary);}
.feat-title{color:var(--heading);font-weight:700;font-size:.93rem;margin-bottom:.2rem;}
.feat-desc{color:var(--muted);font-size:.85rem;margin:0;line-height:1.6;}

/* Steps */
.step-row{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.4rem;}
.step-num{width:42px;height:42px;border-radius:50%;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.step-row h6{color:var(--heading);font-weight:700;margin-bottom:.2rem;}
.step-row p{color:var(--muted);font-size:.86rem;margin:0;}

/* Baccarat road mini */
.bac-road{display:grid;grid-template-columns:repeat(10,28px);grid-template-rows:repeat(5,28px);gap:3px;}
.bac-cell{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;}
.bac-b{border-color:rgba(34,197,94,.7);color:var(--primary);}
.bac-p{border-color:rgba(255,255,255,.25);color:var(--muted);}
.bac-t{border-color:rgba(146,64,14,.8);color:var(--accent);}
.bac-empty{opacity:0;}

/* Tips */
.tip-strip{background:var(--surface);border-left:4px solid var(--primary);border-radius:0 10px 10px 0;padding:1rem 1.2rem;margin-bottom:.85rem;}
.tip-strip h6{color:var(--heading);font-weight:700;margin-bottom:.2rem;}
.tip-strip p{color:var(--muted);font-size:.86rem;margin:0;}

/* Pay pills */
.pay-pill{background:var(--surface);border:1px solid var(--border);border-radius:30px;padding:.4rem 1rem;color:var(--text);font-size:.83rem;display:inline-flex;align-items:center;gap:.45rem;margin:.25rem;}
.pay-pill i{color:var(--primary);}

/* Odds / payout table */
.odds-table th{background:var(--surface);color:var(--heading);border:1px solid var(--border);font-size:.85rem;}
.odds-table td{background:var(--bg);color:var(--text);border:1px solid var(--border);font-size:.84rem;vertical-align:middle;}
.odds-table .val{color:var(--primary);font-weight:700;}
.odds-table .house{color:var(--muted);}

/* FAQ */
.accordion-item{background:var(--surface);border:1px solid var(--border);border-radius:10px !important;margin-bottom:.7rem;overflow:hidden;}
.accordion-button{background:var(--surface);color:var(--heading);font-weight:600;box-shadow:none;}
.accordion-button:not(.collapsed){background:var(--bg);color:var(--primary);box-shadow:none;}
.accordion-button::after{filter:invert(1);}
.accordion-body{background:var(--bg);color:var(--text);font-size:.92rem;line-height:1.75;}

/* Tabs (game nav) */
.game-nav-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.8rem;}
.gnav-tab{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:.38rem 1.05rem;font-size:.84rem;color:var(--muted);cursor:default;transition:.18s;}
.gnav-tab.active,.gnav-tab:hover{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:700;}

/* Footer */
footer{background:var(--surface);border-top:1px solid var(--border);padding:48px 0 24px;}
.footer-links a{color:var(--muted);font-size:.88rem;margin-right:1.2rem;display:inline-block;margin-bottom:.5rem;}
.footer-links a:hover{color:var(--primary);}
.footer-bottom{color:var(--muted);font-size:.82rem;border-top:1px solid var(--border);padding-top:1rem;margin-top:1.5rem;}
