:root{--brand:#1c679d;--brand-dark:#15537e;--brand-pressed:#155a87;--brand-soft:#e8f1f8;--brand-tint:#f0f5fa;--on-brand:#fff;--on-brand-muted:#ffffffb3;--surface:#f4f7fa;--surface-content:#fff;--chip:#eef2f6;--border:#e3e8ee;--border-muted:#e0e6ed;--text:#1a2330;--text-muted:#5c6b7a;--text-faint:#8a97a6;--disabled:#c5cdd6;--success:#1b7a3d;--success-soft:#e6f3ea;--warning:#e65100;--warning-soft:#fdeee3;--error:#c62828;--error-soft:#fbe9e9;--info:#1c679d;--info-soft:#e8f1f8;--series-1:#1c679d;--series-2:#c25e1e;--series-3:#6e4db8;--series-4:#b03a6e;--series-muted:#b9c4cf;--radius-hero:16px;--radius-card:14px;--radius-panel:12px;--radius-control:10px;--radius-chip:8px;--radius-pill:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--font:"Inter", "Roboto", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:"SF Mono", "JetBrains Mono", "Roboto Mono", Menlo, monospace;--fs-title:22px;--fs-section:16px;--fs-body:15px;--fs-supporting:14px;--fs-label:13px;--fs-caption:12px;--focus-ring:0 0 0 3px #1c679d40;--transition:.14s ease;--sidebar-width:244px;--topbar-height:60px;--bottomnav-height:60px;--page-x:32px;--page-max:1180px;--card-padding:18px;--z-nav:20;--z-overlay:40;--z-toast:60}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{height:100%}body{font-family:var(--font);font-size:var(--fs-body);color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.45}h1,h2,h3,p{margin:0}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{box-shadow:var(--focus-ring);outline:none}.logo{border-radius:22%;flex:none;display:block}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;display:block;position:absolute;overflow:hidden}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.strong{font-weight:600}.caption{font-size:var(--fs-caption);color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:.92em}.num{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row{align-items:center;gap:10px;display:flex}.row--wrap{flex-wrap:wrap}.row--between{justify-content:space-between}.row--end{justify-content:flex-end}.stack{flex-direction:column;gap:16px;display:flex}.stack--tight{gap:8px}.stack--loose{gap:24px}.spacer{flex:1}.shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100%;display:grid}.sidebar{height:100vh;background:var(--surface-content);border-right:1px solid var(--border);flex-direction:column;height:100dvh;padding:16px 12px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar__brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:10px;padding:2px 8px 14px;font-size:16px;font-weight:700;display:flex}.sidebar__brand:hover{text-decoration:none}.workspace-switch{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);text-align:left;align-items:center;gap:10px;width:100%;margin-bottom:14px;padding:9px 10px;display:flex}.workspace-switch:hover{border-color:var(--brand)}.workspace-switch__name{font-weight:600;font-size:var(--fs-supporting)}.workspace-switch__role{font-size:var(--fs-caption);color:var(--text-muted)}.sidebar__section{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);padding:14px 10px 6px;font-size:11px;font-weight:700}.nav{flex-direction:column;gap:2px;display:flex}.navlink{border-radius:var(--radius-control);color:var(--text-muted);font-size:var(--fs-supporting);transition:background var(--transition), color var(--transition);align-items:center;gap:11px;padding:9px 10px;font-weight:500;display:flex}.navlink:hover{background:var(--surface);color:var(--text);text-decoration:none}.navlink.active{background:var(--brand-soft);color:var(--brand);font-weight:600}.navlink__badge{background:var(--brand);min-width:20px;color:var(--on-brand);text-align:center;border-radius:10px;margin-left:auto;padding:1px 6px;font-size:11px;font-weight:700}.navlink__tag{border-radius:var(--radius-chip);background:var(--chip);color:var(--text-muted);margin-left:auto;padding:1px 7px;font-size:11px;font-weight:600}.sidebar__footer{margin-top:auto;padding-top:14px}.plan-meter{border:1px solid var(--border);border-radius:var(--radius-panel);color:var(--text);background:var(--surface-content);padding:12px;display:block}.plan-meter:hover{border-color:var(--brand);text-decoration:none}.plan-meter__title{font-size:var(--fs-label);justify-content:space-between;align-items:center;font-weight:600;display:flex}.plan-meter__hint{font-size:var(--fs-caption);color:var(--text-muted);margin-top:6px}.meter{background:var(--chip);border-radius:3px;height:6px;margin-top:8px;overflow:hidden}.meter__fill{background:var(--brand);border-radius:3px;height:100%;transition:width .24s}.meter__fill--warning{background:var(--warning)}.meter__fill--error{background:var(--error)}.main{min-width:0;min-height:100vh;flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:var(--z-nav);height:var(--topbar-height);padding:0 var(--page-x);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #0000;align-items:center;gap:10px;display:flex;position:sticky;top:0}.topbar--scrolled{border-bottom-color:var(--border)}.topbar__brand{color:var(--text);align-items:center;gap:9px;font-weight:700;display:none}.page{width:100%;max-width:var(--page-max);padding:4px var(--page-x) 48px;flex-direction:column;gap:18px;margin:0 auto;display:flex}.page--narrow{max-width:760px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-header__title{letter-spacing:-.015em;font-size:24px;font-weight:700;line-height:1.2}.page-header__sub{color:var(--text-muted);font-size:var(--fs-supporting);margin-top:4px}.page-header__actions{flex-wrap:wrap;gap:8px;display:flex}.crumbs{font-size:var(--fs-label);color:var(--text-muted);align-items:center;gap:6px;margin-bottom:2px;display:flex}.bottomnav{z-index:var(--z-nav);height:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--brand);grid-template-columns:repeat(4,1fr);display:none;position:fixed;bottom:0;left:0;right:0}.bottomnav__item{color:var(--on-brand-muted);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;display:flex}.bottomnav__item:hover{text-decoration:none}.bottomnav__item.active{color:var(--on-brand)}.btn{border-radius:var(--radius-control);min-height:42px;font-size:var(--fs-supporting);white-space:nowrap;transition:background var(--transition), border-color var(--transition), color var(--transition);background:0 0;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--brand);color:var(--on-brand)}.btn--primary:hover:not(:disabled){background:var(--brand-dark)}.btn--secondary{background:var(--surface-content);border-color:var(--brand);color:var(--brand)}.btn--secondary:hover:not(:disabled){background:var(--brand-soft)}.btn--ghost{color:var(--text-muted)}.btn--ghost:hover:not(:disabled){background:var(--chip);color:var(--text)}.btn--danger{background:var(--surface-content);border-color:var(--error);color:var(--error)}.btn--danger:hover:not(:disabled){background:var(--error-soft)}.btn--danger-solid{background:var(--error);color:#fff}.btn--on-brand{background:var(--on-brand);color:var(--brand)}.btn--on-brand:hover:not(:disabled){background:var(--brand-soft)}.btn--outline-on-brand{color:var(--on-brand);border-color:#ffffff80}.btn--outline-on-brand:hover:not(:disabled){background:#ffffff1f}.btn--sm{min-height:34px;font-size:var(--fs-label);border-radius:var(--radius-chip);padding:0 12px}.btn--lg{min-height:48px;font-size:var(--fs-body);padding:0 22px}.btn--block{width:100%}.btn--link{min-height:0;color:var(--brand);border:none;padding:0;font-weight:600}.btn--link:hover{text-decoration:underline}.btn--in{color:var(--success);border-color:color-mix(in srgb, var(--success) 45%, transparent);background:var(--surface-content)}.btn--in:hover:not(:disabled){background:var(--success-soft)}.btn--out{color:var(--warning);border-color:color-mix(in srgb, var(--warning) 45%, transparent);background:var(--surface-content)}.btn--out:hover:not(:disabled){background:var(--warning-soft)}.icon-btn{border-radius:var(--radius-control);width:38px;height:38px;color:var(--text-muted);background:0 0;border:none;flex:none;place-items:center;display:inline-grid;position:relative}.icon-btn:hover{background:var(--chip);color:var(--text)}.icon-btn__dot{background:var(--error);color:#fff;text-align:center;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:6px;right:6px}.avatar{background:var(--brand-soft);width:34px;height:34px;color:var(--brand);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.avatar--btn{border:none}.avatar--btn:hover{background:var(--brand);color:var(--on-brand)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field__label{font-size:var(--fs-label);color:var(--text);font-weight:600}.field__optional{color:var(--text-faint);font-weight:400}.field__hint{font-size:var(--fs-caption);color:var(--text-muted)}.field__error{font-size:var(--fs-caption);color:var(--error);font-weight:500}.input,.select,.textarea{border:1.5px solid var(--border);border-radius:var(--radius-control);background:var(--surface-content);width:100%;min-height:44px;transition:border-color var(--transition);padding:10px 12px}.input::placeholder,.textarea::placeholder{color:var(--text-faint)}.input:hover,.select:hover,.textarea:hover{border-color:var(--disabled)}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:var(--focus-ring);outline:none}.input[aria-invalid=true],.textarea[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--error)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface);color:var(--text-muted)}.textarea{resize:vertical;min-height:96px}.select{appearance:none;background-image: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='%235C6B7A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:34px}.input--sm,.select--sm{min-height:36px;font-size:var(--fs-supporting);padding:6px 10px}.select--sm{padding-right:32px}.input-group{align-items:center;display:flex;position:relative}.input-group .input{padding-left:38px}.input-group__icon{color:var(--text-faint);pointer-events:none;position:absolute;left:12px}.input-group__action{position:absolute;right:3px}.input-group--suffix .input{padding-left:12px;padding-right:44px}.input-affix{display:flex}.input-affix__label{border:1.5px solid var(--border);border-radius:var(--radius-control) 0 0 var(--radius-control);background:var(--surface);color:var(--text-muted);font-size:var(--fs-supporting);border-right:none;place-items:center;padding:0 12px;font-weight:600;display:grid}.input-affix .input{border-radius:0 var(--radius-control) var(--radius-control) 0}.checkbox{font-size:var(--fs-supporting);cursor:pointer;align-items:center;gap:9px;display:inline-flex}.checkbox input{width:18px;height:18px;accent-color:var(--brand)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid .field--full{grid-column:1/-1}.form-section{font-size:var(--fs-label);color:var(--brand);margin-top:6px;font-weight:700}.card{background:var(--surface-content);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--card-padding);min-width:0}.card--flush{padding:0;overflow:hidden}.card--muted{background:var(--surface);border-color:var(--border-muted);border-radius:var(--radius-panel)}.card--brand{background:var(--brand);border-color:var(--brand);color:var(--on-brand);border-radius:var(--radius-hero)}.card__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.card--flush .card__header{padding:var(--card-padding) var(--card-padding) 0}.card__title{font-size:var(--fs-section);font-weight:700}.card__sub{font-size:var(--fs-label);color:var(--text-muted);margin-top:2px}.grid{gap:16px;display:grid}.grid--tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.tile{background:var(--surface-content);border:1px solid var(--border);border-radius:var(--radius-card);min-width:0;padding:16px}.tile__label{font-size:var(--fs-label);color:var(--text-muted);font-weight:500}.tile__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:700;line-height:1.15}.tile__foot{font-size:var(--fs-caption);color:var(--text-muted);margin-top:6px}.tile--alert{border-color:color-mix(in srgb, var(--warning) 45%, var(--border));background:color-mix(in srgb, var(--warning-soft) 55%, var(--surface-content))}.tile--alert .tile__value{color:var(--warning)}.tile--link{color:inherit;display:block}.tile--link:hover{border-color:var(--brand);text-decoration:none}.badge{border-radius:var(--radius-chip);background:var(--chip);color:var(--text-muted);font-size:var(--fs-caption);white-space:nowrap;align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}.badge--success{background:var(--success-soft);color:var(--success)}.badge--warning{background:var(--warning-soft);color:var(--warning)}.badge--error{background:var(--error-soft);color:var(--error)}.badge--info,.badge--brand{background:var(--brand-soft);color:var(--brand)}.badge--solid{background:var(--brand);color:var(--on-brand)}.notice{border-radius:var(--radius-panel);font-size:var(--fs-supporting);border:1px solid;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.notice svg{flex:none;margin-top:2px}.notice__title{font-weight:700}.notice__actions{flex:none;align-self:center;margin-left:auto}.notice--info{background:var(--info-soft);border-color:color-mix(in srgb, var(--info) 25%, transparent);color:var(--brand-dark)}.notice--warning{background:var(--warning-soft);border-color:color-mix(in srgb, var(--warning) 30%, transparent);color:#8a3200}.notice--error{background:var(--error-soft);border-color:color-mix(in srgb, var(--error) 30%, transparent);color:#8e1c1c}.notice--success{background:var(--success-soft);border-color:color-mix(in srgb, var(--success) 30%, transparent);color:#12562b}.empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:44px 20px;display:flex}.empty__icon{background:var(--chip);width:52px;height:52px;color:var(--text-muted);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.empty__title{color:var(--text);font-weight:700;font-size:var(--fs-section)}.empty__text{max-width:420px;font-size:var(--fs-supporting)}.empty__actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.skeleton{background:linear-gradient(90deg, var(--chip) 25%, #f7f9fb 37%, var(--chip) 63%);background-size:400% 100%;border-radius:6px;animation:1.4s infinite shimmer;display:block}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.spinner{border:2.5px solid color-mix(in srgb, currentColor 25%, transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.kv{font-size:var(--fs-supporting);grid-template-columns:minmax(110px,38%) minmax(0,1fr);gap:8px 14px;margin:0;display:grid}.kv dt{color:var(--text-muted)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.divider{background:var(--border);border:none;height:1px;margin:4px 0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar__search{flex:260px;min-width:200px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-content);height:36px;color:var(--text);font-size:var(--fs-label);white-space:nowrap;align-items:center;gap:6px;padding:0 14px;font-weight:600;display:inline-flex}.chip:hover{border-color:var(--brand)}.chip.active{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.chip__count{opacity:.8;font-weight:500}.tabs{border-bottom:1px solid var(--border);gap:4px;display:flex;overflow-x:auto}.tab{color:var(--text-muted);font-size:var(--fs-supporting);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 14px;font-weight:600}.tab:hover{color:var(--text)}.tab.active{color:var(--brand);border-bottom-color:var(--brand)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--fs-supporting)}.table th{text-align:left;font-size:var(--fs-caption);color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-content);padding:10px 14px;font-weight:600}.table td{border-bottom:1px solid var(--border-muted);vertical-align:middle;padding:12px 14px}.table tr:last-child td{border-bottom:none}.table .num,.table th.num{text-align:right}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover{background:var(--brand-tint)}.th-sort{color:inherit;font:inherit;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.th-sort:hover{color:var(--text)}.list{flex-direction:column;display:flex}.list__item{padding:13px var(--card-padding);border-bottom:1px solid var(--border-muted);align-items:center;gap:12px;min-width:0;display:flex}.list__item:last-child{border-bottom:none}.list__item--link{color:inherit}.list__item--link:hover{background:var(--brand-tint);text-decoration:none}.list__main{flex:1;min-width:0}.list__title{font-weight:600}.list__sub{font-size:var(--fs-label);color:var(--text-muted)}.list__meta{text-align:right;font-size:var(--fs-label);color:var(--text-muted);flex:none}.pagination{padding:12px var(--card-padding);border-top:1px solid var(--border-muted);font-size:var(--fs-label);color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;display:flex}.overlay{z-index:var(--z-overlay);background:#1a23306b;justify-content:center;align-items:center;padding:20px;animation:.14s fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--surface-content);border-radius:var(--radius-hero);border:1px solid var(--border);flex-direction:column;width:100%;max-width:480px;max-height:calc(100dvh - 40px);animation:.16s rise;display:flex}.modal--wide{max-width:640px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.modal__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 0;display:flex}.modal__title{font-size:18px;font-weight:700}.modal__description{color:var(--text-muted);font-size:var(--fs-supporting);margin-top:6px}.modal__body{padding:18px 22px;overflow-y:auto}.modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:0 22px 20px;display:flex}.overlay--drawer{justify-content:flex-end;align-items:stretch;padding:0}.drawer{background:var(--surface-content);border-left:1px solid var(--border);flex-direction:column;width:min(520px,100%);height:100%;animation:.18s slide;display:flex}@keyframes slide{0%{opacity:0;transform:translate(24px)}}.drawer__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px;display:flex}.drawer__title{font-size:18px;font-weight:700}.drawer__sub{font-size:var(--fs-label);color:var(--text-muted);margin-top:2px}.drawer__body{flex:1;padding:20px 22px;overflow-y:auto}.drawer__footer{border-top:1px solid var(--border);background:var(--surface-content);justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}.menu{z-index:calc(var(--z-overlay) + 1);background:var(--surface-content);border:1px solid var(--border);border-radius:var(--radius-panel);min-width:200px;padding:6px;position:fixed;box-shadow:0 8px 24px #1a23301f}.menu__item{border-radius:var(--radius-chip);width:100%;color:var(--text);font-size:var(--fs-supporting);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:9px 10px;display:flex}.menu__item:hover{background:var(--surface);text-decoration:none}.menu__item--danger{color:var(--error)}.menu__item:disabled{color:var(--disabled);cursor:not-allowed}.menu__sep{background:var(--border);height:1px;margin:6px 4px}.menu__label{font-size:var(--fs-caption);color:var(--text-muted);padding:6px 10px 4px}.toasts{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;width:min(520px,100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-panel);color:#fff;font-size:var(--fs-supporting);pointer-events:auto;background:#1f2a37;align-items:center;gap:12px;padding:12px 14px 12px 16px;animation:.16s rise;display:flex}.toast--error{background:#7f1d1d}.toast--success{background:#14532d}.toast__message{flex:1;min-width:0}.toast__action{color:#8fd0ff;font-weight:700;font-size:var(--fs-supporting);background:0 0;border:none;border-radius:6px;padding:4px 6px}.toast__action:hover{background:#ffffff1a}.toast__close{color:#fff9;background:0 0;border:none;place-items:center;padding:2px;display:grid}.product-row__name{font-weight:600;line-height:1.3}.product-row__meta{font-size:var(--fs-caption);color:var(--text-muted);flex-wrap:wrap;gap:4px 10px;margin-top:3px;display:flex}.qty{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.qty--low{color:var(--warning)}.qty__unit{color:var(--text-muted);font-weight:500;font-size:var(--fs-label)}.qty--low .qty__unit{color:inherit}.row-actions{flex-wrap:nowrap;justify-content:flex-end;gap:6px;display:flex}.product-cards{flex-direction:column;display:none}.product-card{padding:14px var(--card-padding);border-bottom:1px solid var(--border-muted)}.product-card:last-child{border-bottom:none}.product-card__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.product-card__actions{gap:8px;margin-top:12px;display:flex}.product-card__actions .btn{flex:1}.selection-bar{border-radius:var(--radius-panel);background:var(--brand);color:var(--on-brand);font-size:var(--fs-supporting);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-weight:600;display:flex}.movement{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;font-weight:700;display:inline-flex}.movement--in{color:var(--success)}.movement--out{color:var(--error)}.movement--neutral{color:var(--brand)}.type-badge{border-radius:var(--radius-chip);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.type-badge--in{background:var(--success-soft);color:var(--success)}.type-badge--out{background:var(--error-soft);color:var(--error)}.type-badge--neutral{background:var(--brand-soft);color:var(--brand)}.stepper{gap:8px;display:flex}.stepper .input{text-align:center;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.stepper .btn{flex:none;width:48px;padding:0}.hbars{flex-direction:column;gap:10px;display:flex}.hbar{font-size:var(--fs-supporting);grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;display:grid}.hbar__track{background:var(--chip);border-radius:4px;grid-column:1/-1;height:8px;overflow:hidden}.hbar__fill{background:var(--series-1);border-radius:4px;height:100%}.hbar__fill--2{background:var(--series-2)}.legend{font-size:var(--fs-caption);color:var(--text-muted);flex-wrap:wrap;gap:14px;display:flex}.legend__dot{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh;display:grid}.auth__aside{background:var(--brand);color:var(--on-brand);flex-direction:column;justify-content:space-between;padding:40px 48px;display:flex}.auth__brand{color:var(--on-brand);align-items:center;gap:12px;font-size:18px;font-weight:700;display:inline-flex}.auth__brand:hover{text-decoration:none}.auth__headline{letter-spacing:-.02em;max-width:440px;font-size:34px;font-weight:700;line-height:1.15}.auth__points{color:var(--on-brand-muted);font-size:var(--fs-body);flex-direction:column;gap:12px;margin:22px 0 0;padding:0;list-style:none;display:flex}.auth__points li{align-items:flex-start;gap:10px;display:flex}.auth__points svg{color:var(--on-brand);flex:none;margin-top:3px}.auth__foot{font-size:var(--fs-label);color:var(--on-brand-muted)}.auth__foot a{color:var(--on-brand)}.auth__main{justify-content:center;align-items:center;padding:40px 24px;display:flex}.auth__form{flex-direction:column;gap:16px;width:100%;max-width:400px;display:flex}.auth__title{letter-spacing:-.015em;font-size:26px;font-weight:700}.auth__mobile-brand{display:none}.rules{font-size:var(--fs-caption);color:var(--text-muted);flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.rules li{align-items:center;gap:6px;display:flex}.rules li.ok{color:var(--success)}.landing__nav{max-width:var(--page-max);padding:18px var(--page-x);align-items:center;gap:12px;margin:0 auto;display:flex}.landing__hero{background:var(--brand);color:var(--on-brand)}.landing__hero-inner{max-width:var(--page-max);padding:56px var(--page-x) 64px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:48px;margin:0 auto;display:grid}.landing__title{letter-spacing:-.03em;font-size:46px;font-weight:700;line-height:1.08}.landing__lead{color:var(--on-brand-muted);max-width:520px;margin-top:16px;font-size:18px}.landing__cta{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.landing__section{max-width:var(--page-max);padding:56px var(--page-x);margin:0 auto}.landing__h2{letter-spacing:-.02em;font-size:28px;font-weight:700}.landing__footer{border-top:1px solid var(--border);padding:24px var(--page-x);text-align:center;font-size:var(--fs-label);color:var(--text-muted)}.preview{background:var(--surface);border-radius:var(--radius-hero);color:var(--text);padding:14px}.preview__row{background:var(--surface-content);border:1px solid var(--border);border-radius:var(--radius-panel);font-size:var(--fs-supporting);justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.preview__row+.preview__row{margin-top:8px}.feature{flex-direction:column;gap:8px;display:flex}.feature__icon{border-radius:var(--radius-panel);background:var(--brand-soft);width:42px;height:42px;color:var(--brand);place-items:center;display:grid}.feature__title{font-weight:700;font-size:var(--fs-section)}.plan-card{flex-direction:column;gap:14px;display:flex}.plan-card__price{letter-spacing:-.02em;font-size:30px;font-weight:700}.plan-card__price small{font-size:var(--fs-supporting);color:var(--text-muted);font-weight:500}.check-list{font-size:var(--fs-supporting);flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.check-list li{align-items:flex-start;gap:9px;display:flex}.check-list svg{color:var(--success);flex:none;margin-top:2px}.check-list li.off{color:var(--text-faint)}.check-list li.off svg{color:var(--disabled)}.legal{max-width:760px;padding:24px var(--page-x) 64px;margin:0 auto}.legal h1{margin:8px 0;font-size:28px}.legal h2{margin:26px 0 8px;font-size:18px}.legal p,.legal li{color:#2c3948;margin:8px 0;line-height:1.6}.legal .kicker{color:var(--brand);font-weight:700;font-size:var(--fs-label);letter-spacing:.06em;text-transform:uppercase}.legal .meta{color:var(--text-muted);font-size:var(--fs-supporting)}.legal .notice{background:var(--brand-soft);color:var(--brand-dark);border-color:#0000;display:block}.thread{flex-direction:column;gap:12px;display:flex}.msg{border-radius:var(--radius-panel);max-width:84%;font-size:var(--fs-supporting);white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 14px}.msg--user{background:var(--brand-soft);align-self:flex-end}.msg--support{background:var(--surface-content);border:1px solid var(--border);align-self:flex-start}.msg--system{max-width:100%;color:var(--text-muted);font-size:var(--fs-caption);text-align:center;align-self:center;padding:2px 0}.msg__meta{font-size:var(--fs-caption);color:var(--text-muted);margin-bottom:3px;font-weight:600}@media (max-width:1080px){.grid--2-1{grid-template-columns:minmax(0,1fr)}.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){:root{--page-x:16px}.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar__brand{display:flex}.bottomnav{display:grid}.main{padding-bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0px))}.toasts{bottom:calc(var(--bottomnav-height) + env(safe-area-inset-bottom,0px) + 12px)}.page-header__title{font-size:21px}.grid--2,.grid--3,.form-grid{grid-template-columns:minmax(0,1fr)}.product-table{display:none}.product-cards{display:flex}.hide-mobile{display:none!important}.overlay{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-hero) var(--radius-hero) 0 0;border:none;max-width:none;max-height:92dvh}.modal__actions{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.modal__actions .btn{flex:1}.drawer{border-left:none;width:100%}.auth{grid-template-columns:minmax(0,1fr)}.auth__aside{display:none}.auth__mobile-brand{color:var(--text);align-items:center;gap:10px;margin-bottom:6px;font-weight:700;display:inline-flex}.auth__main{align-items:flex-start;padding-top:32px}.landing__hero-inner{padding:36px var(--page-x) 44px;grid-template-columns:minmax(0,1fr);gap:28px}.landing__title{font-size:34px}.landing__section{padding:40px var(--page-x)}.msg{max-width:94%}}@media (min-width:861px){.show-mobile{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.sidebar,.topbar,.bottomnav,.toasts,.no-print{display:none!important}.shell{display:block}.main{padding:0}body{background:#fff}.page{max-width:none;padding:0}.card,.tile{break-inside:avoid}}.lp{--lp-on-brand-soft:#ffffffe0;background:var(--surface-content);min-height:100%}.lp-on-brand :focus-visible{box-shadow:0 0 0 3px #ffffffb3}.lp-skip{z-index:5;border-radius:var(--radius-control);background:var(--surface-content);color:var(--brand);padding:10px 14px;font-weight:600;position:absolute;top:-80px;left:16px}.lp-skip:focus{top:12px}.lp .landing__nav{padding-top:16px;padding-bottom:16px}.lp-brand{color:var(--on-brand);letter-spacing:-.01em;white-space:nowrap;border-radius:var(--radius-chip);align-items:center;gap:4px;font-size:17px;font-weight:700;display:inline-flex}.lp-brand:hover{text-decoration:none}.lp-brand .logo{margin-left:-8px}.lp-nav__links{gap:2px;margin-left:18px;display:flex}.lp-nav__link{border-radius:var(--radius-chip);color:var(--lp-on-brand-soft);font-size:var(--fs-supporting);transition:background var(--transition), color var(--transition);padding:8px 12px;font-weight:600}.lp-nav__link:hover{color:var(--on-brand);background:#ffffff1f;text-decoration:none}.lp-nav__actions{gap:8px;margin-left:auto;display:flex}.lp .landing__hero-inner{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:40px;padding-top:40px;padding-bottom:72px}.lp-eyebrow{color:var(--lp-on-brand-soft);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;font-weight:700}.lp .landing__title{text-wrap:balance;font-size:clamp(30px,2.6vw + 21px,52px)}.lp .landing__lead{max-width:30em;color:var(--lp-on-brand-soft);line-height:1.5}.lp-hero__note{color:var(--lp-on-brand-soft);font-size:var(--fs-supporting);margin-top:14px}.lp-art{pointer-events:none;-webkit-user-select:none;user-select:none;justify-self:end;width:100%;max-width:540px;padding:0 28px 80px 0;animation:.42s rise;position:relative}.lp-desk{border-radius:var(--radius-hero);background:var(--surface);color:var(--text);overflow:hidden}.lp-desk__bar{background:var(--chip);border-bottom:1px solid var(--border);align-items:center;height:34px;padding:0 12px;display:flex}.lp-desk__url{border-radius:var(--radius-pill);background:var(--surface-content);max-width:100%;height:20px;color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-size:11px;display:inline-flex;overflow:hidden}.lp-desk__body{padding:14px}.lp-desk__head{justify-content:space-between;align-items:center;gap:12px;height:42px;display:flex}.lp-desk__title{letter-spacing:-.01em;font-size:17px;font-weight:700;line-height:1.25}.lp-desk__sub{font-size:var(--fs-caption);color:var(--text-muted);white-space:nowrap;line-height:1.3}.lp-desk__chips{gap:6px;margin:12px 0;display:flex}.lp-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-content);height:30px;font-size:var(--fs-caption);white-space:nowrap;align-items:center;gap:5px;padding:0 12px;font-weight:600;display:inline-flex}.lp-chip--active{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.lp-chip span{opacity:.8;font-weight:500}.lp-row{min-height:54px;padding:8px 12px}.lp-row__main{flex:1;min-width:0}.lp-row__name,.lp-row__meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lp-row__name{font-weight:600;line-height:1.3}.lp-row__meta{font-size:var(--fs-caption);color:var(--text-muted)}.lp-row__actions{flex:none;gap:6px;display:flex}.lp-mini{border-radius:var(--radius-chip);background:var(--surface-content);height:30px;font-size:var(--fs-caption);white-space:nowrap;border:1.5px solid;align-items:center;gap:4px;padding:0 9px;font-weight:600;display:inline-flex}.lp-mini--in{color:var(--success);border-color:color-mix(in srgb, var(--success) 45%, transparent)}.lp-mini--out{color:var(--warning);border-color:color-mix(in srgb, var(--warning) 45%, transparent)}.lp-phone{border:5px solid var(--text);background:var(--surface);width:176px;color:var(--text);border-radius:26px;position:absolute;top:206px;right:0;overflow:hidden}.lp-phone__bar{background:var(--brand);height:34px;color:var(--on-brand);font-size:var(--fs-caption);align-items:center;padding:0 11px;font-weight:700;display:flex}.lp-phone__body{flex-direction:column;gap:6px;padding:8px;display:flex}.lp-phone__card{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-content);padding:9px 10px}.lp-phone__name{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;line-height:1.3;overflow:hidden}.lp-phone__meta{color:var(--text-muted);font-size:10px}.lp-phone__qty{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:20px;font-weight:700;line-height:1.2}.lp-phone__qty small{letter-spacing:0;font-size:11px;font-weight:500}.lp-phone__qty--low{color:var(--warning)}.lp-phone__actions{grid-template-columns:1fr 1fr;gap:5px;margin-top:7px;display:grid}.lp-phone__actions .lp-mini{justify-content:center;height:26px;padding:0;font-size:11px}.lp-phone__actions .lp-mini svg{display:none}.lp-phone__nav{background:var(--brand);height:34px;color:var(--on-brand-muted);grid-template-columns:repeat(4,1fr);place-items:center;display:grid}.lp-phone__nav svg:first-child{color:var(--on-brand)}.lp-band--tint{background:var(--surface)}.lp .landing__section{padding-top:88px;padding-bottom:88px;scroll-margin-top:8px}.lp-kicker{color:var(--brand);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-weight:700}.lp .landing__h2{text-wrap:balance;font-size:clamp(26px,1.6vw + 17px,36px);line-height:1.15}.lp-lead{max-width:34em;color:var(--text-muted);margin-top:12px;font-size:17px;line-height:1.55}.lp-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;display:grid}.lp-split--reverse .lp-split__art{order:-1}.lp-points{flex-direction:column;gap:22px;margin:30px 0 0;padding:0;list-style:none;display:flex}.lp-point{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;display:grid}.lp-point p{color:var(--text-muted);margin-top:3px;line-height:1.55}.lp-panel{border-radius:var(--radius-hero);background:var(--brand-tint);pointer-events:none;-webkit-user-select:none;user-select:none;padding:20px}.lp-band--tint .lp-panel{background:var(--brand-soft)}.lp-panel__head{padding:14px var(--card-padding) 8px;font-size:var(--fs-section);justify-content:space-between;align-items:baseline;gap:12px;font-weight:700;display:flex}.lp-panel__head span{font-size:var(--fs-caption);color:var(--text-muted);font-weight:500}.lp-panel__foot{justify-content:flex-end;margin-top:14px;display:flex}.lp-move{font-size:var(--fs-supporting)}.lp-move .type-badge{text-align:center;flex:none;width:72px}.lp-move--reversed .movement{color:var(--text-faint);text-decoration:line-through}.lp-move--reversed .list__title{color:var(--text-muted)}.lp-tiles{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.lp-tiles .tile{padding:14px}.lp-tiles .tile__value{white-space:nowrap;font-size:clamp(17px,4.6vw,22px)}.lp-duo{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:20px;display:grid}.lp-android{border-radius:var(--radius-hero);background:var(--brand-soft);flex-direction:column;align-items:flex-start;padding:40px;display:flex}.lp-android .check-list{font-size:var(--fs-body);margin:22px 0 28px}.lp-android .check-list svg{color:var(--brand)}.lp-android__cta{margin-top:auto}.lp-duo__side{gap:20px;display:grid}.lp-duo__side .card{padding:24px}.lp-duo__side .feature p{color:var(--text-muted);line-height:1.55}.lp-feature__title{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;display:flex}.lp-roles{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.lp-plans{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:48px;display:grid}.lp-plans__cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.lp-plan{flex-direction:column;gap:14px;padding:26px;display:flex}.lp-plan--featured{border:1.5px solid var(--brand)}.lp-plan__name{letter-spacing:-.01em;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:20px;font-weight:700;display:flex}.lp-plan__for{color:var(--text-muted);margin-top:4px}.lp-plan .check-list{flex:1;line-height:1.45}.lp-plan .check-list li.lp-limit svg{color:var(--text-muted)}.lp-plan__note{color:var(--text-muted);font-size:var(--fs-label);line-height:1.5}.lp-cta{background:var(--brand);color:var(--on-brand)}.lp-cta__inner{max-width:var(--page-max);padding:64px var(--page-x);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px 40px;margin:0 auto;display:flex}.lp-cta h2{letter-spacing:-.02em;font-size:clamp(24px,1.6vw + 15px,34px);font-weight:700;line-height:1.15}.lp-cta p{color:var(--lp-on-brand-soft);margin-top:8px;font-size:17px}.lp-cta .landing__cta{margin-top:0}.lp .landing__footer{text-align:left;padding:0}.lp-footer__inner{max-width:var(--page-max);padding:28px var(--page-x);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin:0 auto;display:flex}.lp-footer__brand{color:var(--text);font-size:var(--fs-supporting);align-items:center;gap:10px;font-weight:700;display:inline-flex}.lp-footer__brand span{color:var(--text-muted);font-weight:400}.lp-footer__links{flex-wrap:wrap;gap:6px 22px;margin:0;padding:0;list-style:none;display:flex}.lp-footer__links a{color:var(--text-muted);font-weight:500}.lp-footer__links a:hover{color:var(--brand)}@media (max-width:980px){.lp .landing__hero-inner{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:28px;padding-bottom:56px}.lp-art{justify-self:start}.lp-plans{grid-template-columns:minmax(0,1fr);gap:32px}}@media (max-width:860px){.lp-nav__links{display:none}.lp .landing__section{padding-top:56px;padding-bottom:56px}.lp-split,.lp-duo{grid-template-columns:minmax(0,1fr);gap:32px}.lp-duo{gap:16px}.lp-split--reverse .lp-split__art{order:0}.lp-android{padding:28px 22px}.lp-cta__inner{padding:48px var(--page-x)}}@media (max-width:560px){.lp-nav__signup{display:none}.lp-nav__actions .btn{min-height:36px;font-size:var(--fs-label);padding:0 12px}.lp .landing__cta .btn{flex:auto}.lp-art{padding:0}.lp-phone,.lp-desk__head .btn{display:none}.lp-row{flex-wrap:wrap}.lp-row__actions{display:none}.lp-row--featured .lp-row__actions{flex-basis:100%;grid-template-columns:1fr 1fr;gap:8px;padding-bottom:2px;display:grid}.lp-row--featured .lp-mini{justify-content:center;height:34px}.lp-plans__cards{grid-template-columns:minmax(0,1fr)}.lp-panel{padding:12px}.lp-move{gap:10px;padding-left:12px;padding-right:12px}.lp-panel__head{padding-left:12px;padding-right:12px}.lp-move .type-badge{width:66px;padding-left:4px;padding-right:4px}}
