:root{--bg: #e9eef2;--bg-glow-1: #d7e8ea;--bg-glow-2: #e4ebe6;--surface: #ffffff;--surface-2: #f4f7f9;--text: #14202b;--muted: #5b6b7a;--border: #d8e0e7;--accent: #1a3a42;--accent-hover: #254e58;--accent-soft: #e4eef0;--link: #0f6b7c;--link-hover: #0a5563;--ok: #0f6b4c;--ok-bg: #d9f5e9;--warn: #8a5a12;--warn-bg: #fcecc8;--info: #1d4f8c;--info-bg: #dcebff;--danger: #9b1c1c;--danger-bg: #fde2e2;--radius: 14px;--radius-sm: 10px;--shadow: 0 1px 2px rgba(20, 32, 43, .05), 0 10px 28px rgba(20, 32, 43, .06);--shadow-soft: 0 1px 2px rgba(20, 32, 43, .04);--page-pad: 16px;--topbar-bg: rgba(255, 255, 255, .9);--modal-scrim: rgba(15, 23, 42, .45);--chart-grid: #d8e0e7;--chart-tick: #5b6b7a;--btn-fg: #ffffff;--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235b6b7a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--font: "Source Sans 3", system-ui, sans-serif;--font-display: "Manrope", system-ui, sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1);--motion-fast: .15s;--motion-base: .24s;--motion-slow: .4s;--gradient-accent: linear-gradient( 155deg, color-mix(in srgb, var(--accent-hover) 90%, #fff) 0%, var(--accent) 52%, color-mix(in srgb, var(--link) 38%, var(--accent)) 100% );--gradient-accent-soft: linear-gradient( 135deg, color-mix(in srgb, var(--accent-soft) 90%, var(--surface)) 0%, var(--surface) 100% );--gradient-shine: linear-gradient( 120deg, transparent 0%, color-mix(in srgb, #fff 35%, transparent) 48%, transparent 100% );font-family:var(--font);color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;text-size-adjust:100%}html[data-theme=dark]{--bg: #1a1f26;--bg-glow-1: #1e2a30;--bg-glow-2: #1f2624;--surface: #232a32;--surface-2: #2a323b;--text: #c5cdd6;--muted: #8a959f;--border: #353d47;--accent: #5f8f9a;--accent-hover: #6fa0ab;--accent-soft: #2a353a;--link: #7aadb6;--link-hover: #92c0c8;--ok: #6aaa88;--ok-bg: #24352e;--warn: #c4a05a;--warn-bg: #342e20;--info: #6f94b8;--info-bg: #253040;--danger: #c47a7a;--danger-bg: #352828;--shadow: 0 1px 2px rgba(0, 0, 0, .2), 0 8px 24px rgba(0, 0, 0, .22);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .15);--topbar-bg: rgba(35, 42, 50, .94);--modal-scrim: rgba(12, 16, 20, .55);--chart-grid: #353d47;--chart-tick: #8a959f;--btn-fg: #152028;--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a959f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;min-height:100vh;min-height:100dvh;overflow-x:hidden;font-size:15px;line-height:1.45;color:var(--text);background:radial-gradient(ellipse 80% 50% at 0% -10%,var(--bg-glow-1) 0%,transparent 55%),radial-gradient(ellipse 70% 45% at 100% 0%,var(--bg-glow-2) 0%,transparent 50%),var(--bg)}html[data-theme=dark] body{background:radial-gradient(ellipse 70% 40% at 0% -5%,color-mix(in srgb,var(--bg-glow-1) 55%,transparent) 0%,transparent 55%),radial-gradient(ellipse 60% 35% at 100% 0%,color-mix(in srgb,var(--bg-glow-2) 45%,transparent) 0%,transparent 50%),var(--bg)}html[data-theme=dark] .badge.blue,html[data-theme=dark] .badge.yellow,html[data-theme=dark] .badge.green,html[data-theme=dark] .badge.red,html[data-theme=dark] .badge.gray{font-weight:600}html[data-theme=dark] .user-link{border-bottom-color:color-mix(in srgb,var(--link) 35%,transparent)}html[data-theme=dark] input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=reset]):focus,html[data-theme=dark] select:focus,html[data-theme=dark] textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 18%,transparent)}html[data-theme=dark] .btn.danger{background:#9a5555;color:#f0e8e8}html[data-theme=dark] .btn.success{background:#3d7a5c;color:#e8f2ec}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}input,select,textarea{font-size:16px}input[type=file]{display:block;max-width:100%;width:100%;min-width:0;box-sizing:border-box}input[type=file]::file-selector-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-right:12px;max-width:45%;overflow:hidden;text-overflow:ellipsis;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}input[type=file]::file-selector-button:hover{border-color:color-mix(in srgb,var(--link) 40%,var(--border));background:var(--accent-soft)}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=reset]),select,textarea{width:100%;max-width:100%;min-width:0;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text);line-height:1.35;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:40px;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right 12px center;background-size:16px;cursor:pointer}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],input:not([type]){-webkit-appearance:none;-moz-appearance:none;appearance:none}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=reset]):hover,select:hover,textarea:hover{border-color:#b7c5cf}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=reset]):focus,select:focus,textarea:focus{outline:none;border-color:var(--link);box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 22%,transparent);background-color:var(--surface)}input:disabled,select:disabled,textarea:disabled{opacity:.65;cursor:not-allowed;background-color:var(--surface-2)}input::placeholder,textarea::placeholder{color:#8a9aa8}textarea{resize:vertical;min-height:88px}input[type=date],input[type=time],input[type=datetime-local],input[type=number]{min-height:44px}input[type=file]{width:100%;max-width:100%;min-width:0;padding:10px 12px;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);cursor:pointer;font-size:13px}input[type=file]:hover{border-color:var(--link);background:var(--accent-soft)}input[type=file]:focus{outline:none;box-shadow:0 0 0 3px #0f6b7c1f}input[type=checkbox],input[type=radio]{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--accent);cursor:pointer}img{max-width:100%}.app-shell{min-height:100vh;width:100%;max-width:100%;overflow-x:clip;padding-bottom:env(safe-area-inset-bottom,0)}.topbar{background:var(--topbar-bg);border-bottom:1px solid rgba(216,224,231,.95);border-bottom-color:var(--border);position:relative;z-index:20;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding-top:env(safe-area-inset-top,0);overflow-x:clip;backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15)}.topbar-main{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--page-pad) 8px;min-width:0;max-width:100%;box-sizing:border-box}.topbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;min-width:0;max-width:100%}a.topbar-avatar:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));transform:scale(1.05);box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 18%,transparent)}.topbar-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;background:var(--surface-2);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px;font-weight:700;color:var(--muted);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:border-color var(--motion-fast) var(--ease-soft),transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-soft)}.topbar-avatar img{width:100%;height:100%;object-fit:cover}.notif-bell{position:relative;flex:0 0 auto}.notif-bell--desktop{display:none}.notif-bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-soft)}.notif-bell-btn:hover{background:color-mix(in srgb,var(--surface-2) 70%,var(--accent-soft));transform:translateY(-1px);border-color:color-mix(in srgb,var(--link) 30%,var(--border));box-shadow:var(--shadow-soft)}.nav .notif-bell-btn{min-height:40px}.notif-bell-badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#c0392b;color:#fff;font-size:10px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--surface)}.notif-panel{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.notif-panel--portal{position:fixed;z-index:210;max-height:min(70vh,420px)}.notif-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}.notif-mark-all{flex-shrink:0;white-space:nowrap}.notif-list{overflow-y:auto;overscroll-behavior:contain}.notif-empty{padding:20px 14px;text-align:center;font-size:13px}.notif-item{display:block;width:100%;text-align:left;padding:12px 14px;border:none;border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:transparent;color:inherit;cursor:pointer}.notif-item:hover{background:var(--surface-2)}.notif-item.is-unread{background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.notif-item-title{font-weight:700;font-size:13px;line-height:1.3;word-break:break-word}.notif-item-meta{margin-top:3px;font-size:11px}.notif-item-body{margin-top:6px;font-size:13px;line-height:1.4;word-break:break-word;color:var(--text)}.brand{font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.03em;min-width:0;flex:1 1 auto;color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;cursor:pointer;transition:color var(--motion-fast) var(--ease-soft)}a.brand:hover{color:var(--link);opacity:1}.topbar-user{font-size:12px;white-space:nowrap;flex-shrink:0}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;min-width:40px;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;transition:background var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-soft),box-shadow var(--motion-fast) var(--ease-soft)}.theme-toggle:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--link) 35%,var(--border));transform:translateY(-1px);box-shadow:var(--shadow-soft)}.theme-toggle-icon{font-size:15px;line-height:1}.theme-toggle-text{display:none}@media(min-width:480px){.theme-toggle-text{display:inline}}.theme-toggle--profile{width:auto;min-width:0;height:auto;min-height:44px;padding:10px 18px;border-radius:12px;gap:8px}.theme-toggle--profile .theme-toggle-text{display:inline}.theme-toggle--profile .theme-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:1.1em;flex-shrink:0;line-height:1}.profile-theme{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.profile-theme-label{font-size:12px;font-weight:600}.nav-row{display:flex;align-items:flex-start;gap:8px;width:100%;max-width:100%;min-width:0;padding-right:var(--page-pad);box-sizing:border-box}.nav-row>.notif-bell--desktop{flex:0 0 auto;margin-top:0;padding-left:var(--page-pad)}.nav-row>.nav-scroll,.nav-row>.h-scroll{flex:1 1 auto;min-width:0}.h-scroll,.nav-scroll{position:relative;display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.h-scroll-btn{display:none}.h-scroll>.h-scroll-track{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.nav{display:flex;flex-wrap:nowrap;gap:8px;padding:0 var(--page-pad) 12px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab;scrollbar-width:none;-ms-overflow-style:none}.nav::-webkit-scrollbar{display:none;height:0}.h-scroll-track.is-dragging,.nav.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none;scroll-behavior:auto}.h-scroll-track.is-dragging a,.h-scroll-track.is-dragging button,.nav.is-dragging a,.nav.is-dragging button{pointer-events:none}.nav a,.nav button.linkish{flex:0 0 auto;padding:9px 14px;border-radius:999px;background:var(--surface-2);border:1px solid transparent;cursor:pointer;color:var(--text);font-size:13px;font-weight:600;white-space:nowrap;min-height:40px;transition:background var(--motion-fast) var(--ease-soft),color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-soft),box-shadow var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft)}.nav a:hover,.nav button.linkish:hover{background:color-mix(in srgb,var(--accent-soft) 75%,var(--surface-2));transform:translateY(-1px);box-shadow:var(--shadow-soft)}.nav a.active{background:var(--gradient-accent);color:var(--btn-fg);box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 22%,transparent)}.nav-group{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.nav-group-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;background:var(--surface-2);border:1px solid transparent;cursor:pointer;color:var(--text);font:inherit;font-size:13px;font-weight:600;white-space:nowrap;min-height:40px;transition:background var(--motion-fast) var(--ease-soft),color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-soft),box-shadow var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft)}.nav-group-trigger:hover{background:color-mix(in srgb,var(--accent-soft) 75%,var(--surface-2));color:var(--text);transform:translateY(-1px);box-shadow:var(--shadow-soft)}.nav-group-trigger.active,.nav-group.is-section-active .nav-group-trigger{background:var(--gradient-accent);color:var(--btn-fg);box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 22%,transparent)}.nav-group-trigger.active:hover,.nav-group.is-section-active .nav-group-trigger:hover{color:var(--btn-fg);filter:brightness(1.05)}.nav-group-label{line-height:1}.nav-group-chevron{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:color-mix(in srgb,var(--text) 10%,transparent);font-size:11px;font-weight:800;line-height:1;opacity:.9;transition:transform var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-soft)}.nav-group-trigger.active .nav-group-chevron,.nav-group.is-section-active .nav-group-trigger .nav-group-chevron{background:color-mix(in srgb,#fff 22%,transparent)}.nav-group-chevron.is-open{transform:rotate(180deg)}.nav-group.is-open .nav-group-trigger:not(.active){border-color:color-mix(in srgb,var(--link) 28%,var(--border));background:color-mix(in srgb,var(--accent-soft) 65%,var(--surface-2))}.nav-group-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:50;min-width:210px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:2px}.nav-group-menu--floating,.nav-group-menu--portal{position:fixed;z-index:210;box-shadow:var(--shadow)}.nav-group-menu a{display:block;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--text);font-weight:600;font-size:13px;white-space:nowrap;background:transparent}.nav-group-menu a:hover{background:var(--accent-soft);color:var(--accent)}.nav-group-menu a.active{background:var(--accent);color:var(--btn-fg)}.page{max-width:1240px;margin:0 auto;padding:18px var(--page-pad) 48px;width:100%;box-sizing:border-box;min-width:0;overflow-x:clip}.page-view{animation:pageViewIn .22s var(--ease-soft) both}.page-content-fade{animation:pageViewIn .28s var(--ease-soft) both}.page-loading-card{min-height:120px;display:flex;align-items:center;justify-content:center}.is-refreshing{position:relative;pointer-events:none;isolation:isolate}.is-refreshing>*{opacity:.72;transition:opacity .22s var(--ease-soft);filter:saturate(.9)}.is-refreshing:after{content:"";position:absolute;top:50%;left:50%;z-index:5;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;border:2.5px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-top-color:var(--accent);animation:softRefreshSpin .7s linear infinite;box-shadow:0 0 0 12px color-mix(in srgb,var(--bg) 55%,transparent);background:color-mix(in srgb,var(--bg) 70%,transparent)}.soft-refresh{position:relative;isolation:isolate;transition:min-height .22s var(--ease-soft)}.soft-refresh-body{transition:opacity .22s var(--ease-soft),filter .22s var(--ease-soft)}.soft-refresh.is-loading .soft-refresh-body{opacity:.72;filter:saturate(.9);pointer-events:none;-webkit-user-select:none;user-select:none}.soft-refresh-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;background:color-mix(in srgb,var(--bg) 28%,transparent);backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);border-radius:inherit;animation:softRefreshIn .2s var(--ease-soft) both;pointer-events:none}.soft-refresh-spinner{width:28px;height:28px;border-radius:50%;border:2.5px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-top-color:var(--accent);animation:softRefreshSpin .7s linear infinite}.soft-refresh-label{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.01em}@keyframes softRefreshIn{0%{opacity:0}to{opacity:1}}@keyframes softRefreshSpin{to{transform:rotate(360deg)}}@keyframes pageViewIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.page-view,.page-content-fade{animation:none}.is-refreshing>*{transition:none;filter:none;opacity:.85}.is-refreshing:after{animation:none;opacity:.85}.soft-refresh-body,.soft-refresh{transition:none}.soft-refresh-overlay{animation:none;backdrop-filter:none;-webkit-backdrop-filter:none}.soft-refresh-spinner{animation:none;border-top-color:var(--accent);opacity:.85}}.page-title{margin:0;font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.03em;line-height:1.2;word-break:break-word}.preset-pick{margin-bottom:8px}.input-with-action{display:flex;gap:8px;align-items:stretch}.input-with-action input{flex:1;min-width:0}.btn.icon-btn{width:42px;min-width:42px;padding:0;flex-shrink:0;font-size:22px;font-weight:500;line-height:1}.icon-btn-label{display:none}@media(min-width:900px){.btn.icon-btn{width:auto;min-width:0;padding:0 14px;font-size:14px;font-weight:600}.icon-btn-plus{display:none}.icon-btn-label{display:inline}}.address-manager{display:flex;flex-direction:column;gap:10px}.address-manager-title{font-size:13px;font-weight:600}.address-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.address-list--compact{gap:4px;font-weight:500}.address-list-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.address-list-text{flex:1 1 160px;min-width:0;word-break:break-word;font-size:13px}.address-list-actions{display:flex;flex-wrap:wrap;gap:6px}.address-add{display:flex;flex-direction:column;gap:8px}@media(min-width:700px){.address-add{display:grid;grid-template-columns:minmax(100px,.4fr) 1fr auto;align-items:stretch}}.card{background:var(--gradient-accent-soft);border:1px solid rgba(216,224,231,.85);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:16px;margin-bottom:16px;max-width:100%;min-width:0;width:100%;box-sizing:border-box;overflow-x:clip;overflow-y:visible;transition:box-shadow var(--motion-base) var(--ease-soft),border-color var(--motion-base) var(--ease-soft)}.card h2{margin:0 0 14px;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.02em}.collapsible-section-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin:-4px 0 0;padding:0;border:none;background:none;color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.02em;cursor:pointer;text-align:left}.collapsible-section.is-open .collapsible-section-toggle{margin-bottom:14px}.collapsible-section-heading{display:none}.collapsible-section-chevron{color:var(--muted);font-size:12px;font-family:var(--font-sans, inherit);font-weight:600;transition:transform var(--motion-base) var(--ease-out)}.collapsible-section.is-open .collapsible-section-chevron{transform:rotate(180deg)}.collapsible-section-toggle:hover .collapsible-section-chevron{color:var(--link)}.collapsible-section:not(.is-open) .collapsible-section-body{display:none}.finance-block .stats{margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.stat{background:linear-gradient(145deg,var(--surface) 0%,color-mix(in srgb,var(--accent-soft) 35%,var(--surface)) 100%);border:1px solid rgba(216,224,231,.9);border-radius:var(--radius);padding:14px 12px;box-shadow:var(--shadow-soft);text-align:left;min-width:0;transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-soft),border-color var(--motion-base) var(--ease-soft)}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--link) 22%,var(--border))}.stat-value{font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.03em;word-break:break-word;line-height:1.15}.stat-label{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.3;font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 16px;border-radius:var(--radius-sm);border:none;background:var(--gradient-accent);color:var(--btn-fg);cursor:pointer;font-weight:600;font-size:14px;min-height:44px;text-align:center;box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 18%,transparent);transition:background var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base) var(--ease-soft),filter var(--motion-fast) ease}.btn:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 24%,transparent)}.btn:active{transform:translateY(0);filter:brightness(.98);box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 14%,transparent)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:none;box-shadow:none}.btn.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border);box-shadow:none;filter:none}.btn.secondary:hover{background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-2));border-color:color-mix(in srgb,var(--link) 28%,var(--border));box-shadow:var(--shadow-soft);filter:none}.btn.danger{background:#c43c3c;color:#fff}.btn.success{background:#0f8a62;color:#fff}.btn.small{padding:7px 11px;font-size:12px;font-weight:600;min-height:32px;border-radius:8px}.btn.block{width:100%}.filters,.users-role-filters.h-scroll-track,.h-scroll-track.filters,.h-scroll-track.users-role-filters{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:14px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab;padding-bottom:4px;scrollbar-width:none;-ms-overflow-style:none}.filters::-webkit-scrollbar,.users-role-filters::-webkit-scrollbar,.h-scroll-track.filters::-webkit-scrollbar,.h-scroll-track.users-role-filters::-webkit-scrollbar{display:none;height:0}.filters .filter-btn{flex:0 0 auto}.filter-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border:1px solid transparent;border-radius:999px;background:var(--surface-2);cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap;min-height:36px;transition:background var(--motion-fast) var(--ease-soft),color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft)}.filter-btn:hover:not(.active){background:color-mix(in srgb,var(--accent-soft) 65%,var(--surface-2));transform:translateY(-1px);box-shadow:var(--shadow-soft)}.filter-btn .filter-icon{font-size:14px;line-height:1}.filter-btn.active{background:var(--gradient-accent);color:var(--btn-fg);box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 20%,transparent)}.entity-filters{margin:0 0 14px;padding:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.entity-filters-title{font-size:13px;font-weight:600;margin-bottom:10px;color:var(--text)}.entity-filters-grid{display:grid;grid-template-columns:1fr;gap:0 12px}.entity-filters .form-group{margin-bottom:10px}.entity-filter-actions{display:flex;align-items:flex-end;padding-bottom:10px}.dashboard-blocks-settings{display:flex;flex-direction:column;gap:10px}.dashboard-block-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.dashboard-block-label{font-size:13px;font-weight:500;color:var(--text);flex:1;min-width:160px}.dashboard-block-row select{width:auto;min-width:140px}.order-extra-filters{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}.filters-zone{margin:0 0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden}.filters-zone-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:12px 14px;border:none;border-radius:0;background:transparent;color:var(--text);font-size:13px;font-weight:600;cursor:pointer;text-align:left}.filters-zone.is-open .filters-zone-toggle{border-bottom:1px solid var(--border)}.filters-zone-count{color:var(--accent);font-weight:700}.filters-zone-chevron{color:var(--muted);font-size:12px}.filters-zone:not(.is-open) .filters-zone-body{display:none}.filters-zone .entity-filters{margin:0;padding:12px 14px 4px;border:none;border-radius:0;background:transparent}.filters-zone .entity-filters-title{display:none}.filters-zone .order-extra-filters{margin:0;padding:0 14px 12px}.expandable-filter{border:1px solid var(--border);border-radius:10px;background:var(--surface-2);overflow:hidden}.expandable-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;list-style:none;font-size:13px;font-weight:600;color:var(--text);-webkit-user-select:none;user-select:none}.expandable-filter-summary::-webkit-details-marker{display:none}.expandable-filter-count{color:var(--accent);font-weight:700}.expandable-filter-chevron:before{content:"▸";color:var(--muted);font-size:12px}.expandable-filter[open] .expandable-filter-chevron:before{content:"▾"}.expandable-filter-body{padding:10px 12px 12px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.filter-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 10px;margin-bottom:10px}.filter-check{display:flex;align-items:flex-start;gap:8px;font-size:13px;font-weight:500;color:var(--text);cursor:pointer;line-height:1.3}.filter-check input{margin-top:2px;flex-shrink:0}@media(min-width:700px){.entity-filters-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}}@media(min-width:1100px){.entity-filters-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.entity-filter-actions{justify-content:flex-start}}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab;margin:0 -4px;padding:0 4px;max-width:100%;min-width:0;scrollbar-width:none;-ms-overflow-style:none}.table-wrap::-webkit-scrollbar{display:none;height:0}.table-desktop{display:none}.mobile-list{display:flex;flex-direction:column;gap:10px}.order-sort-mobile{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0 4px}.order-sort-mobile label{font-size:13px;font-weight:600;color:var(--muted)}.order-sort-mobile select{flex:1;min-width:180px;max-width:100%}.order-card{display:block;width:100%;text-align:left;background:linear-gradient(145deg,var(--surface) 0%,color-mix(in srgb,var(--surface-2) 55%,var(--surface)) 100%);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;cursor:pointer;color:inherit;box-shadow:var(--shadow-soft);-webkit-tap-highlight-color:transparent;transition:border-color var(--motion-base) var(--ease-soft),box-shadow var(--motion-base) var(--ease-soft),transform var(--motion-base) var(--ease-out),background var(--motion-base) var(--ease-soft)}.order-card:hover{border-color:color-mix(in srgb,var(--link) 28%,var(--border));box-shadow:var(--shadow);transform:translateY(-2px)}.order-card:active{background:var(--surface-2)}.order-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:6px}.order-card-title{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:-.02em;word-break:break-word}.order-card-meta{font-size:12px;color:var(--muted);margin-top:2px}.order-card-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.order-card-sum{font-weight:700;margin-left:auto;font-size:14px}.order-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}table{width:100%;border-collapse:separate;border-spacing:0;min-width:680px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #e8eef2;font-size:13px;vertical-align:middle}th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);border-bottom:1px solid var(--border)}thead th:first-child{border-top-left-radius:10px}thead th:last-child{border-top-right-radius:10px}tr.clickable{cursor:pointer;transition:background .12s ease}tr.clickable:hover{background:var(--accent-soft)}.orders-table{min-width:920px}.orders-table td:first-child{font-family:var(--font-display);font-weight:700;color:var(--accent);white-space:nowrap}.orders-table .order-title{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;color:var(--text)}.orders-table .order-sum{font-family:var(--font-display);font-weight:700;white-space:nowrap;letter-spacing:-.02em}.orders-table .col-status,.orders-table .col-payment{text-align:center;vertical-align:middle}.orders-table .col-status .status-with-date{display:inline-flex;align-items:center;margin-inline:auto}.orders-table .col-status .sort-th,.orders-table .col-payment .sort-th{justify-content:center;width:100%}.sort-th-stack{display:flex;flex-direction:column;align-items:center;gap:2px}.sort-th--sub{font-size:10px;font-weight:500;text-transform:none;letter-spacing:0;opacity:.85}.orders-table .map-btn{margin-top:2px}.order-card-map{display:inline-flex;margin-top:8px;min-height:36px;text-decoration:none}.address-map-actions{margin-top:8px}.address-map-actions .map-btn{display:inline-flex;min-height:40px;text-decoration:none}.badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:600;white-space:normal;line-height:1.25;max-width:100%;letter-spacing:.01em;text-align:center}.status-with-date{display:inline-flex;flex-direction:column;align-items:center;gap:2px;max-width:100%;min-width:0;text-align:center}.status-changed-at{font-size:10px;line-height:1.2;color:var(--muted);font-weight:500;white-space:nowrap}.badge.blue{background:var(--info-bg);color:var(--info)}.badge.yellow{background:var(--warn-bg);color:var(--warn)}.badge.green{background:var(--ok-bg);color:var(--ok)}.badge.red{background:var(--danger-bg);color:var(--danger)}.badge.gray{background:#e8eef2;color:#4a5a68}button.badge{font:inherit;border:none;cursor:pointer}.badge-action{transition:background .15s ease,color .15s ease,box-shadow .15s ease}.badge-action:hover{background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 2px #1a3a421f}.assembler-pick-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:min(60vh,420px);overflow:auto}.assembler-pick-item{width:100%;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 12px;text-align:left;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.assembler-pick-item:hover:not(:disabled){border-color:var(--link);background:var(--accent-soft)}.assembler-pick-item:disabled{opacity:.65;cursor:wait}.assembler-pick-name{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;grid-column:1;grid-row:1}.assembler-pick-meta{font-size:12px;grid-column:1;grid-row:2}.assembler-pick-action{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:12px;font-weight:600;color:var(--link)}.login-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom));position:relative}.login-theme{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right,12px))}.login-card{width:100%;max-width:400px;background:linear-gradient(165deg,color-mix(in srgb,var(--accent-soft) 35%,var(--surface)) 0%,var(--surface) 38%);border:1px solid rgba(216,224,231,.9);border-radius:18px;padding:28px 22px;box-shadow:var(--shadow);animation:uiScaleIn var(--motion-slow) var(--ease-out) both;position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-accent);opacity:.92}.login-card h1{margin:0 0 6px;text-align:center;font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.03em;color:var(--accent)}.login-card .subtitle{text-align:center;color:var(--muted);margin-bottom:20px;font-size:14px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text)}.form-group input,.form-group select,.form-group textarea{width:100%}.form-row{display:grid;grid-template-columns:1fr;gap:0}.error-box{background:var(--danger-bg);color:var(--danger);padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:14px;word-break:break-word}.success-box{background:var(--ok-bg);color:var(--ok);padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:14px}.page-flash{position:sticky;top:max(.75rem,env(safe-area-inset-top,0px));z-index:18;margin-bottom:12px;scroll-margin-top:max(1rem,env(safe-area-inset-top,0px))}.page-flash>.error-box,.page-flash>.success-box{margin-bottom:8px;box-shadow:var(--shadow-soft);border:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.page-flash>.error-box:last-child,.page-flash>.success-box:last-child{margin-bottom:0}.page-flash--modal{position:relative;top:auto;z-index:1;scroll-margin-top:0}.grid-2{display:grid;grid-template-columns:1fr;gap:0;min-width:0;max-width:100%}.info-grid{display:grid;grid-template-columns:1fr;gap:12px}.info-item .label{font-size:12px;color:var(--muted)}.info-item .value{font-weight:600;margin-top:2px;word-break:break-word}.muted{color:var(--muted)}.note-text,.card>.muted{margin-top:10px;font-size:12px;line-height:1.45;overflow-wrap:anywhere;word-break:break-word;white-space:normal;max-width:100%}.user-link{display:inline;padding:0;margin:0;border:none;background:none;color:var(--link);font:inherit;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(15,107,124,.35);cursor:pointer;transition:color .15s ease,border-color .15s ease}.user-link:hover{color:var(--link-hover);border-bottom-color:var(--link-hover)}.assemblers-list{word-break:break-word}.col-assembler{min-width:140px;white-space:normal}.col-assembler .badge{font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--modal-scrim);display:grid;place-items:center;align-content:center;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;animation:uiFadeIn var(--motion-base) var(--ease-soft) both}.app-dialog-backdrop{z-index:120}.app-dialog{max-width:420px;width:100%}.app-dialog-message{margin:0 0 16px;font-size:14px;line-height:1.45;color:var(--text);white-space:pre-wrap;word-break:break-word}.app-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px}.app-dialog--danger .modal-title{color:var(--danger)}.toast-viewport{position:fixed;z-index:140;top:max(12px,calc(env(safe-area-inset-top,0px) + 64px));left:0;right:0;bottom:auto;width:min(400px,calc(100vw - 24px));margin-inline:auto;display:flex;flex-direction:column;gap:8px;max-height:min(50vh,320px);overflow-x:hidden;overflow-y:auto;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);animation:toast-in .22s ease}.toast--success{border-color:color-mix(in srgb,var(--ok) 35%,var(--border));background:color-mix(in srgb,var(--ok-bg) 70%,var(--surface))}.toast--error{border-color:color-mix(in srgb,var(--danger) 40%,var(--border));background:color-mix(in srgb,var(--danger-bg) 75%,var(--surface))}.toast--info{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}.toast-body{flex:1;min-width:0}.toast-title{font-size:12px;font-weight:700;margin-bottom:2px;color:var(--accent)}.toast--success .toast-title{color:var(--ok)}.toast--error .toast-title{color:var(--danger)}.toast-message{font-size:13px;line-height:1.4;color:var(--text);word-break:break-word}.toast-close{flex-shrink:0;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}.toast-close:hover{background:var(--surface-2);color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:899px){.toast-viewport{left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));width:auto;margin-inline:0;top:max(12px,calc(env(safe-area-inset-top,0px) + 58px))}.page-flash{top:max(.5rem,env(safe-area-inset-top,0px));scroll-margin-top:max(.75rem,env(safe-area-inset-top,0px))}}.modal-card{width:100%;max-width:440px;max-height:min(90vh,640px);overflow:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 22%,var(--surface)) 0%,var(--surface) 120px);border:1px solid rgba(216,224,231,.95);border-radius:16px;box-shadow:0 24px 60px #14202b38;padding:18px;animation:uiScaleIn var(--motion-slow) var(--ease-out) both}.modal-card--form{max-width:560px;max-height:min(92vh,720px)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.users-page{padding-top:16px}.users-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:14px;min-width:0;max-width:100%}.users-toolbar>.h-scroll{flex:1 1 auto;width:auto;min-width:0}.users-role-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:0}.users-role-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border, #d8e0e7);background:var(--surface-2, transparent);color:var(--text);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.users-role-chip:hover{border-color:var(--accent, #0f766e)}.users-role-chip.is-active{background:var(--accent, #0f766e);border-color:var(--accent, #0f766e);color:var(--btn-fg, #fff)}.users-role-count{font-size:11px;font-weight:700;opacity:.75;min-width:1.25em;text-align:center}.users-role-chip.is-active .users-role-count{opacity:.95}.users-search{margin:0;flex:1 1 auto;min-width:0;width:100%}.users-table{width:100%;table-layout:fixed}.users-table th,.users-table td{vertical-align:middle}.users-table th:nth-child(1),.users-table td:nth-child(1){width:24%}.users-table th:nth-child(2),.users-table td:nth-child(2){width:12%}.users-table th:nth-child(3),.users-table td:nth-child(3){width:12%}.users-table th:nth-child(4),.users-table td:nth-child(4){width:24%}.users-table th:nth-child(5),.users-table td:nth-child(5){width:12%}.users-col-actions{width:160px;text-align:right;white-space:nowrap}.users-person{display:flex;flex-direction:column;gap:2px;min-width:0}.users-person-name{font-weight:700;color:var(--text)}.users-person-email{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-contacts{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13px}.users-address{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-messenger{font-size:13px;white-space:nowrap}.users-messenger-ok{margin-left:4px;color:var(--accent, #0f766e);font-weight:700}.users-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:flex-end}.users-modal-actions{margin-top:4px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-title{margin:0;font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:-.02em;line-height:1.3;word-break:break-word}.modal-body{display:flex;flex-direction:column;gap:14px}.modal-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#e5e7eb}.stack{display:flex;flex-direction:column;gap:10px;min-width:0;max-width:100%}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.row>.btn,.row>a.btn{flex:1 1 auto}.row>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.row>select,.row>textarea{flex:1 1 140px;width:auto;min-width:0}.row>input[type=number]{flex:0 1 120px}.checkbox-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow:auto;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.checkbox-list label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.35}.checkbox-list input{width:18px;height:18px;margin-top:2px;flex-shrink:0}.stack>input,.stack>select,.stack>textarea,.stack>input[type=file]{display:block;max-width:100%;min-width:0}.comments-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.comments-toggle h2{margin:0}.comments-toggle-icon{flex:0 0 auto;font-size:16px;line-height:1;color:var(--muted)}.comments-scroller{display:flex;flex-direction:column;gap:10px;max-height:min(360px,45vh);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}@media(max-width:899px){.comments-card>.comments-toggle{display:flex;margin-bottom:0;min-height:44px}.comments-card:not(.is-open)>.comments-toggle{margin-bottom:0}.comments-card.is-open>.comments-toggle{margin-bottom:14px}.comments-card:not(.is-open) .comments-panel{display:none}}@media(min-width:900px){.comments-card .comments-panel[hidden]{display:block!important}.comments-card .comments-toggle{display:flex;pointer-events:none;cursor:default;margin-bottom:14px}.comments-card .comments-toggle-icon{display:none}}.comment{display:flex;gap:10px;align-items:flex-start;padding:12px;background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-sm);word-break:break-word;flex-shrink:0;max-width:100%;min-width:0;box-sizing:border-box}.comment-avatar{flex:0 0 auto;width:36px;height:36px;border-radius:50%;overflow:hidden;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:12px;font-weight:700;line-height:1}.comment-avatar img{width:100%;height:100%;object-fit:cover;display:block}.comment-body{flex:1 1 auto;min-width:0}.comment-text{white-space:pre-wrap}.comment .meta{font-size:12px;color:var(--muted);margin-bottom:6px;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:6px 8px}.comment .meta-author{min-width:0;flex:1 1 140px;line-height:1.35;overflow-wrap:anywhere}.comment-audience{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 1 auto;max-width:100%;font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.01em;color:var(--link);background:var(--accent-soft);border-radius:999px;padding:4px 10px;white-space:normal;text-align:center}.files-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.file-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;background:var(--surface);min-width:0;box-shadow:var(--shadow-soft)}.file-card img{width:100%;height:80px;object-fit:cover;border-radius:4px}.file-card .name{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0}.file-card .row .btn{flex:1 1 auto}.order-files-upload{margin-top:12px}.order-files-pick{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}.order-files-pick-btn{cursor:pointer;margin:0;flex-shrink:0}.order-files-pick-btn.is-busy{opacity:.6;pointer-events:none}.order-files-pick-names{flex:1 1 140px;min-width:0;font-size:13px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:14px}.toolbar .row{width:100%}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.toolbar-actions>.btn,.toolbar-actions>a.btn{flex:1 1 calc(50% - 8px);min-width:120px}.empty{padding:28px 16px;text-align:center;color:var(--muted);background:var(--surface-2);border-radius:var(--radius-sm);border:1px dashed var(--border);font-size:14px}.settings-subhead{margin:18px 0 10px;font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.settings-subhead-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:18px 0 10px}.settings-subhead-row .settings-subhead{margin:0}.modal-card--guide{max-width:640px;max-height:min(92vh,820px)}.setup-guide{gap:14px}.setup-lead{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.setup-steps{margin:0;padding-left:1.25em;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.45}.setup-steps li::marker{font-weight:700;color:var(--accent)}.setup-steps code{font-size:12px;background:var(--surface-2);padding:1px 6px;border-radius:6px}.setup-copy{display:flex;flex-direction:column;gap:6px}.setup-copy-label{font-size:12px;font-weight:600;color:var(--muted)}.setup-copy-row{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}.setup-copy-value{flex:1 1 180px;min-width:0;font-size:12px;word-break:break-all;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.setup-note{font-size:13px;line-height:1.45;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent-soft) 70%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}.settings-webhook{font-size:12px;word-break:break-all;margin:0 0 16px}.settings-webhook code{font-size:11px;background:var(--surface-2);padding:2px 6px;border-radius:6px}.new-client-block{margin:8px 0 16px;padding:14px;border:1px dashed var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-2) 85%,var(--accent-soft))}.checkbox-inline,.form-group label.checkbox-inline{display:inline-flex;align-items:center;gap:10px;margin-bottom:0;font-size:14px;font-weight:500;line-height:1.35;cursor:pointer}.checkbox-inline input,.form-group label.checkbox-inline input{width:18px;height:18px;margin:0;flex-shrink:0;align-self:center}.form-row-2{display:grid;grid-template-columns:1fr;gap:0}@media(min-width:640px){.form-row-2{grid-template-columns:1fr 1fr;gap:0 14px}}.stats-filters{align-items:end}.stats-filter-actions{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:10px}.sort-th{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:inherit;font:inherit;font-weight:600;font-size:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;text-align:left}.sort-th:hover,.sort-th.active{color:var(--accent)}.sort-ind{opacity:.45;font-size:11px}.sort-th.active .sort-ind{opacity:1}.stats-table{min-width:640px}.warehouse-status-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.warehouse-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.warehouse-chip span{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:12px;color:var(--muted)}.warehouse-chip.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.warehouse-chip.is-active span{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent)}.warehouse-table{min-width:960px}.warehouse-expand-row td{background:var(--surface-2);padding:12px 14px 16px}.warehouse-edit-panel{max-width:920px}.materials-subnav-toolbar{align-items:flex-start}.warehouse-toolbar-actions{display:grid;grid-template-columns:auto auto;gap:8px;align-items:stretch;flex-wrap:unset}.warehouse-toolbar-actions.toolbar-actions{display:grid}.warehouse-toolbar-actions.toolbar-actions>.btn,.warehouse-toolbar-actions.toolbar-actions>a.btn{flex:unset;min-width:0}.warehouse-toolbar-col{display:flex;flex-direction:column;gap:8px;min-width:0}.warehouse-toolbar-col>.btn,.warehouse-toolbar-col>a.btn{width:100%;flex:0 0 auto;white-space:nowrap}@media(max-width:520px){.warehouse-toolbar-actions{grid-template-columns:1fr;width:100%}}.stats-page-toolbar{flex-wrap:wrap;align-items:center;gap:12px}.stats-dash-lead{margin:-4px 0 14px;font-size:13px}.stats-tabs{display:inline-flex;padding:3px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);gap:2px}.stats-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-size:14px;font-weight:600;padding:8px 16px;border-radius:9px;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.stats-tab:hover{color:var(--text);background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}.stats-tab.is-active{background:linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--accent-soft) 35%,var(--surface)) 100%);color:var(--accent);box-shadow:var(--shadow-soft)}.status-pill{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);border:1px solid var(--border);color:var(--text);white-space:nowrap}.status-pill--ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,var(--border));background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.status-pill--warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,var(--border));background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.status-pill--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--surface))}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.order-kind-tabs{display:inline-flex;margin:0 0 12px;padding:3px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);gap:2px}.order-kind-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-size:14px;font-weight:600;padding:8px 18px;border-radius:9px;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.order-kind-tab:hover{color:var(--text)}.order-kind-tab.is-active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-soft)}.order-kind-lead{margin:-4px 0 14px;font-size:13px}.sales-order-form .form-hint{margin:6px 0 0;font-size:12px;line-height:1.4}.sales-order-section-title{margin:0;font-size:1.05rem;font-weight:700}.sales-order-catalog{margin-top:8px;padding-top:16px;border-top:1px solid var(--border)}.sales-order-catalog-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.sales-order-search-row{align-items:end}.sales-order-search-actions .btn{width:100%}.sales-product-list{display:flex;flex-direction:column;gap:8px;max-height:min(420px,50vh);overflow-y:auto;padding-right:2px}.sales-product-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);transition:border-color .15s ease,background .15s ease}.sales-product-row.is-selected{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}.sales-product-row.is-out{opacity:.65}.sales-product-main{min-width:0;flex:1}.sales-product-title{font-weight:600;margin-bottom:2px}.sales-product-meta{font-size:12px;margin-bottom:4px}.sales-product-price-row{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline;font-size:13px}.sales-product-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.sales-order-summary.nested-card{margin-top:16px;box-shadow:none}.sales-order-lines{list-style:none;margin:10px 0 0;padding:0}.sales-order-lines li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);font-size:14px}.sales-order-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;font-size:16px}.sales-order-total strong{font-size:20px;font-weight:800}.sales-pay-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.sales-pay-option{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:border-color .15s ease,background .15s ease}.sales-pay-option input{margin-top:3px}.sales-pay-option span{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.35}.sales-pay-option.is-active{border-color:var(--accent);background:var(--accent-soft)}@media(max-width:720px){.sales-product-row{flex-direction:column;align-items:stretch}.sales-product-actions{justify-content:space-between}}.charts-grid{display:grid;grid-template-columns:1fr;gap:14px}.chart-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 80%,var(--surface)) 0%,var(--surface-2) 100%);padding:12px 12px 8px;min-width:0;transition:box-shadow var(--motion-base) var(--ease-soft),border-color var(--motion-base) var(--ease-soft),transform var(--motion-base) var(--ease-out)}.chart-card:hover{border-color:color-mix(in srgb,var(--link) 20%,var(--border));box-shadow:var(--shadow-soft);transform:translateY(-1px)}.chart-section-lead{margin:-4px 0 14px;font-size:13px}.chart-card-head{margin-bottom:8px}.chart-card-title{margin:0;font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.chart-card-subtitle{margin:4px 0 0;font-size:12px;line-height:1.35;color:var(--muted)}.chart-insights{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.chart-insight{display:flex;flex-direction:column;gap:1px;min-width:72px;padding:6px 10px;border-radius:8px;background:var(--surface);border:1px solid var(--border)}.chart-insight-value{font-family:var(--font-display);font-size:14px;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--text)}.chart-insight-label{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.chart-box{width:100%;height:260px}.chart-box-wide{height:280px}.chart-box-xl{height:320px}.chart-box-tall{height:300px}.chart-box-pie{height:250px}.chart-empty{padding:36px 12px;text-align:center;color:var(--muted);font-size:13px}.chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 10px;box-shadow:var(--shadow-soft);font-size:12px;max-width:280px;color:var(--text)}.chart-tooltip-label{font-weight:700;margin-bottom:4px;color:var(--accent)}.chart-tooltip-row{display:flex;justify-content:space-between;gap:12px;margin-top:2px}.chart-tooltip-extra{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}html[data-theme=dark] .recharts-cartesian-axis-tick-value,html[data-theme=dark] .recharts-legend-item-text{fill:var(--muted)!important}html[data-theme=dark] .recharts-default-legend{color:var(--text)}@media(min-width:900px){.stats-filters{grid-template-columns:repeat(5,minmax(0,1fr))}.charts-grid{grid-template-columns:1.2fr 1fr}.chart-card:first-child{grid-column:1 / -1}}.stat-value.text-warn{color:var(--warn)}.stat-value.text-ok{color:var(--ok)}@media(max-width:899px){:root{--page-pad: 12px}.page{padding:12px var(--page-pad) calc(32px + env(safe-area-inset-bottom,0))}.h-scroll{position:relative;z-index:10;isolation:isolate}.card .h-scroll,.page .h-scroll--table{z-index:12}.page-title{font-size:20px}.card{padding:12px;margin-bottom:12px;border-radius:12px}.stats{gap:8px}.stat{padding:12px 10px}.stat-value{font-size:17px}.nav{gap:6px;padding:0 var(--page-pad) 10px;scroll-snap-type:x proximity;scroll-padding-inline:8px}.h-scroll--left>.nav{padding-left:34px}.h-scroll--right>.nav{padding-right:34px}.nav a,.nav button.linkish,.nav-group-trigger{scroll-snap-align:start;padding:9px 12px;min-height:40px;font-size:12px}.topbar-user{display:none}.topbar-main{gap:8px}.topbar-actions{gap:6px}.topbar-avatar{width:34px;height:34px}.notif-bell-btn,.theme-toggle:not(.theme-toggle--profile){width:36px;height:36px;min-width:36px;min-height:36px;padding:0}.nav-scroll-btn,.h-scroll-btn{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:10px;z-index:2;width:32px;min-width:32px;min-height:36px;padding:0;border:none;border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,var(--accent));color:var(--text);font-size:22px;font-weight:700;line-height:1;cursor:pointer;box-shadow:var(--shadow-soft);-webkit-tap-highlight-color:transparent}.h-scroll--table .h-scroll-btn{bottom:0;top:50%;transform:translateY(-50%);height:40px;width:32px;min-width:32px;font-size:20px}.nav-scroll-btn--left,.h-scroll-btn--left{left:4px}.nav-scroll-btn--right,.h-scroll-btn--right{right:4px}.h-scroll--right>.h-scroll-track.filters,.h-scroll--right>.h-scroll-track.users-role-filters{padding-right:34px}.h-scroll--left>.h-scroll-track.filters,.h-scroll--left>.h-scroll-track.users-role-filters{padding-left:34px}.h-scroll .h-scroll-btn{z-index:30}.nav-row .h-scroll{z-index:15}.nav-row .h-scroll .h-scroll-btn{z-index:35}.nav-group.is-open{z-index:40;position:relative}.h-scroll-btn,.nav-scroll-btn{box-shadow:var(--shadow-soft)}.card .h-scroll .h-scroll-btn,.h-scroll:has(>.filters)>.h-scroll-btn,.h-scroll:has(>.users-role-filters)>.h-scroll-btn{top:0;bottom:auto;height:36px;width:28px;font-size:18px}.h-scroll--left>.h-scroll-track,.nav-scroll--left .nav,.h-scroll--left .nav{mask-image:linear-gradient(to right,transparent 0,#000 36px,#000 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 36px,#000 100%)}.h-scroll--right>.h-scroll-track,.nav-scroll--right .nav,.h-scroll--right .nav{mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 36px),transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 36px),transparent 100%)}.h-scroll--left.h-scroll--right>.h-scroll-track,.nav-scroll--left.nav-scroll--right .nav,.h-scroll--left.h-scroll--right .nav{mask-image:linear-gradient(to right,transparent 0,#000 36px,#000 calc(100% - 36px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 36px,#000 calc(100% - 36px),transparent 100%)}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.toolbar-actions>.btn,.toolbar-actions>a.btn{flex:1 1 calc(50% - 8px);min-width:0}.chart-box,.chart-box-wide,.chart-box-xl,.chart-box-tall,.chart-box-pie{height:220px}.charts-grid{gap:10px}.chart-card{padding:10px 8px 6px}.entity-filters{padding:12px}.table-wrap{scroll-padding-inline:40px}.h-scroll--table .table-wrap{margin-bottom:2px}.modal-backdrop{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.modal-card{width:min(100%,calc(100vw - 24px));max-height:min(92dvh,640px);padding:14px;border-radius:14px}.toolbar{gap:10px}.toolbar .row{width:100%}.assembler-pick-item{min-height:52px;padding:12px}.order-card{padding:12px}.btn.small{min-height:36px}.info-grid{gap:10px}.row{flex-direction:column;align-items:stretch;gap:8px}.row>.btn,.row>a.btn{flex:0 0 auto;width:100%}.row>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.row>select,.row>textarea,.row>input[type=number]{flex:1 1 auto;width:100%;max-width:100%;min-width:0}.toolbar>.row{flex-direction:row;flex-wrap:wrap;align-items:center}.toolbar>.row>.btn,.toolbar>.row>a.btn{width:auto;flex:0 0 auto}.users-role-chip{flex:0 0 auto}.comment{padding:10px;gap:8px}.comment-avatar{width:32px;height:32px;font-size:11px}.comment .meta{flex-direction:column;align-items:flex-start;gap:6px}.comment .meta-author{flex:0 1 auto}.comment-audience{margin-left:0;align-self:flex-start}}@media(max-width:380px){.brand{font-size:15px}.stats{grid-template-columns:1fr 1fr}}.pagination{display:flex;flex-direction:column;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.pagination-meta{margin:0;font-size:13px}.pagination-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pagination-page{min-width:36px;min-height:36px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft),color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-soft)}.pagination-page:hover:not(:disabled):not(.active){background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-2));border-color:color-mix(in srgb,var(--link) 28%,var(--border));transform:translateY(-1px)}.pagination-page.active{background:var(--gradient-accent);border-color:transparent;color:var(--btn-fg);box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 20%,transparent)}.pagination-ellipsis{padding:0 2px;font-size:13px}@media(min-width:640px){.pagination{flex-direction:row;align-items:center;justify-content:space-between}}@media(min-width:640px){.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.stat-value{font-size:22px}.stat-label{font-size:12px}.info-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr 1fr;gap:12px}.files-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.toolbar{flex-direction:row;align-items:center;justify-content:space-between}.toolbar-actions>.btn,.toolbar-actions>a.btn{flex:0 0 auto}.row>.btn,.row>a.btn{flex:0 0 auto}.row>input:not([type=checkbox]):not([type=radio]):not([type=file]),.row>select{flex:1 1 auto;width:auto}.page-title{font-size:22px}.badge{white-space:nowrap;font-size:12px}.users-toolbar{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.users-search{flex:0 1 280px;max-width:280px;width:auto}}@media(min-width:900px){.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px}.topbar-main{padding:0;flex:0 1 auto;min-width:0}.brand{flex:0 1 auto}.topbar-user,.topbar-avatar,.notif-bell--mobile{display:none}.notif-bell--desktop{display:inline-flex}.nav-row{width:auto;max-width:100%;flex:1 1 auto;min-width:0;align-items:center;justify-content:flex-end;padding-right:0;gap:10px}.nav-row>.notif-bell--desktop{padding-left:0}.nav-row>.nav-scroll,.nav-row>.h-scroll{flex:0 1 auto;width:auto;max-width:100%}.nav{padding:0;width:auto;max-width:100%;overflow:visible;flex-wrap:wrap;justify-content:flex-end;cursor:default;touch-action:auto}.nav-scroll,.h-scroll.nav-scroll{overflow:visible}.nav-scroll-btn,.h-scroll-btn{display:none!important}.table-wrap,.filters{cursor:default;touch-action:auto}.h-scroll-track.users-role-filters{flex-wrap:wrap;overflow:visible;cursor:default;touch-action:auto}.page{padding:20px 16px 40px}.card{padding:16px}.grid-2{grid-template-columns:1.2fr .8fr;gap:16px}.mobile-list,.order-sort-mobile,.filters-zone-toggle{display:none}.filters-zone:not(.is-open) .filters-zone-body{display:block}.filters-zone .entity-filters-title{display:block}.filters-zone .entity-filters{padding:14px}.collapsible-section-toggle{display:none}.collapsible-section--always .collapsible-section-toggle{display:flex}.collapsible-section-heading{display:block;margin:0 0 14px;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.02em}.collapsible-section:not(.is-open) .collapsible-section-body{display:block}.collapsible-section--always:not(.is-open) .collapsible-section-body{display:none}.table-desktop{display:block}}:root{--scrollbar-size: 10px;--scrollbar-track: color-mix(in srgb, var(--surface-2) 88%, var(--border));--scrollbar-thumb: color-mix(in srgb, var(--muted) 45%, var(--border));--scrollbar-thumb-hover: color-mix(in srgb, var(--accent) 55%, var(--muted));--field-hover-border: color-mix(in srgb, var(--border) 35%, var(--muted));--select-chevron-active: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230f6b7c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--calendar-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235b6b7a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");--calendar-icon-active: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230f6b7c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");color-scheme:light}html[data-theme=dark]{--select-chevron-active: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237aadb6' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");--calendar-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a959f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");--calendar-icon-active: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237aadb6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");color-scheme:dark}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}*::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px;border:2px solid var(--scrollbar-track)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.scrollbar-hidden,.nav,.h-scroll-track.filters,.h-scroll-track.users-role-filters{scrollbar-width:none}.scrollbar-hidden::-webkit-scrollbar,.nav::-webkit-scrollbar,.h-scroll-track.filters::-webkit-scrollbar,.h-scroll-track.users-role-filters::-webkit-scrollbar{display:none;height:0;width:0}@media(min-width:900px){.table-wrap{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.table-wrap::-webkit-scrollbar{display:block;height:var(--scrollbar-size)}}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):not([type=reset]):not([type=date]):not([type=time]):not([type=datetime-local]):not([type=month]):not([type=week]),select{height:44px;min-height:44px;max-height:44px;padding-top:0;padding-bottom:0;line-height:1.25;box-sizing:border-box}select{min-height:44px;padding-right:42px;color-scheme:inherit}select:hover,select:focus{background-image:var(--select-chevron-active)}select option,select optgroup{background-color:var(--surface);color:var(--text)}.app-select{position:relative;display:block;width:100%;max-width:100%;min-width:0}.app-select-native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.app-select-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:44px;min-height:44px;max-height:44px;padding:0 42px 0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text);line-height:1.25;font:inherit;font-size:16px;text-align:left;cursor:pointer;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.app-select-trigger.is-placeholder .app-select-value{color:var(--muted)}.app-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-select-chevron{position:absolute;right:12px;top:50%;width:16px;height:16px;margin-top:-8px;background-image:var(--select-chevron);background-repeat:no-repeat;background-position:center;background-size:16px;pointer-events:none;transition:transform .15s ease}.app-select-trigger.is-open .app-select-chevron,.app-select[data-open="1"] .app-select-chevron{background-image:var(--select-chevron-active);transform:rotate(180deg)}.app-select-trigger:hover{border-color:var(--field-hover-border)}.app-select-trigger:hover .app-select-chevron{background-image:var(--select-chevron-active)}.app-select-trigger:focus{outline:none;border-color:var(--link);box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 22%,transparent)}.app-select-trigger:focus .app-select-chevron,.app-select-trigger.is-open .app-select-chevron{background-image:var(--select-chevron-active)}.app-select-trigger:disabled{opacity:.65;cursor:not-allowed;background-color:var(--surface-2);color:var(--muted)}.app-select-menu{position:fixed;z-index:220;margin:0;padding:6px;list-style:none;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 14%,transparent),0 2px 8px color-mix(in srgb,var(--text) 8%,transparent);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);animation:app-select-in .14s ease}.app-select-menu--up{animation-name:app-select-in-up}@keyframes app-select-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes app-select-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.app-select-sep{height:1px;margin:6px 8px;background:var(--border);list-style:none}.app-select-option{display:block;width:100%;margin:0;padding:10px 12px;border:0;border-radius:calc(var(--radius-sm) - 2px);background:transparent;color:var(--text);font:inherit;font-size:15px;line-height:1.35;text-align:left;cursor:pointer;transition:background-color .12s ease,color .12s ease}.app-select-option:hover:not(:disabled),.app-select-option:focus-visible{outline:none;background:color-mix(in srgb,var(--link) 12%,var(--surface-2))}.app-select-option.is-active{background:color-mix(in srgb,var(--link) 18%,transparent);color:var(--link);font-weight:600}.app-select-option:disabled{color:var(--muted);cursor:not-allowed;opacity:.7}.app-select-menu--multi{padding:6px}.app-select-option--check{display:flex;align-items:center;gap:10px}.app-select-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:1px solid var(--border);border-radius:5px;background:var(--surface-2);color:var(--link);font-size:12px;font-weight:700;line-height:1}.app-select-option--check.is-active .app-select-check{border-color:var(--link);background:color-mix(in srgb,var(--link) 16%,var(--surface))}.app-select-empty{padding:12px;color:var(--muted);font-size:14px;list-style:none}html[data-theme=dark] .app-select-menu{box-shadow:0 12px 32px #00000073,0 2px 8px #0000004d}.app-date{position:relative;display:block;width:100%;max-width:100%;min-width:0}.app-date-native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.app-date-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:44px;min-height:44px;max-height:44px;padding:0 42px 0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text);line-height:1.25;font:inherit;font-size:16px;text-align:left;cursor:pointer;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.app-date-trigger.is-placeholder .app-date-value{color:var(--muted)}.app-date-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em}.app-date-icon{position:absolute;right:12px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:6px;background-image:var(--calendar-icon);background-repeat:no-repeat;background-position:center;background-size:16px;pointer-events:none}.app-date-trigger:hover{border-color:var(--field-hover-border)}.app-date-trigger:hover .app-date-icon,.app-date-trigger.is-open .app-date-icon,.app-date-trigger:focus .app-date-icon{background-image:var(--calendar-icon-active);background-color:var(--accent-soft)}.app-date-trigger:focus,.app-date-trigger.is-open{outline:none;border-color:var(--link);box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 22%,transparent)}.app-date-trigger:disabled{opacity:.65;cursor:not-allowed;background-color:var(--surface-2);color:var(--muted)}.app-date-panel{position:fixed;z-index:220;display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 14%,transparent),0 2px 8px color-mix(in srgb,var(--text) 8%,transparent);overflow:hidden;animation:app-select-in .14s ease}.app-date-panel--up{animation-name:app-select-in-up}.app-date-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-date-title{flex:1;text-align:center;font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text)}.app-date-nav{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:20px;line-height:1;cursor:pointer}.app-date-nav:hover{border-color:var(--link);background:var(--accent-soft);color:var(--link)}.app-date-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:0 2px}.app-date-weekdays span{text-align:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1;padding:4px 0}.app-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.app-date-day{display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1;width:100%;min-height:34px;margin:0;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:14px;font-weight:500;cursor:pointer}.app-date-day:hover{background:color-mix(in srgb,var(--link) 12%,var(--surface-2))}.app-date-day.is-outside{color:color-mix(in srgb,var(--muted) 70%,transparent);font-weight:400}.app-date-day.is-today:not(.is-selected){border-color:color-mix(in srgb,var(--link) 45%,var(--border));color:var(--link);font-weight:700}.app-date-day.is-selected{background:var(--link);border-color:var(--link);color:var(--btn-fg);font-weight:700}.app-date-day.is-selected:hover{background:var(--link-hover);border-color:var(--link-hover);color:var(--btn-fg)}.app-date-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:4px;border-top:1px solid var(--border)}.app-date-action{margin:0;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--link);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.app-date-action:hover{background:var(--accent-soft);color:var(--link-hover)}html[data-theme=dark] .app-date-panel{box-shadow:0 12px 32px #00000073,0 2px 8px #0000004d}.form-group .app-select,.form-group .app-date,.entity-filters .app-select,.entity-filters .app-date,.row>.app-select,.row>.app-date,.stack>.app-select,.stack>.app-date,.dashboard-block-row .app-select,.order-sort-mobile .app-select{width:100%}.dashboard-block-row .app-select{width:auto;min-width:140px;flex:0 0 auto}.order-sort-mobile .app-select{flex:1;min-width:180px;max-width:100%}.topbar{position:static!important}.landing-page{--landing-max: 1120px;--landing-section-y: clamp(32px, 5vw, 56px);--landing-block-pad: clamp(28px, 4vw, 40px);--landing-stack: 14px;--landing-lead-gap: 28px;--landing-after-hero: clamp(16px, 2.5vw, 28px);position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:clip}.landing-atmosphere{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.landing-atmosphere-glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55}.landing-atmosphere-glow--a{width:min(70vw,640px);height:min(70vw,640px);top:-18%;left:-12%;background:color-mix(in srgb,var(--link) 28%,var(--bg-glow-1));animation:landingGlowDrift 18s var(--ease-soft) infinite alternate}.landing-atmosphere-glow--b{width:min(55vw,480px);height:min(55vw,480px);top:8%;right:-10%;background:color-mix(in srgb,var(--accent) 22%,var(--bg-glow-2));animation:landingGlowDrift 22s var(--ease-soft) infinite alternate-reverse}.landing-atmosphere-grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.35;background-image:radial-gradient(color-mix(in srgb,var(--text) 8%,transparent) .6px,transparent .7px);background-size:3px 3px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 72%);mask-image:linear-gradient(180deg,#000 0%,transparent 72%)}.landing-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--page-pad);padding-top:max(14px,env(safe-area-inset-top));width:100%;max-width:var(--landing-max);margin:0 auto;background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15);border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.landing-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:0;transition:opacity var(--motion-fast) var(--ease-soft)}.landing-brand:hover{opacity:.92}.landing-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--gradient-accent);color:var(--btn-fg);font-family:var(--font-display);font-size:13px;font-weight:800;letter-spacing:-.04em;flex-shrink:0;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 28%,transparent);transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-soft)}.landing-brand:hover .landing-brand-mark{transform:scale(1.04) rotate(-2deg);box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 34%,transparent)}.landing-brand-name{font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:-.03em;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landing-nav{display:flex;align-items:center;gap:8px;flex-shrink:0}.landing-main{position:relative;z-index:1;flex:1;width:100%;max-width:var(--landing-max);margin:0 auto;padding:0 var(--page-pad) var(--landing-section-y);display:flex;flex-direction:column;gap:0}.landing-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);gap:clamp(28px,5vw,56px);align-items:center;min-height:min(72dvh,680px);padding:var(--landing-section-y) 0 var(--landing-after-hero)}.landing-hero-copy{max-width:34rem}.landing-brand-hero{margin:0 0 var(--landing-stack);font-family:var(--font-display);font-size:clamp(1.75rem,4.2vw,2.75rem);font-weight:800;letter-spacing:-.045em;line-height:1.05;color:var(--accent);animation:landingFadeUp .6s var(--ease-soft) both;animation-delay:.06s}.landing-title{margin:0 0 var(--landing-stack);font-family:var(--font-display);font-size:clamp(2rem,5.5vw,3.4rem);line-height:1.05;font-weight:800;letter-spacing:-.045em;color:var(--text);animation:landingFadeUp .65s var(--ease-soft) both;animation-delay:.12s}.landing-title-line{display:block;background:linear-gradient(115deg,var(--accent) 0%,var(--link) 42%,color-mix(in srgb,var(--link) 65%,#7eb8a8) 72%,var(--accent) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:landingTitleShimmer 10s var(--ease-soft) infinite}.landing-lead{margin:0 0 var(--landing-lead-gap);max-width:36ch;font-size:clamp(1.02rem,1.6vw,1.15rem);line-height:1.55;color:var(--muted);animation:landingFadeUp .65s var(--ease-soft) both;animation-delay:.18s}.landing-hero-actions{display:flex;flex-wrap:wrap;gap:10px;animation:landingFadeUp .65s var(--ease-soft) both;animation-delay:.26s}.landing-hero-cta{min-width:168px}.landing-hero-visual{position:relative;min-height:320px;perspective:900px;animation:landingFadeScale .75s var(--ease-soft) both;animation-delay:.16s}.landing-hero-stack{position:relative;width:100%;height:100%;min-height:280px;transform-style:preserve-3d;transition:filter .6s var(--ease-soft)}.landing-hero-stack--assembly{--hero-accent: var(--accent);--hero-glow: color-mix(in srgb, var(--accent) 55%, #2a4a52)}.landing-hero-stack--shop{--hero-accent: var(--link);--hero-glow: color-mix(in srgb, var(--link) 50%, #1e4a55)}.landing-hero-visual--assembly{--hero-accent: var(--accent)}.landing-hero-visual--shop{--hero-accent: var(--link)}.landing-hero-orbit{position:absolute;border-radius:50%;pointer-events:none;opacity:.55;animation:landingHeroOrbit 5.5s var(--ease-soft) infinite;animation-delay:var(--orbit-delay, 0s)}.landing-hero-orbit--a{width:10px;height:10px;top:8%;right:12%;background:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 60%,transparent)}.landing-hero-orbit--b{width:6px;height:6px;bottom:18%;right:4%;background:var(--link);animation-duration:7s}.landing-hero-orbit--c{width:8px;height:8px;top:42%;left:6%;background:color-mix(in srgb,var(--accent) 70%,var(--link));animation-duration:6.2s;animation-direction:reverse}.landing-hero-panel{position:absolute;border-radius:calc(var(--radius) + 6px);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:var(--shadow)}.landing-hero-panel--back{top:10%;right:6%;bottom:10%;left:16%;background:linear-gradient(145deg,var(--hero-glow, color-mix(in srgb, var(--accent) 55%, #2a4a52)) 0%,color-mix(in srgb,var(--link) 40%,var(--accent)) 100%);animation:landingPanelFloatA 7s var(--ease-soft) infinite alternate;transition:background .7s var(--ease-soft)}.landing-hero-panel--mid{top:20%;right:2%;bottom:16%;left:26%;overflow:hidden;background:color-mix(in srgb,var(--surface) 90%,var(--accent-soft));animation:landingPanelFloatB 9s var(--ease-soft) infinite alternate-reverse}.landing-hero-mid-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--surface-2) 92%,var(--accent)) 0,color-mix(in srgb,var(--surface-2) 92%,var(--accent)) 10px,color-mix(in srgb,var(--surface) 88%,var(--link)) 10px,color-mix(in srgb,var(--surface) 88%,var(--link)) 20px),repeating-linear-gradient(0deg,transparent 0 18px,color-mix(in srgb,var(--border) 35%,transparent) 18px 19px);opacity:.85;animation:landingMidGridShift 12s linear infinite}.landing-hero-panel--front{display:flex;flex-direction:column;left:0;right:14%;bottom:4%;top:auto;min-height:52%;padding:0;overflow:hidden;background:color-mix(in srgb,var(--surface) 97%,var(--accent-soft));animation:landingPanelFloatC 8s var(--ease-soft) infinite alternate}.landing-hero-slides{position:relative;flex:1;min-height:200px;overflow:hidden;isolation:isolate;background:var(--surface)}.landing-hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:20px 20px 18px;background:linear-gradient(165deg,var(--surface) 0%,color-mix(in srgb,var(--accent-soft) 50%,var(--surface)) 100%);opacity:1;transform:translate3d(104%,0,0);visibility:hidden;pointer-events:none;z-index:0;transition:none}.landing-hero-slide.is-active{transform:translateZ(0);visibility:visible;pointer-events:auto;z-index:2;transition:transform .48s cubic-bezier(.22,1,.36,1)}.landing-hero-slide.is-leaving{transform:translate3d(-28%,0,0);visibility:visible;z-index:1;pointer-events:none;transition:transform .48s cubic-bezier(.4,0,.2,1)}.landing-hero-visual.is-swapping .landing-hero-panel--back{filter:brightness(1.05) saturate(1.06);transition:filter .35s var(--ease-soft),background .7s var(--ease-soft)}.landing-hero-visual.is-swapping .landing-hero-panel--front{box-shadow:var(--shadow),0 12px 28px color-mix(in srgb,var(--hero-accent, var(--accent)) 14%,transparent)}.landing-hero-panel-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--hero-accent, var(--link));transition:color .5s var(--ease-soft)}.landing-hero-panel-title{font-family:var(--font-display);font-size:clamp(1.05rem,2vw,1.35rem);font-weight:800;letter-spacing:-.03em;line-height:1.2;color:var(--text)}.landing-hero-panel-sub{font-size:13px;font-weight:500;line-height:1.4;color:var(--muted)}.landing-hero-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 0;padding:0;list-style:none}.landing-hero-chip{--chip-i: 0;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--text);background:color-mix(in srgb,var(--surface) 80%,var(--accent-soft));border:1px solid color-mix(in srgb,var(--border) 70%,var(--hero-accent, var(--accent)));opacity:1;transform:none}.landing-hero-slide.is-active .landing-hero-chip{animation:landingChipPop .4s var(--ease-out) both;animation-delay:calc(.05s * var(--chip-i) + .18s)}.landing-hero-slide:not(.is-active) .landing-hero-chip{animation:none}.landing-hero-stat{display:flex;flex-direction:column;gap:2px;margin-top:6px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.landing-hero-stat-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.landing-hero-stat-value{font-size:13px;font-weight:700;color:var(--hero-accent, var(--accent));transition:color .5s var(--ease-soft)}.landing-hero-dots{position:absolute;left:50%;bottom:-4px;transform:translate(-50%);display:flex;gap:8px;z-index:2}.landing-hero-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;cursor:pointer;background:color-mix(in srgb,var(--muted) 45%,transparent);transition:transform .25s var(--ease-out),background .25s var(--ease-soft),box-shadow .25s var(--ease-soft)}.landing-hero-dot.is-active{transform:scale(1.25);background:var(--hero-accent, var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--hero-accent, var(--accent)) 25%,transparent)}.landing-hero-visual.is-swapping .landing-hero-dot.is-active{animation:landingDotPulse .72s var(--ease-soft)}.landing-hero-dot:hover{background:color-mix(in srgb,var(--link) 70%,var(--muted))}.landing-section,.landing-shop-band,.landing-cta-band,.landing-welcome{padding:var(--landing-section-y) 0 0}.landing-welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:var(--landing-after-hero);padding-bottom:0;max-width:36rem;margin:0 auto;width:100%}.landing-welcome .landing-section-kicker,.landing-welcome .landing-section-title,.landing-welcome .landing-section-lead{margin-left:auto;margin-right:auto;text-align:center}.landing-welcome .landing-section-lead{max-width:34ch}.landing-welcome-actions{justify-content:center;animation:none}.landing-shop-band-inner,.landing-cta-inner{position:relative;overflow:hidden;padding:var(--landing-block-pad);border-radius:calc(var(--radius) + 6px);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-soft)}.landing-shop-band-inner{border:1px solid color-mix(in srgb,var(--border) 85%,var(--accent));background:radial-gradient(700px 240px at 100% 0%,color-mix(in srgb,var(--link) 14%,transparent),transparent 60%),linear-gradient(120deg,color-mix(in srgb,var(--surface) 88%,var(--accent-soft)) 0%,var(--surface) 45%,color-mix(in srgb,var(--surface-2) 70%,var(--accent-soft)) 100%);box-shadow:var(--shadow-soft)}.landing-shop-band-inner:hover,.landing-cta-inner:hover{transform:translateY(-3px);box-shadow:0 18px 40px color-mix(in srgb,var(--accent) 18%,transparent)}.landing-shop-band-copy{position:relative;z-index:1;max-width:40rem}.landing-section-kicker--on-dark{color:var(--accent)}.landing-shop-band-title,.landing-section-title{margin:0 0 var(--landing-stack);font-family:var(--font-display);font-size:clamp(1.45rem,3.2vw,1.95rem);font-weight:800;letter-spacing:-.035em;line-height:1.15;color:var(--text)}.landing-section-title{font-size:clamp(1.45rem,3vw,1.85rem);letter-spacing:-.03em}.landing-shop-band-lead,.landing-section-lead{margin:0 0 var(--landing-lead-gap);max-width:48ch;font-size:15px;line-height:1.55;color:var(--muted)}.landing-section-lead{max-width:42ch;line-height:1.5}.landing-shop-band-lines{margin:0 0 var(--landing-lead-gap);font-size:13px;font-weight:600;letter-spacing:.02em;color:color-mix(in srgb,var(--text) 72%,var(--muted))}.landing-shop-band-cta{min-width:180px}.landing-section-kicker{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--link)}.landing-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--border)}.landing-step{--step: 0;display:flex;flex-direction:column;gap:var(--landing-stack);padding:28px 28px 8px;border-right:1px solid var(--border);animation:landingFadeUp .55s var(--ease-soft) both;animation-delay:calc(.08s * var(--step) + .12s);transition:background var(--motion-base) var(--ease-soft)}.landing-step:last-child{border-right:none;padding-right:0}.landing-step:first-child{padding-left:0}.landing-step-n{font-family:var(--font-display);font-size:13px;font-weight:800;letter-spacing:.06em;color:var(--accent);transition:transform .3s var(--ease-out),color .3s var(--ease-soft)}.landing-step:hover .landing-step-n{transform:translate(4px);color:var(--link)}.landing-step-body h3{margin:0 0 8px;font-size:17px;font-weight:700;letter-spacing:-.02em}.landing-step-body p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.landing-split{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--border)}.landing-split-block{--split: 0;padding:24px 28px 8px 0;animation:landingFadeUp .55s var(--ease-soft) both;animation-delay:calc(.1s * var(--split) + .1s)}.landing-split-block--alt{padding:24px 0 8px 28px;border-left:1px solid var(--border)}.landing-split-block h3{margin:0 0 10px;font-family:var(--font-display);font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.landing-split-block p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--muted);max-width:38ch}.landing-split-link{display:inline-flex;font-size:14px;font-weight:700;color:var(--link);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--link) 35%,transparent);padding-bottom:2px;transition:color var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-out)}.landing-split-link:hover{color:var(--link-hover);border-color:var(--link-hover);transform:translate(3px)}.landing-cta-inner{margin-bottom:0;text-align:left;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));background:radial-gradient(900px 280px at 100% 0%,color-mix(in srgb,var(--link) 18%,transparent),transparent 55%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 92%,#0d2428),color-mix(in srgb,var(--accent-hover) 70%,var(--link)));color:#f3f7f8;box-shadow:0 18px 40px color-mix(in srgb,var(--accent) 28%,transparent)}.landing-cta-inner h2{margin:0 0 var(--landing-stack);font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.75rem);font-weight:800;letter-spacing:-.03em;color:inherit}.landing-cta-inner p{margin:0 0 var(--landing-lead-gap);max-width:46ch;font-size:15px;line-height:1.5;color:color-mix(in srgb,#f3f7f8 78%,transparent)}.landing-cta-inner .landing-hero-actions,.landing-shop-band .landing-hero-actions,.landing-section .landing-hero-actions{animation:none}.landing-cta-inner .btn.secondary{background:color-mix(in srgb,#fff 12%,transparent);border-color:color-mix(in srgb,#fff 28%,transparent);color:#f3f7f8}.landing-cta-inner .btn.secondary:hover{background:color-mix(in srgb,#fff 18%,transparent);border-color:color-mix(in srgb,#fff 40%,transparent);color:#fff}.landing-footer{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:var(--landing-section-y) var(--page-pad) max(28px,env(safe-area-inset-bottom));font-size:13px;color:var(--muted);border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);max-width:var(--landing-max);width:100%;margin:0 auto}.landing-footer-dot{opacity:.5}.landing-footer-link{color:inherit;text-decoration:underline;text-underline-offset:3px;transition:color var(--motion-fast) var(--ease-soft)}.landing-footer-link:hover{color:var(--link)}@keyframes landingGlowDrift{0%{transform:translate(0) scale(1)}to{transform:translate(4%,6%) scale(1.06)}}@keyframes landingPanelFloatA{0%{transform:translateZ(0) rotate(-1.5deg)}to{transform:translate3d(0,-10px,0) rotate(-.5deg)}}@keyframes landingPanelFloatB{0%{transform:translateZ(0) rotate(1deg)}to{transform:translate3d(0,8px,0) rotate(2deg)}}@keyframes landingPanelFloatC{0%{transform:translateZ(0) rotate(-.5deg)}to{transform:translate3d(0,-6px,0) rotate(.5deg)}}@keyframes landingHeroOrbit{0%,to{transform:translateZ(0) scale(1);opacity:.45}50%{transform:translate3d(0,-8px,0) scale(1.15);opacity:.85}}@keyframes landingMidGridShift{0%{background-position:0 0,0 0}to{background-position:40px 0,0 36px}}@keyframes landingChipPop{0%{opacity:0;transform:translateY(6px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes landingStackShuffle{0%,to{transform:translateZ(0)}40%{transform:translate3d(0,-4px,0)}}@keyframes landingDotPulse{0%,to{transform:scale(1.25)}45%{transform:scale(1.55)}}@keyframes landingTitleShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes landingFadeScale{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:860px){.landing-page{--landing-section-y: clamp(32px, 8vw, 48px)}.landing-hero{grid-template-columns:1fr;min-height:0;gap:28px}.landing-hero-visual{order:-1;min-height:260px;max-width:420px;margin:0 auto;width:100%;padding-bottom:20px}.landing-hero-stack{min-height:240px}.landing-hero-panel--front{right:8%;min-height:58%}.landing-steps{grid-template-columns:1fr}.landing-step{border-right:none;border-bottom:1px solid var(--border);padding:24px 0}.landing-step:first-child{padding-left:0}.landing-step:last-child{border-bottom:none;padding-bottom:4px;padding-right:0}.landing-split{grid-template-columns:1fr}.landing-split-block,.landing-split-block--alt{padding:20px 0}.landing-split-block--alt{border-left:none;border-top:1px solid var(--border)}}@media(max-width:520px){.landing-header{flex-wrap:wrap}.landing-nav{width:100%;justify-content:flex-end}.landing-hero-cta{flex:1 1 auto;min-width:0;text-align:center}}@media(prefers-reduced-motion:reduce){.landing-atmosphere-glow,.landing-hero-panel--back,.landing-hero-panel--mid,.landing-hero-panel--front,.landing-hero-orbit,.landing-hero-mid-grid,.landing-hero-chip,.landing-title-line,.landing-brand-hero,.landing-title,.landing-lead,.landing-hero-actions,.landing-hero-visual,.landing-hero-stack,.landing-step,.landing-split-block{animation:none!important}.landing-hero-slide{transition:none;filter:none;transform:none}.landing-hero-slide:not(.is-active){display:none}.landing-shop-band-inner:hover,.landing-cta-inner:hover,.landing-step:hover .landing-step-n,.landing-split-link:hover{transform:none!important}}.shop-public-shell{--landing-max: min(1480px, calc(100vw - 32px) )}.shop-public-shell .landing-main{padding-bottom:max(96px,calc(48px + env(safe-area-inset-bottom)))}.shop-main{padding-top:8px}.shop-public-page{max-width:none;margin:0;padding:0}.shop-page{display:flex;flex-direction:column;gap:20px;padding-bottom:80px}.shop-header .landing-nav{align-items:center}.shop-header-cart-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--accent);color:var(--btn-fg);font-size:12px;font-weight:800}.shop-register-btn{box-shadow:var(--shadow-soft)}.shop-guest-hint{margin:0 0 12px;font-size:14px;line-height:1.45;color:var(--muted)}.shop-hero{position:relative;overflow:hidden;padding:28px 24px 26px;border-radius:calc(var(--radius) + 4px);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 75%,var(--surface)) 0%,var(--surface) 48%,color-mix(in srgb,var(--link) 8%,var(--surface)) 100%);box-shadow:var(--shadow-soft)}.shop-hero-glow{position:absolute;top:-40%;right:-10%;width:min(420px,55vw);height:min(420px,55vw);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 18%,transparent) 0%,transparent 70%);pointer-events:none}.shop-hero-inner{position:relative;z-index:1;max-width:640px}.shop-home-link{display:inline-flex;align-items:center;margin:0 0 12px;font-size:13px;font-weight:600;color:var(--link);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft)}.shop-home-link:hover{color:var(--link-hover);border-bottom-color:color-mix(in srgb,var(--link-hover) 45%,transparent)}.shop-hero-kicker{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.shop-hero-title{margin:0 0 10px;font-family:var(--font-display);font-size:clamp(1.5rem,3.5vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.shop-hero-lead{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}.shop-hero-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.shop-stat-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);font-size:13px;color:var(--muted)}.shop-stat-pill strong{color:var(--text);font-weight:800}.shop-stat-pill--accent{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--accent-soft);color:var(--accent)}.shop-stat-pill--accent strong{color:var(--accent)}.shop-toolbar{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft)}.shop-search-wrap{position:relative;display:flex;align-items:center}.shop-search-icon{position:absolute;left:14px;font-size:18px;line-height:1;color:var(--muted);pointer-events:none}.shop-search-wrap .shop-search-input,#shop-q.shop-search-input{width:100%;padding-left:42px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:15px;transition:border-color .15s ease,box-shadow .15s ease}.shop-search-wrap .shop-search-input:focus,#shop-q.shop-search-input:focus{outline:none;border-color:color-mix(in srgb,var(--link) 45%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 15%,transparent)}.shop-filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.shop-filter-select{min-width:0}.shop-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.shop-layout{display:block}.shop-section-head{margin-bottom:14px}.shop-section-title{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.shop-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--muted)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;align-items:stretch}.shop-card{display:flex;flex-direction:column;gap:10px;height:100%;min-height:0;padding:16px;border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:var(--surface);box-shadow:var(--shadow-soft);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.shop-card-media{position:relative;margin:-4px -4px 4px;border-radius:calc(var(--radius-sm) + 2px);overflow:hidden;aspect-ratio:4 / 3;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 55%,var(--surface-2)) 0%,var(--surface-2) 100%)}.shop-card-media--skeleton{background:linear-gradient(110deg,var(--surface-2) 0%,color-mix(in srgb,var(--surface) 90%,var(--surface-2)) 45%,var(--surface-2) 90%);background-size:200% 100%;animation:uiShimmer 1.4s ease-in-out infinite}.shop-card-photo-count{position:absolute;left:8px;bottom:8px;z-index:2;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--text) 62%,transparent);color:#fff;font-size:11px;font-weight:700;pointer-events:none}.shop-card--clickable{padding-top:12px}.shop-card-open{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;width:100%;min-height:0;margin:0;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.shop-card-excerpt{margin:0;font-size:13px;line-height:1.4;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}.material-photo-wrap{display:block;overflow:hidden;border-radius:inherit}.material-photo-wrap--card,.material-photo-wrap--detail{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.material-photo-wrap--thumb,.material-photo-wrap--line,.material-photo-wrap--form{position:relative;flex-shrink:0}.material-photo-wrap--thumb{width:52px;height:52px;border-radius:10px}.material-photo-wrap--line{width:56px;height:56px;border-radius:10px}.material-photo-wrap--form{width:120px;height:90px;border-radius:var(--radius-sm)}.material-photo-wrap--zoom .material-photo{transition:transform .35s var(--ease-out, cubic-bezier(.22, 1, .36, 1));transform-origin:center center}@media(hover:hover)and (pointer:fine){.material-photo-wrap--zoom:hover .material-photo{transform:scale(1.12)}}.material-photo{display:block;width:100%;height:100%;object-fit:cover}.material-photo--card,.material-photo--detail{min-height:100%}.material-photo--thumb,.material-photo--line{width:100%;height:100%;border-radius:10px}.material-photo--form{width:120px;height:90px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0}.material-photo--placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 45%,var(--surface-2)) 0%,var(--surface-2) 100%);color:var(--muted)}.material-photo-wrap--card.material-photo--placeholder,.material-photo-wrap--detail.material-photo--placeholder{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:100%;border-radius:inherit}.material-photo-icon{font-size:28px;line-height:1;opacity:.55}.material-photo-wrap--thumb .material-photo-icon,.material-photo-wrap--line .material-photo-icon{font-size:20px}.material-photo-field{margin-bottom:16px}.material-photo-gallery-edit{display:flex;flex-wrap:wrap;gap:12px}.material-photo-slot{display:flex;flex-direction:column;gap:8px}.material-photo-field-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.material-photo-field-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.material-photo-upload{cursor:pointer}.material-photo-hint{margin:8px 0 0;font-size:12px}.materials-list-desc{margin:4px 0 0;font-size:13px;line-height:1.4;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.shop-product-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:160;display:grid;place-items:center;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--text) 42%,transparent);animation:uiFadeIn .2s ease both}.shop-product-modal{position:relative;width:min(920px,100%);max-height:min(92dvh,820px);overflow:auto;border-radius:calc(var(--radius) + 4px);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);padding:20px;animation:uiScaleIn .28s var(--ease-out, ease) both}.shop-product-modal-close{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.shop-product-modal-close:hover{color:var(--text)}.shop-product-modal-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start}.shop-product-gallery-main{position:relative;aspect-ratio:4 / 3;border-radius:var(--radius);overflow:hidden;background:var(--surface-2);border:1px solid var(--border)}.shop-product-thumbs{display:flex;gap:8px;margin-top:10px}.shop-product-thumb{width:64px;height:64px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--surface-2);cursor:pointer}.shop-product-thumb.is-active{border-color:var(--accent)}.shop-product-thumb .material-photo-wrap--thumb{width:100%;height:100%;border-radius:8px}.shop-product-kicker{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.shop-product-title{margin:0 0 6px;padding-right:36px;font-family:var(--font-display);font-size:clamp(1.25rem,2.5vw,1.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}.shop-product-article{margin:0 0 10px;font-size:13px}.shop-product-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.shop-product-tags span{padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:12px;font-weight:600;color:var(--muted)}.shop-product-price-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px;margin-bottom:16px}.shop-product-price{font-family:var(--font-display);font-size:1.45rem;font-weight:800;letter-spacing:-.03em;color:var(--accent)}.shop-product-desc h3{margin:0 0 8px;font-size:14px;font-weight:700}.shop-product-desc p{margin:0;font-size:14px;line-height:1.55;color:var(--text);white-space:pre-wrap}.shop-product-desc-empty{margin:0 0 16px;font-size:13px}.shop-product-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.shop-product-add{flex:1 1 160px}.shop-product-hint{margin:12px 0 0;font-size:13px}@media(max-width:720px){.shop-product-modal-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.material-photo-wrap--zoom .material-photo,.material-photo-wrap--zoom:hover .material-photo{transition:none;transform:none}}.materials-list-item-row{display:flex;gap:12px;align-items:flex-start}.materials-list-body{flex:1;min-width:0}.warehouse-photo-col{width:60px;vertical-align:middle}.shop-card:hover{border-color:color-mix(in srgb,var(--link) 32%,var(--border));transform:translateY(-2px);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 8%,transparent)}.shop-card:focus-within{border-color:var(--link);box-shadow:0 0 0 3px color-mix(in srgb,var(--link) 18%,transparent)}.shop-card--in-cart{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 55%,var(--surface)) 0%,var(--surface) 100%)}.shop-card--out{opacity:.72}.shop-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.shop-card-type{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.shop-card-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:var(--accent);color:var(--btn-fg);font-size:12px;font-weight:800}.shop-card-title{margin:0;font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.shop-card-article{margin:0;font-size:13px;line-height:1.35;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.35em}.shop-card-tags{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;max-height:28px;overflow:hidden}.shop-card-tags span{padding:4px 8px;border-radius:6px;background:var(--surface-2);font-size:12px;color:var(--text)}.shop-card-pricing{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:auto;padding-top:6px}.shop-card-price{font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.shop-card-stock{font-size:12px;font-weight:600;color:var(--ok)}.shop-card-stock.is-out{color:var(--warn)}.shop-card-controls{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-top:auto}.shop-stepper{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden}.shop-stepper-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;color:var(--text);font-size:18px;line-height:1;cursor:pointer;transition:background .12s ease}.shop-stepper-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-soft) 70%,transparent)}.shop-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.shop-stepper-value{min-width:28px;text-align:center;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.shop-card-add{flex:1;min-width:0}.shop-card--skeleton{pointer-events:none;animation:shopPulse 1.4s ease-in-out infinite}@keyframes shopPulse{0%,to{opacity:1}50%{opacity:.55}}.shop-skeleton-line{height:12px;border-radius:6px;background:color-mix(in srgb,var(--border) 65%,transparent)}.shop-skeleton-line--short{width:38%;height:10px}.shop-skeleton-line--title{height:18px;width:85%}.shop-skeleton-line--price{width:45%;height:16px;margin-top:auto}.shop-skeleton-tags{display:flex;gap:6px}.shop-skeleton-tags span{width:56px;height:22px;border-radius:6px;background:color-mix(in srgb,var(--border) 65%,transparent)}.shop-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:48px 24px;border:1px dashed color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius);background:var(--surface-2)}.shop-empty-state h3{margin:0;font-size:18px}.shop-empty-icon{font-size:40px;line-height:1;margin-bottom:4px}.shop-empty-icon--sm{font-size:28px}.shop-cart-panel{transition:opacity .15s ease}.shop-cart-panel--float{width:min(380px,calc(100vw - 32px));max-height:min(560px,calc(100dvh - 120px - env(safe-area-inset-bottom,0px)));animation:shopCartFloatIn .28s ease both;position:relative;z-index:2}.shop-cart-float{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:100;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}.shop-cart-backdrop{display:none}.shop-cart-float>*{pointer-events:auto}.shop-cart-fab{position:relative;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;padding:0;border:none;border-radius:999px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 92%,white) 0%,var(--accent) 100%);color:var(--btn-fg);box-shadow:0 8px 28px color-mix(in srgb,var(--accent) 38%,transparent),0 2px 8px color-mix(in srgb,var(--text) 12%,transparent);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.shop-cart-fab:hover{transform:translateY(-2px);box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 42%,transparent),0 4px 10px color-mix(in srgb,var(--text) 14%,transparent)}.shop-cart-fab.is-open{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.shop-cart-fab-icon{font-size:28px;line-height:1}.shop-cart-fab-badge{position:absolute;top:-2px;right:-2px;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:12px;font-weight:800;line-height:1;border:2px solid var(--surface)}.shop-cart-fab.is-open .shop-cart-fab-badge{border-color:var(--surface-2)}.shop-cart-collapse{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:20px;line-height:1;cursor:pointer;flex-shrink:0;transition:color .12s ease,border-color .12s ease,background .12s ease}.shop-cart-collapse:hover{color:var(--text);border-color:color-mix(in srgb,var(--link) 35%,var(--border));background:color-mix(in srgb,var(--link) 8%,var(--surface-2))}@keyframes shopCartFloatIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.shop-cart-panel.is-busy{opacity:.72;pointer-events:none}.shop-cart-panel-inner{display:flex;flex-direction:column;gap:14px;max-height:min(560px,calc(100vh - 120px));padding:18px;border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 28%,var(--surface)) 0%,var(--surface) 72px);box-shadow:var(--shadow-soft),0 16px 48px color-mix(in srgb,var(--text) 10%,transparent);overflow:hidden}.shop-cart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.shop-cart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:20px 8px}.shop-cart-lines{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;flex:1 1 auto;min-height:0;max-height:min(280px,34vh);overflow-y:auto}.shop-cart-line{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent)}.shop-cart-line:last-child{border-bottom:none}.shop-cart-line .material-photo--line{width:56px;height:56px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2)}.shop-cart-line-main{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.shop-cart-line-title{font-size:14px;font-weight:700;line-height:1.3;letter-spacing:-.01em}.shop-cart-line-tags{display:flex;flex-wrap:wrap;gap:4px}.shop-cart-line-tags span{display:inline-flex;padding:2px 7px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:11px;font-weight:600;color:var(--muted);line-height:1.3}.shop-cart-line-meta{font-size:12px;color:var(--muted)}.shop-cart-line-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:2px}.shop-cart-line .shop-stepper-btn{width:28px;height:28px;font-size:16px}.shop-cart-line .shop-stepper-value{min-width:28px;font-size:13px}.shop-cart-line-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0;margin-left:auto}.shop-cart-line-sum{font-size:14px;font-weight:800;font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;color:var(--accent)}.shop-cart-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);font-size:18px;line-height:1;cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.shop-cart-remove:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--surface-2))}.shop-cart-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 12px;margin:0 -2px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface));font-size:15px}.shop-cart-summary-text{display:flex;flex-direction:column;gap:2px;font-weight:600}.shop-cart-summary-meta{font-size:12px;font-weight:500;color:var(--muted)}.shop-cart-summary strong{font-family:var(--font-display);font-size:1.2rem;font-weight:800;letter-spacing:-.03em;color:var(--accent)}.shop-guest-cta,.shop-staff-cta{display:flex;flex-direction:column;gap:10px}.shop-staff-cta{padding:12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--link) 22%,var(--border));background:color-mix(in srgb,var(--accent-soft) 40%,var(--surface))}.shop-staff-cta-text{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}.shop-address-field{margin:0}.shop-address-field textarea{resize:vertical;min-height:64px}.shop-checkout-btn{font-weight:700;text-align:center;text-decoration:none}.checkout-progress-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--text) 48%,transparent);animation:uiFadeIn .2s ease both}.checkout-progress{width:min(420px,100%);padding:28px 24px;border-radius:calc(var(--radius) + 4px);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);text-align:center;animation:uiScaleIn .28s var(--ease-out, ease) both}.checkout-progress-spinner{width:44px;height:44px;margin:0 auto 16px;border:3px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-top-color:var(--accent);border-radius:50%;animation:checkoutSpin .75s linear infinite}@keyframes checkoutSpin{to{transform:rotate(360deg)}}.checkout-progress-kicker{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.checkout-progress-title{margin:0 0 8px;font-family:var(--font-display);font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.checkout-progress-order{margin:0 0 6px;font-size:13px}.checkout-progress-hint{margin:0 0 18px;font-size:13px;line-height:1.45;color:var(--muted)}.checkout-progress-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;text-align:left}.checkout-progress-step{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.checkout-progress-step.is-active{color:var(--text);font-weight:700}.checkout-progress-step.is-done{color:var(--ok, #1a7f4b)}.checkout-progress-step-mark{width:20px;flex-shrink:0;text-align:center;font-size:12px}.payment-status-banner{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 16px;margin-bottom:16px;padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border)}.payment-status-banner--success{background:color-mix(in srgb,var(--ok, #1a7f4b) 10%,var(--surface));border-color:color-mix(in srgb,var(--ok, #1a7f4b) 35%,var(--border))}.payment-status-banner--pending{background:color-mix(in srgb,var(--warn, #b8860b) 10%,var(--surface));border-color:color-mix(in srgb,var(--warn, #b8860b) 35%,var(--border))}.payment-status-banner-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;font-weight:800;flex-shrink:0}.payment-status-banner--success .payment-status-banner-icon{background:color-mix(in srgb,var(--ok, #1a7f4b) 18%,var(--surface));color:var(--ok, #1a7f4b)}.payment-status-banner--pending .payment-status-banner-icon{background:color-mix(in srgb,var(--warn, #b8860b) 18%,var(--surface));color:var(--warn, #b8860b)}.payment-status-banner-body{flex:1 1 200px;min-width:0}.payment-status-banner-body strong{display:block;margin-bottom:4px;font-size:15px}.payment-status-banner-body p{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}.payment-status-banner-action{flex-shrink:0;align-self:center}.material-order-admin-pay{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:12px}.material-order-admin-pay-hint{margin:0;font-size:13px;line-height:1.4;max-width:36ch}.shop-loading{animation:checkoutPulse 1.2s ease-in-out infinite}@keyframes checkoutPulse{0%,to{opacity:.55}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.checkout-progress-spinner,.shop-loading{animation:none}}.shop-cart-note{margin:0;font-size:13px;line-height:1.45}.shop-auth-switch{margin-top:4px;text-align:center}@media(max-width:960px){.shop-filter-fields{grid-template-columns:1fr}.shop-toolbar-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.shop-toolbar-actions .btn{width:100%}.shop-toolbar-actions .btn:only-child{grid-column:1 / -1}.shop-cart-panel--float{width:min(380px,calc(100vw - 24px))}}@media(max-width:640px){.shop-public-page{padding-left:max(var(--page-pad),env(safe-area-inset-left));padding-right:max(var(--page-pad),env(safe-area-inset-right))}.shop-header.landing-header{flex-wrap:nowrap;align-items:center;gap:10px;padding-left:max(var(--page-pad),env(safe-area-inset-left));padding-right:max(var(--page-pad),env(safe-area-inset-right))}.shop-header .landing-brand{flex:1 1 auto;min-width:0}.shop-header .landing-brand-name{font-size:16px}.shop-header .landing-nav{flex:0 1 auto;max-width:min(100%,62vw);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;flex-wrap:nowrap;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px}.shop-header .landing-nav::-webkit-scrollbar{display:none;height:0}.shop-header .landing-nav .btn.small{flex:0 0 auto;white-space:nowrap}.shop-hero{padding:22px 18px}.shop-hero-stats{flex-direction:column;align-items:flex-start}.shop-grid{grid-template-columns:1fr}.shop-card-controls{flex-wrap:wrap}.shop-card-add{flex:1 1 100%}.shop-page{padding-bottom:calc(100px + env(safe-area-inset-bottom,0))}.shop-public-shell .landing-main{padding-bottom:calc(108px + env(safe-area-inset-bottom,0))}.shop-cart-float{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));align-items:stretch}.shop-cart-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;margin:0;padding:0;border:none;background:color-mix(in srgb,var(--text) 28%,transparent);cursor:pointer;pointer-events:auto;animation:shopCartBackdropIn .2s ease both}.shop-cart-panel--float{width:100%;max-height:min(72dvh,calc(100dvh - 88px - env(safe-area-inset-top,0px)))}.shop-cart-panel-inner{max-height:min(72dvh,calc(100dvh - 88px - env(safe-area-inset-top,0px)))}.shop-cart-lines{max-height:min(240px,32dvh)}.shop-cart-fab{align-self:flex-end;width:64px;height:64px}}@keyframes shopCartBackdropIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.shop-card,.shop-cart-panel,.shop-cart-panel--float,.shop-cart-fab,.shop-cart-backdrop,.shop-card--skeleton{transition:none;animation:none}.shop-card:hover,.shop-cart-fab:hover{transform:none}}.landing-reveal{animation:landingFadeUp .6s var(--ease-soft) both}.landing-reveal--1{animation-delay:.05s}.landing-reveal--2{animation-delay:.12s}.landing-reveal--3{animation-delay:.2s}.landing-reveal--4{animation-delay:.28s}.landing-reveal--5{animation-delay:.36s}.landing-reveal--6{animation-delay:.44s}@keyframes landingFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.auth-back-link{display:inline-block;margin-bottom:12px;font-size:13px;font-weight:600;color:var(--link);text-decoration:none;transition:color .15s ease}.auth-back-link:hover{color:var(--link-hover)}.auth-switch{margin:16px 0 0;text-align:center;font-size:14px;color:var(--muted)}.auth-switch a{color:var(--link);font-weight:600;text-decoration:none}.auth-switch a:hover{color:var(--link-hover);text-decoration:underline}.auth-switch--muted{margin-top:8px;font-size:13px}.register-card{max-width:440px}.register-consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 14px;font-size:13px;line-height:1.45;color:var(--muted);cursor:pointer}.register-consent input{margin-top:3px;flex-shrink:0;width:16px;height:16px;accent-color:var(--accent)}.register-consent a{color:var(--link);font-weight:600;text-decoration:underline;text-underline-offset:2px}.register-consent a:hover{color:var(--link-hover)}.legal-page{min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(1200px 480px at 12% -10%,color-mix(in srgb,var(--accent-soft) 70%,transparent),transparent 60%),var(--bg)}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left));border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.legal-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.legal-main{flex:1;width:min(760px,100%);margin:0 auto;padding:28px 20px 48px}.legal-doc{padding:28px 28px 32px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);background:var(--surface);box-shadow:var(--shadow-soft)}.legal-kicker{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.legal-title{margin:0 0 12px;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}.legal-lead{margin:0 0 8px;font-size:15px;line-height:1.55}.legal-meta{margin:0 0 28px;font-size:13px}.legal-doc section{margin-bottom:22px}.legal-doc h2{margin:0 0 10px;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.legal-doc p{margin:0 0 10px;font-size:14px;line-height:1.6;color:var(--text)}.legal-doc ul{margin:0 0 12px;padding-left:1.25em}.legal-doc li{margin-bottom:6px;font-size:14px;line-height:1.55}.legal-doc a{color:var(--link);font-weight:600}.legal-footer-note{margin:28px 0 0;padding-top:16px;border-top:1px solid var(--border);font-size:13px;line-height:1.5}.legal-site-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 12px;padding:18px 16px max(18px,env(safe-area-inset-bottom));border-top:1px solid var(--border);font-size:13px;color:var(--muted)}.legal-site-footer a{color:var(--muted);text-decoration:none}.legal-site-footer a:hover{color:var(--link)}@media(max-width:640px){.legal-doc{padding:20px 16px 24px;border-radius:var(--radius)}}.form-label-block{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--text)}.register-role-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.register-role-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--motion-base) var(--ease-soft),background var(--motion-base) var(--ease-soft),box-shadow var(--motion-base) var(--ease-soft),transform var(--motion-base) var(--ease-out)}.register-role-option:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));transform:translateY(-1px)}.register-role-option.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow)}.register-role-label{font-size:14px;font-weight:700;color:var(--accent)}.register-role-option.is-active .register-role-label{color:var(--accent)}.register-role-hint{font-size:12px;line-height:1.35;color:var(--muted)}@media(max-width:640px){.landing-header{flex-wrap:nowrap;align-items:center;gap:10px;padding-left:max(var(--page-pad),env(safe-area-inset-left));padding-right:max(var(--page-pad),env(safe-area-inset-right))}.landing-brand{flex:1 1 auto;min-width:0}.landing-brand-name{font-size:16px}.landing-nav{flex:0 1 auto;max-width:min(100%,58vw);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;flex-wrap:nowrap;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px}.landing-nav::-webkit-scrollbar{display:none;height:0}.landing-nav .btn.small{flex:0 0 auto;white-space:nowrap}.landing-page:not(.shop-public-shell) .landing-nav .btn.small:not(.secondary){display:inline-flex}.landing-title{max-width:none}.landing-hero-actions .btn{flex:1 1 100%}.register-role-picker{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.landing-reveal{animation:none}.landing-feature:hover{transform:none}}.platform-fee-card{border-color:color-mix(in srgb,var(--link) 25%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 55%,var(--surface)) 0%,var(--surface) 100%)}.platform-fee-lead{margin:0 0 14px;font-size:14px;line-height:1.45}.platform-fee-pay-btn{margin-top:14px}.platform-fee-badge{font-size:12px;font-weight:600;color:var(--ok)}.order-rating-card h2{margin-bottom:8px}.order-rating-lead{margin:0 0 16px;font-size:14px;line-height:1.45}.rating-client-list,.rating-admin-list{display:flex;flex-direction:column;gap:16px}.rating-client-item,.rating-admin-item{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.rating-client-name,.rating-admin-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;font-weight:600}.star-picker{display:flex;gap:4px;margin-bottom:10px}.star-picker-btn{border:none;background:transparent;font-size:28px;line-height:1;padding:2px 4px;cursor:pointer;color:color-mix(in srgb,var(--muted) 55%,transparent);transition:color .15s,transform .1s}.star-picker-btn.is-active{color:#e6a817}.star-picker-btn:hover:not(:disabled){transform:scale(1.08)}.star-picker-btn:disabled{opacity:.6;cursor:not-allowed}.rating-readonly-stars{font-size:18px;letter-spacing:1px;color:#e6a817}.rating-readonly-muted{color:color-mix(in srgb,var(--muted) 40%,transparent)}.rating-readonly-score{margin-left:8px;font-size:14px;font-weight:600;color:var(--text)}.rating-readonly-comment{margin:8px 0 0;font-size:14px;line-height:1.45}.rating-readonly-meta{margin:6px 0 0;font-size:12px}.profile-rating-value{font-size:22px;font-weight:700;margin-bottom:4px}.profile-rating-stars{color:#e6a817}.page-lead{margin:-6px 0 16px;font-size:14px;line-height:1.45}.materials-layout{align-items:start}.materials-list{display:flex;flex-direction:column;gap:12px}.materials-list-item{padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.materials-list-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.materials-list-meta{font-size:13px;margin-bottom:4px}.materials-list-note{margin:8px 0;font-size:13px;color:var(--warn)}.supplier-mats-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:4px}.supplier-mats-header .page-lead{margin-bottom:8px}.supplier-mats-tabs{margin:0 0 16px}.supplier-mats-catalog{padding-top:16px}.supplier-mats-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.supplier-mats-search{margin:0}.supplier-mats-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:8px 0 4px}.supplier-mats-table-wrap{margin-bottom:8px}.supplier-mats-table{min-width:780px}.supplier-mats-col-photo{width:56px}.supplier-mats-col-photo .material-photo-wrap{width:44px;height:44px}.supplier-mats-title{font-weight:600;line-height:1.3}.supplier-mats-note-inline{margin:4px 0 0}.supplier-mats-retail{font-size:12px;margin-top:2px}.supplier-mats-col-actions{white-space:nowrap;text-align:right}.supplier-mats-mobile-list{display:none;list-style:none;margin:0;padding:0;flex-direction:column;gap:10px}.supplier-mats-mobile-item{display:flex;gap:12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.supplier-mats-mobile-body{flex:1;min-width:0}.supplier-mats-form{max-width:640px}.supplier-mats-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.supplier-mats-form-head h2{margin:0}@media(max-width:800px){.supplier-mats-header{flex-direction:column;align-items:stretch}.supplier-mats-header .btn{width:100%}.supplier-mats-table-wrap{display:none}.supplier-mats-mobile-list{display:flex;margin-bottom:8px}}.materials-moderation-list{display:flex;flex-direction:column;gap:16px}.materials-moderation-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.materials-moderation-head-main{display:flex;align-items:flex-start;gap:12px;min-width:0}.supplier-apps-table{min-width:720px}.supplier-apps-row{cursor:pointer}.supplier-apps-row:hover{background:color-mix(in srgb,var(--accent-soft) 35%,transparent)}.supplier-apps-row.is-expanded{background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}.supplier-apps-mobile-list{display:none;list-style:none;margin:0;padding:0;flex-direction:column;gap:10px}.supplier-apps-mobile-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.supplier-apps-mobile-summary{display:flex;gap:12px;width:100%;padding:12px;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit;font:inherit}.supplier-apps-mobile-body{flex:1;min-width:0}.supplier-apps-mobile-detail{padding:12px;border-top:1px solid var(--border);margin:0}@media(max-width:800px){.h-scroll--table:has(.supplier-apps-table){display:none}.supplier-apps-mobile-list{display:flex;margin-bottom:8px}}.materials-retail-preview{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-weight:700}.supplier-chat-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;align-items:stretch;min-height:min(70vh,720px)}.supplier-chat-layout--supplier{grid-template-columns:1fr}.supplier-chat-sidebar,.supplier-chat-main{display:flex;flex-direction:column;min-height:0;min-width:0}.supplier-chat-sidebar-title{margin:0 0 12px;font-size:1.05rem}.supplier-chat-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;overflow:auto;flex:1;max-height:min(62vh,640px)}.supplier-chat-thread-btn{width:100%;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-sm);padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:inherit;transition:border-color var(--motion-base) var(--ease-soft),background var(--motion-base) var(--ease-soft)}.supplier-chat-thread-btn:hover{border-color:color-mix(in srgb,var(--link) 35%,var(--border))}.supplier-chat-thread-btn.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}.supplier-chat-thread-btn.is-unread .supplier-chat-thread-name{font-weight:700}.supplier-chat-thread-name{font-size:14px}.supplier-chat-thread-preview{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.supplier-chat-main-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.supplier-chat-main-head h2{margin:0;font-size:1.1rem}.supplier-chat-scroller{flex:1;min-height:220px;max-height:min(48vh,480px);margin-bottom:12px;padding-right:4px}.supplier-chat-empty{padding:32px 8px;text-align:center}.supplier-chat-msg.is-mine{background:color-mix(in srgb,var(--accent-soft) 35%,transparent);border-radius:var(--radius-sm);padding:8px;margin-left:8px}.supplier-chat-attachments{display:flex;flex-direction:column;gap:8px;margin-top:8px}.supplier-chat-file{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--link);text-decoration:none;word-break:break-all}.supplier-chat-file:hover{text-decoration:underline}.supplier-chat-material-card{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-decoration:none;color:inherit;max-width:420px}.supplier-chat-material-card:hover{border-color:color-mix(in srgb,var(--link) 40%,var(--border))}.supplier-chat-material-body{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13px}.supplier-chat-composer{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.supplier-chat-actions{flex-wrap:wrap;gap:8px}.supplier-chat-pending{display:flex;flex-wrap:wrap;gap:6px}.supplier-chat-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:12px;max-width:100%}.supplier-chat-chip-remove{border:0;background:transparent;cursor:pointer;color:var(--muted);font-size:16px;line-height:1;padding:0 2px}.supplier-chat-picker{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;background:var(--surface-2);display:flex;flex-direction:column;gap:8px;max-height:220px}.supplier-chat-picker-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.supplier-chat-picker-list{list-style:none;margin:0;padding:0;overflow:auto;flex:1}.supplier-chat-picker-item{width:100%;display:flex;justify-content:space-between;gap:8px;text-align:left;border:0;background:transparent;padding:8px 6px;cursor:pointer;border-radius:var(--radius-sm);color:inherit;font-size:13px}.supplier-chat-picker-item:hover,.supplier-chat-picker-item.is-selected{background:color-mix(in srgb,var(--accent-soft) 50%,var(--surface))}@media(max-width:860px){.supplier-chat-layout{grid-template-columns:1fr;min-height:0}.supplier-chat-thread-list{max-height:200px}.supplier-chat-scroller{max-height:40vh}}.detail-list{display:grid;grid-template-columns:140px 1fr;gap:8px 12px;margin:0 0 16px}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0}@keyframes uiFadeIn{0%{opacity:0}to{opacity:1}}@keyframes uiScaleIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes uiShimmer{0%{background-position:200% center}to{background-position:-200% center}}.shop-toolbar{transition:box-shadow var(--motion-base) var(--ease-soft),border-color var(--motion-base) var(--ease-soft)}.shop-toolbar:focus-within{border-color:color-mix(in srgb,var(--link) 30%,var(--border));box-shadow:var(--shadow-soft),0 0 0 3px color-mix(in srgb,var(--link) 10%,transparent)}.shop-card--skeleton{background:linear-gradient(110deg,var(--surface-2) 0%,color-mix(in srgb,var(--surface) 90%,var(--surface-2)) 45%,var(--surface-2) 90%);background-size:200% 100%;animation:uiShimmer 1.4s ease-in-out infinite}.h-scroll-btn,.nav-scroll-btn{transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-soft),background var(--motion-fast) var(--ease-soft)}.h-scroll-btn:hover,.nav-scroll-btn:hover{box-shadow:var(--shadow)}.h-scroll--table .h-scroll-btn:hover{transform:translateY(-50%) scale(1.06)}.h-scroll:not(.h-scroll--table) .h-scroll-btn:hover,.h-scroll:not(.h-scroll--table) .nav-scroll-btn:hover{transform:scale(1.06)}.user-link{transition:color var(--motion-fast) var(--ease-soft),border-color var(--motion-fast) var(--ease-soft)}.platform-fee-card{transition:box-shadow var(--motion-base) var(--ease-soft),transform var(--motion-base) var(--ease-out)}.platform-fee-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.comment{transition:border-color var(--motion-fast) var(--ease-soft),background var(--motion-fast) var(--ease-soft)}.comment:hover{border-color:color-mix(in srgb,var(--link) 15%,var(--border))}@media(hover:none){.stat:hover,.order-card:hover,.landing-feature:hover,.landing-role:hover,.landing-cta-inner:hover,.chart-card:hover,.shop-card:hover,.btn:hover,.nav a:hover,.filter-btn:hover:not(.active){transform:none}.landing-brand:hover .landing-brand-mark,a.topbar-avatar:hover{transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.landing-reveal,.shop-card--skeleton{animation:none!important}.stat:hover,.order-card:hover,.landing-feature:hover,.landing-role:hover,.landing-cta-inner:hover,.chart-card:hover,.shop-card:hover,.btn:hover,.nav a:hover,.filter-btn:hover:not(.active),.landing-brand:hover .landing-brand-mark,a.topbar-avatar:hover,.h-scroll-btn:hover,.nav-scroll-btn:hover{transform:none!important}}
