@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400&family=Quicksand:wght@400;500;600;700&display=swap";:root{--font-display: "Cormorant Garamond", "Georgia", serif;--font-body: "Quicksand", -apple-system, BlinkMacSystemFont, sans-serif;--radius: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow: 0 2px 10px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .18);--sidebar-width: 220px;--topbar-height: 56px;--transition: .2s ease}[data-theme=amber][data-mode=light]{--color-bg: #fef6ed;--color-surface-lowest: #f0e4d2;--color-surface-low: #f5ead8;--color-surface: #fffcf5;--color-surface-high: #fff9ee;--color-surface-highest: #f5ead8;--color-surface-warm: #f5e8d0;--color-text: #180a04;--color-text-muted: #8b5e3c;--color-primary: #b38600;--color-primary-hover: #9a7400;--color-primary-light: rgba(179, 134, 0, .08);--color-accent: #f0a800;--color-accent-hover: #d89800;--color-accent-light: rgba(240, 168, 0, .09);--color-border: #e0c89a;--color-border-light: #f0dfc0;--color-nav-bg: #180a04;--color-nav-text: #f8e8cc;--color-nav-active: #b38600;--color-danger: #c24a42;--color-danger-light: rgba(194, 74, 66, .08);--color-success: #5a8a52;--color-success-light: rgba(90, 138, 82, .08)}[data-theme=amber][data-mode=dark]{--color-bg: #131110;--color-surface-lowest: #0e0c0a;--color-surface-low: #1a1714;--color-surface: #211e1a;--color-surface-high: #2a2622;--color-surface-highest: #35302a;--color-surface-warm: #2a2622;--color-text: #f8e8cc;--color-text-muted: #a07848;--color-primary: #ffbf00;--color-primary-hover: #e8ac00;--color-primary-light: rgba(255, 191, 0, .1);--color-accent: #ffbe18;--color-accent-hover: #e8ac14;--color-accent-light: rgba(255, 190, 24, .14);--color-border: #3a3228;--color-border-light: #2a2420;--color-nav-bg: #0e0c0a;--color-nav-text: #f8e8cc;--color-nav-active: #ffbf00;--color-danger: #e05a50;--color-danger-light: rgba(224, 90, 80, .12);--color-success: #6aaa60;--color-success-light: rgba(106, 170, 96, .12)}[data-theme=oud][data-mode=light]{--color-bg: #faf2f0;--color-surface-lowest: #ecdcd8;--color-surface-low: #f2e4e0;--color-surface: #fffaf8;--color-surface-high: #fff6f4;--color-surface-highest: #f2e4e0;--color-surface-warm: #f5e0d8;--color-text: #220e1a;--color-text-muted: #7a3f60;--color-primary: #d61b5e;--color-primary-hover: #c01850;--color-primary-light: rgba(214, 27, 94, .08);--color-accent: #e8a818;--color-accent-hover: #d09815;--color-accent-light: rgba(232, 168, 24, .09);--color-border: #e8c4ba;--color-border-light: #f0d0c8;--color-nav-bg: #220e1a;--color-nav-text: #f2d8cc;--color-nav-active: #d61b5e;--color-danger: #c24a42;--color-danger-light: rgba(194, 74, 66, .08);--color-success: #5a8a52;--color-success-light: rgba(90, 138, 82, .08)}[data-theme=oud][data-mode=dark]{--color-bg: #180a14;--color-surface-lowest: #100810;--color-surface-low: #1e0e18;--color-surface: #22101c;--color-surface-high: #2c1626;--color-surface-highest: #381c30;--color-surface-warm: #2a1220;--color-text: #f2d8cc;--color-text-muted: #a8588a;--color-primary: #f02070;--color-primary-hover: #d81c64;--color-primary-light: rgba(240, 32, 112, .12);--color-accent: #f0be28;--color-accent-hover: #d8aa22;--color-accent-light: rgba(240, 190, 40, .12);--color-border: #3e1a30;--color-border-light: #2a1220;--color-nav-bg: #120810;--color-nav-text: #f2d8cc;--color-nav-active: #f02070;--color-danger: #e05a50;--color-danger-light: rgba(224, 90, 80, .12);--color-success: #6aaa60;--color-success-light: rgba(106, 170, 96, .12)}[data-theme=vetiver][data-mode=light]{--color-bg: #f5f4ee;--color-surface-lowest: #e0ddd0;--color-surface-low: #eae8dc;--color-surface: #fcfbf5;--color-surface-high: #f8f7f0;--color-surface-highest: #eae8dc;--color-surface-warm: #e8e2d0;--color-text: #141e10;--color-text-muted: #5a7258;--color-primary: #e04810;--color-primary-hover: #c84010;--color-primary-light: rgba(224, 72, 16, .08);--color-accent: #e8b008;--color-accent-hover: #d0a008;--color-accent-light: rgba(232, 176, 8, .09);--color-tertiary: #3a7838;--color-tertiary-light: rgba(58, 120, 56, .08);--color-border: #cec4a8;--color-border-light: #ddd8c0;--color-nav-bg: #141e10;--color-nav-text: #e0dac4;--color-nav-active: #3a7838;--color-danger: #c24a42;--color-danger-light: rgba(194, 74, 66, .08);--color-success: #5a8a52;--color-success-light: rgba(90, 138, 82, .08)}[data-theme=vetiver][data-mode=dark]{--color-bg: #0e1610;--color-surface-lowest: #0a100c;--color-surface-low: #121c14;--color-surface: #141e14;--color-surface-high: #1c2a1c;--color-surface-highest: #263626;--color-surface-warm: #1a2818;--color-text: #e0dac4;--color-text-muted: #7a9a76;--color-primary: #f06020;--color-primary-hover: #d85418;--color-primary-light: rgba(240, 96, 32, .12);--color-accent: #f0c418;--color-accent-hover: #d8b014;--color-accent-light: rgba(240, 196, 24, .12);--color-tertiary: #50a84c;--color-tertiary-light: rgba(80, 168, 76, .12);--color-border: #283a26;--color-border-light: #1e2a1c;--color-nav-bg: #0a100c;--color-nav-text: #e0dac4;--color-nav-active: #50a84c;--color-danger: #e05a50;--color-danger-light: rgba(224, 90, 80, .12);--color-success: #6aaa60;--color-success-light: rgba(106, 170, 96, .12)}[data-theme=amber]{--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow: 0 2px 10px rgba(0, 0, 0, .14);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .2);--card-radius: 10px}[data-theme=amber] .perfume-card{border-radius:var(--card-radius)}[data-theme=amber] .perfume-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}[data-theme=amber] .perfume-card__brand{color:var(--color-text-muted)}[data-theme=amber] .perfume-card__badge,[data-theme=amber] .perfume-card__category,[data-theme=amber] .perfume-card__divider,[data-theme=amber] .perfume-card__top-accent{display:none}[data-theme=amber] fieldset{background:transparent;border:1px solid var(--color-border-light)}[data-theme=amber] .data-table thead th{background:var(--color-surface-highest)}[data-theme=amber] .btn-primary,[data-theme=amber] .login-card form button,.login-card form [data-theme=amber] button{box-shadow:none}[data-theme=amber] .btn-primary:hover,[data-theme=amber] .login-card form button:hover,.login-card form [data-theme=amber] button:hover{box-shadow:var(--shadow-sm)}[data-theme=oud]{--shadow-sm: 0 1px 4px rgba(34, 14, 26, .08), 0 1px 2px rgba(214, 27, 94, .04);--shadow: 0 2px 12px rgba(34, 14, 26, .1), 0 2px 6px rgba(214, 27, 94, .05);--shadow-lg: 0 8px 32px rgba(34, 14, 26, .14), 0 4px 12px rgba(214, 27, 94, .06);--card-radius: 12px}[data-theme=oud] .perfume-card{border-radius:var(--card-radius);border:1px solid var(--color-primary-light)}[data-theme=oud] .perfume-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}[data-theme=oud] .perfume-card__brand{color:var(--color-text-muted)}[data-theme=oud] .perfume-card__badge{display:block;position:absolute;top:8px;right:8px;background:var(--color-primary);color:#fff;font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:10px;letter-spacing:.05em;text-transform:uppercase}[data-theme=oud] .perfume-card__category{display:block;font-size:.75rem;color:var(--color-text-muted);font-style:italic;margin-bottom:8px}[data-theme=oud] .perfume-card__price{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}[data-theme=oud] .perfume-card__divider,[data-theme=oud] .perfume-card__top-accent{display:none}[data-theme=oud] fieldset{background:var(--color-primary-light);border:1px solid var(--color-border-light)}[data-theme=oud] .data-table thead th{background:var(--color-primary-light)}[data-theme=oud] .data-table tbody tr:nth-child(2n){background:var(--color-primary-light)}[data-theme=oud] .btn-primary,[data-theme=oud] .login-card form button,.login-card form [data-theme=oud] button{box-shadow:var(--shadow-sm)}[data-theme=oud] .btn-primary:hover,[data-theme=oud] .login-card form button:hover,.login-card form [data-theme=oud] button:hover{box-shadow:var(--shadow)}[data-theme=vetiver]{--shadow-sm: 0 1px 4px rgba(20, 30, 16, .07);--shadow: 0 3px 12px rgba(20, 30, 16, .1);--shadow-lg: 0 8px 28px rgba(20, 30, 16, .14);--card-radius: 10px}[data-theme=vetiver] .perfume-card{border-radius:var(--card-radius);border:1px solid var(--color-border);position:relative}[data-theme=vetiver] .perfume-card:hover{border-color:var(--color-accent)}[data-theme=vetiver] .perfume-card__top-accent{display:block;position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-accent);z-index:1}[data-theme=vetiver] .perfume-card__image{position:relative}[data-theme=vetiver] .perfume-card__image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.03;background-image:repeating-linear-gradient(45deg,currentColor 0px,currentColor 1px,transparent 1px,transparent 8px);pointer-events:none}[data-theme=vetiver] .perfume-card__brand{color:var(--color-tertiary, var(--color-accent));font-weight:700}[data-theme=vetiver] .perfume-card__divider{display:block;width:30px;height:2px;background:var(--color-accent);margin-bottom:8px}[data-theme=vetiver] .perfume-card__badge,[data-theme=vetiver] .perfume-card__category{display:none}[data-theme=vetiver] .perfume-card__meta span{background:var(--color-primary-light);color:var(--color-primary);font-weight:600;font-size:.7rem}[data-theme=vetiver] .perfume-card__meta span:nth-child(2){background:var(--color-accent-light);color:var(--color-accent)}[data-theme=vetiver] fieldset{background:transparent;border:none;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-lg) var(--radius-lg) 0;padding-left:20px}[data-theme=vetiver] fieldset legend{border-bottom:2px solid var(--color-accent);padding-bottom:4px}[data-theme=vetiver] .data-table thead th{background:var(--color-tertiary-light, var(--color-accent-light))}[data-theme=vetiver] .data-table tbody tr:hover{border-left:3px solid var(--color-accent)}[data-theme=vetiver] .btn-primary,[data-theme=vetiver] .login-card form button,.login-card form [data-theme=vetiver] button{box-shadow:none;border-bottom:2px solid var(--color-primary-hover)}[data-theme=vetiver] .btn-primary:hover,[data-theme=vetiver] .login-card form button:hover,.login-card form [data-theme=vetiver] button:hover{background:var(--color-primary-hover)}[data-mode=dark] .sidebar{box-shadow:2px 0 16px #0006}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:500;font-size:15px;background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;background-image:radial-gradient(ellipse at 15% 0%,var(--color-primary-light) 0%,transparent 50%),radial-gradient(ellipse at 85% 100%,var(--color-accent-light) 0%,transparent 50%);min-height:100vh}img{max-width:100%;display:block}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}h1,h2,h3{font-family:var(--font-display);font-weight:600;color:var(--color-text);line-height:1.25}h1{font-size:2.6rem;letter-spacing:-.01em;margin-bottom:24px}h2{font-size:1.6rem;margin-bottom:.75rem}h3{font-size:1.15rem}.page-subtitle{font-family:var(--font-display);font-size:1rem;font-weight:400;font-style:italic;color:var(--color-text-muted);margin-top:4px}strong{font-weight:700}.container{max-width:1200px;margin:0 auto;padding:0 24px}.app-layout{display:flex;min-height:100vh}.app-layout__main{flex:1;min-width:0;padding:40px 48px 48px;margin-left:var(--sidebar-width);max-width:1200px}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--color-surface-low);color:var(--color-nav-text);display:flex;flex-direction:column;z-index:100;overflow-y:auto}.sidebar__brand{padding:28px 20px 20px}.sidebar__brand-link{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--color-text);text-decoration:none;display:block;line-height:1.2;transition:opacity var(--transition)}.sidebar__brand-link:hover{opacity:.85;color:var(--color-text)}.sidebar__nav{flex:1;padding:0 12px;display:flex;flex-direction:column;gap:2px}.sidebar__link{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius);font-size:.88rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:all var(--transition);border-left:3px solid transparent}.sidebar__link:hover{color:var(--color-text);background:#ffffff0a}.sidebar__link.router-link-exact-active,.sidebar__link.router-link-active{color:var(--color-primary);border-left-color:var(--color-primary);background:var(--color-primary-light)}.sidebar__icon{width:16px;height:16px;flex-shrink:0;opacity:.4;transition:opacity var(--transition)}.sidebar__link:hover .sidebar__icon,.sidebar__link.router-link-exact-active .sidebar__icon,.sidebar__link.router-link-active .sidebar__icon{opacity:.7}.sidebar__group-label{padding:20px 12px 6px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.sidebar__footer{padding:16px;display:flex;flex-direction:column;gap:8px;border-top:1px solid rgba(255,255,255,.06)}.sidebar__cta{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#1a1200;font-family:var(--font-body);font-size:.88rem;font-weight:700;text-align:center;text-decoration:none;border-radius:var(--radius);transition:all var(--transition);margin-bottom:8px}.sidebar__cta:hover{opacity:.9;transform:translateY(-1px);color:#1a1200}.sidebar__cta--secondary{background:transparent;border:1px solid rgba(255,255,255,.08);color:var(--color-text-muted);font-weight:500}.sidebar__cta--secondary:hover{background:#ffffff0a;color:var(--color-text);opacity:1}.sidebar__cta-icon{width:14px;height:14px;flex-shrink:0}.sidebar__theme-toggle{background:none;border:none;padding:6px 8px;font-family:var(--font-body);font-size:.82rem;color:var(--color-text-muted);cursor:pointer;text-align:left;border-radius:var(--radius);transition:all var(--transition)}.sidebar__theme-toggle:hover{color:var(--color-text);background:#ffffff0a}.sidebar__user{font-size:.78rem;color:var(--color-text-muted);padding:0 8px}.sidebar__logout{background:none;border:none;padding:6px 8px;font-family:var(--font-body);font-size:.82rem;color:var(--color-text-muted);cursor:pointer;text-align:left;border-radius:var(--radius);transition:all var(--transition)}.sidebar__logout:hover{color:var(--color-danger)}.topbar{display:none;position:fixed;top:0;left:0;right:0;z-index:100;height:var(--topbar-height);align-items:center;justify-content:space-between;padding:0 16px;background:var(--color-surface-low);box-shadow:0 2px 8px #00000026}.topbar__brand{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--color-text);text-decoration:none}.topbar__brand:hover{color:var(--color-text)}.topbar__hamburger{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius);background:transparent;color:var(--color-text);font-size:1.3rem;cursor:pointer;transition:background var(--transition);line-height:1}.topbar__hamburger:hover{background:#ffffff14}.mobile-nav{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000080}.mobile-nav__panel{position:absolute;top:0;left:0;bottom:0;width:280px;max-width:85vw;background:var(--color-surface-low);display:flex;flex-direction:column;overflow-y:auto;padding:20px 0;box-shadow:4px 0 24px #0000004d}.mobile-nav__links{display:flex;flex-direction:column}.mobile-nav__links a{padding:12px 24px;font-size:.95rem;font-weight:500;color:var(--color-text);text-decoration:none;transition:background var(--transition)}.mobile-nav__links a:hover{background:var(--color-primary-light)}.mobile-nav__links a.router-link-exact-active,.mobile-nav__links a.router-link-active{color:var(--color-primary);font-weight:600;background:var(--color-primary-light)}.mobile-nav__divider{height:1px;background:#ffffff0f;margin:8px 24px}.mobile-nav__label{padding:8px 24px 4px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.mobile-nav__cta{display:flex;align-items:center;justify-content:center;gap:6px;margin:8px 16px;padding:10px 14px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#1a1200;font-family:var(--font-body);font-size:.88rem;font-weight:700;text-align:center;text-decoration:none;border-radius:var(--radius)}.mobile-nav__cta--secondary{background:transparent;border:1px solid rgba(255,255,255,.08);color:var(--color-text-muted);font-weight:500}.mobile-nav__cta-icon{width:14px;height:14px;flex-shrink:0}.mobile-nav__footer{margin-top:auto;padding:16px 24px;border-top:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:10px}.mobile-nav__theme{background:none;border:1px solid var(--color-border);border-radius:var(--radius);padding:8px 12px;font-family:var(--font-body);font-size:.88rem;color:var(--color-text);cursor:pointer;text-align:left;transition:background var(--transition)}.mobile-nav__theme:hover{background:var(--color-surface-warm)}.mobile-nav__user{font-size:.82rem;color:var(--color-text-muted);padding:0 4px}.mobile-nav__logout{background:none;border:1px solid var(--color-danger);border-radius:var(--radius);padding:8px 12px;font-family:var(--font-body);font-size:.88rem;color:var(--color-danger);cursor:pointer;text-align:center;transition:all var(--transition)}.mobile-nav__logout:hover{background:var(--color-danger-light)}.mobile-nav-enter-active,.mobile-nav-leave-active{transition:opacity .25s ease}.mobile-nav-enter-active .mobile-nav__panel,.mobile-nav-leave-active .mobile-nav__panel{transition:transform .25s ease}.mobile-nav-enter-from,.mobile-nav-leave-to{opacity:0}.mobile-nav-enter-from .mobile-nav__panel,.mobile-nav-leave-to .mobile-nav__panel{transform:translate(-100%)}.app-layout__main{transition:filter .15s ease,opacity .15s ease}.app-layout__main.page-blur{filter:blur(4px);opacity:.6}.btn,.price-suggestions button{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);background:var(--color-surface-high);color:var(--color-text);font-family:var(--font-body);font-size:.88rem;font-weight:500;cursor:pointer;transition:all var(--transition);text-decoration:none;line-height:1.4}.btn:hover,.price-suggestions button:hover{background:var(--color-surface-highest);border-color:#ffffff24;color:var(--color-text);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active,.price-suggestions button:active{transform:translateY(0);box-shadow:none}.btn-primary,.login-card form button{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border:none;color:#1a1200;font-weight:600}.btn-primary:hover,.login-card form button:hover{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#1a1200;filter:brightness(1.1);box-shadow:0 4px 14px var(--color-primary-light)}.btn-primary:active,.login-card form button:active{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));filter:brightness(.95)}.btn-primary:disabled,.login-card form button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;filter:none;transform:none}.btn-danger{color:var(--color-danger);border-color:#c24a4226;background:transparent}.btn-danger:hover{background:var(--color-danger-light);border-color:var(--color-danger);color:var(--color-danger)}.btn-sm,.price-suggestions button{padding:5px 12px;font-size:.8rem}input:not([type]),input[type=text],input[type=email],input[type=number],input[type=search],input[type=date],input[type=url],select,textarea{width:100%;padding:9px 12px;border:none;border-bottom:2px solid var(--color-border);border-radius:var(--radius) var(--radius) 0 0;background:var(--color-surface-lowest);color:var(--color-text);font-family:var(--font-body);font-size:.9rem;transition:border-color var(--transition),box-shadow var(--transition);line-height:1.4}input:not([type])::placeholder,input[type=text]::placeholder,input[type=email]::placeholder,input[type=number]::placeholder,input[type=search]::placeholder,input[type=date]::placeholder,input[type=url]::placeholder,select::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:.6}input:not([type]):focus,input[type=text]:focus,input[type=email]:focus,input[type=number]:focus,input[type=search]:focus,input[type=date]:focus,input[type=url]:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--color-primary);box-shadow:none}textarea{resize:vertical;min-height:80px}select{cursor:pointer}label{display:block;margin-bottom:4px;font-size:.72rem;font-weight:700;color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-bottom:24px}.form-group.full{grid-column:1/-1}.checkbox-inline{display:flex;align-items:center;gap:8px;height:var(--input-height, 42px);font-weight:400;text-transform:none;letter-spacing:0;cursor:pointer}.form-actions{display:flex;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.06)}.card{background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014}.data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);overflow:hidden}.data-table th,.data-table td{padding:10px 14px;text-align:left;font-size:.9rem}.data-table thead th{background:var(--color-surface-highest);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border-bottom:1px solid rgba(255,255,255,.04)}.data-table tbody tr{transition:background var(--transition)}.data-table tbody tr:hover{background:var(--color-surface-highest)}.data-table tbody tr:not(:last-child) td{border-bottom:1px solid rgba(255,255,255,.04)}.data-table tbody tr{cursor:default;-webkit-user-select:none;user-select:none}.data-table .row-actions{display:inline-flex;gap:6px;white-space:nowrap}.data-table tfoot td{background:var(--color-surface-highest);border-top:1px solid rgba(255,255,255,.04);font-size:.9rem}.data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);padding:20px 24px;text-align:center;box-shadow:0 2px 8px #00000014;transition:transform var(--transition),box-shadow var(--transition)}.stat-card:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.stat-card .stat-value{font-family:var(--font-display);font-size:2.4rem;font-weight:700;color:var(--color-text);line-height:1.2;margin-bottom:4px}.stat-card .stat-label{font-size:.78rem;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.stat-card.positive .stat-value{color:var(--color-success)}.stat-card.negative .stat-value{color:var(--color-danger)}.stat-card--action{border:1px dashed var(--color-primary);background:var(--color-primary-light);cursor:pointer;text-decoration:none;color:inherit}.stat-card--action .stat-value,.stat-card--action .stat-label{color:var(--color-primary)}.stat-card--action:hover{border-style:solid;border-color:var(--color-primary);background:var(--color-primary-light);transform:translateY(-2px);box-shadow:0 4px 14px var(--color-primary-light)}.stat-card--action:hover .stat-value{filter:brightness(1.15)}.stat-card__icon{width:28px;height:28px}.stat-card--soft{border:1px dashed var(--color-accent);background:var(--color-accent-light)}.stat-card--soft .stat-value,.stat-card--soft .stat-label{color:var(--color-accent)}.stat-card--soft:hover{border-style:solid;border-color:var(--color-accent);background:var(--color-accent-light);transform:translateY(-2px);box-shadow:0 4px 14px var(--color-accent-light)}.stat-card--soft:hover .stat-value{filter:brightness(1.15)}.login-view{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:radial-gradient(ellipse at 30% 20%,var(--color-primary-light) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,var(--color-accent-light) 0%,transparent 50%),var(--color-bg)}.login-card{width:100%;max-width:400px;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);padding:48px 40px;box-shadow:var(--shadow-lg);text-align:center}.login-card:before{content:"";display:block;width:64px;height:88px;margin:0 auto 18px;background-size:contain;background-repeat:no-repeat;background-position:center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 110'%3E%3Cellipse cx='30' cy='22' rx='6.5' ry='22' transform='rotate(-6 30 22)' fill='%23c4584f'/%3E%3Cellipse cx='50' cy='22' rx='6.5' ry='22' transform='rotate(6 50 22)' fill='%23c4584f'/%3E%3Ccircle cx='40' cy='50' r='16' fill='%23c4584f'/%3E%3Cellipse cx='40' cy='80' rx='21' ry='26' fill='%23c4584f'/%3E%3Cellipse cx='30' cy='22' rx='3.5' ry='15' transform='rotate(-6 30 22)' fill='white' opacity='0.3'/%3E%3Cellipse cx='50' cy='22' rx='3.5' ry='15' transform='rotate(6 50 22)' fill='white' opacity='0.3'/%3E%3Ccircle cx='35' cy='47' r='2.2' fill='white' opacity='0.5'/%3E%3Ccircle cx='45' cy='47' r='2.2' fill='white' opacity='0.5'/%3E%3Cellipse cx='40' cy='53' rx='2' ry='1.3' fill='white' opacity='0.4'/%3E%3C/svg%3E");opacity:.85}.login-card h1{font-family:var(--font-display);font-size:2.6rem;font-weight:700;color:var(--color-text);margin-bottom:6px;letter-spacing:.01em}.login-card>p{color:var(--color-text-muted);font-size:.95rem;margin-bottom:32px}.login-card form{display:flex;flex-direction:column;gap:14px}.login-card form input{text-align:center;font-size:1rem;padding:12px 16px}.login-card form button{width:100%;padding:12px;font-size:.95rem;border-radius:var(--radius);cursor:pointer;font-family:var(--font-body)}.login-sent{margin-top:20px;padding:12px;background:var(--color-success-light);color:var(--color-success);border-radius:var(--radius);font-weight:700;font-size:.9rem}.login-error{margin-top:20px;padding:12px;background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius);font-weight:700;font-size:.9rem}.collection-view__header,.sales-view__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px;flex-wrap:wrap}.collection-view__header h1,.sales-view__header h1{margin-bottom:0}.perfume-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.perfume-card{display:flex;flex-direction:column;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 8px #00000014;transition:transform var(--transition),box-shadow var(--transition)}.perfume-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);color:inherit}.perfume-card__image{position:relative;aspect-ratio:4/3;background:var(--color-surface-warm);overflow:hidden;display:flex;align-items:center;justify-content:center}.perfume-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.perfume-card:hover .perfume-card__image img{transform:scale(1.04)}.perfume-card__placeholder{font-size:2.5rem;opacity:.25}.perfume-card__body{padding:14px 16px;flex:1;display:flex;flex-direction:column}.perfume-card__brand{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);margin-bottom:2px}.perfume-card__name{font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.3;margin-bottom:8px}.perfume-card__meta{display:flex;gap:8px;flex-wrap:wrap;font-size:.78rem;color:var(--color-text-muted)}.perfume-card__meta span{padding:2px 8px;background:var(--color-surface-warm);border-radius:3px}.perfume-card__condition[data-condition=sealed]{color:var(--color-success);background:var(--color-success-light)!important}.perfume-card__condition[data-condition=opened]{color:var(--color-accent);background:var(--color-accent-light)!important}.perfume-card__condition[data-condition=empty]{color:var(--color-text-muted)}.perfume-card__top-accent,.perfume-card__badge,.perfume-card__category,.perfume-card__divider{display:none}.perfume-card__price{font-weight:600;color:var(--color-primary)}.perfume-card__remaining{position:relative;margin-top:10px;height:4px;background:var(--color-surface-lowest);border-radius:2px;overflow:hidden}.perfume-card__remaining-bar{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px;transition:width .3s ease}.perfume-card__remaining-label{display:block;margin-top:4px;font-size:.72rem;color:var(--color-text-muted)}.perfume-filters,.sales-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;padding:16px 20px;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg)}.perfume-filters input,.perfume-filters select,.sales-filters input,.sales-filters select{width:auto;min-width:140px;flex:1}.perfume-filters input[type=search],.sales-filters input[type=search]{flex:2}.perfume-detail{max-width:1000px}.perfume-detail__topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;gap:16px}.perfume-detail__back{font-size:.85rem;color:var(--color-text-muted);text-decoration:none;transition:color var(--transition)}.perfume-detail__back:hover{color:var(--color-text)}.perfume-detail__actions{display:flex;gap:8px}.perfume-detail__hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:40px;align-items:start}.perfume-detail__gallery{display:flex;flex-direction:column;gap:12px}.perfume-detail__main-photo{aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-high)}.perfume-detail__main-photo img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;transition:transform .3s ease}.perfume-detail__main-photo img:hover{transform:scale(1.03)}.perfume-detail__main-photo--empty{display:flex;align-items:center;justify-content:center;font-size:3rem;opacity:.2}.perfume-detail__thumbs{display:flex;gap:8px}.perfume-detail__thumbs img{width:64px;height:64px;object-fit:cover;border-radius:var(--radius);cursor:pointer;opacity:.5;transition:all var(--transition);border:2px solid transparent}.perfume-detail__thumbs img:hover,.perfume-detail__thumbs img.active{opacity:1;border-color:var(--color-primary)}.perfume-detail__info h1{font-size:3.2rem;line-height:1.05;margin-bottom:4px}.perfume-detail__brand-name{font-family:var(--font-display);font-size:1.3rem;font-style:italic;color:var(--color-primary);margin-bottom:8px}.perfume-detail__parfumer{font-size:.88rem;color:var(--color-text-muted);margin-bottom:16px}.perfume-detail__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.perfume-detail__section-title{font-family:var(--font-display);font-size:1.15rem;font-weight:600;font-style:italic;color:var(--color-text);margin-bottom:14px}.perfume-detail__olfactory{margin-top:8px}.chip{display:inline-flex;align-items:center;gap:4px;padding:5px 14px;background:var(--color-surface-highest);border-radius:999px;font-size:.82rem;color:var(--color-text)}.chip--sealed{color:var(--color-success)}.chip--opened{color:var(--color-accent)}.chip--empty{color:var(--color-text-muted)}.sex-symbol{font-size:1.2em;font-weight:200;opacity:.35;margin-left:.35em}h1 .sex-symbol{opacity:.1}.discontinued-badge{font-size:.65em;font-weight:600;letter-spacing:.05em;opacity:.4;vertical-align:middle;margin-left:.3em}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;z-index:300;background:#000000d9;display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:24px}.lightbox img{max-width:100%;max-height:100%;object-fit:contain;border:20px solid #fff;border-radius:var(--radius);box-shadow:0 0 40px #00000080}.meta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 24px;padding:24px 28px;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);margin-bottom:28px;font-size:.92rem}.meta-grid strong{color:var(--color-text-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}.detail-zones{display:grid;grid-template-columns:3fr 2fr;gap:20px;margin-bottom:28px}.detail-card{background:var(--color-surface-high);border-radius:var(--radius-lg);padding:24px 28px}.detail-card__heading{font-family:var(--font-display);font-size:1.15rem;font-weight:600;font-style:italic;color:var(--color-primary);margin-bottom:20px}.detail-card__items{display:flex;flex-direction:column;gap:16px}.detail-card__featured{padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.04)}.detail-card__stat{display:flex;flex-direction:column}.detail-card__stat-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:2px}.detail-card__stat-value{font-family:var(--font-display);font-size:2.4rem;font-weight:700;color:var(--color-text);line-height:1.1}.detail-card__stat-value small{font-size:.5em;color:var(--color-text-muted);font-weight:400}.detail-card__bar{margin-top:10px;height:6px;background:var(--color-surface-lowest);border-radius:3px;overflow:hidden}.detail-card__bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:3px;transition:width .3s ease}.detail-card__row{padding-left:12px;border-left:2px solid var(--color-primary)}.detail-card__row-label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:1px}.detail-card__row-value{font-size:.95rem;font-weight:600;color:var(--color-text)}.detail-card__row-value--accent{color:var(--color-primary);font-family:var(--font-display);font-size:1.2rem}.ingredient-layers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ingredient-layer-card{background:var(--color-surface-highest);border-radius:var(--radius-lg);padding:16px 20px}.ingredient-layer-card__heading{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:10px}.ingredient-layer-card__tags{display:flex;flex-wrap:wrap;gap:4px}.measurements-list{margin-bottom:20px}.measurement-row{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:.9rem}.measurement-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.measurement-date{color:var(--color-text-muted);font-size:.85rem;min-width:90px}.measurement-values{font-weight:600;flex:1}.measurement-notes{color:var(--color-text-muted);font-size:.85rem;font-style:italic}.measurement-form{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.04)}.measurement-form h3{margin-bottom:12px}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#3d261966;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px}.dialog{background:var(--color-surface-high);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:28px 32px;max-width:500px;width:100%;box-shadow:var(--shadow-lg)}.dialog h2{margin-bottom:20px}.share-fields{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:16px}.share-field-toggle{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:500;text-transform:none;cursor:pointer}.share-field-toggle input[type=checkbox]{width:auto;accent-color:var(--color-primary)}.share-url-box{display:flex;gap:8px;margin-top:8px}.share-url-box input{flex:1;font-size:.85rem;cursor:text}.section{padding:24px 28px;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);margin-bottom:28px}.tag{display:inline-block;padding:3px 12px;margin:2px 4px 2px 0;background:var(--color-surface-highest);border:none;border-radius:999px;font-size:.82rem;color:var(--color-text)}.layer-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:12px 0 6px}.layer-label:first-child{margin-top:0}.dashboard-columns{display:grid;grid-template-columns:3fr 2fr;gap:20px;align-items:start}@media(max-width:768px){.dashboard-columns{grid-template-columns:1fr}}.recent-item{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:.9rem}.recent-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.recent-item span:first-child{flex:1}.recent-item .amount{font-weight:700;font-family:var(--font-display);font-size:1.05rem}.recent-item .date{font-size:.8rem;color:var(--color-text-muted)}.type-row{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:.9rem}.type-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.type-row span:first-child{flex:1;text-transform:capitalize}.type-row span:last-child{font-weight:700;font-family:var(--font-display);font-size:1.05rem}.perfume-form-view,.sale-form-view{max-width:900px}.price-suggestions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px;font-size:.85rem;color:var(--color-text-muted)}.price-suggestions button{background:var(--color-accent-light);border-color:transparent;color:var(--color-accent);font-weight:700}.price-suggestions button:hover{background:var(--color-accent);color:#fff}.ingredient-picker .ingredient-layer{margin-bottom:16px}.ingredient-picker .ingredient-layer .tags{margin-bottom:8px}.ingredient-picker .ingredient-layer input{max-width:300px}.ingredient-picker .ingredient-layer .tag button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:0 0 0 4px;font-size:1rem;line-height:1}.ingredient-picker .ingredient-layer .tag button:hover{color:var(--color-danger)}.photo-uploader{margin-bottom:20px}.photo-uploader .photo-grid{display:flex;gap:12px;flex-wrap:wrap}.photo-uploader .photo-item{position:relative;width:100px;height:100px;transition:opacity var(--transition),transform var(--transition)}.photo-uploader .photo-item[draggable]{cursor:grab}.photo-uploader .photo-item.dragging{opacity:.4;transform:scale(.95)}.photo-uploader .photo-item.drag-over{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius)}.photo-uploader .photo-item img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius);border:1px solid rgba(255,255,255,.06)}.photo-uploader .photo-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:2px solid var(--color-surface);background:var(--color-danger);color:#fff;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:var(--shadow-sm)}.photo-uploader .photo-add{width:100px;height:100px;display:flex;align-items:center;justify-content:center;border:2px dashed var(--color-border);border-radius:var(--radius);cursor:pointer;color:var(--color-text-muted);font-size:.85rem;font-weight:400;transition:all var(--transition)}.photo-uploader .photo-add:hover,.photo-uploader .photo-add.dragging{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.photo-uploader .photo-add.dragging{border-style:solid;transform:scale(1.05)}.photo-uploader .uploading{margin-top:8px;color:var(--color-text-muted);font-size:.85rem;font-style:italic}.collection-view__toolbar{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;border:none;border-radius:var(--radius);overflow:hidden;background:var(--color-surface-highest)}.view-toggle button{padding:6px 12px;border:none;background:transparent;color:var(--color-text-muted);font-size:1rem;cursor:pointer;transition:all var(--transition);line-height:1}.view-toggle button.active{background:var(--color-primary);color:#fff}.view-toggle button:hover:not(.active){background:var(--color-primary-light)}.perfume-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.perfume-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);overflow:hidden}.perfume-table th,.perfume-table td{padding:8px 12px;text-align:left;font-size:.88rem}.perfume-table thead th{background:var(--color-surface-highest);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border-bottom:1px solid rgba(255,255,255,.04)}.perfume-table__row{cursor:pointer;transition:background var(--transition)}.perfume-table__row:hover{background:var(--color-surface-highest)}.perfume-table__row:not(:last-child) td{border-bottom:1px solid rgba(255,255,255,.04)}.perfume-table__thumb{width:40px;padding:4px 8px}.perfume-table__thumb img{width:36px;height:36px;object-fit:cover;border-radius:4px}.perfume-table__no-img{font-size:1.2rem;opacity:.25}.perfume-table__name{font-family:var(--font-display);font-weight:600}.remaining-inline{display:flex;align-items:center;gap:8px;min-width:80px}.remaining-inline__bar{flex:1;height:4px;background:var(--color-surface-lowest);border-radius:2px;overflow:hidden;min-width:40px}.remaining-inline__fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px}.remaining-inline__text{font-size:.78rem;color:var(--color-text-muted);white-space:nowrap}.entity-view{max-width:800px}.entity-add-form{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.entity-add-form input{flex:1;min-width:140px}.entity-add-form select{width:auto;min-width:140px}.entity-list{background:var(--color-surface-high);border:none;border-radius:var(--radius-lg);overflow:hidden}.entity-item{display:flex;align-items:center;gap:10px;padding:10px 16px;flex-wrap:wrap}.entity-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.entity-info{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.entity-name{font-weight:600}.entity-meta{font-size:.82rem;color:var(--color-text-muted)}.entity-notes{font-size:.82rem;color:var(--color-text-muted);font-style:italic}.entity-actions{display:flex;gap:6px;flex-shrink:0}.entity-edit-input{flex:1;min-width:120px}fieldset{border:none;border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:20px;background:var(--color-surface-high)}fieldset legend{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--color-text);padding:0 8px}.tag-with-note{display:inline-flex;align-items:center;gap:6px;margin:2px 4px 2px 0}.ingredient-note-input{width:120px!important;padding:2px 6px!important;font-size:.78rem!important;border-color:var(--color-border-light)!important}.ingredient-note-input::placeholder{font-style:italic}.ingredient-note{display:block;font-size:.72rem;color:var(--color-text-muted);font-style:italic}.default-prices-list{display:flex;flex-direction:column;gap:4px}.default-price-row{display:flex;align-items:center;gap:12px;font-size:.9rem;padding:4px 0}.default-price-row:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.fieldset-hint{font-size:.82rem;color:var(--color-text-muted);margin:8px 0 0;font-style:italic}.field-hint{display:block;font-size:.75rem;color:var(--color-accent);margin-top:4px;font-style:italic}.parfumer{font-size:.88rem;color:var(--color-text-muted);margin-top:4px}.settings-view{max-width:700px}.section-desc{color:var(--color-text-muted);font-size:.9rem;margin-bottom:16px}.invite-form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.invite-form .form-group{flex:1;min-width:160px}.invite-message{margin-top:12px;padding:10px 14px;background:var(--color-success-light);color:var(--color-success);border-radius:var(--radius);font-size:.9rem;font-weight:600}.share-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0}.share-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.04)}.share-url{font-size:.82rem;color:var(--color-text-muted);word-break:break-all;margin-top:2px}.share-message{font-size:.88rem;color:var(--color-text-muted);font-style:italic;margin-top:4px}.theme-picker{display:flex;gap:16px;margin-bottom:20px}.theme-swatch{cursor:pointer;padding:12px 16px;border:2px solid transparent;border-radius:var(--radius-lg);background:var(--color-surface-high);transition:all var(--transition);text-align:center}.theme-swatch:hover{background:var(--color-surface-highest);box-shadow:var(--shadow)}.theme-swatch.active{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.theme-swatch__colors{display:flex;gap:6px;margin-bottom:8px;justify-content:center}.theme-swatch__colors span{width:28px;height:28px;border-radius:50%;box-shadow:0 1px 4px #00000026}.theme-swatch__name{font-size:.82rem;font-weight:600;color:var(--color-text)}.theme-mode-toggle{margin-top:12px}.toggle-label{display:flex;align-items:center;gap:12px;font-size:.9rem;color:var(--color-text);cursor:pointer}.toggle-switch{position:relative;width:44px;height:24px;border:none;border-radius:12px;background:var(--color-border);cursor:pointer;transition:background var(--transition);padding:0}.toggle-switch.on{background:var(--color-primary)}.toggle-switch__knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform var(--transition);box-shadow:0 1px 3px #0003}.toggle-switch.on .toggle-switch__knob{transform:translate(20px)}.text-right{text-align:right}.positive{color:var(--color-success)}.negative{color:var(--color-danger)}.error-message{text-align:center;padding:32px;color:var(--color-danger);font-size:.95rem;background:var(--color-surface-warm, var(--color-surface));border:1px solid var(--color-danger);border-radius:var(--radius-lg, 8px);margin:24px auto;max-width:480px}.loading{text-align:center;padding:48px;color:var(--color-text-muted);font-size:.95rem}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:var(--font-display);font-size:1.3rem;color:var(--color-text-muted)}.empty{text-align:center;padding:32px;color:var(--color-text-muted);font-size:.95rem}.empty:before{content:"";display:block;width:40px;height:55px;margin:0 auto 12px;background-size:contain;background-repeat:no-repeat;background-position:center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 110'%3E%3Cellipse cx='30' cy='22' rx='6.5' ry='22' transform='rotate(-6 30 22)' fill='%23967a62'/%3E%3Cellipse cx='50' cy='22' rx='6.5' ry='22' transform='rotate(6 50 22)' fill='%23967a62'/%3E%3Ccircle cx='40' cy='50' r='16' fill='%23967a62'/%3E%3Cellipse cx='40' cy='80' rx='21' ry='26' fill='%23967a62'/%3E%3C/svg%3E");opacity:.2}.empty a{font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1024px){.sidebar{display:none}.topbar{display:flex}.app-layout__main{margin-left:0;padding:32px 32px 48px;padding-top:calc(var(--topbar-height) + 24px)}}@media(max-width:768px){.app-layout__main{padding:16px;padding-top:calc(var(--topbar-height) + 16px);padding-bottom:32px}.container{padding-left:16px;padding-right:16px}h1{font-size:1.6rem}.perfume-detail__hero{grid-template-columns:1fr;gap:24px}.perfume-detail__info h1{font-size:2rem}.perfume-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.form-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(3,1fr)}.detail-zones,.ingredient-layers{grid-template-columns:1fr}.perfume-filters,.sales-filters{flex-direction:column}.perfume-filters input,.perfume-filters select,.sales-filters input,.sales-filters select{max-width:none}.data-table-wrap,.perfume-table-wrap{margin:0 -16px;padding:0 16px}}@media(max-width:800px){.data-table,.perfume-table{background:none;border-radius:0}.data-table thead,.perfume-table thead{display:none}.data-table tbody tr,.perfume-table tbody tr{display:block;background:var(--color-surface-high);border-radius:var(--radius);padding:12px 14px;margin-bottom:10px}.data-table tbody tr:not(:last-child) td,.perfume-table tbody tr:not(:last-child) td{border-bottom:none}.data-table tbody td,.perfume-table tbody td{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:none!important;font-size:.88rem}.data-table tbody td:before,.perfume-table tbody td:before{content:attr(data-label);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);flex-shrink:0;margin-right:12px}.data-table tbody td[data-label=""]:before,.data-table tbody td:not([data-label]):before,.perfume-table tbody td[data-label=""]:before,.perfume-table tbody td:not([data-label]):before{display:none}.data-table tbody td.text-right,.perfume-table tbody td.text-right{text-align:right}.data-table tfoot,.perfume-table tfoot{display:block}.data-table tfoot tr,.perfume-table tfoot tr{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface-highest);border-radius:var(--radius);padding:10px 14px}.data-table tfoot td,.perfume-table tfoot td{padding:0;background:none;border:none}.data-table tfoot td:before,.perfume-table tfoot td:before{display:none}.data-table tfoot td[colspan],.perfume-table tfoot td[colspan]{flex:1}.perfume-table tbody td{display:inline;padding:0;font-size:.9rem;border-bottom:none!important;justify-content:initial}.perfume-table tbody td:before{display:none}.perfume-table .perfume-table__thumb{display:block;float:left;margin-right:12px}.perfume-table .perfume-table__thumb img{width:44px;height:44px;border-radius:var(--radius);object-fit:cover}.perfume-table .perfume-table__thumb .perfume-table__no-img{display:block;width:44px;height:44px;line-height:44px;text-align:center;background:var(--color-surface-lowest);border-radius:var(--radius);font-size:1.1rem}.perfume-table td[data-label=Značka]{color:var(--color-text-muted);margin-right:6px}.perfume-table .perfume-table__name{font-weight:600}.perfume-table td[data-label=Tržní]{display:block;margin-top:2px;font-size:.82rem;color:var(--color-primary);text-align:left}.perfume-table td[data-label="Konc."],.perfume-table td[data-label=Objem],.perfume-table td[data-label=Zbývá],.perfume-table td[data-label=Stav],.perfume-table td[data-label=Nákup]{display:none!important}.perfume-table .perfume-table__row{overflow:hidden}.data-table-wrap,.perfume-table-wrap{overflow-x:visible}}@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}.perfume-detail__header{flex-direction:column}.collection-view__header,.sales-view__header{flex-direction:column;align-items:flex-start}.theme-picker{flex-wrap:wrap;gap:10px}.theme-picker .theme-swatch{flex:1;min-width:0;padding:10px 8px}.share-item{flex-direction:column;gap:8px}.invite-form .form-group{min-width:0;flex-basis:100%}}
