/*
Theme Name: Lumen
Theme URI: https://smartfit.rocks/
Author: Nadia Chen
Description: Standalone theme for smartfit.rocks — an independent player-finance and terms desk for Canadian online-casino players. Structural idea: "The Circuit Feed" — hexagonal socket tiles for sections, and a single-column alternating post stream wired together by a dashed centre line with gold spark nodes, not a card grid, register list, table log, ledger accordion or masonry.
Version: d446af87
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: lumen
*/

/* ============ tokens ============ */
:root{
  --lum-ink-950:#18101e;
  --lum-ink-800:#2c2035;
  --lum-paper:#faf7f0;
  --lum-gold-500:#f0c32a;
  --lum-gold-700:#8a660f;

  /* semantic layer */
  --lum-color-text:var(--lum-ink-800);
  --lum-color-bg:var(--lum-paper);
  --lum-color-link:var(--lum-gold-700);
  --lum-color-accent:var(--lum-gold-500);

  --lum-surface:#ffffff;
  --lum-surface-soft:#f2ece2;
  --lum-border:#ded5c6;
  --lum-border-soft:#eae3d6;
  --lum-muted:#5b5064;
  --lum-inverse:#f6f1e8;
  --lum-inverse-soft:#cfc3d4;

  --lum-space-1:4px;
  --lum-space-2:8px;
  --lum-space-3:12px;
  --lum-space-4:16px;
  --lum-space-5:24px;
  --lum-space-6:32px;
  --lum-space-7:48px;
  --lum-space-8:64px;
  --lum-space-9:96px;

  --lum-radius-sm:6px;
  --lum-radius-md:12px;
  --lum-shell:1140px;
  --lum-measure:720px;

  --lum-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  --lum-fs-xs:.85rem;
  --lum-fs-sm:.9rem;
  --lum-fs-md:1.25rem;
  --lum-fs-lg:1.5rem;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--lum-color-bg);
  color:var(--lum-color-text);
  font-family:var(--lum-font);
  font-size:17px;
  font-weight:400;
  line-height:1.6;
  min-width:0;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--lum-color-link);text-decoration-thickness:1.5px;text-underline-offset:2px}
a:hover{color:var(--lum-ink-950)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--lum-ink-950);outline-offset:2px}
h1,h2,h3,h4{font-weight:700;letter-spacing:-.01em;line-height:1.35;margin:0 0 var(--lum-space-3);color:var(--lum-ink-950)}
h1{font-size:clamp(1.95rem,1.55rem + 1.6vw,2.9rem)}
h2{font-size:var(--lum-fs-lg)}
h3{font-size:var(--lum-fs-md)}
h4{font-size:1.05rem}
p{margin:0 0 var(--lum-space-4)}
ul,ol{margin:0 0 var(--lum-space-4);padding-left:1.3em}
.lum-shell{max-width:var(--lum-shell);margin:0 auto;padding:0 var(--lum-space-5)}

.lum-skip{
  position:absolute;left:-999px;top:0;background:var(--lum-ink-950);color:var(--lum-inverse);
  padding:var(--lum-space-2) var(--lum-space-4);z-index:100;border-radius:0 0 var(--lum-radius-sm) 0;
}
.lum-skip:focus{left:0}

/* micro-labels: small-caps, never mono */
.lum-hero__kicker,.lum-entry__tag,.lum-entry__meta,.lum-socket__count,.lum-article__eyebrow,.lum-article__meta,.lum-crumbs{
  font-variant:small-caps;letter-spacing:.06em;
}

/* ============ header ============ */
.lum-header{background:var(--lum-ink-950);border-bottom:3px solid var(--lum-gold-500);position:relative}
.lum-header__inside{
  display:flex;align-items:center;justify-content:space-between;gap:var(--lum-space-4);
  padding:var(--lum-space-4) 0;flex-wrap:wrap;
}
.lum-header__tools{display:flex;align-items:center;gap:var(--lum-space-5);flex-wrap:wrap;justify-content:flex-end}
.lum-header a:focus-visible,.lum-header button:focus-visible,.lum-header input:focus-visible{outline-color:var(--lum-gold-500)}
.lum-brand{min-width:0}
.lum-brand a{display:block;color:var(--lum-inverse);text-decoration:none}
.lum-brand__logo img{height:44px;width:auto}
.lum-brand__name{display:block;font-size:1.3rem;font-weight:700;letter-spacing:-.01em;color:var(--lum-inverse)}
.lum-brand__tag{display:block;font-size:var(--lum-fs-xs);font-variant:small-caps;letter-spacing:.08em;color:var(--lum-gold-500);margin-top:2px}

