:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#100c16;color:#faf5ff;--gradient:linear-gradient(115deg,#ed2e54,#9139e9)}*{box-sizing:border-box}body{margin:0}main{max-width:1000px;margin:auto;padding:26px 22px 130px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}header a{font-size:32px;font-weight:850;letter-spacing:-1px;color:white;text-decoration:none}header span,.muted{color:#baadca;font-size:14px}h1{font-size:30px}button,input,textarea{font:inherit}button,.button{border:1px solid #44324e;background:#261c30;color:white;border-radius:14px;padding:12px 16px;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.5}.primary,.active{background:var(--gradient);border-color:transparent}input,textarea{background:#19121f;border:1px solid #44324e;border-radius:15px;padding:15px;color:white;width:100%}.categories{display:flex;gap:8px;overflow:auto;padding:16px 0 24px}.categories button{white-space:nowrap;border-radius:30px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card,.panel{background:#201827;border:1px solid #392b43;border-radius:24px;overflow:hidden}.panel{padding:24px;margin:18px 0}.art{height:170px;display:grid;place-items:center;font-size:58px;background:radial-gradient(ellipse at 80% 10%,#8e305c88,transparent),linear-gradient(140deg,#372446,#211728)}.open{border:0;padding:0;width:100%;border-radius:0;text-align:left}.body{padding:16px}.body h2{font-size:18px;margin:0}.price{font-size:23px;font-weight:750}.actions,.qty{display:flex;gap:8px;align-items:center}.actions .primary{flex:1}.row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 0;border-bottom:1px solid #44324e}.qty button{padding:8px 13px}.full{width:100%;text-align:center}label{display:block;margin:18px 0}label input,label textarea{margin-top:8px}nav{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:700px;background:#271c32ee;backdrop-filter:blur(18px);padding:10px;display:flex;border:1px solid #594064;border-radius:23px;gap:4px}nav button{flex:1;border:0;font-size:14px;padding:13px 3px}.empty{text-align:center;padding:70px 10px;color:#baadca}dialog{width:min(500px,94%);border:1px solid #594064;background:#24192d;color:white;border-radius:24px;padding:25px}dialog::backdrop{background:#000b}#toast{position:fixed;top:12px;left:50%;transform:translateX(-50%);background:#f5eaff;color:#281334;padding:15px 22px;border-radius:16px;z-index:10}:focus-visible{outline:3px solid #d7a6ff;outline-offset:3px}@media(max-width:650px){main{padding:20px 15px 125px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.art{height:140px;font-size:48px}.body{padding:12px}.body h2{font-size:16px}.actions button{padding:10px}.row{flex-wrap:wrap}header span{max-width:110px;text-align:right}}
.profile-page{max-width:780px;margin:auto}.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#19171e;border:1px solid #332c3b;border-radius:28px;padding:26px;margin-bottom:22px;min-height:240px}.profile-person{display:flex;align-items:center;gap:18px;min-width:0}.avatar{flex-shrink:0;width:80px;height:80px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--gradient);font-size:30px;font-weight:750}.avatar img{width:100%;height:100%;object-fit:cover}.person-text{min-width:0}.person-text h1{font-size:25px;margin:0 0 6px;overflow-wrap:anywhere}.copy-id{padding:0;border:0;background:none;color:#b9afc4;font-size:14px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.copy-id svg{width:17px;height:17px}.loyalty{display:flex;flex-direction:column;align-items:center;gap:8px;background:#18151d;border:1px solid #3c2b46;border-radius:24px;min-width:150px;padding:20px 14px}.loyalty-star{display:grid;place-items:center;width:48px;height:48px;background:var(--gradient);border-radius:50%;font-size:30px}.loyalty b{font-size:14px;color:#c8b9d6}.loyalty strong{font-size:22px}.loyalty-foot{border-top:1px solid #392d43;padding-top:12px;margin-top:5px;font-size:12px;color:#b9afc4}.profile-orders{width:100%;display:flex;align-items:center;text-align:left;gap:18px;padding:24px;background:#19171e;border:1px solid #332c3b;border-radius:26px;margin-bottom:18px}.profile-orders b{font-size:21px;display:block}.profile-orders small{font-size:16px;color:#b9afc4;display:block;margin-top:5px}.profile-icon{display:grid;place-items:center;background:#692e672e;border-radius:18px;width:58px;height:58px;color:#e26abb}.profile-icon svg{width:30px;height:30px}.chevron{margin-left:auto;font-size:30px;color:#b9afc4}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-actions button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;min-height:145px;border-radius:26px;background:#19171e;border:1px solid #332c3b;font-size:19px}.profile-actions svg{width:36px;height:36px;color:#c773ee}.profile-actions button:first-child svg{color:#f06c9d}.profile-actions button:last-child svg{color:#b9afc4}.recent-section{margin-top:34px}.recent-section h2{font-size:18px;font-weight:500;color:#b9afc4;margin-bottom:18px}.recent-track{display:flex;gap:16px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x proximity}.recent-card{flex:0 0 180px;padding:12px;border-radius:24px;text-align:left;background:#19171e;scroll-snap-align:start;display:flex;flex-direction:column;gap:14px}.recent-card .art{width:100%;height:150px;border-radius:18px;font-size:48px}.recent-card>span{font-size:16px;min-height:44px}.recent-card strong{color:#ed76c5;font-size:20px}.recent-empty{border:1px dashed #44324e;border-radius:20px;padding:22px;color:#b9afc4;line-height:1.6}.recent-empty button{display:block;margin-top:16px}nav{padding-bottom:max(10px,env(safe-area-inset-bottom))}@media(max-width:480px){.profile-hero{padding:20px 14px;gap:12px;min-height:210px}.profile-person{gap:10px;flex-wrap:wrap}.avatar{width:62px;height:62px}.person-text h1{font-size:20px}.loyalty{min-width:125px;padding:16px 10px}.loyalty-foot{max-width:105px;text-align:center}.profile-orders{padding:20px}.profile-actions button{min-height:132px}.recent-card{flex-basis:165px}}@media(max-width:350px){.profile-hero{flex-direction:column;align-items:stretch}.profile-person{flex-wrap:nowrap}.loyalty{margin-top:10px}.profile-actions{gap:10px}}
.art img{width:100%;height:100%;object-fit:contain;background:white}.product-photo{aspect-ratio:1;background:white;border-radius:22px;display:grid;place-items:center;overflow:hidden;margin-top:18px;color:#64596b}.product-photo img{width:100%;height:100%;object-fit:contain}.category-badge{display:inline-block;background:#f5efff;color:#2d1a3c;border-radius:30px;padding:6px 16px}.product-description{white-space:pre-wrap;line-height:1.6}.variant-options{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.variant-options button{min-height:60px}.variant-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:center;border-bottom:1px solid #44324e;padding:12px 0}input[type=checkbox]{width:auto}select{width:100%;padding:14px;background:#21172a;color:white;border:1px solid #44324e;border-radius:12px}#detail{max-height:90dvh;overflow:auto}@media(max-width:650px){.variant-row{grid-template-columns:1fr 1fr}#detail{width:96%;padding:18px}}
.filter-bar{display:grid;grid-template-columns:2fr 1.4fr 1fr 1fr;align-items:center;gap:12px;margin-bottom:24px}.filter-bar label{margin:0;font-size:14px}.filter-bar input,.filter-bar select{min-width:0}.gallery-thumbs,#photo-list{display:flex;gap:10px;overflow:auto;margin:16px 0}.gallery-thumbs button{padding:4px;border-radius:12px}.gallery-thumbs button.active{border-color:#c773ee;box-shadow:0 0 0 1px #c773ee}.gallery-thumbs img{width:64px;height:64px;object-fit:contain;background:white;border-radius:8px}.photo-tile{flex:0 0 130px;display:flex;flex-direction:column;gap:8px}.photo-tile img{width:130px;height:110px;object-fit:contain;background:white;border-radius:14px}.photo-tile button{font-size:12px;padding:8px}.variant-row{grid-template-columns:2fr 1fr 1fr 1fr auto}.card{transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .3s ease}.card:hover{border-color:#9750b6;transform:translateY(-2px)}.card h2{line-height:1.4;min-height:2.8em}.card .price{color:#f4a2d7}.product-photo{max-height:55dvh}.panel h2{letter-spacing:-.5px}.row[hidden]{display:none!important}#admin-search{margin:12px 0 20px}.profile-page .recent-card .art{flex-shrink:0}@media(max-width:650px){.filter-bar{grid-template-columns:1fr 1fr;gap:10px}.variant-row{grid-template-columns:1fr 1fr}.card:hover{transform:none}}@media(prefers-reduced-motion:reduce){.card{transition:none;transform:none}}
.product-view main{max-width:1000px}.product-page{width:100%;padding-bottom:24px}.product-page .product-photo{width:100%;max-height:none;aspect-ratio:1.2;border-radius:26px}.product-page .product-photo img{min-height:0;max-height:100%;object-fit:contain}.product-page h1{font-size:clamp(28px,5vw,42px);line-height:1.15}.product-page>.price{font-size:32px;color:#f4a2d7}.product-back{margin-bottom:6px}.product-page>.primary{margin-top:16px;min-height:56px}@media(max-width:650px){.product-view main{padding-left:14px;padding-right:14px}.product-page .product-photo{aspect-ratio:1;border-radius:22px}.product-page .variant-options{gap:10px}.product-page .variant-options button{flex:1 0 120px}}
/* Admin panel layout lives in admin.css. */
.stock-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:16px}.stock-numbers span{display:flex;flex-direction:column;color:#b9afc4;gap:8px}.stock-numbers b{font-size:24px;color:#f4a2d7}
