:root{--color-primary:#e8462b;--color-primary-dark:#c2361e;--color-primary-soft:color-mix(in srgb, var(--color-primary) 12%, transparent);--color-bg:#eef0f4;--color-surface:#fff;--color-surface-hover:#f2f3f6;--color-text:#1d1d24;--color-muted:#6b6b78;--color-error:#c62828;--color-success:#2e7d32;--color-warning:#b26a00;--color-border:#e4e4ea;--color-panel:#fff;--color-inset:#f6f7f9;--color-inset-hover:#eceef2;--color-focus:#2563eb;--radius:10px;--radius-lg:14px;--touch-target:46px;--sidebar-width:260px;--topbar-height:60px;--panel-radius:24px;--gutter:16px;--font-brand:Montserrat, Inter, system-ui, sans-serif;color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0f1218;--color-surface:#171b23;--color-surface-hover:#1f2430;--color-text:#eef0f4;--color-muted:#9399a6;--color-border:#262c38;--color-panel:#171b23;--color-inset:#11151c;--color-inset-hover:#1a1f28;--color-focus:#60a5fa;--color-error:#ef5350;--color-success:#66bb6a;--color-warning:#ffb74d}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width>=640px){:root{--gutter:24px}}@media (width>=960px) and (pointer:fine){:root{--touch-target:40px}}@media (width>=960px){:root{--gutter:32px}}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);-webkit-tap-highlight-color:transparent;min-height:100dvh;margin:0}h1{margin:0;font-size:1.35rem;line-height:1.25}h2{margin:0 0 12px;font-size:1.05rem}@media (width>=960px){h1{font-size:1.75rem}}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}a{color:var(--color-primary)}svg{flex:none}@media (width<=639px){.hide-on-phone{display:none}}@media (width>=960px){.mobile-only{display:none!important}}.app-shell{min-height:100dvh}.topbar{z-index:20;height:calc(var(--topbar-height) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--gutter) 0;background:var(--color-bg);align-items:center;gap:10px;display:flex;position:sticky;top:0}.menu-button{margin-left:-10px}.topbar-brand{color:var(--color-text);align-items:center;text-decoration:none;display:none}.topbar-wordmark{font-size:1.3rem}.topbar-spacer{flex:1}.user-chip{height:44px;color:var(--color-text);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:10px;padding:0 4px;font-weight:600;display:flex}.user-chip-text{text-align:left;flex-direction:column;align-items:flex-start;min-width:0;line-height:1.2;display:flex}.user-chip-name,.user-chip-chevron{display:none}.user-chip-branch{max-width:40vw;color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;display:inline-flex;overflow:hidden}.avatar{background:var(--color-primary-soft);width:38px;height:38px;color:var(--color-primary);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.avatar.large{width:96px;height:96px;font-family:var(--font-brand);font-size:2rem}.sidebar{display:none}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-link{min-height:48px;color:var(--color-text);border-radius:999px;align-items:center;gap:12px;padding:0 16px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{background:var(--color-surface-hover)}.sidebar-link.active{background:var(--color-primary);color:#fff;font-weight:600}.app-main{min-width:0;min-height:calc(100dvh - var(--topbar-height) - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.app-main>.page{flex:1}.app-footer{display:none}@media (width>=640px){.user-chip{background:var(--color-surface);border:1px solid var(--color-border);height:52px;padding:0 14px 0 4px}.user-chip-name,.user-chip-chevron{display:block}.user-chip-chevron{color:var(--color-muted)}}@media (width>=768px){:root{--topbar-height:76px;--footer-height:56px;--sidebar-width:76px}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"topbar topbar""sidebar main""footer footer";column-gap:16px;padding:0 16px;display:grid}.topbar{grid-area:topbar;gap:16px;padding:0 8px}.topbar .menu-button{display:none}.topbar-brand{display:flex}.sidebar{top:var(--topbar-height);height:calc(100dvh - var(--topbar-height) - var(--footer-height));border-radius:var(--panel-radius);background:var(--color-panel);border:1px solid var(--color-border);grid-area:sidebar;align-self:start;padding:10px;display:block;position:sticky;overflow-y:auto}.sidebar .sidebar-link{border-radius:16px;justify-content:center;min-height:52px;padding:0}.sidebar .nav-label{display:none}.app-main{height:calc(100dvh - var(--topbar-height) - var(--footer-height));border-radius:var(--panel-radius);background:var(--color-panel);border:1px solid var(--color-border);--color-surface:var(--color-inset);--color-surface-hover:var(--color-inset-hover);grid-area:main;min-height:0;padding-bottom:0}.app-main>.page{overscroll-behavior:contain;min-height:0;overflow-y:auto}.app-footer{height:var(--footer-height);color:var(--color-muted);grid-area:footer;justify-content:center;align-items:center;font-size:.82rem;display:flex;position:relative}.app-footer-logo{color:var(--color-text);font-size:.95rem;position:absolute;left:8px}}@media (width>=1200px){:root{--sidebar-width:260px}.topbar-brand{width:calc(var(--sidebar-width) - 8px)}.topbar-wordmark{font-size:1.4rem}.sidebar{padding:12px}.sidebar .sidebar-link{border-radius:999px;justify-content:flex-start;min-height:46px;padding:0 16px}.sidebar .nav-label{display:inline}}.drawer-backdrop.from-left{justify-content:flex-start}.nav-drawer{width:min(300px,84vw);height:100%;padding:calc(12px + env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom));background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;gap:16px;animation:.2s ease-out slide-in-left;display:flex;overflow-y:auto}.nav-drawer-header{justify-content:space-between;align-items:center;padding-left:8px;display:flex}.nav-drawer-logo{font-size:1.2rem}@keyframes slide-in-left{0%{opacity:0;transform:translate(-24px)}}.drawer-backdrop{z-index:50;background:#00000073;justify-content:flex-end;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}.user-drawer{width:min(340px,88vw);height:100%;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));background:var(--color-surface);border-left:1px solid var(--color-border);flex-direction:column;gap:8px;animation:.2s ease-out slide-in;display:flex;position:relative;overflow-y:auto}@media (width>=960px){.user-drawer{border:1px solid var(--color-border);border-radius:var(--panel-radius);height:auto;margin:12px}}.drawer-close{top:calc(12px + env(safe-area-inset-top));position:absolute;right:12px}.user-drawer-profile{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px 0 20px;display:flex}.user-drawer-profile .avatar{margin-bottom:12px}.drawer-section{border-top:1px solid var(--color-border);padding:8px 0}.drawer-row{width:100%;min-height:52px;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;padding:0 8px;font-weight:500;display:flex}.drawer-row:hover{background:var(--color-surface-hover)}.drawer-row span{flex:1}.drawer-row.danger{color:var(--color-error)}.drawer-section-title{color:var(--color-muted);letter-spacing:.04em;text-transform:uppercase;margin:4px 8px 6px;font-size:.8rem;font-weight:600}.branch-options{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.branch-option.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.modal-backdrop{z-index:55;background:#00000073;justify-content:center;align-items:flex-end;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}.modal{width:100%;max-height:92dvh;padding:20px 20px calc(20px + env(safe-area-inset-bottom));border-radius:var(--panel-radius) var(--panel-radius) 0 0;background:var(--color-surface);border:1px solid var(--color-border);animation:.2s ease-out sheet-in;overflow-y:auto}@media (width>=640px){.modal-backdrop{align-items:center}.modal{border-radius:var(--panel-radius);max-width:440px;padding-bottom:24px}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-header h2{margin:0}.modal-actions{gap:8px;display:flex}.modal-actions .button{flex:1}.password-prompt{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.password-prompt h2{margin:0}.password-prompt p{margin:0 0 8px}.password-prompt .modal-actions{width:100%}.password-prompt-icon{background:color-mix(in srgb, var(--color-warning) 18%, transparent);width:72px;height:72px;color:var(--color-warning);border-radius:50%;place-items:center;display:grid}.modal-wide{max-width:520px}.cell-person{gap:10px}.cell-name.cell-person{flex-direction:row;align-items:center}.cell-person strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cell-muted{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cell-pills{flex-wrap:wrap;gap:6px}.avatar.small{width:30px;height:30px;font-size:.72rem}button.data-row{border:none;border-bottom:1px solid var(--color-border);width:100%;font:inherit;text-align:left;cursor:pointer;padding:0}.pill{background:var(--color-surface-hover);color:var(--color-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.pill-primary{background:var(--color-primary-soft);color:var(--color-primary)}.pill-success{background:color-mix(in srgb, var(--color-success) 16%, transparent);color:var(--color-success)}.pill-error{background:color-mix(in srgb, var(--color-error) 14%, transparent);color:var(--color-error)}.pill-warning{background:color-mix(in srgb, var(--color-warning) 18%, transparent);color:var(--color-warning)}.choice-group{flex-direction:column;gap:8px;display:flex}.choice-card{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.choice-card.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.choice-card input{margin-top:2px}.choice-card span{flex-direction:column;gap:2px;font-weight:400;display:flex}.choice-group:disabled .choice-card{cursor:default;opacity:.7}.checkbox-list{flex-direction:column;gap:4px;display:flex}.checkbox-row{cursor:pointer;align-items:center;gap:12px;min-height:44px;padding:0 4px;font-weight:400;display:flex}.status-row{padding:8px 0}.status-row span{flex-direction:column;display:flex}.credentials{border-radius:var(--radius);background:var(--color-surface-hover);text-align:left;grid-template-columns:auto 1fr;gap:8px 16px;width:100%;margin:0;padding:14px 16px;display:grid}.credentials dt{color:var(--color-muted)}.credentials dd{overflow-wrap:anywhere;margin:0;font-weight:600}.credentials code{font-size:1.05rem}.show-passwords{align-self:flex-start;align-items:center;gap:6px;min-height:36px;padding:0;font-weight:600;display:inline-flex}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}}.price-check-fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:14;background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;place-items:center;width:60px;height:60px;display:grid;position:fixed;box-shadow:0 10px 24px #00000040}.app-shell:has(.has-action-bar) .price-check-fab{display:none}.price-result{min-height:60px;margin:16px 0}.price-card{border-radius:var(--radius);background:var(--color-surface-hover);flex-direction:column;align-items:flex-start;gap:6px;padding:16px;display:flex}.price-card-name{font-size:1.05rem}.price-card-price{font-family:var(--font-brand);color:var(--color-primary);font-size:2.2rem;font-weight:700;line-height:1.1}.price-card-meta{flex-wrap:wrap;align-items:center;gap:8px;font-size:.88rem;display:flex}.price-card .link-button{min-height:32px;padding:0}.toast{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;background:var(--color-primary);color:#fff;border-radius:999px;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 32px);padding:14px 20px;font-weight:600;animation:.2s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 32px #00000040}@media (width>=960px){.toast{top:24px;bottom:auto}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}.switch{background:var(--color-border);appearance:none;cursor:pointer;border:none;border-radius:999px;flex:none;width:48px;height:28px;min-height:0;padding:0;transition:background-color .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch:checked{background:var(--color-primary)}.switch:checked:after{transform:translate(20px)}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}}.page-header{width:100%;padding:12px var(--gutter) 0;align-items:center;gap:8px;margin:0 auto;display:flex}.page-header>.icon-button{margin-left:-10px}.page-title{flex:1;min-width:0}.page-title h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-title p{font-size:.85rem}.page-actions{gap:8px;display:flex}.page{width:100%;padding:16px var(--gutter) 24px;flex-direction:column;gap:16px;margin:0 auto;display:flex}@media (width>=960px){.page-header{padding-top:28px}.page-title p{font-size:.95rem}.page{padding-top:20px;padding-bottom:32px}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px}@media (width>=640px){.card{padding:20px 24px}}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start;gap:16px;display:grid}.section-title{align-items:center;gap:8px;display:flex}.placeholder-card{border-style:dashed}.centered{min-height:100dvh;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.muted{color:var(--color-muted);margin:0}.text-error{color:var(--color-error)}.button{min-height:var(--touch-target);border-radius:var(--radius);background:var(--color-primary);color:#fff;font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.button:hover{background:var(--color-primary-dark)}.button:disabled{opacity:.5;cursor:not-allowed}.button.secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.button.secondary:hover{background:var(--color-surface-hover)}.button.block{width:100%}.button.square{width:var(--touch-target);padding:0}@media (width<=639px){.page-actions .button,.toolbar>.button{width:var(--touch-target);padding:0}}.icon-button{width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.icon-button:hover{background:var(--color-surface-hover)}.icon-button.light{color:#fff}.icon-button.light:hover{background:#ffffff1f}.link-button{min-height:var(--touch-target);color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none}input,select,textarea{width:100%;min-height:var(--touch-target);font:inherit;color:inherit;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-focus);outline-offset:-1px}select:disabled{opacity:.7}input[type=checkbox]:not(.switch),input[type=radio]{width:20px;height:20px;min-height:0;accent-color:var(--color-primary);flex:none;padding:0}fieldset{border:none;min-width:0;margin:0;padding:0}legend{margin-bottom:6px;padding:0;font-weight:500}input.readonly{color:var(--color-muted);cursor:default;background:0 0;border-style:dashed}input.readonly:focus{outline:none}textarea{resize:vertical}.form{flex-direction:column;gap:16px;display:flex}.form h2{margin:0}.field{flex-direction:column;gap:6px;min-width:0;font-size:.95rem;font-weight:500;display:flex}.field small{font-weight:400}.field-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=640px){.field-grid{grid-template-columns:1fr 1fr}.field-grid.name-row{grid-template-columns:2fr 1fr}}.input-row{gap:8px;display:flex}.input-with-button{position:relative}.input-with-button input{padding-right:84px}.inline-button{min-width:76px;height:100%;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:none;font-size:.9rem;position:absolute;top:0;right:0}.inline-form{gap:8px;margin-top:16px;display:flex}.product-card{gap:20px;display:grid}.purchase-section{border-top:1px solid var(--color-border);padding-top:20px}.purchase-section .section-title{font-size:1.05rem}@media (width>=960px){.product-card{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:0}.product-card-section:first-child{padding-right:24px}.purchase-section{border-top:none;border-left:1px solid var(--color-border);padding:0 0 0 24px}}.form-actions{flex-direction:column;gap:8px;display:flex}@media (width<=767px){.form-actions{z-index:15;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));background:var(--color-bg);border-top:1px solid var(--color-border);position:fixed;inset:auto 0 0}.page.has-action-bar{padding-bottom:calc(150px + env(safe-area-inset-bottom))}}@media (width>=640px) and (width<=959px){.form-actions{flex-direction:row}.form-actions .button.block{flex:1}}@media (width>=960px){.form-actions{margin-top:auto;padding-top:8px}}.profit{border-radius:var(--radius);background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);margin:0;padding:10px 12px}.profit.negative{background:color-mix(in srgb, var(--color-error) 12%, transparent);color:var(--color-error)}.alert{border-radius:var(--radius);flex-direction:column;gap:10px;margin:0;padding:12px 14px;font-size:.95rem;display:flex}.alert p{margin:0}.alert.error{background:color-mix(in srgb, var(--color-error) 14%, transparent)}.alert.success{background:color-mix(in srgb, var(--color-success) 16%, transparent)}.alert.warning{background:color-mix(in srgb, var(--color-warning) 16%, transparent)}.alert.info{background:color-mix(in srgb, var(--color-focus) 12%, transparent)}.alert-inline{flex-direction:row;align-items:flex-start;gap:10px}.alert-inline svg{color:var(--color-focus);margin-top:2px}@media (width>=640px){.alert-row{flex-direction:row;justify-content:space-between;align-items:center}}.badge{background:var(--color-border);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;display:inline-block}.list{margin:0;padding:0;list-style:none}.list-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;min-height:56px;padding:6px 0;display:flex}.row-actions{gap:4px;display:flex}.record-count{color:var(--color-muted);margin:-4px 0 0;font-size:.85rem;font-style:italic}.toolbar{flex-wrap:wrap;gap:8px;display:flex}.toolbar .search-field{flex:1}@media (width>=960px){.toolbar{flex-wrap:nowrap;gap:12px}}.search-field{min-width:0;position:relative}.search-field input{padding-left:40px}.search-icon{color:var(--color-muted);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;min-height:280px;padding:40px 20px;display:flex}.empty-state h2{margin:4px 0 0}.empty-state p{max-width:42ch;margin:0}.empty-state .button{margin-top:8px}.empty-state-icon{background:var(--color-primary-soft);width:80px;height:80px;color:var(--color-primary);border-radius:50%;place-items:center;display:grid}.data-table{--row-alt:color-mix(in srgb, var(--color-surface-hover) 55%, var(--color-surface));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overscroll-behavior-x:contain;flex-direction:column;display:flex;overflow:auto}.data-row{grid-template-columns:var(--grid-columns);min-width:var(--grid-min-width,680px);border-bottom:1px solid var(--color-border);background:var(--color-surface);min-height:42px;color:inherit;align-items:stretch;font-size:.92rem;text-decoration:none;display:grid}.data-row:last-child{border-bottom:none}.data-row:not(.data-head):nth-child(odd){background:var(--row-alt)}.data-table.clickable .data-row:not(.data-head):hover{background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface))}.data-row>*{background:inherit;align-items:center;min-width:0;padding:8px 12px;display:flex}.data-row>*+*{border-left:1px solid var(--color-border)}.data-head{z-index:2;background:color-mix(in srgb, var(--color-primary) 7%, var(--color-surface-hover));min-height:40px;color:var(--color-text);font-size:.85rem;font-weight:600;position:sticky;top:0}.data-row>.cell-name{z-index:1;border-right:1px solid var(--color-border);position:sticky;left:0}.data-head>.cell-name{z-index:3}.cell-name strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.cell-code,.cell-barcode{color:var(--color-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.cell-price{font-variant-numeric:tabular-nums;justify-content:flex-end;font-weight:700}.cell-stock{justify-content:flex-end}.cell-chevron{color:var(--color-muted);justify-content:center}.data-head>[role=columnheader]:has(>.sort-header){padding:0}.sort-header{width:100%;height:100%;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:8px 12px;display:flex}.sort-header:hover,.sort-header.active{color:var(--color-text)}.sort-header svg{opacity:.45}.sort-header.active svg{opacity:1;color:var(--color-primary)}.sort-header:disabled{cursor:default}.cell-price .sort-header,.cell-stock .sort-header{justify-content:flex-end}.pager{justify-content:space-between;align-items:center;gap:8px;display:flex}.pager-info{color:var(--color-muted);font-variant-numeric:tabular-nums;text-align:center;font-size:.9rem}.pager .button{min-width:var(--touch-target)}.stock-badge{background:var(--color-surface-hover);color:var(--color-muted);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.8rem;font-weight:500;display:inline-block}.stock-badge.low{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning);font-weight:600}.stock-badge.out{background:color-mix(in srgb, var(--color-error) 14%, transparent);color:var(--color-error);font-weight:600}@media (width>=960px){.app-main>.page-fill{overflow:hidden}.page-fill .data-table{flex:0 auto;min-height:0}}.scanner-overlay{z-index:100;color:#fff;background:#000;display:flex;position:fixed;inset:0}.scanner-panel{background:#000;flex-direction:column;flex:1;display:flex}@media (width>=960px){.scanner-overlay{background:#000000b3;justify-content:center;align-items:center}.scanner-panel{border-radius:var(--radius-lg);flex:none;width:min(640px,90vw);height:min(560px,85vh);overflow:hidden}}.scanner-header{padding:calc(8px + env(safe-area-inset-top)) 8px 8px 16px;justify-content:space-between;align-items:center;display:flex}.scanner-header h2{margin:0}.scanner-viewport{flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.scanner-video{width:100%}.scanner-video video{object-fit:cover;width:100%!important;height:auto!important}.scanner-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;margin:0;padding:24px;display:flex;position:absolute;inset:0}.scanner-manual{padding:0 16px calc(20px + env(safe-area-inset-bottom));gap:8px;display:flex}.scanner-manual input{color:#fff;background:#1b1b20;border-color:#3a3a44;flex:1}.scanner-hint{padding:16px 16px calc(24px + env(safe-area-inset-bottom));text-align:center;color:#ddd;margin:0}.spinner{border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.settings-section{flex-direction:column;gap:16px;display:flex}.settings-section-header h2{margin-bottom:2px}.settings-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.settings-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.settings-row-icon{background:var(--color-primary-soft);width:44px;height:44px;color:var(--color-primary);border-radius:12px;flex:none;place-items:center;display:grid}.settings-row-field{flex:1;min-width:0}.settings-row-error{flex-basis:100%;padding-left:54px}.saved-note{color:var(--color-success);align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.plan-note{margin-top:16px;font-size:.9rem}.environment-banner{padding:4px 12px;padding-top:calc(4px + env(safe-area-inset-top));color:#1d1d24;letter-spacing:.02em;text-align:center;background:#f5b400;font-size:.78rem;font-weight:700}.wordmark{font-family:var(--font-brand);letter-spacing:.04em;white-space:nowrap;align-items:center;font-weight:600;line-height:1;display:inline-flex}.wordmark-cube{width:auto;height:1.02em;margin-right:.03em;transform:translateY(-.04em)}.login-screen{--login-card:#fff;--color-surface:#f6f7f9;--login-card-shadow:0 24px 60px #7828142e;--login-placeholder:#9399a6;--login-gradient:linear-gradient(135deg, #ff7a45 0%, #e8462b 55%, #b8321b 100%);min-height:100dvh;padding:0 12px env(safe-area-inset-bottom);background:var(--color-bg);color:var(--color-text);flex-direction:column;gap:12px;display:flex}:root[data-theme=dark] .login-screen{--login-card:#12151b;--color-surface:#0c0e12;--color-surface-hover:#1a1d24;--color-border:#2a2e38;--color-text:#f1f2f5;--color-muted:#9aa0ad;--color-error:#ff6b6b;--color-success:#5ad17a;--color-focus:#6ea8ff;--login-card-shadow:0 24px 60px #00000059;--login-placeholder:#5d6270;background:#0e1014}.login-topbar{align-items:center;padding:0 8px;display:none}.login-stage{background:var(--login-gradient);border-radius:24px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:28px;margin-top:12px;padding:36px 16px 20px;display:flex;position:relative;overflow:hidden}.login-hero{color:#fff;text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.login-hero-logo{font-size:clamp(1.9rem,9vw,2.6rem)}.login-hero-tagline{opacity:.92;max-width:30ch;margin:0;font-size:.95rem;line-height:1.4}.login-hero-watermark{display:none}.login-card{z-index:1;background:var(--login-card);width:100%;max-width:460px;box-shadow:var(--login-card-shadow);border-radius:24px;flex-direction:column;gap:20px;padding:28px 22px;display:flex;position:relative}.login-card-header{text-align:center}.login-card-header h1{font-family:var(--font-brand);font-size:1.6rem;font-weight:700}.login-card-header p{color:var(--color-muted);margin:6px 0 0;font-size:.92rem}.login-form{flex-direction:column;gap:16px;display:flex}.login-form input{border-radius:12px;min-height:50px}.login-form input::placeholder{color:var(--login-placeholder)}.inline-button.icon-only{place-items:center;min-width:52px;display:grid}.input-with-button input:has(+.icon-only){padding-right:56px}.login-forgot{justify-content:flex-end;margin-top:-8px;display:flex}.login-forgot .link-button{min-height:36px;color:var(--color-focus);padding:0;font-weight:600}.login-submit{border-radius:999px;min-height:52px;font-size:1rem}.login-notice{border-radius:14px;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;font-size:.92rem;font-weight:500;display:flex}.login-notice svg{margin-top:2px}.login-notice.error{background:color-mix(in srgb, var(--color-error) 14%, transparent);color:var(--color-error)}.login-notice.success{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.login-footer{color:var(--color-muted);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:8px 0 16px;font-size:.8rem;display:flex}.login-footer-logo{display:none}@media (width>=960px){.login-screen{gap:16px;padding:0 24px}.login-topbar{height:72px;font-size:1.3rem;display:flex}.login-stage{border-radius:32px;grid-template-columns:minmax(0,1fr) 460px;align-items:center;gap:48px;margin-top:0;padding:56px clamp(32px,5vw,96px);display:grid}.login-hero{gap:28px}.login-hero-logo{font-size:clamp(3rem,6vw,5.5rem)}.login-hero-tagline{font-size:clamp(1.1rem,1.6vw,1.5rem)}.login-hero-watermark{color:#fff;opacity:.06;pointer-events:none;width:36%;display:block;position:absolute;bottom:-24%;left:-7%}.login-card{border-radius:28px;padding:36px 32px}.login-footer{flex-direction:row;justify-content:center;padding:4px 0 20px;position:relative}.login-footer-logo{color:var(--color-text);font-size:.95rem;display:inline-flex;position:absolute;left:0}}