.lum-menu-button{
  display:none;align-items:center;gap:var(--lum-space-2);background:transparent;color:var(--lum-inverse);
  border:1.5px solid var(--lum-gold-500);border-radius:var(--lum-radius-sm);padding:var(--lum-space-2) var(--lum-space-3);
  font-family:inherit;font-size:var(--lum-fs-sm);min-height:48px;cursor:pointer;
}
.lum-menu-button__icon{width:20px;height:14px;position:relative;display:inline-block}
.lum-menu-button__icon::before,.lum-menu-button__icon::after,.lum-menu-button__icon span{content:"";position:absolute;left:0;right:0;height:2px;background:var(--lum-gold-500)}
.lum-menu-button__icon::before{top:0}
.lum-menu-button__icon::after{bottom:0}
.lum-menu-button__icon span{top:6px;display:block}

.lum-navigation__list{list-style:none;display:flex;gap:var(--lum-space-5);margin:0;padding:0}
.lum-navigation__list a{
  color:var(--lum-inverse);text-decoration:none;font-size:var(--lum-fs-sm);padding:var(--lum-space-2) 0;
  border-bottom:2px solid transparent;display:inline-block;
}
.lum-navigation__list a:hover,.lum-navigation__list a:focus-visible{border-bottom-color:var(--lum-gold-500);color:var(--lum-gold-500)}

.lum-header__search .lum-search{margin:0}
.lum-header__search .lum-search__label{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;
}
.lum-header__search .lum-search__row{max-width:260px}
.lum-header__search .lum-search__input{min-height:44px;font-size:var(--lum-fs-sm);border-color:var(--lum-ink-800)}
.lum-header__search .lum-search__button{min-height:44px;padding:0 var(--lum-space-3);font-size:var(--lum-fs-sm);border-color:var(--lum-gold-500);background:var(--lum-gold-500);color:var(--lum-ink-950);font-weight:700}
.lum-header__search .lum-search__button:hover{background:var(--lum-inverse);border-color:var(--lum-inverse)}

@media (max-width:560px){
  .lum-brand__tag{display:none}
  .lum-header__search .lum-search__row{max-width:200px}
}
@media (max-width:820px){
  .lum-menu-button{display:inline-flex}
  .lum-navigation{
    position:absolute;left:0;right:0;top:100%;background:var(--lum-ink-950);z-index:20;
    border-bottom:3px solid var(--lum-gold-500);max-height:0;overflow:hidden;transition:max-height .25s ease;
  }
  .lum-navigation--open{max-height:460px}
  .lum-navigation__list{flex-direction:column;gap:0;padding:var(--lum-space-3) var(--lum-space-5) var(--lum-space-5)}
  .lum-navigation__list a{display:block;padding:var(--lum-space-3) 0;min-height:48px}
}

/* ============ hero ============ */
.lum-hero{padding:var(--lum-space-8) 0 var(--lum-space-6)}
.lum-hero__kicker{font-size:var(--lum-fs-xs);color:var(--lum-gold-700);margin:0 0 var(--lum-space-3);font-weight:700}
.lum-hero__title{max-width:20ch}
.lum-hero__text{max-width:var(--lum-measure);font-size:1.1rem;color:var(--lum-muted)}
.lum-hero--author{display:flex;gap:var(--lum-space-5);align-items:flex-start}
.lum-hero--author>div{min-width:0}
.lum-author__avatar{flex:none;width:112px;height:112px;border-radius:50%;object-fit:cover;aspect-ratio:1/1;border:3px solid var(--lum-gold-500)}
.lum-author__role{margin:0 0 var(--lum-space-3);color:var(--lum-muted);font-variant:small-caps;letter-spacing:.06em}
@media (max-width:640px){
  .lum-hero--author{flex-direction:column}
  .lum-author__avatar{width:96px;height:96px}
}

