#toasts{position:fixed;right:10px;top:5px;z-index:1001}
#toasts > *{background-color:#000A;border-radius:10px;clear:both;color:white;cursor:zoom-out;float:right;margin-top:5px;padding:3px 6px}
#cookiewall{background:#1a1a1a;border-radius:8px;bottom:16px;box-shadow:0 8px 32px #0004;color:#fff;font-size:13px;left:16px;line-height:1.5;max-width:360px;padding:14px 16px;position:fixed;right:16px;z-index:9999}
#cookiewall p{margin:0 0 10px}
#cookiewall .actions{display:flex;gap:8px;justify-content:flex-end}
#cookiewall button{border-radius:4px;border:0;cursor:pointer;font-size:12px;padding:6px 12px}
#cookiewall button.ghost{background:#444;color:#fff}
#cookiewall button.primary{background:#fff;color:#1a1a1a;font-weight:600}
:root{--background:#09090d;--foreground:#f7f4ee;--muted:#b7b0a3;--accent:#ff6b35;--accent2:#5dd6ff;--accent3:#f7cf4f;--panel:rgba(255, 255, 255, 0.06);--border:rgba(255, 255, 255, 0.12);--shadow:0 30px 80px rgba(0, 0, 0, 0.45)}
html{background:var(--background);color:var(--foreground);font-family:"Space Grotesk", "Helvetica Neue", sans-serif;min-height:100dvh}
body{margin:0;background:radial-gradient(circle at top, rgba(255, 107, 53, 0.3), transparent 55%), radial-gradient(circle at 20% 20%, rgba(93, 214, 255, 0.35), transparent 45%), radial-gradient(circle at 80% 10%, rgba(247, 207, 79, 0.3), transparent 50%), #0b0b12;color:var(--foreground)}
*{box-sizing:border-box}
a{color:inherit;text-decoration:none}
#page{min-height:100dvh;display:flex;flex-direction:column;gap:60px;padding:40px clamp(20px, 5vw, 72px) 60px;position:relative;overflow:hidden}
#page.homeMode{padding:0;gap:0}
#glow{position:absolute;inset:-30% -10% auto auto;width:420px;height:420px;background:radial-gradient(circle, rgba(93, 214, 255, 0.4), transparent 70%);filter:blur(10px);animation:float 12s ease-in-out infinite;pointer-events:none;z-index:0}
#page > header, #page > section, #page > footer{position:relative;z-index:1}
#lightbox{position:fixed;inset:0;background:rgba(5, 5, 10, 0.9);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.25s ease;z-index:9000}
#lightbox.open{opacity:1;pointer-events:auto}
#lightboxInner{display:flex;flex-direction:column;align-items:center;gap:20px;max-width:min(900px, 92vw)}
#lightboxImg{max-width:100%;max-height:72vh;border-radius:16px;box-shadow:0 30px 80px rgba(0, 0, 0, 0.55);display:block}
#lightboxPanel{background:rgba(0, 0, 0, 0.6);border:1px solid var(--border);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:16px;width:100%;backdrop-filter:blur(12px);flex-wrap:wrap}
#lightboxName{font-weight:700;flex:1 1 auto}
#lightboxPrice{color:var(--accent3);font-weight:700;font-size:1.05rem}
#lightboxVat{color:var(--muted);font-size:0.82rem;flex-basis:100%;margin-top:-8px}
#lightboxCartForm{display:contents}
#lightboxCartForm button, #lightboxGoCart{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.04);color:var(--foreground);font-weight:600;cursor:pointer;white-space:nowrap;transition:background 0.18s ease}
#lightboxCartForm button{background:linear-gradient(135deg, var(--accent3), var(--accent));border-color:transparent;color:#111}
#lightboxCartForm button:hover{filter:brightness(1.08)}
#lightboxGoCart:hover{background:rgba(255, 255, 255, 0.12)}
#lightboxClose{position:absolute;top:20px;right:24px;background:rgba(255, 255, 255, 0.12);color:var(--foreground);border:1px solid var(--border);border-radius:999px;padding:8px 16px;cursor:pointer;font-size:1.1rem;transition:background 0.18s ease}
#lightboxClose:hover{background:rgba(255, 255, 255, 0.22)}
#top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
#top.topHome{justify-content:center;position:absolute;top:14px;left:50%;transform:translateX(-50%);width:calc(100% - 24px);z-index:4}
#brand{display:flex;align-items:center;gap:16px}
.logoMark{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg, var(--accent), var(--accent2));display:grid;place-items:center;font-weight:700;letter-spacing:0.08em;flex-shrink:0}
#title{font-size:1.2rem;font-weight:600}
#tagline{color:var(--muted);font-size:0.9rem}
#menu{display:flex;gap:12px;flex-wrap:wrap;background:rgba(0, 0, 0, 0.35);padding:8px 14px;border-radius:999px;border:1px solid var(--border);backdrop-filter:blur(18px);align-items:center}
#menuToggle{display:none;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.08);color:var(--foreground);font-weight:600;cursor:pointer;font-size:1.1rem}
.pill{padding:8px 16px;border-radius:999px;font-size:0.9rem;color:var(--muted);transition:all 0.2s ease}
.pill:hover{color:var(--foreground);background:rgba(255, 255, 255, 0.12)}
.pill.active{color:#101015;background:linear-gradient(120deg, var(--accent3), var(--accent));box-shadow:0 8px 18px rgba(255, 107, 53, 0.35)}
.cartPill{display:inline-flex;align-items:center;gap:7px;color:var(--foreground)}
.cartBadge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;font-size:0.72rem;font-weight:700;background:rgba(255, 255, 255, 0.12);color:var(--muted)}
.cartBadge.active{background:var(--accent);color:#111}
#content{display:flex;flex-direction:column;gap:40px;flex:1 1 auto}
#content.homeContent{flex:1;gap:0;min-height:100dvh;position:relative}
#waterfallCollage{position:relative;height:100dvh;overflow:hidden}
#homeHero{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:3;pointer-events:none;background:linear-gradient(to bottom, rgba(9, 9, 13, 0.55) 0%, transparent 50%, rgba(9, 9, 13, 0.5) 100%)}
#heroContent{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;pointer-events:auto;animation:heroFadeOut 2.5s ease 10s forwards}
#waterfallCollage:not(.ready) .fallShot{animation:none;opacity:0}
#heroName{font-family:"Fraunces", "Times New Roman", serif;font-size:clamp(3.2rem, 9vw, 7rem);font-weight:800;line-height:1;letter-spacing:-0.02em;background:linear-gradient(135deg, var(--foreground) 40%, var(--accent3));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
#heroSub{font-size:clamp(1rem, 2.5vw, 1.3rem);color:var(--muted);letter-spacing:0.04em;max-width:460px}
.heroCta{margin-top:12px;display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:999px;background:rgba(0, 0, 0, 0.45);border:1px solid rgba(255, 255, 255, 0.25);color:var(--foreground);font-weight:600;font-size:0.95rem;backdrop-filter:blur(10px);transition:background 0.2s ease, border-color 0.2s ease, transform 0.2s ease}
.heroCta:hover{background:rgba(255, 107, 53, 0.2);border-color:var(--accent);transform:translateY(-2px)}
.fallShot{position:absolute;left:var(--x);top:-240px;width:var(--size);transform:translateX(-50%) rotate(var(--rot));animation:waterfall var(--duration) ease-in-out infinite;animation-delay:var(--delay);transition:transform 0.22s ease, filter 0.22s ease;filter:brightness(0.88);opacity:0;overflow:hidden;border-radius:14px;z-index:1}
.fallShot img{width:100%;height:auto;object-fit:cover;display:block;border:1px solid rgba(255, 255, 255, 0.1);box-shadow:0 12px 30px rgba(0, 0, 0, 0.4)}
.fallShot:hover{animation-play-state:paused;transform:translateX(-50%) rotate(0deg) scale(1.05);filter:brightness(1);z-index:4}
#categoryHeader{display:flex;flex-direction:column;gap:6px}
#categoryHeader h2{font-family:"Fraunces", "Times New Roman", serif;font-size:clamp(1.8rem, 3vw, 2.8rem);margin:0;line-height:1.1}
#categoryHeader p{margin:0;color:var(--muted)}
#gallery{display:grid;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));gap:18px;align-items:start}
.shot{margin:0;background:rgba(255, 255, 255, 0.02);border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:0 14px 24px rgba(0, 0, 0, 0.22);transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;width:100%;animation:fadeIn 0.45s ease both}
.shot:hover{transform:translateY(-3px);border-color:rgba(255, 255, 255, 0.3);box-shadow:0 18px 30px rgba(0, 0, 0, 0.3)}
.shotLink{display:block}
.shot img{width:100%;height:auto;display:block}
#cartPage{display:grid;grid-template-columns:1fr 300px;gap:32px;width:100%;align-items:start}
#cartPage h2{grid-column:1 / -1;font-family:"Fraunces", "Times New Roman", serif;font-size:clamp(1.6rem, 3vw, 2.4rem);margin:0}
#cartEmpty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
#cartGrid{display:grid;gap:14px}
.cartItem{display:grid;grid-template-columns:72px 1fr auto;gap:14px;padding:14px;border-radius:14px;background:var(--panel);border:1px solid var(--border);align-items:center;animation:fadeIn 0.4s ease both}
.cartItem img{width:72px;height:56px;object-fit:cover;border-radius:8px}
.cartMeta{display:flex;flex-direction:column;gap:4px}
.cartName{font-weight:600}
.cartPrice{color:var(--accent3);font-size:0.95rem}
.cartRemoveForm{margin:0}
.cartRemoveBtn{padding:7px 10px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;transition:background 0.18s ease, color 0.18s ease, border-color 0.18s ease}
.cartRemoveBtn:hover{background:rgba(255, 90, 90, 0.15);border-color:rgba(255, 120, 120, 0.4);color:#ffb2b2}
#cartSummary{position:sticky;top:24px;display:grid;gap:16px;padding:20px;border-radius:18px;background:var(--panel);border:1px solid var(--border)}
.cartTotal{font-size:1.1rem;font-weight:700;display:flex;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--border)}
.cartTotalAmount{color:var(--accent3)}
.checkoutActions{display:flex;flex-direction:column;gap:10px}
.checkoutActions .cta{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:14px;font-weight:700;letter-spacing:0.01em;border:1px solid transparent;transition:transform 0.16s ease, filter 0.16s ease;text-align:center}
.checkoutActions .cta:hover{transform:translateY(-2px);filter:brightness(1.05)}
.checkoutBackBtn{background:rgba(255, 255, 255, 0.08);border-color:rgba(255, 255, 255, 0.2);color:var(--muted)}
.checkoutMainBtn{background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;box-shadow:0 10px 22px rgba(255, 107, 53, 0.3)}
#checkoutPage{display:grid;gap:20px;width:100%;max-width:640px}
#checkoutPage h2{font-family:"Fraunces", "Times New Roman", serif;font-size:clamp(1.6rem, 3vw, 2.4rem);margin:0}
#successIcon{width:64px;height:64px;border-radius:50%;background:rgba(40, 170, 90, 0.15);border:2px solid rgba(99, 224, 144, 0.45);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#b7ffd8}
#checkoutOrderList{display:grid;gap:8px;padding:16px;border-radius:14px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
#checkoutThumbGrid{display:grid;grid-template-columns:repeat(auto-fill, minmax(110px, 1fr));gap:10px}
.checkoutThumb{margin:0;padding:8px;border-radius:12px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
.checkoutThumb img{display:block;width:100%;height:auto;border-radius:8px}
.checkoutRow{display:flex;justify-content:space-between;gap:12px;color:var(--muted)}
.checkoutRow.total{color:var(--foreground);font-weight:700;padding-top:8px;border-top:1px solid var(--border)}
.formSection{display:grid;gap:10px}
.formSectionLabel{font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--border)}
#checkoutForm{display:grid;gap:16px;max-width:640px}
#checkoutForm input, #checkoutForm select, #checkoutForm textarea{width:100%;padding:11px 14px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.04);color:var(--foreground);font-size:0.95rem;transition:border-color 0.18s ease}
#checkoutForm input:focus, #checkoutForm select:focus, #checkoutForm textarea:focus{border-color:rgba(255, 107, 53, 0.5);outline:none}
#checkoutForm textarea{resize:vertical;min-height:80px}
#checkoutForm button[type=submit]{padding:14px 20px;border-radius:14px;border:0;background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;font-weight:700;font-size:1rem;cursor:pointer;transition:filter 0.18s ease, transform 0.18s ease}
#checkoutForm button[type=submit]:hover{filter:brightness(1.06);transform:translateY(-1px)}
.checkoutTypeSwitch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.03)}
.checkoutTypeOption{position:relative;display:grid}
.checkoutTypeOption input{position:absolute;inset:0;opacity:0;cursor:pointer}
.checkoutTypeOption span{display:flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:10px;color:var(--muted);font-weight:600;border:1px solid transparent;transition:background 0.18s ease, color 0.18s ease, border-color 0.18s ease}
.checkoutTypeOption input:checked + span{color:#111;background:linear-gradient(135deg, var(--accent3), var(--accent));border-color:rgba(255, 255, 255, 0.2)}
.checkoutBusinessFields{display:none}
.checkoutBusinessFields.open{display:grid;gap:8px}
.checkoutMethodGrid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:8px}
.checkoutMethodOption{position:relative;display:grid}
.checkoutMethodOption input{position:absolute;inset:0;opacity:0;cursor:pointer}
.checkoutMethodOption span{display:flex;align-items:center;justify-content:center;padding:12px 14px;border-radius:12px;color:var(--muted);font-weight:600;border:1px solid var(--border);background:rgba(255, 255, 255, 0.03);transition:background 0.18s ease, color 0.18s ease, border-color 0.18s ease}
.checkoutMethodOption input:checked + span{color:#111;background:linear-gradient(135deg, var(--accent3), var(--accent));border-color:rgba(255, 255, 255, 0.2)}
.checkoutTerms{margin:0;font-size:0.88rem;color:var(--muted)}
.checkoutConsent{display:flex;align-items:flex-start;gap:10px;font-size:0.88rem;color:var(--muted);cursor:pointer}
.checkoutConsent input[type=checkbox]{margin-top:2px;flex-shrink:0;width:16px;height:16px;cursor:pointer}
.checkoutConsent a{color:var(--accent2)}
.checkoutDownloadBtn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:14px;background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;font-weight:700;font-size:1rem;box-shadow:0 10px 22px rgba(255, 107, 53, 0.3);transition:filter 0.18s ease, transform 0.18s ease}
.checkoutDownloadBtn:hover{filter:brightness(1.06);transform:translateY(-2px)}
.checkoutError{margin:0;color:#ffb2b2;font-size:0.92rem}
.cta{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:14px;font-weight:700;background:rgba(255, 255, 255, 0.08);border:1px solid rgba(255, 255, 255, 0.2);color:var(--foreground);transition:background 0.18s ease, transform 0.18s ease}
.cta:hover{background:rgba(255, 255, 255, 0.14);transform:translateY(-1px)}
.priceLabel{font-size:0.78rem;color:var(--muted)}
#foot{color:var(--muted);font-size:0.88rem;border-top:1px solid var(--border);padding-top:20px;margin-top:auto;text-align:center;width:100%}
#foot a{color:var(--accent2);transition:color 0.18s ease}
#foot a:hover{color:var(--foreground)}
#adminShell{display:grid;grid-template-columns:240px 1fr;min-height:100dvh;height:100dvh;background:#0c0c14}
#adminNav{padding:32px 24px;background:#11111d;display:flex;flex-direction:column;gap:14px}
#adminBrand{font-weight:700;margin-bottom:20px}
.adminLink{padding:10px 14px;border-radius:12px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border);transition:background 0.18s ease}
.adminLink:hover{background:rgba(255, 255, 255, 0.1)}
#adminMain{padding:28px clamp(18px, 4vw, 48px);color:var(--foreground);overflow:auto;display:flex;flex-direction:column;gap:24px}
#adminHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto}
#adminBody{display:flex;flex-direction:column;gap:24px;align-items:flex-start;flex:1 1 auto}
.adminNote{color:var(--accent3);font-size:0.9rem}
.adminGrid{display:inline-grid;grid-template-columns:repeat(5, minmax(0, 1fr));gap:16px;width:100%}
.adminCard{background:var(--panel);border-radius:18px;border:1px solid var(--border);padding:18px}
.cardTitle{color:var(--muted);font-size:0.85rem}
.cardValue{font-size:1.8rem;font-weight:700;margin-top:10px}
.cardSub{margin-top:6px;color:var(--muted);font-size:0.9rem}
.adminTopCategories{margin-top:16px;display:grid;gap:10px;background:var(--panel);border-radius:18px;border:1px solid var(--border);padding:18px}
.adminTopCategories h3{margin:0}
.topCategoryList{display:grid;gap:8px}
.topCategoryRow{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
#uploadForm, #categoryForm, #productCategoryForm, #productImageForm, #productFilterForm, #bulkUploadForm, #watermarkForm{display:grid;gap:16px;background:var(--panel);padding:22px;border-radius:18px;border:1px solid var(--border);max-width:520px;width:100%}
#uploadForm label, #categoryForm label, #productCategoryForm label, #productImageForm label, #productFilterForm label, #bulkUploadForm label, #watermarkForm label{display:grid;gap:8px;font-size:0.9rem}
#uploadForm input, #uploadForm select, #categoryForm input, #productCategoryForm input, #productImageForm select, #productFilterForm select, #bulkUploadForm input, #bulkUploadForm select, #watermarkForm input{padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground)}
#uploadForm button, #categoryForm button, #productCategoryForm button, #productImageForm button, #productFilterForm button, #bulkUploadForm button, #watermarkForm button{padding:12px 18px;border-radius:12px;border:0;background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;font-weight:600;cursor:pointer}
#productImageForm .input.image img{max-width:220px;border-radius:12px}
#productImageForm .image-input{display:block;width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground)}
#categoryList{margin-top:24px;display:grid;gap:10px}
#productCategoryList{display:grid;gap:12px;max-width:520px;width:100%}
.adminOrders{display:grid;gap:12px;width:100%;max-width:760px}
.orderFilters{display:flex;flex-wrap:wrap;gap:8px}
.orderCard{display:grid;gap:10px;padding:14px;border-radius:14px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
.orderHead{display:flex;justify-content:space-between;gap:10px}
.orderHeadCompact{display:grid;gap:8px}
.orderHeadMain{display:flex;align-items:center;justify-content:space-between;gap:10px}
.orderHeadSub{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:0.9rem}
.orderStatus{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:0.78rem;font-weight:700;letter-spacing:0.02em;border:1px solid var(--border)}
.orderStatus.status-paid{color:#b7ffd8;background:rgba(40, 170, 90, 0.2);border-color:rgba(99, 224, 144, 0.45)}
.orderStatus.status-pending{color:#ffe3ae;background:rgba(210, 150, 40, 0.2);border-color:rgba(235, 185, 100, 0.5)}
.orderStatus.status-unpaid, .orderStatus.status-expired, .orderStatus.status-failed, .orderStatus.status-canceled{color:#ffb2b2;background:rgba(190, 70, 70, 0.2);border-color:rgba(255, 120, 120, 0.45)}
.orderDetails{display:grid;gap:10px}
.orderDetails summary{cursor:pointer;color:var(--muted);font-weight:600;user-select:none}
.orderMeta{display:grid;gap:4px;color:var(--muted);word-break:break-word}
.orderPhotos{color:var(--foreground);font-size:0.9rem}
.orderError{color:#ffb2b2;font-size:0.9rem}
.orderLinks{display:flex;flex-wrap:wrap;gap:8px}
.orderLinks form{margin:0}
.orderLinks button{padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.08);color:var(--foreground);font-weight:600;cursor:pointer}
.orderLinks button.danger{background:rgba(255, 90, 90, 0.18);border-color:rgba(255, 120, 120, 0.5)}
.orderStatusBar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.orderStatusTile{flex:1;min-width:110px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);text-align:center}
.osTileNum{font-size:1.8rem;font-weight:700;line-height:1}
.osTileLabel{font-size:0.78rem;margin-top:4px;opacity:0.75}
.tileGreen{background:rgba(40, 170, 90, 0.15);border-color:rgba(99, 224, 144, 0.35);color:#b7ffd8}
.tileAmber{background:rgba(210, 150, 40, 0.15);border-color:rgba(235, 185, 100, 0.4);color:#ffe3ae}
.tileRed{background:rgba(190, 70, 70, 0.15);border-color:rgba(255, 120, 120, 0.35);color:#ffb2b2}
.tileBlue{background:rgba(60, 130, 220, 0.15);border-color:rgba(130, 190, 255, 0.35);color:#b8d8ff}
.orderCardHead{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.orderCardLeft{display:flex;align-items:center;gap:10px}
.orderCardRight{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:0.9rem}
.orderStatusBadge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:0.8rem;font-weight:700;letter-spacing:0.03em;border:1px solid var(--border)}
.orderStatusBadge.status-paid{color:#b7ffd8;background:rgba(40, 170, 90, 0.2);border-color:rgba(99, 224, 144, 0.45)}
.orderStatusBadge.status-pending, .orderStatusBadge.status-open{color:#ffe3ae;background:rgba(210, 150, 40, 0.2);border-color:rgba(235, 185, 100, 0.5)}
.orderStatusBadge.status-unpaid, .orderStatusBadge.status-expired, .orderStatusBadge.status-failed, .orderStatusBadge.status-canceled{color:#ffb2b2;background:rgba(190, 70, 70, 0.2);border-color:rgba(255, 120, 120, 0.45)}
.orderNum{font-size:0.95rem}
.orderCustomer{font-weight:600;color:var(--foreground)}
.orderAmount{font-weight:600}
.orderDate{font-family:monospace;font-size:0.85rem}
.inlineSync{margin:0}
.btnSync{padding:4px 12px;border-radius:8px;border:1px solid rgba(99, 224, 144, 0.5);background:rgba(40, 170, 90, 0.2);color:#b7ffd8;font-size:0.82rem;font-weight:600;cursor:pointer}
.adminThumb{cursor:zoom-in;transition:opacity 0.15s}
.adminThumb:hover{opacity:0.85}
#adminLightbox{display:none;position:fixed;inset:0;background:rgba(0, 0, 0, 0.88);z-index:9999;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:24px}
#adminLightbox.open{display:flex}
#adminLightboxImg{max-width:100%;max-height:calc(100dvh - 80px);border-radius:10px;object-fit:contain}
#adminLightboxName{color:rgba(255, 255, 255, 0.7);font-size:0.9rem}
#adminLightboxClose{position:fixed;top:16px;right:20px;background:rgba(255, 255, 255, 0.15);border:none;color:#fff;font-size:1.2rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}
.adminInvoices{display:grid;gap:16px;width:100%;max-width:760px}
.invoiceYear h3{margin:0 0 8px;font-size:1rem;color:var(--muted)}
.invoiceFileList{display:grid;gap:6px}
.invoiceFileRow{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;border-radius:10px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
.invoiceFileName{font-family:monospace;font-size:0.88rem;color:var(--muted)}
.adminCustomers{display:grid;gap:12px;width:100%;max-width:760px}
.customerCard{display:grid;gap:8px;padding:14px;border-radius:14px;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border)}
.customerHead{display:flex;justify-content:space-between;gap:10px}
.customerMeta{display:grid;gap:4px;color:var(--muted)}
.categoryRow{display:flex;gap:12px;align-items:center;justify-content:space-between;background:rgba(255, 255, 255, 0.04);border:1px solid var(--border);border-radius:14px;padding:12px}
.categoryRenameForm{display:flex;gap:10px;flex:1}
.categoryRenameForm input{flex:1;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground)}
.categoryRenameForm button, .categoryDeleteForm button{padding:8px 12px;border-radius:10px;border:0;background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;font-weight:600;cursor:pointer}
.categoryDeleteForm button{background:rgba(255, 255, 255, 0.12);color:var(--foreground)}
#productImageGrid{display:flex;flex-wrap:wrap;gap:18px;align-items:start}
.adminProductsBulkForm{display:grid;gap:16px;width:100%}
.adminBulkActions{display:flex;gap:10px;flex-wrap:wrap}
.adminBulkActions button{padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.04);color:var(--foreground);font-weight:600;cursor:pointer}
.adminBulkActions .danger{background:rgba(255, 255, 255, 0.12);color:var(--foreground)}
#bulkReviewGrid{display:flex;flex-wrap:wrap;gap:18px;align-items:start;width:100%}
.bulkReviewHeader h2{margin:0;font-family:"Fraunces", "Times New Roman", serif}
.bulkReviewHeader p{margin:6px 0 0;color:var(--muted)}
.productShot{margin:0;background:var(--panel);border-radius:18px;border:1px solid var(--border);padding:14px;display:grid;gap:12px;width:fit-content}
.productShot.selectable{position:relative}
.productSelect{position:absolute;top:10px;right:10px;display:inline-flex;gap:6px;align-items:center;background:rgba(0, 0, 0, 0.55);border:1px solid var(--border);border-radius:999px;padding:5px 10px;font-size:0.78rem;z-index:1}
.productSelect input{margin:0;accent-color:#ff6b35}
.productShot img{width:auto;max-width:100%;height:auto;border-radius:12px;margin:0 auto}
.renameForm, .deleteForm, .bulkReviewForm{display:grid;gap:8px}
.bulkReviewForm{width:100%}
.renameForm input, .bulkReviewForm input, .bulkReviewForm select, .adminProductsBulkForm input, .adminProductsBulkForm select{padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground)}
.renameForm button, .deleteForm button, .bulkReviewForm button{padding:8px 12px;border-radius:10px;border:0;background:linear-gradient(135deg, var(--accent3), var(--accent));color:#111;font-weight:600;cursor:pointer}
.bulkSaveAll{padding:12px 24px;border-radius:12px;font-size:1rem;font-weight:700}
.bulkSaveBar{position:sticky;bottom:0;padding:14px 0;background:linear-gradient(to top, rgba(9, 9, 13, 0.95) 70%, transparent);display:flex;justify-content:flex-end}
#bulkUploadSection{margin-top:24px}
#bulkUploadSection h3{margin:0 0 12px;font-size:1.05rem}
.bulkDropZone{border:2px dashed var(--border);border-radius:16px;padding:36px 24px;text-align:center;cursor:pointer;transition:border-color 0.2s, background 0.2s;background:rgba(255, 255, 255, 0.025)}
.bulkDropZone.dragover{border-color:var(--accent2);background:rgba(93, 214, 255, 0.07)}
.bulkDropInner{pointer-events:none}
.bulkDropIcon{font-size:2.2rem;margin-bottom:8px}
.bulkDropText{color:var(--muted);font-size:0.95rem}
.bulkFileCount{margin-top:6px;color:var(--accent2);font-weight:600;font-size:0.9rem}
.bulkPreviewGrid{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.bulkPreviewGrid img{width:80px;height:60px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}
.bulkProgressWrap{margin-top:12px;height:8px;background:rgba(255, 255, 255, 0.1);border-radius:999px;overflow:hidden;position:relative}
.bulkProgressBar{height:100%;background:linear-gradient(90deg, var(--accent2), var(--accent));border-radius:999px;width:0%;transition:width 0.2s}
.bulkProgressLabel{text-align:center;font-size:0.85rem;color:var(--muted);margin-top:6px}
#bulkSubmitBtn:disabled{opacity:0.5;cursor:not-allowed}
.bulkAddCategoryRow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.bulkAddCategoryRow input{padding:7px 10px;border-radius:10px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground);font-size:0.9rem;flex:1;min-width:160px}
.bulkAddCategoryRow button{padding:7px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.08);color:var(--foreground);font-weight:600;cursor:pointer}
.newCatFeedback{font-size:0.85rem;color:var(--accent2)}
.bulkBulkAssign{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.bulkBulkAssign span{color:var(--muted);font-size:0.9rem}
.bulkBulkAssign select{padding:7px 10px;border-radius:10px;border:1px solid var(--border);background:rgba(0, 0, 0, 0.35);color:var(--foreground);font-size:0.9rem}
.bulkBulkAssign button{padding:7px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.08);color:var(--foreground);font-weight:600;cursor:pointer}
.bulkReviewHeader{margin-bottom:16px}
.deleteForm button{background:rgba(255, 255, 255, 0.12);color:var(--foreground)}
.categoryItem{padding:14px;border-radius:14px;border:1px solid var(--border);background:rgba(255, 255, 255, 0.04);display:flex;justify-content:space-between}
.categorySlug{color:var(--muted);font-size:0.85rem}
.termsWrap{max-width:720px;margin:0 auto;padding:32px 24px}
.termsBody h1{font-size:1.6rem;margin:0 0 16px}
.termsBody h2{font-size:1.1rem;margin:28px 0 8px}
.termsBody p{line-height:1.65;color:rgba(247, 244, 238, 0.88);margin:0 0 12px}
.termsBody ul{padding-left:20px;margin:0 0 12px;line-height:1.65;color:rgba(247, 244, 238, 0.88)}
.termsBody ul li{margin-bottom:4px}
.termsBody strong{color:#f7f4ee}
.termsBody a{color:#5dd6ff}
.termsTable{width:100%;border-collapse:collapse;margin:0 0 16px}
.termsTable td{padding:7px 10px;border:1px solid rgba(255, 255, 255, 0.12);font-size:0.92rem}
.termsTable td:first-child{color:rgba(247, 244, 238, 0.6);width:140px}
@media(min-width: 600px){
#cookiewall{right:auto}}
@keyframes float{
0%{transform:translateY(0)}
50%{transform:translateY(-20px)}
100%{transform:translateY(0)}}
@keyframes heroFadeOut{
to { opacity{0; visibility:hidden }}}
@keyframes waterfall{
0%{transform:translate(-50%, -170%) rotate(var(--rot)) scale(0.92)}
12%{opacity:1}
50%{transform:translate(-50%, 42dvh) rotate(calc(var(--rot) + 4deg)) scale(1)}
88%{opacity:1}
100%{transform:translate(-50%, calc(100dvh + 320px)) rotate(calc(var(--rot) + 10deg)) scale(0.94)}}
@keyframes fadeIn{
0%{opacity:0;transform:translateY(8px)}
100%{opacity:1;transform:translateY(0)}}
@media (max-width: 900px){
.adminGrid{grid-template-columns:repeat(2, minmax(0, 1fr))}
#cartPage{grid-template-columns:1fr}
#cartPage h2{grid-column:1}
#cartSummary{position:static}
#gallery{grid-template-columns:repeat(2, minmax(0, 1fr))}
#cartGrid, #productImageGrid, #bulkReviewGrid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));align-items:stretch;width:100%}
.shot, .productShot{width:100%}
.cartItem{grid-template-columns:60px 1fr auto}
.cartItem img{width:60px;height:46px}
#waterfallCollage{height:100dvh}
#top{gap:12px}
#menuToggle{display:inline-flex;align-items:center;justify-content:center}
#menu{width:100%;border-radius:18px;flex-direction:column;align-items:stretch;max-height:0;overflow:hidden;opacity:0;padding:0 14px;border-width:0;pointer-events:none;transition:max-height 0.25s ease, opacity 0.2s ease, padding 0.2s ease, border-width 0.2s ease}
#menu.open{max-height:60dvh;opacity:1;padding:12px 14px;border-width:1px;pointer-events:auto}
.pill{display:block;width:100%;text-align:left}
#adminShell{grid-template-columns:1fr}
#adminNav{flex-direction:row;flex-wrap:wrap}
#lightboxInner{max-width:96vw}
#lightboxPanel{flex-direction:column;align-items:flex-start;gap:10px}
#heroName{font-size:clamp(2.4rem, 12vw, 4rem)}}
