@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0d1322;--panel:#172033;--border:#2b3650;--text:#f4f5fb;--muted:#a8b4cb;--accent:#e5b965;--accent2:#ffd88a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 55% -20%,#26334f 0,#0d1322 54%);min-height:100vh;color:var(--text);font:15px 'DM Sans',system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}.nav{height:80px;border-bottom:1px solid #ffffff13;background:#11182acb;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px)}.brand{display:flex;align-items:center;gap:12px}.brand strong{font:800 23px Outfit,system-ui;letter-spacing:1.2px}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:#c1a86d;margin-top:2px}.orb{border:2px solid #c7a25d;border-radius:50%;height:38px;width:38px;display:grid;place-items:center;font-size:26px;color:var(--accent)}.navright{display:flex;gap:15px;align-items:center;color:var(--muted)}.primary{background:linear-gradient(125deg,#e9c477,#dca950);border:0;border-radius:10px;padding:13px 22px;font-weight:800;color:#1b2131;box-shadow:0 9px 30px #0002}.primary:hover{filter:brightness(1.08)}.subtle{border:1px solid var(--border);border-radius:9px;background:#1c2940;color:var(--text);padding:11px 17px}.login-wrap{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:38px 18px}.login-card{width:min(470px,100%);padding:48px 44px;border-radius:20px;background:linear-gradient(155deg,#202a42,#161f33 70%);border:1px solid #36425b;box-shadow:0 30px 90px #0005;text-align:center}.hero-icon{display:grid;place-items:center;margin:auto auto 25px;width:67px;height:67px;color:var(--accent);border:1px solid #b9955555;background:#d6a95819;border-radius:20px;font-size:38px}.eyebrow{font-size:10px;letter-spacing:2.4px;color:var(--accent);font-weight:800}.login-card h1,.pagehead h1{font:700 clamp(34px,5vw,53px)/1.13 Outfit;margin:13px 0 14px}.login-card em,.pagehead em{font-style:normal;color:var(--accent)}p{color:var(--muted);line-height:1.6}.login-card p{margin:0 0 28px}.login-card form{text-align:left}label{display:block;font-size:12px;color:#cdd4e3;font-weight:700}input,select,textarea{border:1px solid #3c4761;background:#10182a;color:#f7f7ff;border-radius:9px;outline:none;width:100%;padding:12px 13px;margin-top:8px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ddb56022}input::placeholder,textarea::placeholder{color:#7887a0}.login-card label{margin-bottom:20px}.full{width:100%;display:flex;justify-content:space-between;margin-top:10px}.footnote{font-size:10px;letter-spacing:2px;color:#7e8ba4;margin-top:29px}.error{font-size:13px;color:#ff9f9f;min-height:18px;padding-top:8px}main{max-width:1300px;margin:auto;padding:46px 28px}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:36px}.pagehead h1{margin:9px 0}.pagehead p{margin:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat{min-height:145px;background:linear-gradient(150deg,#1e2a42,#192337);padding:23px;border:1px solid var(--border);border-radius:14px}.stat span{color:#aebbd0;letter-spacing:1.7px;font-size:10px;font-weight:800}.stat strong{font:750 33px Outfit;display:block;margin:15px 0 3px}.stat small{color:#92a3bd}.collection{margin-top:45px}.sectiontitle{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.sectiontitle h2{font:650 27px Outfit;margin:7px 0 0}.sectiontitle span{color:var(--muted)}.filters{display:grid;grid-template-columns:1fr 180px 170px;gap:10px;margin-bottom:20px}.filters input,.filters select{margin:0}.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.item{background:#192438;border:1px solid var(--border);border-radius:13px;overflow:hidden;display:flex;flex-direction:column}.itemtop{height:135px;background:radial-gradient(circle at 50% 50%,#394765,#222f49);display:grid;place-items:center;position:relative}.itemtop img{height:100%;width:100%;object-fit:contain}.placeholder{color:#d8bb78;font-size:46px}.tag{position:absolute;top:12px;right:12px;background:#121e31cc;border:1px solid #ffffff22;border-radius:50px;font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:6px 10px}.itembody{padding:17px;flex:1}.itembody h3{font:650 19px Outfit;margin:0 0 7px}.itembody p{margin:0;font-size:12px}.itemmeta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pill{font-size:11px;color:#d0d9ee;background:#293750;padding:6px 8px;border-radius:5px}.itembottom{border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:14px 17px}.itembottom b{font:700 19px Outfit;color:var(--accent)}.edit{background:none;border:0;color:#b6c8e5;text-decoration:underline}.empty{text-align:center;padding:65px 20px;border:1px dashed #46536e;border-radius:14px;background:#162035}.empty h3{font:650 27px Outfit;margin:12px}.emptyicon{font-size:42px;color:var(--accent)}footer{border-top:1px solid var(--border);padding:24px 0;margin-top:60px;color:#8696b2;font-size:12px;display:flex;justify-content:space-between;gap:10px}dialog{background:#182239;color:var(--text);border:1px solid #4c5874;border-radius:16px;max-width:650px;width:calc(100% - 25px);max-height:90vh;padding:0;overflow:hidden;box-shadow:0 30px 90px #000a}dialog::backdrop{background:#030817c9}dialog form{padding:25px;overflow-y:auto;overflow-x:hidden;max-height:calc(90vh - 2px);scrollbar-width:thin;scrollbar-color:#6a7590 #182239}.modalhead{display:flex;justify-content:space-between;align-items:start}.modalhead h2{font:650 26px Outfit;margin:8px 0 23px}.x{background:transparent;border:0;color:white;font-size:28px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wide{grid-column:1/-1}.modalactions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}@media(max-width:950px){.stats{grid-template-columns:repeat(2,1fr)}.items{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.nav{height:68px}.brand strong{font-size:20px}.brand small{font-size:8px}.login-card{padding:35px 25px}main{padding:29px 17px}.pagehead{align-items:start;flex-direction:column}.pagehead h1{font-size:35px}.stats{gap:8px}.stat{padding:15px;min-height:125px}.stat strong{font-size:25px}.stat span{font-size:8px}.items{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.formgrid{grid-template-columns:1fr}footer{flex-direction:column}}
/* Keep hidden login and dashboard views out of the layout. */
[hidden] { display: none !important; }