/* ============ socket row ============ */
.lum-sockets{padding-bottom:var(--lum-space-7)}
.lum-sockets__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--lum-space-5)}
.lum-socket{flex:1 1 240px;min-width:0}
.lum-socket a{
  display:flex;align-items:center;gap:var(--lum-space-3);width:100%;height:100%;text-decoration:none;color:inherit;
  background:var(--lum-surface);border:1px solid var(--lum-border);border-radius:var(--lum-radius-md);
  padding:var(--lum-space-3) var(--lum-space-4);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.lum-socket a:hover,.lum-socket a:focus-visible{transform:translateY(-2px);box-shadow:0 8px 20px rgba(24,16,30,.12);border-color:var(--lum-gold-500)}
.lum-socket__shape{
  flex:none;width:44px;height:50px;background:var(--lum-gold-500);border-radius:4px;
  clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);
}
.lum-socket__body{min-width:0}
.lum-socket__name{display:block;font-weight:700;letter-spacing:-.01em;color:var(--lum-ink-950)}
.lum-socket__count{display:block;font-size:var(--lum-fs-xs);color:var(--lum-muted)}

/* ============ circuit stream ============ */
.lum-section-heading{margin-bottom:var(--lum-space-6)}
.lum-section-heading p{color:var(--lum-muted);margin:0}
.lum-stream-wrap{padding-bottom:var(--lum-space-8)}
.lum-stream{list-style:none;margin:0;padding:0;position:relative}
.lum-stream::before{
  content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed var(--lum-gold-500);
  transform:translateX(-1px);
}
.lum-entry{position:relative;padding:var(--lum-space-5) 0}
.lum-entry::before{
  content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;
  border-radius:50%;background:var(--lum-gold-500);border:2px solid var(--lum-ink-950);z-index:1;
}
.lum-entry__article{display:flex;flex-direction:row;align-items:center;gap:var(--lum-space-8)}
.lum-entry--alt .lum-entry__article{flex-direction:row-reverse}
.lum-entry__thumb{
  flex:1 1 50%;min-width:0;display:flex;justify-content:flex-end;
  border-radius:var(--lum-radius-md);
}
.lum-entry--alt .lum-entry__thumb{justify-content:flex-start}
.lum-entry__thumb img{
  width:220px;height:220px;max-width:100%;object-fit:cover;border-radius:var(--lum-radius-md);
  border:1px solid var(--lum-border-soft);background:var(--lum-surface-soft);
}
.lum-entry__thumb-fallback{display:block;width:220px;height:220px;max-width:100%;border-radius:var(--lum-radius-md);background:var(--lum-surface-soft)}
.lum-entry__body{
  flex:1 1 50%;min-width:0;background:var(--lum-surface);border:1px solid var(--lum-border);
  border-radius:var(--lum-radius-md);padding:var(--lum-space-5);
  box-shadow:0 1px 2px rgba(24,16,30,.06);transition:transform .2s ease,box-shadow .2s ease;
}
.lum-entry__article:hover .lum-entry__body,.lum-entry__article:focus-within .lum-entry__body{
  transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,16,30,.14);
}
.lum-entry__tag{
  display:inline-block;background:var(--lum-gold-500);color:var(--lum-ink-950);border-radius:999px;
  padding:1px 12px;font-size:var(--lum-fs-xs);font-weight:700;margin-bottom:var(--lum-space-3);
}
.lum-entry__title{margin:0 0 var(--lum-space-2);font-size:var(--lum-fs-md)}
.lum-entry__title a{color:var(--lum-ink-950);text-decoration:none}
.lum-entry__title a:hover,.lum-entry__title a:focus-visible{color:var(--lum-gold-700);text-decoration:underline}
.lum-entry__dek{margin:0 0 var(--lum-space-3);color:var(--lum-muted);font-size:var(--lum-fs-sm)}
.lum-entry__meta{margin:0;font-size:var(--lum-fs-xs);color:var(--lum-muted)}
.lum-entry__dot{padding:0 var(--lum-space-1)}

@media (max-width:820px){
  /* single mobile column: image above text, no centre gutter, reading order stays stable */
  .lum-stream::before,.lum-entry::before{display:none}
  .lum-entry__article,.lum-entry--alt .lum-entry__article{flex-direction:column;align-items:stretch;gap:var(--lum-space-4)}
  .lum-entry__thumb,.lum-entry--alt .lum-entry__thumb{flex:none;justify-content:flex-start}
  .lum-entry__thumb img,.lum-entry__thumb-fallback{width:180px;height:180px}
  .lum-entry__body{flex:none;padding:var(--lum-space-4)}
}

.lum-empty{color:var(--lum-muted);padding:var(--lum-space-6) 0}

