:root{--hb-orange:#f1510a;--hb-orange-hover:#d94708;--hb-orange-soft:#f1510a1a;--hb-green:#4f733e;--hb-ink:#1a1a1a;--hb-muted:#5c5c5c;--hb-line:#e4e0da;--hb-bg:#f7f5f2;--hb-surface:#fff;--hb-navy:#133c58;--hb-radius:4px;--hb-shadow:0 10px 30px #133c5814;--font:"Montserrat", system-ui, sans-serif;--sidebar-w:260px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}#root{overflow:hidden}html{touch-action:pan-x pan-y;overflow:hidden}body{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%;font-family:var(--font);color:var(--hb-ink);background:radial-gradient(1200px 500px at 10% -10%, #f1510a22, transparent 60%), radial-gradient(900px 400px at 100% 0%, #4f733e18, transparent 55%), linear-gradient(180deg, #fbf9f6 0%, var(--hb-bg) 40%, #efebe4 100%);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:var(--sidebar-w) 1fr;height:100%;min-height:100%;display:grid;overflow:hidden}.sidebar{background:linear-gradient(180deg, #162a38 0%, var(--hb-navy) 55%, #0d2838 100%);color:#fff;flex-direction:column;gap:1.25rem;height:100vh;padding:1.25rem 1rem 1.5rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.75rem;padding:.25rem .5rem;display:flex}.brand-mark{background:var(--hb-orange);border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid;overflow:hidden;box-shadow:0 8px 20px #f1510a55}.brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-text strong{font-size:1.05rem;font-weight:800}.brand-text span{opacity:.7;font-size:.72rem}.nav{flex-direction:column;flex:1;gap:.25rem;display:flex;overflow:auto}.nav a{border-radius:var(--hb-radius);color:#ffffffc7;align-items:center;gap:.65rem;padding:.7rem .85rem;transition:all .15s;display:flex}.nav a:hover{color:#fff;background:#ffffff14}.nav a.active{background:var(--hb-orange);color:#fff;font-weight:600}.user-card{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;padding:.85rem}.user-card .name{font-size:.92rem;font-weight:700}.user-card .meta{opacity:.7;margin-top:.2rem;font-size:.75rem}.main{overscroll-behavior-x:none;scrollbar-width:none;-ms-overflow-style:none;min-width:0;max-width:100%;height:100%;padding:0 1.75rem 2.5rem;overflow:hidden auto}.main>:first-child:not(.page-sticky){margin-top:1.5rem}.main>.tl{margin-top:0}.main::-webkit-scrollbar{width:0;height:0;display:none}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;display:flex}.page-head h1{letter-spacing:-.03em;margin:0;font-size:1.65rem;font-weight:800}.page-head p{color:var(--hb-muted);margin:.35rem 0 0;font-size:.92rem}.page-head-note{color:var(--hb-muted);max-width:42rem;margin:.35rem 0 0;font-size:.9rem;line-height:1.35}.journal-open-errors{flex-direction:column;gap:.65rem;margin:0 0 .85rem;display:flex}.journal-open-error{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem 1rem;padding:.85rem 1rem;display:flex}.journal-open-error-main{flex:16rem;min-width:0}.journal-open-error-meta{color:#7f1d1d;flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin-bottom:.35rem;font-size:.82rem;font-weight:600;display:flex}.journal-open-error-entity{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.journal-muted{color:#9f5b5b;font-weight:500}.journal-open-error-title{color:#991b1b;word-break:break-word;font-size:1rem;font-weight:750;line-height:1.35}.journal-open-error-hint{color:#7f1d1d;margin-top:.4rem;font-size:.9rem;line-height:1.4}table.data.data-journal{font-size:.92rem}table.data.data-journal tbody tr.journal-row-error td{background:#fef2f2;border-bottom-color:#fecaca}table.data.data-journal tbody tr.journal-row-error:hover td{background:#fee2e2}table.data.data-journal tbody tr.journal-row-warn td{background:#fffbeb;border-bottom-color:#fde68a}table.data.data-journal tbody tr.journal-row-warn:hover td{background:#fef3c7}table.data.data-journal tbody tr.journal-row-closed td{opacity:.55}.journal-col-time{white-space:nowrap;font-variant-numeric:tabular-nums}.journal-col-msg{min-width:14rem}.journal-badge{letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.15rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.journal-badge-ok{color:#166534;background:#dcfce7}.journal-badge-warn{color:#92400e;background:#fde68a}.journal-badge-err{color:#991b1b;background:#fecaca}.journal-msg{color:var(--hb-navy);word-break:break-word;font-weight:600;line-height:1.35}.journal-msg-err{color:#991b1b;font-weight:750}.journal-msg-warn{color:#92400e;font-weight:750}.journal-msg-detail,.journal-msg-hint{color:#7f1d1d;margin-top:.3rem;font-size:.86rem;line-height:1.35}.journal-msg-hint-warn{color:#92400e}.journal-msg-detail{color:#456}.journal-details{margin-top:.4rem}.journal-details summary{cursor:pointer;color:var(--hb-muted);font-size:.8rem;font-weight:600}.journal-details pre{white-space:pre-wrap;word-break:break-word;color:#334155;max-width:min(36rem,70vw);margin:.35rem 0 0;font-size:.74rem;line-height:1.35}.journal-http{font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;min-width:2.4rem;padding:.12rem .45rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;font-weight:750;display:inline-flex}.journal-http-error{color:#991b1b;background:#fecaca}.journal-http-warn{color:#92400e;background:#fde68a}.journal-http-ok{color:#166534;background:#dcfce7}.th-filter-http-menu{min-width:220px}.th-filter-http-group-title{font-weight:800!important}.th-filter-http-group.is-error .th-filter-http-group-title{color:#991b1b}.th-filter-http-group.is-warn .th-filter-http-group-title{color:#92400e}.th-filter-http-group.is-ok .th-filter-http-group-title{color:#166534}.th-filter-http-code{padding-left:1.6rem!important}.th-filter-option.partial{background:#fff7ed}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.btn{border-radius:var(--hb-radius);border:0;align-items:center;gap:.45rem;padding:.65rem 1rem;font-weight:600;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--hb-orange);color:#fff}.btn-primary:hover:not(:disabled){background:var(--hb-orange-hover)}.btn-secondary{color:var(--hb-ink);border:1px solid var(--hb-line);background:#fff}.btn-secondary:hover:not(:disabled){color:#fff;background:#878787;border-color:#878787}.btn-ghost{color:var(--hb-navy);background:0 0}.btn-danger{color:#fff;background:#dc2626}.btn-sm{padding:.4rem .7rem;font-size:.85rem}.panel{background:var(--hb-surface);border:1px solid var(--hb-line);box-shadow:var(--hb-shadow);border-radius:8px;overflow:hidden}.panel.settings-form,.panel.panel-table{overflow:visible}.panel-pad{padding:1.1rem 1.2rem}.page-sticky{z-index:30;border-bottom:1px solid var(--hb-line);isolation:isolate;background:#f7f5f2;margin:0 0 .85rem;padding:1.5rem 0 .75rem;position:sticky;top:0}.page-sticky:before{content:"";z-index:-1;pointer-events:none;background:#f7f5f2;position:absolute;inset:0 -2rem}.page-sticky .page-head{z-index:1;margin-bottom:.85rem;position:relative}.page-sticky .toolbar{margin-bottom:0!important}.page-sticky .tabs{margin-bottom:0}.scroll-top-btn{z-index:50;background:var(--hb-orange);color:#fff;cursor:pointer;border:0;border-radius:999px;place-items:center;width:48px;height:48px;transition:transform .15s,background .15s;display:grid;position:fixed;bottom:5.25rem;right:1.25rem;box-shadow:0 10px 28px #f1510a55}.scroll-top-btn:hover{background:var(--hb-orange-hover);transform:translateY(-2px)}.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.stat{background:var(--hb-surface);border:1px solid var(--hb-line);box-shadow:var(--hb-shadow);border-radius:8px;padding:1rem 1.1rem}.stat .label{color:var(--hb-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.stat .value{letter-spacing:-.03em;margin-top:.35rem;font-size:1.55rem;font-weight:800}.stat .value.accent{color:var(--hb-orange)}.table-wrap{width:100%;overflow:visible}table.data{border-collapse:separate;border-spacing:0;width:100%;font-size:.88rem}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--hb-line);vertical-align:middle;padding:.7rem .85rem}table.data thead th{top:var(--sticky-thead-top,0px);z-index:12;color:var(--hb-navy);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;box-shadow:inset 0 -1px 0 var(--hb-line);background:#f3f0eb;font-size:.75rem;font-weight:700;position:sticky}table.data thead tr{background:#f3f0eb}.main>div:has(>.page-sticky):has(>.panel-table){flex-direction:column;height:100%;min-height:0;max-height:100%;display:flex}.main>div:has(>.page-sticky):has(>.panel-table)>.page-sticky{z-index:5;flex:none;position:relative;top:auto}.main>div:has(>.page-sticky):has(>.panel-table)>.panel.panel-table{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;max-width:100%;min-height:0;overflow:auto}.main>div:has(>.page-sticky):has(>.panel-table)>.panel.panel-table .table-wrap{margin:0;padding:0;overflow:visible}.main>div:has(>.page-sticky):has(>.panel-table) table.data thead th{top:0}table.data tr:hover td{background:#faf8f5}.th-filter{top:var(--sticky-thead-top,0px);z-index:12;background:#f3f0eb;position:sticky;overflow:visible;padding:.35rem .5rem!important}.th-filter.is-open{z-index:50}.main>div:has(>.page-sticky):has(>.panel-table) .th-filter{top:0}.th-filter-inner{position:relative}.th-filter-row{align-items:center;gap:.2rem;display:flex}.th-filter-btn{max-width:100%;color:inherit;font:inherit;text-transform:uppercase;letter-spacing:.03em;border-radius:var(--hb-radius);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.35rem .4rem;font-size:.75rem;font-weight:700;display:inline-flex}.th-filter-btn:hover{background:#ebe6df}.th-filter.is-active .th-filter-btn{color:var(--hb-orange)}.th-filter-label{white-space:nowrap}.th-filter-text-wrap{flex-direction:column;gap:.25rem;min-width:0;display:flex}.th-filter-text-row{align-items:center;gap:.25rem;min-width:0;display:flex}.th-filter-inline-input{border:1px solid var(--hb-line);width:100%;min-width:0;color:var(--hb-ink);font:inherit;text-transform:none;letter-spacing:0;background:#fff;border-radius:8px;flex:auto;padding:.35rem .55rem;font-size:.88rem;font-weight:600}.th-filter-inline-input:focus{outline:2px solid color-mix(in srgb, var(--hb-orange) 45%, transparent);border-color:var(--hb-orange)}.th-filter-text.is-active .th-filter-label{color:var(--hb-orange)}.th-filter-chip{text-overflow:ellipsis;white-space:nowrap;background:var(--hb-orange-soft);max-width:7rem;color:var(--hb-orange);text-transform:none;letter-spacing:0;vertical-align:middle;border-radius:999px;padding:.1rem .4rem;font-size:.68rem;font-weight:800;display:inline-block;overflow:hidden}.th-filter-chevron{opacity:.55;flex-shrink:0;transition:transform .15s}.th-filter-chevron.up{transform:rotate(180deg)}.th-filter-clear{width:22px;height:22px;color:var(--hb-muted);background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.th-filter-clear:hover{color:var(--hb-ink);background:#ebe6df}.th-filter-panel{background:var(--hb-surface);border:1px solid var(--hb-line);min-width:220px;max-width:min(320px,80vw);box-shadow:var(--hb-shadow);z-index:40;border-radius:8px;padding:.45rem;position:absolute;top:calc(100% + 4px);left:0}.th-filter-panel-portal{z-index:1200;min-width:220px;max-width:min(320px,100vw - 16px);max-height:min(360px,100vh - 24px);position:fixed;top:auto;left:auto;overflow:auto}.th-filter-menu{flex-direction:column;gap:.1rem;max-height:280px;display:flex;overflow:auto}.th-filter-option{text-align:left;width:100%;color:var(--hb-ink);font:inherit;text-transform:none;letter-spacing:0;border-radius:var(--hb-radius);cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.55rem .6rem;font-size:.88rem;font-weight:500;display:flex}.th-filter-option:hover{background:#f5f2ed}.th-filter-option.selected{background:var(--hb-orange-soft);color:var(--hb-navy);font-weight:700}.th-filter-check{width:16px;height:16px;color:var(--hb-orange);flex-shrink:0;place-items:center;display:grid}.th-filter-divider{background:var(--hb-line);height:1px;margin:.25rem .35rem}.th-filter-empty{color:var(--hb-muted);text-transform:none;padding:.75rem;font-size:.85rem;font-weight:500}.th-filter-number{flex-direction:column;gap:.55rem;min-width:200px;padding:.25rem;display:flex}.th-filter-modes{grid-template-columns:1fr 1fr 1fr;gap:.3rem;display:grid}.th-filter-mode{border:1px solid var(--hb-line);color:var(--hb-muted);font:inherit;text-transform:none;letter-spacing:0;border-radius:var(--hb-radius);cursor:pointer;background:#fff;padding:.45rem .25rem;font-size:.72rem;font-weight:700}.th-filter-mode:hover{color:var(--hb-ink);border-color:#cfc8bd}.th-filter-mode.active{border-color:var(--hb-orange);background:var(--hb-orange-soft);color:var(--hb-orange)}.th-filter-input{border:1px solid var(--hb-line);border-radius:var(--hb-radius);width:100%;font:inherit;text-transform:none;letter-spacing:0;background:#fff;padding:.6rem .75rem;font-size:.9rem;font-weight:600}.th-filter-input:focus{outline:2px solid var(--hb-orange-soft);border-color:var(--hb-orange)}.thumb{object-fit:cover;border:1px solid var(--hb-line);background:#eee;border-radius:4px;width:44px;height:44px}.nomenclature-page>.page-sticky{margin-bottom:.35rem;padding:.45rem 0 .35rem}.nomenclature-page>.page-sticky .page-head{align-items:center;gap:.5rem;margin-bottom:0}.nomenclature-page>.page-sticky .page-head h1{font-size:1.35rem}.nomenclature-title-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.nomenclature-title-row .btn{flex-shrink:0}table.data.data-nomenclature{table-layout:fixed;font-size:.95rem}table.data.data-nomenclature th,table.data.data-nomenclature td{vertical-align:middle;padding:.4rem .55rem}table.data.data-nomenclature thead th{letter-spacing:.03em;padding-top:.45rem;padding-bottom:.45rem;font-size:.72rem}table.data.data-nomenclature tbody tr td{border-bottom:1px solid #e6e2dc}table.data.data-nomenclature tbody tr:hover td{background:#fff8f2}table.data.data-nomenclature .col-code{width:8rem;padding-right:.85rem}table.data.data-nomenclature .col-updated{white-space:normal;width:7.5rem;padding-left:.75rem;padding-right:5rem}table.data.data-nomenclature .col-group{text-align:left;vertical-align:middle;width:14rem;overflow:hidden;padding-left:5rem!important;padding-right:2.5rem!important}table.data.data-nomenclature th.col-group .th-filter-btn{margin-left:0;padding-left:0}table.data.data-nomenclature td.col-group{text-align:left}table.data.data-nomenclature .col-name{overflow:hidden;padding-left:3.5rem!important}table.data.data-nomenclature th.col-name .th-filter-btn{padding-left:0}table.data.data-nomenclature .col-photo{width:220px;padding-left:.45rem;padding-right:.35rem}table.data.data-nomenclature .col-actions{text-align:right;white-space:nowrap;width:5.5rem;padding-right:.35rem}.nomenclature-card-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.nomenclature-card-footer .btn-secondary:first-child{margin-right:auto}.nomen-print-btn,.nomen-delete-btn{min-width:2.25rem;min-height:2.25rem;color:#94a3b8!important;padding:.35rem!important}.nomen-print-btn:hover:not(:disabled){color:var(--hb-navy,#133c58)!important;background:#eef4f8!important}.nomen-delete-btn:hover:not(:disabled){color:#dc2626!important;background:#fef2f2!important}.nomen-thumb{object-fit:contain;object-position:center;border:1px solid var(--hb-line);box-sizing:border-box;background:#fff;border-radius:8px;width:200px;height:200px;padding:4px;display:block}.nomen-thumb-empty{background:linear-gradient(135deg,#f4f5f7 25%,#0000 25%) -12px 0/24px 24px,linear-gradient(225deg,#f4f5f7 25%,#0000 25%) -12px 0/24px 24px,linear-gradient(315deg,#f4f5f7 25%,#0000 25%) 0 0/24px 24px,linear-gradient(45deg,#f4f5f7 25%,#eef0f3 25%) 0 0/24px 24px;border-style:dashed}.nomen-code{color:var(--hb-navy);letter-spacing:.01em;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.05rem;font-weight:700;line-height:1.3}.nomen-updated{font-variant-numeric:tabular-nums;color:var(--hb-navy);flex-direction:column;gap:.1rem;font-size:1rem;font-weight:700;line-height:1.25;display:flex}.nomen-updated-time{color:#567;font-size:.92rem;font-weight:600}.nomen-name-btn{width:100%;max-width:100%;color:var(--hb-navy);font:inherit;text-align:left;cursor:pointer;word-break:break-word;background:0 0;border:0;margin:0;padding:0;font-size:.98rem;font-weight:600;line-height:1.35;display:block}.nomen-name-btn:hover:not(:disabled){color:var(--hb-orange)}.nomen-name-btn:disabled{cursor:default;color:var(--hb-navy)}.nomen-error{color:#b91c1c;margin-top:.3rem;font-size:.8rem;line-height:1.3}.nomen-chip{max-width:100%;color:var(--hb-navy);white-space:nowrap;text-overflow:ellipsis;background:#eef3f7;border-radius:999px;padding:.22rem .45rem;font-size:.82rem;font-weight:700;line-height:1.2;display:inline-block;overflow:hidden}@media (width<=1100px){.nomen-thumb{width:150px;height:150px}table.data.data-nomenclature .col-photo{width:168px}table.data.data-nomenclature .col-code{width:7rem}table.data.data-nomenclature .col-updated{width:6.75rem;padding-right:3.5rem}table.data.data-nomenclature .col-group{width:11.5rem;padding-left:3.5rem!important;padding-right:1.75rem!important}table.data.data-nomenclature .col-name{padding-left:2.25rem!important}.nomen-name-btn{font-size:.95rem}}html.is-phone table.data.data-nomenclature{table-layout:auto;font-size:.92rem}html.is-phone .nomen-thumb{border-radius:6px;width:112px;height:112px;padding:3px}html.is-phone table.data.data-nomenclature .col-photo{width:124px}html.is-phone .nomen-name-btn{font-size:.94rem}.product-thumb{object-fit:contain;border:1px solid var(--hb-line);background:#fff;border-radius:8px;width:120px;height:120px;padding:4px;display:block}.product-thumb-lg{width:220px;height:220px}.product-thumb-empty{color:var(--hb-muted);letter-spacing:.02em;background:#f4f5f7;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.product-price{white-space:nowrap;font-weight:700}.add-product-page{flex-direction:column;gap:1rem;display:flex}.add-product-page.is-embedded{gap:.85rem}.nomenclature-add-shell{z-index:46;left:calc(var(--sidebar-w) + 12px);min-height:0;display:flex;position:fixed;top:44px;bottom:12px;right:12px}.nomenclature-add-panel{border:1px solid var(--hb-line);background:#fff;border-radius:14px;flex-direction:column;width:100%;min-height:0;display:flex;overflow:hidden;box-shadow:0 18px 48px #133c582e}.nomenclature-add-head{border-bottom:1px solid var(--hb-line);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.nomenclature-add-head h2{margin:0;font-size:1.15rem}.nomenclature-add-body{background:#f7f9fb;flex:1;min-height:0;padding:.85rem 1rem 1.1rem;overflow:auto}html.is-phone .nomenclature-add-shell{top:40px;left:10px;right:10px;bottom:calc(var(--bottom-nav-h,64px) + 10px)}@media (width<=900px){.nomenclature-add-shell{top:40px;left:10px;right:10px;bottom:calc(var(--bottom-nav-h,64px) + 10px)}}.add-product-results{flex-direction:column;gap:.85rem;display:flex}.add-product-card{background:var(--hb-panel,#fff);border:1px solid var(--hb-line);border-radius:var(--hb-radius,12px);grid-template-columns:minmax(0,1fr) 220px;align-items:stretch;gap:1rem 1.25rem;padding:1rem 1.1rem;display:grid}.add-product-card-main{flex-direction:column;align-items:flex-start;gap:.55rem;min-width:0;min-height:100%;display:flex}.add-product-card-title{color:var(--hb-ink,#133c58);margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.add-product-price-row{flex-wrap:wrap;align-items:baseline;gap:.55rem .85rem;display:flex}.add-product-price{color:var(--hb-ink,#133c58);letter-spacing:-.02em;white-space:nowrap;font-size:1.55rem;font-weight:800;line-height:1.1}.add-product-card-meta{color:var(--hb-muted);flex-wrap:wrap;align-items:baseline;gap:.55rem 1rem;font-size:.9rem;display:flex}.add-product-card-muted{color:var(--hb-muted);font-size:.85rem}.add-product-spec-toggle{color:var(--hb-ink,#133c58);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;margin:0;padding:.2rem 0;font-size:.88rem;font-weight:700;display:inline-flex}.add-product-spec-toggle svg{transition:transform .16s}.add-product-spec-toggle svg.is-open{transform:rotate(180deg)}.add-product-specs{gap:.28rem;width:100%;max-width:36rem;margin:0;padding:0;list-style:none;display:grid}.add-product-specs li{grid-template-columns:minmax(7rem,38%) minmax(0,1fr);gap:.5rem .75rem;font-size:.84rem;line-height:1.35;display:grid}.add-product-spec-name{color:var(--hb-muted)}.add-product-spec-value{color:var(--hb-ink,#133c58);font-weight:600}.add-product-stock-in{color:#0f6b4c;font-size:.8rem;font-weight:600}.add-product-stock-out{color:#b00020;font-size:.8rem;font-weight:600}.add-product-card-footer{margin-top:auto;padding-top:.5rem}.add-product-open{align-items:center;gap:.35rem;text-decoration:none;display:inline-flex}.add-product-card-side{flex-direction:column;align-items:stretch;gap:.55rem;display:flex}.add-product-gallery{width:100%;max-width:200px;margin-left:auto;position:relative}.add-product-gallery.add-product-photo-lg{max-width:220px}.add-product-gallery.is-browseable .add-product-gallery-main{cursor:pointer}.add-product-gallery-main{aspect-ratio:1;border:1px solid var(--hb-line);box-sizing:border-box;cursor:default;appearance:none;width:100%;min-width:0;max-width:200px;min-height:0;font:inherit;background:#fff;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:8px;display:flex;overflow:hidden}.add-product-gallery.add-product-photo-lg .add-product-gallery-main{max-width:220px}.add-product-gallery-main:disabled{cursor:default}.add-product-photo{object-fit:contain;object-position:center;box-sizing:border-box;background:0 0;border:0;border-radius:0;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:100%;padding:0;display:block}.add-product-gallery.add-product-photo-lg .add-product-photo,.add-product-photo-lg{max-width:100%;max-height:100%}.add-product-photo-empty{aspect-ratio:1;width:100%;max-width:200px;color:var(--hb-muted);border:1px solid var(--hb-line);box-sizing:border-box;background:#f4f5f7;border-radius:10px;justify-content:center;align-items:center;margin-left:auto;font-size:.85rem;font-weight:700;display:flex}.add-product-gallery-nav{border:1px solid var(--hb-line);width:28px;height:28px;color:var(--hb-ink,#133c58);cursor:pointer;background:#ffffffeb;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 1px 4px #133c581f}.add-product-gallery-prev{left:4px}.add-product-gallery-next{right:4px}.add-product-gallery-dots{justify-content:center;gap:.28rem;margin-top:.35rem;display:flex}.add-product-gallery-dots span{background:#c9d3db;border-radius:999px;width:6px;height:6px}.add-product-gallery-dots span.is-active{background:var(--hb-accent,#f1510a)}.add-product-card-actions{flex-direction:row;align-items:center;gap:.5rem;margin-top:auto;display:flex}.add-product-card-actions .btn{white-space:nowrap;flex:auto;justify-content:center;min-width:0}.add-product-added-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.add-product-card-actions .store-logo-sm,.add-product-card-actions .store-logo-fallback.store-logo-sm{border-radius:12px;width:64px;height:64px;padding:4px}.add-product-modal{max-width:760px}.add-product-modal-body{grid-template-columns:minmax(0,1fr) 220px;align-items:stretch;gap:1.25rem;display:grid}.add-product-modal-main{flex-direction:column;align-items:flex-start;gap:.65rem;min-width:0;min-height:100%;display:flex}.add-product-modal-desc{color:var(--hb-muted);max-height:8rem;margin:.25rem 0 0;font-size:.9rem;line-height:1.45;overflow:auto}@media (width<=720px){.add-product-card,.add-product-modal-body{grid-template-columns:1fr}.add-product-card-side,.add-product-modal-body .add-product-card-side{flex-direction:row;order:-1;justify-content:space-between;align-items:center;gap:.85rem}.add-product-gallery,.add-product-photo,.add-product-photo-lg,.add-product-gallery.add-product-photo-lg{width:120px;max-width:120px;margin-left:0}.add-product-card-actions{flex:1}.add-product-specs li{grid-template-columns:minmax(5.5rem,34%) minmax(0,1fr)}}.store-logo{border:1px solid var(--hb-line);box-sizing:border-box;background:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:88px;height:88px;padding:6px;display:inline-flex;overflow:hidden}.store-logo-sm{border-radius:10px;width:64px;height:64px;padding:4px}.store-logo img{object-fit:contain;width:100%;height:100%;display:block}.store-logo-fallback{width:88px;height:88px;color:var(--hb-muted);background:#f4f5f7;border-radius:12px;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.store-logo-fallback.store-logo-sm{width:64px;height:64px}.badge{color:#fff;white-space:nowrap;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.search{flex:1;gap:.5rem;min-width:200px;display:flex}.search input,.field input,.field select,.field textarea{border:1px solid var(--hb-line);border-radius:var(--hb-radius);background:#fff;width:100%;padding:.65rem .8rem}.search input:focus,.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--hb-orange-soft);border-color:var(--hb-orange)}.field{flex-direction:column;gap:.35rem;display:flex}.field label{color:var(--hb-muted);font-size:.78rem;font-weight:700}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem;display:grid}.settings-section{border-top:1px solid var(--hb-line);margin-top:1.25rem;padding-top:1.1rem}.settings-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.settings-section-head .muted{color:var(--hb-muted);max-width:42rem;margin:.25rem 0 0;font-size:.85rem}.color-field-wrap{min-width:100%;display:inline-block;position:relative}.color-field{cursor:pointer;align-items:center;gap:.4rem;display:flex}.color-field input[type=color]{border:1px solid var(--hb-line);cursor:pointer;pointer-events:none;background:#fff;border-radius:6px;width:2.2rem;height:2rem;padding:0}.color-field input[type=text],.color-field input:not([type=color]){cursor:text;flex:1;min-width:0}.color-field-wrap.is-open .color-field{outline:2px solid var(--hb-orange);outline-offset:1px;border-radius:6px}.tl-color-palette-menu{z-index:40;border:1px solid var(--hb-line);background:#fff;border-radius:10px;width:248px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 12px 28px #133c5829}.tl-color-palette-title{letter-spacing:.06em;text-transform:uppercase;color:var(--hb-navy);border-bottom:1px solid var(--hb-line);background:#f3f0ea;padding:.55rem .85rem;font-size:.72rem;font-weight:800}.tl-color-palette-grid{grid-template-columns:repeat(6,1fr);gap:6px;max-height:200px;padding:.7rem .75rem;display:grid;overflow:auto}.tl-color-palette-chip{aspect-ratio:1;cursor:pointer;border:1px solid #c8c4bc;border-radius:6px;width:100%;padding:0}.tl-color-palette-chip:hover{transform:scale(1.06)}.tl-color-palette-chip.is-active{outline:2px solid var(--hb-orange);outline-offset:1px}.tl-color-palette-custom{background:#faf8f5;border-top:1px solid #eceae6;padding:.55rem .75rem .7rem}.tl-color-palette-custom-label{color:var(--hb-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem;font-size:.72rem;font-weight:700;display:block}.tl-color-palette-custom-row{align-items:center;gap:.4rem;display:flex}.tl-color-palette-custom-picker{border:1px solid var(--hb-line);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;width:2.2rem;height:2rem;padding:0}.tl-color-palette-hex{color:#222;background:#fff;border:1px solid #d8d4ce;border-radius:6px;flex:1;min-width:0;padding:.35rem .5rem;font-size:.85rem}.tl-style-swatch{vertical-align:middle;border:1px solid #3a3a3a;border-radius:6px;width:2rem;height:1.5rem;display:inline-block;box-shadow:inset 0 0 0 1px #0000000a}.modal-backdrop{z-index:50;background:#133c5873;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:10px;width:min(720px,100%);max-height:90vh;overflow:auto;box-shadow:0 24px 60px #00000040}.modal header{border-bottom:1px solid var(--hb-line);justify-content:space-between;align-items:center;padding:1rem 1.2rem;display:flex}.modal header h2{margin:0;font-size:1.15rem}.modal .body{padding:1.1rem 1.2rem}.modal .footer{border-top:1px solid var(--hb-line);justify-content:flex-end;gap:.5rem;padding:.9rem 1.2rem 1.15rem;display:flex}.login-page{--login-ink:#122536;--login-muted:#5a6b78;--login-line:#133c581f;--login-surface:#ffffffdb;--login-orange:#f1510a;--login-navy:#133c58;isolation:isolate;scrollbar-width:none;-ms-overflow-style:none;height:100%;min-height:100%;font-family:"Manrope", var(--font);color:var(--login-ink);opacity:0;place-items:center;padding:clamp(1.25rem,4vw,2.5rem);transition:opacity .45s,transform .45s;display:grid;position:relative;overflow:auto;transform:translateY(8px)}.login-page.is-ready{opacity:1;transform:none}.login-page::-webkit-scrollbar{width:0;height:0;display:none}.login-atmosphere{z-index:-1;background:radial-gradient(900px 520px at 12% -10%,#f1510a38,#0000 58%),radial-gradient(800px 480px at 92% 8%,#133c582e,#0000 55%),radial-gradient(700px 420px at 70% 110%,#4f733e1f,#0000 50%),linear-gradient(165deg,#fbf8f4 0%,#f3eee7 42%,#e8eef3 100%);animation:18s ease-in-out infinite alternate login-drift;position:fixed;inset:0}@keyframes login-drift{0%{filter:hue-rotate();transform:scale(1)}to{filter:hue-rotate(8deg);transform:scale(1.03)}}.login-shell{flex-direction:column;gap:1.25rem;width:min(440px,100%);display:flex}.login-brand{align-items:center;gap:.9rem;padding:0 .15rem;animation:.55s both login-rise;display:flex}.login-brand-mark{background:var(--hb-orange);border-radius:14px;flex:none;place-items:center;width:52px;height:52px;transition:transform .35s;display:grid;overflow:hidden;box-shadow:0 10px 28px #f1510a47}.login-brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.login-page.is-ready .login-brand-mark{animation:4.5s ease-in-out infinite login-mark}@keyframes login-mark{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.login-brand-name{font-family:"Montserrat", var(--font);letter-spacing:-.03em;color:var(--login-ink);margin:0;font-size:clamp(1.55rem,4vw,1.85rem);font-weight:800;line-height:1.05}.login-panel{background:var(--login-surface);border:1px solid var(--login-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;padding:1.35rem 1.35rem 1.45rem;animation:.65s 60ms both login-rise}@keyframes login-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.login-tabs{background:#133c580f;border-radius:12px;grid-template-columns:1fr 1fr;gap:0;margin-bottom:1.25rem;padding:4px;display:grid;position:relative}.login-tabs button{z-index:1;color:var(--login-muted);font:inherit;background:0 0;border:0;border-radius:9px;padding:.65rem .5rem;font-size:.92rem;font-weight:600;transition:color .2s;position:relative}.login-tabs button.is-active{color:var(--login-ink)}.login-tab-indicator{pointer-events:none;background:#fff;border-radius:9px;width:calc(50% - 4px);height:calc(100% - 8px);transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;top:4px;left:4px;box-shadow:0 1px 2px #12253614,0 4px 12px #1225360f}.login-title{font-family:"Montserrat", var(--font);letter-spacing:-.02em;margin:0 0 1.15rem;font-size:1.35rem;font-weight:700}.login-forgot-row{justify-content:flex-end;margin-top:-.25rem;display:flex}.login-forgot-btn{font:inherit;color:var(--login-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:.86rem;font-weight:600}.login-forgot-btn:hover{color:var(--login-orange);text-underline-offset:3px;text-decoration:underline}.login-modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1225366b;place-items:center;padding:1.25rem;animation:.25s both login-rise;display:grid;position:fixed;inset:0}.login-modal{border:1px solid var(--login-line);background:#fff;border-radius:16px;width:min(400px,100%);padding:1.25rem 1.25rem 1.35rem;box-shadow:0 16px 40px #1225362e}.login-modal h2{font-family:"Montserrat", var(--font);margin:0;font-size:1.15rem;font-weight:700}.login-modal-lead{color:var(--login-muted);margin:.4rem 0 1rem;font-size:.9rem;line-height:1.4}.login-modal-actions{grid-template-columns:1fr 1.4fr;gap:.6rem;margin-top:.25rem;display:grid}.login-modal-cancel{border:1px solid var(--login-line);font:inherit;color:var(--login-ink);cursor:pointer;background:#fff;border-radius:11px;font-weight:600}.login-modal-cancel:hover{background:#133c580a}.login-lead,.login-switch{display:none}.login-form{flex-direction:column;gap:.9rem;display:flex}.login-fields{flex-direction:column;gap:.75rem;display:flex}.login-field{flex-direction:column;gap:.35rem;display:flex}.login-field>span{color:var(--login-muted);letter-spacing:.01em;font-size:.8rem;font-weight:600}.login-field input{border:1px solid var(--login-line);width:100%;font:inherit;color:var(--login-ink);background:#fff;border-radius:10px;outline:none;padding:.78rem .9rem;font-size:.98rem;transition:border-color .2s,box-shadow .2s,transform .2s}.login-field input::placeholder{color:#9aa8b3}.login-field input:hover{border-color:#133c5847}.login-field input:focus{border-color:#f1510a8c;box-shadow:0 0 0 3px #f1510a24}.login-password{position:relative}.login-password input{padding-right:5.2rem}.login-eye{color:var(--login-muted);font:inherit;background:0 0;border:0;border-radius:6px;padding:.35rem .5rem;font-size:.78rem;font-weight:600;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.login-eye:hover{color:var(--login-ink);background:#133c580f}.login-alert,.login-error{border-radius:10px;padding:.7rem .85rem;font-size:.88rem;line-height:1.35}.login-alert{color:#8a3b00;background:#fff4e8;border:1px solid #f0d2b0}.login-error{color:#a11d1d;background:#fff1f1;border:1px solid #f0c4c4;animation:.35s login-shake}@keyframes login-shake{0%,to{transform:translate(0)}30%{transform:translate(-4px)}60%{transform:translate(3px)}}.login-submit{font:inherit;color:#fff;background:linear-gradient(180deg, #ff6a2a 0%, var(--login-orange) 55%, #d94708 100%);cursor:pointer;border:0;border-radius:11px;margin-top:.15rem;padding:.9rem 1rem;font-size:.98rem;font-weight:700;transition:transform .18s,filter .18s,box-shadow .18s;box-shadow:0 8px 20px #f1510a47}.login-submit:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.login-submit .is-busy{opacity:.92}.login-switch{text-align:center;color:var(--login-muted);margin:1rem 0 0;font-size:.9rem}.login-switch button{color:var(--login-orange);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.login-switch button:hover{text-underline-offset:3px;text-decoration:underline}@media (width<=480px),(device-width<=480px){.login-panel{padding:1.15rem 1.05rem 1.25rem}.login-brand-mark{width:46px;height:46px}}.login-card,.login-hero,.login-body{display:contents}.empty{text-align:center;color:var(--hb-muted);padding:2.5rem 1rem}.tabs{flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;display:flex}.tab{border:1px solid var(--hb-line);background:#fff;border-radius:999px;padding:.45rem .9rem;font-size:.85rem;font-weight:600}.tab.active{background:var(--hb-orange);border-color:var(--hb-orange);color:#fff}.toast{background:var(--hb-navy);color:#fff;box-shadow:var(--hb-shadow);z-index:60;border-radius:8px;max-width:360px;padding:.85rem 1rem;position:fixed;bottom:1rem;right:1rem}.toast.ok{background:var(--hb-green)}.toast.err{background:#b91c1c}.mobile-top,.bottom-nav{display:none}.sidebar-close{color:#fff;justify-content:center;min-width:2.5rem;min-height:2.5rem;margin-left:auto;padding:.4rem;display:none}.settings-hint{color:var(--hb-muted);max-width:42rem;margin:.35rem 0 0;font-size:.85rem;line-height:1.4}.nav-access-table-wrap{-webkit-overflow-scrolling:touch;margin:0 -.25rem;padding:0 .25rem;overflow-x:auto}.nav-access-table th,.nav-access-table td{text-align:center;white-space:nowrap}.nav-access-table th:first-child,.nav-access-table td:first-child{text-align:left;z-index:1;background:#fff;position:sticky;left:0}.nav-access-check{width:5.5rem}.nav-access-label{justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;margin:0 auto;display:inline-flex}.nav-access-label input{width:1.15rem;height:1.15rem;accent-color:var(--hb-orange)}html.is-phone{--bottom-nav-h:64px;--sidebar-w:280px}html.is-phone .app-shell{padding-bottom:var(--bottom-nav-h);grid-template-columns:1fr;max-width:100%;overflow-x:hidden}html.is-phone .sidebar{z-index:58;width:min(300px,88vw);max-width:320px;height:100dvh;padding:1rem .85rem 1.25rem;padding-bottom:max(1.25rem, env(safe-area-inset-bottom));transition:transform .22s;position:fixed;inset:0 auto 0 0;overflow:auto;transform:translate(-105%)}html.is-phone .sidebar.open{transform:translate(0)}html.is-phone .sidebar-close{display:inline-flex}html.is-phone .main{padding:0 .85rem calc(1.25rem + var(--bottom-nav-h));max-width:100%;overflow-x:hidden}html.is-phone .backdrop{z-index:57;background:#0006;position:fixed;inset:0}html.is-phone .bottom-nav{z-index:56;height:auto;min-height:64px;padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));border-top:1px solid var(--hb-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;justify-content:space-around;align-items:stretch;gap:.15rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #133c5814}html.is-phone .bottom-nav-item{min-width:0;color:var(--hb-muted);font:inherit;text-align:center;background:0 0;border:0;border-radius:8px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:.2rem;padding:.25rem .2rem;font-size:.62rem;font-weight:700;line-height:1.15;text-decoration:none;display:flex}html.is-phone .bottom-nav-item span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}html.is-phone .bottom-nav-item.active,html.is-phone .bottom-nav-item.is-active{color:var(--hb-orange)}html.is-phone .bottom-nav-item.active{background:var(--hb-orange-soft)}html.is-phone .page-sticky{padding:max(.35rem, env(safe-area-inset-top,0px)) .85rem .55rem;background:#f7f5f2;margin:0 -.85rem .65rem;top:0}html.is-phone .page-sticky:before{inset:0}html.is-phone .page-head{gap:.65rem;margin-bottom:.9rem}html.is-phone .page-head h1{font-size:1.35rem}html.is-phone .panel{min-width:0;max-width:100%}html.is-phone .panel:not(.panel-table):has(.table-wrap){overflow-x:hidden}html.is-phone .table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%;margin:0 -.85rem;padding:0 .85rem;overflow:auto visible}html.is-phone .table-wrap table.data{min-width:560px}html.is-phone .main>div:has(>.page-sticky):has(>.panel-table)>.panel.panel-table{overflow:auto}html.is-phone .main>div:has(>.page-sticky):has(>.panel-table) .table-wrap{margin:0;padding:0;overflow:visible}html.is-phone .th-filter-panel{max-width:min(280px,100vw - 1.5rem)}html.is-phone .tl-toolbar-actions .btn-primary,html.is-phone .tl-toolbar-actions .btn-secondary{min-width:1.65rem;padding-left:.35rem;padding-right:.35rem;font-size:.95rem;line-height:1}@media (width<=900px),(device-width<=900px){:root{--bottom-nav-h:64px;--sidebar-w:280px}.app-shell{padding-bottom:var(--bottom-nav-h);grid-template-columns:1fr;max-width:100%;overflow-x:hidden}.sidebar{z-index:58;width:min(300px,88vw);max-width:320px;height:100dvh;padding:1rem .85rem 1.25rem;padding-bottom:max(1.25rem, env(safe-area-inset-bottom));transition:transform .22s;position:fixed;inset:0 auto 0 0;overflow:auto;transform:translate(-105%)}.sidebar.open{transform:translate(0)}.sidebar-close{display:inline-flex}.nav a{min-height:2.85rem;padding:.8rem .95rem;font-size:.95rem}.mobile-top{display:none!important}.main{padding:0 .85rem calc(1.25rem + var(--bottom-nav-h));max-width:100%;overflow-x:hidden}.main>:first-child:not(.page-sticky){margin-top:max(.35rem, env(safe-area-inset-top,0px))}.main>.tl{margin-top:0}.page-sticky{padding:max(.35rem, env(safe-area-inset-top,0px)) .85rem .55rem;background:#f7f5f2;margin:0 -.85rem .65rem;top:0}.page-sticky:before{inset:0}.page-head{gap:.65rem;margin-bottom:.9rem}.page-head h1{font-size:1.35rem}.stats{grid-template-columns:repeat(2,1fr);gap:.65rem}.stat{padding:.85rem .9rem}.stat .value{font-size:1.45rem}.toolbar{gap:.45rem}.toolbar .btn,.page-head .btn{min-height:2.6rem;padding:.55rem .85rem}.form-grid{grid-template-columns:1fr;gap:.75rem}.field input,.field select,.field textarea,.panel input,.panel select,.panel textarea{min-height:2.75rem;font-size:16px}.table-wrap{-webkit-overflow-scrolling:touch;margin:0 -.85rem;padding:0 .85rem;overflow-x:auto}.table-wrap table.data{min-width:560px}.tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.4rem;margin-left:-.15rem;margin-right:-.15rem;padding-bottom:.15rem;padding-left:.15rem;padding-right:.15rem;overflow-x:auto}.tab{flex:none;min-height:2.55rem;padding:.55rem 1rem}.modal{width:min(100vw - 1rem,520px);max-height:min(92dvh,900px);margin:.5rem}.modal header,.modal .footer{flex-wrap:wrap;gap:.5rem}.modal .footer .btn{flex:auto;min-height:2.7rem}.settings-section-head{flex-direction:column;align-items:stretch}.nav-access-table{min-width:520px}.scroll-top-btn{right:.85rem;bottom:calc(var(--bottom-nav-h) + 1rem)}.toast{left:.75rem;right:.75rem;bottom:calc(var(--bottom-nav-h) + .75rem);max-width:none}.backdrop{z-index:57;background:#0006;position:fixed;inset:0}.bottom-nav{z-index:56;height:auto;min-height:64px;padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));border-top:1px solid var(--hb-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;justify-content:space-around;align-items:stretch;gap:.15rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #133c5814}.bottom-nav-item{min-width:0;color:var(--hb-muted);font:inherit;text-align:center;background:0 0;border:0;border-radius:8px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:.2rem;padding:.25rem .2rem;font-size:.62rem;font-weight:700;line-height:1.15;text-decoration:none;display:flex}.bottom-nav-item span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav-item.active,.bottom-nav-item.is-active{color:var(--hb-orange)}.bottom-nav-item.active{background:var(--hb-orange-soft)}}@media (width<=480px),(device-width<=480px){.main{padding-left:.7rem;padding-right:.7rem}.page-sticky,.tl-sticky-stack{margin-left:-.7rem;margin-right:-.7rem;padding-left:.7rem;padding-right:.7rem}.page-head h1{font-size:1.25rem}.btn-sm{min-height:2.4rem}.panel.panel-pad{padding:.85rem}}@media (width<=900px),(device-width<=900px){.tl-sticky-stack{padding:max(.35rem, env(safe-area-inset-top,0px)) .85rem .15rem;background:#f7f5f2;margin:0 -.85rem .2rem;top:0}.tl-sticky-stack:before{z-index:0;inset:0}.tl-sticky-stack>.tl-chrome{background:#f7f5f2}.tl-chrome{flex-direction:column;gap:.35rem;padding:.1rem 0 .15rem;display:flex}.tl-page-head{min-width:0;margin:0}.tl-page-head h1{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:800;line-height:1.15;overflow:hidden}.tl-mobile-hint{display:none}.tl-toolbar{flex-wrap:nowrap;align-items:center;gap:.2rem;width:100%;min-width:0;max-width:100%;margin:0;padding:0;display:flex;overflow:hidden visible}.tl-toolbar::-webkit-scrollbar{display:none}.tl-toolbar-actions{border:0;flex:none;gap:.2rem;margin:0;padding:0;display:inline-flex}.tl-toolbar-cluster{flex-wrap:nowrap;flex:auto;align-items:center;gap:.2rem;min-width:0;max-width:100%;display:flex}.tl-toolbar-section{flex-wrap:nowrap;align-items:center;gap:.15rem;min-width:0;padding:0;display:inline-flex}.tl-toolbar-section+.tl-toolbar-section,.tl-toolbar-actions+.tl-toolbar-cluster{border-left:none;margin-left:0;padding-left:0}.tl-toolbar-cluster .tl-toolbar-section+.tl-toolbar-section{margin-left:0}.tl-toolbar-actions{display:none!important}.tl-toolbar-dates{flex:0 auto;gap:.15rem;min-width:0}.tl-toolbar-zoom{flex:none;margin-left:.25rem;margin-right:.15rem;padding-right:0}.tl-toolbar .btn,.tl-toolbar-actions .btn{flex:none;justify-content:center;min-height:1.7rem;padding:.15rem .3rem;font-size:.7rem;font-weight:700}.tl-toolbar .tl-label-full{display:none}.tl-toolbar .tl-label-short{display:inline}.tl-filter{min-width:0;color:var(--hb-navy);flex:0 auto;gap:.12rem;font-size:.68rem;font-weight:700}.tl-filter-label{white-space:nowrap;flex:none;line-height:1;display:inline}.tl-filter input{box-sizing:border-box;font-variant-numeric:tabular-nums;letter-spacing:-.03em;border-radius:6px;width:10ch;min-width:0;max-width:10ch;min-height:1.7rem;padding:.08rem .18rem;font-size:16px}.tl-reset-dates{display:none!important}.tl-toolbar .tl-zoom{flex:none;gap:.2rem;margin-left:0}.tl-zoom-btn{box-sizing:border-box;width:1.55rem;min-width:1.55rem;height:1.7rem;min-height:1.7rem;padding:0;font-size:1rem;font-weight:800;line-height:1;overflow:visible}.tl-zoom-label{font-variant-numeric:tabular-nums;width:auto;min-width:2rem;min-height:1.7rem;color:var(--hb-navy);justify-content:center;align-items:center;padding:0 .15rem;font-size:.58rem;font-weight:700;display:inline-flex}.tl-date{box-sizing:border-box;height:100%;min-height:0;max-height:100%;padding:.15rem .2rem}.tl-date-num{font-size:.72rem;font-weight:800}.tl-date-dow{font-size:.62rem}.tl-corner{font-size:.72rem}.tl-person{padding:.25rem .2rem;font-size:.68rem}.tl-block{touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tl-block.is-dragging{touch-action:none}.tl-board,.tl-grid,.tl-head,.tl-lanes,.tl-cell,.tl-date,.tl-block *,.tl-block :before,.tl-block :after{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tl-block .tl-block-input{-webkit-user-select:text;user-select:text}.tl-handle{display:none}.tl-block.is-schedule-edit .tl-handle{height:18px;display:block}.tl-block.is-schedule-edit .tl-handle:after{opacity:.85;height:4px}}.tl-mobile-hint{display:none}.tl{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%}@media (width>=901px) and (device-width>=901px){.tl-chrome{display:block}.tl-toolbar{flex-wrap:wrap;align-items:center;gap:.4rem 0;margin-bottom:.45rem;padding:.25rem 0 .45rem;display:flex}.tl-toolbar-cluster{flex-wrap:wrap;flex:auto;align-items:center;gap:0;min-width:0;display:inline-flex}.tl-toolbar-section{flex-wrap:nowrap;flex:none;align-items:center;gap:.35rem;min-width:0;padding:.1rem .15rem;display:inline-flex}.tl-toolbar-section+.tl-toolbar-section,.tl-toolbar-actions+.tl-toolbar-cluster{border-left:1px solid var(--hb-line);margin-left:.55rem;padding-left:.65rem}.tl-toolbar-cluster .tl-toolbar-section+.tl-toolbar-section{margin-left:.55rem}.tl-page-head{margin-bottom:.55rem}.tl-page-head h1{letter-spacing:-.03em;color:var(--hb-navy);margin:0;font-size:1.65rem;font-weight:800}}.tl-label-short{display:none}.tl-label-full{display:inline}@media (width>=901px) and (width<=1199px) and (device-width>=901px){.tl-toolbar{flex-wrap:wrap;row-gap:.45rem}.tl-toolbar-cluster{scrollbar-width:none;flex-wrap:nowrap;flex:100%;justify-content:flex-start;overflow-x:auto}.tl-toolbar-cluster::-webkit-scrollbar{display:none}.tl-toolbar-actions+.tl-toolbar-cluster{border-left:none;border-top:1px solid var(--hb-line);margin-left:0;padding-top:.35rem;padding-left:0}}@media (width>=1200px){.tl-toolbar{flex-wrap:nowrap}.tl-toolbar-cluster{flex-wrap:nowrap;flex:auto;justify-content:flex-end;min-width:0}}html.is-phone .tl-chrome{flex-direction:column;gap:.35rem;padding:.1rem 0 .15rem;display:flex}html.is-phone .tl-page-head{min-width:0;margin:0}html.is-phone .tl-page-head h1{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;color:var(--hb-navy);margin:0;font-size:.95rem;font-weight:800;line-height:1.15;overflow:hidden}html.is-phone .tl-mobile-hint{display:none}html.is-phone .tl-toolbar{flex-wrap:nowrap;align-items:center;gap:0 .15rem;width:100%;min-width:0;max-width:100%;margin:0;padding:0;display:flex;overflow:hidden visible}html.is-phone .tl-toolbar::-webkit-scrollbar{display:none}html.is-phone .tl-toolbar-actions{border:0;flex:none;gap:.2rem;margin:0;padding:0;display:inline-flex}html.is-phone .tl-toolbar-cluster{scrollbar-width:none;flex-wrap:nowrap;flex:auto;justify-content:flex-start;align-items:center;gap:.2rem;min-width:0;max-width:100%;display:flex;overflow-x:auto}html.is-phone .tl-toolbar-cluster::-webkit-scrollbar{display:none}html.is-phone .tl-toolbar-section{flex-wrap:nowrap;flex:none;align-items:center;gap:.15rem;min-width:0;padding:0;display:inline-flex}html.is-phone .tl-toolbar-section+.tl-toolbar-section,html.is-phone .tl-toolbar-actions+.tl-toolbar-cluster{border-top:none;border-left:none;margin-left:0;padding-top:0;padding-left:0}html.is-phone .tl-toolbar-cluster .tl-toolbar-section+.tl-toolbar-section{margin-left:0}html.is-phone .tl-toolbar-actions{display:none!important}html.is-phone .tl-toolbar-dates{flex:0 auto;gap:.15rem;min-width:0}html.is-phone .tl-toolbar-zoom{flex:none;margin-left:.25rem;margin-right:.15rem;padding-right:0}html.is-phone .tl-toolbar .btn{flex:none;justify-content:center;min-height:1.7rem;padding:.15rem .3rem;font-size:.7rem;font-weight:700}html.is-phone .tl-toolbar .tl-label-full{display:none}html.is-phone .tl-toolbar .tl-label-short{display:inline}html.is-phone .tl-filter{min-width:0;color:var(--hb-navy);flex:0 auto;gap:.12rem;font-size:.68rem;font-weight:700}html.is-phone .tl-filter-label{white-space:nowrap;flex:none;line-height:1;display:inline}html.is-phone .tl-filter input{box-sizing:border-box;font-variant-numeric:tabular-nums;letter-spacing:-.03em;border-radius:6px;width:10ch;min-width:0;max-width:10ch;min-height:1.7rem;padding:.08rem .18rem;font-size:16px}html.is-phone .tl-reset-dates{display:none!important}html.is-phone .tl-toolbar .tl-zoom{flex:none;gap:.2rem;margin-left:0}html.is-phone .tl-zoom-btn{box-sizing:border-box;width:1.55rem;min-width:1.55rem;height:1.7rem;min-height:1.7rem;padding:0;font-size:1rem;font-weight:800;line-height:1;overflow:visible}html.is-phone .tl-zoom-label{font-variant-numeric:tabular-nums;width:auto;min-width:2rem;min-height:1.7rem;color:var(--hb-navy);justify-content:center;align-items:center;padding:0 .15rem;font-size:.58rem;font-weight:700;display:inline-flex}.tl-sticky-stack{z-index:40;background:#f7f5f2;max-width:100%;margin:0 0 .35rem;padding:1.5rem 0 .35rem;position:sticky;top:0;overflow:visible;box-shadow:0 8px 12px -6px #f7f5f2}.tl-sticky-stack:before{content:"";z-index:0;pointer-events:none;background:#f7f5f2;position:absolute;inset:0 -2rem}.tl-sticky-stack>.tl-chrome{z-index:5;background:#f7f5f2;position:relative}.tl-sticky-stack>.tl-head{z-index:2;background:#fff;position:relative}.tl-filter{color:var(--hb-navy);align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;display:inline-flex}.tl-filter input{border:1px solid var(--hb-line);border-radius:var(--hb-radius);font:inherit;background:#fff;padding:.4rem .5rem}@media (width>=901px) and (device-width>=901px){.tl-filter input{width:7.2rem}}.tl-zoom{align-items:center;gap:.2rem;display:inline-flex}@media (width>=901px) and (device-width>=901px){.tl-zoom-btn{-webkit-text-stroke:.45px currentColor;min-width:2rem;font-size:1.15rem;font-weight:900;line-height:1}.tl-zoom-label{font-variant-numeric:tabular-nums;min-width:3.4rem;color:var(--hb-navy);font-weight:700}}.tl.is-zoom-out .tl-date{gap:.1rem;min-height:0;max-height:100%;padding:0 .1rem;overflow:hidden}.tl.is-zoom-out .tl-date-num{font-size:.62rem}.tl.is-zoom-out .tl-date-dow{font-size:.58rem}.tl.is-zoom-tiny .tl-date{gap:.08rem;padding:0 .08rem}.tl.is-zoom-tiny .tl-date-num{font-size:.55rem}.tl.is-zoom-tiny .tl-date-dow{font-size:.52rem}.tl-date.tl-sticky-date{height:100%;min-height:0;max-height:var(--tl-row-h,100%);box-sizing:border-box}.tl.is-zoom-out .tl-block-meta{font-size:.65rem}.tl.is-zoom-out .tl-block{border-radius:7px}.tl-board{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;background:#fff;width:100%;min-width:0;max-width:100%;overflow:auto visible}.tl-head{box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;background:#fff;border:1px solid #d8d4ce;border-bottom:0;border-radius:8px 8px 0 0;width:100%;min-width:0;max-width:100%;display:grid;overflow:auto hidden;box-shadow:0 1px #d0c8bf}.tl-head::-webkit-scrollbar{height:0;display:none}.tl-board.panel{border-top:0;border-radius:0 0 8px 8px;overflow:auto visible}.tl-grid{box-sizing:border-box;border:1px solid #d8d4ce;border-top:0;border-radius:0 0 8px 8px;width:max-content;min-width:100%;display:grid;position:relative}.tl-lanes{pointer-events:none;z-index:3;width:100%;display:grid;position:relative}.tl-corner,.tl-dept,.tl-person,.tl-add-col,.tl-date,.tl-cell{border-bottom:1px solid #e8e4de;border-right:1px solid #d8d4ce}.tl-corner{text-transform:uppercase;letter-spacing:.02em;color:var(--hb-navy);z-index:2;background:#efece7;justify-content:center;align-items:center;padding:.35rem .15rem;font-size:.72rem;font-weight:700;display:flex}.tl-dept{text-align:center;justify-content:center;align-items:center;min-height:34px;padding:.4rem .35rem;font-size:.88rem;font-weight:700;display:flex}.tl-dept-project{color:#2a1f3d;background:#d9c6f0}.tl-dept-build{color:#3a2418;background:#f6d5c4}.tl-dept-buy{color:#1a3324;background:#c5e4d2}.tl-dept-log{color:#1a2a3d;background:#c5d8ef}.tl-dept-special{color:#3a3010;background:#e8d9a8}.tl-dept-project-soft{background:#efe6f8}.tl-dept-build-soft{background:#fbeee6}.tl-dept-buy-soft{background:#e7f5ee}.tl-dept-log-soft{background:#e8f0f8}.tl-dept-special-soft{background:#f5efd8}.tl-dept-picker{z-index:45;width:100%;margin:.05rem 0 .15rem;position:relative}.tl-dept-picker.is-open{z-index:80}.tl-dept-picker-trigger{width:100%;min-height:2.4rem;font:inherit;letter-spacing:-.01em;cursor:pointer;text-align:left;border:1px solid #1a1a1a1f;border-radius:10px;align-items:center;gap:.5rem;padding:.4rem .7rem;font-size:.88rem;font-weight:700;display:flex;box-shadow:0 1px #133c580f}.tl-dept-picker-trigger:hover{filter:brightness(.98)}.tl-dept-picker-swatch{opacity:.38;background:currentColor;border-radius:999px;flex:none;width:.65rem;height:.65rem}.tl-dept-picker-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tl-dept-picker-chevron{opacity:.65;flex:none;font-size:.78rem;line-height:1;transition:transform .15s}.tl-dept-picker.is-open .tl-dept-picker-chevron{transform:rotate(180deg)}.tl-dept-picker-menu{border:1px solid var(--hb-line);z-index:90;background:#fff;border-radius:12px;flex-direction:column;gap:.28rem;margin:0;padding:.35rem;list-style:none;display:flex;position:absolute;top:calc(100% + .3rem);left:0;right:0;box-shadow:0 14px 32px #133c5829}.tl-dept-picker-option{width:100%;min-height:2.25rem;font:inherit;cursor:pointer;text-align:left;border:1px solid #0000;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .6rem;font-size:.84rem;font-weight:700;display:flex}.tl-dept-picker-option:hover{filter:brightness(.97)}.tl-dept-picker-option.is-active{border-color:#133c5859;box-shadow:inset 0 0 0 1px #133c581f}.tl-head.is-single-dept .tl-person,.tl-head.is-single-dept .tl-add-col{border-top:0}.tl-person{text-align:center;color:#1a1a1a;cursor:pointer;flex-direction:column;justify-content:center;align-items:stretch;min-width:0;min-height:48px;padding:.2rem .15rem;font-size:.78rem;font-weight:700;line-height:1.15;display:flex;position:relative;overflow:hidden}.tl-person .tl-fit-box{flex:auto;width:100%;height:100%;min-height:2.4em}.tl-person-name{color:#1a1a1a;text-align:center;font-weight:700}.tl-person:hover{filter:brightness(.97)}.tl-add-col{color:#555;cursor:pointer;appearance:none;border-top:0;border-bottom:1px solid #e8e4de;border-left:0;border-right:1px solid #d8d4ce;place-items:center;min-width:0;min-height:48px;padding:0;font-size:1.1rem;font-weight:700;display:grid}.tl-add-col:hover{filter:brightness(.97);color:var(--hb-orange)}.tl-person-menu{z-index:80;border:1px solid var(--hb-line);background:#fff;border-radius:8px;min-width:180px;max-width:min(22rem,100vw - 1rem);padding:.25rem;position:fixed;box-shadow:0 10px 28px #133c582e}.tl-ctx-menu{z-index:85}.tl-person-menu-item{text-align:left;width:100%;font:inherit;color:var(--hb-navy);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:.55rem;padding:.5rem .7rem;font-size:.88rem;font-weight:600;display:flex}.tl-ctx-menu-count{cursor:default;color:var(--hb-muted);padding-top:.35rem;padding-bottom:.15rem;font-size:.75rem;font-weight:700}.tl-ctx-menu-count:hover{background:0 0}.tl-person-menu-item svg{opacity:.85;color:var(--hb-navy);flex:none}.tl-person-menu-item.is-danger svg{color:#b91c1c}.tl-person-menu-item:hover{background:#f3f0ea}.tl-person-menu-item.is-danger{color:#b91c1c}.tl-person-menu-item.is-danger:hover{background:#fef2f2}@media (width<=900px),(device-width<=900px){.tl-block,.tl-cell{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tl-ctx-menu .tl-person-menu-item,.tl-person-menu .tl-person-menu-item{min-height:2.75rem;padding:.7rem .85rem;font-size:.95rem}}.tl-sticky-date{z-index:4;background:#faf8f5;position:sticky;left:0}.tl-date{font-variant-numeric:tabular-nums;color:#222;background:#faf8f5;flex-direction:row;justify-content:center;align-items:center;gap:.2rem;min-width:0;padding:.1rem .15rem;display:flex;overflow:hidden}.tl-date-num{color:#222;white-space:nowrap;font-size:.68rem;font-weight:700;line-height:1}.tl-date-dow{color:#555;text-transform:lowercase;white-space:nowrap;flex:none;font-size:.62rem;font-weight:600;line-height:1}.tl-date.is-weekend,.tl-cell.is-weekend{background:#ececec}.tl-date.is-weekend{background:#e8e8e8}.tl-cell.is-weekend:hover{background:#e2e2e2}.tl-date.is-today,.tl-cell.is-today{box-shadow:inset 0 2px #f7b6c8,inset 0 -2px #f7b6c8}.tl-date.is-today{box-shadow:inset 2px 0 #f7b6c8,inset 0 2px #f7b6c8,inset 0 -2px #f7b6c8}.tl-cell.is-today.is-last-col{box-shadow:inset -2px 0 #f7b6c8,inset 0 2px #f7b6c8,inset 0 -2px #f7b6c8}.tl-cell{background:#fff}.tl-cell:hover{background:#fbf7f2}.tl-cell-add{background:#fafafa}.tl-empty{text-align:center;color:var(--hb-muted);padding:2rem 1rem}.tl-lane{border-right:1px solid #d8d4ce;height:100%}.tl-lane:last-child{border-right:0}.tl-block{pointer-events:auto;cursor:grab;-webkit-user-select:none;user-select:none;z-index:5;touch-action:pan-x pan-y;background:#cfe8f7;border:1.5px solid #3a3a3a;border-radius:10px;flex-direction:column;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px #0000000f}.tl-block.is-dragging{opacity:.92;cursor:grabbing;z-index:7;touch-action:none;box-shadow:0 8px 22px #133c582e}.tl-block.is-selected{outline:2px solid var(--hb-orange);outline-offset:1px}.tl-block.is-move-ready{outline:2px dashed var(--hb-orange);outline-offset:2px;z-index:9;touch-action:pan-x pan-y;box-shadow:0 8px 22px #f1510a47}.tl-move-banner{left:.65rem;right:.65rem;bottom:calc(.65rem + var(--bottom-nav-h,0px) + env(safe-area-inset-bottom,0px));z-index:88;border:1px solid var(--hb-line);color:var(--hb-navy);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;font-size:.88rem;font-weight:700;display:flex;position:fixed;box-shadow:0 12px 32px #133c582e}.tl-block.is-conflict{outline-offset:1px;outline:2px solid #dc2626;background:#fecaca!important;border-color:#b91c1c!important}.tl-block.is-conflict .tl-block-object{background:#ffffff59}.tl-block-body{text-align:center;z-index:1;flex-direction:column;flex:1;justify-content:stretch;align-items:stretch;gap:0;height:100%;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.tl-block-top{background:#ffffff47;border-bottom:1px solid #3a3a3a38;flex:none;grid-template-columns:7fr 3fr;min-height:1.35em;max-height:36%;display:grid}.tl-block-section{flex-direction:column;justify-content:center;align-items:stretch;width:100%;min-height:0;padding:.12rem .25rem;display:flex;overflow:hidden}.tl-block-object{text-align:left;border-right:0}.tl-block-object .tl-fit-box{justify-content:flex-start;align-items:center}.tl-block-object .tl-fit-box.is-single-line{overflow:hidden}.tl-block-object .tl-block-project{text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tl-block-days{text-align:right;justify-content:center;align-items:flex-end;min-width:0}.tl-block-meta{color:#4a5560;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex:none;width:100%;font-size:.72rem;font-weight:700;line-height:1.1}.tl-block-process{text-align:center;flex:auto;justify-content:center;align-items:stretch;min-height:0;padding:.15rem .3rem}.tl-fit-box{justify-content:center;align-items:center;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.tl-fit-box>span{letter-spacing:normal;flex:0 auto;max-width:100%;max-height:100%;font-stretch:100%!important;transform:none!important}.tl-block-title,.tl-block-project{color:#111;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;max-width:100%;font-weight:700;font-stretch:100%;line-height:1.2;transform:none}.tl-block-project{color:#2a3540;opacity:.95;font-weight:600}.tl-block.is-compact .tl-block-body{flex-direction:column}.tl-block.is-compact .tl-block-top{max-height:none}.tl-block-input{width:100%;font:inherit;text-align:center;background:#fff;border:1px solid #9ab;border-radius:6px;padding:.2rem .3rem;font-size:.8rem;font-weight:700}.tl-handle{cursor:ns-resize;z-index:2;background:0 0;border:0;height:7px;padding:0;position:absolute;left:0;right:0}.tl-handle-start{top:0}.tl-handle-end{bottom:0}.tl-handle:after{content:"";opacity:0;background:#5a6a74;border-radius:2px;height:3px;position:absolute;top:50%;left:22%;right:22%;transform:translateY(-50%)}.tl-block:hover .tl-handle:after,.tl-block.is-selected .tl-handle:after{opacity:.75}.tl-block.is-schedule-edit{outline:2px solid var(--hb-orange);outline-offset:2px;z-index:8}.tl-schedule-sheet{z-index:90;border:1px solid var(--hb-line);-webkit-overflow-scrolling:touch;background:#fff;border-radius:14px;width:min(22rem,100vw - 1.3rem);padding:.75rem .85rem .85rem;position:fixed;overflow:auto;box-shadow:0 16px 40px #133c5838}.tl-schedule-sheet:not(.tl-anchored-sheet){width:auto;left:.65rem;right:.65rem;bottom:calc(.65rem + var(--bottom-nav-h,0px) + env(safe-area-inset-bottom,0px))}.tl-schedule-sheet-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.tl-schedule-sheet-head strong{color:var(--hb-navy);font-size:.95rem}.tl-schedule-sheet-title{color:var(--hb-muted);white-space:nowrap;text-overflow:ellipsis;margin:0 0 .65rem;font-size:.8rem;overflow:hidden}.tl-schedule-row{grid-template-columns:5.5rem 2.4rem 1fr 2.4rem;align-items:center;gap:.35rem;margin-bottom:.4rem;display:grid}.tl-schedule-row-label{color:var(--hb-navy);font-size:.78rem;font-weight:700}.tl-schedule-row-value{text-align:center;font-variant-numeric:tabular-nums;color:var(--hb-ink);font-size:.88rem;font-weight:700}.tl-schedule-step{justify-content:center;min-width:2.4rem;min-height:2.4rem;padding:0;font-size:1.15rem;font-weight:800}.tl-project-sheet{z-index:92;border:1px solid var(--hb-line);background:#fff;border-radius:14px;flex-direction:column;width:min(22rem,100vw - 1.3rem);height:auto;max-height:min(70vh,28rem);padding:.75rem .85rem .85rem;display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 40px #133c5838}.tl-project-sheet:not(.tl-anchored-sheet){width:auto;left:.65rem;right:.65rem;bottom:calc(.65rem + var(--bottom-nav-h,0px) + env(safe-area-inset-bottom,0px))}.tl-anchored-sheet{height:auto;bottom:auto;left:auto;right:auto}.tl-project-sheet-head{flex:none;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.15rem;display:flex}.tl-project-sheet-head strong{color:var(--hb-navy);font-size:.95rem}.tl-project-sheet-lead{color:var(--hb-muted);flex:none;margin:0 0 .55rem;font-size:.78rem}.tl-project-sheet-list{-webkit-overflow-scrolling:touch;flex-direction:column;flex:0 auto;gap:.15rem;min-height:0;margin:0 -.15rem;padding:.1rem .15rem .25rem;display:flex;overflow-y:auto}.tl-project-sheet-empty{color:var(--hb-muted);text-align:center;padding:.85rem .65rem;font-size:.82rem;line-height:1.35}.tl-project-sheet-item{text-align:left;width:100%;min-height:2.65rem;font:inherit;color:var(--hb-navy);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;padding:.65rem .75rem;font-size:.92rem;font-weight:600;display:flex}.tl-project-sheet-item:hover{background:#f3f0ea}.tl-project-sheet-item.is-active{color:var(--hb-orange,#d97706);background:#fff4e8;box-shadow:inset 0 0 0 1px #d9770647}.tl-project-sheet-other{border-top:1px solid var(--hb-line);color:var(--hb-muted);border-radius:0 0 8px 8px;flex:none;margin-top:.25rem;font-weight:700}.tl-project-sheet-other:hover{color:var(--hb-navy)}.tl-project-sheet-custom{flex-direction:column;gap:.65rem;padding-top:.15rem;display:flex}.tl-project-sheet-input{border:1px solid var(--hb-line);width:100%;min-height:2.75rem;font:inherit;color:var(--hb-ink);background:#faf8f5;border-radius:8px;padding:.65rem .75rem;font-size:1rem}.tl-project-sheet-input:focus{outline-offset:1px;border-color:var(--hb-orange,#d97706);background:#fff;outline:2px solid #d9770659}.tl-project-sheet-custom-actions{justify-content:flex-end;gap:.45rem;display:flex}@media (width>=901px) and (device-width>=901px){.tl-project-sheet:not(.tl-anchored-sheet){width:min(22rem,100vw - 2.5rem);bottom:1.25rem;left:auto;right:1.25rem}}.warehouse-page{flex-direction:column;gap:1rem;display:flex}.warehouse-mode-toggle{border:1px solid var(--hb-line);border-radius:8px;gap:0;width:fit-content;margin-bottom:.5rem;display:inline-flex;overflow:hidden}.warehouse-mode-btn{appearance:none;color:var(--hb-navy);font:inherit;cursor:pointer;background:#fff;border:0;padding:.55rem 1.1rem;font-weight:600}.warehouse-mode-btn+.warehouse-mode-btn{border-left:1px solid var(--hb-line)}.warehouse-mode-btn.is-active{background:var(--hb-orange);color:#fff}.warehouse-cell.is-free-zone{border-style:dashed}.warehouse-unit-card{border:1px solid var(--hb-orange);background:#fff;border-radius:8px;margin-top:0;padding:.65rem .7rem}.warehouse-unit-card.is-move-armed{border-color:var(--hb-navy);box-shadow:0 0 0 2px #133c582e}.warehouse-unit-card-top{grid-template-columns:112px minmax(0,1fr);align-items:start;gap:.55rem;display:grid}.warehouse-unit-card-thumb{appearance:none;border:1px solid var(--hb-line);width:112px;height:112px;color:inherit;background:#f0ebe4;border-radius:8px;flex:none;place-items:center;padding:0;display:grid;overflow:hidden}.warehouse-unit-card-thumb.is-clickable{cursor:zoom-in}.warehouse-unit-card-thumb:disabled{cursor:default}.warehouse-unit-card-thumb img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.warehouse-unit-card-thumb-empty{color:var(--hb-muted);text-align:center;padding:.25rem;font-size:.62rem;font-weight:600;line-height:1.2}.warehouse-unit-card-meta{min-width:0}.warehouse-unit-card-head{justify-content:space-between;align-items:flex-start;gap:.35rem;display:flex}.warehouse-unit-card-name{appearance:none;text-align:left;cursor:pointer;color:var(--hb-navy);font:inherit;text-overflow:ellipsis;-webkit-line-clamp:2;background:0 0;border:0;-webkit-box-orient:vertical;flex:auto;min-width:0;margin:0;padding:0;font-size:.95rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.warehouse-unit-card-name.is-expanded{-webkit-line-clamp:unset;white-space:normal;display:block;overflow:visible}.warehouse-unit-card-head .btn{flex:none;margin:-.15rem -.25rem 0 0}.warehouse-photo-lightbox{z-index:80;overscroll-behavior:none;background:#0a1016e0;place-items:center;padding:2.5rem 1rem 1.25rem;display:grid;position:fixed;inset:0}.warehouse-photo-lightbox-close{top:max(.65rem, env(safe-area-inset-top));right:max(.65rem, env(safe-area-inset-right));color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:999px;place-items:center;width:2.5rem;height:2.5rem;display:grid;position:absolute}.warehouse-photo-lightbox-close:hover{background:#ffffff3d}.warehouse-photo-lightbox-img{object-fit:contain;background:#111;border-radius:8px;width:auto;max-width:min(100%,560px);height:auto;max-height:min(78vh,720px);box-shadow:0 16px 48px #00000073}.warehouse-unit-card-codes{grid-template-columns:1fr 1fr;gap:.25rem .5rem;margin:.35rem 0 0;display:grid}.warehouse-unit-card-codes div{min-width:0}.warehouse-unit-card-codes dt{color:var(--hb-muted);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:.82rem;font-weight:700}.warehouse-unit-card-codes dd{margin:.08rem 0 0;font-size:1.05rem}.warehouse-unit-card-codes code{color:var(--hb-navy);font-size:1.08rem;font-weight:700}.warehouse-unit-card-loc{color:var(--hb-muted);margin:.4rem 0 0;font-size:.95rem}.warehouse-unit-card-loc strong{color:var(--hb-ink);font-size:1rem}.warehouse-unit-card-move-hint{color:var(--hb-navy);background:#eef4f8;border-radius:6px;margin:.45rem 0 0;padding:.35rem .5rem;font-size:.78rem;font-weight:600}.warehouse-unit-card-body{min-width:0}.warehouse-unit-card-actions{z-index:1;background:#fff;flex-wrap:wrap;flex:none;gap:.45rem;margin-top:.55rem;display:flex;position:relative}.warehouse-unit-card-actions .btn{flex:1 1 0;justify-content:center;min-width:7.5rem}.warehouse-unit-card-actions .btn.is-active-move{border-color:var(--hb-navy);color:var(--hb-navy);box-shadow:inset 0 0 0 1px var(--hb-navy)}.warehouse-page h2{color:var(--hb-navy);margin:0 0 1rem;font-size:1.08rem}.warehouse-stack{gap:1rem;display:grid}.warehouse-cells{flex-direction:column;gap:.85rem;display:flex}.warehouse-cell-row{flex-wrap:nowrap;gap:.65rem;width:100%;min-width:0;display:flex}.warehouse-cell{border:1px solid var(--hb-line);background:var(--hb-surface,#fff);cursor:pointer;border-radius:7px;flex:1 1 0;min-width:0;padding:.75rem;transition:border-color .15s,box-shadow .15s}.warehouse-cell:not(.is-open){box-sizing:border-box;min-height:84px;max-height:84px;overflow:hidden}.warehouse-cell.is-selected{border-color:var(--hb-orange);box-shadow:0 0 0 2px var(--hb-orange-soft)}.warehouse-cell-modal-meta{color:var(--hb-muted);margin:.2rem 0 0;font-size:.85rem}.warehouse-unit-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:stretch;gap:.75rem;display:grid!important}.nomenclature-add-body .warehouse-unit-list{margin:0;padding:0;list-style:none}.nomenclature-add-body .warehouse-product-card.is-square{border:1px solid var(--hb-line);background:#fff;border-radius:8px;flex-direction:column;align-items:stretch;gap:.5rem;min-height:0;margin:0;padding:.65rem;display:flex;overflow:visible}.warehouse-product-card.is-square .warehouse-product-photo{aspect-ratio:1;border-radius:6px;flex:none;width:100%;height:auto}.warehouse-product-card.is-square .warehouse-product-body{flex-direction:column;flex:auto;gap:.3rem;min-width:0;min-height:0;display:flex}.warehouse-product-card.is-square .warehouse-product-body strong{-webkit-line-clamp:2;min-height:2.1em;color:var(--hb-navy);-webkit-box-orient:vertical;font-size:.82rem;line-height:1.25;display:-webkit-box;overflow:hidden}.warehouse-product-card.is-square .warehouse-product-body code{color:var(--hb-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;display:block;overflow:hidden}.nomenclature-add-body .warehouse-product-card.is-square .warehouse-row-actions,.nomenclature-add-body .warehouse-product-card.is-square .warehouse-move-controls{gap:.4rem;width:100%;margin-top:.4rem;grid-template-columns:1fr!important;display:grid!important}.nomenclature-add-body .warehouse-product-card.is-square .warehouse-row-actions .btn,.nomenclature-add-body .warehouse-product-card.is-square .warehouse-move-controls .btn{white-space:nowrap;justify-content:center;width:100%;min-width:0;min-height:2.15rem;display:inline-flex}.nomenclature-add-body .warehouse-product-card.is-square .warehouse-move-controls select{width:100%;min-width:0}.warehouse-cell-empty{color:var(--hb-muted);margin:.5rem 0;display:block}.warehouse-cell-title{align-items:center;gap:.35rem;min-width:0;display:flex}.warehouse-cell-title strong{flex:none;font-size:.95rem}.warehouse-cell-title .warehouse-cell-type{min-width:0;color:var(--hb-muted);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.78rem;font-style:normal;font-weight:600;overflow:hidden}.warehouse-cell-title .warehouse-cell-count{flex:none;margin-left:auto}.warehouse-cell .warehouse-cell-count{white-space:nowrap;border-radius:999px;align-items:center;margin:0;padding:.18rem .42rem;font-size:.75rem;font-weight:700;display:inline-flex}.warehouse-cell .warehouse-cell-count.has-items{background:var(--hb-orange-soft);color:var(--hb-orange)}.warehouse-cell .warehouse-cell-count.is-empty{color:#7a8791;background:#e8ecef}.warehouse-cell .warehouse-cell-storage{color:var(--hb-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.42rem;font-size:.78rem;line-height:1.25;display:block;overflow:hidden}.warehouse-cell-category{background:#eef4f8;border-radius:999px;width:fit-content;padding:.2rem .45rem;font-weight:600;color:var(--hb-navy)!important;margin-top:.5rem!important;display:inline-flex!important}.warehouse-cell-detail{border-top:1px dashed var(--hb-line);margin-top:10px;padding-top:10px}.warehouse-cell-detail h3{margin:0 0 8px;font-size:.9rem}.warehouse-cell-purpose{color:var(--hb-navy);background:#f5f7f9;border-radius:6px;padding:.55rem .65rem;line-height:1.35;margin:0 0 .75rem!important}.warehouse-cell-detail ul{margin:0 0 10px;padding:0;list-style:none}.warehouse-cell-detail li{border:1px solid var(--hb-line);background:#fafbfc;border-radius:7px;grid-template-columns:minmax(0,1fr);align-items:center;gap:.65rem;margin-bottom:.5rem;padding:.65rem;display:grid}.warehouse-cell-detail li.warehouse-product-card{grid-template-columns:76px minmax(0,1fr);align-items:start}.warehouse-product-photo{border:1px solid var(--hb-line);background:#fff;border-radius:7px;place-items:center;width:76px;height:76px;display:grid;overflow:hidden}.warehouse-product-photo img{object-fit:contain;width:100%;height:100%}.warehouse-product-photo span{color:var(--hb-muted);text-align:center;margin:0;padding:.25rem;font-size:.7rem}.warehouse-product-body{min-width:0}.warehouse-product-body>strong{color:var(--hb-navy);display:block}.warehouse-cell-detail .warehouse-row-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:.55rem}.warehouse-unit-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.warehouse-unit-main strong{text-overflow:ellipsis;white-space:nowrap;color:var(--hb-navy);overflow:hidden}.warehouse-move-controls{grid-column:1/-1;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:.5rem;display:grid}.warehouse-move-controls select{min-width:0}.warehouse-cell-detail small,.warehouse-cell-detail code{color:var(--hb-muted);font-size:.75rem}.warehouse-cell strong{color:var(--hb-orange)}.warehouse-cell span,.warehouse-cell small{color:var(--hb-muted);margin-top:.2rem;font-size:.78rem;display:block}.warehouse-cell p{margin:.65rem 0 .45rem;font-size:.87rem}.warehouse-cell ul{margin:0 0 .55rem;padding-left:1.15rem;font-size:.8rem}.warehouse-cell-form{border-top:3px solid var(--hb-orange)}.warehouse-cell-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.warehouse-cell-form-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.warehouse-cell-form-head h2,.warehouse-cell-form-head p{margin:0}.warehouse-cell-form-head p{color:var(--hb-muted);margin-top:.3rem;font-size:.85rem}.warehouse-cell-form-primary{grid-template-columns:minmax(130px,.65fr) minmax(150px,.8fr) minmax(220px,1.35fr) minmax(200px,1fr);align-items:start;gap:.85rem;display:grid}.warehouse-code-field input{letter-spacing:.04em;text-transform:uppercase;font-size:1.1rem;font-weight:800}.warehouse-code-field small{margin-top:.35rem;line-height:1.3}.warehouse-parent-picker{border:1px solid var(--hb-line);background:#fff;border-radius:8px;width:100%;min-height:41px;padding:.2rem .35rem}.warehouse-parent-picker .th-filter-row{width:100%}.warehouse-parent-picker-btn{width:100%;min-height:33px;color:var(--hb-navy);text-transform:none;letter-spacing:0;flex:auto;justify-content:space-between}.warehouse-parent-picker-btn .th-filter-chip{max-width:none;font-size:.82rem}.warehouse-parent-picker-empty{color:var(--hb-muted);text-transform:none;letter-spacing:0;font-size:.78rem;font-weight:700}.warehouse-parent-picker.is-active{border-color:color-mix(in srgb, var(--hb-orange) 55%, var(--hb-line))}.warehouse-cell-form-more{border-top:1px solid var(--hb-line);margin-top:.85rem;padding-top:.7rem}.warehouse-cell-form-more summary{width:fit-content;color:var(--hb-navy);cursor:pointer;font-size:.85rem;font-weight:700}.warehouse-cell-form-more .form-grid{margin-top:.8rem}@media (width<=820px){.warehouse-cell-detail li,.warehouse-cell-form-primary{grid-template-columns:1fr}.warehouse-cell-detail li.warehouse-product-card{grid-template-columns:64px minmax(0,1fr)}.warehouse-product-photo{width:64px;height:64px}.warehouse-row-actions{flex-wrap:wrap;justify-content:flex-start}.warehouse-move-controls{grid-template-columns:1fr 1fr}.warehouse-move-controls select{grid-column:1/-1}}.warehouse-actions{flex-wrap:wrap;justify-content:flex-start;gap:.5rem;margin-top:1rem;display:flex}.nomenclature-add-body .warehouse-actions{border-top:1px solid var(--hb-line);padding-top:.75rem}.warehouse-hint{color:#8a3b00;background:#fff4e8;border:1px solid #f0d2b0;margin:.85rem 0 0;padding:.65rem .75rem;font-size:.85rem;line-height:1.4}.warehouse-tool-list{border:1px solid var(--hb-line);border-radius:6px;flex-direction:column;gap:.5rem;margin:1rem 0 0;padding:.85rem;display:flex}.warehouse-tool-list legend{color:var(--hb-muted);padding:0 .35rem;font-size:.8rem;font-weight:700}.warehouse-tool-list label{align-items:center;gap:.5rem;font-size:.88rem;display:flex}.warehouse-status{border-radius:999px;padding:.2rem .55rem;font-size:.76rem;font-weight:700;display:inline-flex}.warehouse-status.status-Передано{color:#8a3b00;background:#fff4e8}.warehouse-status.status-Принято{color:#1a6334;background:#e7f5ee}.warehouse-status.status-Черновик{color:#3f4d57;background:#eceff2}.warehouse-scan-steps{flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.warehouse-scan-steps li{color:#5c5c5c;background:#eceff2;border-radius:999px;padding:6px 10px;font-size:.85rem}.warehouse-scan-steps li.is-active{background:var(--hb-orange-soft);color:var(--hb-navy);font-weight:700}.warehouse-scan-steps li.is-done{color:#1a6334;background:#e7f5ee}.warehouse-scan-cell-preview{border-top:1px solid var(--hb-line);margin-top:14px;padding-top:12px}.warehouse-scan-cell-item{justify-content:space-between;align-items:center;gap:8px;display:flex}.warehouse-queue-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.warehouse-queue-head h2{margin:0}.warehouse-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.warehouse-scan-queue-pick{margin-top:8px}.warehouse-scan-queue-list{flex-direction:column;gap:8px;display:flex}.warehouse-scan-queue-list .btn{text-align:left;white-space:normal;justify-content:flex-start;gap:10px;height:auto;min-height:40px;padding:8px 12px}.warehouse-scan-queue-list code{color:var(--hb-navy,#133c58);flex:none;font-weight:700}.warehouse-unit-id{opacity:.75;font-size:.85em}.warehouse-scan{flex-direction:column;gap:.75rem;display:flex}.warehouse-scan-title{margin:0}.warehouse-scan-camera{min-width:0}.warehouse-scan-dock{flex-direction:column;gap:.65rem;min-width:0;display:flex}.warehouse-scan-controls-host{flex-direction:column;gap:.55rem;display:flex}.warehouse-scan-dock .warehouse-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:0}.warehouse-scan-dock .warehouse-unit-card{margin-top:0}.qr-scanner{flex-direction:column;gap:10px;display:flex}.qr-scanner--viewport-only{gap:0}.qr-scanner-viewport{aspect-ratio:3/4;background:#111;border-radius:12px;width:min(100%,420px);margin:0 auto;position:relative;overflow:hidden}.qr-scanner-video{object-fit:cover;width:100%;height:100%}.qr-scanner-idle{color:#9aa4ad;text-align:center;place-content:center;gap:8px;height:100%;display:grid}.qr-scanner-frame{pointer-events:none;border:2px solid #f1510ad9;border-radius:12px;position:absolute;inset:18% 16%;box-shadow:0 0 0 999px #00000047}.qr-scanner-status{max-width:420px;color:var(--hb-navy);word-break:break-all;margin:0 auto;font-size:.9rem;font-weight:600}.warehouse-scan-controls-host .qr-scanner-status{max-width:none;margin:0;font-size:.82rem}.qr-scanner-manual{align-items:stretch;gap:8px;width:100%;max-width:420px;margin:0 auto;display:flex}.warehouse-scan-controls-host .qr-scanner-manual{max-width:none;margin:0}.qr-scanner-manual input{border:1px solid var(--hb-line);border-radius:var(--hb-radius);min-width:0;font:inherit;flex:auto;padding:8px 10px}.qr-scanner-manual-submit{letter-spacing:.04em;flex:none;min-width:4.5rem;font-weight:700}html.is-phone .main:has(.warehouse-page.is-scanner-mode){overscroll-behavior:none;touch-action:manipulation;padding:0;padding-bottom:var(--bottom-nav-h);flex-direction:column;display:flex;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode{overscroll-behavior:none;touch-action:manipulation;flex:auto;gap:0;height:100%;min-height:0;max-height:100%;margin:0;padding:0 .55rem;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode>.page-sticky{padding:max(.15rem, env(safe-area-inset-top,0px)) .55rem .25rem;flex:none;margin:0 -.55rem}html.is-phone .warehouse-page.is-scanner-mode .page-head{display:none}html.is-phone .warehouse-page.is-scanner-mode .warehouse-mode-toggle{width:100%;margin-bottom:0}html.is-phone .warehouse-page.is-scanner-mode .warehouse-mode-btn{flex:1 1 0;padding:.35rem .65rem;font-size:.88rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan{--wh-cam-h:clamp(210px, 36svh, 300px);grid-template-rows:var(--wh-cam-h) minmax(0, 1fr);overscroll-behavior:none;border-radius:10px;flex:auto;grid-template-columns:minmax(0,1fr);gap:0;min-height:0;margin:0;padding:0;display:grid;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.is-idle .warehouse-scan-dock{flex-direction:column;justify-content:flex-end;min-height:0;display:flex;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.has-unit{grid-template-rows:var(--wh-cam-h) minmax(0, 1fr)}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-title{display:none}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-camera{background:#111;flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-camera .qr-scanner{flex-direction:column;gap:0;width:100%;max-width:none;height:100%;min-height:0;margin:0;display:flex}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-camera .qr-scanner-viewport{aspect-ratio:auto;border-radius:0;flex:auto;width:100%;max-width:none;height:100%;min-height:0;margin:0}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.is-idle .qr-scanner-manual{background:0 0;border-top:0;flex:none;width:100%;max-width:none;margin:0;padding:0}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.is-idle .qr-scanner-manual input{flex:auto;width:auto;min-width:0}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.is-idle .qr-scanner .warehouse-hint{flex:none;margin:0;padding:.35rem .55rem}html.is-phone .warehouse-page.is-scanner-mode .qr-scanner-frame{inset:12% 14%}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-dock{overscroll-behavior:none;background:var(--hb-surface);border-top:1px solid var(--hb-line);gap:.5rem;min-height:0;padding:.55rem .65rem;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-notice{flex:none;margin:0;padding:.4rem .55rem;font-size:.82rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card{flex-direction:column;flex:auto;gap:.35rem;min-height:0;max-height:none;padding:.55rem .5rem .5rem;display:flex;overflow:auto}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-body{flex-direction:column;flex:auto;gap:.35rem;min-height:0;display:flex;overflow:visible}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-top{flex:none;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:.55rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-thumb{border-radius:10px;align-self:start;width:112px;height:112px}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-meta{flex-direction:column;gap:.15rem;min-width:0;display:flex}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-name{-webkit-line-clamp:3;font-size:1.05rem;line-height:1.3}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-codes{gap:.35rem .55rem;margin-top:.35rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-codes dt{font-size:.88rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-codes dd{font-size:1.12rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-codes code{font-size:1.18rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-loc{margin:.35rem 0 0;font-size:1.02rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-loc strong{font-size:1.08rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-move-hint{flex:none;margin:0;padding:.3rem .45rem;font-size:.8rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-actions{border-top:1px solid var(--hb-line);flex:none;gap:.45rem;margin-top:.45rem;padding-top:.45rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-unit-card-actions .btn{min-width:0;min-height:2.55rem;padding-left:.55rem;padding-right:.55rem;font-size:1rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-controls-host{flex:none;gap:.4rem;min-height:0}html.is-phone .warehouse-page.is-scanner-mode .qr-scanner-status{white-space:nowrap;text-overflow:ellipsis;max-height:1.3em;font-size:.8rem;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .qr-scanner-manual input{min-height:2.6rem;padding:10px 12px;font-size:1.05rem}html.is-phone .warehouse-page.is-scanner-mode .qr-scanner-manual-submit{min-width:5rem;min-height:2.6rem;font-size:1rem}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan.has-unit .warehouse-scan-dock{flex-direction:column;justify-content:flex-start;gap:.5rem;padding:.55rem .65rem;display:flex;overflow:hidden}html.is-phone .warehouse-page.is-scanner-mode .warehouse-scan-controls-host .warehouse-hint{max-height:3.2rem;margin:0;padding:.4rem .55rem;font-size:.82rem;overflow:hidden}html.is-phone .main:has(.warehouse-page.is-scanner-mode) .toast{bottom:calc(var(--bottom-nav-h) + .5rem);max-width:none;max-height:28vh;left:.75rem;right:.75rem;overflow:hidden}.label-composer-panel{flex-direction:column;gap:14px;display:flex}.label-composer-head h2{margin:0 0 4px}.label-composer-layout{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:start;gap:16px;display:grid}.label-composer-left{flex-direction:column;gap:12px;min-width:0;display:flex}.label-composer-right{flex-direction:column;gap:10px;display:flex;position:sticky;top:12px}.label-composer-search{border:1px solid var(--hb-line);border-radius:var(--hb-radius);background:var(--hb-surface);flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.label-composer-search input{font:inherit;color:var(--hb-ink);background:0 0;border:0;outline:none;flex:1}.label-composer-board{background:linear-gradient(#fff 0%,#f7f9fb 100%);border:1px dashed #b7c2cc;border-radius:8px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff}.label-composer-board.is-dragover{border-color:var(--hb-orange);box-shadow:0 0 0 3px var(--hb-orange-soft)}.label-composer-board-inner{box-sizing:border-box;flex-direction:column;gap:0;height:100%;padding:10px;display:flex}.label-composer-board-empty{text-align:center;color:var(--hb-muted);letter-spacing:.04em;text-transform:uppercase;flex:1;place-items:center;padding:16px;font-size:.95rem;font-weight:700;display:grid}.label-composer-board-meta{color:#8a96a3;font-size:.7rem;position:absolute;bottom:6px;right:8px}.label-composer-actions{justify-content:stretch;margin:0}.label-composer-actions .btn{flex:1}.label-board-row{flex:1;align-items:stretch;gap:0;min-height:0;display:flex}.label-board-row.cols-1>.label-board-slot,.label-board-row.cols-2>.label-board-slot{flex:1}.label-board-cut-h{border-top:1.5px dashed #8a96a3;height:0;margin:4px 0}.label-board-cut-v{border-left:1.5px dashed #8a96a3;align-self:stretch;width:0;margin:0 4px}.label-board-slot{background:#fff;border:1px solid #e4e8ec;border-radius:6px;align-items:stretch;min-width:0;display:flex;position:relative}.label-board-slot-body{flex:1;align-items:center;gap:8px;min-width:0;padding:6px 8px;display:flex}.label-board-slot.is-qr .label-board-slot-body{flex-direction:column;justify-content:center;align-items:center;gap:4px}.label-board-qr{aspect-ratio:1;object-fit:contain;flex-shrink:0;width:auto;max-width:45%;height:72%;max-height:88px}.label-board-slot.is-qr .label-board-qr{max-width:68%;height:62%;max-height:72px}.label-board-qr-loading{background:#eceff2;border-radius:4px;min-width:48px;min-height:48px}.label-board-name{color:var(--hb-navy);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.85rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.label-board-code{color:var(--hb-orange,#f1510a);margin-top:4px;font-family:Consolas,Courier New,monospace;font-size:.78rem;font-weight:700;display:block}.label-board-code-only{text-align:center;letter-spacing:.04em;margin-top:0;font-size:.72rem}.label-board-handle{cursor:ew-resize;opacity:.55;background:repeating-linear-gradient(#0000 0 3px,#c5ced6 3px 5px);flex-shrink:0;width:10px}.label-board-handle:hover{opacity:1;background-color:var(--hb-orange-soft)}.label-board-remove{color:#6b7785;cursor:pointer;background:#fff;border:0;border-radius:999px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:2px;right:2px;box-shadow:0 1px 4px #0000001f}.label-board-remove:hover{color:#b91c1c}.label-composer-catalog{min-height:0;max-height:412px;padding-right:2px;overflow:hidden auto}.label-catalog-empty{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.75rem .25rem;display:flex}.label-catalog-empty p{margin:0}.label-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;display:grid}.label-catalog-card{border:1px solid var(--hb-line);background:var(--hb-surface);cursor:grab;text-align:left;height:200px;color:inherit;font:inherit;border-radius:8px;flex-direction:column;padding:0;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}.label-catalog-card:hover{box-shadow:var(--hb-shadow);border-color:#c5ced6}.label-catalog-card:active{cursor:grabbing}.label-catalog-card-media{background:#eef1f4;flex:0 0 70%;min-height:0;position:relative}.label-catalog-card-media img,.label-catalog-card-placeholder{object-fit:contain;background:#f3f5f7;width:100%;height:100%;position:absolute;inset:0}.label-catalog-card-caption{color:var(--hb-navy);-webkit-line-clamp:3;box-sizing:border-box;-webkit-box-orient:vertical;flex:0 0 30%;padding:8px 10px;font-size:.8rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.label-drag-ghost{border:1px solid var(--hb-navy);color:var(--hb-navy);background:#fff;border-radius:6px;align-items:center;gap:8px;max-width:180px;padding:6px 10px;font:700 12px/1.2 Montserrat,Arial,sans-serif;display:flex;box-shadow:0 8px 20px #133c582e}.label-drag-ghost img{width:36px;height:36px}.label-drag-ghost span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=900px){.label-composer-layout{grid-template-columns:1fr}.label-composer-right{width:100%;max-width:280px;margin:0 auto;position:static}}.searchable-select{width:100%;position:relative}.searchable-select-trigger{border:1px solid var(--hb-line);border-radius:var(--hb-radius);width:100%;min-height:43px;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;background:#fff;align-items:center;padding:.55rem .75rem;font-weight:600;display:flex}.searchable-select-trigger:disabled{opacity:.6;cursor:not-allowed}.searchable-select-trigger .is-placeholder{color:var(--hb-muted);font-weight:500}.searchable-select.is-open .searchable-select-trigger{border-color:var(--hb-orange);outline:2px solid var(--hb-orange-soft)}.searchable-select-panel{z-index:40;border:1px solid var(--hb-line);background:#fff;border-radius:10px;flex-direction:column;max-height:280px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 10px 28px #133c581f}.searchable-select-search{border:0;border-bottom:1px solid var(--hb-line);width:100%;font:inherit;box-sizing:border-box;padding:.7rem .75rem;font-weight:600}.searchable-select-search:focus{background:#fff8f3;outline:none}.searchable-select-options{max-height:220px;overflow:auto}.searchable-select-option{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:.65rem .75rem;font-weight:600;display:block}.searchable-select-option:hover,.searchable-select-option.is-active{background:var(--hb-orange-soft);color:var(--hb-navy,#133c58)}.searchable-select-empty{color:var(--hb-muted);padding:.85rem .75rem;font-size:.9rem}.dash-dept-tasks-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.dash-dept-tasks{border-top:1px solid var(--hb-line);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;display:grid}.dash-dept-task{border-right:1px solid var(--hb-line);border-bottom:1px solid var(--hb-line);flex-direction:column;gap:.35rem;min-width:0;padding:.95rem 1.1rem 1.05rem;display:flex}.dash-dept-task:last-child{border-right:none}.dash-dept-task-label{letter-spacing:.02em;border-radius:4px;align-self:flex-start;padding:.2rem .45rem;font-size:.72rem;font-weight:700;line-height:1.2;display:inline-flex}.dash-dept-task-title{color:var(--hb-ink);width:100%;font-size:.95rem;font-weight:700;line-height:1.3}.dash-dept-task-lines{flex-direction:column;gap:.3rem;margin-top:.15rem;display:flex}.dash-dept-task-line{color:var(--hb-muted);align-items:flex-start;gap:.4rem;max-width:100%;font-size:.82rem;line-height:1.35;display:flex}.dash-dept-task-line>span:last-child{word-break:break-word;min-width:0}.dash-dept-task-emoji{text-align:center;flex:0 0 1.25em;width:1.25em;font-size:.95em;line-height:1.35}.dash-dept-task-due{color:var(--hb-navy,#133c58);margin-top:.1rem;font-weight:700}.dash-dept-task-due.is-overdue{color:#b91c1c}.dash-dept-task-empty{color:var(--hb-muted);padding:.35rem 0 .15rem;font-size:.85rem}@media (width<=720px){.dash-dept-tasks{grid-template-columns:1fr}.dash-dept-task{border-right:none}}