/* Bill's PC form and login refinements */
.tagline-last { display:block; white-space:nowrap; }
.variants { margin:0; border:1px solid #3c4761; border-radius:10px; padding:14px; min-width:0; }
.variants legend { font-size:12px; font-weight:700; color:#cdd4e3; padding:0 7px; }
.variant-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 8px; }
.variant-options label { display:flex; gap:8px; align-items:center; font-size:12px; font-weight:500; cursor:pointer; }
.variant-options input { appearance:auto; accent-color:#e5b965; width:17px; height:17px; margin:0; flex-shrink:0; }
#variant-other { margin-top:15px; }
.fieldhint { display:block; color:#a6b4cb; font-size:11px; font-weight:400; line-height:1.5; margin-top:8px; }
.photo-preview { max-height:170px; max-width:100%; border:1px solid #39465f; border-radius:9px; object-fit:contain; }
.itemtop img { object-fit:contain; }
.itemtop .image-source { position:absolute; left:10px; bottom:10px; background:#121e31e8; color:#d8e0f1; font-size:10px; border-radius:6px; padding:4px 7px; }
@media(max-width:640px){ .variant-options { grid-template-columns:repeat(2,minmax(0,1fr)); } .tagline-last{white-space:normal;} }

/* Clearer item-card metadata and retryable catalog artwork lookup */
.itemquantity { margin:9px 0 0 !important; font-size:12px; color:#c6d2e7; font-weight:600; }
.itemquantity + .itemmeta { margin-top:12px; }
.find-art { position:absolute;right:11px;bottom:10px;background:#e5b965;color:#142039;border:0;
  border-radius:7px;padding:7px 10px;font-size:11px;font-weight:800;box-shadow:0 3px 12px #0004; }
.find-art:hover { filter:brightness(1.08); }
.find-art:disabled { opacity:.7;cursor:wait; }
.itemtop .image-source { max-width:calc(100% - 115px); overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