.lum-pagination{padding-top:var(--lum-space-6)}
.lum-pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;
  border:1px solid var(--lum-border);border-radius:var(--lum-radius-sm);margin-right:var(--lum-space-2);
  text-decoration:none;color:var(--lum-ink-950);background:var(--lum-surface);
}
.lum-pagination .page-numbers.current{background:var(--lum-ink-950);color:var(--lum-inverse);border-color:var(--lum-ink-950)}
.lum-pagination .page-numbers:hover{border-color:var(--lum-gold-700)}

/* ============ breadcrumbs ============ */
.lum-crumbs{padding-top:var(--lum-space-5);font-size:var(--lum-fs-xs);color:var(--lum-muted)}
.lum-crumbs p{margin:0}

/* ============ article ============ */
.lum-article{padding:var(--lum-space-7) 0 var(--lum-space-6)}
.lum-article__header,.lum-article__figure,.lum-article__body,.lum-byline{max-width:var(--lum-measure)}
.lum-article__eyebrow{
  display:inline-block;font-size:var(--lum-fs-xs);font-weight:700;color:var(--lum-gold-700);
  text-decoration:none;border-bottom:2px solid var(--lum-gold-500);padding-bottom:2px;margin-bottom:var(--lum-space-3);
}
.lum-article__title{max-width:none}
.lum-article__meta{color:var(--lum-muted);font-size:var(--lum-fs-xs);margin-bottom:var(--lum-space-5)}
.lum-article__figure{margin:0 0 var(--lum-space-6);border-radius:var(--lum-radius-md);overflow:hidden}
.lum-article__body{font-size:1.05rem;line-height:1.7}
.lum-article__body h2,.lum-article__body h3{position:relative;padding-left:22px}
.lum-article__body h2{margin-top:var(--lum-space-7)}
.lum-article__body h3{margin-top:var(--lum-space-6)}
.lum-article__body h2::before,.lum-article__body h3::before{
  content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border-radius:50%;
  background:var(--lum-gold-500);border:1px solid var(--lum-ink-950);
}
.lum-article__body h3::before{width:8px;height:8px;top:.55em}
.lum-article__body img{border-radius:var(--lum-radius-md);margin:var(--lum-space-4) 0}
.lum-article__body table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;min-width:0}
.lum-article__body table td,.lum-article__body table th{border:1px solid var(--lum-border);padding:var(--lum-space-2) var(--lum-space-3);min-width:120px}
.lum-article__body blockquote{margin:var(--lum-space-5) 0;padding-left:var(--lum-space-4);border-left:3px solid var(--lum-gold-500);color:var(--lum-muted)}

.lum-byline{
  display:flex;gap:var(--lum-space-3);align-items:center;margin-top:var(--lum-space-7);
  padding-top:var(--lum-space-5);border-top:1px solid var(--lum-border-soft);
}
.lum-byline__avatar{flex:none;width:56px;height:56px;border-radius:50%;object-fit:cover;aspect-ratio:1/1;border:2px solid var(--lum-gold-500)}
.lum-byline__name{margin:0;font-weight:700}
.lum-byline__name a{color:var(--lum-ink-950);text-decoration:none}
.lum-byline__name a:hover{color:var(--lum-gold-700);text-decoration:underline}
.lum-byline__role{margin:0;font-size:var(--lum-fs-sm);color:var(--lum-muted)}

/* ============ related ============ */
.lum-related{padding-bottom:var(--lum-space-8)}
.lum-related__title{font-size:var(--lum-fs-md);margin-bottom:var(--lum-space-5)}
.lum-related__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--lum-space-5)}
.lum-related__item{
  background:var(--lum-surface);border:1px solid var(--lum-border);border-radius:var(--lum-radius-md);
  padding:var(--lum-space-4);transition:transform .2s ease,box-shadow .2s ease;
}
.lum-related__item:hover,.lum-related__item:focus-within{transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,16,30,.14)}
.lum-related__thumb{display:block;margin-bottom:var(--lum-space-3)}
.lum-related__thumb img,.lum-related__thumb .lum-entry__thumb-fallback{width:100%;height:160px;object-fit:cover;border-radius:var(--lum-radius-sm)}
.lum-related__heading{font-size:1.02rem;margin:var(--lum-space-2) 0}
.lum-related__heading a{color:var(--lum-ink-950);text-decoration:none}
.lum-related__heading a:hover,.lum-related__heading a:focus-visible{color:var(--lum-gold-700);text-decoration:underline}
@media (max-width:820px){
  .lum-related__list{grid-template-columns:1fr}
  .lum-related__thumb img,.lum-related__thumb .lum-entry__thumb-fallback{height:180px}
}

