/* Agentite gallery design system — obsidian / glowing cyan / restrained silver.
   Loaded AFTER each page's base <style>; it redefines the palette variables and
   adds the gallery components. It never touches artwork files.
   Class names (shared by index / market / dashboard):
   .g-eyebrow .g-hero .g-frame .g-well .g-gallery .g-card .g-stats .g-stat
   .g-panel .g-pbar .g-btn .g-btn-ghost .g-section .g-lead .g-note .g-empty */
:root{
  --bg:#0A0A0E; --card:#121218; --ink:#F4F2EC; --mute:#9AA1B2; --line:#232329;
  --cta:#7FE3D3; --ctaink:#0A0A0E; --plum:#B8C4D6; --teal:#5DCAA5; --cy:#7FE3D3;
  --amber:#E8B84B;
}
body{background:var(--bg);color:var(--ink);font:400 17px/1.7 Nunito,system-ui,sans-serif}
h1,h2,h3{color:var(--ink)}
a{color:var(--cy)}
.wrap{max-width:1120px}
header{background:rgba(10,10,14,.92);border-bottom:1px solid var(--line)}
.tokenbar{background:#0E0E13;border-bottom:1px solid var(--line)}
.tokenbar a{color:var(--cy)}
.logo{color:var(--ink)}
.menu-btn{background:var(--card);border:1px solid var(--line);color:var(--ink)}
.menu-panel{background:var(--card);border:1px solid var(--line)}
.menu-panel a{color:var(--mute)}
.menu-panel a:hover{background:#1A1A22;color:var(--ink)}
.lang{background:var(--card);border:1px solid var(--line)}
.lang button.on{background:var(--ink);color:var(--bg)}
.tg-icon{background:var(--card);border:1px solid var(--line)}
.card{background:var(--card);border:1px solid var(--line);border-radius:20px}
.card p{color:var(--mute)}
section{padding:72px 0}
h2{font-size:clamp(28px,4vw,40px);letter-spacing:-.01em}
.lead{color:var(--mute);max-width:62ch}
.pill{background:var(--card);border:1px solid var(--line);color:var(--mute)}
.btn{background:var(--cta);color:var(--ctaink);font:600 16px Fredoka,sans-serif;padding:14px 28px}
.btn.alt{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn:hover{transform:translateY(-1px)}
.copy{background:var(--ink);color:var(--bg)}
.addr{color:var(--mute)}
details{background:var(--card);border:1px solid var(--line)}
details p{color:var(--mute)}
footer{border-top:1px solid var(--line);color:var(--mute)}
.prompt{background:var(--card);border:1px dashed var(--line)}
.prompt pre{color:var(--mute)}
.w-box{background:var(--card);border:1px solid var(--line)}
.w-opt{background:var(--bg);border:1px solid var(--line);color:var(--ink)}
.w-field{background:var(--bg);border:1px solid var(--line);color:var(--ink)}
.chip{background:var(--card);border:1px solid var(--line);color:var(--mute)}
.chip.sel{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* --- gallery components --- */
.g-eyebrow{font:800 12px Nunito,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--cy)}
.g-eyebrow.silver{color:var(--mute)}
.g-section{padding:72px 0}
.g-section + .g-section{border-top:1px solid var(--line)}
.g-lead{color:var(--mute);max-width:62ch;margin:0 0 28px;font-size:18px}
.g-note{color:var(--mute);font-size:14px}
.g-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:72px 0 56px}
.g-hero h1{font-size:clamp(42px,5.6vw,68px);line-height:1.04;letter-spacing:-.015em;margin:16px 0 18px}
.g-hero h1 .cy{color:var(--cy)}
.g-hero .g-lead{font-size:19px}
.g-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.g-frame{background:#000;border:1px solid var(--line);border-radius:24px;padding:28px;min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.g-frame img{width:auto;max-width:100%;height:auto;max-height:560px;object-fit:contain;object-position:center;display:block;opacity:1}
.g-frame figcaption{color:var(--mute);font-size:13px;text-align:center;margin-top:12px}
.g-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:36px}
.g-stat{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 20px}
.g-stat .k{font:800 11px Nunito,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.g-stat .v{font:600 26px Fredoka;color:var(--ink);margin-top:6px}
.g-stat .v small{font-size:15px;color:var(--mute)}
.g-stat .s{font-size:13px;color:var(--mute);margin-top:2px}
.g-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.g-card{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.g-well{background:#000;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;overflow:hidden}
.g-well img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;opacity:1}
.g-card .g-body{padding:18px 20px 20px}
.g-card h3{font-size:22px;margin:0}
.g-card .g-meta{color:var(--mute);font-size:14px;margin:6px 0 0}
.g-card .g-share{font:600 15px Fredoka;color:var(--cy);margin-top:10px}
.g-panel{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px}
.g-panel h3{font-size:24px;margin:0 0 8px}
.g-panel p{color:var(--mute);margin:8px 0 0}
.g-pbar{height:10px;border-radius:6px;background:var(--line);overflow:hidden;margin:16px 0 10px}
.g-pbar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--cy));border-radius:6px;transition:width .6s}
.g-pill{display:inline-flex;align-items:center;gap:6px;font:800 12px Nunito,sans-serif;letter-spacing:.06em;border:1px solid var(--amber);color:var(--amber);border-radius:999px;padding:4px 12px;white-space:nowrap}
.g-pill.open{color:var(--teal);border-color:var(--teal)}
.g-pill.cy{color:var(--cy);border-color:var(--cy)}
.g-empty{background:var(--card);border:1px dashed var(--line);border-radius:20px;padding:32px;text-align:center;color:var(--mute)}
.g-grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.g-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.g-listing{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.g-listing .g-well{aspect-ratio:400/713}
.g-listing .g-body{padding:16px 18px 18px}
.g-listing h3{font-size:20px;margin:0}
.g-listing .price{font:600 22px Fredoka;color:var(--ink);margin:8px 0 0}
.g-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:28px 0 12px}
.g-filters select,.g-filters input{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:10px 16px;font:600 15px Nunito,sans-serif}
.g-filters input{flex:1 1 200px;min-width:180px}
.g-filters input::placeholder{color:var(--mute)}
.g-filters select:focus,.g-filters input:focus{outline:3px solid var(--plum)}
.g-dash-empty{background:var(--card);border:1px dashed var(--line);border-radius:22px;padding:40px 28px;text-align:center}
.g-dash-empty h3{font-size:24px;margin:0 0 8px}
.g-dash-empty p{color:var(--mute);margin:8px auto 0;max-width:52ch}
@media (max-width:900px){
  .g-hero{grid-template-columns:1fr;gap:28px;padding:48px 0 40px}
  .g-gallery{grid-template-columns:1fr 1fr}
  .g-stats{grid-template-columns:1fr 1fr}
  .g-grid2,.g-grid3{grid-template-columns:1fr}
  section,.g-section{padding:48px 0}
}
@media (max-width:560px){
  .g-gallery{grid-template-columns:1fr}
  .g-frame{padding:18px;min-height:260px}
  .g-frame img{max-height:420px}
}
@media (prefers-reduced-motion:reduce){
  .g-pbar i{transition:none}
}
