/* Dragonia Casino FR - Site 10 | prefix: lum | font: Lexend */
/* Mobile-first responsive: 320 -> 768 -> 1024 -> 1440 */

/* === RESET & BASE === */
.lum-wrapper{max-width:1170px;margin:0 auto;padding:0 20px}
a{color:var(--lum-accent);text-decoration:none;transition:color .2s}
a:hover{color:var(--lum-accent-h)}
img{max-width:100%;height:auto;display:block}

/* === PROMO STRIP === */
.lum-strip{display:flex;align-items:center;justify-content:center;gap:14px;padding:9px 16px;background:var(--lum-primary);color:#fff;font-size:13px;text-align:center;flex-wrap:wrap}
.lum-strip-cta{background:#fff;color:var(--lum-primary);padding:4px 14px;border-radius:6px;font-weight:600;font-size:12px;white-space:nowrap}
.lum-strip-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}

/* === HEADER === */
.lum-topbar{position:sticky;top:0;z-index:100;background:var(--lum-bg);border-bottom:1px solid var(--lum-card-b);padding:12px 0}
.lum-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.lum-mark img{height:40px;width:auto;object-fit:contain}
.lum-nav{display:none;gap:26px}
.lum-nav a{color:var(--lum-txt);font-weight:600;font-size:14px;padding:7px 0;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
.lum-nav a:hover,.lum-nav a[aria-current="page"]{color:var(--lum-accent);border-color:var(--lum-accent)}
.lum-cta-header{display:none;background:var(--lum-cta);color:var(--lum-cta-txt);padding:8px 20px;border-radius:6px;font-weight:700;font-size:13px;white-space:nowrap;transition:background .2s,transform .2s}
.lum-cta-header:hover{background:var(--lum-primary-h);color:#fff;transform:scale(1.03)}
.lum-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}
.lum-toggle span{display:block;width:24px;height:2px;background:var(--lum-txt);border-radius:2px;transition:transform .3s,opacity .3s}
.lum-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.lum-toggle.active span:nth-child(2){opacity:0}
.lum-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Mobile nav */
.lum-nav.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--lum-bg);padding:20px;border-bottom:1px solid var(--lum-card-b);z-index:99}