/* ============ static pages ============ */
.lum-page{padding:var(--lum-space-7) 0 var(--lum-space-8)}
.lum-page__title{max-width:none}
.lum-page__byline{display:flex;align-items:center;gap:var(--lum-space-3);margin-bottom:var(--lum-space-5)}
.lum-page__avatar{flex:none;width:72px;height:72px;border-radius:50%;object-fit:cover;aspect-ratio:1/1;border:2px solid var(--lum-gold-500)}
.lum-page__byline-role{margin:0;color:var(--lum-muted);font-variant:small-caps;letter-spacing:.06em}
.lum-page__body{max-width:var(--lum-measure);font-size:1.05rem}
.lum-page__body h2{margin-top:var(--lum-space-7)}
.lum-page__body h3{margin-top:var(--lum-space-6)}
.lum-page__body table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.lum-page__body table td,.lum-page__body table th{border:1px solid var(--lum-border);padding:var(--lum-space-2) var(--lum-space-3);min-width:120px}

/* ============ archive intro ============ */
.lum-archive-intro{max-width:var(--lum-measure);color:var(--lum-muted);font-size:1.02rem}
.lum-archive-intro p:last-child{margin-bottom:0}

/* ============ search ============ */
.lum-search{margin-top:var(--lum-space-4)}
.lum-search__label{display:block;margin-bottom:var(--lum-space-2);font-weight:700;font-size:var(--lum-fs-sm)}
.lum-search__row{display:flex;gap:var(--lum-space-2);max-width:480px}
.lum-search__input{
  flex:1;min-width:0;min-height:48px;padding:0 var(--lum-space-3);border:1px solid var(--lum-border);
  border-radius:var(--lum-radius-sm);font-size:1rem;font-family:inherit;background:#fff;color:var(--lum-ink-800);
}
.lum-search__button{
  min-height:48px;padding:0 var(--lum-space-5);border:1px solid var(--lum-ink-950);border-radius:var(--lum-radius-sm);
  background:var(--lum-ink-950);color:var(--lum-inverse);font-size:1rem;font-family:inherit;cursor:pointer;
}
.lum-search__button:hover{background:var(--lum-gold-700);border-color:var(--lum-gold-700)}

/* ============ footer ============ */
.lum-footer{background:var(--lum-ink-950);color:var(--lum-inverse);margin-top:var(--lum-space-8)}
.lum-footer a:focus-visible{outline-color:var(--lum-gold-500)}
.lum-footer__grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--lum-space-6);padding:var(--lum-space-7) 0 var(--lum-space-6);margin:0}
.lum-footer__grid h2{color:var(--lum-gold-500);font-size:1rem;font-variant:small-caps;letter-spacing:.06em;margin-bottom:var(--lum-space-3)}
.lum-footer__list{list-style:none;margin:0;padding:0}
.lum-footer__list li{margin-bottom:var(--lum-space-2)}
.lum-footer a{color:var(--lum-inverse);text-decoration:none}
.lum-footer a:hover,.lum-footer a:focus-visible{color:var(--lum-gold-500);text-decoration:underline}
.lum-footer__grid p{color:var(--lum-inverse-soft);font-size:var(--lum-fs-sm);margin:0 0 var(--lum-space-2)}
.lum-footer__grid strong{color:var(--lum-inverse)}
.lum-footer__base{
  border-top:1px solid var(--lum-ink-800);padding:var(--lum-space-4) 0 var(--lum-space-6);
  font-size:var(--lum-fs-xs);color:var(--lum-inverse-soft);
}
.lum-footer__badge{
  display:inline-flex;align-items:center;justify-content:center;min-width:2.4em;padding:2px 8px;margin-right:var(--lum-space-2);
  background:var(--lum-gold-500);border-radius:var(--lum-radius-sm);color:var(--lum-ink-950);font-weight:700;font-size:var(--lum-fs-xs);
}
@media (max-width:720px){
  .lum-footer__grid{grid-template-columns:1fr;padding-bottom:var(--lum-space-4)}
}

@media (prefers-reduced-motion:reduce){
  .lum-entry__body,.lum-socket a,.lum-related__item,.lum-navigation{transition:none}
  .lum-entry__article:hover .lum-entry__body,.lum-socket a:hover,.lum-related__item:hover{transform:none}
}
