.crm-page{--crm-column-bg: var(--panel-2);--crm-card-bg: var(--panel);--crm-line: var(--border);--crm-muted: var(--muted);display:flex;flex-direction:column;gap:14px;min-width:0}.crm-crumbs{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);min-height:18px}.crm-topline{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.crm-topline-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end;min-width:240px}.crm-topline-right .crm-search{max-width:360px}.sort-ind{font-size:9px;opacity:.6}.crm-crumbs a{color:var(--text);text-decoration:none}.crm-crumbs a:hover{color:var(--accent-strong);text-decoration:none}.crm-crumbs .sep{opacity:.45}.crm-crumbs .current{color:var(--text);font-weight:600}.crm-head{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}.crm-head-main{flex:1;min-width:280px}.crm-stats{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.crm-stats .total{color:var(--text);font-weight:650}.crm-stat{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.crm-stat b{color:var(--text);font-weight:650;font-variant-numeric:tabular-nums}.crm-dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.crm-dot.work{background:#2f6fed}.crm-dot.pending{background:#d99a2b}.crm-dot.paid{background:#1a9769}.crm-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.crm-page .seg button{font-size:12.5px}.crm-page .seg button:disabled{opacity:.42;cursor:not-allowed}.crm-page .btn{font-size:12.5px}.crm-icon-btn{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;position:relative}.crm-page .crm-view-btn{height:34px;border-color:#10a97247;color:var(--accent-strong);background:var(--accent-soft);font-weight:600}.crm-page .crm-view-btn:hover{border-color:#10a97280;background:#1fc48933}.crm-view-btn svg{width:15px;height:15px}.crm-robots-btn svg{width:15px;height:15px;color:var(--accent-strong)}.crm-icon-btn .crm-unread{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:#e0623f;border:1.5px solid var(--panel)}.crm-search{position:relative;display:flex;align-items:center;gap:7px;height:34px;min-width:220px;flex:1;max-width:340px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--muted)}.crm-search:focus-within{border-color:#10a9728c;box-shadow:0 0 0 3px #1fc48921}.crm-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font:inherit;font-size:12.5px}.crm-search input::placeholder{color:var(--muted-2)}.crm-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.crm-chip{height:30px;padding:0 11px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--muted);font:inherit;font-size:11.5px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:.14s}.crm-chip:hover{color:var(--accent-strong);border-color:#10a97266}.crm-chip.active{background:var(--accent-soft);border-color:#10a97259;color:var(--accent-strong);font-weight:650}.crm-month{height:30px;border-radius:9px;border:1px solid var(--border);background:var(--panel);color:var(--muted);font:inherit;font-size:11.5px;padding:0 8px;outline:none}.crm-month:focus{border-color:#10a9728c}.crm-avatars{display:flex;gap:4px;align-items:center}.crm-ava{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:9px;font-weight:750;letter-spacing:.02em;border:2px solid var(--panel);cursor:pointer;-webkit-user-select:none;user-select:none;transition:.14s}.crm-ava:hover{transform:translateY(-1px)}.crm-ava.dim{filter:grayscale(1);opacity:.38}.crm-ava.xs{width:20px;height:20px;font-size:7.5px;border-width:0}.crm-ava.sm{width:23px;height:23px;font-size:8px;border-width:0}.crm-demo{display:inline-flex;align-items:center;gap:7px;padding:4px 9px;border-radius:8px;background:#d99a2b24;color:#a8720f;font-size:11px;font-weight:600}.crm-demo button{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:11px;text-decoration:underline;padding:0}.crm-nav-row{position:relative}.crm-nav-row>a{padding-right:32px!important}.crm-nav-pencil{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .13s,background .13s;z-index:2}.crm-nav-row:hover .crm-nav-pencil{opacity:.85}.crm-nav-pencil:hover{background:#ffffff1f;color:var(--accent);opacity:1}.crm-nav-pencil svg{width:12px;height:12px}.crm-nav-row.editing{padding:3px 6px}.crm-nav-input{width:100%;height:28px;border-radius:7px;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);padding:0 7px;font:inherit;font-size:12px;outline:none}.crm-nav-add{display:flex;align-items:center;gap:8px;width:100%;margin:4px 0 2px;padding:7px 12px;border-radius:9px;border:1px dashed var(--border-strong);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;transition:.14s}.crm-nav-add svg{width:13px;height:13px}.crm-nav-add:hover{color:var(--accent-strong);border-color:#10a9728c;background:var(--accent-soft)}.crm-board-shell{position:relative}.crm-board{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:10px 2px 18px;min-height:300px;scrollbar-width:none;-ms-overflow-style:none}.crm-board::-webkit-scrollbar{display:none}.crm-scroll-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:52px;height:96px;border:1px solid var(--border-strong);border-radius:16px;background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--text);display:grid;place-items:center;cursor:pointer;box-shadow:0 18px 40px #00000038;transition:opacity .16s ease,transform .16s ease,background .16s ease;animation:crm-arrow-in .16s ease-out}.crm-scroll-arrow.left{left:8px}.crm-scroll-arrow.right{right:8px}.crm-scroll-arrow:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff;transform:translateY(-50%) scale(1.04)}.crm-scroll-arrow svg{width:24px;height:24px}@keyframes crm-arrow-in{0%{opacity:0;transform:translateY(-50%) scale(.92)}to{opacity:1;transform:translateY(-50%) scale(1)}}.crm-hscroll{position:relative;height:12px;margin-top:2px;border-radius:999px;background:color-mix(in srgb,var(--border) 65%,transparent);cursor:pointer;touch-action:none}.crm-hscroll-thumb{position:absolute;top:1px;bottom:1px;min-width:28px;border-radius:999px;background:var(--accent-strong);opacity:.55;transition:opacity .15s ease,background .15s ease}.crm-hscroll:hover .crm-hscroll-thumb{opacity:.9}.crm-column{width:284px;flex:0 0 284px;background:var(--crm-column-bg);border:1px solid var(--crm-line);border-radius:16px;padding:9px;position:relative;transition:border-color .14s,box-shadow .14s}.crm-column.drag-over{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.crm-col-head{display:flex;align-items:flex-start;gap:4px;padding:2px 1px 8px}.crm-col-name-wrap{flex:1;min-width:0}.crm-col-name{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:650;line-height:1.3}.crm-col-name .txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-col-color{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.crm-col-count{margin-left:auto;flex:0 0 auto;font-size:10px;font-weight:650;color:var(--muted);background:var(--panel);border:1px solid var(--crm-line);border-radius:20px;padding:1px 7px}.crm-col-sum{margin-top:3px;font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-col-tools{display:flex;gap:1px;opacity:0;transition:opacity .13s;margin-top:-1px}.crm-column:hover .crm-col-tools{opacity:1}.crm-col-tool{width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.crm-col-tool:hover{background:var(--panel);color:var(--accent-strong)}.crm-col-tool svg{width:13px;height:13px}.crm-col-add{position:absolute;top:-11px;right:-11px;z-index:3;width:24px;height:24px;border-radius:50%;border:1px solid var(--border-strong);background:var(--panel);color:var(--muted);display:grid;place-items:center;cursor:pointer;opacity:0;transform:scale(.85);transition:.15s;box-shadow:0 4px 12px #0a140f1f}.crm-column:hover .crm-col-add{opacity:.95;transform:scale(1)}.crm-col-add:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff;opacity:1}.crm-col-add svg{width:13px;height:13px}.crm-col-body{display:flex;flex-direction:column;gap:7px;min-height:40px}.crm-col-empty{border:1px dashed var(--border-strong);border-radius:10px;padding:15px 8px;text-align:center;font:inherit;font-size:11px;color:var(--muted);background:transparent;cursor:pointer}.crm-col-empty:hover{color:var(--accent-strong);border-color:var(--accent-strong)}.crm-card{background:var(--crm-card-bg);border:1px solid var(--crm-line);border-radius:13px;padding:10px 11px 9px;cursor:grab;position:relative;box-shadow:0 1px 2px #0c18120a;transition:box-shadow .15s,transform .15s,border-color .15s}.crm-card:hover{border-color:var(--border-strong);box-shadow:0 8px 20px #0c181217;transform:translateY(-1px)}.crm-card.dragging{opacity:.42;transform:rotate(1deg)}.crm-card:active{cursor:grabbing}.crm-card-title{font-size:12.5px;font-weight:650;line-height:1.32;margin-bottom:3px;padding-right:13px}.crm-card-foot-right{margin-left:auto;display:inline-flex;align-items:center;gap:5px}.crm-card-foot-right .crm-ava{margin-left:0}.crm-card-link{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 6px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--muted);font:inherit;font-size:9.5px;cursor:pointer;white-space:nowrap;transition:.13s;flex:0 0 auto}.crm-card-link svg{width:11px;height:11px;opacity:1}.crm-card-link:hover{color:var(--accent-strong);border-color:#10a97273;background:var(--accent-soft)}.crm-card-cp{font-size:10.5px;color:var(--muted);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-card-amount{font-size:14px;font-weight:750;letter-spacing:-.015em;margin-bottom:6px;font-variant-numeric:tabular-nums}.crm-card-amount .cur{font-size:10px;font-weight:600;color:var(--muted);margin-left:2px}.crm-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.crm-tag{font-size:9.5px;line-height:1.4;padding:2px 6px;border-radius:5px;background:var(--panel-2);color:var(--muted);border:1px solid var(--crm-line);white-space:nowrap}.crm-tag.green{background:var(--accent-soft);color:var(--accent-strong);border-color:transparent}.crm-tag.amber{background:var(--warn-soft);color:var(--warn);border-color:transparent}.crm-tag.blue{background:var(--info-soft);color:var(--info);border-color:transparent}.crm-tag.red{background:var(--err-soft);color:var(--err);border-color:transparent}.crm-progress{height:4px;border-radius:3px;background:var(--panel-2);overflow:hidden;margin:2px 0 6px}.crm-progress i{display:block;height:100%;background:var(--accent-strong);border-radius:3px}.crm-card-foot{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--muted);margin-top:2px}.crm-card-foot svg{width:11px;height:11px;opacity:.7}.crm-card-foot .crm-ava{margin-left:auto}.crm-pay-dot{position:absolute;top:9px;right:9px;width:7px;height:7px;border-radius:50%}.crm-pay-dot.work{background:#2f6fed}.crm-pay-dot.pending{background:#d99a2b}.crm-pay-dot.paid{background:#1a9769}.crm-list-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.crm-list-toolbar .grow{flex:1}.crm-list-count{font-size:11px;color:var(--muted)}.crm-table-wrap{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:auto;max-height:calc(100vh - 280px);box-shadow:var(--shadow-card)}.crm-table{width:100%;border-collapse:separate;border-spacing:0;font-size:11.5px;min-width:900px}.crm-table th{position:sticky;top:0;z-index:2;background:var(--table-head-bg);text-align:left;font-size:9.5px;letter-spacing:.055em;text-transform:uppercase;color:var(--muted);font-weight:650;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.crm-table th:hover{color:var(--accent-strong)}.crm-table th.num{text-align:right}.crm-table td{padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.crm-table tbody tr{cursor:pointer}.crm-table tbody tr:hover td{background:#ffffff73}.crm-table tbody tr:last-child td{border-bottom:0}.crm-table td.num{text-align:right;font-variant-numeric:tabular-nums}.crm-table.density-compact td{padding:5px 12px}.crm-table.density-roomy td{padding:12px}.crm-cell-title{font-weight:600;font-size:12px;max-width:300px;overflow:hidden;text-overflow:ellipsis}.crm-cell-sub{font-size:10px;color:var(--muted);margin-top:1px}.crm-pay-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:650;padding:3px 7px;border-radius:6px;white-space:nowrap}.crm-pay-badge.work{background:var(--info-soft);color:var(--info)}.crm-pay-badge.pending{background:var(--warn-soft);color:var(--warn)}.crm-pay-badge.paid{background:var(--accent-soft);color:var(--accent-strong)}.crm-pay-badge .d{width:5px;height:5px;border-radius:50%;background:currentColor}.crm-stage-pill{display:inline-flex;align-items:center;gap:5px;font-size:10px;padding:3px 7px;border-radius:6px;background:var(--panel-2);border:1px solid var(--border);color:var(--muted)}.crm-stage-pill .d{width:5px;height:5px;border-radius:50%}.crm-overdue{color:var(--err)}.crm-menu-wrap{position:relative;display:inline-flex}.crm-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:70;min-width:255px;max-height:480px;overflow:auto;padding:7px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%)}.crm-menu.left{right:auto;left:0}.crm-menu-title{padding:7px 9px 5px;font-size:9.5px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:650}.crm-menu-note{padding:0 9px 7px;font-size:10.5px;color:var(--muted);line-height:1.4}.crm-menu-item{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:8px;font-size:12px;color:var(--text);cursor:pointer;border:0;background:transparent;width:100%;text-align:left}.crm-menu-item:hover{background:var(--panel-2)}.crm-check{width:16px;height:16px;border-radius:5px;border:1.5px solid var(--border-strong);display:grid;place-items:center;color:#fff;flex:0 0 auto;background:var(--panel)}.crm-check.on{background:var(--accent-strong);border-color:var(--accent-strong)}.crm-check svg{width:10px;height:10px;stroke-width:3}.crm-menu-sep{height:1px;background:var(--border);margin:6px 4px}.crm-menu-foot{display:flex;gap:6px;padding:6px 3px 2px}.crm-menu-foot .btn{flex:1}.crm-col-toggle{display:flex;align-items:center;gap:8px;padding:6px 9px;border-radius:8px;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.crm-col-toggle:hover{background:var(--panel-2)}.crm-col-toggle .arrows{margin-left:auto;display:flex;gap:1px}.crm-col-toggle .arrows button{width:20px;height:20px;border:0;background:transparent;color:var(--muted);border-radius:4px;cursor:pointer;display:grid;place-items:center;padding:0}.crm-col-toggle .arrows button:hover{background:var(--panel);color:var(--accent-strong)}.crm-col-toggle .arrows button:disabled{opacity:.25;cursor:default}.crm-col-toggle .arrows svg{width:11px;height:11px}.crm-notice-list{display:flex;flex-direction:column;gap:2px}.crm-notice{display:flex;gap:9px;align-items:flex-start;padding:8px 9px;border-radius:8px;cursor:pointer;border:0;background:transparent;width:100%;text-align:left}.crm-notice:hover{background:var(--panel-2)}.crm-notice.static{cursor:default}.crm-notice.static:hover{background:transparent}.crm-notice-icon{width:27px;height:27px;border-radius:8px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;flex:0 0 auto}.crm-notice-icon.warn{background:var(--warn-soft);color:var(--warn)}.crm-notice-icon.err{background:var(--err-soft);color:var(--err)}.crm-notice-icon svg{width:13px;height:13px}.crm-notice-title{font-size:11.5px;font-weight:650}.crm-notice-text{font-size:10.5px;color:var(--muted);line-height:1.35;margin-top:1px;white-space:normal}.crm-notice-time{font-size:9.5px;color:var(--muted-2);margin-top:2px}.crm-cp-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.crm-cp-search{position:relative;display:flex;align-items:center;gap:7px;height:34px;min-width:230px;max-width:340px;flex:1;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--muted)}.crm-cp-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font:inherit;font-size:12.5px}.crm-cp-name{display:flex;align-items:center;gap:9px}.crm-cp-logo{width:30px;height:30px;border-radius:9px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;font-size:10px;font-weight:750;flex:0 0 auto}.crm-prod-badges{display:flex;gap:4px}.crm-prod-badge{font-size:9.5px;font-weight:650;padding:2px 7px;border-radius:5px;background:var(--info-soft);color:var(--info)}.crm-prod-badge.rbu{background:var(--warn-soft);color:var(--warn)}.crm-row-actions{display:flex;gap:2px;justify-content:flex-end}.crm-row-actions button{width:26px;height:26px;border:0;background:transparent;border-radius:6px;color:var(--muted);cursor:pointer;display:grid;place-items:center;padding:0}.crm-row-actions button:hover{background:var(--panel-2);color:var(--accent-strong)}.crm-row-actions button.danger:hover{color:var(--err);background:var(--err-soft)}.crm-row-actions svg{width:14px;height:14px}.crm-ka-preview{grid-column:1 / -1;background:var(--accent-soft);border:1px solid rgba(16,169,114,.18);border-radius:10px;padding:9px 11px;font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:3px}.crm-ka-preview b{color:var(--text);font-size:12px}.crm-ka-preview .row{display:flex;gap:14px;flex-wrap:wrap;margin-top:2px}.crm-ka-preview .row span{display:inline-flex;align-items:center;gap:4px}.crm-ka-preview .row svg{width:11px;height:11px;opacity:.6}.crm-ka-preview .warn{color:var(--err);font-weight:600}.crm-swatches{display:flex;gap:7px;flex-wrap:wrap;padding:2px 0}.crm-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;background-clip:padding-box;display:grid;place-items:center}.crm-swatch.on{border-color:var(--text)}.crm-swatch svg{width:10px;height:10px;color:#fff;stroke-width:3.2}.crm-prod-chips{display:flex;gap:8px;flex-wrap:wrap}.crm-prod-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border-strong);border-radius:9px;font-size:12px;cursor:pointer;background:var(--panel);color:var(--text);-webkit-user-select:none;user-select:none}.crm-prod-chip.on{border-color:var(--accent-strong);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.crm-prod-chip .box{width:14px;height:14px;border:1.5px solid var(--border-strong);border-radius:4px;display:grid;place-items:center;color:#fff}.crm-prod-chip.on .box{background:var(--accent-strong);border-color:var(--accent-strong)}.crm-prod-chip .box svg{width:9px;height:9px;stroke-width:3.4}.crm-modal-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.crm-modal-form .span-2,.crm-modal-form .crm-ka-preview{grid-column:1 / -1}.crm-spec{display:flex;flex-direction:column;gap:16px}.crm-spec figure{margin:0}.crm-spec figcaption{font-size:12.5px;color:var(--muted);margin-bottom:8px}.crm-spec img{width:100%;display:block;border-radius:18px;border:1px solid var(--border);box-shadow:var(--shadow-card)}.crm-spec-note{background:var(--accent-soft);border:1px solid rgba(16,169,114,.18);border-radius:14px;padding:12px 15px;font-size:12px;color:var(--muted);line-height:1.5}.crm-empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:12.5px;background:var(--panel);border:1px dashed var(--border-strong);border-radius:16px}.crm-empty svg{width:28px;height:28px;opacity:.4;margin-bottom:8px}@media(max-width:1280px){.crm-column{width:268px;flex-basis:268px}}@media(max-width:760px){.crm-head{gap:10px}.crm-modal-form{grid-template-columns:1fr}.crm-modal-form .span-2{grid-column:span 1}}.crm-lines-section{grid-column:1 / -1;margin-top:4px;border-top:1px solid var(--border);padding-top:14px}.crm-lines-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:13px}.crm-lines-head b{font-weight:650}.crm-sale-status{font-size:10px;font-weight:650;padding:2px 7px;border-radius:5px;background:var(--panel-2);color:var(--muted)}.crm-sale-status.posted{background:var(--success-soft);color:var(--success)}.crm-sale-status.cancelled{background:var(--err-soft);color:var(--err)}.crm-lines-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.crm-lines-total{margin-left:auto;font-size:12px;color:var(--muted)}.crm-lines-total b{color:var(--text);font-weight:650}.crm-lines-empty{font-size:11.5px;color:var(--muted);padding:14px;background:var(--panel-2);border-radius:8px}.crm-lines-loading{padding:20px;display:grid;place-items:center}.crm-lines-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.crm-lines{width:100%;border-collapse:collapse;font-size:11.5px}.crm-lines th,.crm-lines td{padding:6px 7px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.crm-lines th{background:var(--panel-2);color:var(--muted);font-weight:600}.crm-lines td{background:var(--panel)}.crm-lines tr:last-child td{border-bottom:0}.crm-lines td.num{text-align:right;font-weight:650}.crm-line-qty{display:flex;align-items:center;gap:5px}.crm-line-unit{color:var(--muted);font-size:10.5px;min-width:22px}.crm-stock-low{color:var(--err);font-weight:650}.crm-robots-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:radial-gradient(120% 160% at 0% 0%,rgba(31,196,137,.13),transparent 55%),var(--panel)}.crm-robots-hero h2{margin:0 0 5px;font-size:17px;font-weight:700;letter-spacing:-.01em}.crm-robots-hero p{margin:0;max-width:640px;font-size:12px;line-height:1.5;color:var(--muted)}.crm-robots-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.crm-robots-stats{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.crm-robots-stats b{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.crm-robots-list{display:flex;flex-direction:column;gap:8px}.crm-robot{display:flex;align-items:center;gap:13px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);transition:.14s}.crm-robot:hover{border-color:#10a97252;box-shadow:0 8px 22px #19261f0f}.crm-robot.off{opacity:.58}.crm-robot-icon{width:36px;height:36px;border-radius:11px;flex:0 0 auto;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong)}.crm-robot-icon svg{width:17px;height:17px}.crm-robot-main{flex:1;min-width:0}.crm-robot-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:650}.crm-robot-scope{font-size:9.5px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:2px 7px}.crm-robot-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:5px;font-size:11.5px;color:var(--muted)}.crm-robot-when,.crm-robot-then{display:inline-flex;align-items:center;gap:5px}.crm-robot-when svg,.crm-robot-then svg{width:12px;height:12px}.crm-robot-then{color:var(--accent-strong)}.crm-robot-arrow{opacity:.5}.crm-robot-tools{display:flex;align-items:center;gap:2px;flex:0 0 auto}.crm-robot-tools .crm-col-tool{opacity:.55}.crm-robot-tools .crm-col-tool:hover{opacity:1}.crm-col-tool.danger:hover{color:var(--err)}.crm-switch{width:38px;height:22px;border-radius:999px;border:1px solid var(--border-strong);background:var(--panel-2);cursor:pointer;padding:2px;display:inline-flex;align-items:center;flex:0 0 auto;transition:.16s}.crm-switch>span{width:16px;height:16px;border-radius:50%;background:var(--muted);transition:.16s}.crm-switch.on{background:var(--accent-strong);border-color:var(--accent-strong)}.crm-switch.on>span{background:#fff;transform:translate(16px)}.crm-robots-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:30px 20px;border:1px dashed var(--border-strong);border-radius:16px;background:var(--panel-2)}.crm-robots-empty-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong)}.crm-robots-empty-icon svg{width:24px;height:24px}.crm-robots-empty h3{margin:3px 0 0;font-size:14px}.crm-robots-empty p{margin:0;max-width:420px;font-size:12px;color:var(--muted)}.crm-robots-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:700;margin-bottom:8px}.crm-robots-template-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.crm-robots-template{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px 13px;text-align:left;border:1px solid var(--border);border-radius:13px;background:var(--panel);color:var(--text);font:inherit;cursor:pointer;transition:.14s}.crm-robots-template:hover{border-color:#10a97266;background:var(--accent-soft);transform:translateY(-1px)}.crm-robots-template b{font-size:12.5px;font-weight:650}.crm-robots-template>span:last-child{font-size:11px;line-height:1.4;color:var(--muted)}.crm-robots-template-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong)}.crm-robots-template-icon svg{width:14px;height:14px}.crm-robots-log .crm-table-wrap{border-radius:12px}.crm-robot-status{display:inline-flex;align-items:center;font-size:10px;font-weight:650;border-radius:6px;padding:2px 7px;background:var(--panel-2);color:var(--muted);border:1px solid var(--border)}.crm-robot-status.ok{background:var(--accent-soft);color:var(--accent-strong);border-color:#10a9724d}.crm-robot-status.notify{background:var(--warn-soft);color:var(--warn);border-color:#d99a2b4d}.crm-robot-status.error{background:var(--err-soft);color:var(--err);border-color:#c4453b4d}@media(max-width:760px){.crm-robot{align-items:flex-start;flex-wrap:wrap}.crm-robots-hero-actions{width:100%}}.crm-robots-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;display:flex;align-items:flex-start;justify-content:center;padding:14px 20px 20px;background:#09100d6b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.crm-robots-overlay-panel{width:min(1680px,100%);height:min(calc(100vh - 34px),980px);display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden}.crm-robots-overlay-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--panel)}.crm-robots-overlay-title{display:flex;align-items:flex-start;gap:12px}.crm-robots-overlay-icon{width:40px;height:40px;border-radius:12px;flex:0 0 auto;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong)}.crm-robots-overlay-icon svg{width:19px;height:19px}.crm-robots-overlay-title h2{margin:0 0 3px;font-size:17px;font-weight:700;letter-spacing:-.01em}.crm-robots-overlay-title p{margin:0;font-size:11.5px;color:var(--muted)}.crm-robots-overlay-actions{display:flex;align-items:center;gap:8px}.crm-robots-close{width:34px;height:34px;padding:0;font-size:15px}.crm-robots-overlay-hint{display:flex;align-items:center;gap:7px;margin:0 18px;padding:9px 12px;border:1px dashed var(--border-strong);border-radius:10px;font-size:11.5px;color:var(--muted);background:var(--panel-2)}.crm-robots-overlay-hint svg{width:13px;height:13px;color:var(--accent-strong);flex:0 0 auto}.crm-robots-overlay-board{flex:1;min-height:0;margin:0;padding:14px 18px 18px;overflow-x:auto;overflow-y:hidden;align-items:stretch;scrollbar-width:thin}.crm-robots-overlay-board::-webkit-scrollbar{display:block;height:10px}.crm-robots-overlay-board::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}.crm-robot-column{display:flex;flex-direction:column;max-height:100%;background:var(--panel-2)}.crm-robot-column .crm-col-head{flex:0 0 auto}.crm-robot-add{opacity:.8}.crm-robot-add:hover{background:var(--accent-soft);color:var(--accent-strong)}.crm-robot-col-body{flex:1;min-height:90px;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:2px 1px 4px;scrollbar-width:thin}.crm-robot-card{border:1px solid var(--crm-line);border-radius:12px;background:var(--panel);padding:9px 10px;display:flex;flex-direction:column;gap:6px;transition:.14s}.crm-robot-card:hover{border-color:#10a97259;box-shadow:0 6px 16px #19261f0f}.crm-robot-card.off{opacity:.55}.crm-robot-card-top{display:flex;align-items:center;gap:7px}.crm-robot-card-icon{width:24px;height:24px;border-radius:7px;flex:0 0 auto;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong)}.crm-robot-card-icon svg{width:12px;height:12px}.crm-robot-card-name{flex:1;min-width:0;border:0;background:transparent;padding:0;text-align:left;font:inherit;font-size:12px;font-weight:650;color:var(--text);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-robot-card-name:hover{color:var(--accent-strong)}.crm-robot-card-top .crm-switch{width:32px;height:18px;padding:2px}.crm-robot-card-top .crm-switch>span{width:12px;height:12px}.crm-robot-card-top .crm-switch.on>span{transform:translate(14px)}.crm-robot-card-flow{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:10px;color:var(--muted);line-height:1.35}.crm-robot-card-arrow{opacity:.5}.crm-robot-card-tools{display:flex;gap:4px;border-top:1px solid var(--crm-line);padding-top:5px}.crm-robot-card-tools button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;border-radius:6px;padding:3px 6px;font:inherit;font-size:10px;color:var(--muted);cursor:pointer}.crm-robot-card-tools button:hover{background:var(--panel-2);color:var(--accent-strong)}.crm-robot-card-tools button.danger:hover{color:var(--err);background:var(--err-soft)}.crm-robot-card-tools svg{width:11px;height:11px}.crm-robot-col-add{font-size:11px}.crm-robot-col-empty{padding:10px 8px;text-align:center;font-size:10.5px;color:var(--muted-2)}.crm-bell-icon{position:relative;display:inline-flex;align-items:center;justify-content:center}.crm-unread-badge{position:absolute;top:-6px;right:-7px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#e0623f;color:#fff;border:1.5px solid var(--panel);font-size:9px;font-weight:750;line-height:1;display:grid;place-items:center;font-variant-numeric:tabular-nums;box-shadow:0 2px 6px #e0623f59}.crm-robots-journal{flex:0 0 auto;border-top:1px solid var(--border);background:var(--panel)}.crm-robots-journal-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 18px;border:0;background:transparent;color:var(--text);font:inherit;cursor:pointer;text-align:left}.crm-robots-journal-head:hover{background:var(--panel-2)}.crm-robots-journal-title{display:inline-flex;align-items:center;gap:7px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--muted)}.crm-robots-journal-title svg{width:13px;height:13px;color:var(--accent-strong)}.crm-robots-journal-title b{min-width:18px;padding:1px 6px;border-radius:999px;background:var(--panel-2);border:1px solid var(--border);color:var(--text);font-size:10px;letter-spacing:0;text-align:center}.crm-robots-journal-toggle{font-size:11px;color:var(--muted)}.crm-robots-journal-body{max-height:190px;overflow:auto;padding:0 18px 12px}.crm-robots-journal-body .crm-table{width:100%}.crm-robots-journal-body .nowrap{white-space:nowrap}@media(max-width:760px){.crm-robots-overlay{padding:0}.crm-robots-overlay-panel{width:100%;height:100%;border-radius:0;border:0}.crm-robots-overlay-head{padding:12px 14px}.crm-robots-overlay-hint{margin:0 14px}.crm-robots-overlay-board{padding:12px 14px 16px}.crm-robot-column{flex:0 0 84vw;width:84vw}}.wh-page{display:flex;flex-direction:column;gap:14px;position:relative;min-width:0}.wh-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.wh-head-title{font-size:20px;font-weight:700;letter-spacing:-.02em}.wh-head-sub{font-size:11.5px;color:var(--muted);margin-top:2px}.wh-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wh-search{position:relative;display:flex;align-items:center;gap:7px;height:34px;min-width:220px;max-width:320px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--muted)}.wh-search:focus-within{border-color:#10a9728c;box-shadow:0 0 0 3px #1fc48921}.wh-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font:inherit;font-size:12.5px}.wh-search svg{width:15px;height:15px}.wh-filter-wrap{position:relative}.wh-filter-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:70;width:min(980px,calc(100vw - 100px));max-height:calc(100vh - 160px);overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);padding:14px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px}.wh-filter-left{border-right:1px solid var(--border);padding-right:14px;display:flex;flex-direction:column;gap:4px;min-height:260px}.wh-filter-title{font-size:9.5px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:650;padding:0 2px 6px}.wh-saved-item{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:8px;font-size:12px;cursor:pointer;border:1px solid transparent}.wh-saved-item:hover{background:var(--panel-2)}.wh-saved-item .grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wh-saved-remove{border:0;background:transparent;color:var(--muted);cursor:pointer;width:18px;height:18px;display:grid;place-items:center;border-radius:4px;padding:0;flex:0 0 auto}.wh-saved-remove:hover{color:var(--err);background:var(--err-soft)}.wh-saved-remove svg{width:11px;height:11px}.wh-save-link{margin-top:auto;border:0;background:transparent;color:var(--accent-strong);cursor:pointer;font:inherit;font-size:12px;text-align:left;padding:8px 2px 2px}.wh-save-link:hover{text-decoration:underline}.wh-save-form{display:flex;flex-direction:column;gap:6px;padding-top:8px}.wh-save-form input{height:30px}.wh-save-form-actions{display:flex;gap:6px}.wh-filter-right{min-width:0;display:flex;flex-direction:column;gap:10px}.wh-filter-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wh-filter-field{display:flex;flex-direction:column;gap:4px;min-width:0}.wh-filter-field>label{font-size:11px;color:var(--muted);font-weight:550;display:flex;align-items:center;gap:5px}.wh-filter-field .input,.wh-filter-field .select{height:32px;font-size:12.5px}.wh-filter-range{display:flex;align-items:center;gap:5px}.wh-filter-range .input{min-width:0}.wh-filter-n{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.wh-filter-n .input{width:70px;height:32px}.wh-filter-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--border);padding-top:10px;flex-wrap:wrap}.wh-field-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;max-height:360px;overflow:auto}.wh-field-picker .check{font-size:12px;padding:3px 0}.wh-tooltip{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;border:1px solid var(--border-strong);color:var(--muted);font-size:9px;font-weight:700;cursor:help;flex:0 0 auto}.wh-table-wrap{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:auto;max-height:calc(100vh - 270px);box-shadow:var(--shadow-card);scrollbar-gutter:stable}.wh-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.wh-table-resizable{min-width:100%}.wh-table th.sticky,.wh-table td.sticky{position:sticky;z-index:2;background:var(--panel)}.wh-table thead th.sticky{z-index:5;background:var(--table-head-bg)}.wh-table th.draggable{cursor:grab}.wh-table th.drag-source{opacity:.6}.wh-th-content{position:relative;display:flex;align-items:center;justify-content:space-between;height:100%;min-width:0;gap:6px}.wh-th-content>span{overflow:hidden;text-overflow:ellipsis}.wh-resizer{position:absolute;right:-7px;top:0;bottom:0;width:14px;cursor:col-resize;z-index:10}.wh-resizer:hover{background:#10a97240}.wh-table th{position:sticky;top:0;z-index:3;background:var(--table-head-bg);text-align:left;font-size:9.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:11px 12px;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:middle}.wh-table th.num{text-align:right}.wh-table th.center{text-align:center}.wh-table th.center .wh-th-content{justify-content:center}.wh-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap;line-height:1.35}.wh-table tbody tr{cursor:pointer;transition:background .1s ease}.wh-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--panel-2) 45%,var(--panel))}.wh-table tbody tr:hover td{background:#10a97212}.wh-table tbody tr:last-child td{border-bottom:0}.wh-table td.num{text-align:right;font-variant-numeric:tabular-nums}.wh-table td.center{text-align:center}.wh-table .check-cell,.wh-table .burger-cell{width:34px;text-align:center}.wh-table input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent-strong)}.wh-doc-title{font-weight:650;font-size:12.5px;max-width:280px;overflow:hidden;text-overflow:ellipsis}.wh-doc-date{font-size:10.5px;color:var(--muted);margin-top:2px}.wh-doc-id{font-weight:650;color:var(--text);font-variant-numeric:tabular-nums}.wh-doc-number{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11.5px}.wh-status{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:10.5px;font-weight:650;padding:4px 8px;border-radius:7px;white-space:nowrap;min-width:72px}.wh-status .d{width:5px;height:5px;border-radius:50%;background:currentColor}.wh-status.draft{background:var(--warn-soft);color:var(--warn)}.wh-status.posted{background:var(--accent-soft);color:var(--accent-strong)}.wh-status.cancelled{background:var(--err-soft);color:var(--err)}.wh-doc-type{font-size:11px;color:var(--text-2)}.wh-doc-type.opening{color:var(--info)}.wh-empty{padding:40px 20px;text-align:center;color:var(--muted);font-size:12.5px}.wh-muted{color:var(--muted)}.wh-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.wh-pagination{display:flex;align-items:center;gap:6px}.wh-pagination .select{height:30px;font-size:12px;padding-right:22px;background-position:right 6px center}.wh-bulk-bar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);font-size:12px}.wh-bulk-bar .select{height:30px;font-size:12px}.wh-bulk-bar b{color:var(--text)}.wh-burger{border:0;background:transparent;color:var(--muted);width:26px;height:26px;border-radius:6px;display:inline-grid;place-items:center;cursor:pointer;padding:0}.wh-burger:hover{background:var(--panel-2);color:var(--text)}.wh-burger svg{width:16px;height:16px}.wh-menu{position:fixed;z-index:230;min-width:190px;padding:6px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.wh-menu-item{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:var(--text);border-radius:8px;padding:8px 9px;font:inherit;font-size:12px;text-align:left;cursor:pointer}.wh-menu-item:hover{background:var(--panel-2)}.wh-menu-item.danger{color:var(--err)}.wh-menu-sep{height:1px;background:var(--border);margin:4px}.modal.wide.wh-wide{max-width:2000px;width:calc(100vw - 16px);max-height:calc(100vh - 24px);display:flex;flex-direction:column}.modal.wh-wide .modal-head,.modal.wh-wide .modal-foot{flex:0 0 auto}.modal.wh-wide .modal-body{flex:1 1 auto;min-height:0;overflow-y:auto}.wh-doc-head{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;padding-bottom:2px}.wh-doc-head .grow{flex:1;min-width:160px}.wh-doc-type-small{min-width:150px}.wh-doc-type-small .select{height:32px;font-size:12.5px}.wh-tabs{margin-top:2px}.wh-lines-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.wh-transfer-warehouses{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.wh-transfer-warehouses label{font-size:11px;color:var(--muted);font-weight:600;white-space:nowrap}.wh-transfer-warehouses .wh-select{width:190px}.wh-lines-wrap{border:1px solid var(--border);border-radius:14px;overflow:auto;max-height:none}.wh-lines{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.wh-lines th{position:sticky;top:0;z-index:2;background:var(--table-head-bg);text-align:left;font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.wh-lines td{padding:7px 8px;border-bottom:1px solid var(--border);vertical-align:middle}.wh-lines tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--panel-2) 38%,var(--panel))}.wh-lines tbody tr:hover td{background:#10a9720f}.wh-lines tr:last-child td{border-bottom:0}.wh-lines .check-cell,.wh-lines .burger-cell{width:30px;text-align:center}.wh-lines input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-strong)}.wh-lines .input,.wh-lines .select,.wh-lines .wh-select{height:32px;font-size:12px}.wh-lines .wh-select{min-width:0}.wh-lines .wh-select-input{font-size:12px}.wh-lines .wh-select-clear{display:none}.wh-line-qty{display:flex;gap:5px;align-items:center}.wh-line-qty .input{width:76px}.wh-line-qty .select{width:64px}.wh-line-sum{font-weight:700;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.wh-lines-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;font-size:12px;color:var(--muted)}.wh-lines-foot b{color:var(--text);font-size:14px}.wh-doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:14px;align-items:start}.wh-doc-main{min-width:0}.wh-doc-side{border:1px solid var(--border);border-radius:14px;background:var(--panel-2);padding:12px;display:flex;flex-direction:column;min-height:420px;max-height:calc(85vh - 200px);overflow:hidden;position:sticky;top:12px;align-self:start}.wh-side-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:650;margin-bottom:8px;flex:0 0 auto}.wh-side-empty{font-size:11.5px;color:var(--muted);padding:14px 0;text-align:center}.wh-general{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.wh-general .span-2{grid-column:1 / -1}.wh-general .field{min-width:0}.wh-general .field>label{font-size:11.5px;color:var(--muted);font-weight:600}.wh-general .input,.wh-general .select,.wh-general .wh-select{height:36px;font-size:12.5px}.wh-form-group{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--panel)}.wh-form-group-title{font-size:11px;font-weight:650;color:var(--text-2);margin-bottom:10px}.wh-general-inner{background:transparent;border:0;padding:0;border-radius:0}.wh-currency-row{display:flex;align-items:center;gap:10px}.wh-currency-total{font-weight:700;font-size:14px;color:var(--text);font-variant-numeric:tabular-nums}.wh-attach-zone{display:flex;align-items:center;gap:10px;border:1px dashed var(--border-strong);border-radius:10px;padding:12px;cursor:pointer;color:var(--muted);transition:.12s ease}.wh-attach-zone:hover{background:var(--panel-2);border-color:var(--accent-strong);color:var(--accent-strong)}.wh-attach-zone svg{width:20px;height:20px;flex:0 0 auto}.wh-attach-main{font-size:12.5px;font-weight:600;color:var(--text)}.wh-attach-sub{font-size:11px}.wh-attach-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.wh-attach-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:var(--panel);border:1px solid var(--border);font-size:11.5px}.wh-attach-item.pending{border-style:dashed}.wh-attach-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wh-attach-del{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px;border-radius:4px;display:grid;place-items:center}.wh-attach-del:hover{color:var(--err);background:var(--err-soft)}.wh-comments{display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1 1 auto;min-height:0}.wh-comment{display:flex;gap:8px}.wh-avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff;flex:0 0 auto}.wh-comment-body{flex:1;min-width:0}.wh-comment-head{display:flex;align-items:baseline;gap:8px;font-size:11px;color:var(--muted);margin-bottom:2px}.wh-comment-head b{color:var(--text);font-weight:650}.wh-comment-text{font-size:12.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.wh-comment-attach{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:11.5px;color:var(--accent-strong);text-decoration:none}.wh-comment-attach:hover{text-decoration:underline}.wh-composer{border-top:1px solid var(--border);margin-top:10px;padding-top:10px;flex:0 0 auto;position:relative}.wh-comment-input{width:100%;resize:none}.wh-analytics .wh-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.wh-stat-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.wh-stat-label{font-size:11.5px;color:var(--muted);font-weight:600;margin-bottom:6px}.wh-stat-value{font-size:22px;font-weight:700;letter-spacing:-.02em}.wh-stat-sub{font-size:11px;color:var(--muted);margin-top:4px}.wh-mentions{position:absolute;bottom:100%;left:0;right:0;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);padding:5px;display:flex;flex-direction:column;gap:2px;z-index:10;margin-bottom:6px}.wh-mentions button{border:0;background:transparent;text-align:left;padding:6px 8px;border-radius:6px;cursor:pointer;font:inherit;font-size:12px}.wh-mentions button:hover{background:var(--panel-2)}.wh-composer-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.wh-icon-btn{width:28px;height:28px;border:0;background:transparent;color:var(--muted);border-radius:6px;display:grid;place-items:center;cursor:pointer}.wh-icon-btn:hover{background:var(--panel-2);color:var(--accent-strong)}.wh-logs{display:flex;flex-direction:column-reverse;gap:8px;overflow-y:auto;max-height:240px}.wh-log{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border-radius:8px;background:var(--panel);border:1px solid var(--border);font-size:11.5px}.wh-log-text{flex:1;min-width:0}.wh-log-time{font-size:10px;color:var(--muted);margin-top:2px}.wh-stock-hint{font-size:10.5px;color:var(--muted);margin-top:2px}.wh-stock-hint b{color:var(--text)}.wh-product-actions{display:flex;gap:6px;flex-wrap:wrap}.wh-simple-table{min-width:700px}.wh-simple-table th,.wh-simple-table td{white-space:nowrap}.wh-tree-table td{vertical-align:middle}.wh-tree-group>td{background:color-mix(in srgb,var(--panel-2) 70%,var(--panel));font-weight:650}.wh-tree-name{display:flex;align-items:center;gap:8px;min-width:0}.wh-tree-toggle{width:20px;height:20px;border:0;border-radius:5px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0;flex:0 0 auto}.wh-tree-toggle:hover{background:var(--panel-2);color:var(--text)}.wh-tree-toggle svg{width:13px;height:13px;transition:transform .12s ease}.wh-tree-toggle.open svg{transform:rotate(90deg)}.wh-tree-toggle-spacer{width:20px;flex:0 0 auto}.wh-tree-icon{display:grid;place-items:center;color:var(--muted);flex:0 0 auto}.wh-tree-icon svg{width:15px;height:15px}.wh-kind{display:inline-flex;align-items:center;font-size:10px;font-weight:650;padding:3px 7px;border-radius:6px;background:var(--panel-2);color:var(--muted);white-space:nowrap}.wh-kind.material{background:#2f6fed1f;color:#2f6fed}.wh-kind.finished{background:var(--accent-soft);color:var(--accent-strong)}.wh-kind.tmc{background:#d99a2b24;color:#a86f12}.wh-kind.group{background:transparent;border:1px solid var(--border);color:var(--muted)}.wh-counter{font-variant-numeric:tabular-nums}.wh-row-actions{display:flex;gap:2px;justify-content:flex-end}.wh-row-actions button{width:26px;height:26px;border:0;background:transparent;border-radius:6px;color:var(--muted);cursor:pointer;display:grid;place-items:center;padding:0}.wh-row-actions button:hover{background:var(--panel-2);color:var(--accent-strong)}.wh-row-actions .danger:hover{color:var(--err);background:var(--err-soft)}.wh-row-actions svg{width:14px;height:14px}.wh-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:650;padding:2px 7px;border-radius:5px;background:var(--accent-soft);color:var(--accent-strong)}.wh-badge.off{background:var(--panel-2);color:var(--muted)}.wh-select{position:relative;display:flex;align-items:center;height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);min-width:0}.wh-select.open{border-color:#10a9728c;box-shadow:0 0 0 3px #1fc4891f}.wh-select.disabled{opacity:.6}.wh-select-input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;color:var(--text);padding:0 28px 0 10px;font:inherit;font-size:12.5px}.wh-select-input::placeholder{color:var(--muted-2)}.wh-select-caret{position:absolute;right:8px;display:grid;place-items:center;color:var(--muted);pointer-events:none}.wh-select-caret svg{width:13px;height:13px}.wh-select-clear{position:absolute;right:24px;width:18px;height:18px;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center;padding:0}.wh-select-clear svg{width:11px;height:11px}.wh-select-clear:hover{background:var(--panel-2);color:var(--err)}.wh-multi-trigger{display:flex;align-items:center;gap:4px;width:100%;height:100%;border:0;background:transparent;color:var(--text);padding:0 26px 0 10px;font:inherit;font-size:12.5px;text-align:left;cursor:pointer;position:relative;min-width:0}.wh-multi-trigger .wh-select-caret{right:8px}.wh-multi-value,.wh-multi-placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.wh-multi-placeholder{color:var(--muted-2)}.wh-multi-trigger .wh-select-clear{right:22px}.wh-dropdown{background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);padding:6px;max-height:280px;overflow:auto;animation:wh-pop .12s ease-out}@keyframes wh-pop{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.wh-option{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:8px;cursor:pointer;font-size:12px;color:var(--text)}.wh-option:hover{background:var(--panel-2)}.wh-option.selected{background:var(--accent-soft)}.wh-option-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.wh-option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wh-option-sub{font-size:10px;color:var(--muted)}.wh-option-check{color:var(--accent-strong);display:grid;place-items:center}.wh-option-check svg{width:14px;height:14px;stroke-width:2.4}.wh-check{width:16px;height:16px;border-radius:5px;border:1.5px solid var(--border-strong);display:grid;place-items:center;color:#fff;flex:0 0 auto;background:var(--panel)}.wh-check.on{background:var(--accent-strong);border-color:var(--accent-strong)}.wh-check svg{width:10px;height:10px;stroke-width:3}.wh-dropdown-empty{padding:14px;text-align:center;font-size:11.5px;color:var(--muted)}.wh-dropdown-search{width:100%;height:30px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text);padding:0 8px;font:inherit;font-size:12px;outline:none;margin-bottom:5px}.wh-dropdown-search:focus{border-color:var(--accent-strong)}.wh-dropdown-multi{display:flex;flex-direction:column;max-height:340px}.wh-dropdown-options{overflow:auto;min-height:40px}.wh-dropdown-foot{display:flex;justify-content:space-between;gap:6px;border-top:1px solid var(--border);padding-top:6px;margin-top:4px}.wh-dropdown-foot .btn{flex:1;justify-content:center}@media(max-width:1180px){.wh-filter-panel{width:min(760px,calc(100vw - 80px));grid-template-columns:190px minmax(0,1fr)}.wh-filter-fields{grid-template-columns:1fr}}@media(max-width:1100px){.modal.wide.wh-wide{width:98vw}.wh-doc-layout{grid-template-columns:1fr}.wh-doc-side{max-height:none}}@media(max-width:760px){.wh-filter-panel{position:fixed;top:76px;left:12px;right:12px;width:auto;max-height:calc(100vh - 100px);grid-template-columns:1fr}.wh-filter-left{border-right:0;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:10px;min-height:0}.wh-general{grid-template-columns:1fr}.wh-general .span-2,.wh-form-group{grid-column:span 1}}.cam-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.cam-tools{display:flex;gap:8px;flex-wrap:wrap}.net-tabs{display:flex;gap:6px;margin-bottom:14px;padding:4px;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:fit-content}.net-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:13px;padding:7px 14px;border-radius:9px;cursor:pointer;transition:background .15s ease,color .15s ease}.net-tab:hover{color:var(--text)}.net-tab.active{background:var(--accent, #30b75e);color:#fff}.cam-group+.cam-group{margin-top:18px}.cam-group-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;font-weight:600;color:var(--text)}.cam-group-title .muted{font-size:12px;font-weight:400}.cam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.cam-tile{background:var(--panel);border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.cam-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.cam-tile.off{opacity:.65}.cam-frame{position:relative;aspect-ratio:16 / 9;background:#0b100f;overflow:hidden}.cam-frame img{display:block;width:100%;height:100%;object-fit:cover}.cam-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#dce5df8c;font-size:13px}.cam-live{position:absolute;top:8px;left:8px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#e8f5ee;background:#0b100f9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.14)}.cam-live.live{color:#46d9a0}.cam-live.error{color:#ff9aa0}.cam-retry{position:absolute;top:6px;right:8px;width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:#0b100f9e;color:#e8f5ee;cursor:pointer;line-height:1;font-size:14px}.cam-retry:hover{background:#0b100fdb}.cam-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 12px 12px}.cam-meta b{font-size:13.5px;font-weight:650}.cam-meta span{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.cam-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 2px 0;font-size:12px}.cam-big{width:100%;aspect-ratio:16 / 9;background:#0b100f;border-radius:14px;overflow:hidden}.cam-big img{display:block;width:100%;height:100%;object-fit:contain}.cam-view-meta{display:flex;gap:16px;flex-wrap:wrap;padding:10px 2px 0;font-size:12.5px;color:var(--muted)}.cam-view-modal{max-width:1040px}.cam-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.cam-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.cam-field-wide{grid-column:1 / -1}.cam-field .input{width:100%}.cam-danger{color:var(--err)!important;margin-right:auto}@media(max-width:900px){.cam-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.cam-form{grid-template-columns:1fr}}.det-form{display:flex;flex-direction:column;gap:16px;padding-top:4px}.det-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.det-field label{font-weight:500}.det-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.det-canvas-box{display:flex;flex-direction:column;gap:10px}.det-canvas-wrap{position:relative;display:inline-block;max-width:100%;border-radius:14px;overflow:hidden;border:1px solid var(--border);background:#0b100f}.det-canvas-wrap img{display:block;max-width:100%;height:auto}.det-canvas-wrap canvas{position:absolute;top:0;left:0;width:100%;height:100%;cursor:crosshair}.det-canvas-hint{font-size:12px}.network-map-wrap{display:flex;flex-direction:column;gap:10px}.network-zoom{display:flex;flex-direction:column;gap:8px}.network-zoom-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.network-zoom-value{min-width:46px;text-align:center;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.network-map-zoom{max-height:68vh;overflow:auto;border:1px solid var(--border);border-radius:12px;background:var(--panel);cursor:grab;overscroll-behavior:contain}.network-map-zoom:active{cursor:grabbing}.network-map-zoom .network-map{width:auto;height:auto;min-height:0;border:0;border-radius:0}.network-zoom-note{padding:6px 10px;border-radius:8px;background:#f59e0b1f;color:#b45309;font-size:12px}.network-node-ports{fill:var(--muted);font-size:9px;pointer-events:none}.network-map{width:100%;height:auto;min-height:360px;background:var(--panel);border:1px solid var(--border);border-radius:18px;-webkit-user-select:none;user-select:none;touch-action:none}.network-link{stroke:var(--border-strong, var(--border));stroke-width:2}.network-link.dashed{stroke:#f59e0b;stroke-width:2;stroke-dasharray:7 5}.network-link-label{fill:var(--muted);font-size:10px;pointer-events:none}.network-node{transition:filter .15s ease}.network-node:hover{filter:brightness(1.15)}.network-node.disabled{opacity:.45}.network-node-bg{fill:var(--panel);stroke:var(--border-strong, var(--border));stroke-width:2}.network-node.online .network-node-bg{stroke:#22c55e;fill:#22c55e14}.network-node.offline .network-node-bg{stroke:#ef4444;fill:#ef444414}.network-node-icon{color:var(--muted);pointer-events:none}.network-node.self .network-node-bg{stroke:#6366f1;stroke-width:2.5;fill:#6366f114}.network-node.blocked .network-node-bg{stroke:#ef4444;stroke-width:2.5;stroke-dasharray:6 3;fill:#ef44441a}.network-node-self{fill:#6366f1;font-size:9px;font-weight:700;pointer-events:none;text-transform:uppercase;letter-spacing:.04em}.network-node-login{fill:#6366f1;font-size:9px;font-weight:700;cursor:pointer}.network-node-login:hover{text-decoration:underline}.network-self-badge{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:6px;background:#6366f126;color:#6366f1;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.network-node-name{fill:var(--text);font-size:10px;font-weight:600;pointer-events:none}.network-node-ip{fill:var(--muted);font-size:10px;pointer-events:none}.network-node-ping{fill:#22c55e;font-size:9px;font-weight:600;pointer-events:none}.network-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}.network-legend .dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.network-legend .dot.online{background:#22c55e}.network-legend .dot.offline{background:#ef4444}.network-legend .dot.unknown{background:var(--border-strong, var(--border))}.network-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;font-size:14px}.network-detail-grid .wide{grid-column:1 / -1}@media(max-width:640px){.cam-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.network-detail-grid{grid-template-columns:1fr}}.det-canvas-tools{display:flex;gap:8px}.det-checks{display:flex;gap:16px;flex-wrap:wrap}.det-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:4px}@media(max-width:760px){.det-row{grid-template-columns:1fr}.det-checks{flex-direction:column;align-items:flex-start;gap:8px}}.events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;padding-top:6px}.event-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.event-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.event-frame{position:relative;aspect-ratio:16 / 9;background:#0b100f;overflow:hidden}.event-frame img{display:block;width:100%;height:100%;object-fit:cover}.event-frame .badge{position:absolute;top:8px;left:8px}.event-meta{display:grid;gap:2px;padding:10px 12px 12px;font-size:12px}.event-meta b{font-weight:650}.event-view-meta{display:flex;gap:16px;flex-wrap:wrap;padding-top:12px;font-size:12.5px;color:var(--muted)}.events-topline{display:flex;gap:12px;align-items:baseline;padding:4px 2px 10px;font-size:12px;color:var(--muted)}.event-plate-badge{position:absolute;right:8px;bottom:8px;padding:3px 8px;border-radius:6px;background:#e9e9e9;color:#111;font-family:Consolas,Menlo,monospace;font-size:12px;font-weight:700;letter-spacing:.03em;box-shadow:0 2px 8px #00000059}.event-plate{display:inline-block;align-self:flex-start;padding:2px 8px;border-radius:6px;background:#e9e9e9;color:#111;font-family:Consolas,Menlo,monospace;font-size:13px;font-weight:700;letter-spacing:.03em}.event-plate-crop{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff05;font-size:12px;color:var(--muted)}.event-plate-crop img{height:140px;max-width:min(100%,640px);object-fit:contain;border-radius:8px;background:#fff}.event-plate-crop b{font-family:Consolas,Menlo,monospace;font-size:22px;color:var(--text);letter-spacing:.04em}.det-status{display:flex;align-items:center;gap:12px;padding:10px 14px;margin-bottom:12px;border-radius:14px;border:1px solid var(--border);background:var(--panel);font-size:12.5px}.det-status.compact{padding:8px 12px;margin-bottom:12px}.det-status-dot{width:9px;height:9px;border-radius:50%;background:var(--muted);flex:none}.det-status.ok .det-status-dot{background:#2ecc8f;box-shadow:0 0 0 4px #2ecc8f29}.det-status.warn .det-status-dot{background:#f0b429;box-shadow:0 0 0 4px #f0b42929}.det-status.err .det-status-dot{background:#ff5c5c;box-shadow:0 0 0 4px #ff5c5c29}.det-status.wait .det-status-dot{background:#8a9a94}.det-status-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.det-status-text b{font-size:12.5px;font-weight:650}.det-status-text span{color:var(--muted);font-size:11.5px;overflow:hidden;text-overflow:ellipsis}.det-status.err{border-color:#ff5c5c59}.det-status.warn{border-color:#f0b42959}.det-status.ok{border-color:#2ecc8f47}.det-status-pid{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.det-status-cams{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.det-cam-pill{padding:2px 8px;border-radius:999px;font-size:11px;border:1px solid var(--border);color:var(--muted);background:#ffffff08}.det-cam-pill.run{color:#46d9a0;border-color:#46d9a04d}.det-cam-pill.reconnect{color:#f0b429;border-color:#f0b4294d}.det-cam-pill.error{color:#ff9aa0;border-color:#ff9aa059}.det-canvas-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center;color:var(--muted);background:#0b100f8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-size:12.5px}.det-canvas-overlay b{color:var(--text);font-size:13.5px}.det-canvas-overlay small{max-width:420px;font-size:11.5px;line-height:1.4}.det-canvas-overlay .btn{margin-top:4px}.det-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:16px;align-items:start}.det-cameras{position:sticky;top:12px;display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}.det-cameras-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:650}.det-cameras-count{font-size:11px;font-weight:500;color:var(--muted)}.det-cam-list{display:flex;flex-direction:column;gap:6px}.det-cam{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px 11px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.det-cam:hover{background:#ffffff08}.det-cam.active{border-color:#46d9a080;background:#46d9a012}.det-cam-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det-cam-badges{display:flex;flex-wrap:wrap;gap:4px}.det-badge{padding:1px 7px;border-radius:999px;border:1px solid var(--border);font-size:10.5px;font-style:normal;color:var(--muted);background:#ffffff05;white-space:nowrap}.det-badge.on{color:#46d9a0;border-color:#46d9a04d}.det-badge.dirty{color:#f0b429;border-color:#f0b42959}.det-badge.state-run{color:#46d9a0;border-color:#46d9a04d}.det-badge.state-reconnect{color:#f0b429;border-color:#f0b42959}.det-badge.state-error{color:#ff9aa0;border-color:#ff9aa059}.det-badge.mode-anpr{color:#7cc4ff;border-color:#7cc4ff59}.det-badge.off{opacity:.5}.det-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.det-mode-card{display:flex;flex-direction:column;gap:5px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:transparent;color:var(--text);text-align:left;cursor:default;transition:border-color .15s ease,background .15s ease}.det-mode-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.det-mode-card b{font-size:13.5px;font-weight:650}.det-mode-card span{font-size:11.5px;color:var(--muted);line-height:1.35}.det-mode-card:hover{background:#ffffff08}.det-mode-card.active{border-color:#46d9a080;background:#46d9a012}.det-mode-card.active b{color:#46d9a0}.anpr-panel{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:14px;border:1px solid var(--border);background:#ffffff04}.anpr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.anpr-head>div{display:flex;flex-direction:column;gap:3px}.anpr-head b{font-size:13.5px}.anpr-head span{font-size:11.5px;color:var(--muted);line-height:1.4;max-width:560px}.anpr-tips{display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--muted)}.anpr-tips span:before{content:"• ";color:#7cc4ff}.anpr-result{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;border:1px solid rgba(240,180,41,.35);background:#f0b4290f;font-size:12px;color:var(--muted)}.anpr-result.ok{border-color:#46d9a059;background:#46d9a012}.anpr-result b{color:var(--text)}.anpr-plate{display:inline-flex;align-items:baseline;gap:6px;padding:3px 9px;border-radius:7px;background:#e9e9e9;color:#111;font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;letter-spacing:.03em}.anpr-plate em{font-style:normal;font-size:10px;font-weight:600;color:#2e7d4f}.plates-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.plates-kpi-card{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:16px;border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.plates-kpi-card span{font-size:11.5px;color:var(--muted)}.plates-kpi-card b{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.plates-kpi-card b.mono{font-family:Consolas,Menlo,monospace;font-size:20px;letter-spacing:.04em}.plates-kpi-card small{font-size:11px;color:var(--muted)}.plates-kpi-card.accent{border-color:#7cc4ff59;background:#7cc4ff0f}.plates-search{width:190px}.plates-table-wrap{overflow-x:auto;padding-top:4px}.plates-table{width:100%;border-collapse:collapse;font-size:12.5px}.plates-table th,.plates-table td{padding:9px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.plates-table th{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.plates-table tbody tr{cursor:pointer;transition:background .12s ease}.plates-table tbody tr:hover{background:#ffffff08}.plates-table .num{text-align:right;font-variant-numeric:tabular-nums}.plates-number{display:inline-block;padding:4px 10px;border-radius:7px;background:#e9e9e9;color:#111;font-family:Consolas,Menlo,monospace;font-size:14px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.plates-thumb{display:block;height:44px;max-width:160px;object-fit:contain;border-radius:5px;background:#fff}@media(max-width:980px){.plates-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.plates-kpi{grid-template-columns:1fr}.plates-search{width:100%}}.det-main{display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:var(--shadow);min-width:0}.det-main-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.det-main-head h2{margin:0 0 2px;font-size:16px;font-weight:700}.det-main-head .muted{font-size:11.5px;color:var(--muted)}.det-main-head-actions{display:flex;align-items:center;gap:10px}.det-switch-label{font-size:11.5px;color:var(--muted)}.det-switch-label.on{color:#46d9a0}.det-editor{display:flex;flex-direction:column;gap:8px}.det-canvas-wrap.ready{width:100%;max-width:100%}.det-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none;cursor:crosshair}.det-editor-help{font-size:11.5px;color:var(--muted);line-height:1.45}.det-editor-actions{display:flex;gap:8px;flex-wrap:wrap}.det-panel{display:flex;flex-direction:column;gap:8px}.det-panel-title{font-size:12px;color:var(--muted)}.det-dir{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.det-dir-option{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.det-dir-option b{font-size:14px;font-weight:700;letter-spacing:.02em}.det-dir-option span{font-size:10.5px;color:var(--muted)}.det-dir-option:hover{background:#ffffff08}.det-dir-option.active{border-color:#ffd1668c;background:#ffd16614}.det-dir-option.active b{color:#ffd166}.det-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.det-field{display:flex;flex-direction:column;gap:6px;font-size:11.5px;color:var(--muted)}.det-classes{display:flex;flex-wrap:wrap;gap:6px}.det-class{padding:5px 11px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:11.5px;cursor:pointer;transition:all .15s ease}.det-class:hover{background:#ffffff0a}.det-class.on{color:#0b100f;background:#46d9a0;border-color:#46d9a0;font-weight:600}.det-savebar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);margin-top:2px;padding-top:12px}.det-dirty{font-size:11.5px;color:#f0b429}.det-warning{padding:8px 12px;border-radius:10px;border:1px solid rgba(240,180,41,.35);background:#f0b42912;color:#f0b429;font-size:12px}@media(max-width:980px){.det-layout{grid-template-columns:1fr}.det-cameras{position:static}.det-cam-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media(max-width:640px){.det-dir,.det-grid{grid-template-columns:1fr}.det-savebar{flex-direction:column;align-items:stretch}}.hr-page{display:flex;flex-direction:column;gap:14px;min-width:0}.hr-head{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.hr-head-main{flex:1;min-width:260px}.hr-head-title{font-size:20px;font-weight:700;letter-spacing:-.02em}.hr-head-sub{font-size:12px;color:var(--muted);margin-top:3px}.hr-head-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hr-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 14px;border:1px dashed rgba(37,53,44,.18);border-radius:var(--radius);background:#ffffff47}.hr-field{display:flex;flex-direction:column;gap:4px;min-width:170px}.hr-field>span{font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);font-weight:600}.hr-select{height:32px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font:inherit;font-size:12.5px;opacity:.72}.hr-filter-note{font-size:11.5px;color:var(--muted);margin-left:auto;max-width:360px;line-height:1.35}.hr-kpi{display:flex;flex-direction:column;gap:2px}.hr-kpi-value{font-size:22px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.hr-kpi-sub{font-size:11.5px;color:var(--muted);line-height:1.35}.hr-kpi-bar{height:5px;border-radius:999px;background:#455c4b21;overflow:hidden;margin-top:8px}.hr-kpi-bar>i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#20bd83,#0b865b)}.hr-charts{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1180px){.hr-charts{grid-template-columns:1fr}}.hr-chart-title{font-size:14px;font-weight:650}.hr-chart-sub{font-size:11.5px;color:var(--muted);margin-top:2px}.hr-table-wrap{overflow:auto;max-height:560px;border-radius:var(--radius)}.hr-table{width:100%;border-collapse:collapse;font-size:12.5px}.hr-table th{position:sticky;top:0;z-index:2;text-align:left;font-weight:600;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted-2);background:#ffffffd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:9px 10px;border-bottom:1px solid rgba(37,53,44,.12);white-space:nowrap}.hr-table td{padding:8px 10px;border-bottom:1px solid rgba(37,53,44,.07);font-variant-numeric:tabular-nums;white-space:nowrap}.hr-table tbody tr:hover{background:#ffffff73}.hr-table .num{text-align:right}.hr-table tr.weekend td{background:#d9a3440f}.hr-table tr.empty td{color:var(--muted-2)}.hr-table tr.bulk td.day-cell{box-shadow:inset 3px 0 #d9a344}.hr-bar-cell{display:flex;align-items:center;gap:7px;min-width:120px}.hr-mini-bar{flex:1;height:6px;border-radius:999px;background:#455c4b1f;overflow:hidden}.hr-mini-bar>i{display:block;height:100%;border-radius:999px;background:#13aa73}.hr-mini-bar.full>i{background:#0b865b}.hr-notes{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));font-size:12.5px;line-height:1.5;color:var(--muted)}@media(max-width:980px){.hr-notes{grid-template-columns:1fr}}.hr-note{display:flex;gap:9px}.hr-note-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;margin-top:6px;background:#13aa73}.hr-note.warn .hr-note-dot{background:#d9a344}.hr-note b{color:var(--text);font-weight:620}.wt{display:flex;flex-direction:column;gap:10px}.wt-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid rgba(37,53,44,.09)}.wt-summary-item{display:flex;flex-direction:column;gap:1px}.wt-summary-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-2);font-weight:600}.wt-summary-value{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.wt-summary-note{flex:1;min-width:240px;font-size:11.5px;color:var(--muted);line-height:1.4}.wt-ruler,.wt-row{display:grid;grid-template-columns:88px minmax(0,1fr) 196px;align-items:center;gap:10px}.wt-ruler{position:relative;height:30px;font-size:10.5px;color:var(--muted-2)}.wt-ruler .wt-track{position:relative;height:100%;background:none}.wt-tick-label{position:absolute;top:0;transform:translate(-50%);white-space:nowrap}.wt-win-label{position:absolute;bottom:0;text-align:center;font-size:10px;color:var(--muted);border-top:1px solid rgba(37,53,44,.16);padding-top:2px;white-space:nowrap;overflow:hidden}.wt-tail-head{font-size:10.5px;color:var(--muted-2);text-align:right;text-transform:uppercase;letter-spacing:.03em}.wt-rows{display:flex;flex-direction:column;gap:3px}.wt-row{padding:1px 0;border-radius:8px}.wt-row:hover{background:#ffffff80}.wt-row.weekend .wt-day-num{color:var(--muted)}.wt-row.empty{opacity:.75}.wt-day{display:flex;align-items:center;gap:6px;font-size:11.5px}.wt-day-num{font-variant-numeric:tabular-nums;font-weight:600}.wt-day-dow{color:var(--muted-2);font-size:10.5px}.wt-bulk{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#8a6114;background:#d9a3442e;border-radius:5px;padding:1px 4px}.wt-track{position:relative;height:16px;border-radius:5px;background:#455c4b12;overflow:hidden}.wt-idle{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,#cf59604d 0,#cf59604d 6px,#cf59602b 6px,#cf59602b 12px);border-left:1px solid rgba(207,89,96,.5);border-right:1px solid rgba(207,89,96,.5)}.wt-deal{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,#27cb8f,#0b865b);border-radius:3px;box-shadow:0 1px 3px #087e5547}.wt-receipt{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,#5b9bff,#2f6fed);border-radius:3px;box-shadow:0 1px 3px #2f6fed52}.wt-other{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,#f0a850,#c07a22);border-radius:3px;box-shadow:0 1px 3px #c07a2252}.wt-foreign{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,#a98bf0,#7b52d3);border-radius:3px;box-shadow:0 1px 3px #7b52d352}.wt-creation{position:absolute;top:2px;bottom:2px;background:linear-gradient(180deg,#3a4048,#14171b);border-radius:3px;box-shadow:0 1px 3px #0a0c0f73}.wt-release.crm{background:#2f6fed}.wt-edge{position:absolute;top:0;bottom:0;width:1px;background:#25352c4d}.wt-empty-label{position:absolute;left:8px;top:1px;font-size:10px;color:var(--muted-2)}.wt-release{position:absolute;top:-1px;bottom:-1px;width:2px;margin-left:-1px;background:#cf5960;box-shadow:0 0 0 1px #ffffff8c}.wt-tail{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:1px;font-size:11px;font-variant-numeric:tabular-nums;line-height:1.25}.wt-tail-main{display:flex;align-items:baseline;gap:6px}.wt-tail-time{font-weight:620}.wt-tail-idle{color:var(--muted-2);font-size:10.5px}.wt-tail-idle.big{color:#b0444c;font-weight:600}.wt-tail-sub{font-size:10.5px;color:#2f6fed;font-weight:600}.wt-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--muted);padding-top:6px}.wt-legend-item{display:inline-flex;align-items:center;gap:6px}.wt-dot{width:9px;height:9px;border-radius:3px;display:inline-block}.wt-dot.work{background:linear-gradient(180deg,#27cb8f,#0b865b)}.wt-dot.receipt{background:linear-gradient(180deg,#5b9bff,#2f6fed)}.wt-dot.other{background:linear-gradient(180deg,#f0a850,#c07a22)}.wt-dot.foreign{background:linear-gradient(180deg,#a98bf0,#7b52d3)}.wt-dot.creation{background:linear-gradient(180deg,#3a4048,#14171b)}.wt-dot.idle{background:repeating-linear-gradient(135deg,#cf596080 0,#cf596080 4px,#cf596040 4px,#cf596040 8px)}.wt-dot.out{background:#455c4b33}.wt-legend-hint{margin-left:auto;color:var(--muted-2)}.wt-filters{display:flex;gap:6px;flex-wrap:wrap}.wt-filter{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:11.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s,opacity .15s}.wt-filter .wt-dot{width:8px;height:8px;border-radius:50%}.wt-filter:not(.active){opacity:.55}.wt-filter:not(.active) .wt-dot{filter:grayscale(1)}.wt-filter.active{background:#455c4b14;color:var(--text);border-color:#455c4b59}.wt-filter:hover{border-color:#455c4b80}@media(max-width:900px){.wt-ruler,.wt-row{grid-template-columns:66px minmax(0,1fr) 130px}.wt-win-label{display:none}}.hr-reports{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.hr-report-card{display:flex;flex-direction:column;gap:8px;padding:16px 18px;text-decoration:none;color:var(--text);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.hr-report-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px #16231c21,inset 0 1px #ffffff8f;border-color:#10a97257}.hr-report-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#13aa731f;color:#0b865b}.hr-report-icon svg{width:18px;height:18px}.hr-report-name{font-size:14px;font-weight:650}.hr-report-desc{font-size:12px;color:var(--muted);line-height:1.45}.hr-report-meta{font-size:11px;color:var(--muted-2);margin-top:auto;padding-top:6px}.hr-report-card.disabled{opacity:.55;pointer-events:none}:root{color-scheme:light;--bg: #0b100f;--panel: rgba(255, 255, 255, .62);--panel-2: rgba(255, 255, 255, .36);--table-head-bg: #e9efea;--border: rgba(36, 52, 44, .12);--border-strong: rgba(36, 52, 44, .22);--text: #17231e;--muted: #65736c;--muted-2: #87938c;--accent: #46d9a0;--accent-strong: #087e55;--accent-hover: #066646;--accent-soft: rgba(36, 190, 131, .13);--primary: #10a972;--primary-hover: #07875b;--pos: #087e55;--pos-soft: rgba(43, 191, 132, .13);--neg: #cc4650;--neg-soft: rgba(224, 78, 88, .12);--warn: #a86b13;--warn-soft: rgba(236, 174, 60, .16);--err: #c83f4a;--err-soft: rgba(224, 78, 88, .12);--info: #187997;--info-soft: rgba(49, 158, 190, .13);--sidebar: rgba(18, 25, 23, .86);--sidebar-text: #dce5df;--sidebar-border: rgba(235, 245, 238, .1);--radius: 22px;--radius-sm: 13px;--shadow: 0 4px 16px rgba(8, 16, 12, .08);--shadow-card: 0 12px 34px rgba(22, 35, 28, .09), inset 0 1px 0 rgba(255, 255, 255, .46);--shadow-lg: 0 28px 90px rgba(0, 0, 0, .36), 0 4px 18px rgba(0, 0, 0, .16);font-synthesis:none}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(68rem 42rem at 78% -8%,rgba(34,102,77,.28),transparent 70%),radial-gradient(48rem 38rem at -10% 100%,rgba(88,66,37,.18),transparent 74%),var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .35s ease,color .25s ease}:root[data-theme=light]{--bg: #e8eee8;--panel: rgba(255, 255, 255, .78);--panel-2: rgba(255, 255, 255, .56);--table-head-bg: #f3f6f2;--border: rgba(36, 52, 44, .1);--border-strong: rgba(36, 52, 44, .18);--sidebar: rgba(248, 251, 247, .9);--sidebar-text: #27372e;--sidebar-border: rgba(46, 67, 53, .12);--shadow-card: 0 12px 34px rgba(43, 60, 46, .075), inset 0 1px 0 rgba(255, 255, 255, .76)}:root[data-theme=light] body{background:radial-gradient(68rem 42rem at 78% -8%,rgba(64,173,125,.12),transparent 70%),radial-gradient(48rem 38rem at -10% 100%,rgba(187,156,99,.1),transparent 74%),var(--bg)}:root[data-theme=forest]{color-scheme:dark;--bg: #181d1a;--panel: rgba(255, 255, 255, .58);--panel-2: rgba(255, 255, 255, .32);--table-head-bg: #232a26;--border: rgba(56, 95, 74, .15);--border-strong: rgba(56, 95, 74, .25);--text: #f0f4f1;--muted: #8ba392;--muted-2: #6e8579;--accent: #b6f24a;--accent-strong: #9ed633;--accent-hover: #8bc02a;--accent-soft: rgba(182, 242, 74, .16);--primary: #b6f24a;--primary-hover: #9ed633;--pos: #6ee7a8;--pos-soft: rgba(110, 231, 168, .16);--neg: #fb7185;--neg-soft: rgba(251, 113, 133, .14);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .16);--err: #f87171;--err-soft: rgba(248, 113, 113, .14);--info: #38bdf8;--info-soft: rgba(56, 189, 248, .14);--sidebar: rgba(18, 22, 20, .92);--sidebar-text: #d4ecdb;--sidebar-border: rgba(88, 139, 112, .18);--shadow-card: 0 12px 34px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .36)}:root[data-theme=forest] body{background:radial-gradient(68rem 42rem at 78% -8%,rgba(182,242,74,.12),transparent 70%),radial-gradient(48rem 38rem at -10% 100%,rgba(56,95,74,.16),transparent 74%),var(--bg)}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.011em}h1{font-size:20px}h2{font-size:15px}h3{font-size:14px}h4{font-size:13.5px}p{margin:0 0 8px}.app{display:flex;gap:14px;min-height:100%;padding:14px}.menu-btn,.sidebar-close{display:none}.sidebar{width:244px;flex:0 0 244px;background:var(--sidebar);color:var(--sidebar-text);border:1px solid var(--sidebar-border);border-radius:26px;box-shadow:0 20px 65px #00000047,inset 0 1px #ffffff0d;-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);display:flex;flex-direction:column;position:sticky;top:14px;height:calc(100vh - 28px);overflow-y:auto}.brand{padding:21px 17px 12px}.brand-title{color:#f2f6f3;font-size:15px;font-weight:700;letter-spacing:-.01em}.brand-sub{color:#d3e0d885;font-size:11.5px;margin-top:2px}.nav{padding:8px 9px 12px;display:flex;flex-direction:column;gap:3px}.nav-group{color:#d3e0d87a;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:600;padding:17px 10px 6px}.nav a{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:12px;color:var(--sidebar-text);font-size:13.5px;font-weight:500;transition:background .12s,color .12s}.nav a:hover{background:#5cd8a317;color:#8ae8bc;text-decoration:none}.nav a.active{background:linear-gradient(100deg,#2dc28538,#2dc28514);color:#83e8b7;font-weight:650;box-shadow:inset 2px 0 #50dba2}.nav .nav-icon{display:inline-flex;width:17px;height:17px;flex:0 0 17px;opacity:.9}.nav .locked{opacity:.45;cursor:not-allowed}.sidebar-footer{margin-top:auto;padding:14px 12px;border-top:1px solid var(--sidebar-border)}.who{font-size:12.5px;color:#e8efeb;font-weight:550}.who-role{font-size:11px;color:#d3e0d885}.sidebar-footer .btn-ghost{color:#dce5dfb8!important}.sidebar-footer .btn-ghost:hover{color:#fff!important;background:#ffffff14}.module-switcher{position:relative;padding:2px 12px 6px}.module-switcher-btn{width:100%;display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:12px;background:#7f7f7f1f;border:1px solid var(--sidebar-border);color:var(--sidebar-text);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;text-align:left;transition:background .12s}.module-switcher-btn:hover{background:#7f7f7f38}.module-switcher-icon{display:inline-flex;width:17px;height:17px;flex:0 0 17px;color:var(--accent)}.module-switcher-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-switcher-caret{display:inline-flex;width:15px;height:15px;opacity:.55}.module-menu{position:absolute;top:calc(100% + 4px);left:12px;right:12px;z-index:40;padding:6px;border-radius:14px;max-height:70vh;overflow-y:auto;background:var(--sidebar);border:1px solid var(--sidebar-border);box-shadow:0 18px 50px #0006;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.module-menu-title{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-2);font-weight:600;padding:6px 8px 4px}.module-menu-item{width:100%;display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:10px;border:0;background:transparent;color:var(--sidebar-text);font:inherit;font-size:13.5px;cursor:pointer;text-align:left}.module-menu-item:hover{background:#7f7f7f24}.module-menu-item.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.module-menu-icon{display:inline-flex;width:16px;height:16px;flex:0 0 16px;opacity:.9}.module-menu-check{margin-left:auto;color:var(--accent);font-size:12px}.nav-divider{height:1px;margin:10px 11px 4px;background:var(--sidebar-border)}.module-empty{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:40px 20px}.module-empty-icon{width:76px;height:76px;border-radius:20px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);margin-bottom:8px}.module-empty-icon svg{width:34px;height:34px}.module-empty h2{font-size:20px;font-weight:700;color:var(--text)}.module-empty p{color:var(--muted);font-size:14px;max-width:440px}.vehicle-toolbar{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border)}.vehicle-filters{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;overflow-x:auto;flex-wrap:nowrap}.vehicle-filters::-webkit-scrollbar{height:6px}.vehicle-tools{display:flex;align-items:center;gap:8px;flex:0 0 auto}.vf-item{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 4px 0 10px;border:1px solid var(--border-strong);border-radius:10px;background:var(--panel-2);flex:0 0 auto;cursor:text;transition:border-color .14s,box-shadow .14s,background .14s}.vf-item:hover{border-color:var(--accent);background:var(--panel)}.vf-item:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);background:var(--panel)}.vf-label{font-size:11px;color:var(--muted);white-space:nowrap;padding-right:2px}.vf-item .select,.vf-item .input{border:0;background:transparent;box-shadow:none;height:28px;padding:2px 4px;font-size:12.5px}.vf-item .select{width:auto;min-width:108px;cursor:pointer}.vf-item .input{width:160px}.vf-item .select:focus,.vf-item .input:focus{box-shadow:none;background:transparent}.vf-x{flex:0 0 auto;width:22px;height:22px;border-radius:6px;border:0;background:transparent;color:var(--muted-2);cursor:pointer;font-size:11px;line-height:1;display:grid;place-items:center}.vf-x:hover{color:var(--neg);background:var(--neg-soft)}.menu-wrap{position:relative}.menu-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:190px;padding:6px;border-radius:12px;background:#fff;border:1px solid var(--border-strong);box-shadow:0 16px 40px #14281e2e;display:flex;flex-direction:column;gap:2px}.menu-panel-right{left:auto;right:0}.menu-item{text-align:left;border:0;background:transparent;padding:7px 9px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px;color:var(--text)}.menu-item:hover{background:var(--accent-soft);color:var(--accent-strong)}.menu-check{display:flex;align-items:center;gap:8px;padding:6px 9px;border-radius:8px;cursor:pointer;font-size:13px}.menu-check:hover{background:var(--accent-soft)}.menu-check input{accent-color:var(--accent-strong);width:15px;height:15px}.menu-sep{height:1px;background:var(--border);margin:4px 0}.menu-empty{padding:8px 9px;color:var(--muted);font-size:12px}.vehicle-table{table-layout:fixed}.vehicle-table th{position:relative;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vehicle-table th[draggable]{cursor:grab}.vehicle-table th[draggable]:active{cursor:grabbing}.vehicle-table td{overflow:hidden;text-overflow:ellipsis}.vehicle-table td.vehicle-actions{overflow:visible;text-overflow:clip}.col-resize{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize}.col-resize:hover{background:var(--accent-soft)}.vehicle-plate{font-weight:600;letter-spacing:.3px}.vform{display:flex;flex-direction:column;gap:14px}.vform-section{border:1px solid rgba(36,52,44,.14);border-radius:14px;background:#eef3ee;padding:12px 14px 14px}.vform-section-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--text);margin-bottom:10px}.vform-section-head:before{content:"";width:4px;height:14px;border-radius:2px;background:var(--accent-strong)}.vform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.vform-grid .span-2{grid-column:span 2}.vform-grid .span-3{grid-column:1 / -1}@media(min-width:1200px){.vform-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.vform-grid{grid-template-columns:1fr}}.vform .field{gap:3px}.vform .field>label{color:#3b5044;font-weight:600}.vform .input,.vform .select,.vform .textarea{background:#fff;border-color:#24342c38}.vform .input:focus,.vform .select:focus,.vform .textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.modal.modal-vehicle{display:flex;flex-direction:column;max-height:calc(100vh - 88px)}.modal.modal-vehicle .modal-head{flex:0 0 auto}.modal.modal-vehicle .modal-body{flex:1 1 auto;min-height:0;overflow-y:auto}.modal.modal-vehicle .modal-foot{flex:0 0 auto}.opt-select{display:flex;gap:6px;align-items:center}.opt-select .select{flex:1;min-width:0}.gear-btn{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:9px;background:var(--panel-2);color:var(--muted);cursor:pointer;font-size:14px;line-height:1}.gear-btn:hover{color:var(--accent-strong);border-color:var(--accent);background:var(--accent-soft)}.opt-add{display:flex;gap:8px}.opt-add .input{flex:1}.opt-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto}.opt-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border-radius:8px;font-size:13px}.opt-item:hover{background:var(--panel-2)}.drivers-list{display:flex;flex-direction:column;gap:7px;align-items:flex-start}.driver-row{display:flex;gap:8px;width:100%}.driver-row .input{flex:1}.garage-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.garage-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.garage-tools .input{width:210px}.garage-tools .select{width:auto;min-width:150px}.garage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;padding:16px}.garage-card{display:flex;flex-direction:column;gap:5px;padding:14px 15px;border:1px solid var(--border);border-radius:16px;background:var(--panel);cursor:pointer;text-align:left;transition:transform .14s,border-color .14s,box-shadow .14s}.garage-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 12px 28px #08100c1f}.garage-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.garage-plate{font-size:17px;font-weight:750;letter-spacing:.4px}.garage-title{font-size:14px;font-weight:600}.garage-meta{font-size:12px;color:var(--muted)}.garage-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;padding-top:10px;border-top:1px dashed var(--border)}.garage-stats b{display:block;font-size:14px;font-variant-numeric:tabular-nums}.garage-stats span{font-size:11px;color:var(--muted)}.garage-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;font-size:11.5px;color:var(--muted)}.garage-drivers{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.garage-detail{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:14px}@media(max-width:720px){.garage-detail{grid-template-columns:1fr}}.garage-detail-row{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid var(--border);font-size:13px}.garage-detail-row span{color:var(--muted)}.garage-detail-title{margin:4px 0 10px}.rep-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rep-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;align-items:start}@media(max-width:1000px){.rep-board{grid-template-columns:1fr}}.rep-col{background:var(--panel-2);border:1px solid var(--border);border-radius:14px;padding:10px}.rep-col-head{display:flex;justify-content:space-between;gap:8px;font-size:13px;font-weight:650;padding:2px 4px 10px}.rep-col-sum{color:var(--muted);font-weight:500;font-size:11.5px}.rep-col-body{display:flex;flex-direction:column;gap:8px;min-height:60px}.rep-card{display:flex;flex-direction:column;gap:5px;padding:10px 11px;border:1px solid var(--border);border-radius:12px;background:var(--panel);cursor:pointer;transition:border-color .14s}.rep-card:hover{border-color:var(--accent)}.rep-card-top{display:flex;justify-content:space-between;gap:8px;font-size:12px}.rep-plate{font-weight:700}.rep-cost{color:var(--accent-strong);font-weight:600}.rep-title{font-size:13px;font-weight:600}.rep-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11.5px;color:var(--muted)}.rep-move{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.rep-move .btn{padding:2px 6px;font-size:11px}.rep-empty{color:var(--muted-2);font-size:12px;text-align:center;padding:14px 0}.rem-list{display:flex;flex-direction:column}.rem-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.rem-row:last-child{border-bottom:0}.rem-row:hover{background:var(--panel-2)}.rem-row.overdue{background:var(--neg-soft)}.rem-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%}.rem-dot.error{background:var(--err)}.rem-dot.warning{background:var(--warn)}.rem-dot.pos{background:var(--pos)}.rem-dot.info{background:var(--info)}.rem-main{flex:1;min-width:0}.rem-title{display:flex;align-items:baseline;gap:8px;font-size:13px}.rem-title span{color:var(--muted);font-size:12px}.rem-label{font-size:12px;color:var(--muted)}.rem-date{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}.kpi-years{display:flex;gap:6px;flex-wrap:wrap}.kpi-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:1100px){.kpi-cols{grid-template-columns:1fr}}.faq-lead{font-size:15px;line-height:1.6;color:var(--text);margin-bottom:12px;max-width:980px}.faq-lead b{color:var(--accent-strong)}.faq-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.faq-step{border:1px solid var(--border);border-radius:16px;padding:16px;background:var(--panel);display:flex;flex-direction:column;gap:6px}.faq-step-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-weight:750;font-size:15px}.faq-step h3{margin:4px 0 2px;font-size:15px}.faq-step-body{font-size:13.5px;color:var(--muted);line-height:1.55}.faq-step-body b{color:var(--text)}.faq-note{margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--panel-2);font-size:12.5px;color:var(--text)}.faq-hint{color:var(--muted);font-size:12.5px;margin-top:10px}.faq-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px;vertical-align:middle}.faq-meters{display:flex;flex-direction:column;gap:10px;max-width:760px}.faq-meter-row{display:grid;grid-template-columns:1fr 180px 44px;gap:10px;align-items:center}@media(max-width:640px){.faq-meter-row{grid-template-columns:1fr 90px 40px}}.faq-meter-label{font-size:13px;color:var(--muted)}.faq-meter{height:12px;border-radius:8px;background:var(--panel-2);overflow:hidden}.faq-meter>div{height:100%;background:linear-gradient(90deg,#2bcf90,#0b865b)}.faq-meter-value{font-size:13px;font-weight:650;text-align:right;font-variant-numeric:tabular-nums}.faq-example{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.faq-ex{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--panel-2);display:flex;flex-direction:column;gap:4px}.faq-ex-title{font-size:12.5px;font-weight:650;color:var(--muted)}.faq-ex-line{font-size:12px;color:var(--muted)}.faq-ex .big{font-size:26px;font-weight:750;color:var(--accent-strong);font-variant-numeric:tabular-nums}.faq-ex-sub{font-size:11.5px;color:var(--muted-2)}.faq-total{display:grid;grid-template-columns:1fr 220px;gap:18px;align-items:center;margin-top:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}@media(max-width:760px){.faq-total{grid-template-columns:1fr}}.faq-formula{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13.5px;padding:10px 12px;border-radius:10px;background:var(--panel-2);overflow-x:auto;white-space:nowrap}.faq-gauge{text-align:center}.faq-gauge-value{font-size:28px;font-weight:750;color:var(--accent-strong);margin-bottom:6px}.faq-q{font-weight:650;font-size:14px;margin-top:14px}.faq-q:first-child{margin-top:0}.faq-a{color:var(--muted);font-size:13.5px;line-height:1.55;margin:4px 0 0}.faq-summary{display:grid;gap:8px;font-size:14.5px}.faq-summary b{color:var(--accent-strong);margin-right:6px}.main{flex:1;min-width:0;min-height:calc(100vh - 28px);display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.48);border-radius:28px;overflow:clip;background:linear-gradient(145deg,#f1f1e9e8,#dee4dad1);box-shadow:0 24px 80px #00000047,inset 0 1px #ffffffb8;-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%)}.topbar{position:sticky;top:14px;z-index:20;background:#f7f8f29e;-webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);border-bottom:1px solid rgba(44,59,50,.09);padding:16px 22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.content{padding:20px 22px 30px;display:flex;flex-direction:column;gap:16px;max-width:1560px;width:100%}.period-range-picker{display:inline-flex;align-items:center;gap:7px}.period-range-separator{color:#465b4e7a;font-size:13px}.month-picker{position:relative;flex:0 0 auto}.month-picker-trigger{display:inline-flex;align-items:center;gap:8px;min-width:148px;height:38px;padding:0 11px;border:1px solid rgba(255,255,255,.78);border-radius:12px;background:#ffffff8f;color:#34483b;box-shadow:0 4px 14px #19261f0e,inset 0 1px #ffffffb3;cursor:pointer;font:inherit;font-size:12.5px;text-align:left;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.month-picker-trigger:hover,.month-picker.is-open .month-picker-trigger{background:#ffffffe6;border-color:#fffffff5;box-shadow:0 7px 18px #19261f17,inset 0 1px #fff}.month-picker-trigger:focus-visible{outline:3px solid rgba(22,180,119,.25);outline-offset:2px}.month-picker-trigger:disabled{opacity:.55;cursor:not-allowed}.month-picker-calendar-icon{display:inline-flex;color:var(--accent-strong);flex:0 0 auto}.month-picker-calendar-icon svg{width:16px;height:16px}.month-picker-value{overflow:hidden;text-overflow:ellipsis}.month-picker-trigger.is-empty .month-picker-value{color:var(--muted-2)}.month-picker-chevron{display:inline-flex;color:var(--muted-2);margin-left:auto;transition:transform .18s ease}.month-picker-chevron svg{width:14px;height:14px}.month-picker.is-open .month-picker-chevron{transform:rotate(180deg);color:var(--accent-strong)}.month-picker-popover{position:absolute;top:calc(100% + 9px);left:0;z-index:90;width:310px;max-width:calc(100vw - 28px);padding:13px;border:1px solid rgba(255,255,255,.84);border-radius:18px;background:#f6f7f1f5;color:#24352b;box-shadow:0 22px 58px #0b191138,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);animation:month-pop-in .16s cubic-bezier(.2,.8,.2,1) both}.month-picker-popover.align-end{left:auto;right:0}.month-picker-heading{display:flex;align-items:center;justify-content:space-between;padding:1px 1px 11px}.month-picker-year{font-size:17px;line-height:1;font-weight:750;letter-spacing:-.035em;color:#1b2b21}.month-picker-nav{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:10px;color:#64736a;background:transparent;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.month-picker-nav svg{width:16px;height:16px}.month-picker-nav:hover{background:#ffffffd1;border-color:#324c3914;color:var(--accent-strong)}.month-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.month-picker-month{min-height:38px;padding:0 5px;border:1px solid transparent;border-radius:10px;background:transparent;color:#52635a;cursor:pointer;font:inherit;font-size:12px;font-weight:550;transition:background .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease}.month-picker-month:hover{background:#ffffffdb;border-color:#34533c14;color:#1f382a}.month-picker-month.in-range{background:#2ab87d17;color:#19724f}.month-picker-month.range-start{border-top-left-radius:12px;border-bottom-left-radius:12px}.month-picker-month.range-end{border-top-right-radius:12px;border-bottom-right-radius:12px}.month-picker-month.selected{color:#fff;background:linear-gradient(135deg,#22bc82,#0b875b);border-color:#077e55b8;box-shadow:0 4px 10px #087e5530}.month-picker-month:focus-visible{outline:3px solid rgba(22,180,119,.24);outline-offset:1px}.month-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:11px;padding-top:10px;border-top:1px solid rgba(47,65,53,.09)}.month-picker-footer button{padding:5px 8px;border:0;border-radius:8px;background:transparent;color:var(--accent-strong);cursor:pointer;font:inherit;font-size:11.5px;font-weight:650}.month-picker-footer button:hover{background:#12a97217}.month-picker-clear{color:#78867e!important}@keyframes month-pop-in{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:640px){.period-range-picker{gap:5px}.month-picker-trigger{min-width:132px;padding:0 9px;gap:6px}.month-picker-popover{width:292px}}.theme-toggle{width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.74);border-radius:12px;color:#4d6255;background:#ffffff7a;box-shadow:0 4px 14px #19261f0f,inset 0 1px #ffffff9e;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease}.theme-toggle:hover{color:var(--accent-strong);background:#ffffffd1;transform:translateY(-1px)}.theme-toggle:disabled{opacity:.65;cursor:wait}.theme-toggle svg{width:17px;height:17px}.theme-toggle:focus-visible{outline:3px solid rgba(22,180,119,.3);outline-offset:2px}body,.app,.sidebar,.main,.topbar,.card,.kpi,.d26-tile,.bk-item,.pnl-matrix-wrap{transition:background-color .5s ease,border-color .5s ease,box-shadow .5s ease,color .35s ease}:root[data-theme=light] .sidebar{box-shadow:0 14px 42px #22352714,inset 0 1px #ffffffdb}:root[data-theme=light] .brand-title{color:#21332a}:root[data-theme=light] .brand-sub,:root[data-theme=light] .nav-group,:root[data-theme=light] .who-role{color:#829087}:root[data-theme=light] .nav a{color:#46574d}:root[data-theme=light] .nav a:hover{background:#1fa97217;color:var(--accent-strong)}:root[data-theme=light] .nav a.active{background:#1fa97221;color:var(--accent-strong);box-shadow:inset 2px 0 #10a972}:root[data-theme=light] .who{color:#26372e}:root[data-theme=light] .sidebar-footer .btn-ghost{color:#607168!important}:root[data-theme=light] .sidebar-footer .btn-ghost:hover{color:#26372e!important;background:#20462f0f}:root[data-theme=light] .main{background:linear-gradient(145deg,#fffffdf5,#eff4ede6);box-shadow:0 18px 60px #2235271a,inset 0 1px #ffffffe6}:root[data-theme=light] .topbar{background:#fffffdb8}:root[data-theme=forest] .sidebar{box-shadow:0 14px 42px #00000038,inset 0 1px #ffffff14}:root[data-theme=forest] .brand-title{color:#f0f4f1}:root[data-theme=forest] .brand-sub,:root[data-theme=forest] .nav-group,:root[data-theme=forest] .who-role{color:#8ba392}:root[data-theme=forest] .nav a{color:#b8d4c2}:root[data-theme=forest] .nav a:hover{background:#b6f24a1a;color:var(--accent)}:root[data-theme=forest] .nav a.active{background:#b6f24a24;color:var(--accent);box-shadow:inset 2px 0 var(--accent)}:root[data-theme=forest] .who{color:#f0f4f1}:root[data-theme=forest] .sidebar-footer .btn-ghost{color:#8ba392!important}:root[data-theme=forest] .sidebar-footer .btn-ghost:hover{color:var(--accent)!important;background:#b6f24a14}:root[data-theme=forest] .main{background:linear-gradient(145deg,#232a26f5,#181d1aeb);box-shadow:0 18px 60px #00000038,inset 0 1px #ffffff0f}:root[data-theme=forest] .topbar{background:#181d1ac7}.card{background:var(--panel);border:1px solid rgba(255,255,255,.66);border-radius:var(--radius);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(17px) saturate(135%);backdrop-filter:blur(17px) saturate(135%)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 19px;border-bottom:1px solid rgba(37,53,44,.09)}.card-head h2{font-size:14.5px;font-weight:650}.card-head .sub{color:var(--muted);font-size:12px;margin-top:1px}.card-body{padding:16px 18px}.card-body.tight{padding:0}.card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.grid{display:grid;gap:14px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1280px){.grid.cols-5,.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.grid.cols-2,.grid.cols-3,.grid.cols-4,.grid.cols-5{grid-template-columns:1fr}.sidebar{display:flex;position:fixed;z-index:60;top:8px;bottom:8px;left:8px;width:min(86vw,310px);height:auto;transform:translate(calc(-100% - 20px));transition:transform .22s ease}.sidebar.open{transform:none}.sidebar-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#060c0980;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-close{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;border:1px solid var(--sidebar-border);background:#7f7f7f24;color:var(--sidebar-text);font-size:14px;cursor:pointer}.sidebar-close:hover{background:#ffffff1f}.brand{padding-right:46px}.menu-btn{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:38px;height:34px;padding:0 9px;border-radius:11px;border:1px solid rgba(255,255,255,.72);background:#ffffff85;cursor:pointer}.menu-btn span{display:block;height:2px;border-radius:2px;background:currentColor;opacity:.8}.app{gap:0;padding:8px}.main{min-height:calc(100vh - 16px);border-radius:20px}.topbar{top:8px;padding:13px 15px}.content{padding:14px 14px 22px}}.kpi{padding:14px 18px}.kpi-label{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:6px;font-weight:550}.kpi-value{font-size:23px;font-weight:700;margin-top:7px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi-sub{font-size:12px;color:var(--muted);margin-top:4px}.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.nowrap{white-space:nowrap}.right{text-align:right}.center{text-align:center}.bold{font-weight:650}.flex{display:flex;align-items:center;gap:8px}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:10px}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.col{display:flex;flex-direction:column;gap:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.72);background:#ffffff85;color:var(--text);padding:7px 13px;border-radius:var(--radius-sm);font-size:13px;font-weight:550;font-family:inherit;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 14px #19261f0f,inset 0 1px #ffffff9e;transition:background .16s,border-color .16s,box-shadow .16s,transform .08s;white-space:nowrap}.btn:hover{background:#ffffffc7;border-color:#fffffff5;box-shadow:0 8px 20px #19261f17}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,#20bd83,#0b865b);border-color:#119865d9;color:#fff;box-shadow:0 8px 18px #087e5538,inset 0 1px #ffffff3d}.btn-primary:hover{background:linear-gradient(135deg,#27cb8f,#0a774f);border-color:#087e55}.btn-danger{background:#fff4f4b8;border-color:#c83f4a3d;color:var(--err)}.btn-danger:hover{background:var(--err-soft);border-color:#efb4b4}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--panel-2);border-color:var(--border)}.btn-sm{padding:5px 10px;font-size:12.5px}.btn-xs{padding:2px 7px;font-size:11.5px;border-radius:8px}.input,.select,.textarea{border:1px solid rgba(255,255,255,.78);background:#ffffffa8;color:var(--text);padding:7px 11px;border-radius:var(--radius-sm);font-size:13px;width:100%;font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .16s,box-shadow .16s,background .16s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:#10a9728c;background:#ffffffe6;box-shadow:0 0 0 3px #1fc48929,0 8px 20px #12463114}.input.register-filter-active,.select.register-filter-active{border-color:#087e5552;background-color:#e6f3eac7;box-shadow:inset 3px 0 #087e5557}.input.register-filter-active:focus,.select.register-filter-active:focus{border-color:#087e5580;background-color:#f7fbf7f5;box-shadow:inset 3px 0 #087e557a,0 0 0 3px #1fc48921}.input.mono{text-align:right}.period-input{width:auto;min-width:132px;padding:5px 8px;font-size:12.5px}.field{display:flex;flex-direction:column;gap:4px}.field>label{font-size:12px;color:var(--muted);font-weight:550}.field .hint{font-size:11.5px;color:var(--muted-2)}.field.span-2{grid-column:span 2}.counterparty-combobox{position:relative;min-width:0}.counterparty-suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:130;max-height:260px;overflow:auto;padding:5px;border:1px solid rgba(49,72,56,.16);border-radius:12px;background:#fafbf7fa;color:var(--text);box-shadow:0 12px 30px #1323192e,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.counterparty-suggestion{display:block;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;font-size:13px;text-align:left;cursor:pointer;overflow-wrap:anywhere}.counterparty-suggestion:hover,.counterparty-suggestion.active{background:#12a9721a;color:var(--accent-strong)}.counterparty-suggestions-empty,.counterparty-suggestions-note{padding:8px 10px;color:var(--muted);font-size:11.5px}.counterparty-suggestions-note{border-top:1px solid var(--border)}.register-filter-chips{display:flex;flex:1 0 100%;flex-wrap:wrap;align-items:center;gap:6px;padding-top:2px}.register-filter-chip{display:inline-flex;align-items:center;gap:7px;max-width:min(100%,360px);padding:4px 8px 4px 10px;border:1px solid rgba(8,126,85,.17);border-radius:999px;background:#087e550e;color:#3f6250;font:inherit;font-size:11.5px;cursor:pointer;transition:background .14s,border-color .14s,color .14s}.register-filter-chip:hover{background:#087e551f;border-color:#087e5552;color:var(--accent-strong)}.register-filter-chip>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.register-filter-chip-x{font-size:15px;line-height:1;color:var(--muted-2)}.register-filter-chip:hover .register-filter-chip-x{color:var(--accent-strong)}.search{min-width:220px}.check{display:inline-flex;align-items:center;gap:7px;font-size:13px;cursor:pointer}.check input[type=checkbox]{accent-color:var(--accent-strong);width:15px;height:15px}.checkline{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none}.checkline input[type=checkbox]{accent-color:var(--accent-strong);width:15px;height:15px}.perm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.perm-grid .check{align-items:flex-start;gap:9px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:#ffffff4d}.perm-grid .check:hover{border-color:var(--accent-strong)}.perm-grid .check.disabled{opacity:.62;cursor:not-allowed}.perm-grid .check.disabled:hover{border-color:var(--border)}.perm-item{display:flex;flex-direction:column;gap:1px}.perm-item b{font-size:12.5px;font-weight:600}.perm-item .hint{font-size:11px;color:var(--muted-2)}@media(max-width:640px){.perm-grid{grid-template-columns:1fr}}.seg{display:inline-flex;background:#ffffff5c;border:1px solid rgba(255,255,255,.58);border-radius:12px;overflow:hidden;padding:3px;gap:3px;box-shadow:inset 0 1px 2px #222e270a}.seg button{border:0;background:transparent;padding:5px 12px;font-size:12.5px;cursor:pointer;color:var(--muted);font-family:inherit;border-radius:8px;font-weight:550;transition:background .12s,color .12s}.seg button:hover{color:var(--text)}.seg button.active{background:linear-gradient(135deg,#23bd83,#0c865b);color:#fff;font-weight:650;box-shadow:0 3px 8px #087e5533}.seg button.active:hover{color:#fff}.table-wrap{overflow:auto;max-height:70vh;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:var(--shadow-card);scrollbar-gutter:stable}table.table,table.data{border-collapse:separate;border-spacing:0;width:100%;font-size:12.5px}table.table th,table.table td,table.data th,table.data td{padding:10px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;line-height:1.35}table.table thead th,table.data thead th{position:sticky;top:0;background:var(--table-head-bg);z-index:2;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;cursor:default;white-space:nowrap;border-bottom:1px solid var(--border);padding:11px 14px}table.table thead th.sortable,table.data thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.table thead th.sortable:hover,table.data thead th.sortable:hover{color:var(--accent-strong)}table.table tbody tr:nth-child(2n),table.data tbody tr:nth-child(2n){background:color-mix(in srgb,var(--panel-2) 42%,var(--panel))}table.table tbody tr:hover,table.data tbody tr:hover{background:#10a97212}table.table th.center,table.table td.center,table.data th.center,table.data td.center{text-align:center}table.table tbody tr.selected,table.data tbody tr.selected{background:var(--accent-soft)}table.table tbody tr.issue-error,table.data tbody tr.issue-error{background:#ffebeda8}table.table tbody tr.issue-warn,table.data tbody tr.issue-warn{background:#fff6dead}table.table tbody tr.clickable,table.data tbody tr.clickable{cursor:pointer}table.table tbody tr.sel,table.data tbody tr.sel{background:var(--accent-soft)}table.table td.num,table.table th.num,table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}table.table td.tight,table.table th.tight,table.data td.tight,table.data th.tight{padding:4px 7px}table.table tfoot td,table.data tfoot td{font-weight:700;background:var(--panel-2);border-top:1px solid var(--border-strong)}.register-total-label{white-space:nowrap;color:var(--muted);font-size:12px;font-weight:650}.row-group td{background:#e5eae394;font-weight:650}.indent-1{padding-left:24px!important}.indent-2{padding-left:40px!important}.register-select-head{min-width:66px}.register-select-tools{display:flex;align-items:center;justify-content:center;gap:7px}.register-column-settings{display:inline-flex;align-items:center;justify-content:center;padding:3px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.register-column-settings:hover{background:#087e551a;color:var(--accent-strong)}.register-column-settings svg{display:block;width:15px;height:15px}.register-column-settings-list{max-height:62vh;overflow-y:auto;border:1px solid var(--border);border-radius:12px}.register-column-settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:5px 9px 5px 12px;border-bottom:1px solid var(--border)}.register-column-settings-row:last-child{border-bottom:0}.register-column-toggle{display:flex;align-items:center;gap:9px;min-width:0;cursor:pointer}.register-column-toggle input{accent-color:var(--accent-strong)}.register-column-move{display:flex;gap:5px;flex:none}.pnl-controls{padding-top:12px;padding-bottom:12px}.pnl-toolbar,.pnl-toolbar-actions,.pnl-dim-tabs{display:flex;align-items:center;gap:10px;min-width:0}.pnl-toolbar{justify-content:space-between;flex-wrap:wrap}.pnl-toolbar-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.pnl-control-select{width:auto;min-width:150px;max-width:230px}.pnl-activity-select{min-width:205px}.pnl-dim-tabs{justify-content:space-between;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.pnl-dim-tabs>.seg{max-width:100%;overflow-x:auto;scrollbar-width:thin}.pnl-digits-toggle{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;border:1px solid var(--border);background:#ffffff80;color:var(--muted);font-size:12px;font-weight:550;font-variant-numeric:tabular-nums;transition:background .14s,border-color .14s,color .14s}.pnl-digits-toggle:hover{border-color:#087e5559;color:var(--accent-strong)}.pnl-digits-toggle.active{background:var(--accent-soft);border-color:#087e5566;color:var(--accent-strong)}.pnl-digits-toggle-label{font-weight:600}table.pnl-summary th.pnl-summary-name,table.pnl-summary td.pnl-summary-name{position:sticky;left:0;z-index:2;background:#fbfcf9;border-right:1px solid rgba(44,61,50,.09)}table.pnl-summary thead th.pnl-summary-name{z-index:4;background:var(--table-head-bg)}table.pnl-summary tbody tr:nth-child(2n) td{background:#ffffff57}table.pnl-summary tbody tr:nth-child(2n) td.pnl-summary-name{background:#f5f8f2}table.pnl-summary tbody tr:hover td{background:#ffffff9e}table.pnl-summary tbody tr:hover td.pnl-summary-name{background:#eef5ee}table.pnl-summary tfoot td{background:#e9efea}table.pnl-summary tfoot td.pnl-summary-name{background:#e2eae1}.pnl-matrix-wrap{max-height:68vh;border:1px solid rgba(255,255,255,.62);border-radius:18px;background:#ffffff4d;box-shadow:0 12px 30px #19261e12;-webkit-backdrop-filter:blur(16px) saturate(135%);backdrop-filter:blur(16px) saturate(135%);scrollbar-width:thin;scrollbar-color:rgba(90,112,99,.42) transparent}.pnl-matrix-wrap::-webkit-scrollbar{width:10px;height:10px}.pnl-matrix-wrap::-webkit-scrollbar-thumb{background:#5a70636b;border:3px solid transparent;border-radius:999px;background-clip:padding-box}.pnl-matrix-wrap::-webkit-scrollbar-thumb:hover{background:#415c4c9e;background-clip:padding-box}table.pnl-matrix{width:max-content;min-width:100%;border-spacing:0}table.pnl-matrix th,table.pnl-matrix td{padding:12px 16px;border-bottom:1px solid rgba(44,61,50,.08);vertical-align:middle}table.pnl-matrix thead th{height:64px;background:#e6ebe3;border-bottom:1px solid rgba(44,61,50,.1);text-transform:none;letter-spacing:0;font-size:12px;color:#596960}table.pnl-matrix th.pnl-matrix-name{position:sticky;left:0;z-index:3;min-width:280px;width:280px;text-align:left;background:#f6f8f1;border-right:1px solid rgba(44,61,50,.08);box-shadow:7px 0 14px -13px #12203299}table.pnl-matrix thead th.pnl-matrix-name{z-index:8;background:#e6ebe3}table.pnl-matrix th.pnl-matrix-period,table.pnl-matrix td.pnl-matrix-cell{min-width:138px}table.pnl-matrix td.pnl-matrix-cell{font-size:12.5px;font-variant-numeric:tabular-nums;white-space:nowrap}table.pnl-matrix th.pnl-matrix-total,table.pnl-matrix td.pnl-matrix-total{position:sticky;right:0;z-index:3;min-width:168px;background:#eef3ec;border-left:1px solid #dce3eb;box-shadow:-7px 0 14px -13px #122032b3}table.pnl-matrix thead th.pnl-matrix-total{z-index:9;background:#cfe5d4;color:var(--accent-strong)}table.pnl-matrix thead th.pnl-matrix-name>span,table.pnl-matrix thead th.pnl-matrix-name>small{display:block}table.pnl-matrix thead th.pnl-matrix-name>span{color:#23332a;font-size:13px;font-weight:650}table.pnl-matrix thead th.pnl-matrix-name>small{margin-top:4px;color:#758279;font-size:10.5px;font-weight:500}.pnl-period-head{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.pnl-period-head>span{color:#25352c;font-size:13px;font-weight:650}.pnl-period-head>small{color:#758279;font-size:10.5px;font-weight:500}table.pnl-matrix tbody tr.pnl-matrix-row{transition:background-color .12s ease}table.pnl-matrix tbody tr.pnl-matrix-row th.pnl-matrix-name{font-weight:520;color:#344253}table.pnl-matrix tbody tr.pnl-matrix-row td{background:#fbfcf9}table.pnl-matrix tbody tr.pnl-matrix-row:hover th.pnl-matrix-name{background:#eef5ee}table.pnl-matrix tbody tr.pnl-matrix-row:hover td{background:#f1f7f0}table.pnl-matrix tbody tr.pnl-matrix-row th.pnl-matrix-name{padding-left:22px}table.pnl-matrix tbody tr.pnl-matrix-main th,table.pnl-matrix tbody tr.pnl-matrix-result th,table.pnl-matrix tbody tr.pnl-matrix-final th{font-weight:650;color:#1e2937}table.pnl-matrix tbody tr.pnl-matrix-result th,table.pnl-matrix tbody tr.pnl-matrix-result td{border-top:1px solid #dfe5eb}table.pnl-matrix tbody tr.pnl-matrix-final th,table.pnl-matrix tbody tr.pnl-matrix-final td{border-top:2px solid rgba(66,87,73,.25);border-bottom:0;background:#e9efe6}table.pnl-matrix tbody tr.pnl-matrix-final th.pnl-matrix-name{padding-left:18px;background:#e6ede2}table.pnl-matrix tbody tr.pnl-matrix-section th,table.pnl-matrix tbody tr.pnl-matrix-section td{height:38px;padding-top:8px;padding-bottom:8px;background:#e9ede4;border-bottom:0}table.pnl-matrix tbody tr.pnl-matrix-section th.pnl-matrix-name{z-index:4;background:#e9ede4;color:#6d7971;font-size:10px;font-weight:750;letter-spacing:.085em;text-transform:uppercase;border-right-color:#2c3d3214}table.pnl-matrix tbody tr.pnl-matrix-section td.pnl-matrix-total{background:#e4ebdf}.pnl-section-dot{display:inline-block;width:6px;height:6px;margin:0 8px 1px 2px;border-radius:50%;background:#8b98a7}.pnl-metric-label{display:inline-block}.pnl-metric-kind{display:inline-flex;align-items:center;justify-content:center;margin-left:7px;padding:1px 6px;border:1px solid #e0e6ed;border-radius:999px;color:#718077;background:#ffffff85;font-size:9px;font-weight:700;line-height:1.4;vertical-align:1px}.pnl-matrix-value{font-size:12.5px;font-weight:550;letter-spacing:-.01em}.pnl-matrix-percent{display:inline-block;padding:3px 7px;border-radius:999px;font-size:10.5px;font-weight:700}.pnl-matrix-percent.pos{background:#24be831f}.pnl-matrix-percent.neg{background:#e04e581a}.pnl-matrix-empty{color:#a4afbb;font-size:12px}table.pnl-matrix tbody td.pnl-matrix-total{font-weight:700;background:#eef3ec}table.pnl-matrix tbody tr.pnl-matrix-row td.pnl-matrix-total{background:#edf4ec}table.pnl-matrix tbody tr.pnl-matrix-row:hover td.pnl-matrix-total{background:#e3efe1}table.pnl-matrix tbody tr.pnl-matrix-final td.pnl-matrix-total{background:#d9e9da}@media(max-width:700px){.pnl-toolbar,.pnl-dim-tabs{align-items:stretch;flex-direction:column}.pnl-toolbar-actions{margin-left:0;justify-content:flex-start;width:100%}.pnl-control-select{max-width:none;flex:1 1 135px;min-width:0}.pnl-activity-select{flex-basis:100%}table.pnl-matrix th.pnl-matrix-name{min-width:224px;width:224px}table.pnl-matrix th.pnl-matrix-period,table.pnl-matrix td.pnl-matrix-cell{min-width:118px}table.pnl-matrix th.pnl-matrix-total,table.pnl-matrix td.pnl-matrix-total{min-width:138px}}.pager{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--border);flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);white-space:nowrap}.badge.error{background:var(--err-soft);border-color:#f3c7c7;color:var(--err)}.badge.warning{background:var(--warn-soft);border-color:#f5dcb4;color:var(--warn)}.badge.info{background:var(--info-soft);border-color:#bfe6ef;color:var(--info)}.badge.pos{background:var(--pos-soft);border-color:#bfe3cd;color:var(--pos)}.badge.accent{background:var(--accent-soft);border-color:#bfe3cd;color:var(--accent-strong)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:0 0 8px}.dot.error{background:var(--err)}.dot.warning{background:var(--warn)}.dot.info{background:var(--info)}.dot.pos{background:var(--pos)}.dotline{display:inline-flex;align-items:center;gap:7px}.dotline:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--info)}.dotline.error:before{background:var(--err)}.dotline.warning:before{background:var(--warn)}.dotline.info:before{background:var(--info)}.qstat{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2);min-width:120px}.qstat-num{font-size:22px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.qstat.err{background:var(--err-soft);border-color:#f6d4d4}.qstat.err .qstat-num,.qstat.err .small{color:var(--err)}.qstat.warn{background:var(--warn-soft);border-color:#f6e2c4}.qstat.warn .qstat-num,.qstat.warn .small{color:var(--warn)}.qstat.info{background:var(--info-soft);border-color:#c9e9f2}.qstat.info .qstat-num,.qstat.info .small{color:var(--info)}.qstat.big{padding:16px 20px}.qstat.big .qstat-num{font-size:30px}.kv{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px dashed var(--border)}.kv:last-child{border-bottom:0}.kv-label{color:var(--muted);font-size:12.5px}.kv-value{font-size:13px;font-weight:550;text-align:right}.pw-cell{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.pw-text{letter-spacing:.06em;-webkit-user-select:all;user-select:all}.pw-eye{padding:2px 6px;line-height:1;color:var(--muted)}.pw-eye:hover{color:var(--text)}.pw-eye svg{display:block}.pw-note{font-size:11.5px;line-height:1.45;color:var(--muted);padding:0 0 8px}.pw-note.pw-error{color:var(--err)}.preset{display:block;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--panel);transition:border-color .12s,box-shadow .12s,transform .12s}a.preset:hover,.preset:hover{border-color:var(--accent);box-shadow:0 4px 14px #06833014;text-decoration:none}.preset-title{font-size:13.5px;font-weight:650;color:var(--text)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:0}.setting-title{font-size:13.5px;font-weight:600}.setting-control{display:flex;align-items:center;gap:10px}.switch{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:12.5px;color:var(--muted)}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .slider{position:relative;width:38px;height:21px;border-radius:999px;background:#d4d8e0;transition:background .16s;flex:0 0 38px}.switch .slider:after{content:"";position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #10182840;transition:transform .16s}.switch input:checked+.slider{background:var(--accent-strong)}.switch input:checked+.slider:after{transform:translate(17px)}.switch input:focus-visible+.slider{box-shadow:0 0 0 3px #30b75e40}.bulkbar{position:sticky;top:62px;z-index:15;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;margin:-4px 0 0;background:var(--accent-soft);border:1px solid #bfe3cd;border-radius:12px;font-size:13px;font-weight:550;color:var(--accent-strong)}.method{background:#ffffff70}.method h4{color:var(--text)}.json{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:12px;overflow:auto;max-height:240px}.progress{height:7px;background:var(--border);border-radius:999px;overflow:hidden}.progress>div{height:100%;background:var(--accent-strong);border-radius:999px}.empty{padding:28px;text-align:center;color:var(--muted)}.alert{padding:10px 13px;border-radius:var(--radius-sm);font-size:13px;border:1px solid}.alert.err{background:var(--err-soft);border-color:#f3c7c7;color:#7f1d1d}.alert.warn{background:var(--warn-soft);border-color:#f5dcb4;color:#78350f}.alert.info{background:var(--info-soft);border-color:#bfe6ef;color:#0b4a5a}.alert.ok{background:var(--pos-soft);border-color:#bfe3cd;color:#14532d}.spinner{width:16px;height:16px;border:2px solid var(--border-strong);border-top-color:var(--accent-strong);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,#d1dad252,#ffffff9e,#d1dad252);background-size:200% 100%;animation:sk 1.2s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);background:var(--bg)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0409077a;-webkit-backdrop-filter:blur(10px) saturate(115%);backdrop-filter:blur(10px) saturate(115%);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;z-index:100;overflow:auto}.modal{background:#f4f5eef0;border-radius:24px;box-shadow:var(--shadow-lg);width:100%;max-width:720px;border:1px solid rgba(255,255,255,.78);-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%)}.modal.wide{max-width:1000px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid var(--border)}.modal-body{padding:18px 20px;display:flex;flex-direction:column;gap:12px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:13px 20px;border-top:1px solid var(--border);background:#e2e7de99;border-radius:0 0 24px 24px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid .span-2{grid-column:span 2}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.form-grid .span-2,.form-grid .field.span-2{grid-column:span 1}}.toasts{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:200}.toast{background:#18181b;color:#fff;padding:10px 15px;border-radius:12px;box-shadow:var(--shadow-lg);font-size:13px;max-width:420px;animation:toast-in .22s cubic-bezier(.33,1,.68,1)}.toast.err{background:#991b1b}.toast.ok{background:var(--accent-strong)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(46% 42% at 50% 34%,rgba(51,207,147,.22),transparent 70%),var(--bg)}.login-card{background:#f4f5eec7;border:1px solid rgba(255,255,255,.78);border-radius:26px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);padding:30px;width:100%;max-width:400px}.login-card h1{font-size:19px;margin-top:4px}.login-brand{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--accent-strong);padding:5px 11px;border-radius:999px;background:#24be8324;border:1px solid rgba(12,145,93,.18)}.apexcharts-canvas{font-family:inherit}.chart-empty{padding:28px;text-align:center;color:var(--muted)}.d26-card{overflow:hidden;container-type:inline-size;container-name:d26card}.d26-hero{position:relative}.d26-hero:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--accent),#7fd7a2 45%,transparent)}.d26-grid{display:grid;gap:10px;padding:14px 16px 16px}.d26-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.d26-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@container d26card (max-width: 1150px){.d26-cols-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@container d26card (max-width: 760px){.d26-cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}}@container d26card (max-width: 700px){.d26-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@container d26card (max-width: 460px){.d26-cols-5,.d26-cols-4{grid-template-columns:1fr}}.d26-tile{background:#ffffff70;border:1px solid rgba(255,255,255,.72);border-radius:16px;padding:12px 13px 11px;display:flex;flex-direction:column;min-width:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff85;opacity:0;animation:d26-rise .45s cubic-bezier(.22,1,.36,1) forwards;transition:border-color .15s ease,box-shadow .15s ease}.d26-tile:hover{border-color:#fffffff5;box-shadow:0 10px 25px #182a1f1a;transform:translateY(-1px)}.d26-hero .d26-tile{background:#ffffffa8}.d26-tile-label{font-size:10.5px;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);line-height:1.35;min-height:28px;display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.d26-tile-label>span:first-child{min-width:0}.d26-tile-value{font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-top:4px}.d26-hero .d26-tile-value{font-size:22px}.d26-tile-money{font-size:12px;color:var(--muted);margin-top:3px}.d26-bar{height:5px;border-radius:999px;background:#4b615221;margin-top:10px;overflow:hidden}.d26-bar>i{display:block;height:100%;border-radius:999px;background:var(--accent);width:var(--w, 0%);animation:d26-grow .8s cubic-bezier(.22,1,.36,1) both}.d26-bar>i.cost{background:#5e6e6357}.d26-bar>i.neg{background:#e18b88}.d26-tile-foot{margin-top:auto;padding-top:9px;display:flex;flex-direction:column;gap:3px;align-items:flex-start}.d26-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:650;background:var(--panel);border:1px solid var(--border);color:var(--muted);white-space:nowrap}.d26-chip.pos{background:var(--pos-soft);border-color:#bfe3cd;color:var(--pos)}.d26-chip.neg{background:var(--neg-soft);border-color:#f3c7c7;color:var(--neg)}.d26-chip.accent{background:var(--accent-soft);border-color:#bfe3cd;color:var(--accent-strong)}.d26-note{font-size:11.5px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.metric-i{flex:0 0 auto;width:17px;height:17px;padding:0;margin-top:1px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(8,126,85,.28);border-radius:50%;background:#ffffffb3;color:var(--accent-strong);font-family:Georgia,Times New Roman,serif;font-size:11px;font-weight:700;font-style:italic;line-height:1;cursor:pointer;transition:background .14s,border-color .14s,box-shadow .14s,transform .14s}.metric-i:hover{background:var(--accent-soft);border-color:#087e558c;box-shadow:0 2px 8px #087e552e;transform:translateY(-1px)}.metric-i:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.d26-head{align-items:flex-start}.d26-collapse{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.d26-collapse:hover h2{color:var(--accent-strong)}.d26-collapse h2{transition:color .14s}.d26-caret{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:20px;height:20px;margin-top:1px;border-radius:7px;background:#fff9;border:1px solid var(--border);color:var(--muted);transition:transform .18s ease,background .14s,color .14s}.d26-caret svg{width:13px;height:13px}.d26-caret.open{transform:rotate(0)}.d26-caret:not(.open){transform:rotate(-90deg)}.d26-collapse:hover .d26-caret{background:var(--accent-soft);color:var(--accent-strong)}.d26-collapsed .d26-head{padding-bottom:0}.d26-collapsed{box-shadow:0 4px 14px #16231c0f}.d26-toggle-all{color:var(--muted)}.d26-toggle-all:hover{color:var(--accent-strong)}.guide{display:flex;flex-direction:column;gap:14px}.guide-formula{padding:11px 14px;border-radius:12px;border:1px solid rgba(8,126,85,.18);background:var(--accent-soft);color:var(--accent-strong);font-size:13.5px;font-weight:600;line-height:1.5}.guide-section{display:flex;flex-direction:column;gap:7px}.guide-title{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-2)}.guide-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:13px}.guide-list li::marker{color:var(--accent)}.guide-kind{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#ffffff57}.guide-kind+.guide-kind{margin-top:8px}.guide-kind-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:#e5eae280;border-bottom:1px solid var(--border)}.guide-kind-name{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#3f5347}.guide-count{font-size:11px;color:var(--muted-2);white-space:nowrap}.guide-group{padding:9px 12px;border-bottom:1px solid rgba(36,52,44,.07)}.guide-group:last-child{border-bottom:0}.guide-group-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.guide-group-name{font-size:13px;font-weight:600;color:var(--text)}.guide-flow{padding:1px 7px;border-radius:999px;font-size:10px;font-weight:650;border:1px solid var(--border);background:#fff9;color:var(--muted);white-space:nowrap}.guide-flow.off{border-color:#a86b1340;background:var(--warn-soft);color:var(--warn)}.guide-articles{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.guide-article{padding:2px 8px;border-radius:999px;font-size:11.5px;border:1px solid rgba(36,52,44,.1);background:#ffffff8c;color:var(--muted)}.guide-empty{font-size:12px;color:var(--muted-2);padding:6px 0}.guide-note{padding:10px 13px;border-radius:11px;font-size:12.5px;line-height:1.5;border:1px solid rgba(168,107,19,.22);background:var(--warn-soft);color:#7c5410}.guide-source{font-size:11.5px;color:var(--muted-2)}.d26-section{display:flex;align-items:center;gap:12px}.d26-section-title{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}.d26-section-line{flex:1;height:1px;background:var(--border)}.d26-prods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(max-width:1180px){.d26-prods{grid-template-columns:1fr}}@keyframes d26-rise{0%{opacity:0}to{opacity:1}}@keyframes d26-grow{0%{width:0}to{width:var(--w, 0%)}}@media(prefers-reduced-motion:reduce){.d26-tile{opacity:1;animation:none}.d26-bar>i{animation:none}}.bk-card{overflow:hidden}.bk-strip{display:flex;gap:12px;padding:14px 16px 16px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#d7dce3 transparent}.bk-strip::-webkit-scrollbar{height:8px}.bk-strip::-webkit-scrollbar-track{background:transparent}.bk-strip::-webkit-scrollbar-thumb{background:#d7dce3;border-radius:999px}.bk-strip::-webkit-scrollbar-thumb:hover{background:#b8bfcc}.bk-item{flex:0 0 236px;scroll-snap-align:start;background:#ffffff75;border:1px solid rgba(255,255,255,.72);border-radius:16px;padding:12px 13px 11px;display:flex;flex-direction:column;gap:7px;min-width:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff8a;opacity:0;animation:d26-rise .45s cubic-bezier(.22,1,.36,1) forwards;transition:border-color .15s ease,box-shadow .15s ease}.bk-item:hover{border-color:#fffffff5;box-shadow:0 10px 24px #182a1f1a;transform:translateY(-1px)}.bk-item-top{display:flex;align-items:center;gap:8px;min-width:0}.bk-logo{width:26px;height:26px;flex:0 0 26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.01em}.bk-bank{font-size:12.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-eye{margin-left:auto;border:0;background:transparent;color:var(--muted-2);padding:3px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.bk-eye:hover{background:var(--panel);color:var(--text)}.bk-eye svg{width:15px;height:15px}.bk-amount{font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}.bk-amount.masked{color:var(--muted);letter-spacing:.12em}.bk-acc{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;padding:0;color:var(--muted);font-size:11px;text-align:left;cursor:pointer;font-family:inherit;border-radius:6px;transition:color .12s}.bk-acc:hover{color:var(--accent-strong)}.bk-acc-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-acc-icon{display:inline-flex;opacity:.55;flex:0 0 auto}.bk-acc:hover .bk-acc-icon{opacity:1}.bk-acc-icon svg{width:13px;height:13px}.bk-asof{font-size:10.5px;color:var(--muted-2)}.bk-steps{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--muted)}.bk-file{width:100%;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:10px 11px;background:var(--panel-2);font-size:12.5px;color:var(--muted);cursor:pointer}.bk-file:hover{border-color:var(--accent)}@media(prefers-reduced-motion:reduce){.bk-item{opacity:1;animation:none}}.tree-cols{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding-bottom:6px}.tree-col{flex:1 1 0;min-width:196px;max-width:300px;display:flex;flex-direction:column;gap:7px}.tree-col-head{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);padding:0 3px}.tree-col-body{display:flex;flex-direction:column;gap:6px}.tree-block{position:relative;display:flex;align-items:stretch;border:1px solid var(--border);border-radius:14px;background:var(--panel-2);transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.tree-block:hover{border-color:var(--border-strong);background:var(--panel)}.tree-block.selected{border-color:#10a9728c;background:#2ab87d14;box-shadow:0 0 0 3px #10a9721f}.tree-block.inactive{opacity:.55}.tree-block-main{flex:1;display:flex;flex-direction:column;gap:4px;text-align:left;padding:9px 10px;border:0;background:transparent;cursor:pointer;font:inherit;color:var(--text);border-radius:14px}.tree-block-name{font-size:12.5px;font-weight:600;line-height:1.25}.tree-block-meta{display:flex;align-items:center;gap:8px}.tree-block-ops{font-size:10.5px;color:var(--muted-2);font-weight:650;background:#588b701f;border-radius:7px;padding:1px 6px}.tree-block-amount{font-size:11.5px;color:var(--muted)}.tree-block-amount.pos{color:var(--accent-strong)}.tree-block-amount.neg{color:var(--neg)}.tree-block-chevron{margin-left:auto;color:var(--muted-2);font-size:15px;line-height:1}.tree-block.selected .tree-block-chevron{color:var(--accent-strong)}.tree-block-move{width:30px;flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-left:1px solid var(--border);border-radius:0 14px 14px 0;background:transparent;color:var(--muted-2);cursor:pointer;opacity:0;transition:opacity .14s ease,color .14s ease,background .14s ease}.tree-block-move svg{width:14px;height:14px}.tree-block:hover .tree-block-move{opacity:1}.tree-block-move:hover{color:var(--accent-strong);background:#10a97214}.tree-hint{margin:10px 2px 0}.tree-article-empty{margin:2px 0;padding:9px;border:1px dashed var(--border-strong);border-radius:11px;line-height:1.45}.tree-unassigned-article{margin:2px 0 0;padding:8px 9px;font-size:11.5px;line-height:1.4}.tree-items{display:flex;flex-direction:column;gap:6px}.tree-items-toggle{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 9px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2);color:var(--muted);cursor:pointer;font:inherit;font-size:12px;font-weight:600}.tree-items-toggle:hover{color:var(--accent-strong);border-color:var(--border-strong)}.tree-items-caret{display:inline-block;transition:transform .16s ease;font-size:11px}.tree-items-caret.open{transform:rotate(90deg)}.tree-items-table{width:100%;border-collapse:collapse;font-size:12.5px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.tree-items-table th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);padding:7px 9px;background:var(--panel-2);border-bottom:1px solid var(--border)}.tree-items-table td{padding:7px 9px;border-bottom:1px solid var(--border)}.tree-items-table tr:last-child td{border-bottom:0}.tree-items-table tr.inactive td{opacity:.55}.tree-items-empty{margin:0}.tree-move-list{display:flex;flex-direction:column;gap:5px;max-height:340px;overflow-y:auto}.tree-move-option{display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid var(--border);border-radius:12px;cursor:pointer;background:var(--panel-2);transition:border-color .14s ease,background .14s ease}.tree-move-option:hover{border-color:var(--border-strong);background:var(--panel)}.tree-move-option.selected{border-color:#10a9728c;background:#2ab87d14}.tree-move-option.disabled{opacity:.45;cursor:not-allowed}.tree-move-name{font-size:13px;font-weight:550}.tree-move-sub{margin-left:auto}.tree-move-hint{margin:0 0 8px}.tree-col-head{display:flex;align-items:center;gap:8px}.tree-col-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:10.5px;text-transform:none;letter-spacing:0;color:var(--muted-2);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.tree-col-toggle input{accent-color:#10a972;width:12px;height:12px;margin:0;cursor:pointer}.tree-meta-btn{border:0;background:transparent;color:var(--muted-2);cursor:pointer;font:inherit;font-size:12px;line-height:1;padding:1px 2px;margin-left:-2px;transition:color .14s ease}.tree-meta-btn:hover{color:var(--accent-strong)}.tree-block-tools{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 4px;border-left:1px solid var(--border);opacity:0;transition:opacity .14s ease}.tree-block:hover .tree-block-tools{opacity:1}.tree-tool-btn{border:0;background:transparent;color:var(--muted-2);cursor:pointer;font:inherit;font-size:11px;line-height:1;padding:2px 4px;border-radius:6px;transition:color .14s ease,background .14s ease}.tree-tool-btn:hover:not(:disabled){color:var(--accent-strong);background:#10a97214}.tree-tool-btn:disabled{opacity:.3;cursor:default}.tree-items-head{font-size:12px;font-weight:650;color:var(--muted)}.tree-row-btn{border:0;background:transparent;color:var(--muted-2);cursor:pointer;font:inherit;font-size:12px;line-height:1;padding:1px 3px;margin-left:2px;border-radius:6px;transition:color .14s ease,background .14s ease}.tree-row-btn:hover:not(:disabled){color:var(--accent-strong);background:#10a97214}.tree-row-btn:disabled{opacity:.3;cursor:default}.tree-consequences{margin-top:12px;border:1px solid rgba(16,169,114,.35);border-radius:12px;background:#2ab87d0f;padding:10px 12px}.tree-consequences-title{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:6px}.tree-consequences-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}.tree-consequences-list li{font-size:12.5px;line-height:1.35}.tree-ops-pager{display:inline-flex;align-items:center;gap:8px;margin-left:10px}.tree-ops-total{margin:8px 2px 0}@media(max-width:760px){.tree-cols{flex-direction:column}.tree-col{max-width:none;width:100%}.tree-block-move{opacity:1}}@media print{.sidebar,.topbar,.no-print{display:none!important}.content{padding:0}.card{box-shadow:none;break-inside:avoid;border-color:#ddd}body{background:#fff}}.plan-gantt-wrap{overflow-x:auto}.plan-gantt{min-width:1120px}.plan-gantt-header,.plan-gantt-row,.plan-phase-row{display:grid;grid-template-columns:34px minmax(300px,1.55fr) 92px 92px 118px minmax(440px,2.2fr);align-items:center}.plan-gantt-header{position:sticky;top:0;z-index:3;background:var(--table-head-bg);border-bottom:1px solid var(--border-strong);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:650;padding:8px 10px;gap:0}.plan-gantt-header>div{padding:0 6px}.plan-col-done{display:flex;align-items:center;justify-content:center}.plan-col-timeline{position:relative;height:100%;min-height:24px}.plan-gantt-row{border-bottom:1px solid var(--border);padding:7px 10px;transition:background .12s}.plan-gantt-row:hover{background:#ffffff73}.plan-gantt-row.done{opacity:.62}.plan-gantt-row>div{padding:0 6px;min-width:0}.plan-phase-row{padding:8px 10px 4px 44px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-strong);border-bottom:1px solid var(--border)}.plan-title-btn{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:13px;font-weight:550;text-align:left;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.plan-title-btn:hover{color:var(--accent-strong);text-decoration:underline}.plan-title-meta{font-size:11.5px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-date-btn{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:12.5px;font-variant-numeric:tabular-nums;padding:0}.plan-date-btn:hover{color:var(--accent-strong);text-decoration:underline}.plan-timeline-months{position:relative;height:100%}.plan-month{position:absolute;top:0;bottom:0;overflow:hidden;font-size:10.5px;color:var(--muted);white-space:nowrap;border-left:1px dashed var(--border);padding-left:4px;line-height:24px}.plan-bar{position:absolute;top:5px;height:14px;min-width:4px;background:linear-gradient(135deg,#23bd83,#0c865b);border-radius:6px;box-shadow:inset 0 1px #ffffff4d}.plan-bar.done{background:#9fb8aa}.plan-gantt-header .plan-col-timeline{display:flex;align-items:stretch}.input-with-btn{display:flex;gap:6px;align-items:stretch}.input-with-btn .input{flex:1;min-width:0}.input-with-btn .btn{flex:0 0 auto}.perm-summary{margin:2px 0 8px}.module-perms{display:flex;flex-direction:column;gap:6px}.module-perm{border:1px solid var(--border);border-radius:11px;background:#ffffff57;overflow:hidden}.module-perm.off{background:#00000009}.module-perm-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 10px}.module-perm-toggle{display:inline-flex;align-items:center;gap:8px;flex:1 1 200px;min-width:0;border:0;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer;text-align:left;padding:2px 0}.module-perm-toggle:hover .module-perm-name{color:var(--accent-strong)}.module-perm-caret{width:12px;color:var(--muted-2);font-size:11px;flex:0 0 auto}.module-perm-icon{display:inline-flex;color:var(--muted);flex:0 0 auto}.module-perm-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-perm-levels button{padding:4px 10px;font-size:12px}.module-perm-levels button:disabled{opacity:.6;cursor:not-allowed}.module-perm-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:7px;padding:9px 12px 11px;border-top:1px dashed var(--border)}.module-perm-actions .check{align-items:flex-start;gap:8px}.module-perm-actions .check b{font-size:12px}.module-perm-actions .check .hint{font-size:10.5px}.module-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:280px}.module-chip{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:10.5px;line-height:1.7;border:1px solid var(--border);background:#ffffff80;color:var(--muted);white-space:nowrap}.module-chip.full{border-color:#bfe3cd;background:var(--pos-soft);color:var(--pos)}.module-chip.read{border-color:var(--border);background:#ffffff8c;color:var(--muted)}.module-access{display:inline-flex;align-items:center}.module-access-summary{display:inline-flex;align-items:center;gap:9px;padding:3px 9px 3px 7px;border:1px solid var(--border);border-radius:999px;background:#ffffff94;color:var(--muted);font:inherit;cursor:pointer;transition:border-color .14s,background .14s,box-shadow .14s}.module-access-summary:hover{border-color:#087e5561;background:#ffffffd1;box-shadow:0 2px 8px #14281e12}.module-access-count{display:inline-flex;align-items:baseline;gap:1px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted-2);line-height:1}.module-access-count b{font-size:12.5px;font-weight:700;color:var(--accent-strong)}.module-access-dots{display:inline-flex;align-items:center;gap:3px}.module-dot{width:6px;height:6px;border-radius:50%;background:#65736c47;flex:0 0 6px}.module-dot.full{background:#10a972}.module-dot.read{background:#9dc9b6}.module-dot.none{background:#65736c29}.module-access-flag{padding:0 5px;border-radius:999px;font-size:9px;font-weight:700;line-height:15px;letter-spacing:.02em;text-transform:uppercase;background:var(--info-soft);color:var(--info);border:1px solid rgba(24,121,151,.22)}.module-access-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden}.module-access-row{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:40px;border-bottom:1px solid var(--border);background:#ffffff52}.module-access-row:last-child{border-bottom:0}.module-access-row.off{background:#00000009}.module-access-icon{display:inline-flex;color:var(--muted);flex:0 0 auto}.module-access-row.off .module-access-icon{opacity:.5}.module-access-name{flex:1 1 auto;font-weight:550}.module-access-row.off .module-access-name{color:var(--muted)}.level-chip{flex:0 0 auto;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid var(--border);background:#ffffff80;color:var(--muted)}.level-chip.full{border-color:#bfe3cd;background:var(--pos-soft);color:var(--pos)}.level-chip.none{border-color:#c83f4a33;background:var(--neg-soft);color:var(--neg)}@media(max-width:640px){.module-perm-head{align-items:flex-start}.module-perm-levels{width:100%}}.freight-muted{color:var(--muted);font-size:12px}.freight-note{margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--warn-soft);color:var(--warn);font-size:12.5px}.freight-toolbar{display:inline-flex;gap:8px;padding:10px 0;flex-wrap:nowrap;align-items:center}.freight-toolbar .select{min-width:150px;width:auto}.freight-toolbar .input{min-width:180px;width:auto}.freight-table-wrap{overflow-x:auto}.freight-link{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--text)}.freight-link:hover b{color:var(--accent-strong)}.freight-link b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.freight-link span{font-weight:550}.freight-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}.freight-head-title{display:flex;align-items:center;gap:10px;font-size:15px}.freight-head-title b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.freight-head-sub{font-size:18px;font-weight:650;margin-top:4px}.freight-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:14px}.freight-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.freight-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end;margin-top:6px}.freight-modal-foot{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.freight-modal-field{display:flex;flex-direction:column;gap:6px}.freight-modal-field span{font-size:12px;font-weight:550;color:var(--muted)}.freight-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.freight-form-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px;padding:0 2px}.freight-form-title{font-size:18px;font-weight:700;margin:0}.freight-form-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.freight-form .card-head{padding:12px 16px}.freight-form .card-body{padding:14px 16px 16px}.freight-form .form-grid{gap:16px 14px}.freight-form .field{gap:3px}.freight-form .field .hint{font-size:11px}.freight-form .field>label{color:var(--text);font-weight:600;font-size:12.5px}.freight-form .input,.freight-form .select,.freight-form .textarea{background:#fffffff2;border:1px solid rgba(36,52,44,.22);box-shadow:inset 0 1px 2px #0000000a;border-radius:10px;padding:6px 10px;min-width:0}.freight-form .input::placeholder,.freight-form .textarea::placeholder{color:var(--muted);opacity:.7}.freight-form .input:focus,.freight-form .select:focus,.freight-form .textarea:focus{background:#fff;border-color:var(--accent-strong);box-shadow:0 0 0 3px #1fc4892e,inset 0 1px 2px #0000000a}@media(min-width:1100px){.freight-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.freight-form .form-grid .span-all{grid-column:1 / -1}.freight-section-title{margin-top:2px;padding-top:6px;border-top:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.5px}.form-grid input[type=datetime-local],.form-grid input[type=date]{min-width:0}.freight-grid,.freight-grid-3,.freight-grid-5{display:grid;gap:16px 18px;align-items:start}.freight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.freight-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.freight-grid-4{display:grid;gap:16px 18px;align-items:start;grid-template-columns:repeat(4,minmax(0,1fr))}.freight-grid-4 .fg-col-2{grid-column:span 2}.freight-grid-4 .fg-col-4{grid-column:1 / -1}.freight-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.freight-grid .field,.freight-grid-3 .field,.freight-grid-4 .field,.freight-grid-5 .field{min-width:0}.freight-grid .fg-col-all,.freight-grid-3 .fg-col-all,.freight-grid-4 .fg-col-all,.freight-grid-5 .fg-col-all{grid-column:1 / -1}.freight-grid-5 .fg-col-2{grid-column:span 2}.freight-grid-5 .fg-col-5{grid-column:1 / -1}@media(max-width:1280px){.freight-grid-4,.freight-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.freight-grid-4,.freight-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.freight-grid,.freight-grid-2,.freight-grid-3,.freight-grid-4,.freight-grid-5{grid-template-columns:minmax(0,1fr)}.fg-col-2,.fg-col-3,.fg-col-4,.fg-col-5,.fg-col-all{grid-column:1 / -1}}.freight-body-type{position:relative}.freight-body-type-trigger{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;text-align:left;height:auto;min-height:36px;padding-top:7px;padding-bottom:7px}.freight-body-type-trigger span:first-child{min-width:0;word-break:break-word}.freight-body-type-arrow{color:var(--muted);font-size:10px;flex:0 0 auto;margin-top:4px}.freight-body-type-dropdown{z-index:9999;min-width:220px;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 12px 32px #00000038;max-height:260px;overflow-y:auto;padding:4px 0}.freight-body-type-option{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:13px}.freight-body-type-option:hover{background:var(--hover)}.freight-body-type-option input{flex:0 0 auto}.freight-searchable{position:relative}.freight-searchable-dropdown{z-index:9999;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 12px 32px #00000038;max-height:260px;overflow-y:auto;padding:4px 0}.freight-searchable-option{display:block;width:100%;text-align:left;padding:8px 12px;border:0;background:transparent;cursor:pointer;font-size:13px;color:var(--text)}.freight-searchable-option:hover{background:var(--hover)}.freight-searchable-empty{padding:10px 12px;color:var(--muted);font-size:12px}.freight-select{position:relative}.freight-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;white-space:nowrap;overflow:hidden}.freight-select-trigger span:first-child{overflow:hidden;text-overflow:ellipsis;min-width:0}.freight-select-trigger .muted{color:var(--muted)}.freight-select-arrow{color:var(--muted);font-size:10px;flex:0 0 auto}.freight-select-dropdown{z-index:9999;min-width:220px;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 12px 32px #00000038;max-height:260px;overflow-y:auto;padding:4px 0}.freight-select-option{display:block;width:100%;text-align:left;padding:8px 12px;border:0;background:transparent;cursor:pointer;font-size:13px;color:var(--text)}.freight-select-option:hover{background:var(--hover)}.freight-select-option.selected{background:var(--accent-soft);color:var(--accent-strong)}.freight-select-empty{padding:10px 12px;color:var(--muted);font-size:12px}.fg-col,.fg-col .field{min-width:0}.fg-col .input,.fg-col .select,.fg-col .textarea{width:100%;min-width:0}.fg-col-2{grid-column:span 2}.fg-col-3{grid-column:1 / -1}@media(max-width:1100px){.freight-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.freight-grid-3 .fg-col-3{grid-column:1 / -1}}@media(max-width:680px){.freight-grid,.freight-grid-3{grid-template-columns:minmax(0,1fr)}.fg-col-2,.fg-col-3{grid-column:1 / -1}}.freight-points{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.freight-point{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;display:grid;gap:6px;background:var(--table-head-bg)}.freight-point.waypoint{background:var(--accent-soft);border-color:var(--accent)}.freight-point-head{display:flex;align-items:center;gap:8px}.freight-point-index{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:700}.freight-point-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.freight-participants{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.freight-participants-head{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.freight-add-participant-btn{grid-column:1 / -1;justify-self:start;border:1px dashed var(--accent-strong);color:var(--accent-strong);background:var(--accent-soft);padding:8px 14px;font-weight:600}.freight-add-participant-btn:hover{background:var(--accent);color:#fff;border-style:solid}.freight-cp-categories{grid-column:1 / -1}.freight-cp-categories-title{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.freight-cp-categories-list{display:flex;flex-wrap:wrap;gap:8px}.freight-cp-category{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--table-head-bg);font-size:12px;cursor:pointer;color:var(--text)}.freight-cp-category:hover{background:var(--hover)}.freight-cp-category.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.freight-cp-category .box{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center}.freight-participant{border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px;display:grid;gap:6px}.freight-participant-row{display:grid;grid-template-columns:2fr 1fr auto;gap:8px;align-items:center}.freight-participant-row:last-child{grid-template-columns:1fr 1.4fr}.freight-add-carrier{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:8px;padding:12px 16px 16px;border-top:1px dashed var(--border);align-items:center}.freight-dl{display:grid;grid-template-columns:130px 1fr;gap:8px 14px;margin:0;font-size:13px}.freight-dl dt{color:var(--muted)}.freight-dl dd{margin:0}.freight-timeline{list-style:none;margin:0;padding:0;display:grid;gap:14px;position:relative}.freight-timeline li{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative}.freight-timeline li:not(:last-child):before{content:"";position:absolute;left:6px;top:16px;bottom:-14px;width:2px;background:var(--border)}.freight-dot{width:12px;height:12px;border-radius:50%;margin-top:4px;background:var(--muted)}.freight-dot.load{background:var(--accent-strong)}.freight-dot.unload{background:var(--info)}.freight-dot.waypoint{background:var(--warn)}.freight-log{display:grid;gap:0}.freight-log-row{display:grid;grid-template-columns:130px 190px 110px 1fr;gap:10px;padding:8px 16px;font-size:12.5px;border-bottom:1px solid var(--border);align-items:baseline}.freight-log-row:last-child{border-bottom:0}.freight-log-time{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.freight-log-type{font-weight:550}.freight-log-payload{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freight-won{background:var(--pos-soft)}@media(max-width:720px){.freight-add-carrier{grid-template-columns:1fr}.freight-participant-row,.freight-participant-row:last-child{grid-template-columns:1fr}.freight-log-row{grid-template-columns:1fr;gap:2px}}.freight-carrier{min-height:100vh;background:radial-gradient(1200px 600px at 50% -10%,rgba(32,189,131,.18),transparent 60%),var(--bg);color:var(--text);padding:0 0 32px;font-size:15px}.carrier-top{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;max-width:560px;margin:0 auto}.carrier-brand{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.2px}.carrier-logo{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#20bd83,#0b865b);color:#fff}.carrier-status{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--panel);border:1px solid var(--border);color:var(--muted)}.carrier-status.published{color:var(--accent-strong);background:var(--accent-soft);border-color:transparent}.carrier-status.awarded{color:var(--pos);background:var(--pos-soft);border-color:transparent}.carrier-status.cancelled{color:var(--warn);background:var(--warn-soft);border-color:transparent}.carrier-body{max-width:560px;margin:0 auto;padding:0 14px;display:grid;gap:12px}.carrier-card{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:16px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.carrier-card h1{font-size:19px;line-height:1.25;margin:2px 0 0}.carrier-card h2{font-size:14px;margin:0 0 10px;letter-spacing:.2px;color:var(--muted);text-transform:uppercase}.carrier-muted{color:var(--muted);font-size:13px}.carrier-note{margin:10px 0 0;font-size:13px;color:var(--muted)}.carrier-route{margin-top:12px;font-size:15px;font-weight:600;line-height:1.35}.carrier-distance{margin-top:12px;padding:10px 12px;background:var(--accent-soft);border-radius:12px;font-size:13px;color:var(--text)}.carrier-distance b{color:var(--accent-strong)}.carrier-budget{margin-top:14px;padding:12px 14px;border-radius:14px;background:var(--accent-soft);display:flex;align-items:center;justify-content:space-between;gap:10px}.carrier-budget b{display:block;font-size:20px;color:var(--accent-strong)}.carrier-timeline{list-style:none;margin:0;padding:0;display:grid;gap:14px;position:relative}.carrier-timeline li{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;font-size:14px}.carrier-timeline li:not(:last-child):before{content:"";position:absolute;left:6px;top:16px;bottom:-14px;width:2px;background:var(--border)}.carrier-dl{display:grid;grid-template-columns:1fr;gap:2px;margin:0}.carrier-dl dt{color:var(--muted);font-size:12px;margin-top:8px}.carrier-dl dd{margin:0;font-size:14px}.carrier-bid{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.carrier-bid b{font-size:22px;color:var(--accent-strong)}.carrier-blind{margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--info-soft);color:var(--info);font-size:12.5px}.carrier-form{display:grid;gap:12px}.carrier-form label{display:grid;gap:6px;font-size:12px;color:var(--muted);font-weight:550}.carrier-form input,.carrier-form textarea{width:100%;padding:12px 13px;border-radius:13px;border:1px solid var(--border-strong);background:var(--table-head-bg);color:var(--text);font-size:16px;font-family:inherit}.carrier-form textarea{font-size:15px;resize:vertical}.carrier-form input:focus,.carrier-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.carrier-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.carrier-check{display:flex!important;align-items:center;gap:8px;font-size:13px;color:var(--text);padding-bottom:12px}.carrier-check input{width:auto}.carrier-btn{width:100%;padding:14px;border-radius:14px;font-size:15px;margin-top:4px;text-align:center}.carrier-decline{width:100%;margin-top:10px;background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline;cursor:pointer;padding:8px}.carrier-error{color:var(--err);font-size:13px}.carrier-ok{color:var(--pos);font-size:13px}.carrier-result.won{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.carrier-result.lost{opacity:.92}.carrier-loading{max-width:560px;margin:40px auto;text-align:center;color:var(--muted)}.carrier-foot{max-width:560px;margin:18px auto 0;padding:0 18px;color:var(--muted);font-size:11.5px;text-align:center}.gantt-wrap{overflow-x:auto;padding-bottom:6px}.gantt{min-width:980px}.gantt-head,.gantt-row{display:grid;grid-template-columns:380px minmax(560px,1fr)}.gantt-head{position:sticky;top:0;z-index:2;background:var(--table-head-bg);border-bottom:1px solid var(--border)}.gantt-label-head{padding:10px 16px;font-size:11px;font-weight:650;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);border-right:1px solid var(--border)}.gantt-track-head{position:relative}.gantt-months{display:flex;height:30px}.gantt-months>div{display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:650;color:var(--muted);border-right:1px solid var(--border)}.gantt-weeks{position:relative;height:22px}.gantt-week{position:absolute;top:0;bottom:0;border-left:1px dashed var(--border)}.gantt-week span{position:absolute;top:2px;left:3px;font-size:10px;color:var(--muted);white-space:nowrap}.gantt-group{padding:8px 16px;background:var(--table-head-bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:11.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--muted)}.gantt-row{cursor:pointer;border-bottom:1px solid var(--border)}.gantt-row:hover{background:#10a9720b}.gantt-row.is-late{background:#c83f4a0d}.gantt-row.is-done .gantt-task-title{color:var(--muted);text-decoration:line-through}.gantt-task{display:flex;align-items:center;gap:10px;padding:9px 14px;border-right:1px solid var(--border);min-width:0}.gantt-check{width:16px;height:16px;flex:0 0 auto;accent-color:var(--accent-strong);cursor:pointer}.gantt-task-main{flex:1;min-width:0}.gantt-task-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:550}.gantt-task-meta{margin-top:2px;font-size:11.5px;color:var(--muted)}.gantt-track{position:relative;height:46px}.gantt-grid-line{position:absolute;top:0;bottom:0;border-left:1px dashed var(--border)}.gantt-bar{position:absolute;top:14px;height:18px;border-radius:9px;overflow:hidden;min-width:14px}.gantt-bar-fill{position:absolute;inset:0 auto 0 0;background:currentColor;opacity:.5}.gantt-bar-text{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:700;color:#fff}.gantt-bar.todo{color:#8aa197;background:#788c8238}.gantt-bar.todo .gantt-bar-text{color:var(--text)}.gantt-bar.doing{color:#187997;background:#18799733}.gantt-bar.done{color:#087e55;background:#087e5533}.gantt-bar.blocked{color:#c83f4a;background:#c83f4a33}.gantt-foot{display:flex;gap:16px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted)}.gantt-legend{display:inline-flex;align-items:center;gap:6px}.gantt-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.gantt-dot.todo{background:#8aa197}.gantt-dot.doing{background:#187997}.gantt-dot.done{background:#087e55}.gantt-dot.blocked{background:#c83f4a}.gantt-range{width:100%;accent-color:var(--accent-strong)}.plan-comments{display:grid;gap:10px;margin-top:4px;padding-top:14px;border-top:1px solid var(--border)}.plan-comments-head{font-size:13px;font-weight:650}.plan-comment-list{display:grid;gap:8px;max-height:240px;overflow-y:auto}.plan-comment{padding:8px 10px;border-radius:10px;background:var(--table-head-bg);font-size:13px}.plan-comment-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:2px;font-size:11.5px;color:var(--muted)}.plan-comment-add{display:grid;gap:8px;justify-items:start}.freight-attachments{display:grid;gap:8px}.freight-attachment{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.freight-attachment-info{display:grid;gap:2px;min-width:0}.freight-attachment-info b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.freight-attachment-info span{font-size:11.5px}.carrier-attachments{display:grid;gap:8px}.carrier-attachment{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;text-decoration:none;color:inherit;background:var(--panel)}.carrier-attachment span:first-child{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.freight-versions{display:grid;gap:8px}.freight-version{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.freight-version-main{display:grid;gap:2px}.freight-version-main span{font-size:11.5px}.freight-version-json{max-height:460px;overflow:auto;background:var(--code-bg, var(--table-head-bg));padding:12px;border-radius:10px;font-size:12px;line-height:1.45}.freight-templates{display:grid;gap:8px}.freight-template{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.freight-template-main{display:grid;gap:2px;min-width:0}.freight-template-main b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.freight-template-main span{font-size:11.5px}.freight-carrier-docs{padding:10px 0;border-top:1px solid var(--border)}.freight-carrier-docs:first-child{border-top:none;padding-top:0}.freight-carrier-docs-name{display:block;margin-bottom:8px;font-size:14px}.freight-docs-empty{margin:6px 0}.freight-docs-list{display:grid;gap:8px;margin-bottom:12px}.freight-doc{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.freight-doc>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.freight-doc>div>*{font-size:13px}.freight-doc>div .freight-muted{font-size:12px}.freight-doc-form,.freight-add-carrier{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;align-items:end}.freight-filters{display:flex;flex-direction:column;gap:10px;padding:14px 18px 12px;border-bottom:1px solid var(--border)}.freight-filters-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.freight-filter-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-strong);background:var(--panel-2);font-weight:600}.freight-filter-toggle.is-open{border-color:var(--accent-strong);color:var(--accent-strong);background:var(--accent-soft)}.freight-filter-toggle svg{width:16px;height:16px}.freight-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent-strong);color:#fff;font-size:11px}.freight-search{position:relative;display:flex;align-items:center;flex:1 1 240px;max-width:380px}.freight-search .input{width:100%;padding-left:34px}.freight-search-icon{position:absolute;left:11px;display:flex;color:var(--muted);pointer-events:none}.freight-search-icon svg{width:15px;height:15px}.freight-filters-spacer{flex:1 1 auto}.freight-found{font-size:12.5px;color:var(--muted);white-space:nowrap}.freight-found b{color:var(--text);font-variant-numeric:tabular-nums}.freight-filter-panel{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(200px,1fr);gap:18px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel-2)}.freight-filter-title{margin-bottom:8px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.freight-filter-checks{display:flex;flex-wrap:wrap;gap:4px 6px}.freight-check{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 8px;border:1px solid transparent;border-radius:9px;font-size:12.5px;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.freight-check:hover{background:#10a97212;border-color:var(--border)}.freight-check input{width:16px;height:16px;accent-color:var(--accent-strong);cursor:pointer}.freight-check:has(input:checked){border-color:color-mix(in srgb,var(--accent-strong) 35%,transparent);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.freight-quick{display:flex;flex-wrap:wrap;gap:6px}.freight-quick button{padding:5px 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--panel);color:var(--text);font-size:12px;cursor:pointer;transition:border-color .15s,color .15s}.freight-quick button:hover{border-color:var(--accent-strong);color:var(--accent-strong)}.freight-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.freight-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--accent-strong) 35%,transparent);border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:600;cursor:pointer}.freight-chip:hover{border-color:var(--accent-strong)}.freight-chip-clear{border:0;background:none;color:var(--muted);font-size:12px;text-decoration:underline;cursor:pointer}.freight-table-wrap{overflow:auto;max-height:72vh}.freight-table td{vertical-align:top}.freight-th{position:relative;cursor:grab;-webkit-user-select:none;user-select:none;will-change:transform;transition:background .15s,color .15s}.freight-th:active{cursor:grabbing}.freight-th.dragging{color:var(--accent-strong);opacity:.55}.freight-th.over{background:var(--accent-soft)}.freight-th.over:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--accent-strong);border-radius:2px}.freight-th-grip{display:inline-flex;margin-right:5px;vertical-align:-2px;color:var(--muted-2);opacity:0;transition:opacity .15s}.freight-th:hover .freight-th-grip{opacity:1}.freight-th-grip svg{width:12px;height:12px}.freight-row td{transition:background .15s}.freight-row:hover td{background:#10a9720f}.freight-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.freight-terms-cell{white-space:nowrap}.freight-terms-cell span{display:block}.freight-route-cell{max-width:240px}.freight-read-btn{display:block;margin-top:4px;padding:0;border:0;background:none;color:var(--accent-strong);font-size:11.5px;text-decoration:underline;cursor:pointer}.freight-col-settings{display:flex;flex-direction:column;gap:4px;max-height:62vh;overflow-y:auto}.freight-col-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);will-change:transform;transition:border-color .15s,box-shadow .15s,opacity .15s}.freight-col-row:hover{border-color:var(--border-strong)}.freight-col-row.dragging{border-color:var(--accent-strong);box-shadow:var(--shadow);opacity:.6}.freight-col-grip{display:inline-flex;color:var(--muted-2);cursor:grab}.freight-col-grip svg{width:15px;height:15px}.freight-col-toggle{display:flex;flex:1;align-items:center;gap:9px;font-size:13px;cursor:pointer}.freight-col-toggle input{width:16px;height:16px;accent-color:var(--accent-strong)}.freight-map{position:relative;margin-top:12px;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.freight-map-canvas{width:100%;height:100%}.freight-map-sketch{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--panel-2),var(--panel))}.freight-map-sketch svg{width:100%;height:100%;padding:10px}.freight-map-sketch-km{position:absolute;right:10px;bottom:10px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--panel);font-size:12px;font-weight:600}.freight-map-note{position:absolute;left:10px;bottom:10px;font-size:11px;color:var(--muted)}.freight-tasks-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-bottom:1px solid var(--border)}.freight-tasks-progress{flex:1 1 220px;min-width:180px}.freight-tasks-progress-text{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px;color:var(--muted)}.freight-tasks-progress-text b{color:var(--text)}.freight-tasks-bar{height:8px;overflow:hidden;border:1px solid var(--border);border-radius:999px;background:var(--panel-2)}.freight-tasks-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-strong));transition:width .3s ease}.freight-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 16px 16px}.freight-col{display:flex;flex-direction:column;min-height:130px;border:1px dashed var(--border-strong);border-radius:14px;background:var(--panel-2);transition:background .15s,border-color .15s}.freight-col.over{border-color:var(--accent-strong);background:var(--accent-soft)}.freight-col-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.freight-col-head b{color:var(--text);font-size:11.5px}.freight-col-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border:1px solid var(--border);border-radius:10px;background:var(--panel);font-size:11px}.freight-col-body{display:flex;flex:1;flex-direction:column;gap:8px;padding:0 8px 8px}.freight-task-card{padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--panel);cursor:grab;will-change:transform;transition:transform .15s,box-shadow .15s,border-color .15s}.freight-task-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.freight-task-card:active{cursor:grabbing}.freight-task-card.dragging{opacity:.45}.freight-task-card.done .freight-task-title{text-decoration:line-through;opacity:.6}.freight-task-title{font-size:13px;font-weight:550;line-height:1.35}.freight-task-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:7px}.freight-task-tag{padding:2px 6px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);font-size:11px;color:var(--muted)}.freight-task-tag.overdue{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);font-weight:600}.freight-task-empty{padding:14px;border:1px dashed var(--border);border-radius:10px;text-align:center;font-size:12px;color:var(--muted-2)}.freight-task-add{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:0 16px 14px}.freight-task-add .input{min-width:140px;flex:1 1 140px}.freight-task-edit{display:flex;flex-direction:column;gap:12px}.freight-task-edit label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);font-weight:550}.freight-task-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.carrier-price{display:flex;gap:8px;align-items:stretch}.carrier-price input{flex:1 1 auto;min-width:0}.carrier-price select{flex:0 0 auto;width:auto;min-width:92px}.carrier-currency-label{display:block;margin-top:-2px;margin-bottom:2px;font-size:12px;color:var(--muted);font-weight:550}@media(max-width:720px){.freight-filter-panel,.freight-board{grid-template-columns:1fr}.freight-search{max-width:none}}.freight-bell{position:relative}.freight-bell-btn{position:relative;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer}.freight-bell-btn:hover{background:var(--hover)}.freight-bell-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center}.freight-bell-menu{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-height:360px;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);z-index:100}.freight-bell-empty{padding:16px;text-align:center;color:var(--muted);font-size:13px}.freight-bell-item{padding:10px 12px;border-bottom:1px solid var(--border);cursor:pointer}.freight-bell-item:last-child{border-bottom:none}.freight-bell-item:hover{background:var(--hover)}.freight-bell-item.read{opacity:.65}.freight-bell-text{font-size:13px;line-height:1.4}.freight-bell-date{font-size:11px;color:var(--muted);margin-top:4px}.freight-test-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.freight-test-form .input{min-width:180px}.freight-status-form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.freight-status-notes{margin-top:8px;padding:8px 10px;background:var(--hover);border-radius:8px;font-size:13px}.carrier-history{display:grid;gap:8px}.carrier-history-item{padding:10px 12px;border:1px solid var(--border);border-radius:10px}.carrier-history-title{font-weight:600;font-size:14px}.freight-backups-head{margin-bottom:12px}.freight-cp-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.freight-cp-actions .freight-searchable{flex:1 1 300px;min-width:220px}.freight-cp-actions .freight-searchable input{width:100%}.freight-weight-input{display:flex;gap:8px}.freight-weight-input .input{flex:1}.freight-weight-input .select{width:auto;min-width:70px}.freight-datetime{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.freight-datetime .input{flex:1;min-width:160px}.freight-datetime .btn{padding:5px 8px;font-size:12px}.freight-field-label{display:flex;align-items:center;gap:6px;margin-bottom:6px;min-height:18px}.freight-field-label label{margin-bottom:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.freight-field-hint{display:inline-flex;align-items:center}.freight-info-hint{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--muted);cursor:help;vertical-align:middle;position:relative}.freight-info-hint:hover{color:var(--accent)}.freight-info-tooltip{position:absolute;top:calc(100% + 6px);left:0;width:260px;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:8px 10px;font-size:12px;line-height:1.4;color:#17231e;box-shadow:0 8px 24px #0000002e;z-index:9999;cursor:default}.freight-info-tooltip:before{content:"";position:absolute;bottom:100%;left:6px;border:5px solid transparent;border-bottom-color:var(--border-strong)}.freight-point-drag{cursor:grab;color:var(--muted);font-size:14px;padding:4px;-webkit-user-select:none;user-select:none}.freight-point-drag:active{cursor:grabbing}.freight-notes{display:grid;gap:14px}.freight-deadlines{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.freight-deadline-group{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--table-head-bg)}.freight-deadline-group.waypoint{background:var(--accent-soft);border-color:var(--accent)}.freight-deadline-title{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.freight-deadline-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.freight-deadline-row .field{margin:0}.freight-deadline-row .field label{font-size:11px;color:var(--muted);margin-bottom:2px}.freight-deadline-address{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.freight-route-map{margin-top:16px}.freight-route-distance{margin-top:14px;padding:12px 14px;background:var(--accent-soft);border-radius:var(--radius-sm);font-size:13px}.freight-route-distance>b{color:var(--accent-strong);font-size:14px}.freight-route-legs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;color:var(--muted);font-size:12px}.freight-route-legs span{background:var(--panel);padding:4px 8px;border-radius:6px}.btn-xs{padding:2px 6px;font-size:11px;line-height:1.4;border-radius:6px;margin-left:6px}.fs-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:16px}.fs-legend-item{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.fs-hint{margin-left:auto;font-size:12px;color:var(--muted-2)}.fs-dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--muted-2)}.fs-dot.customer{background:var(--accent-strong)}.fs-dot.carrier{background:var(--info)}.fs-dot.driver{background:var(--warn)}.fs-dot.system{background:var(--muted-2)}.fs-scroll{overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.fs-flow{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:28px;min-width:1062px;align-items:start}.fs-stage{position:relative;display:flex;flex-direction:column;gap:8px}.fs-stage:not(:last-child):after{content:"→";position:absolute;right:-27px;top:52px;transform:translateY(-50%);width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);border:1px solid var(--border);font-size:14px;line-height:1}.fs-stage-head{display:flex;align-items:flex-start;gap:8px;padding:2px 0 4px}.fs-stage-num{width:22px;height:22px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--text);color:var(--bg);font-size:11px;font-weight:700}.fs-stage-title{font-size:13px;font-weight:600;line-height:1.25}.fs-stage-sub{font-size:11px;color:var(--muted);line-height:1.35}.fs-node{display:grid;gap:3px;width:100%;text-align:left;padding:9px 11px;border:1px solid var(--border);border-left-width:3px;border-radius:10px;background:var(--table-head-bg);color:var(--text);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.fs-node:hover{transform:translateY(-1px);border-color:var(--border-strong);box-shadow:0 8px 20px #14231c14}.fs-node:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.fs-node.is-active{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-soft)}.fs-node.customer{border-left-color:var(--accent-strong)}.fs-node.carrier{border-left-color:var(--info)}.fs-node.driver{border-left-color:var(--warn)}.fs-node.system{border-left-color:var(--muted-2)}.fs-node-title{font-size:12.5px;font-weight:600;line-height:1.3}.fs-node-sub{font-size:11px;color:var(--muted);line-height:1.35}.fs-scroll-hint{display:none;margin:6px 0 0;font-size:11px;color:var(--muted-2)}@media(max-width:900px){.fs-scroll-hint{display:block}}.fs-detail{margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--table-head-bg);display:grid;gap:8px}.fs-detail-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fs-detail-title{font-size:14px;font-weight:600}.fs-badge{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.fs-badge.customer{color:var(--accent-strong);border-color:var(--accent-strong)}.fs-badge.carrier{color:var(--info);border-color:var(--info)}.fs-badge.driver{color:var(--warn);border-color:var(--warn)}.fs-detail-text{margin:0;max-width:86ch;font-size:13px;line-height:1.6;color:var(--muted)}.fs-detail-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.fs-detail-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2)}.fs-chips{display:flex;flex-wrap:wrap;gap:6px}.fs-chip{font-size:11px;padding:3px 8px;border-radius:6px;background:var(--accent-soft);color:var(--accent-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.fs-detail-access{font-size:12.5px;color:var(--text)}.fs-lifecycle{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}.fs-lifecycle-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2);margin-right:4px}.fs-status{font-size:11.5px;padding:4px 9px;border-radius:999px;border:1px solid var(--border);background:var(--table-head-bg);color:var(--text);white-space:nowrap}.fs-lifecycle-arrow{font-size:11px;color:var(--muted-2)}.fs-system{margin-top:18px;padding:12px 14px;border:1px dashed var(--border-strong);border-radius:12px;background:var(--panel-2)}.fs-system-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-2);margin-bottom:10px}.fs-system-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.fs-data{margin-top:18px;border-top:1px solid var(--border);padding-top:12px}.fs-data summary{cursor:pointer;font-size:13px;font-weight:600}.fs-data summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px;border-radius:4px}.fs-table-wrap{overflow-x:auto;margin-top:10px}.fs-table{width:100%;min-width:620px;border-collapse:collapse;font-size:12px}.fs-table th,.fs-table td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--border);vertical-align:top}.fs-table th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.fs-table td:first-child{white-space:nowrap}.fs-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:var(--accent-strong)}.fs-data-note{margin:10px 0 0;font-size:11.5px;color:var(--muted-2)}.fs-data-note code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--accent-strong)}@media(prefers-reduced-motion:reduce){.fs-node{transition:none}}
