/* TCG Nexus — shared base styles */
:root{--red:#FF1B4C;--red2:#FF4D70;--bg:#252529;--ink:#2a2a2e;--panel:#2e2e33;--surface:#35353a;--line:rgba(255,255,255,0.07);--muted:#565761;--dim:#8a8a94;--white:#ffffff}
[data-theme="light"]{--bg:#ffffff;--ink:#f5f5f7;--panel:#ffffff;--surface:#f0f0f2;--line:rgba(0,0,0,0.08);--muted:#565761;--dim:#333;--white:#252529}
[data-theme="light"] body{color:#111}
[data-theme="light"] body::before{opacity:.05}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--white);font-family:'Inter',sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
.container{max-width:1280px;margin:0 auto;padding:0 40px}
@media(max-width:768px){.container{padding:0 20px}}
.page-header{padding:100px 0 48px;background:var(--ink);border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.ph-inner{position:relative;z-index:1}
.ph-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.ph-eyebrow::before{content:'';width:20px;height:1px;background:var(--red)}
.ph-title{font-family:'Montserrat',sans-serif;font-size:clamp(36px,5vw,60px);font-weight:900;line-height:.95;letter-spacing:-.01em;margin-bottom:12px}
.ph-sub{font-size:15px;color:var(--muted);font-weight:300}
/* Light-mode logo visibility — dark mode handled by nav.js */
[data-theme="light"] img.tcg-logo{filter:drop-shadow(-1px 0 0 rgba(0,0,0,.3)) drop-shadow(1px 0 0 rgba(0,0,0,.3)) drop-shadow(0 -1px 0 rgba(0,0,0,.3)) drop-shadow(0 1px 0 rgba(0,0,0,.3))}

/* ─── Typography rendering ───────────────────────────────────────────── */
body{font-feature-settings:'kern' 1,'calt' 1,'liga' 1;-moz-osx-font-smoothing:grayscale}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
input[type=number]{-moz-appearance:textfield}

/* ─── Text selection ─────────────────────────────────────────────────── */
::selection{background:rgba(255,27,76,.2);color:inherit}
::-moz-selection{background:rgba(255,27,76,.2);color:inherit}

/* ─── Custom scrollbar ───────────────────────────────────────────────── */
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.22)}
[data-theme="light"] ::-webkit-scrollbar-thumb{background:rgba(0,0,0,.14)}
[data-theme="light"] ::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.26)}
*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}
[data-theme="light"] *{scrollbar-color:rgba(0,0,0,.14) transparent}

/* ─── Placeholder ────────────────────────────────────────────────────── */
::placeholder{color:var(--muted);opacity:1;transition:opacity .22s}
:focus::placeholder{opacity:.4}

/* ─── Focus ring ─────────────────────────────────────────────────────── */
:focus{outline:none}
:focus-visible{outline:2px solid rgba(255,27,76,.65);outline-offset:3px;border-radius:3px}

/* ─── Button press feedback ──────────────────────────────────────────── */
.btn-primary:active{transform:translateY(1px) scale(.985)!important;box-shadow:0 2px 8px rgba(255,27,76,.15)!important;transition-duration:.05s!important}
.btn-ghost:active{transform:translateY(1px) scale(.985)!important;transition-duration:.05s!important}
.nav-cta:active,.mob-cta:active{transform:scale(.985)!important;transition-duration:.05s!important}
button:active{transition-duration:.05s!important}

/* ─── Custom Select Dropdown ─────────────────────────────────────────── */
.nech-select{position:relative;display:inline-flex;flex-shrink:0}
.nech-select-trigger{display:flex;align-items:center;gap:7px;padding:7px 11px;background:var(--surface);border:1px solid var(--line);border-radius:7px;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--muted);cursor:pointer;transition:border-color .22s cubic-bezier(.4,0,.2,1),color .22s cubic-bezier(.4,0,.2,1);white-space:nowrap;user-select:none;min-width:120px;justify-content:space-between}
.nech-select-trigger:hover{border-color:rgba(255,255,255,.18);color:var(--white)}
.nech-select.open .nech-select-trigger{border-color:rgba(255,27,76,.5);color:var(--white)}
.nech-select-trigger svg{transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s,color .2s;flex-shrink:0;opacity:.45}
.nech-select.open .nech-select-trigger svg{transform:rotate(180deg);opacity:1;color:var(--red)}
.ns-panel{position:absolute;top:calc(100% + 5px);left:0;min-width:100%;background:var(--panel);border:1px solid rgba(255,255,255,.09);border-radius:8px;overflow:hidden;z-index:700;box-shadow:0 20px 60px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.04);opacity:0;transform:translateY(-6px) scale(.975);pointer-events:none;transition:opacity .16s cubic-bezier(.4,0,.2,1),transform .16s cubic-bezier(.4,0,.2,1);max-height:264px;overflow-y:auto}
.nech-select.open .ns-panel{opacity:1;transform:none;pointer-events:auto}
.ns-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--dim);cursor:pointer;transition:background .1s,color .1s,border-color .1s;white-space:nowrap;border-left:2px solid transparent}
.ns-opt:hover{background:rgba(255,255,255,.05);color:var(--white);border-left-color:rgba(255,255,255,.1)}
.ns-opt.cur{color:var(--red);background:rgba(255,27,76,.06);border-left-color:var(--red)}
.ns-dot{width:5px;height:5px;border-radius:50%;background:var(--red);flex-shrink:0;opacity:0;transition:opacity .12s}
.ns-opt.cur .ns-dot{opacity:1}
[data-theme="light"] .nech-select-trigger{background:var(--surface);color:var(--dim)}
[data-theme="light"] .nech-select-trigger:hover{border-color:rgba(0,0,0,.18);color:#111}
[data-theme="light"] .nech-select.open .nech-select-trigger{border-color:rgba(255,27,76,.4)}
[data-theme="light"] .ns-panel{background:#fff;border-color:rgba(0,0,0,.1);box-shadow:0 20px 60px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.06)}
[data-theme="light"] .ns-opt:hover{background:rgba(0,0,0,.03);color:#111}
[data-theme="light"] .ns-opt.cur{background:rgba(255,27,76,.06)}

/* ─── Reduced motion ─────────────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important
  }
}