/* === HERO === */
.lum-hero{padding:42px 0 34px;background:linear-gradient(145deg,var(--lum-bg) 0%,var(--lum-bg2) 100%)}
.lum-hero-flex{display:flex;flex-direction:column;gap:26px}
.lum-hero-body h1{font-size:27px;font-weight:800;line-height:1.22;margin-bottom:16px;color:var(--lum-txt)}
.lum-hero-body p{color:var(--lum-txt2);margin-bottom:20px}
.lum-hero-media img{border-radius:8px;width:100%;box-shadow:0 3px 14px rgba(0,0,0,0.35)}
.lum-action{display:inline-block;background:var(--lum-cta);color:var(--lum-cta-txt);padding:12px 26px;border-radius:6px;font-weight:700;font-size:15px;transition:background .2s,transform .2s}
.lum-action:hover{background:var(--lum-primary-h);color:#fff;transform:scale(1.03)}

/* === TOC === */
.lum-toc{padding:20px 0;background:var(--lum-surface);border-top:1px solid var(--lum-card-b);border-bottom:1px solid var(--lum-card-b)}
.lum-toc strong{display:block;margin-bottom:12px;color:var(--lum-accent);font-size:17px}
.lum-toc ol{padding-left:20px;columns:1;gap:8px}
.lum-toc li{margin-bottom:6px}
.lum-toc a{color:var(--lum-txt2);font-size:14px}
.lum-toc a:hover{color:var(--lum-accent)}

/* === SECTIONS === */
.lum-area-sport,.lum-area-how,.lum-area-games,.lum-area-register,.lum-area-wallet,.lum-area-play,.lum-area-promo,.lum-area-win,.lum-area-faq,.lum-area-author{padding:50px 0}
.lum-area-how,.lum-area-wallet,.lum-area-win{background:var(--lum-bg2)}
h2{font-size:23px;font-weight:700;margin-bottom:16px;color:var(--lum-txt);line-height:1.3}
h3{font-size:19px;font-weight:600;margin:32px 0 12px;color:var(--lum-accent);line-height:1.3}
p{margin-bottom:16px;color:var(--lum-txt2);line-height:1.7}

/* === PAIR LAYOUT === */
.lum-pair{display:flex;flex-direction:column;gap:26px}
.lum-pair-media img{border-radius:8px;width:100%;box-shadow:0 3px 14px rgba(0,0,0,0.35)}

/* === SPORT LIST === */
.lum-sport-list{display:flex;flex-wrap:wrap;gap:14px;margin:20px 0}
.lum-sport-entry{display:flex;align-items:center;gap:10px;background:var(--lum-surface);padding:10px 16px;border-radius:8px;border:1px solid var(--lum-card-b);transition:background .2s}
.lum-sport-entry:hover{background:var(--lum-surface-h)}
.lum-sport-symbol{color:var(--lum-accent);display:flex;align-items:center}
.lum-sport-entry span:last-child{font-size:13px;font-weight:500;color:var(--lum-txt)}

/* === STEPS === */
.lum-steps{display:flex;flex-direction:column;gap:14px;margin:20px 0}
.lum-step-item{display:flex;gap:14px;align-items:flex-start;background:var(--lum-card);padding:16px;border-radius:8px;border:1px solid var(--lum-card-b)}
.lum-step-marker{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;background:var(--lum-primary);color:#fff;border-radius:6px;font-weight:800;font-size:15px;flex-shrink:0}
.lum-step-content strong{display:block;margin-bottom:6px;color:var(--lum-txt);font-size:15px}
.lum-step-content p{margin:0;font-size:14px;color:var(--lum-txt2)}

/* === POINTS LIST === */
.lum-points{padding-left:20px;margin:16px 0}
.lum-points li{margin-bottom:8px;color:var(--lum-txt2);font-size:14px}
.lum-points li::marker{color:var(--lum-accent)}

/* === TILE GRID === */
.lum-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:20px 0}
.lum-tile{background:var(--lum-card);border-radius:8px;overflow:hidden;border:none;transition:transform .2s,box-shadow .2s}
.lum-tile:hover{transform:scale(1.03);box-shadow:0 4px 20px rgba(0,0,0,0.45)}
.lum-tile img{width:100%;height:180px;object-fit:cover;display:block}
.lum-tile-caption{display:block;padding:10px 12px;font-size:13px;font-weight:600;color:var(--lum-txt);text-align:center}

/* CTA spacing */
section a.lum-action:not(:first-child){margin-top:28px}
.lum-tiles + a.lum-action,.lum-tiles-bonus + a.lum-action{margin-top:28px}

/* === PAYMENT ICONS === */
.lum-pay-icons{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0;align-items:center}
.lum-pay-icons img{border:none;height:36px;max-width:80px;background:#fff;padding:4px 8px;border-radius:6px;object-fit:contain}

/* === TABLES === */
.lum-table-container{overflow-x:auto;margin:16px 0}
.lum-table{width:100%;border-collapse:collapse;font-size:13px}
.lum-table th{background:var(--lum-surface);color:var(--lum-accent);padding:10px 12px;text-align:left;font-weight:600;white-space:nowrap}
.lum-table td{padding:10px 12px;border-bottom:1px solid var(--lum-card-b);color:var(--lum-txt2)}
.lum-table tr:hover td{background:var(--lum-surface)}

/* === FAQ === */
.lum-faq-list{display:flex;flex-direction:column;gap:8px}
.lum-faq-entry{background:var(--lum-card);border:1px solid var(--lum-card-b);border-radius:8px;overflow:hidden}
.lum-faq-entry summary{padding:16px 20px;cursor:pointer;font-weight:600;color:var(--lum-txt);list-style:none;display:flex;align-items:center;justify-content:space-between;transition:background .2s}
.lum-faq-entry summary:hover{background:var(--lum-surface)}
.lum-faq-entry summary::after{content:'+';font-size:20px;color:var(--lum-accent);font-weight:700;flex-shrink:0;margin-left:12px;transition:transform .2s}
.lum-faq-entry[open] summary::after{content:'-';transform:rotate(180deg)}
.lum-faq-entry summary h3{font-size:15px;margin:0;color:var(--lum-txt)}
.lum-faq-entry p{padding:0 20px 16px;margin:0;color:var(--lum-txt2);font-size:14px}

/* === AUTHOR === */
.lum-profile{display:flex;gap:20px;align-items:flex-start;background:var(--lum-card);padding:24px;border-radius:8px;border:1px solid var(--lum-card-b)}
.lum-profile-pic{width:80px;height:80px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--lum-accent)}
.lum-profile-info strong{display:block;font-size:17px;color:var(--lum-txt);margin-bottom:4px}
.lum-profile-info span{display:block;font-size:13px;color:var(--lum-accent);margin-bottom:8px}
.lum-profile-info p{margin:0;font-size:14px;color:var(--lum-txt2)}

/* === FOOTER === */
.lum-base{background:var(--lum-footer);padding:48px 0 24px;border-top:1px solid var(--lum-card-b)}
.lum-base-grid{display:grid;grid-template-columns:1fr;gap:32px;margin-bottom:32px}
.lum-base-brand img{height:36px;width:auto;margin-bottom:12px}
.lum-base-brand p{font-size:13px;color:var(--lum-muted)}
.lum-base-links{display:flex;flex-direction:column;gap:8px}
.lum-base-links strong{color:var(--lum-txt);font-size:14px;margin-bottom:4px}
.lum-base-links a{color:var(--lum-txt2);font-size:13px;transition:color .2s}
.lum-base-links a:hover{color:var(--lum-accent)}
.lum-base-legal strong{color:var(--lum-txt);font-size:14px;display:block;margin-bottom:8px}
.lum-base-legal p{font-size:12px;color:var(--lum-muted);margin-bottom:6px}
.lum-base-bottom{text-align:center;padding-top:20px;border-top:1px solid var(--lum-card-b)}
.lum-base-bottom p{font-size:12px;color:var(--lum-muted);margin:0}

/* === RESPONSIVE 768px === */
@media(min-width:768px){
  .lum-nav{display:flex}
  .lum-toggle{display:none}
  .lum-cta-header{display:inline-block}
  .lum-hero-flex{flex-direction:row;align-items:center}
  .lum-hero-body{flex:1}
  .lum-hero-media{flex:1}
  .lum-hero-body h1{font-size:34px}
  .lum-pair{flex-direction:row;align-items:center}
  .lum-pair-text{flex:1}
  .lum-pair-media{flex:1}
  .lum-tiles{grid-template-columns:repeat(3,1fr)}
  .lum-toc ol{columns:2}
  .lum-base-grid{grid-template-columns:2fr 1fr 1fr}
}

/* === RESPONSIVE 1024px === */
@media(min-width:1024px){
  .lum-hero-body h1{font-size:40px}
  .lum-tiles-slots{grid-template-columns:repeat(3,1fr)}
  .lum-tiles-live,.lum-tiles-table{grid-template-columns:repeat(4,1fr)}
  .lum-toc ol{columns:3}
  h2{font-size:27px}
  h3{font-size:21px}
}

/* === RESPONSIVE 1440px === */
@media(min-width:1440px){
  .lum-wrapper{max-width:1170px}
  .lum-hero-body h1{font-size:46px}
  body{font-size:17px}
}

/* Guide Steps */
.lum-guide-steps{list-style:none;counter-reset:lum-i;display:flex;flex-direction:column;gap:16px;margin:22px 0;padding:0}
.lum-guide-steps li{counter-increment:lum-i;display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--lum-card);border-radius:8px;border-left:4px solid var(--lum-accent)}
.lum-guide-steps li::before{content:counter(lum-i);min-width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--lum-primary);color:#fff;font-weight:700;border-radius:50%;font-size:13px;flex-shrink:0}
.lum-guide-steps li strong{display:block;margin-bottom:4px;color:var(--lum-accent)}
.lum-guide-steps li p{margin:0;color:var(--lum-txt2);font-size:15px;line-height:1.6}
