:root{--bg: #1a1209;--bg-elevated: #2a1f14;--bg-input: #3d2e1f;--text: #faf6f0;--text-muted: #a89078;--accent: #39d353;--accent-dim: #22c55e;--accent-secondary: #f59e0b;--accent-secondary-dim: #d97706;--accent-on: #1a1209;--accent-glow: rgba(57, 211, 83, .35);--danger: #ef4444;--success: var(--accent-dim);--app-max-width: 540px;--surface-border: rgba(168, 144, 120, .16);--surface-shadow: 0 18px 48px rgba(0, 0, 0, .32);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--nav-height: 64px;--header-height: 56px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}html,body{background:radial-gradient(circle at 50% -10%,rgba(245,158,11,.18),transparent 34rem),radial-gradient(circle at 100% 20%,rgba(57,211,83,.08),transparent 26rem),var(--bg)}#root{position:relative;width:min(100%,var(--app-max-width));margin:0 auto;background:linear-gradient(180deg,#2a1f14f0,#1a1209fa 28%),var(--bg);box-shadow:0 0 0 1px #a8907814,0 24px 70px #00000061;overflow-x:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none;min-height:44px;min-width:44px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}a{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell{display:flex;flex-direction:column;min-height:100%;padding-top:var(--safe-top);padding-bottom:calc(var(--nav-height) + var(--safe-bottom));background:radial-gradient(circle at 50% 0,rgba(245,158,11,.08),transparent 16rem),var(--bg)}.app-shell.has-top-nav{padding-top:0;min-height:calc(100% - var(--header-height) - var(--safe-top))}.app-shell.no-nav{padding-bottom:var(--safe-bottom)}.top-nav{height:calc(var(--header-height) + var(--safe-top));padding:var(--safe-top) 16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--surface-border);background:#2a1f14eb;backdrop-filter:blur(18px);position:sticky;top:0;z-index:15}.top-nav-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--text);min-height:44px;min-width:0}.top-nav-logo-wrap{width:40px;height:40px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#39d35324,#f59e0b29),var(--bg-input);border:1px solid rgba(57,211,83,.2);box-shadow:0 0 18px #39d3531f;flex-shrink:0}.top-nav-logo{border-radius:10px;flex-shrink:0}.top-nav-wordmark{display:flex;flex-direction:column;gap:1px;min-width:0}.top-nav-name{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.top-nav-tagline{color:var(--text-muted);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.top-nav-actions{position:relative;flex-shrink:0}.top-nav-avatar{position:relative;display:flex;align-items:center;justify-content:center;padding:0;min-width:44px;min-height:44px}.top-nav-avatar-face{width:36px;height:36px;font-size:.875rem;box-shadow:0 0 0 3px #39d35314}.top-nav-badge{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent-secondary);color:var(--accent-on);font-size:.6875rem;font-weight:700;line-height:18px;text-align:center}.top-nav-menu{position:absolute;top:calc(100% + 6px);right:0;width:min(300px,calc(100vw - 24px));background:#2a1f14fa;border:1px solid var(--surface-border);border-radius:16px;box-shadow:var(--surface-shadow);backdrop-filter:blur(18px);overflow:hidden;z-index:30}.top-nav-menu-user{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-bottom:1px solid var(--bg-input)}.top-nav-menu-user strong{font-size:.9375rem}.top-nav-menu-user span{font-size:.8125rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.top-nav-menu-section{padding:12px 16px;border-bottom:1px solid var(--bg-input)}.top-nav-menu-heading{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px}.top-nav-menu-empty{font-size:.8125rem;color:var(--text-muted)}.top-nav-notify-list{list-style:none;display:flex;flex-direction:column;gap:10px}.top-nav-notify-list li{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.top-nav-notify-list strong{display:block;font-size:.875rem}.top-nav-notify-list p{font-size:.8125rem;color:var(--text-muted);margin-top:2px}.top-nav-dismiss{flex-shrink:0;min-width:auto;min-height:32px;padding:4px 8px;font-size:.75rem;color:var(--accent)}.top-nav-menu-item{display:block;width:100%;text-align:left;padding:14px 16px;font-size:.9375rem;color:var(--danger);min-height:44px}.top-nav-menu-item:hover,.top-nav-menu-item:focus-visible{background:var(--bg-input)}.page-header{height:var(--header-height);display:flex;align-items:center;padding:0 16px;gap:12px;border-bottom:1px solid var(--surface-border);background:#2a1f14e0;backdrop-filter:blur(14px);position:sticky;top:var(--safe-top);z-index:10}.page-header h1{font-size:1.125rem;font-weight:600;flex:1}.subpage-bar{display:flex;align-items:center;gap:8px;padding:8px 0 4px;margin-bottom:8px}.subpage-bar h1{font-size:1.125rem;font-weight:600;flex:1}.page-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.page-content--with-fab{padding-bottom:80px}.fab{position:fixed;right:max(16px,calc(50% - (var(--app-max-width) / 2) + 16px));bottom:calc(var(--nav-height) + var(--safe-bottom) + 16px);width:56px;height:56px;min-width:56px;min-height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--accent),var(--accent-dim));color:var(--accent-on);text-decoration:none;font-size:1.75rem;font-weight:500;line-height:1;box-shadow:0 8px 24px #00000059,0 0 20px var(--accent-glow);z-index:18;transition:transform .16s ease,box-shadow .16s ease}.fab:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0006,0 0 24px var(--accent-glow)}.fab:active{transform:translateY(0)}.bottom-nav{position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%);width:min(100%,var(--app-max-width));height:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);display:flex;background:#2a1f14f0;border-top:1px solid var(--surface-border);backdrop-filter:blur(18px);box-shadow:0 -18px 36px #0000003d;z-index:70}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-decoration:none;color:var(--text-muted);font-size:.75rem;font-weight:600;position:relative}.bottom-nav-icon{width:22px;height:22px;flex-shrink:0}.bottom-nav a.active{color:var(--accent)}.bottom-nav a.active .bottom-nav-icon{color:var(--accent);filter:drop-shadow(0 0 6px var(--accent-glow))}.bottom-nav a.active:after,.bottom-nav-menu-btn.active:after{content:"";position:absolute;bottom:5px;left:50%;width:42px;transform:translate(-50%);height:3px;background:var(--accent-secondary);border-radius:999px;box-shadow:0 0 12px #f59e0b47}.bottom-nav-menu-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);font-size:.75rem;position:relative}.bottom-nav-menu-btn.active{color:var(--accent)}.bottom-nav-menu-btn.active .bottom-nav-icon{color:var(--accent);filter:drop-shadow(0 0 6px var(--accent-glow))}.bottom-nav--menu-open>a.active{color:var(--text-muted)}.bottom-nav--menu-open>a.active .bottom-nav-icon{color:var(--text-muted);filter:none}.bottom-nav--menu-open>a.active:after{display:none}.menu-overlay{position:fixed;inset:0;bottom:calc(var(--nav-height) + var(--safe-bottom));z-index:60;background:#080502c7;display:flex;align-items:flex-end;justify-content:center;padding:0;animation:menu-fade-in .16s ease-out}.menu-sheet{width:100%;max-width:540px;max-height:min(86vh,680px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:linear-gradient(180deg,#3a2c1d,#2a1f14 42%,#23180f);border:1px solid rgba(168,144,120,.28);border-bottom:none;border-radius:22px 22px 0 0;padding:12px 16px 18px;box-shadow:0 -24px 60px #000000a6,inset 0 1px #faf6f00f;animation:menu-sheet-up .22s ease-out}.menu-sheet-handle{width:42px;height:4px;border-radius:999px;background:#a8907873;margin:0 auto 14px}.menu-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:0 2px}.menu-sheet-heading{min-width:0}.menu-sheet-kicker{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-secondary);margin-bottom:2px}.menu-sheet-header h2{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.menu-sheet-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;color:var(--text-muted);background:#1a120973;border:1px solid rgba(168,144,120,.18);flex-shrink:0}.menu-sheet-close:hover{background:var(--bg-input);color:var(--text)}.menu-sheet-nav{display:flex;flex-direction:column;gap:8px}.menu-sheet-link,.menu-sheet-settings{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;text-decoration:none;color:var(--text);background:#1a1209b8;border:1px solid rgba(168,144,120,.16);transition:border-color .14s ease,background .14s ease,transform .14s ease}.menu-sheet-link:hover,.menu-sheet-settings:hover{border-color:#39d35366;background:#23180ff2;transform:translateY(-1px)}.menu-sheet-link.active{border-color:#39d3538c;background:#39d3531a}.menu-sheet-link-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#39d35329,#f59e0b1f);color:var(--accent);flex-shrink:0}.menu-sheet-link-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.menu-sheet-link-body strong{font-size:.9375rem;color:var(--text)}.menu-sheet-link-body span{font-size:.75rem;color:var(--text-muted)}.menu-sheet-chevron{color:var(--text-muted);font-size:1.25rem;line-height:1}.menu-sheet-settings{margin-top:10px}@keyframes menu-fade-in{0%{opacity:0}to{opacity:1}}@keyframes menu-sheet-up{0%{transform:translateY(28px);opacity:.7}to{transform:translateY(0);opacity:1}}.list-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--surface-border);text-decoration:none;color:inherit;min-height:44px;transition:background-color .16s ease,transform .16s ease}.list-item:hover{background:#3d2e1f6b}.list-item:active{background:var(--bg-elevated);transform:scale(.995)}.avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--accent-dim) 0%,var(--accent-secondary-dim) 100%);display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0;color:var(--accent-on);box-shadow:inset 0 1px #ffffff2e,0 8px 24px #00000038}.chat-view{display:flex;flex-direction:column;height:calc(100dvh - var(--safe-top) - var(--safe-bottom));padding-top:var(--safe-top);background:radial-gradient(circle at 50% 0,rgba(57,211,83,.06),transparent 18rem),var(--bg)}.messages-list{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:10px}.message-bubble{max-width:80%;padding:11px 14px 8px;border-radius:20px;word-break:break-word;line-height:1.4;box-shadow:0 10px 24px #0000002e}.message-bubble.sent{align-self:flex-end;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dim) 100%);color:var(--accent-on);border-bottom-right-radius:6px}.message-bubble.received{align-self:flex-start;background:#2a1f14f5;border:1px solid var(--surface-border);border-bottom-left-radius:6px}.message-bubble.expiring{outline:1px dashed rgba(239,68,68,.72);outline-offset:2px}.message-meta{margin-top:5px;font-size:.6875rem;font-weight:600;letter-spacing:.01em;opacity:.68}.chat-tools{padding:10px 16px 0;background:#2a1f14eb;border-top:1px solid var(--surface-border)}.destruct-control{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-muted);font-size:.8125rem;font-weight:600}.destruct-control select{width:auto;min-width:104px;min-height:36px;padding:7px 32px 7px 12px;background:#3d2e1fdb;border:1px solid rgba(168,144,120,.16);color:var(--text);border-radius:999px}.composer{display:flex;gap:8px;padding:10px 16px calc(12px + var(--safe-bottom));background:#2a1f14eb}.composer input{flex:1;background:#3d2e1feb;border:1px solid rgba(168,144,120,.16);border-radius:24px;padding:10px 16px;min-height:44px}.composer button.send{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dim) 100%);color:var(--accent-on);border-radius:50%;width:44px;height:44px;font-weight:700;box-shadow:0 10px 24px #39d35338}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dim) 100%);color:var(--accent-on);border-radius:12px;padding:12px 20px;font-weight:600;width:100%;box-shadow:0 10px 26px #39d3532e}.btn-secondary{background:#3d2e1fdb;border:1px solid var(--surface-border);border-radius:12px;padding:12px 20px;width:100%}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){transform:translateY(-1px)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled){transform:translateY(0)}.install-banner{background:var(--accent-secondary);color:var(--accent-on);padding:12px 16px;display:flex;align-items:center;gap:12px;font-size:.875rem}.install-banner button{background:var(--bg);color:var(--text);border-radius:8px;padding:8px 12px;font-size:.8125rem;min-height:36px}.offline-badge{background:var(--danger);color:#fff;text-align:center;padding:4px;font-size:.75rem}.settings-section{padding:16px}.settings-section+.settings-section{border-top:1px solid rgba(168,144,120,.08)}.settings-section h2{font-size:.875rem;color:var(--text-muted);margin-bottom:12px;text-transform:uppercase;letter-spacing:.05em}.form-field{margin-bottom:16px}.form-field label{display:block;font-size:.875rem;color:var(--text-muted);margin-bottom:6px}.form-field input{width:100%;background:#3d2e1fdb;border:1px solid rgba(168,144,120,.16);border-radius:12px;padding:12px 16px;min-height:44px;box-shadow:inset 0 1px #ffffff08}.form-field input::placeholder{color:#a89078b8}.login-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--text-muted);font-size:.75rem}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:var(--surface-border)}.login-error{color:var(--danger);font-size:.875rem;margin:0 0 14px}.login-note{color:var(--text-muted);font-size:.8125rem;line-height:1.5;margin-top:24px;text-align:center}.form-card{background:linear-gradient(145deg,#2a1f14f5,#1a1209eb),var(--bg-elevated);border:1px solid var(--surface-border);border-radius:20px;padding:18px;box-shadow:0 16px 38px #00000038}.form-intro{color:var(--text-muted);font-size:.875rem;line-height:1.45;margin-bottom:18px}.empty-state{text-align:center;padding:56px 24px;color:var(--text-muted)}.empty-state--branded{width:min(100%,360px);margin:0 auto}.empty-state-logo{width:82px;height:82px;margin:0 auto 18px;display:grid;place-items:center;border-radius:26px;background:radial-gradient(circle at 30% 20%,rgba(57,211,83,.18),transparent 42%),linear-gradient(145deg,#2a1f14fa,#3d2e1fb8);border:1px solid rgba(245,158,11,.18);box-shadow:0 18px 42px #00000047,0 0 32px #39d35314}.empty-state-logo img{border-radius:16px}.empty-state h2{color:var(--text);font-size:1.25rem;margin-bottom:8px;letter-spacing:-.02em}.empty-state p{line-height:1.5}.empty-state-action{margin-top:18px}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;min-height:44px}.back-link{color:var(--text);text-decoration:none;font-size:1.25rem;line-height:1;min-width:44px}.nav-card-list{display:flex;flex-direction:column;gap:10px}.nav-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:linear-gradient(145deg,#2a1f14fa,#3d2e1fb8),var(--bg-elevated);border-radius:16px;text-decoration:none;color:inherit;border:1px solid var(--surface-border);box-shadow:0 12px 30px #0000002e;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.nav-card:hover{border-color:#39d3533d;box-shadow:0 16px 36px #00000038;transform:translateY(-1px)}.nav-card:active{background:var(--bg-input);transform:translateY(0)}.nav-card-icon{font-size:1.5rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#3d2e1fe0;border:1px solid rgba(245,158,11,.14);border-radius:14px;flex-shrink:0}.nav-card-body{flex:1;display:flex;flex-direction:column;gap:2px}.nav-card-body strong{font-size:.9375rem}.nav-card-body span{font-size:.8125rem;color:var(--text-muted)}.nav-card-chevron{color:var(--text-muted);font-size:1.25rem}.commerce-page{padding:16px 16px 32px}.commerce-section{margin-top:24px}.commerce-section h2{font-size:.875rem;color:var(--text-muted);margin-bottom:12px;text-transform:uppercase;letter-spacing:.05em}.commerce-secondary-btn{margin-top:10px}.commerce-footnote{margin-top:16px;font-size:.75rem;color:var(--text-muted);line-height:1.5}.commerce-footnote code{font-size:.6875rem;background:var(--bg-elevated);padding:2px 6px;border-radius:4px}.status-card{background:radial-gradient(circle at 100% 0,rgba(57,211,83,.14),transparent 11rem),linear-gradient(145deg,var(--bg-input) 0%,var(--bg-elevated) 55%,var(--bg) 100%);border:1px solid var(--surface-border);border-radius:22px;padding:20px}.status-card--active{box-shadow:0 8px 32px #39d35326;border-color:#39d35359}.status-card--grace{box-shadow:0 8px 32px #f59e0b2e;border-color:#f59e0b66}.status-card--past_due,.status-card--none{box-shadow:0 8px 32px #ef44441f;border-color:#ef444459}.status-pill{display:inline-block;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:#f59e0b33;color:var(--accent-secondary);padding:4px 10px;border-radius:999px;margin-bottom:12px}.status-pill--inline{margin-bottom:0;flex-shrink:0}.status-pill--active{background:#39d3532e;color:var(--accent)}.status-pill--grace{background:#f59e0b33;color:var(--accent-secondary)}.status-pill--past_due,.status-pill--none{background:#ef44442e;color:#f87171}.account-hub .commerce-section:first-of-type{margin-top:20px}.account-profile-card{display:flex;gap:14px;align-items:center;padding:16px;background:var(--bg-elevated);border:1px solid var(--bg-input);border-radius:18px}.account-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.125rem;color:var(--accent-on);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);flex-shrink:0}.account-profile-body{min-width:0;flex:1}.account-profile-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.account-profile-top h2{font-size:1.125rem;font-weight:600}.account-email,.account-meta{font-size:.8125rem;color:var(--text-muted)}.account-meta{margin-top:4px}.account-error{margin-top:6px;font-size:.8125rem;color:var(--danger)}.account-membership-card{overflow:hidden}.account-membership-top{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.account-membership-title{font-size:1.125rem;font-weight:700;margin-bottom:4px}.account-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.account-action-btn{text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;padding:12px 14px;border-radius:12px;box-sizing:border-box}@media(max-width:380px){.account-action-row{grid-template-columns:1fr}}.section-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.section-heading-row h2{margin-bottom:0}.section-heading-link{font-size:.8125rem;text-decoration:none;color:var(--accent)}.section-heading-link:hover{text-decoration:underline}.account-shop-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.account-shop-tile{aspect-ratio:3 / 4;border-radius:14px;border:1px solid var(--bg-input);padding:10px 8px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;color:var(--text);background-size:cover;background-position:center;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease;min-height:0}.account-shop-tile:hover{transform:translateY(-2px) scale(1.02);border-color:#39d35373;box-shadow:0 8px 20px #00000059}.account-shop-tile-name{font-size:.75rem;font-weight:600;line-height:1.2}.account-shop-tile-price{font-size:.6875rem;color:var(--accent-secondary);margin-top:2px}@media(max-width:360px){.account-shop-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}.status-card h2{font-size:1.25rem;margin-bottom:8px}.status-price{font-size:2.25rem;font-weight:700;line-height:1;margin-bottom:8px}.status-price span{font-size:1rem;font-weight:500;color:var(--text-muted)}.status-note{font-size:.875rem;color:var(--text-muted)}.benefit-list{list-style:none;display:flex;flex-direction:column;gap:10px}.benefit-list li{display:flex;align-items:flex-start;gap:10px;font-size:.9375rem;padding:10px 12px;background:#2a1f14db;border:1px solid rgba(168,144,120,.1);border-radius:14px}.benefit-icon{color:var(--success);font-weight:700;flex-shrink:0}.step-list{display:flex;flex-direction:column;gap:12px}.step-item{display:flex;gap:14px;padding:14px;background:#2a1f14e0;border-radius:16px;border:1px solid var(--surface-border)}.step-number{width:28px;height:28px;border-radius:50%;background:var(--accent-secondary);color:var(--accent-on);font-size:.8125rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-item strong{display:block;font-size:.9375rem;margin-bottom:4px}.step-item p{font-size:.8125rem;color:var(--text-muted);line-height:1.4}.shop-hero{background:radial-gradient(circle at 100% 0,rgba(245,158,11,.16),transparent 11rem),linear-gradient(135deg,var(--bg-elevated) 0%,#352818 100%);border:1px solid rgba(245,158,11,.25);border-radius:22px;padding:20px;margin-bottom:20px}.shop-hero h2{font-size:1.25rem;margin:8px 0}.shop-hero p{font-size:.875rem;color:var(--text-muted);line-height:1.5}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.product-card{background:#2a1f14eb;border:1px solid var(--surface-border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 14px 34px #0000002e}.product-image{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(160deg,var(--bg-input) 0%,var(--bg) 100%)}.product-body{padding:12px;display:flex;flex-direction:column;gap:6px;flex:1}.product-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.product-badge{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-secondary);background:#f59e0b2e;padding:3px 8px;border-radius:999px}.product-price{font-weight:700;font-size:.9375rem}.product-body h3{font-size:.875rem;font-weight:600}.product-body p{font-size:.75rem;color:var(--text-muted);flex:1}.product-btn{font-size:.8125rem;padding:10px;min-height:40px;margin-top:4px}.shop-info{margin-top:28px}.info-card{background:#2a1f14e6;border:1px solid var(--surface-border);border-radius:16px;padding:4px 16px;margin-bottom:16px}.info-row{display:flex;justify-content:space-between;padding:12px 0;font-size:.875rem;border-bottom:1px solid var(--surface-border)}.info-row:last-child{border-bottom:none}.info-row--total{font-weight:700;font-size:1rem}button:disabled{opacity:.55;cursor:not-allowed}.status-pill--preview{background:#a8907838;color:var(--text-muted)}.billing-status-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.billing-status-row .status-pill{margin-bottom:0}.billing-method-value{font-variant-numeric:tabular-nums;letter-spacing:.04em}.billing-invoice-status{color:var(--text-muted);font-weight:400}.billing-actions .btn-primary:hover:not(:disabled),.billing-actions .btn-secondary:hover:not(:disabled){filter:brightness(1.08)}.billing-actions .btn-primary:hover:not(:disabled){box-shadow:0 0 0 1px #39d35359,0 8px 20px #39d35333}.modal-overlay{position:fixed;inset:0;z-index:50;background:#0a0602ad;display:flex;align-items:flex-end;justify-content:center;animation:menu-fade-in .16s ease-out}.modal-sheet{width:min(100%,480px);max-height:min(82vh,640px);overflow-y:auto;background:var(--bg-elevated);border:1px solid var(--bg-input);border-bottom:none;border-radius:20px 20px 0 0;padding:10px 16px calc(20px + var(--safe-bottom));box-shadow:0 -12px 40px #0006;animation:menu-sheet-up .2s ease-out}.modal-sheet-handle{width:40px;height:4px;border-radius:999px;background:var(--bg-input);margin:0 auto 12px}.modal-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.modal-sheet-header h2{font-size:1.125rem;font-weight:600}.modal-sheet-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;color:var(--text-muted);font-size:1.5rem;line-height:1}.modal-sheet-close:hover{background:var(--bg-input);color:var(--text)}.modal-sheet-body{padding-bottom:8px}.modal-sheet-footer{padding-top:8px}.modal-lead{font-size:.875rem;color:var(--text-muted);line-height:1.5;margin-bottom:16px}.modal-footnote{margin-top:12px;margin-bottom:0}.modal-action-list{list-style:none;display:flex;flex-direction:column;gap:8px}.modal-action-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;background:var(--bg);border:1px solid var(--bg-input);text-align:left;font-size:.9375rem;min-height:48px}.modal-action-btn span{font-size:.75rem;color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:700}@media(min-width:640px){.modal-overlay{align-items:center;padding:24px}.modal-sheet{border-radius:18px;border-bottom:1px solid var(--bg-input);max-height:min(70vh,560px)}.modal-sheet-handle{display:none}}.shop-hero--compact{margin-bottom:16px;padding:16px}.shop-hero--compact h2{margin:6px 0 4px;font-size:1.125rem}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-tile{position:relative;aspect-ratio:3 / 4;border-radius:14px;border:1px solid var(--bg-input);overflow:hidden;padding:0;min-height:0;min-width:0;width:100%;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:space-between;text-align:left;color:var(--text);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.shop-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,6,2,.82) 100%);pointer-events:none}.shop-tile:hover{transform:translateY(-2px) scale(1.015);border-color:#39d35373;box-shadow:0 10px 24px #0006}.shop-tile-badge{position:relative;z-index:1;align-self:flex-start;margin:10px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-secondary);background:#1a1209b8;padding:4px 8px;border-radius:999px}.shop-tile-footer{position:relative;z-index:1;padding:12px 10px;display:flex;flex-direction:column;gap:2px}.shop-tile-name{font-size:.8125rem;font-weight:600;line-height:1.2}.shop-tile-price{font-size:.75rem;color:var(--accent-secondary);font-weight:700}.shop-detail-hero{height:160px;border-radius:14px;border:1px solid var(--bg-input);background-size:cover;background-position:center;margin-bottom:12px}.shop-detail-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.shop-option-block{margin-top:14px}.shop-option-block h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:36px;min-width:44px;padding:8px 12px;border-radius:999px;border:1px solid var(--bg-input);background:var(--bg);color:var(--text);font-size:.8125rem;transition:border-color .14s ease,background .14s ease,color .14s ease}.chip:hover{border-color:#39d35366}.chip--active{border-color:var(--accent);background:#39d35324;color:var(--accent);font-weight:600}.onboarding-form{display:flex;flex-direction:column;gap:4px}.onboarding-prefs{border:1px solid var(--bg-input);border-radius:14px;padding:8px 14px 4px;margin:8px 0 12px}.onboarding-prefs legend{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:0 4px}.onboarding-toggle{cursor:pointer;gap:12px}.onboarding-toggle input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0}.onboarding-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px}.admin-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-stat-card{background:var(--bg-elevated);border:1px solid var(--bg-input);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px}.admin-stat-card--owed{border-color:#f59e0b59}.admin-stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.admin-stat-card strong{font-size:1.25rem;font-weight:700}.admin-filter-row{margin-bottom:12px}.admin-member-list{list-style:none;display:flex;flex-direction:column;gap:10px}.admin-member-card{background:var(--bg-elevated);border:1px solid var(--bg-input);border-radius:14px;padding:14px}.admin-member-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.admin-member-top strong{display:block;font-size:.9375rem}.admin-member-top p{font-size:.75rem;color:var(--text-muted);margin-top:2px}.admin-member-metrics{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:.75rem;color:var(--text-muted);margin-bottom:12px}.admin-member-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-mini-btn{padding:8px 10px;min-height:40px;font-size:.8125rem}.admin-mini-btn:hover:not(:disabled){border:1px solid rgba(57,211,83,.35)}
