@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500&family=Inter:wght@300;400;500&display=swap";
@import "https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@latest/tabler-icons.min.css";
:root{--navy:#0d1b2a;--navy-mid:#162233;--navy-light:#1e2f42;--navy-border:#2a3f57;--gold:#c9a84c;--gold-light:#e2c47a;--gold-dim:#8a6c2a;--cream:#f5f0e8;--text:#e8e2d8;--muted:#8a9bb0}*{box-sizing:border-box;margin:0;padding:0}html,body{color:var(--text);background:#0a1420;min-height:100vh;font-family:Inter,sans-serif}.font-serif{font-family:Playfair Display,serif}.app-shell{max-width:800px;margin:0 auto;padding:1.5rem 1rem}.app-header{border-bottom:.5px solid var(--navy-border);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.wordmark{color:var(--cream);letter-spacing:.3px;align-items:center;gap:12px;font-family:Playfair Display,serif;font-size:24px;font-weight:400;line-height:1.2;display:flex}.brand-logo{object-fit:contain;flex-shrink:0;display:block}.wordmark-logo{filter:drop-shadow(0 0 6px #c9a84c1f);margin-top:0}.wordmark .accent{color:var(--gold)}.header-brand{flex-direction:column;gap:8px;display:flex}.tagline{color:var(--muted);letter-spacing:.8px;margin-top:6px;font-family:Playfair Display,serif;font-size:12px;font-style:italic}.salutation{color:var(--muted);letter-spacing:.2px;font-family:Inter,sans-serif;font-size:12px;font-style:normal}.collection-value{text-align:right;flex-shrink:0}.header-actions{flex-shrink:0;align-items:flex-start;gap:10px;display:flex}.header-account-menu{flex-shrink:0;position:relative}.header-account-trigger{border:.5px solid var(--navy-border);background:var(--navy-mid);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-family:Inter,sans-serif;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.header-account-trigger:hover,.header-account-trigger[aria-expanded=true]{border-color:var(--gold-dim);color:var(--cream);background:var(--navy-light)}.header-account-initials{letter-spacing:.04em;font-size:11px;font-weight:600}.header-account-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.header-account-avatar-lg{width:48px;height:48px}.header-account-photo-section{padding-bottom:12px}.header-account-photo-row{align-items:center;gap:12px;display:flex}.header-account-photo-preview{border:.5px solid var(--navy-border);background:var(--navy-light);width:48px;height:48px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.header-account-photo-actions{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.header-account-file-input{display:none}.header-account-photo-btn{color:var(--gold-light);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-family:Inter,sans-serif;font-size:12px;font-weight:500;transition:color .15s}.header-account-photo-btn:hover:not(:disabled){color:var(--cream)}.header-account-photo-btn:disabled{opacity:.55;cursor:not-allowed}.header-account-photo-remove{color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-family:Inter,sans-serif;font-size:11px;transition:color .15s}.header-account-photo-remove:hover:not(:disabled){color:var(--cream)}.header-account-photo-remove:disabled{opacity:.55;cursor:not-allowed}.header-account-photo-hint{margin-top:8px;margin-bottom:0}.header-account-photo-error{color:#e0909a;margin:8px 0 0;font-size:11px;line-height:1.45}.header-account-dropdown{border:.5px solid var(--navy-border);background:var(--navy-mid);z-index:50;border-radius:8px;min-width:140px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000059}.header-account-item{cursor:pointer;text-align:left;width:100%;color:var(--cream);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-family:Inter,sans-serif;font-size:13px;text-decoration:none;transition:background .15s;display:flex}.header-account-item:hover{background:var(--navy-light);text-decoration:none}.header-account-item-danger{color:#e0909a}.header-account-item-danger:hover{background:#b43c3c1f}.header-account-item i{flex-shrink:0;font-size:16px}.header-account-item-admin{letter-spacing:.02em;color:var(--gold);border-top:.5px solid #c9a84c38;margin-top:6px;padding-top:12px;font-weight:600}.header-account-item-admin i{color:var(--gold);font-size:18px}.header-account-item-admin:hover,.header-account-item-admin:hover i{color:var(--gold-light)}.header-account-item-admin:hover{background:#c9a84c1f}.header-account-panel{min-width:220px;padding:8px;overflow:visible}.header-account-section{border-bottom:.5px solid var(--navy-border);margin-bottom:4px;padding:6px 8px 10px;overflow:visible}.header-account-section .filter-select-popover{z-index:60}.header-account-label{text-transform:uppercase;letter-spacing:.07em;color:#f5f0e8b8;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.header-account-label-strong{color:var(--cream)}.header-account-attribution{color:var(--muted);margin:6px 8px 2px;font-size:10px;line-height:1.4}.header-account-attribution a{color:var(--muted);text-underline-offset:2px;text-decoration:underline}.header-account-section .filter-select-trigger{min-height:34px;padding:7px 10px;font-size:12px}.header-account-toggle-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.header-account-toggle-hint{margin-top:4px;margin-bottom:0}.header-account-toggle{border:.5px solid var(--navy-border);background:var(--navy-mid);cursor:pointer;border-radius:999px;flex-shrink:0;width:42px;height:24px;padding:2px;transition:background .15s,border-color .15s}.header-account-toggle.is-on{border-color:var(--gold-dim);background:#c9a84c59}.header-account-toggle:disabled{opacity:.6;cursor:not-allowed}.header-account-toggle-thumb{background:var(--cream);border-radius:50%;width:18px;height:18px;transition:transform .15s;display:block;transform:translate(0)}.header-account-toggle.is-on .header-account-toggle-thumb{transform:translate(18px)}.onboarding-opt-in-choice{gap:10px;display:flex}.onboarding-choice-btn{border:.5px solid var(--navy-border);background:var(--navy-mid);color:#d0dce8;cursor:pointer;border-radius:8px;flex:1;padding:9px 12px;font-family:Inter,sans-serif;font-size:13px;transition:border-color .15s,color .15s,background .15s}.onboarding-choice-btn:hover{border-color:var(--gold-dim);color:var(--cream)}.onboarding-choice-btn.is-selected{background:var(--gold);border-color:var(--gold);color:#0d1b2a;font-weight:500}.form-hint{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.45}.collection-value-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-size:10px}.collection-value-amount{color:var(--gold);font-family:Playfair Display,serif;font-size:28px;font-weight:400;line-height:1}.collection-value-sub{color:var(--muted);white-space:nowrap;text-align:right;margin-top:4px;font-size:11px}.collection-movement{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;margin-top:6px;font-size:13px;font-weight:500;display:flex}.collection-movement.up{color:#7ddbb8}.collection-movement.down{color:#e0909a}.collection-movement.flat{color:var(--muted)}.collection-movement.muted{color:var(--muted);margin-top:6px;font-size:11px;font-style:italic;font-weight:400}.market-movement-badge{border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-flex}.market-movement-badge.up{color:#7ddbb8;background:#5dcaa51a;border:.5px solid #5dcaa540}.market-movement-badge.down{color:#e0909a;background:#b43c3c1a;border:.5px solid #b43c3c40}.market-movement-badge.flat{color:var(--muted);background:#8a9bb014;border:.5px solid #8a9bb033}.market-movement-badge.compact{padding:2px 7px;font-size:10px}.market-movement{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.market-movement-hint{color:var(--muted);font-size:11px;line-height:1.3}.stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.5rem;display:grid}.stat-card{background:var(--navy-mid);border:.5px solid var(--navy-border);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:10px;padding:14px 16px;text-decoration:none;transition:border-color .2s,background .2s;display:block;position:relative}button.stat-card{appearance:none}.stat-card:hover:not(.active){background:#222d42;border-color:#5a6888}.stat-card-chev{color:var(--muted);pointer-events:none;font-size:13px;transition:color .2s,border-color .2s,background .2s;position:absolute;top:10px;right:10px}.stat-card:hover:not(.active) .stat-card-chev{color:#8a9bb0}.stat-card.active .stat-card-chev{color:var(--gold-dim)}.stat-card.active{border-color:var(--gold);background:var(--navy-light)}.stat-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;font-size:11px}.stat-val{color:var(--cream);font-family:Playfair Display,serif;font-size:24px;font-weight:500}.stat-card.active .stat-val{color:var(--gold)}.stat-sub{color:var(--muted);letter-spacing:.3px;text-transform:none;margin-top:4px;font-size:10px;line-height:1.3}.stats-grid-skeleton{min-height:72px}.tab-bar-skeleton{min-height:44px;margin-bottom:1.5rem}.tab-bar{background:var(--navy-mid);border:.5px solid var(--navy-border);border-radius:10px;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:1.5rem;padding:5px;display:grid}.tab-item{cursor:pointer;color:#d0dce8;text-align:center;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;padding:9px 6px;font-family:Inter,sans-serif;font-size:13px;text-decoration:none;transition:background .15s,color .15s;display:flex}button.tab-item{appearance:none}.tab-item:hover{background:var(--navy-light);color:var(--cream)}.tab-item.active{background:var(--navy-light);color:var(--gold);outline:.5px solid var(--navy-border)}.bottle-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.bottle-card{background:var(--navy-mid);border:.5px solid var(--navy-border);cursor:pointer;border-radius:10px;padding:14px;transition:border-color .2s,background .2s}.bottle-card:hover{background:var(--navy-light)}.bottle-card.expanded{border-color:var(--gold-dim)}.bottle-card.incomplete{border-color:#b43c3c59}.bottle-meta-unset{color:var(--muted);font-style:italic}.type-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:20px;margin-bottom:8px;padding:3px 9px;font-size:10px;font-weight:500;display:inline-block}.badge-spirits{color:var(--gold-light);border:.5px solid var(--gold-dim);background:#c9a84c26}.badge-wine{color:#e0909a;background:#b43c5026;border:.5px solid #b43c5066}.badge-beer{color:#7ddbb8;background:#5dcaa51f;border:.5px solid #5dcaa54d}.badge-other{color:#a8bbcc;background:#8a9bb026;border:.5px solid #8a9bb04d}.ci,input[type=text],input[type=number],input[type=email],input[type=password],select,textarea{background:var(--navy-mid)!important;border:.5px solid var(--navy-border)!important;color:var(--text)!important;appearance:none!important;border-radius:8px!important;outline:none!important;width:100%!important;padding:9px 14px!important;font-family:Inter,sans-serif!important;font-size:13px!important}.ci::placeholder,input::placeholder,textarea::placeholder{color:var(--muted)!important}.ci:focus,input:focus,select:focus,textarea:focus{border-color:var(--gold-dim)!important}.btn-gold{align-items:center;gap:6px;transition:background .15s;display:inline-flex;background:var(--gold)!important;color:#0d1b2a!important;cursor:pointer!important;border:none!important;border-radius:8px!important;padding:9px 22px!important;font-family:Inter,sans-serif!important;font-size:13px!important;font-weight:500!important}.btn-gold:hover{background:var(--gold-light)!important}.btn-gold:disabled{opacity:.45!important;cursor:not-allowed!important}.btn-ghost{align-items:center;gap:4px;transition:border-color .15s,color .15s;display:inline-flex;border:.5px solid var(--navy-border)!important;background:var(--navy-mid)!important;cursor:pointer!important;color:#d0dce8!important;border-radius:6px!important;padding:5px 12px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.btn-ghost:hover{border-color:var(--gold-dim)!important;color:var(--cream)!important}.btn-ghost:disabled{opacity:.4!important;cursor:not-allowed!important}.btn-remove{align-items:center;gap:4px;display:inline-flex;background:var(--navy-mid)!important;cursor:pointer!important;color:#e0909a!important;border:.5px solid #b43c3c80!important;border-radius:6px!important;padding:5px 12px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.btn-enrich{align-items:center;gap:4px;display:inline-flex;border:.5px solid var(--gold-dim)!important;cursor:pointer!important;color:var(--gold-light)!important;background:#c9a84c1a!important;border-radius:6px!important;padding:5px 12px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.btn-enrich:hover{background:#c9a84c33!important}.btn-enrich:disabled{opacity:.45!important;cursor:not-allowed!important}.card-actions{border-top:.5px solid var(--navy-border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;padding-top:10px;display:flex}.card-actions-menu{flex-shrink:0;position:relative}.card-actions-menu-trigger{justify-content:center;min-width:34px;padding:5px 10px!important}.card-actions-dropdown{border:.5px solid var(--navy-border);background:var(--navy-mid);z-index:20;border-radius:8px;min-width:148px;padding:4px;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 8px 24px #00000059}.card-actions-item{cursor:pointer;text-align:left;width:100%;color:var(--cream);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-family:Inter,sans-serif;font-size:12px;transition:background .15s;display:flex}.card-actions-item:hover{background:var(--navy-light)}.card-actions-item:disabled{opacity:.4;cursor:not-allowed}.card-actions-item-danger{color:#e0909a}.card-actions-item-danger:hover{background:#b43c3c1f}.btn-value{align-items:center;gap:4px;display:inline-flex;cursor:pointer!important;color:var(--gold)!important;background:#c9a84c14!important;border:.5px solid #c9a84c66!important;border-radius:6px!important;padding:5px 12px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.btn-value:hover{background:#c9a84c29!important}.btn-value:disabled{opacity:.45!important;cursor:not-allowed!important}.btn-danger-outline{cursor:pointer!important;color:#e0909a!important;background:0 0!important;border:.5px solid #b43c3c80!important;border-radius:6px!important;padding:8px 16px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.btn-sign-out{align-items:center;gap:5px;transition:background .15s,border-color .15s,color .15s;display:inline-flex;cursor:pointer!important;color:#f0a8b0!important;background:#b43c3c24!important;border:.5px solid #e0909a99!important;border-radius:6px!important;padding:6px 14px!important;font-family:Inter,sans-serif!important;font-size:12px!important;font-weight:500!important}.btn-sign-out:hover{color:#ffc8cf!important;background:#b43c3c3d!important;border-color:#f0a8b0d9!important}.form-card{background:var(--navy-mid);border:.5px solid var(--navy-border);border-radius:10px;padding:1.5rem}.form-section-label{letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-dim);border-bottom:.5px solid var(--navy-border);margin-bottom:1rem;padding-bottom:6px;font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-group{flex-direction:column;gap:5px;display:flex}.form-group.full{grid-column:1/-1}.form-label{color:var(--muted);letter-spacing:.5px;text-transform:uppercase;font-size:11px}.detail-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.detail-field label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px;font-size:10px;display:block}.detail-field span{color:var(--text);font-size:13px}.detail-field.is-missing span{color:var(--muted);font-size:12px}.tasting-notes{border-left:2px solid var(--gold-dim);color:var(--muted);background:#0d1b2a99;margin-bottom:12px;padding:10px 12px;font-size:12px;line-height:1.7}.tasting-notes strong{color:var(--gold);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;font-size:10px;font-weight:500;display:block}.notes-missing{border-left:2px solid var(--navy-border);color:var(--muted);background:#0d1b2a99;margin-bottom:12px;padding:10px 12px;font-size:12px;font-style:italic}.valuation-block{background:#c9a84c0f;border:.5px solid #c9a84c33;border-radius:8px;margin-bottom:12px;padding:12px}.valuation-price{color:var(--gold);font-family:Playfair Display,serif;font-size:20px}.missing-banner{color:var(--muted);background:#c9a84c0f;border:.5px solid #c9a84c38;border-radius:6px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:11px;display:flex}.sample-badge{letter-spacing:.5px;text-transform:uppercase;color:#a8b8cc;background:#8a9bb026;border:.5px solid #8a9bb059;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:500;display:inline-block}.sample-banner{color:var(--muted);background:#8a9bb014;border:.5px solid #8a9bb040;border-radius:6px;margin-top:8px;padding:6px 10px;font-size:11px;line-height:1.4}.bottle-value-tag{color:var(--gold);background:#c9a84c1f;border:.5px solid #c9a84c4d;border-radius:20px;margin-top:6px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-block}.bottle-value-tag.unvalued{color:var(--muted);background:#8a9bb014;border-color:#8a9bb033}.bottle-footer{border-top:.5px solid var(--navy-border);justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding-top:10px;display:flex}.qty-stepper{align-items:center;gap:8px;display:flex}.qty-stepper-btn{border:.5px solid var(--navy-border);width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;font-family:Inter,sans-serif;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.qty-stepper-btn:hover:not(:disabled){background:var(--navy-light);color:var(--cream);border-color:var(--gold-dim)}.qty-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.qty-stepper-btn .ti{font-size:12px}.qty-badge{color:var(--muted);text-align:center;white-space:nowrap;min-width:4.5rem;font-size:12px}.loc-tag{color:var(--muted);background:#2a3f57cc;border-radius:20px;margin-top:5px;padding:2px 8px;font-size:11px;display:inline-block}.status-box{border-radius:6px;margin-top:10px;padding:8px 10px;font-size:12px}.status-box.loading{color:var(--gold);background:#c9a84c14;border:.5px solid #c9a84c33}.status-box.error{color:#e0909a;background:#b43c3c14;border:.5px solid #b43c3c40}.status-box.success{color:#7ddbb8;background:#5dcaa514;border:.5px solid #5dcaa540}.status-box.info{color:#c9a84c;background:#c9a84c0f;border:.5px solid #c9a84c33}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{background:var(--navy-mid);border:.5px solid var(--navy-border);border-radius:16px;width:100%;max-width:420px;padding:2.5rem}.auth-brand{text-align:center;margin-bottom:1.5rem}.auth-logo{filter:drop-shadow(0 0 10px #c9a84c26);margin:0 auto 16px}.auth-title{color:var(--cream);margin-bottom:4px;font-family:Playfair Display,serif;font-size:22px}.auth-title .accent{color:var(--gold)}.auth-subtitle{color:var(--muted);margin-bottom:2rem;font-family:Playfair Display,serif;font-size:12px;font-style:italic}.auth-error{color:#e0909a;background:#b43c3c1a;border:.5px solid #b43c3c4d;border-radius:6px;margin-bottom:1rem;padding:10px 12px;font-size:13px}.auth-success{color:#7ddbb8;background:#5dcaa514;border:.5px solid #5dcaa54d;border-radius:6px;margin-bottom:1rem;padding:10px 12px;font-size:13px}.auth-check-email-heading{color:var(--cream);text-align:center;margin:0 0 1.25rem;font-family:Playfair Display,serif;font-size:22px}.auth-check-email-body{color:var(--muted);margin-bottom:1.75rem;font-size:14px;line-height:1.6}.auth-check-email-body p{margin:0 0 .85rem}.auth-check-email-body p:last-child{margin-bottom:0}.auth-check-email-address{color:var(--cream);font-weight:600}.auth-check-email-hint{font-size:13px}.auth-check-email-actions{gap:.75rem;display:grid}.auth-check-email-primary{justify-content:center;width:100%;text-decoration:none}.auth-check-email-secondary{width:100%;color:var(--gold);cursor:pointer;text-align:center;background:0 0;border:none;padding:0;font-family:Inter,sans-serif;font-size:13px}.auth-check-email-secondary:hover{color:var(--cream);text-decoration:underline}.auth-divider{color:var(--muted);align-items:center;gap:10px;margin:1rem 0;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--navy-border);flex:1;height:.5px}.auth-toggle{text-align:center;color:var(--muted);margin-top:1rem;font-size:13px}.auth-forgot-wrap{justify-content:flex-end;margin:-8px 0 16px;display:flex}.auth-forgot-link{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.auth-forgot-link:hover{color:var(--gold-light)}.auth-link-button{justify-content:center;width:100%;margin-top:16px;text-decoration:none;display:inline-flex}.password-checklist{margin:10px 0 0;padding:0;list-style:none}.password-checklist li{align-items:center;gap:8px;margin-bottom:4px;font-size:12px;line-height:1.5;display:flex}.password-checklist li.unmet{color:var(--muted)}.password-checklist li.met{color:#7ddbb8}.password-checklist li .ti{flex-shrink:0;font-size:13px}.auth-toggle button:not(.btn-sign-out){color:var(--gold)!important;cursor:pointer!important;background:0 0!important;border:none!important;width:auto!important;padding:0!important;font-size:13px!important}.auth-toggle .btn-sign-out{margin-top:.35rem}.scan-zone{background:var(--navy-mid);border:.5px solid var(--navy-border);text-align:center;border-radius:10px;padding:1.5rem}.scan-area{max-width:400px;margin:0 auto}#scanner-video{object-fit:cover;background:#000;width:100%;height:100%;display:block}.scan-camera-wrap{display:none}.scan-camera-wrap.active{z-index:9999;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.scan-camera-wrap.active #scanner-video{object-fit:cover;border-radius:0;flex:1;min-height:0}.scan-camera-hud{pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.scan-camera-status{text-align:center;color:#fff;text-shadow:0 1px 4px #000000e6;padding:10px 20px 16px;font-size:14px;font-weight:500}.scan-camera-controls{padding:16px 20px max(28px, env(safe-area-inset-bottom));pointer-events:auto;background:linear-gradient(#0000,#000000d9);flex-direction:column;align-items:stretch;gap:10px;display:flex}.scan-camera-controls .scan-primary-btn,.scan-camera-controls .scan-secondary-btn{width:100%;margin:0}.lookup-card{background:var(--navy-light);border:.5px solid var(--navy-border);text-align:left;border-radius:10px;margin-top:1.25rem;padding:1.25rem}.scan-match-card{border-color:#7ddbb840}.scan-match-header{color:#7ddbb8;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:500;display:flex}.scan-match-header .ti{font-size:18px}.scan-match-name{color:var(--cream);margin-bottom:4px;font-family:Playfair Display,serif;font-size:16px}.scan-match-meta{color:var(--muted);margin-bottom:8px;font-size:12px}.scan-match-qty{color:var(--cream);margin-bottom:6px;font-size:13px;font-weight:500}.scan-match-value{color:var(--gold);margin-bottom:8px;font-size:12px}.scan-match-note{color:var(--muted);margin:0 0 10px;font-size:12px;line-height:1.5}.scan-match-hint{color:var(--muted);align-items:center;gap:6px;margin:0 0 12px;font-size:12px;display:flex}.scan-match-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scan-match-link{font-size:13px;text-decoration:none}.scan-related-banner{background:#0d1b2a99;border:.5px solid #c9a84c40;border-radius:8px;margin-bottom:12px;padding:10px 12px}.scan-related-title{color:var(--gold);align-items:center;gap:6px;margin-bottom:4px;font-size:12px;font-weight:500;display:flex}.scan-related-copy{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.scan-related-copy strong{color:var(--cream);font-weight:500}.scan-intro{color:var(--muted);text-align:left;margin-bottom:1.25rem;font-size:13px;line-height:1.6}.scan-mode-bar{background:var(--navy-mid);border:.5px solid var(--navy-border);border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:1.25rem;padding:5px;display:grid}.scan-mode-item{cursor:pointer;color:#d0dce8;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;gap:6px;width:100%;padding:9px 10px;font-family:Inter,sans-serif;font-size:13px;transition:background .15s,color .15s;display:flex}.scan-mode-item:hover{background:var(--navy-light);color:var(--cream)}.scan-mode-item.active{background:var(--navy-light);color:var(--gold);outline:.5px solid var(--navy-border)}.scan-status-line{color:var(--muted);text-align:center;margin-top:8px;margin-bottom:8px;font-size:12px}.scan-primary-btn{justify-content:center;width:100%;margin-bottom:10px}.scan-secondary-btn{justify-content:center;width:100%;margin-bottom:10px;padding:9px 16px!important}.scan-barcode-row{gap:8px;display:flex}.scan-barcode-input{letter-spacing:1px;flex:1;font-family:monospace!important}.scan-search-btn{flex-shrink:0;width:auto!important;padding:9px 16px!important}.scan-file-input{display:none}.scan-upload-btn{justify-content:center;width:100%;padding:9px 16px!important}.scan-ocr-progress{background:var(--navy-light);border-radius:4px;height:4px;margin:8px 0 12px;overflow:hidden}.scan-ocr-progress-bar{background:var(--gold);border-radius:4px;height:100%;transition:width .2s}.scan-label-form{text-align:left}.scan-label-form-header{color:var(--gold);align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:500;display:flex}.scan-label-form-header .ti{font-size:16px}.scan-label-fields{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.scan-label-fields .form-group.full{grid-column:1/-1}.scan-raw-toggle{color:var(--muted);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-bottom:10px;padding:0;font-family:Inter,sans-serif;font-size:12px;text-decoration:underline}.scan-raw-toggle:hover{color:var(--gold)}.scan-raw-text{color:var(--muted);border:.5px solid var(--navy-border);white-space:pre-wrap;word-break:break-word;background:#0d1b2a99;border-radius:8px;max-height:120px;margin-bottom:12px;padding:10px 12px;font-family:monospace;font-size:11px;overflow-y:auto}.scan-lookup-status{text-align:center;margin-top:1rem;font-size:13px}.scan-lookup-status--loading,.scan-lookup-status--found,.scan-lookup-status--info{color:var(--gold)}.scan-lookup-status--error{color:#e0909a}.scan-result-header{color:#7ddbb8;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:500;display:flex}.scan-result-header .ti{font-size:18px}.scan-result-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:1rem;display:grid}.scan-result-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px;font-size:10px}.scan-result-value{color:var(--text);font-size:13px}.scan-result-gold{color:var(--gold);font-weight:500}.scan-result-notes{border-left:2px solid var(--gold-dim);color:var(--muted);background:#0d1b2a99;margin-bottom:1rem;padding:10px 12px;font-size:12px;line-height:1.6}.scan-ai-fill-btn{color:var(--gold)!important;border-color:#c9a84c59!important;padding:9px 14px!important}.scan-ai-fill-btn:hover{border-color:var(--gold-dim)!important;color:var(--gold-light)!important}.wishlist-item{border-bottom:.5px solid var(--navy-border);align-items:flex-start;gap:12px;padding:14px 0;display:flex}.priority-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.prio-high{background:#e24b4a}.prio-med{background:var(--gold)}.prio-low{background:#5dcaa5}.btn-got-it{align-items:center;gap:4px;display:inline-flex;background:var(--navy-mid)!important;cursor:pointer!important;color:#7ddbb8!important;border:.5px solid #5dcaa566!important;border-radius:6px!important;padding:5px 12px!important;font-family:Inter,sans-serif!important;font-size:12px!important}.or-divider{color:var(--muted);align-items:center;gap:10px;margin:1.25rem 0;font-size:12px;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--navy-border);flex:1;height:.5px}.gold-stars{color:var(--gold);font-size:12px}.toast{background:var(--navy-light);border:.5px solid var(--gold-dim);color:var(--gold-light);z-index:9999;white-space:nowrap;pointer-events:none;border-radius:8px;padding:10px 22px;font-size:13px;animation:.2s toastIn;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast-with-action{white-space:normal;text-align:center;pointer-events:auto;flex-direction:column;align-items:center;gap:6px;max-width:min(92vw,420px);display:flex}.toast-message{line-height:1.45}.toast-action{color:var(--cream);text-underline-offset:2px;font-size:12px;text-decoration:underline}.toast-action:hover{color:var(--gold)}.toast-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 14px;display:flex}.toast-action-btn,.toast-dismiss{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.toast-dismiss{color:var(--muted);text-underline-offset:2px;font-size:12px;text-decoration:underline}.toast-dismiss:hover{color:var(--cream)}.help-inline-link{color:var(--gold);text-underline-offset:2px;font-size:12px;text-decoration:underline}.help-inline-link:hover{color:var(--cream)}.status-box-help{margin:8px 0 0}.help-shell{background:var(--navy);min-height:100vh;padding:1.25rem 1rem 3rem}.help-container{max-width:720px;margin:0 auto}.help-back-link{color:var(--muted);margin-bottom:1.25rem;font-size:13px;text-decoration:none;display:inline-block}.help-back-link:hover{color:var(--cream)}.help-header{margin-bottom:1.5rem}.help-title{color:var(--cream);margin:0 0 .5rem;font-family:Playfair Display,serif;font-size:clamp(28px,5vw,36px)}.help-title .accent{color:var(--gold)}.help-intro{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.help-usage-card{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:10px;margin-bottom:1.5rem;padding:1rem 1.1rem}.help-usage-title{color:var(--cream);margin:0 0 .35rem;font-family:Playfair Display,serif;font-size:18px}.help-usage-admin-note{color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .75rem;font-size:11px}.help-usage-rows{gap:.55rem;margin-bottom:.65rem;display:grid}.help-usage-row{justify-content:space-between;gap:1rem;font-size:13px;display:flex}.help-usage-label{color:var(--muted)}.help-usage-value{color:var(--cream);font-variant-numeric:tabular-nums}.help-usage-reset,.help-usage-status{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.help-usage-status{color:var(--gold-light);margin-top:.35rem}.help-toc{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:10px;margin-bottom:1.75rem;padding:.9rem 1rem}.help-toc-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .55rem;font-size:11px}.help-toc-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.help-toc-list a{color:var(--gold);font-size:13px;text-decoration:none}.help-toc-list a:hover{color:var(--cream);text-decoration:underline}.help-sections{gap:2rem;display:grid}.help-section-title{color:var(--cream);margin:0 0 1rem;scroll-margin-top:1rem;font-family:Playfair Display,serif;font-size:22px}.help-qa-list{gap:1.1rem;display:grid}.help-question{color:var(--cream);margin:0 0 .35rem;font-size:14px;font-weight:600}.help-answer{color:var(--muted);white-space:pre-line;margin:0;font-size:13px;line-height:1.55}.help-inline-link{color:var(--gold);text-decoration:none}.help-inline-link:hover{color:var(--cream);text-decoration:underline}.help-disclaimer{border-top:1px solid var(--navy-border);color:var(--muted);margin-top:2rem;padding-top:1rem;font-size:12px;line-height:1.45}.legal-shell{background:var(--navy);min-height:100vh;padding:1.25rem 1rem 3rem}.legal-container{max-width:720px;margin:0 auto}.legal-back-link{color:var(--muted);margin-bottom:1.25rem;font-size:13px;text-decoration:none;display:inline-block}.legal-back-link:hover{color:var(--cream)}.legal-header{margin-bottom:1.5rem}.legal-title{color:var(--cream);margin:0 0 .5rem;font-family:Playfair Display,serif;font-size:clamp(28px,5vw,36px)}.legal-meta{color:var(--muted);margin:.15rem 0 0;font-size:13px}.legal-toc{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:10px;margin-bottom:1.75rem;padding:.9rem 1rem}.legal-toc-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .55rem;font-size:11px}.legal-toc-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.legal-toc-list a{color:var(--gold);font-size:13px;text-decoration:none}.legal-toc-list a:hover{color:var(--cream);text-decoration:underline}.legal-sections{gap:2rem;display:grid}.legal-section{scroll-margin-top:1rem}.legal-section-title{color:var(--cream);margin:0 0 1rem;font-family:Playfair Display,serif;font-size:22px}.legal-subheading{color:var(--cream);margin:1rem 0 .35rem;font-size:14px;font-weight:600}.legal-paragraph{color:var(--muted);margin:0 0 .75rem;font-size:13px;line-height:1.6}.legal-list{color:var(--muted);margin:0 0 .75rem;padding-left:1.25rem;font-size:13px;line-height:1.55}.legal-list li{margin-bottom:.35rem}.legal-table-wrap{margin:0 0 .75rem;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;font-size:12px}.legal-table th,.legal-table td{border:1px solid var(--navy-border);text-align:left;vertical-align:top;padding:.55rem .65rem}.legal-table th{background:var(--navy-mid);color:var(--cream);font-weight:600}.legal-table td{color:var(--muted)}.legal-table a{color:var(--gold);text-decoration:none}.legal-table a:hover{color:var(--cream);text-decoration:underline}.content-inline-mailto{color:var(--gold);text-decoration:none}.content-inline-mailto:hover{color:var(--cream);text-decoration:underline}.legal-footer-notice{border-top:1px solid var(--navy-border);color:var(--muted);margin-top:2rem;padding-top:1rem;font-size:12px;line-height:1.45}.auth-legal-consent{color:var(--muted);text-align:center;font-size:12px;line-height:1.45}.auth-legal-consent-above{margin:0 0 .85rem}.auth-legal-consent-below{margin:.85rem 0 0}.auth-legal-consent a{color:var(--gold);text-decoration:none}.auth-legal-consent a:hover{color:var(--cream);text-decoration:underline}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.empty-state{text-align:center;color:var(--muted);padding:3rem 1rem}.chevron{color:var(--muted);font-size:13px;transition:transform .2s}.chevron.open{transform:rotate(180deg)}.search-bar{margin-bottom:10px}.filter-row{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:1rem;display:grid}@media (max-width:900px){.filter-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.filter-row{grid-template-columns:1fr}}.filter-select{width:100%;position:relative}.filter-select-trigger{background:var(--navy-mid);border:.5px solid var(--navy-border);width:100%;min-height:38px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-family:Inter,sans-serif;font-size:13px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.filter-select-trigger:hover{background:var(--navy-light)}.filter-select.is-open .filter-select-trigger,.filter-select-trigger:focus-visible{border-color:var(--gold-dim);outline:none;box-shadow:0 0 0 1px #c9a84c40}.filter-select-value{text-align:left;flex:1;align-items:center;gap:8px;min-width:0;display:inline-flex}.filter-select-option-icon{flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.filter-select-option-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.filter-select-chevron{color:var(--muted);flex-shrink:0;font-size:14px;transition:transform .15s}.filter-select-chevron.is-open{color:var(--gold-light);transform:rotate(180deg)}.filter-select-popover{z-index:50;text-align:left;-webkit-backdrop-filter:blur(14px);scrollbar-width:thin;scrollbar-color:var(--navy-border) transparent;background:#1e2f42eb;border:.5px solid #c9a84c47;border-radius:12px;max-height:240px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000073,inset 0 0 0 .5px #ffffff0a}.filter-select-up .filter-select-popover{top:auto;bottom:calc(100% + 6px)}.filter-select-trigger:disabled{opacity:.5;cursor:not-allowed}.filter-select-popover::-webkit-scrollbar{width:6px}.filter-select-popover::-webkit-scrollbar-track{background:0 0;margin:4px 0}.filter-select-popover::-webkit-scrollbar-thumb{background:var(--navy-border);border-radius:999px}.filter-select-popover::-webkit-scrollbar-thumb:hover{background:var(--gold-dim)}.filter-select-option{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;font-family:Inter,sans-serif;font-size:13px;transition:background .12s,color .12s;display:flex}.filter-select-option:hover{background:#2a3f57a6}.filter-select-option.is-selected{color:var(--gold-light);background:#c9a84c29}.filter-select-check{width:18px;color:var(--gold);flex-shrink:0;justify-content:flex-end;align-items:center;margin-left:auto;font-size:13px;display:inline-flex}.filter-select-option-label{text-align:left;flex:1;align-items:center;gap:8px;min-width:0;display:inline-flex}.form-group .filter-select{width:100%}.filter-pill{background:var(--navy-light);border:.5px solid var(--gold-dim);color:var(--gold-light);border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;display:inline-flex}.page-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:1rem;display:flex}.export-include-hidden{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;margin-right:auto;font-size:12px;display:inline-flex}.export-include-hidden input{accent-color:var(--gold)}@media (max-width:600px){.stats-grid{grid-template-columns:repeat(2,1fr)}.tab-bar{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:1}.app-header{flex-direction:column}.header-actions{justify-content:flex-end;align-self:flex-end;width:100%}.collection-value,.collection-value-sub{text-align:left}.collection-movement{justify-content:flex-start}}.admin-shell{max-width:1120px;margin:0 auto;padding:1.5rem 1rem 3rem}.admin-header{border-bottom:.5px solid var(--navy-border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.admin-header-brand{align-items:center;gap:12px;display:flex}.admin-title{color:var(--cream);font-family:Playfair Display,serif;font-size:22px;font-weight:400;line-height:1.2}.admin-title .accent{color:var(--gold)}.admin-subtitle{color:var(--muted);margin-top:4px;font-size:12px}.admin-back-link{color:var(--gold-light);white-space:nowrap;font-size:13px;text-decoration:none}.admin-back-link:hover{color:var(--gold)}.admin-section{margin-bottom:2rem}.admin-section-title{color:var(--cream);margin-bottom:.35rem;font-family:Playfair Display,serif;font-size:18px}.admin-section-desc{color:var(--muted);margin-bottom:1rem;font-size:13px}.admin-status-banner{border:1px solid var(--navy-border);border-radius:8px;margin-bottom:1rem;padding:1rem 1.1rem}.admin-status-ok{background:#c9a84c0f;border-color:#c9a84c40}.admin-status-warn{background:#e2c47a14;border-color:#e2c47a59}.admin-status-risk{background:#c85a5a14;border-color:#c85a5a59}.admin-status-title{color:var(--cream);margin-bottom:.35rem;font-size:14px;font-weight:500}.admin-status-detail,.admin-status-note{color:var(--muted);font-size:13px;line-height:1.45}.admin-status-note{margin-top:.35rem}.admin-stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.25rem;display:grid}.admin-stat-card{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:8px;padding:.9rem 1rem}.admin-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:.35rem;font-size:11px}.admin-stat-value{color:var(--cream);font-size:24px;font-weight:500}.admin-stat-sub{color:var(--muted);font-size:14px;font-weight:400}.admin-stat-hint{color:var(--muted);margin-top:.35rem;font-size:11px}.admin-subsection{margin-top:1rem}.admin-subsection-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.6rem;font-size:13px}.admin-action-grid{flex-wrap:wrap;gap:8px;display:flex}.admin-action-chip{background:var(--navy-mid);border:1px solid var(--navy-border);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:.35rem .75rem;font-size:13px;display:flex}.admin-action-chip strong{color:var(--cream);font-weight:500}.admin-chart{flex-direction:column;gap:8px;display:flex}.admin-chart-row{grid-template-columns:88px 1fr 36px;align-items:center;gap:10px;display:grid}.admin-chart-label{color:var(--muted);font-size:12px}.admin-chart-bar-wrap{background:var(--navy-mid);border-radius:999px;height:10px;overflow:hidden}.admin-chart-bar{background:linear-gradient(90deg, var(--gold-dim), var(--gold));border-radius:999px;min-width:4px;height:100%}.admin-chart-val{color:var(--cream);text-align:right;font-size:12px}.admin-footnote{color:var(--muted);margin-top:.75rem;font-size:12px;line-height:1.5}.admin-footnote code{color:var(--gold-light);font-size:11px}.admin-table-wrap{border:1px solid var(--navy-border);border-radius:8px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--navy-border);padding:.65rem .75rem}.admin-table th{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);background:var(--navy-mid);font-size:11px}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:#ffffff05}.admin-table-email{color:var(--cream)}.admin-cell-clip{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.admin-col-datetime{white-space:nowrap;font-variant-numeric:tabular-nums}.admin-col-actions{z-index:2;background:var(--navy);width:44px;min-width:44px;position:sticky;right:0;box-shadow:-6px 0 10px #00000040;padding-left:.5rem!important;padding-right:.5rem!important}.admin-table thead .admin-col-actions{background:var(--navy-mid)}.admin-table tbody tr:hover .admin-col-actions{background:color-mix(in srgb, var(--navy) 92%, white 8%)}.admin-table-toolbar{justify-content:flex-end;margin-bottom:.5rem;display:none}.admin-more-cols-toggle{appearance:none;border:1px solid var(--navy-border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:.35rem .65rem;font-family:inherit;font-size:12px}.admin-more-cols-toggle:hover{color:var(--cream);border-color:var(--gold-dim)}.admin-more-cols-toggle[aria-pressed=true]{color:var(--gold-light);background:#c9a84c14;border-color:#c9a84c73}.admin-actions-menu{display:inline-flex;position:relative}.admin-actions-menu-btn{appearance:none;border:1px solid var(--navy-border);color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:16px;line-height:1;display:inline-flex}.admin-actions-menu-btn:hover:not(:disabled){color:var(--gold-light);border-color:var(--gold-dim)}.admin-actions-menu-btn:disabled{opacity:.45;cursor:not-allowed}.admin-actions-menu-popover{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:6px;flex-direction:column;gap:2px;min-width:140px;padding:4px;display:flex;box-shadow:0 8px 24px #00000059}.admin-actions-menu-popover-portal{z-index:200;position:fixed}.admin-actions-menu-item{appearance:none;color:var(--cream);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:.45rem .55rem;font-family:inherit;font-size:12px}.admin-actions-menu-item:hover:not(:disabled){background:#ffffff0d}.admin-actions-menu-item:disabled{opacity:.45;cursor:not-allowed}.admin-actions-menu-item-warn{color:#e8c896}.admin-actions-menu-item-danger{color:#e8b4b4}.admin-name-cell{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.admin-email-reveal{vertical-align:middle;display:none;position:relative}.admin-email-reveal-btn{appearance:none;border:1px solid var(--navy-border);color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:14px;line-height:1;display:inline-flex}.admin-email-reveal-btn:hover{color:var(--gold-light);border-color:var(--gold-dim)}.admin-email-popover{z-index:20;background:var(--navy-mid);border:1px solid var(--navy-border);min-width:180px;max-width:min(280px,70vw);color:var(--cream);word-break:break-all;white-space:normal;border-radius:6px;padding:.45rem .6rem;font-size:12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000059}.admin-you-badge-desktop{display:inline}.admin-table-empty{text-align:center;color:var(--muted);padding:1.5rem!important}.admin-error-panel{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:8px;padding:1.25rem}.admin-error-panel h2{color:var(--cream);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:18px}.admin-error-panel p{color:var(--muted);font-size:14px;line-height:1.5}.admin-tabs{border-bottom:1px solid var(--navy-border);gap:8px;margin-bottom:1.25rem;padding-bottom:.5rem;display:flex}.admin-tab{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.45rem .75rem;font-family:inherit;font-size:13px}.admin-tab:hover{color:var(--cream);background:#ffffff08}.admin-tab.active{color:var(--gold-light);background:#c9a84c1a}.admin-inline-error{color:#e8b4b4;background:#c85a5a1a;border:1px solid #c85a5a59;border-radius:6px;margin-bottom:.75rem;padding:.65rem .85rem;font-size:13px}.admin-row-actions{gap:6px;display:flex}.admin-btn{appearance:none;cursor:pointer;white-space:nowrap;border-radius:6px;padding:.35rem .6rem;font-family:inherit;font-size:12px}.admin-btn:disabled{opacity:.45;cursor:not-allowed}.admin-btn-gold{color:var(--gold-light);background:#c9a84c26;border:1px solid #c9a84c73}.admin-btn-gold:hover:not(:disabled){background:#c9a84c40}.admin-btn-muted{border:1px solid var(--navy-border);color:var(--muted);background:0 0}.admin-btn-muted:hover:not(:disabled){color:var(--cream);border-color:var(--muted)}.admin-you-badge{text-transform:uppercase;letter-spacing:.4px;color:var(--gold-dim);vertical-align:middle;margin-left:6px;font-size:10px;display:inline-block}.admin-invite-panel{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:8px;margin-bottom:1rem;padding:1rem}.admin-invite-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-invite-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.admin-invite-value{color:var(--gold-light);font-size:15px}.admin-invite-source{color:var(--muted);margin-top:.5rem;font-size:12px;line-height:1.45}.admin-invite-form{flex-direction:column;gap:.65rem;max-width:360px;display:flex}.admin-invite-input{background:var(--navy-mid);border:1px solid var(--navy-border);color:var(--cream);border-radius:6px;padding:.55rem .7rem;font-family:inherit;font-size:14px}.admin-invite-input:focus{border-color:var(--gold-dim);outline:none}.admin-announcement-form{max-width:520px}.admin-announcement-textarea{background:var(--navy-mid);border:1px solid var(--navy-border);color:var(--cream);resize:vertical;border-radius:6px;min-height:140px;padding:.55rem .7rem;font-family:inherit;font-size:14px;line-height:1.5}.admin-announcement-textarea:focus{border-color:var(--gold-dim);outline:none}.admin-inline-success{color:var(--gold-light);background:#c9a84c14;border:1px solid #c9a84c4d;border-radius:6px;padding:.65rem .85rem;font-size:13px}.admin-btn-warn{color:#e8c896;background:#c88c3c1f;border:1px solid #c88c3c66}.admin-btn-warn:hover:not(:disabled){background:#c88c3c38}.admin-btn-danger{color:#e8b4b4;background:#c85a5a1f;border:1px solid #c85a5a66}.admin-btn-danger:hover:not(:disabled){background:#c85a5a38}.admin-status-badge{color:#b8ddb8;white-space:nowrap;background:#78b4781f;border:1px solid #78b47859;border-radius:999px;padding:.2rem .45rem;font-size:11px;display:inline-block}.admin-status-suspended{color:#e8b4b4;background:#c85a5a1a;border-color:#c85a5a59}.admin-dialog-backdrop{z-index:100;background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-dialog{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:10px;width:min(420px,100%);padding:1.1rem 1.15rem;box-shadow:0 16px 40px #0006}.admin-dialog-title{color:var(--cream);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:18px}.admin-dialog-desc{color:var(--muted);margin-bottom:.85rem;font-size:13px;line-height:1.5}.admin-dialog-desc strong{color:var(--cream);word-break:break-all;font-weight:500}.admin-dialog-input{width:100%;margin-bottom:.85rem}.admin-dialog-error{color:#e0909a;margin:0 0 .85rem;font-size:13px;line-height:1.45}.admin-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.app-dialog-backdrop{z-index:100;background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.app-dialog{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:10px;width:min(420px,100%);max-height:min(90vh,640px);padding:1.1rem 1.15rem;overflow-y:auto;box-shadow:0 16px 40px #0006}.app-dialog-title{color:var(--cream);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:18px}.app-dialog-desc{color:var(--muted);margin-bottom:.85rem;font-size:13px;line-height:1.5}.app-dialog-actions{justify-content:flex-end;gap:8px;margin-top:.5rem;display:flex}.password-field{position:relative}.password-field input{width:100%;padding-right:2.5rem}.password-field-toggle{width:2.5rem;height:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:16px;display:flex;position:absolute;top:0;right:0}.password-field-toggle:hover{color:var(--cream)}.password-field-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;border-radius:6px}.change-password-forgot{color:var(--muted);margin:1.25rem 0 .85rem;font-size:12px;line-height:1.45}.change-password-forgot-link{font:inherit;color:var(--gold);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.change-password-forgot-link:hover:not(:disabled){color:var(--cream)}.change-password-forgot-link:disabled{opacity:.5;cursor:not-allowed}.suspended-card{max-width:420px}.suspended-message{color:var(--muted);text-align:center;margin:.5rem 0 1.25rem;font-size:14px;line-height:1.55}.suspended-actions{flex-direction:column;gap:10px;display:flex}.suspended-footnote{color:var(--muted);text-align:center;margin-top:1rem;font-size:12px;line-height:1.45}@media (max-width:720px){.admin-stat-grid{grid-template-columns:1fr}.admin-header{flex-direction:column}.admin-chart-row{grid-template-columns:72px 1fr 28px}.admin-table-toolbar{display:flex}.admin-col-email,.admin-col-mobile-extra{display:none}.admin-table-wrap.show-extra-cols .admin-col-email,.admin-table-wrap.show-extra-cols .admin-col-mobile-extra{display:table-cell}.admin-table-wrap.show-extra-cols .admin-email-reveal{display:none!important}.admin-email-reveal{display:inline-flex}.admin-you-badge-desktop{display:none}.admin-cell-clip{max-width:120px}}.import-card{max-width:960px}.import-intro,.import-hint{color:var(--muted);margin-bottom:16px;font-size:13px;line-height:1.5}.import-actions{margin-bottom:16px}.import-file-label{margin-bottom:8px;display:block}.import-file-button{border:1px dashed var(--navy-border);color:var(--gold);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:10px 14px;font-size:13px;display:inline-flex}.import-file-input{display:none}.import-file-name{color:var(--muted);margin-bottom:12px;font-size:12px}.import-preset-banner{border-left:3px solid var(--gold);background:color-mix(in srgb, var(--gold) 10%, var(--cream));color:var(--navy);margin:0 0 12px;padding:10px 12px;font-size:13px}.import-preset-picker{margin:0 0 12px}.import-preset-picker-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.import-summary{flex-wrap:wrap;gap:12px;margin-bottom:12px;font-size:13px;display:flex}.import-preview-wrap{border:1px solid var(--navy-border);border-radius:8px;margin-bottom:16px;overflow-x:auto}.import-table{border-collapse:collapse;width:100%;font-size:12px}.import-table th,.import-table td{text-align:left;border-bottom:1px solid var(--navy-border);padding:10px 12px}.import-preview-wrap .import-table td{vertical-align:top}.import-mapping-wrap .import-table td{vertical-align:middle}.import-table th{color:var(--cream);background:#2a3f5759;font-weight:500}.import-col-check{width:40px}.import-row--error td{background:#b43c3c1f}.import-row--duplicate_warning td{background:#c9a84c1f}.import-row--valid td{background:#3c8c5a14}.import-status{border-radius:999px;padding:2px 8px;font-size:11px;display:inline-block}.import-status--valid{color:#7ddbb8;background:#3c8c5a33}.import-status--duplicate_warning{color:var(--gold);background:#c9a84c40}.import-status--error{color:#e0909a;background:#b43c3c33}.import-progress{color:var(--muted);margin-bottom:12px;font-size:13px}.import-form-actions{flex-wrap:wrap;gap:10px;display:flex}.import-done{font-size:14px}.import-failures{color:var(--muted);margin:12px 0 16px;padding-left:20px;font-size:13px}.import-mapping-wrap{margin-bottom:16px}.import-action-select{max-width:220px}.import-bulk-bar{border-bottom:1px solid var(--navy-border);background:#2a3f5733;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.import-bulk-label{color:var(--muted);margin-right:4px;font-size:12px}.import-action-check{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.import-enrich-banner{border:1px solid var(--navy-border);background:#2a3f5759;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;font-size:13px;display:flex}.import-enrich-banner-body{color:var(--text);align-items:center;gap:8px;display:flex}.import-enrich-banner-dismiss{flex-shrink:0;padding:6px 12px;font-size:12px}.import-enrich-offer{margin:16px 0;padding:14px}.import-enrich-offer p{margin-bottom:12px}.import-enrich-actions{flex-wrap:wrap;gap:10px;display:flex}
