*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark light}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg);background-image:var(--page-bg);background-repeat:no-repeat;background-size:cover;background-attachment:fixed;color:var(--text);font:16px/1.6 var(--font-body)}
h1,h2,h3{font-family:var(--font-heading);line-height:1.2;margin:0 0 .6em;letter-spacing:-.01em;font-weight:500}
h1{font-size:clamp(1.9rem,4vw,2.6rem)}h2{font-size:1.35rem}h3{font-size:1.1rem}
p{margin:0 0 1em}a{color:var(--accent-strong);text-underline-offset:3px}img{max-width:100%}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}
.wrap{width:min(1120px,100%);margin:0 auto;padding:0 16px}.page{padding-top:32px;padding-bottom:56px;flex:1}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--surface);padding:8px;z-index:9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}
.muted{color:var(--muted)}.small{font-size:.85rem}.nowrap{white-space:nowrap}.break{word-break:break-all}.prewrap{white-space:pre-wrap}.mono{font-family:ui-monospace,Menlo,monospace}
.eyebrow{color:var(--muted);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;word-break:break-all}.lede{font-size:1.15rem}
.topbar{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}
.topbar-in{display:flex;align-items:center;gap:20px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-family:var(--font-heading);font-size:1.15rem}.brand img{height:34px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:18px;flex:1;flex-wrap:wrap}.nav a{color:var(--muted);text-decoration:none}.nav a:hover,.nav a[aria-current]{color:var(--text)}
.nav .btn{color:var(--on-accent)}.nav-gap{flex:1}.nav form{margin:0}.nav-user{display:flex;align-items:center;gap:8px}
.nav-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:6px 12px;font:inherit}
.linklike{background:none;border:0;padding:0;color:var(--muted);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.linklike:hover{color:var(--text)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-alt);color:var(--text);font:inherit;font-weight:500;cursor:pointer;text-decoration:none;transition:filter .15s,transform .15s}
.btn:hover{filter:brightness(1.15)}.btn:active{transform:translateY(1px)}.btn[aria-current]{border-color:var(--accent);color:var(--accent-strong)}
.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}
.btn-sm{padding:6px 12px;font-size:.9rem}.btn-block{width:100%}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;min-width:0}
a.card{color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}a.card:hover{border-color:var(--accent);transform:translateY(-2px)}
.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid-3{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.section{margin-top:32px}.section-tight{margin-top:12px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.section-head h1,.section-head h2{margin:0}.section-head form{margin:0}
.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row form{margin:0}
.center-card{max-width:460px;margin:24px auto;width:100%}.center-card .form{margin:14px 0}
.hero{padding:clamp(48px,9vw,96px) 0 32px}.hero-in{display:flex;align-items:center;justify-content:space-between;gap:32px}
.hero h1{font-size:clamp(2.6rem,7vw,4.4rem);margin-bottom:.2em}.hero-gem{width:clamp(140px,24vw,260px);height:auto;filter:drop-shadow(0 18px 48px color-mix(in srgb,var(--accent) 45%,transparent))}
.ip-row{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 12px}
.ip{display:inline-flex;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:10px 16px;font:inherit;cursor:pointer}.ip span{color:var(--accent-strong);font-size:.85rem}
.server-state{display:flex;align-items:center;gap:8px;color:var(--muted);margin:0}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--muted);flex:none}.dot-on{background:var(--ok);box-shadow:0 0 8px var(--ok)}
.head{image-rendering:pixelated;border-radius:calc(var(--radius)/2);background:var(--surface-alt);flex:none;vertical-align:middle}
.badge{display:inline-block;padding:1px 9px;border-radius:999px;font-size:.78rem;border:1px solid color-mix(in srgb,var(--rank,var(--muted)) 60%,transparent);color:color-mix(in srgb,var(--rank,var(--muted)) 75%,var(--text));background:color-mix(in srgb,var(--rank,var(--muted)) 14%,transparent);white-space:nowrap}
.badge-staff{--rank:var(--accent-strong)}.badge-tag{border-style:dashed}.chips{display:flex;gap:6px;flex-wrap:wrap}
.person{display:flex;align-items:center;gap:12px}.person>span:not(.dot){display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;flex:1}.person strong{overflow-wrap:anywhere}.person.flat{margin:0 0 10px}
.inline-head{display:inline-flex;align-items:center;gap:8px}
.product h3{margin:.4em 0 .15em}.product img{border-radius:calc(var(--radius)/1.5);aspect-ratio:16/10;object-fit:cover;width:100%}.price{font-family:var(--font-heading);color:var(--accent-strong);font-size:1.2rem;margin:0}.price.big{font-size:2rem}
.product-page{display:grid;grid-template-columns:1fr minmax(280px,360px);gap:32px;align-items:start}.product-hero{border-radius:var(--radius);width:100%}.checkout{position:sticky;top:84px}
.pay-options{border:0;padding:0;margin:0;display:grid;gap:8px}.pay-options legend{margin-bottom:6px;color:var(--muted)}
.pay{display:flex;flex-direction:row!important;align-items:center;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.pay:has(input:checked){border-color:var(--accent)}.pay span{display:flex;flex-direction:column;flex:1}.pay span.badge{flex:none;display:inline-block}
.rank-title{color:color-mix(in srgb,var(--rank) 75%,var(--text));border-bottom:1px solid color-mix(in srgb,var(--rank) 40%,var(--border));padding-bottom:8px}
.staff-card{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.staff-card h3{margin:6px 0 0}.staff-card p{margin:6px 0 0}
.profile{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.profile h1{margin:0 0 .2em;overflow-wrap:anywhere}.profile>div{min-width:0;flex:1}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:18px 0}.facts dt{color:var(--muted);font-size:.82rem}.facts dd{margin:0;overflow-wrap:anywhere}
.form{display:flex;flex-direction:column;gap:14px;align-items:stretch}.form>button,.form>.btn{align-self:flex-start}.center-card .form>button{align-self:stretch}.btn-block{align-self:stretch!important}
label{display:flex;flex-direction:column;gap:4px;font-size:.92rem}.check{flex-direction:row;align-items:flex-start;gap:8px}.check input{margin-top:4px;flex:none}
input,select,textarea{font:inherit;background:var(--surface-alt);color:var(--text);border:1px solid var(--border);border-radius:calc(var(--radius)/1.5);padding:9px 11px;width:100%;min-width:0}
.row input,.row select{width:auto;flex:1 1 120px}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent)}input[type=color]{padding:2px;height:38px;cursor:pointer}textarea{resize:vertical}input.narrow{width:84px;flex:none}
fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:14px}fieldset[hidden]{display:none}legend{padding:0 6px}
.search{display:flex;gap:10px;margin:0 0 20px;max-width:440px}
.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.notice{padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);margin:16px 0}.notice form{display:inline}
.notice-ok{border-color:var(--ok)}.notice-error{border-color:var(--danger)}.notice-warn{border-color:var(--warn)}.notice-info{border-color:var(--accent)}
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
table{width:100%;border-collapse:collapse;font-size:.93rem}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:0}th{color:var(--muted);font-weight:500;font-size:.82rem}td form{margin:2px 0}.details{max-width:280px;overflow-wrap:anywhere;color:var(--muted);font-size:.82rem}
.status{display:inline-block;padding:1px 9px;border-radius:999px;font-size:.8rem;border:1px solid var(--border);white-space:nowrap}.status-delivered,.status-paid{color:var(--ok);border-color:var(--ok)}.status-pending{color:var(--warn);border-color:var(--warn)}.status-failed,.status-refunded,.status-disputed{color:var(--danger);border-color:var(--danger)}
.prose{max-width:760px;min-width:0}.prose h2{margin-top:1.8em}.prose h3{margin-top:1.4em}.prose table{margin:1em 0}.prose blockquote{margin:1em 0;padding:8px 16px;border-left:3px solid var(--warn);background:var(--surface);border-radius:0 var(--radius) var(--radius) 0}.prose blockquote p:last-child{margin:0}
.empty{text-align:center;padding:40px 20px;grid-column:1/-1}.bigcode{font-size:1.5rem;text-align:center;padding:14px;background:var(--surface-alt);border-radius:var(--radius);word-break:break-all}
.qr{display:block;margin:0 auto 12px;background:#fff;border-radius:8px}.codes{columns:2;padding:0;list-style:none}
.plain{list-style:none;padding:0;margin:0 0 12px}.plain li{justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--border)}.plain li:last-child{border:0}.scroll{max-height:320px;overflow:auto}.neg{color:var(--danger);text-decoration:line-through}
.checklist{list-style:none;padding:0;margin:0}.checklist li{padding:6px 0 6px 26px;position:relative}.checklist li::before{content:'';position:absolute;left:2px;top:12px;width:13px;height:13px;border:1px solid var(--muted);border-radius:3px}.checklist li.done::before{background:var(--ok);border-color:var(--ok)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:18px}.stat span{display:block;font-family:var(--font-heading);font-size:1.7rem}.stat small{color:var(--muted)}
.admin-shell{display:grid;grid-template-columns:190px 1fr;gap:28px;padding-top:24px;padding-bottom:48px;flex:1;align-items:start}.admin-main{min-width:0}
.admin-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:84px}.admin-nav a{padding:7px 12px;border-radius:calc(var(--radius)/1.5);color:var(--muted);text-decoration:none}.admin-nav a:hover{background:var(--surface);color:var(--text)}.admin-nav a[aria-current]{background:var(--surface-alt);color:var(--text)}
.thumb{height:44px;width:auto;border-radius:6px;background:var(--surface-alt)}pre{background:var(--surface-alt);padding:14px;border-radius:var(--radius);overflow-x:auto}.danger-zone summary{color:var(--danger);cursor:pointer}details summary{cursor:pointer}details .form{margin-top:10px}
.pager{display:flex;align-items:center;gap:14px;justify-content:center;margin-top:24px}
.footer{border-top:1px solid var(--border);padding:24px 0;margin-top:auto}.footer-in{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer nav{display:flex;gap:16px;flex-wrap:wrap}.footer p{margin:4px 0 0;font-size:.85rem}.footer a{color:var(--muted)}
@media (max-width:820px){
 .nav-toggle{display:block}.nav{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;padding-bottom:14px}.nav.open{display:flex}.nav-gap{display:none}
 .product-page{grid-template-columns:1fr}.checkout{position:static}.hero-gem{display:none}
 .admin-shell{grid-template-columns:1fr}.admin-nav{position:static;flex-direction:row;overflow-x:auto;padding-bottom:6px}.admin-nav a{white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
