@import "https://fonts.cdnfonts.com/css/google-sans";@media (width>=1024px){.summary-cards-grid{grid-template-columns:repeat(4,1fr)}}.summary-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;align-items:flex-start;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000000d}body.dark .summary-card,.dark .summary-card{background:var(--surface);border-color:var(--border);box-shadow:0 1px 3px #0000004d}body.dark .summary-card:hover,.dark .summary-card:hover{box-shadow:0 4px 14px #00000073}body.dark .card-value,.dark .card-value,body.dark .card-label,.dark .card-label{color:var(--text)}body.dark .card-subtext,.dark .card-subtext{color:var(--muted)}.dashboard-page{box-sizing:border-box;flex-direction:column;gap:24px;width:100%;max-width:1480px;margin:0 auto;padding:24px 32px 48px;display:flex}.dashboard-heading-section{justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:8px;display:flex}.heading-content{flex-direction:column;gap:4px;display:flex}.dashboard-heading-section .eyebrow{letter-spacing:.8px;text-transform:uppercase;color:var(--muted,#64748b);font-size:11px;font-weight:700}.dashboard-heading-section h1{color:var(--text,#0f172a);letter-spacing:-.02em;margin:0;font-size:26px;font-weight:800}.dashboard-heading-section p{color:var(--muted,#64748b);max-width:650px;margin:0;font-size:13.5px}.heading-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.clickable-health-pill{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);color:var(--text,#0f172a);cursor:pointer;border-radius:9999px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 1px 3px #0000000d}.clickable-health-pill:hover{background:var(--bg,#f8fafc);border-color:#cbd5e1;transform:translateY(-1px)}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.success{background-color:#10b981;box-shadow:0 0 0 2px #10b98133}.status-dot.warning{background-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b33}.status-dot.danger{background-color:#ef4444;box-shadow:0 0 0 2px #ef444433}.main-panels{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start}.lower-panels{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);align-items:start}.dashboard-panel{background:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);box-sizing:border-box;transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;flex-direction:column;gap:16px;padding:22px 24px;display:flex;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-title-wrap{align-items:center;gap:10px;display:flex}.panel-heading h2{color:var(--text,#0f172a);letter-spacing:-.01em;margin:0;font-size:15px;font-weight:700}.panel-heading p{color:var(--muted,#64748b);margin:2px 0 0;font-size:12px}.panel-link{color:var(--accent,#f97316);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.panel-link:hover{color:var(--accent-hover,#ea580c);background:#f9731614}.production-overview-panel{gap:16px}.production-flow-container{scrollbar-width:thin;padding:6px 2px;overflow-x:auto}.production-flow{justify-content:space-between;align-items:center;gap:6px;min-width:520px;display:flex}.flow-stage{text-align:center;flex-direction:column;flex:1;align-items:center;gap:8px;display:flex;position:relative}.stage-icon-container{background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);width:40px;height:40px;color:var(--muted,#64748b);border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.flow-stage.active .stage-icon-container{color:var(--accent,#f97316);background:#f973161a;border-color:#f973164d}.stage-name-wrap{align-items:center;gap:5px;display:flex}.stage-status-indicator{font-size:11px;line-height:1}.stage-status-indicator.active{color:#10b981}.stage-status-indicator.idle{color:#94a3b8}.stage-name{color:var(--text,#0f172a);white-space:nowrap;font-size:12.5px;font-weight:600}.stage-count-badge{background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);color:var(--muted,#64748b);white-space:nowrap;border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:600}.stage-count-badge.has-units{color:#16a34a;background:#10b9811f;border-color:#10b98140}.flow-connector{color:var(--border,#cbd5e1);flex-shrink:0;justify-content:center;align-items:center;padding:0 2px;display:flex}.production-footer{border-top:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding-top:14px;font-size:12px;display:flex}.footer-status-text{color:var(--text,#0f172a);font-weight:600}.footer-badge{background:var(--bg,#f1f5f9);border:1px solid var(--border,#e2e8f0);color:var(--muted,#64748b);border-radius:4px;padding:2px 7px;font-size:11px;font-weight:500}.active-shift-alerts-panel{gap:14px}.alert-count-pill{border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:700}.alert-count-pill.critical{color:#dc2626;background-color:#ef44441f;border:1px solid #ef444440}.alert-count-pill.nominal{color:#16a34a;background-color:#10b9811f;border:1px solid #10b98140}.shift-alerts-list{flex-direction:column;gap:10px;display:flex}.shift-alert-item{background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-left-width:4px;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.shift-alert-item.critical{border-left-color:#ef4444}.shift-alert-item.warning{border-left-color:#f59e0b}.shift-alert-item.info{border-left-color:#3b82f6}.shift-alert-item:hover{background:var(--surface,#fff);box-shadow:0 2px 6px #0000000a}.alert-body-wrap{flex:1;align-items:flex-start;gap:10px;display:flex}.alert-icon-wrap{flex-shrink:0;margin-top:1px}.alert-details{flex-direction:column;flex:1;gap:2px;display:flex}.alert-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alert-title{color:var(--text,#0f172a);font-size:13px;font-weight:600}.alert-floor-badge{color:var(--muted,#64748b);font-size:11px;font-weight:500}.alert-desc{color:var(--muted,#64748b);margin:2px 0 0;font-size:12px;line-height:1.4}.alert-action-row{align-items:center;gap:12px;margin-top:6px;display:flex}.alert-action-btn{color:var(--accent,#f97316);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:11.5px;font-weight:600;transition:color .15s;display:inline-flex}.alert-action-btn:hover{color:var(--accent-hover,#ea580c);text-decoration:underline}.alert-timestamp{color:var(--muted,#94a3b8);font-size:11px}.alert-dismiss-btn{color:var(--muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.alert-dismiss-btn:hover{color:var(--text,#0f172a);background:#0000000d}.alerts-empty-state{text-align:center;background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;padding:24px 16px}.alerts-empty-state p{color:var(--text,#0f172a);margin:6px 0 2px;font-size:13px;font-weight:600}.alerts-empty-state span{color:var(--muted,#64748b);font-size:11.5px}.inventory-snapshot-panel{gap:14px}.snapshot-item{background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;justify-content:space-between;align-items:center;padding:11px 14px;transition:all .15s;display:flex}.snapshot-item:hover{background:var(--surface,#fff);border-color:#cbd5e1}.snapshot-item-left{align-items:center;gap:9px;display:flex}.snapshot-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.snapshot-status-dot.total{background-color:var(--accent,#f97316)}.snapshot-status-dot.active{background-color:#10b981}.snapshot-status-dot.consumed{background-color:#3b82f6}.snapshot-status-dot.closed{background-color:#94a3b8}.snapshot-label{color:var(--text,#0f172a);font-size:13px;font-weight:500}.snapshot-value-badge{color:var(--text,#0f172a);background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:6px;padding:3px 10px;font-size:12.5px;font-weight:700}.recent-activity-panel{gap:14px}.activity-list{flex-direction:column;gap:8px;display:flex}.activity-item{background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:all .15s;display:flex}.activity-item:hover{background:var(--surface,#fff)}.activity-item-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.activity-icon-wrap{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);width:32px;height:32px;color:var(--accent,#f97316);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-content{flex-direction:column;gap:1px;min-width:0;display:flex}.activity-title{color:var(--text,#0f172a);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.activity-detail{color:var(--muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.activity-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.activity-time{color:var(--muted,#94a3b8);font-size:11px}.activity-actor{color:var(--muted,#64748b);font-size:10.5px;font-weight:500}.activity-empty-state{text-align:center;background:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);color:var(--muted,#64748b);border-radius:8px;padding:24px 16px}.activity-empty-state p{color:var(--text,#0f172a);margin:6px 0 2px;font-size:13px;font-weight:500}.activity-empty-state span{color:var(--muted,#94a3b8);font-size:11.5px}body.dark .dashboard-heading-section h1,.dark .dashboard-heading-section h1{color:var(--text)}body.dark .clickable-health-pill,.dark .clickable-health-pill{background:var(--surface);border-color:var(--border);color:var(--text)}body.dark .clickable-health-pill:hover,.dark .clickable-health-pill:hover{background:#24272f}body.dark .dashboard-panel,.dark .dashboard-panel{background:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}body.dark .panel-heading h2,.dark .panel-heading h2,body.dark .stage-name,.dark .stage-name{color:var(--text)}body.dark .stage-icon-container,.dark .stage-icon-container,body.dark .stage-count-badge,.dark .stage-count-badge{border-color:var(--border);background:#1b1d22}body.dark .footer-status-text,.dark .footer-status-text{color:var(--text)}body.dark .footer-badge,.dark .footer-badge,body.dark .shift-alert-item,.dark .shift-alert-item{border-color:var(--border);background:#1b1d22}body.dark .shift-alert-item:hover,.dark .shift-alert-item:hover{background:var(--surface)}body.dark .alert-title,.dark .alert-title{color:var(--text)}body.dark .alerts-empty-state,.dark .alerts-empty-state{border-color:var(--border);background:#1b1d22}body.dark .alerts-empty-state p,.dark .alerts-empty-state p{color:var(--text)}body.dark .snapshot-item,.dark .snapshot-item{border-color:var(--border);background:#1b1d22}body.dark .snapshot-item:hover,.dark .snapshot-item:hover{background:var(--surface)}body.dark .snapshot-label,.dark .snapshot-label{color:var(--text)}body.dark .snapshot-value-badge,.dark .snapshot-value-badge{background:var(--surface);border-color:var(--border);color:var(--text)}body.dark .activity-item,.dark .activity-item{border-color:var(--border);background:#1b1d22}body.dark .activity-item:hover,.dark .activity-item:hover{background:var(--surface)}body.dark .activity-icon-wrap,.dark .activity-icon-wrap{background:var(--surface);border-color:var(--border)}body.dark .activity-title,.dark .activity-title{color:var(--text)}body.dark .activity-empty-state,.dark .activity-empty-state{border-color:var(--border);background:#1b1d22}body.dark .activity-empty-state p,.dark .activity-empty-state p{color:var(--text)}@media (width<=1024px){.dashboard-page{gap:20px;padding:20px 20px 40px}.main-panels,.lower-panels{grid-template-columns:1fr}}@media (width<=768px){.dashboard-heading-section{flex-direction:column;align-items:flex-start}.heading-actions{justify-content:space-between;width:100%}.production-flow{min-width:480px}}:root{--bvs-surface-radius:20px;--bvs-surface-border:1px solid var(--border,#e2e8f0);--bvs-surface-shadow:3px 3px 8px var(--shadow-dark), -3px -3px 8px var(--shadow-light);--bvs-surface-bg:var(--surface,#fff)}body.dark{--bvs-surface-border:1px solid #ffffff14;--bvs-surface-shadow:3px 3px 8px #0006, -3px -3px 8px #ffffff05;--bvs-surface-bg:#1e2024}.bvs-content-surface.bvs-surface-flush,.bvs-content-surface.bvs-surface-table{padding:0}.bvs-content-surface table{border-collapse:collapse;width:100%}.bvs-content-surface .bvs-surface-table-scroll>table thead tr:first-child th:first-child,.bvs-content-surface table:first-child thead tr:first-child th:first-child{border-top-left-radius:calc(var(--bvs-surface-radius) - 1px)}.bvs-content-surface .bvs-surface-table-scroll>table thead tr:first-child th:last-child,.bvs-content-surface table:first-child thead tr:first-child th:last-child{border-top-right-radius:calc(var(--bvs-surface-radius) - 1px)}.bvs-content-surface .bvs-surface-table-scroll>table tbody tr:last-child td:first-child,.bvs-content-surface table:last-child tbody tr:last-child td:first-child{border-bottom-left-radius:calc(var(--bvs-surface-radius) - 1px)}.bvs-content-surface .bvs-surface-table-scroll>table tbody tr:last-child td:last-child,.bvs-content-surface table:last-child tbody tr:last-child td:last-child{border-bottom-right-radius:calc(var(--bvs-surface-radius) - 1px)}.filter-toolbar-container{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);box-shadow:3px 3px 8px var(--shadow-dark), -3px -3px 8px var(--shadow-light);box-sizing:border-box;border-radius:9999px;justify-content:space-between;align-items:center;gap:16px;height:52px;min-height:52px;margin-bottom:16px;padding:0 14px;display:flex}body.dark .filter-toolbar-container{background-color:#1e2024;border-color:#ffffff14;box-shadow:3px 3px 8px #0006,-3px -3px 8px #ffffff05}.filter-toolbar-left{flex:1;align-items:center;gap:16px;min-width:0;display:flex}.filter-toolbar-dropdowns-group{flex-wrap:nowrap;align-items:center;gap:10px;display:flex}.filter-toolbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.filter-toolbar-search{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.filter-toolbar-search input{border:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);height:36px;color:var(--text,#0f172a);box-sizing:border-box;border-radius:9999px;outline:none;width:290px;padding:0 28px 0 34px;font-size:12.5px;font-weight:400;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:inset 1.5px 1.5px 3.5px #00000012,inset -1.5px -1.5px 3.5px #ffffffe6}.filter-toolbar-search input:hover{border-color:var(--border-hover,#cbd5e1)}.filter-toolbar-search input:focus{border-color:#f9731666;box-shadow:inset 2px 2px 4px #00000017,0 0 0 2px #f973161f}body.dark .filter-toolbar-search input{color:#f1f5f9;background-color:#18191c;border-color:#ffffff14;box-shadow:inset 2px 2px 4px #00000080,inset -1px -1px 2px #ffffff05}body.dark .filter-toolbar-search input:focus{background-color:#1e2024;border-color:#f9731680;box-shadow:inset 2px 2px 4px #00000080,0 0 0 2px #f9731626}.filter-toolbar-search .search-icon{pointer-events:none;width:14px;height:14px;color:var(--muted,#94a3b8);position:absolute;left:12px}.filter-toolbar-search .clear-btn{cursor:pointer;color:var(--muted,#94a3b8);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex;position:absolute;right:8px}.filter-toolbar-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-pill-btn{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);height:34px;color:var(--text,#334155);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}body.dark .filter-pill-btn{color:#cbd5e1;background:#25272c;border-color:#ffffff14}.filter-pill-btn:hover{background:var(--surface-hover,#f1f5f9);color:var(--text,#0f172a)}body.dark .filter-pill-btn:hover{color:#fff;background:#2d3036}.filter-pill-btn.active{font-weight:600;background-color:var(--accent,#f97316)!important;color:#fff!important;border-color:var(--accent,#f97316)!important}.filter-pill-count{min-width:18px;height:18px;color:inherit;background-color:#0000000f;border-radius:9999px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.filter-pill-btn.active .filter-pill-count{color:#fff;background-color:#ffffff40}body.dark .filter-pill-btn:not(.active) .filter-pill-count{color:#cbd5e1;background-color:#ffffff1f}.filter-dropdown-pill{background:var(--surface);border:1px solid var(--border,#e2e8f0);height:38px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);white-space:nowrap;border-radius:9999px;flex-shrink:0;align-items:center;padding:0 34px;font-size:.875rem;font-weight:500;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.filter-dropdown-pill:hover{color:var(--text);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);transform:translateY(-1px)}.filter-dropdown-pill:focus-within,.filter-dropdown-pill:active{box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);border-color:#f973164d;transform:translateY(0)}.filter-dropdown-pill .pill-icon{pointer-events:none;color:var(--accent);flex-shrink:0;position:absolute;left:14px}.filter-dropdown-pill .pill-chevron{pointer-events:none;color:var(--muted);flex-shrink:0;transition:transform .25s;position:absolute;right:14px}.filter-dropdown-pill:focus-within .pill-chevron{color:var(--accent);transform:rotate(180deg)}.filter-dropdown-pill select{appearance:none;color:var(--text);cursor:pointer;background:0 0;border:none;outline:none;width:100%;padding:0 4px;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;box-shadow:none!important}.filter-dropdown-pill select option{background:var(--surface);color:var(--text);padding:8px 12px}body.dark .filter-dropdown-pill{background:var(--surface,#1e2024);border-color:#ffffff14;box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff0d}body.dark .filter-dropdown-pill:hover{border-color:#f9731666;box-shadow:0 6px 16px #00000073}body.dark .filter-dropdown-pill:focus-within,body.dark .filter-dropdown-pill:active{background:#25272c;border-color:#f9731680;box-shadow:inset 1px 1px 3px #00000080}body.dark .filter-dropdown-pill select{color:var(--text,#f1f5f9)}body.dark .filter-dropdown-pill select option{color:#f1f5f9;background:#25282f}.filter-view-mode-toggle{background:var(--surface-hover,#f1f5f9);border:1px solid var(--border,#e2e8f0);box-sizing:border-box;border-radius:9999px;align-items:center;gap:2px;height:36px;padding:3px;display:inline-flex}body.dark .filter-view-mode-toggle{background:#18191c;border-color:#ffffff14}.filter-view-mode-btn{width:30px;height:30px;color:var(--muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.filter-view-mode-btn svg{width:14px;height:14px}.filter-view-mode-btn:hover{color:var(--text,#0f172a)}.filter-view-mode-btn.active{color:var(--accent,#f97316);background:#fff;box-shadow:0 2px 4px #00000014}body.dark .filter-view-mode-btn.active{color:var(--accent,#f97316);background:#25282e;box-shadow:0 2px 4px #0006}.filter-toolbar-container .floor-dropdown-container{display:inline-flex}.filter-toolbar-container .floor-dropdown-trigger{background:var(--surface,#fff);height:36px;box-shadow:2px 2px 5px var(--shadow-dark,#0000000f), -2px -2px 5px var(--shadow-light,#fffffff2);white-space:nowrap;color:var(--text,#0f172a);border:1px solid #ffffffbf;border-radius:9999px;gap:7px;padding:0 14px;font-size:12.5px;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1)}body.dark .filter-toolbar-container .floor-dropdown-trigger{color:#f1f5f9;background:#1e2024;border-color:#ffffff14;box-shadow:2px 2px 6px #0006,-2px -2px 6px #ffffff05}.filter-toolbar-container .floor-dropdown-trigger:hover{box-shadow:1.5px 1.5px 3.5px var(--shadow-dark), -1.5px -1.5px 3.5px var(--shadow-light);transform:translateY(-.5px)}.filter-toolbar-container .floor-dropdown-trigger.open,.filter-toolbar-container .floor-dropdown-trigger:active{box-shadow:inset 1.5px 1.5px 3px var(--shadow-dark), inset -1.5px -1.5px 3px var(--shadow-light);transform:translateY(0)}.filter-toolbar-container .floor-dropdown-trigger .dropdown-trigger-icon{width:14px;height:14px;color:var(--accent,#f97316);flex-shrink:0}.filter-toolbar-container .floor-dropdown-container.neutral-icon .floor-dropdown-trigger .dropdown-trigger-icon,.filter-toolbar-container .product-more-filters-container .floor-dropdown-trigger .dropdown-trigger-icon{color:#475569}body.dark .filter-toolbar-container .floor-dropdown-container.neutral-icon .floor-dropdown-trigger .dropdown-trigger-icon,body.dark .filter-toolbar-container .product-more-filters-container .floor-dropdown-trigger .dropdown-trigger-icon{color:#94a3b8}.filter-toolbar-container .floor-dropdown-trigger .dropdown-chevron{width:13px;height:13px;color:var(--muted,#94a3b8);flex-shrink:0}.filter-toolbar-container .floor-dropdown-trigger .dropdown-trigger-label{font-size:12.5px;font-weight:500}.filter-toolbar-container .floor-dropdown-menu{top:calc(100% + 6px)}.filter-clear-btn{color:var(--accent,#f97316);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600;transition:opacity .15s}.filter-clear-btn:hover{opacity:.8;text-decoration:underline}@media (width<=992px){.products-page .dashboard-heading-section{flex-direction:column;align-items:flex-start;gap:12px}.products-page .heading-actions{flex-wrap:wrap;width:100%}}@media (width<=600px){.dynamic-fields-grid{grid-template-columns:1fr}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=480px){.products-page .table-responsive{margin-inline:-4px}}.products-page::-webkit-scrollbar{width:6px;height:6px}.products-page ::-webkit-scrollbar{width:6px;height:6px}.cute-modal-dialog::-webkit-scrollbar{width:6px;height:6px}.catalog-details-drawer::-webkit-scrollbar{width:6px;height:6px}.products-page::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.products-page ::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.cute-modal-dialog::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.catalog-details-drawer::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.products-page::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.products-page ::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.cute-modal-dialog::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.catalog-details-drawer::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.products-page::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.products-page ::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.cute-modal-dialog::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.catalog-details-drawer::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.products-page::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.products-page ::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.cute-modal-dialog::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.catalog-details-drawer::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}body.dark .products-page::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .products-page ::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .cute-modal-dialog::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .catalog-details-drawer::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .products-page::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .products-page ::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .cute-modal-dialog::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .catalog-details-drawer::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}@keyframes rowFadeIn{0%{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (width<=1366px){.product-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.filter-toolbar-search input{width:155px}}@media (width>=1367px) and (width<=1600px){.product-stats-grid{grid-template-columns:repeat(4,1fr)}.filter-toolbar-search input{width:175px}}@media (width>=1601px){.filter-toolbar-search input{width:220px}}.searchable-select{width:100%;min-width:0;position:relative}.searchable-select.is-disabled{opacity:.6;pointer-events:none}.searchable-select-trigger{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);width:100%;min-height:40px;color:var(--text,#0f172a);cursor:pointer;text-align:left;box-sizing:border-box;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.searchable-select.is-open .searchable-select-trigger,.searchable-select-trigger:focus-visible{border-color:var(--accent,#f97316);outline:none;box-shadow:0 0 0 3px #f9731626}.searchable-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:500;overflow:hidden}.searchable-select-value.is-placeholder{color:var(--muted,#94a3b8);font-weight:400}.searchable-select-actions{color:var(--muted,#64748b);flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.searchable-select-clear{border-radius:4px;padding:2px;display:inline-flex}.searchable-select-clear:hover{background:var(--bg,#f1f5f9);color:var(--text,#0f172a)}.searchable-select-chevron.rotated{transform:rotate(180deg)}.searchable-select-menu{z-index:80;background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;flex-direction:column;max-height:280px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 12px 28px #0f172a24}.searchable-select-search{border-bottom:1px solid var(--border,#e2e8f0);color:var(--muted,#64748b);flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.searchable-select-search input{min-width:0;color:var(--text,#0f172a);background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.searchable-select-list{max-height:220px;padding:6px;overflow-y:auto}.searchable-select-empty{text-align:center;color:var(--muted,#64748b);padding:16px 12px;font-size:13px}.searchable-select-option{cursor:pointer;text-align:left;width:100%;color:var(--text,#0f172a);background:0 0;border:none;border-radius:7px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;display:flex}.searchable-select-option:hover,.searchable-select-option.is-active{background:#f973161a}.searchable-select-option-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13.5px;font-weight:600;overflow:hidden}.searchable-select-option-hint{color:var(--muted,#64748b);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11.5px;overflow:hidden}.barcode-print-modal-dialog{width:100%;max-width:min(920px,96vw)}.barcode-print-config{grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:16px;display:grid}.barcode-print-config .form-group{flex-direction:column;gap:6px;display:flex}.barcode-print-config .form-group.full{grid-column:1/-1}.barcode-print-checks{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.barcode-print-checks label{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.barcode-print-meta{color:var(--muted,#6b7280);margin:0 0 12px;font-size:12px}.barcode-print-preview-wrap{border:1px solid var(--border,#e5e7eb);background:#f3f4f6;border-radius:8px;min-width:0;max-height:min(55vh,640px);padding:12px;overflow:hidden auto;container-type:inline-size}.barcode-print-preview-wrap .barcode-print-root{flex-direction:column;align-items:center;gap:16px;width:100%;min-width:0;display:flex}.barcode-print-preview-wrap .barcode-a4-page{aspect-ratio:210/297;box-sizing:border-box;grid-template-columns:repeat(var(--barcode-cols,3), 1fr);grid-template-rows:repeat(var(--barcode-rows,4), 1fr);transform-origin:top;background:#fff;gap:1.2%;width:min(210mm,100%);max-width:100%;min-height:0;padding:2.5%;display:grid;box-shadow:0 1px 4px #0000001f}.barcode-print-root{flex-direction:column;align-items:center;gap:16px;display:flex}.barcode-a4-page{box-sizing:border-box;grid-template-columns:repeat(var(--barcode-cols,3), 1fr);grid-template-rows:repeat(var(--barcode-rows,4), 1fr);background:#fff;gap:3mm;width:210mm;min-height:297mm;padding:8mm;display:grid;box-shadow:0 1px 4px #0000001f}.barcode-label-cell{border:1px dashed #d1d5db;border-radius:2px;flex-direction:column;justify-content:center;align-items:center;gap:2mm;min-height:0;padding:3mm;display:flex;overflow:hidden}.barcode-glyph{justify-content:center;align-items:center;max-width:100%;display:flex}.barcode-glyph--linear svg{max-width:100%;height:auto;max-height:14mm}.barcode-glyph--qr svg{width:min(22mm,100%);height:auto}.barcode-label-value{text-align:center;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9pt;font-weight:600;line-height:1.2}.barcode-label-title{color:#4b5563;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:8pt;overflow:hidden}.barcode-label-empty{width:100%;height:100%}@media print{@page{size:A4 portrait;margin:0}body>:not(#barcode-print-root){display:none!important}html,body{background:#fff!important;height:auto!important;overflow:visible!important}#barcode-print-root{gap:0;width:210mm;margin:0;padding:0;display:block!important;position:static!important}.barcode-a4-page{width:210mm;min-height:297mm;box-shadow:none;page-break-after:always;break-after:page;page-break-inside:avoid;break-inside:avoid;display:grid!important}.barcode-a4-page:last-child{page-break-after:auto;break-after:auto}.barcode-label-cell{border-color:#bbb}}.products-page{flex-direction:column;gap:16px;display:flex}.products-page .dashboard-heading-section{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.products-page .heading-content{flex-direction:row;align-items:center;gap:10px;display:flex}.products-page .heading-content h1{letter-spacing:-.02em;color:var(--text);white-space:nowrap;margin:0;font-size:1.4rem;font-weight:700;line-height:1}.products-heading-icon{border-radius:var(--radius-sm,6px);width:32px;height:32px;color:var(--accent);background:#f973161f;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}body.dark .products-heading-icon{color:#fb923c;background:#f9731633}.products-page .heading-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}@media (width<=992px){.products-page .dashboard-heading-section{flex-direction:column;align-items:flex-start;gap:12px}.products-page .heading-actions{flex-wrap:wrap;width:100%}}.page-tab-nav{border-bottom:2px solid var(--border);align-items:center;gap:8px;margin-bottom:6px;padding-bottom:0;display:flex}.page-tab-btn{color:var(--muted);cursor:pointer;transition:all var(--transition-speed);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-2px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.page-tab-btn:hover{color:var(--text);background-color:var(--surface-hover)}.page-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background-color:var(--surface);box-shadow:inset 0 -2px 0 var(--accent);font-weight:700}.tab-badge{color:var(--muted);background-color:#6b728026;border-radius:10px;padding:2px 7px;font-size:11px;font-weight:600}.page-tab-btn.active .tab-badge{color:var(--accent);background-color:#f9731626}.archived-subnav{align-items:center;gap:8px;margin-bottom:16px;display:flex}.archived-subnav-btn{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;transition:all var(--transition-speed);box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.archived-subnav-btn:hover{color:var(--text);border-color:var(--border-hover,var(--border))}.archived-subnav-btn.active{color:var(--accent);border-color:var(--accent);box-shadow:inset 1px 1px 3px var(--shadow-dark);background-color:#f973161a;font-weight:700}.status-badge.status-archived{color:#991b1b;background-color:#fee2e2;border:1px solid #ef444440}body.dark .status-badge.status-archived{color:#f87171;background-color:#ef444433;border:1px solid #ef444459}.catalogs-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;padding:18px;display:grid}.catalog-card{background:var(--surface);border:1px solid var(--border,#e4e9f0);border-radius:16px;flex-direction:column;padding:0;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:3px 3px 8px #0000000d,-2px -2px 6px #ffffffb3}.catalog-card:before{content:"";background:#3b82f6;border-radius:16px 0 0 16px;width:4px;position:absolute;top:0;bottom:0;left:0}.catalog-card:hover{border-color:#3b82f673;transform:translateY(-3px);box-shadow:0 8px 24px #0000001a}.archived-product-card:before{content:"";background:#10b981;border-radius:16px 0 0 16px;width:4px;position:absolute;top:0;bottom:0;left:0}.archived-product-card:hover{border-color:#10b98173}.catalog-card.catalog-card-archived{border-style:dashed;border-color:var(--border);opacity:.95}.catalog-card.catalog-card-archived:hover{opacity:1}.catalog-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:0;padding:16px 16px 12px 20px;display:flex}.catalog-title-wrap{flex-direction:column;gap:4px;display:flex}.catalog-name{color:var(--text);letter-spacing:-.2px;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:700;display:flex}.catalog-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.catalog-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:0;padding:0 16px 12px 20px;display:flex}.badge-default{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;background:#f973161f;border:1px solid #f973164d;border-radius:4px;padding:2px 8px;font-size:10.5px;font-weight:700}.badge-version{background:var(--bg);color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.badge-count{color:#10b981;background:#10b9811a;border:1px solid #10b98133;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.catalog-fields-preview{border-top:1px solid var(--border);flex-grow:1;margin-top:auto;padding:12px 16px 12px 20px}.catalog-fields-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.fields-chips-list{flex-wrap:wrap;gap:5px;display:flex}.field-chip{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;display:inline-flex}.field-chip .chip-type{color:var(--muted);font-family:monospace;font-size:10px}.field-chip.req{border-left:2.5px solid #8b5cf6}.catalog-card-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:0;padding:10px 16px 12px 20px;display:flex}.field-builder-list{flex-direction:column;gap:10px;padding:4px;display:flex;overflow:visible}.field-builder-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--transition-speed);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.field-builder-item:hover{border-color:var(--accent)}.field-builder-row{align-items:center;gap:10px;display:flex}.field-order-controls{flex-direction:column;gap:2px;display:flex}.btn-icon-order{border:1px solid var(--border);cursor:pointer;color:var(--muted);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:2px;transition:all .2s;display:flex}.btn-icon-order:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.btn-icon-order:disabled{opacity:.3;cursor:not-allowed}.select-options-box{background:var(--surface);border:1px dashed var(--border);border-radius:6px;flex-direction:column;gap:8px;padding:10px;display:flex}.select-options-tags{flex-wrap:wrap;gap:6px;display:flex}.select-opt-tag{color:var(--accent);background:#f973161a;border:1px solid #f973164d;border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.select-opt-remove{cursor:pointer;color:var(--accent);background:0 0;border:none;align-items:center;padding:0;font-size:13px;line-height:1;display:flex}.form-section-block{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.form-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:700;display:flex}.dynamic-fields-section{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);margin-top:6px;padding:14px}.dynamic-fields-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.dynamic-fields-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=600px){.dynamic-fields-grid{grid-template-columns:1fr}}.field-error-msg{color:#ef4444;margin-top:3px;font-size:11px}.version-timeline{flex-direction:column;gap:12px;margin-top:10px;display:flex}.version-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:flex-start;gap:12px;padding:12px;display:flex}.version-pill{background:var(--surface);border:1px solid var(--border);color:var(--accent);white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700}.version-content{flex:1}.version-date{color:var(--muted);margin-bottom:4px;font-size:11.5px}.version-fields-summary{color:var(--text);font-size:12px;line-height:1.4}.close-btn,.cute-close-btn{background:var(--surface);border:1px solid var(--border);width:32px;height:32px;color:var(--muted);cursor:pointer;transition:all var(--transition-speed);box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close-btn:hover,.cute-close-btn:hover{background:var(--surface-hover);color:var(--text);border-color:var(--accent);transform:rotate(90deg)}.close-btn:disabled,.cute-close-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.spinner-border{vertical-align:middle;border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}.spinner-border.spinner-accent{border-color:#f9731640;border-top-color:var(--accent)}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.65;box-shadow:none}.datatype-dropdown-container{width:100%;position:relative}.datatype-trigger{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);justify-content:space-between;align-items:center;gap:6px;padding:6px 10px;font-size:12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.datatype-trigger:hover{border-color:var(--accent)}.datatype-trigger.open,.datatype-trigger:active{box-shadow:inset 1px 1px 3px var(--shadow-dark), inset -1px -1px 3px var(--shadow-light);border-color:var(--accent)}.datatype-trigger-content{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;display:flex;overflow:hidden}.datatype-trigger .dropdown-trigger-icon{color:var(--accent);flex-shrink:0}.datatype-trigger .dropdown-chevron{color:var(--muted);flex-shrink:0;transition:transform .25s}.datatype-trigger .dropdown-chevron.rotated{color:var(--accent);transform:rotate(180deg)}.datatype-menu{background:var(--surface);border:1px solid var(--border);width:100%;min-width:165px;box-shadow:6px 6px 16px var(--shadow-dark), -6px -6px 16px var(--shadow-light), 0 10px 25px #0000001f;z-index:1200;border-radius:12px;flex-direction:column;gap:2px;padding:4px;animation:.2s cubic-bezier(.16,1,.3,1) dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 4px);left:0}.archived-subnav-btn{color:var(--muted);background:var(--surface);border:1px solid var(--border);cursor:pointer;box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);border-radius:9999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.archived-subnav-btn:hover{color:var(--text);background:var(--surface-hover)}.archived-subnav-btn.active{color:var(--accent);border-color:var(--accent);box-shadow:inset 1px 1px 3px var(--shadow-dark), inset -1px -1px 3px var(--shadow-light);background:#f9731614;font-weight:600}.archived-type-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:6px;align-items:center;gap:5px;padding:2.5px 8px;font-size:11px;font-weight:600;display:inline-flex}.archived-type-badge.type-product{color:#3b82f6;background:#3b82f61a;border:1px solid #3b82f640}.archived-type-badge.type-catalog{color:var(--accent);background:#f973161a;border:1px solid #f9731640}.products-page,.products-page .table-responsive,.cute-modal-dialog,.catalog-details-drawer{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.products-page .table-responsive{min-width:0;max-width:100%;overflow-x:auto}@media (width<=480px){.products-page .table-responsive{margin-inline:-4px}}.products-page,.products-page .table-responsive,.cute-modal-dialog,.catalog-details-drawer,.field-builder-list{scrollbar-width:thin;scrollbar-color:#9ca3af73 transparent}.products-page::-webkit-scrollbar{width:6px;height:6px}.products-page ::-webkit-scrollbar{width:6px;height:6px}.cute-modal-dialog::-webkit-scrollbar{width:6px;height:6px}.catalog-details-drawer::-webkit-scrollbar{width:6px;height:6px}.products-page::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.products-page ::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.cute-modal-dialog::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.catalog-details-drawer::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.products-page::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.products-page ::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.cute-modal-dialog::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.catalog-details-drawer::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),transform .2s}.products-page::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.products-page ::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.cute-modal-dialog::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.catalog-details-drawer::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.products-page::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.products-page ::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.cute-modal-dialog::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}.catalog-details-drawer::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}body.dark .products-page::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .products-page ::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .cute-modal-dialog::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .catalog-details-drawer::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .products-page::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .products-page ::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .cute-modal-dialog::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}body.dark .catalog-details-drawer::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}.products-page .bvs-table th{z-index:5;background:var(--surface);box-shadow:0 2px 4px var(--shadow-dark);transition:box-shadow .25s,background-color .25s;position:sticky;top:0}.products-page .bvs-table tbody tr{transition:background-color .15s,transform .15s;animation:.22s cubic-bezier(.16,1,.3,1) backwards rowFadeIn}.scroll-top-btn{background:var(--surface);border:1px solid var(--border);width:40px;height:40px;color:var(--accent);cursor:pointer;z-index:990;box-shadow:3px 3px 8px var(--shadow-dark), -3px -3px 8px var(--shadow-light);opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1),box-shadow .2s,background-color .2s;display:flex;position:fixed;bottom:28px;right:28px;transform:translateY(12px)scale(.9)}.scroll-top-btn.visible{opacity:.85;pointer-events:auto;transform:translateY(0)scale(1)}.scroll-top-btn:hover{opacity:1;background:var(--surface-hover);box-shadow:4px 4px 12px var(--shadow-dark), -4px -4px 12px var(--shadow-light);transform:translateY(-3px)scale(1.05)}.scroll-top-btn:active{box-shadow:inset 1px 1px 3px var(--shadow-dark), inset -1px -1px 3px var(--shadow-light);transform:translateY(0)scale(.97)}.product-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.product-stat-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;align-items:center;gap:16px;padding:16px 20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 6px #0000000a}.product-stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}body.dark .product-stat-card{background:#1e2024;border-color:#ffffff12;box-shadow:0 2px 8px #0000004d}.product-stat-card .stat-icon-wrap{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.product-stat-card .stat-content{flex-direction:column;min-width:0;display:flex}.product-stat-card .stat-value{color:var(--text,#0f172a);font-size:24px;font-weight:700;line-height:1.2}.product-stat-card .stat-label{color:var(--muted,#64748b);white-space:nowrap;margin-top:2px;font-size:12px;font-weight:500}.product-table-identity{flex-direction:column;gap:3px;display:flex}.product-table-name{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:13.5px;font-weight:600;line-height:1.3;transition:color .15s}.product-table-name:hover{color:var(--accent)}.product-table-id-row{align-items:center;gap:6px;display:inline-flex}.product-id-tag{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px}.copy-icon-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:1px;transition:color .15s;display:inline-flex}.copy-icon-btn:hover{color:var(--accent)}.product-barcode-cell{align-items:center;gap:6px;display:inline-flex}.barcode-badge{color:var(--accent);letter-spacing:.5px;background:#f9731614;border:1px solid #f9731633;border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;font-weight:600;display:inline-flex}.barcode-badge-unassigned{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px 8px;font-size:11px;font-style:italic}.catalog-pill-badge{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.floor-pill-badge{color:var(--text);align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.spec-pill{background-color:var(--bg);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:11px}.filter-clear-all-btn{color:var(--accent);cursor:pointer;white-space:nowrap;background:#f9731614;border:1px solid #f9731640;border-radius:9999px;align-items:center;gap:5px;height:32px;padding:5px 12px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.filter-clear-all-btn:hover{border-color:var(--accent);background:#f9731629}.icon-copy-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:2px 4px;transition:all .15s;display:inline-flex}.icon-copy-btn:hover{color:var(--accent);background-color:var(--surface-hover)}.product-row-name{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:13.5px;font-weight:600;line-height:1.3;transition:color .15s}.product-row-name:hover{color:var(--accent)}.barcode-none{color:var(--muted);background:var(--bg);border:1px dashed var(--border);border-radius:6px;padding:2px 8px;font-size:11px;font-style:italic;display:inline-block}.floor-badge{color:var(--text);background-color:var(--bg);border:1px solid var(--border);border-radius:4px;align-items:center;padding:2px 7px;font-size:11.5px;display:inline-flex}.spec-more-tag{background-color:var(--surface-hover);color:var(--muted);cursor:pointer;border-radius:4px;padding:2px 5px;font-size:10.5px;transition:color .15s}.spec-more-tag:hover{color:var(--accent)}.product-table-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.product-table-empty .empty-icon{opacity:.35;color:var(--muted);margin:0 auto 12px}.product-table-empty h3{color:var(--text);margin:0 0 6px;font-size:15px;font-weight:600}.product-table-empty p{color:var(--muted);max-width:420px;margin:0 auto 12px;font-size:12.5px;line-height:1.45}.form-section-block{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:12px 14px}.form-section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text);align-items:center;gap:8px;margin:0 0 8px;font-size:12.5px;font-weight:700;display:flex}.product-drawer-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1050;background:#0f172a73;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.product-drawer-panel{background:var(--surface,#fff);flex-direction:column;width:100%;max-width:480px;height:100%;animation:.25s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;overflow-y:hidden;box-shadow:-8px 0 24px #00000026}body.dark .product-drawer-panel{background:var(--surface,#25272c);border-left:1px solid var(--border,#3d3f46);box-shadow:-8px 0 28px #0009}.product-drawer-header{border-bottom:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 24px;display:flex}body.dark .product-drawer-header{border-bottom-color:var(--border,#3d3f46);background:#25272c}.product-drawer-body{flex-direction:column;flex:1;gap:14px;padding:20px 24px;display:flex;overflow-y:auto}.product-drawer-section{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);border-radius:10px;padding:14px 16px}body.dark .product-drawer-section{border-color:var(--border,#3d3f46);background:#1f2125}.product-drawer-footer{border-top:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}body.dark .product-drawer-footer{border-top-color:var(--border,#3d3f46);background:#25272c}@media (width<=1366px){.product-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.filter-toolbar-search input{width:155px}}@media (width>=1367px) and (width<=1600px){.product-stats-grid{grid-template-columns:repeat(4,1fr)}.filter-toolbar-search input{width:175px}}@media (width>=1601px){.filter-toolbar-search input{width:220px}}.products-page .bvs-table th:last-child,.products-page .bvs-table td:last-child{white-space:nowrap}.products-page .btn-table-action{white-space:nowrap;background:var(--surface);border:1px solid var(--border);height:28px;color:var(--text);cursor:pointer;box-sizing:border-box;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:500;line-height:1;transition:all .15s;display:inline-flex}.products-page .btn-table-action:hover{background:var(--surface-hover,var(--bg));border-color:var(--accent);color:var(--accent);text-decoration:none}body.dark .products-page .btn-table-action{color:#e2e8f0;background:#25282f;border-color:#ffffff1a}body.dark .products-page .btn-table-action:hover{border-color:var(--accent);color:var(--accent);background:#f973161a}.inventory-page{flex-direction:column;gap:16px;display:flex}.inventory-page .dashboard-heading-section{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.inventory-page .heading-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inventory-page .heading-actions .floor-dropdown-container{align-items:center;display:inline-flex}.inventory-page .heading-actions .floor-dropdown-trigger,.inventory-page .heading-actions .btn-primary,.inventory-page .heading-actions .btn-secondary{box-sizing:border-box;white-space:nowrap;vertical-align:middle;border-radius:9999px;justify-content:center;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:.875rem;font-weight:500;line-height:1;display:inline-flex}.inventory-page .heading-actions .btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);transition:all var(--transition-speed) ease}.inventory-page .heading-actions .btn-secondary:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-hover,var(--border));transform:translateY(-1px)}.inventory-page .heading-actions .btn-primary{background:var(--accent,#f97316);color:#fff;transition:all var(--transition-speed) ease;border:none;padding:0 18px;font-weight:600;box-shadow:0 2px 8px #f9731647}.inventory-page .heading-actions .btn-primary:hover{background:var(--accent-hover,#ea580c);transform:translateY(-1px);box-shadow:0 4px 12px #f9731661}body.dark .inventory-page .heading-actions .btn-secondary{color:var(--text);background:#25282f;border-color:#ffffff14;box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff0d}body.dark .inventory-page .heading-actions .btn-secondary:hover{background:#2f323a;border-color:#f9731666}.stepper-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;width:24px;height:24px;color:var(--text);box-shadow:1px 1px 3px var(--shadow-dark), -1px -1px 3px var(--shadow-light);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.stepper-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.stepper-btn:active:not(:disabled){box-shadow:inset 1px 1px 2px var(--shadow-dark);transform:translateY(0)}.stepper-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.inventory-action-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm,8px);min-width:175px;box-shadow:4px 4px 12px var(--shadow-dark), -4px -4px 12px var(--shadow-light), 0 8px 22px #00000029;z-index:1000;flex-direction:column;gap:2px;padding:4px;animation:.18s cubic-bezier(.16,1,.3,1) dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 4px);right:0}.inventory-action-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:7px 10px;font-size:12px;transition:all .15s;display:flex}.inventory-action-item:hover{background:var(--surface-hover);color:var(--accent)}.inventory-action-divider{background:var(--border);height:1px;margin:3px 0}.link-button{cursor:pointer;color:inherit;text-align:left;background:0 0;border:none;padding:0;font-family:inherit;transition:color .15s}.link-button:hover{color:var(--accent);text-decoration:underline}.filter-select-input{border:1px solid var(--border);background-color:var(--surface);color:var(--text);border-radius:6px;padding:5px 10px;font-family:inherit;font-size:12.5px;transition:border-color .2s,box-shadow .2s}.filter-select-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #f973162e}.batch-detail-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:6px;display:grid}@media (width<=768px){.batch-detail-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.batch-detail-grid{grid-template-columns:1fr}}.batch-info-card{background:var(--surface);border:1px solid var(--border);min-height:140px;box-shadow:2px 2px 8px var(--shadow-dark), -2px -2px 8px var(--shadow-light);transition:transform var(--transition-speed), box-shadow var(--transition-speed);border-radius:16px;flex-direction:column;justify-content:space-between;gap:12px;padding:18px 20px;display:flex}.batch-info-card:hover{box-shadow:4px 6px 14px var(--shadow-dark), -4px -6px 14px var(--shadow-light);transform:translateY(-2px)}.batch-info-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.batch-info-card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:700}.batch-info-card-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.batch-info-card-icon.icon-blue{color:#3b82f6;background:#3b82f626}.batch-info-card-icon.icon-amber{color:#f97316;background:#f9731626}.batch-info-card-icon.icon-purple{color:#a855f7;background:#a855f726}.batch-info-card-icon.icon-green{color:#10b981;background:#10b98126}.batch-info-card-body{flex-direction:column;gap:4px;display:flex}.batch-info-card-value{color:var(--text);font-size:22px;font-weight:800;line-height:1.2}.batch-info-card-sub{color:var(--muted);font-size:12.5px;line-height:1.45}.batch-info-card-footer{border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:8px;display:flex}.batch-info-card-pill{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:9999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.pill-dot{background-color:#10b981;border-radius:50%;width:6px;height:6px;display:inline-block}.batch-summary-strip{background:var(--surface);border:1px solid var(--border);box-shadow:2px 2px 6px var(--shadow-dark), -2px -2px 6px var(--shadow-light);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;padding:12px 18px;display:flex}.batch-metrics-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.batch-metric-item{align-items:center;gap:8px;display:flex}.batch-metric-label{color:var(--muted);font-size:12px}.batch-metric-value{color:var(--text);font-size:13.5px;font-weight:700}.batch-divider{background-color:var(--border);width:1px;height:16px}.batch-section{flex-direction:column;gap:10px;display:flex}.batch-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.batch-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin:0;font-size:12.5px;font-weight:700;display:flex}.batch-table-container{border:var(--bvs-surface-border,1px solid var(--border));border-radius:var(--bvs-surface-radius,20px);background:var(--bvs-surface-bg,var(--surface));box-shadow:var(--bvs-surface-shadow);overflow:hidden}.batch-empty-state{text-align:center;background:var(--bg);border:1px dashed var(--border);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:32px 20px;display:flex}.batch-empty-state-title{color:var(--text);margin:6px 0 2px;font-size:14px;font-weight:600}.batch-empty-state-desc{color:var(--muted);max-width:320px;margin:0 0 12px;font-size:12.5px}.batch-actions-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:6px;display:flex}.batch-actions-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.workflows-page{color:#0f172a;flex-direction:column;flex:1;height:auto;min-height:0;max-height:calc(100vh - 72px);font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.workflow-validation-modal-body{max-height:min(70vh,520px);overflow-y:auto}.workflow-validation-issue-list{flex-direction:column;gap:6px;max-height:min(36vh,240px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.workflow-validation-issue-btn,.workflow-validation-issue-static{text-align:left;color:#ef4444;width:100%;font-size:12.5px;line-height:1.4;display:block}.workflow-validation-issue-btn{cursor:pointer;background:#ef44440f;border:1px solid #ef444440;border-radius:6px;padding:8px 10px;font-family:inherit}.workflow-validation-issue-btn:hover{background:#ef44441f}.workflow-validation-issue-static{padding:6px 2px}.custom-node-card.has-validation-error{outline:2px solid #ef4444;box-shadow:0 0 0 4px #ef444433}.react-flow__edge.wf-validation-error-edge .react-flow__edge-path{stroke:#ef4444!important;stroke-width:3px!important}.studio-header{justify-content:space-between;align-items:flex-end;padding:32px 24px;display:flex}.studio-title{color:#0f172a;margin:8px 0 4px;font-size:28px;font-weight:700}.studio-description{color:#64748b;margin:0;font-size:14px}.studio-actions{gap:12px;display:flex}.btn-primary{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-primary:hover{background-color:var(--accent-hover)}.workflow-editor-container{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;flex:1;margin:0 24px 24px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d}.editor-toolbar{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.toolbar-left{align-items:center;gap:12px;display:flex}.version-selector{color:#334155;cursor:pointer;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:14px;font-weight:500;display:flex}.badge-published{color:#166534;background-color:#dcfce7;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500}.btn-toolbar{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.btn-toolbar:hover{background-color:#f1f5f9}.toolbar-divider{background-color:#e2e8f0;width:1px;height:20px;margin:0 8px}.canvas-legend{z-index:10;color:#64748b;align-items:center;gap:16px;font-size:12px;display:flex;position:absolute;top:65px;left:20px}.legend-item{align-items:center;gap:6px;display:flex}.legend-line{background-color:#94a3b8;width:20px;height:2px}.react-flow-wrapper{background-color:#f8fafc;flex:1;min-height:0;position:relative}.studio-body{flex:1;grid-template-columns:minmax(0,1fr) 280px;min-height:0;display:grid}.studio-message{margin:0 24px 12px!important}.wf-empty-hint{pointer-events:none;color:var(--muted);text-align:center;justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.wf-context-menu{z-index:30;background:var(--surface);border:1px solid var(--border);width:280px;max-height:70vh;box-shadow:8px 8px 18px var(--shadow-dark), -8px -8px 18px var(--shadow-light);border-radius:12px;flex-direction:column;gap:4px;padding:8px;display:flex;position:absolute;overflow:auto}.wf-menu-group{flex-direction:column;gap:4px;display:flex}.wf-menu-item:disabled{opacity:.55;cursor:default}.wf-palette{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;flex-direction:column;gap:12px;max-height:340px;padding:12px 24px 16px;display:flex;overflow:auto;box-shadow:0 4px 10px #0000000d}.wf-palette-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:600;display:flex}.wf-palette-close{color:var(--muted);cursor:pointer;background:0 0;border:none}.wf-palette-category{flex-direction:column;gap:6px;display:flex}.wf-palette-items{flex-wrap:wrap;gap:8px;display:flex}.wf-palette-item{background:var(--bg);border:1px solid var(--border);max-width:240px;color:var(--text);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 12px;display:flex}.wf-palette-item strong{font-size:12px}.wf-palette-item span,.wf-palette-hint{color:var(--muted);font-size:11px}.wf-palette-item:disabled{opacity:.55;cursor:default}.wf-palette-hint{max-width:420px;margin:0;padding:6px 8px;line-height:1.35}.wf-sequence-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.wf-sequence-row{align-items:center;gap:6px;font-size:12px;display:flex}.wf-sequence-row span{flex:1}.wf-sequence-actions{flex-wrap:wrap;gap:6px;display:flex}.wf-sequence-error{color:#ef4444;margin:0;font-size:12px}.wf-menu-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:4px 8px 6px;font-size:10px}.wf-menu-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px;display:flex}.wf-menu-item strong{font-size:13px}.wf-menu-item span{color:var(--muted);font-size:11px}.wf-menu-item:hover{background:var(--surface-hover)}.wf-menu-item.danger strong{color:var(--danger)}.wf-menu-item.muted{color:var(--muted)}.wf-inspector{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;gap:12px;padding:16px;display:flex;overflow:auto}.wf-inspector h2{margin:0;font-size:16px}.wf-inspector .form-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;padding:8px 10px}.wf-pin-list{flex-direction:column;gap:8px;display:flex}.wf-pin-card{border:1px solid var(--border);background:var(--bg);border-radius:8px;flex-direction:column;gap:8px;padding:10px;display:flex}.wf-pin-card h3{margin:0;font-size:12px;font-weight:600}.wf-pin-add,.wf-pin-remove{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500}.wf-pin-remove{color:#ef4444;border-color:#ef44444d}.node-hint{color:var(--muted);margin:0;font-size:12px}.pin-legend{justify-content:space-between;font-size:11px;font-weight:600;display:flex}.pin-true{color:#22c55e}.pin-false{color:#ef4444}.custom-node-card.is-selected{outline:2px solid var(--accent)}.custom-node-card.kind-start .node-header,.custom-node-card.kind-end .node-header{background:#f9731614}.custom-node-card.kind-branch .node-header{background:#22c55e14}.custom-node-card.kind-customFunction .node-header{background:#3b82f61a}.exec-handle{background:var(--accent);border:2px solid #fff;border-radius:2px;width:11px;height:11px;transform:rotate(45deg)}.handle-true{background:#22c55e}.handle-false{background:#ef4444}@media (width<=960px){.studio-body{grid-template-columns:1fr}.wf-inspector{border-left:0;border-top:1px solid var(--border);max-height:240px}}.custom-node-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;width:220px;display:flex;box-shadow:0 4px 6px -1px #0000000d}.node-header{border-bottom:1px dashed #e2e8f0;align-items:center;padding:12px;display:flex}.node-icon-wrapper{color:#3b82f6;background-color:#eff6ff;border-radius:4px;justify-content:center;align-items:center;margin-right:8px;padding:4px;display:flex}.node-title{color:#0f172a;flex:1;font-size:14px;font-weight:600}.node-status-dot{background-color:#10b981;border-radius:50%;width:6px;height:6px}.node-body{flex-direction:column;gap:8px;padding:8px 12px 12px;display:flex}.node-row{justify-content:space-between;align-items:center;display:flex}.row-label{color:#64748b;font-size:12px}.row-value{color:#334155;font-size:12px;font-weight:500}.custom-handle{background-color:#94a3b8;border:2px solid #fff;width:8px;height:8px}.custom-handle.handle-left{left:-5px}.custom-handle.handle-right{right:-5px}.dark .workflows-page{background-color:var(--bg);color:var(--text)}.dark .walkthrough-banner{background-color:var(--surface);border-bottom-color:var(--border)}.dark .studio-title{color:var(--text-inverse)}.dark .btn-secondary{background-color:var(--surface);border-color:var(--border);color:var(--text)}.dark .workflow-editor-container{background-color:var(--surface);border-color:var(--border)}.dark .editor-toolbar{border-bottom-color:var(--border)}.dark .version-selector,.dark .btn-toolbar{color:var(--text)}.dark .btn-toolbar:hover{background-color:var(--surface-hover)}.dark .badge-published{color:#10b981;background-color:#10b98133}.dark .react-flow-wrapper{background-color:var(--bg)}.dark .custom-node-card{background-color:var(--surface);border-color:var(--border)}.dark .node-title,.dark .row-value{color:var(--text-inverse)}.dark .node-header{border-bottom-color:var(--border)}.dark .node-icon-wrapper{color:#60a5fa;background-color:#3b82f633}.status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.scanner-page{color:#0f172a;flex-direction:column;height:calc(100vh - 90px);font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.local-top-header{background-color:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;height:60px;padding:0 24px;display:flex}.top-header-right{align-items:center;gap:16px;display:flex}.search-bar{background-color:#f1f5f9;border-radius:6px;align-items:center;width:250px;padding:6px 12px;display:flex}.search-icon{color:#94a3b8;margin-right:8px}.search-bar input{background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:13px}.icon-btn{color:#64748b;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.saved-status{color:#64748b;align-items:center;gap:6px;font-size:13px;display:flex}.walkthrough-banner{background-color:#f0f9ff;border-bottom:1px solid #e0f2fe;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.banner-tag{color:#0284c7;letter-spacing:.5px;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.banner-text{color:#334155;font-size:14px}.admin-dropdown{color:#475569;cursor:pointer;align-items:center;gap:4px;font-size:13px;display:flex}.tour-btn{color:#0f172a;cursor:pointer;background-color:#0000;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.scanner-content-area{flex-direction:column;flex:1;padding:32px 24px;display:flex}.scanner-header-section{justify-content:space-between;align-items:flex-end;margin-bottom:32px;display:flex}.main-heading{color:#0f172a;margin:8px 0 4px;font-size:28px;font-weight:700}.supporting-text{color:#64748b;margin:0;font-size:14px}.floor-dropdown{color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:500;display:flex}.btn-secondary{color:#0f172a;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;display:flex}.scan-trail-btn{background-color:#fff}.scanner-grid{grid-template-columns:2.5fr 1fr;align-items:start;gap:24px;display:grid}.scanner-card,.context-card{background-color:var(--bvs-surface-bg,#fff);border:var(--bvs-surface-border,1px solid #e2e8f0);border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;overflow:hidden}.scanner-card{flex-direction:column;min-height:480px;display:flex}.card-header-bar{border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.card-status-left{align-items:center;gap:8px;display:flex}.status-dot{background-color:#94a3b8;border-radius:50%;width:8px;height:8px}.status-dot.success{background-color:#10b981}.status-dot.processing{background-color:#f59e0b;animation:1.5s infinite pulse}.badge-small{color:#475569;background-color:#f1f5f9;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500}.card-body-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:0 48px 48px;display:flex}.huge-icon-wrapper{color:#64748b;margin-bottom:24px}.huge-icon-wrapper.success-wrapper{color:#10b981}.card-main-title{color:#0f172a;margin:0 0 8px;font-size:24px;font-weight:600}.card-sub-text{color:#64748b;margin:0 0 32px;font-size:14px}.card-sub-text strong{color:#0f172a;font-weight:600}.reset-scan-btn{margin-bottom:32px}.scan-input-area{align-items:center;gap:12px;width:100%;max-width:500px;margin-bottom:32px;display:flex}.input-wrapper{background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:1;align-items:center;padding:10px 16px;transition:all .2s;display:flex}.input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input-icon{color:#94a3b8;margin-right:10px}.input-wrapper input{color:#0f172a;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:15px}.input-wrapper input::placeholder{color:#94a3b8}.btn-primary.scan-btn{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:500;transition:background-color .2s;display:flex}.btn-primary.scan-btn:hover:not(:disabled){background-color:var(--accent-hover)}.btn-primary.scan-btn:disabled{background-color:var(--accent);opacity:.5;cursor:not-allowed}.sample-scans-section{flex-direction:column;align-items:center;gap:12px;display:flex}.sample-label{color:#94a3b8;letter-spacing:.5px;font-size:11px;font-weight:600}.sample-buttons-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.sample-btn{cursor:pointer;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;align-items:center;padding:8px 16px;transition:all .2s;display:flex}.sample-btn:hover:not(:disabled){background-color:#f1f5f9;border-color:#cbd5e1}.sample-btn:disabled{opacity:.6;cursor:not-allowed}.sample-id{color:#334155;font-size:13px;font-weight:500}.sample-floor{color:#94a3b8;font-size:11px}.context-card{padding:24px}.context-card-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.context-title{color:#0f172a;margin:0;font-size:16px;font-weight:600}.context-body{flex-direction:column;gap:20px;display:flex}.field-group{flex-direction:column;gap:8px;display:flex}.field-label{color:#475569;font-size:13px;font-weight:500}.read-only-input{color:#0f172a;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px;font-size:14px}.chips-row{flex-wrap:wrap;gap:8px;display:flex}.floor-chip{color:#475569;background-color:#f1f5f9;border-radius:16px;padding:4px 10px;font-size:12px;font-weight:500}.info-panel{background-color:#f0f9ff;border-radius:8px;align-items:flex-start;gap:12px;margin-top:8px;padding:16px;display:flex}.info-icon{color:#0284c7;margin-top:2px}.info-text-col{flex-direction:column;gap:4px;display:flex}.info-text-col strong{color:#0c4a6e;font-size:13px}.info-text-col span{color:#0369a1;font-size:12px;line-height:1.4}.context-footer-text{color:#94a3b8;margin:16px 0 0;font-size:12px;line-height:1.5}@media (width<=1024px){.scanner-grid{grid-template-columns:1fr}}@media (width<=768px){.scanner-header-section{flex-direction:column;align-items:flex-start;gap:16px}.card-body-center{padding:0 24px 32px}.scan-input-area{flex-direction:column}.btn-primary.scan-btn{justify-content:center;width:100%}}.dark .scanner-page{background-color:var(--bg);color:var(--text)}.dark .local-top-header{background-color:var(--surface);border-bottom-color:var(--border)}.dark .breadcrumb{color:var(--muted)}.dark .breadcrumb strong{color:var(--text)}.dark .search-bar{background-color:var(--surface)}.dark .search-icon{color:var(--muted)}.dark .search-bar input{color:var(--text)}.dark .walkthrough-banner{background-color:var(--surface);border-bottom-color:var(--border);color:var(--text)}.dark .banner-text,.dark .admin-dropdown{color:var(--text)}.dark .tour-btn{color:var(--text);border-color:var(--border)}.dark .main-heading,.dark .card-main-title,.dark .context-title{color:var(--text-inverse)}.dark .btn-secondary,.dark .floor-dropdown{background-color:var(--surface);border-color:var(--border);color:var(--text)}body.dark .scanner-card,body.dark .context-card,.dark .scanner-card,.dark .context-card{background-color:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}.dark .status-text,.dark .card-sub-text strong{color:var(--text-inverse)}.dark .badge-small{background-color:var(--border);color:var(--text)}.dark .input-wrapper{background-color:var(--bg);border-color:var(--border)}.dark .input-wrapper input{color:var(--text-inverse)}.dark .sample-btn{background-color:var(--bg);border-color:var(--border)}.dark .sample-btn:hover:not(:disabled){background-color:var(--surface-hover);border-color:var(--border)}.dark .sample-id{color:var(--text-inverse)}.dark .read-only-input{background-color:var(--bg);border-color:var(--border);color:var(--text-inverse)}.dark .floor-chip{background-color:var(--border);color:var(--text)}.dark .info-panel{background-color:var(--surface);border:1px solid var(--border)}.dark .info-text-col strong{color:var(--text-inverse)}.dark .info-text-col span{color:var(--muted)}.people-page{color:#0f172a;flex-direction:column;flex:1;font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.page-header{flex-direction:column;gap:16px;padding:32px 0 24px;display:flex}.breadcrumb{color:#64748b;font-size:13px}.breadcrumb strong{color:#0f172a;font-weight:600}.header-content{justify-content:space-between;align-items:flex-end;display:flex}.workspace-label{color:#64748b;letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:600}.main-title{color:#0f172a;margin:4px 0;font-size:28px;font-weight:700}.subtitle{color:#64748b;margin:0;font-size:14px}.header-actions{align-items:center;gap:12px;display:flex}.context-selector{color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;display:flex;box-shadow:0 1px 2px #0000000d}.btn-primary,.btn-primary-orange{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #f9731640}.btn-primary:hover,.btn-primary-orange:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f9731659}.btn-outline{color:#334155;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:9999px;align-items:center;gap:8px;padding:9px 18px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.btn-outline:hover{background-color:#f8fafc;border-color:#94a3b8}.btn-link{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:500}.btn-link:hover{text-decoration:underline}.icon-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.icon-btn:hover{color:#0f172a;background-color:#f1f5f9}.summary-cards-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:32px;display:grid}.summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:16px;padding:20px;display:flex;box-shadow:0 1px 3px #0000000d}.card-icon-wrap{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.bg-blue-light{background:#eff6ff}.text-blue{color:#3b82f6}.bg-green-light{background:#f0fdf4}.text-green{color:#10b981}.bg-yellow-light{background:#fffbeb}.text-yellow{color:#f59e0b}.bg-purple-light{background:#faf5ff}.text-purple{color:#a855f7}.card-data{flex-direction:column;display:flex}.card-value{color:#0f172a;margin-bottom:4px;font-size:28px;font-weight:700;line-height:1}.card-label{color:#334155;margin-bottom:2px;font-size:14px;font-weight:500}.card-subtext{color:#94a3b8;font-size:12px}.content-panel{background:var(--bvs-surface-bg,#fff);border:var(--bvs-surface-border,1px solid #e2e8f0);border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;flex-direction:column;flex:1;display:flex;overflow:hidden}.tabs-header{-webkit-overflow-scrolling:touch;scrollbar-width:thin;background:#fafafa;border-bottom:1px solid #e2e8f0;display:flex;overflow-x:auto}.tab-btn{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;padding:16px 24px;font-size:14px;font-weight:500}@media (width<=480px){.tab-btn{padding:12px 14px;font-size:12.5px}}.tab-btn:hover{color:#0f172a}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:#fff}.tab-content-area,.tab-pane{flex-direction:column;flex:1;display:flex}.table-toolbar{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:12px;display:flex}.search-input-wrap{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;width:300px;padding:8px 12px;display:flex}.search-input-wrap .input-icon{color:#94a3b8;margin-right:8px}.search-input-wrap input{color:#0f172a;background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:13px}.table-container{overflow-x:auto}.bvs-table{border-collapse:collapse;width:100%}.bvs-table th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#fafafa;border-bottom:1px solid #e2e8f0;padding:12px 24px;font-size:12px;font-weight:600}.bvs-table td{color:#334155;vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:16px 24px;font-size:14px}.bvs-table tr:last-child td{border-bottom:none}.bvs-table tr:hover td{background-color:#f8fafc}.align-right{text-align:right!important}.font-medium{color:#0f172a;font-weight:500}.text-muted{color:#64748b}.italic{font-style:italic}.member-cell{align-items:center;gap:12px;display:flex}.member-avatar{color:#475569;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:flex}.member-info{flex-direction:column;display:flex}.member-name{color:#0f172a;font-weight:500}.member-email{color:#64748b;font-size:12px}.role-badge{color:#475569;background:#f1f5f9;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500}.type-badge{text-transform:uppercase;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600}.type-badge.system{color:#0369a1;background:#e0f2fe}.type-badge.custom{color:#7e22ce;background:#faf5ff}.floor-chips{flex-wrap:wrap;gap:4px;display:flex}.chip{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:12px;padding:2px 8px;font-size:11px}.status-badge.status-suspended,.status-badge.status-disabled{color:#b91c1c;background:#fee2e2}.status-badge.status-invited,.status-badge.status-pending{color:#b45309;background:#fef3c7}.status-badge.status-expired{color:#475569;background:#f1f5f9}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aa6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000a}.large-modal .modal-dialog{max-width:700px}.modal-cute-icon{width:42px;height:42px;color:var(--accent);background:#f973161f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal-cute-subtitle{color:#64748b;margin-top:2px;font-size:13px}.close-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;line-height:1;transition:all .2s;display:flex}.close-btn:hover{color:#0f172a;background:#e2e8f0}.modal-body{flex-direction:column;gap:16px;padding:24px;display:flex;overflow-y:auto}.role-matrix-body{padding-bottom:0}.modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.form-input{color:#0f172a;background:#fff;border:1.5px solid #cbd5e1;border-radius:12px;outline:none;width:100%;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f973162e}.matrix-title{color:#0f172a;margin:16px 0 4px;font-size:15px;font-weight:600}.matrix-subtitle{color:#64748b;margin:0 0 16px;font-size:13px}.permission-matrix{grid-template-columns:1fr 1fr;gap:20px;display:grid}.permission-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:10px;padding:16px;display:flex}.permission-group h4{color:#334155;text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;font-size:13px;font-weight:600}.perm-checkbox{color:#475569;cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.dark .people-page{color:var(--text)}.dark .breadcrumb,.dark .subtitle,.dark .card-subtext,.dark .text-muted,.dark .matrix-subtitle{color:var(--muted)}.dark .breadcrumb strong,.dark .main-title,.dark .card-value,.dark .modal-header h2,.dark .matrix-title,.dark .font-medium,.dark .member-name{color:var(--text-inverse)}.dark .context-selector,.dark .btn-outline,.dark .search-input-wrap,.dark .form-input{background-color:var(--surface);border-color:var(--border);color:var(--text)}.dark .summary-card{background:var(--surface);border-color:var(--border)}.dark .content-panel,body.dark .content-panel{background:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}.dark .modal-dialog{background:#1e2025;border-color:#ffffff14;box-shadow:0 25px 50px -12px #000000b3}.dark .modal-header,.dark .modal-footer{background:#24272e;border-color:#ffffff14}.dark .modal-cute-subtitle{color:var(--muted)}.dark .close-btn{color:#9b9da5;background:#2b2e36}.dark .close-btn:hover{color:#fff;background:#393c46}.dark .form-input{color:#f2f2f2;background:#272a31;border-color:#3e424c}.dark .form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #f9731640}.dark .tabs-header,.dark .bvs-table th,.dark .table-toolbar{background:var(--bg);border-color:var(--border)}.dark .tab-btn{color:var(--muted)}.dark .tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--surface)}.dark .bvs-table td{border-color:var(--border);color:var(--text)}.dark .bvs-table tr:hover td{background-color:var(--surface-hover)}.dark .member-avatar,.dark .role-badge,.dark .chip{background:var(--border);color:var(--text)}.dark .status-badge.status-suspended{color:#ef4444;background:#ef444433}.dark .status-badge.status-invited,.dark .status-badge.status-pending{color:#f59e0b;background:#f59e0b33}.dark .status-badge.status-expired{background:var(--border);color:var(--text)}.dark .type-badge.system{color:#60a5fa;background:#3b82f633}.dark .type-badge.custom{color:#c084fc;background:#a855f733}.dark .permission-group{background:var(--bg);border-color:var(--border)}.dark .permission-group h4{color:var(--text-inverse)}.dark .perm-checkbox{color:var(--text)}.dark .bg-blue-light{background:#3b82f633}.dark .bg-green-light{background:#10b98133}.dark .bg-yellow-light{background:#f59e0b33}.dark .bg-purple-light{background:#a855f733}@media (width<=768px){.permission-matrix{grid-template-columns:1fr}.header-content{flex-direction:column;align-items:flex-start;gap:16px}.table-toolbar{flex-direction:column;align-items:stretch;gap:12px}.search-input-wrap{width:100%}}.auth-screen{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border-radius:var(--radius-lg);width:min(440px,100%);box-shadow:8px 8px 16px var(--shadow-dark), -8px -8px 16px var(--shadow-light);flex-direction:column;gap:16px;padding:32px;display:flex}.auth-card h1{font-size:1.6rem}.auth-card .subtitle,.auth-error{color:var(--muted)}.auth-error{color:var(--danger)}.auth-card .form-group{flex-direction:column;gap:6px;font-size:.9rem;display:flex}.auth-card .form-input{border-radius:var(--radius-sm);background:var(--bg);color:var(--text);border:none;padding:10px 12px;font-size:.95rem}.auth-card code{font-size:.85em}.auth-link{color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:0;padding:0}.devices-page{color:var(--text,#0f172a);box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-width:0;max-width:1440px;margin:0 auto;padding:0 32px 48px;font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;overflow-x:hidden}.devices-header-section{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.simulation-mode-banner{color:#166534;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:center;gap:12px;margin-bottom:24px;padding:12px 18px;font-size:13px;font-weight:500;display:flex}.simulation-icon-wrap{color:#15803d;justify-content:center;align-items:center;display:flex}.simulation-banner-text strong{font-weight:600}.devices-summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.devices-controls-toolbar{background-color:var(--surface-hover,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:9999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:8px 12px;display:flex;box-shadow:0 1px 3px #0000000a}body.dark .devices-controls-toolbar{background:var(--surface,#1e2024);border-color:#ffffff14;box-shadow:0 2px 8px #00000040}.device-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;width:100%;min-width:0;margin-bottom:40px;display:grid}.device-card{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);cursor:pointer;border-radius:14px;flex-direction:column;gap:12px;min-width:0;max-width:100%;padding:16px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 6px #0000000a}.device-card:hover{border-color:#cbd5e1;box-shadow:0 6px 16px #0000000f}.device-card.is-selected{border-color:var(--accent,#f97316);box-shadow:0 0 0 1px #f9731640}.device-card:focus-visible{outline:2px solid var(--accent,#f97316);outline-offset:2px}.device-card.disabled-device{opacity:.75;background-color:var(--bg,#f8fafc)}.device-card-header{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;margin-bottom:0;display:flex}.device-identity{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.device-icon-container{color:#2563eb;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.device-name-type{flex-direction:column;flex:1;min-width:0;display:flex}.device-card-title{color:var(--text,#0f172a);text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:15px;font-weight:700;overflow:hidden}.device-card-meta{color:var(--muted,#64748b);align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:500;display:flex}.device-card-meta code{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:140px;display:inline-block;overflow:hidden}.meta-dot{background-color:#cbd5e1;border-radius:50%;width:4px;height:4px}.device-header-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.status-pill.status-online{color:#15803d;background-color:#dcfce7}.status-pill.status-offline{color:#b91c1c;background-color:#fee2e2}.status-pill.status-degraded{color:#b45309;background-color:#fef3c7}.status-pill.status-testing{color:#0369a1;background-color:#e0f2fe}.status-pill.status-disabled{color:#64748b;background-color:#f1f5f9}.device-dropdown-menu{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);z-index:50;border-radius:10px;min-width:170px;padding:6px;position:absolute;top:60px;right:24px;overflow:hidden;box-shadow:0 10px 25px #0000001a}.device-dropdown-menu button{text-align:left;cursor:pointer;width:100%;color:var(--text,#334155);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.device-dropdown-menu button:hover{background-color:var(--bg,#f8fafc);color:#2563eb}.device-dropdown-menu button.menu-danger{color:#dc2626}.device-dropdown-menu button.menu-danger:hover{background-color:#fef2f2}.device-config-row{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0;margin-bottom:0;padding:12px 14px;display:grid}.device-config-row-compact{margin-bottom:0}.config-field{flex-direction:column;gap:4px;min-width:0;display:flex}.config-value{color:var(--text,#0f172a);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.config-field-label{text-transform:uppercase;color:var(--muted,#64748b);letter-spacing:.5px;font-size:11px;font-weight:700}.config-select-input{width:100%;color:var(--text,#0f172a);background-color:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);cursor:pointer;border-radius:6px;outline:none;padding:6px 10px;font-size:13px;font-weight:600}.config-select-input:focus{border-color:#2563eb}.device-diagnostics-line{color:var(--muted,#64748b);justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:0;padding:0 2px;font-size:12px;display:flex}.health-status-text{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.device-diag-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.device-card-mode{flex-shrink:0;align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.device-card-actions{border-top:1px solid var(--border,#f1f5f9);align-items:center;gap:12px;margin-top:auto;padding-top:16px;display:flex}.btn-card-action{cursor:pointer;border-radius:9999px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.btn-health-check{color:#1d4ed8;background-color:#eff6ff;border:1px solid #bfdbfe}.btn-health-check:hover:not(:disabled){background-color:#dbeafe}.btn-health-check:disabled{opacity:.6;cursor:not-allowed}.btn-simulate-failure{color:#c2410c;background-color:#fff7ed;border:1px solid #fed7aa}.btn-simulate-failure:hover{background-color:#ffedd5}.event-log-section{background-color:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);margin-top:12px;overflow:hidden}body.dark .event-log-section{background-color:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}.event-log-header{border-bottom:1px solid var(--border,#e2e8f0);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.event-log-title-area{flex-direction:column;display:flex}.event-log-title{color:var(--text,#0f172a);margin:0 0 4px;font-size:18px;font-weight:700}.event-log-subtitle{color:var(--muted,#64748b);margin:0;font-size:13px}.event-log-filters{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.event-search-wrapper{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);border-radius:6px;align-items:center;gap:8px;width:200px;padding:6px 12px;display:flex}.event-search-wrapper input{width:100%;color:var(--text,#0f172a);background:0 0;border:none;outline:none;font-size:12px}.event-filter-select{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);color:var(--text,#334155);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:500}.event-table-container{overflow-x:auto}.event-table{border-collapse:collapse;text-align:left;width:100%}.event-table th{color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.6px;background-color:var(--bg,#f8fafc);border-bottom:1px solid var(--border,#e2e8f0);white-space:nowrap;padding:12px 20px;font-size:11px;font-weight:700}.event-table td{color:var(--text,#334155);border-bottom:1px solid var(--border,#f1f5f9);vertical-align:middle;padding:14px 20px;font-size:13px}.event-table tr:hover td{background-color:var(--bg,#f8fafc)}.event-table tr:last-child td{border-bottom:none}.event-name-cell{color:var(--text,#0f172a);font-weight:600}.device-code-tag{background-color:var(--bg,#f1f5f9);border:1px solid var(--border,#e2e8f0);color:var(--text,#0f172a);border-radius:4px;padding:3px 8px;font-family:monospace;font-size:12px;font-weight:600}.event-type-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.badge-health-check{color:#0369a1;background-color:#e0f2fe}.badge-connection{color:#15803d;background-color:#f0fdf4}.badge-failure{color:#b91c1c;background-color:#fee2e2}.badge-configuration{color:#b45309;background-color:#fef3c7}.badge-registration{color:#7e22ce;background-color:#faf5ff}.badge-status-change{color:#475569;background-color:#f1f5f9}.event-time-cell{color:var(--muted,#64748b);white-space:nowrap}.event-details-cell{white-space:nowrap;text-overflow:ellipsis;max-width:320px;color:var(--muted,#64748b);overflow:hidden}.modal-close-icon-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;padding:4px;font-size:24px;line-height:1}.form-field-input:disabled{background-color:var(--bg,#f1f5f9);color:var(--muted,#94a3b8);cursor:not-allowed}.field-error-message{color:#dc2626;font-size:12px;font-weight:500}@keyframes slideUp{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}.empty-state-box{text-align:center;background-color:var(--surface,#fff);border:1px dashed var(--border,#cbd5e1);color:var(--muted,#64748b);border-radius:16px;flex-direction:column;grid-column:span 2;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}body.dark .simulation-mode-banner{color:#86efac;background-color:#052e16;border-color:#14532d}body.dark .simulation-icon-wrap{color:#4ade80}body.dark .status-pill.status-online{color:#4ade80;background-color:#22c55e26}body.dark .status-pill.status-offline{color:#f87171;background-color:#ef444426}body.dark .status-pill.status-degraded{color:#fbbf24;background-color:#f59e0b26}body.dark .status-pill.status-testing{color:#38bdf8;background-color:#38bdf826}body.dark .status-pill.status-disabled{color:#94a3b8;background-color:#94a3b826}body.dark .device-icon-container{color:#60a5fa;background-color:#1e293b;border-color:#334155}body.dark .device-dropdown-menu{background-color:var(--surface,#303238);border-color:var(--border,#41434a)}body.dark .device-dropdown-menu button{color:var(--text,#f2f2f2)}body.dark .device-dropdown-menu button:hover{background-color:var(--surface-hover,#383a40);color:#60a5fa}body.dark .device-dropdown-menu button.menu-danger{color:#f87171}body.dark .device-dropdown-menu button.menu-danger:hover{background-color:#ef444433}body.dark .btn-health-check{color:#93c5fd;background-color:#1e293b;border-color:#3b82f6}body.dark .btn-health-check:hover:not(:disabled){color:#fff;background-color:#2563eb}body.dark .btn-simulate-failure{color:#fdba74;background-color:#2a1b14;border-color:#c2410c}body.dark .btn-simulate-failure:hover{background-color:#431407}body.dark .badge-health-check{color:#7dd3fc;background-color:#0369a140}body.dark .badge-connection{color:#86efac;background-color:#15803d40}body.dark .badge-failure{color:#fca5a5;background-color:#b91c1c40}body.dark .badge-configuration{color:#fde68a;background-color:#b4530940}body.dark .badge-registration{color:#d8b4fe;background-color:#7e22ce40}body.dark .badge-status-change{color:#cbd5e1;background-color:#47556940}@media (width<=1024px){.devices-summary-grid{grid-template-columns:repeat(2,1fr)}.device-card-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=768px){.devices-page{padding:0 16px 32px}.walkthrough-banner{flex-direction:column;align-items:flex-start;gap:10px}.banner-right{justify-content:space-between;width:100%}.devices-header-section{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{justify-content:space-between;width:100%}.devices-controls-toolbar{flex-direction:column;align-items:stretch}.controls-left,.controls-right,.search-field-wrapper{width:100%}.devices-summary-grid,.form-grid-2col,.details-spec-list{grid-template-columns:1fr}.spec-item.full-width{grid-column:span 1}}.config-value{color:var(--text,#0f172a);font-size:13px;font-weight:500}.device-key-ready{color:#10b981;align-items:center;gap:4px;font-size:11px;font-weight:600;display:inline-flex}.registration-success-box{background:#10b98114;border:1px solid #10b98159;border-radius:8px;padding:16px}.device-config-row+.device-config-row{border-top:1px dashed var(--border,#e2e8f0)}.scanner-device-selector select.filter-select{min-width:220px;font-size:12.5px}.scanner-device-selector{align-items:center;gap:8px;display:inline-flex}@media (width<=480px){.scanner-page .header-actions,.devices-page .header-actions{flex-wrap:wrap;width:100%}.scanner-device-selector{width:100%}.scanner-device-selector select.filter-select{width:100%;min-width:0;max-width:100%}}.provision-layout{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.provision-layout{grid-template-columns:1fr}}.provision-card{background:var(--card-bg,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0f172a0f}.provision-card-heading{color:var(--text,#1e293b);align-items:center;gap:8px;margin-bottom:16px;font-size:15px;font-weight:600;display:flex}.provision-field{margin-bottom:14px}.provision-password-wrap{position:relative}.provision-password-wrap .form-field-input{padding-right:40px}.provision-password-toggle{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.provision-password-toggle:hover{color:#334155;background:#f1f5f9}.provision-actions{align-items:center;gap:10px;margin-top:18px;display:flex}.provision-note{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:flex-start;gap:8px;margin-top:18px;padding:10px 12px;font-size:12.5px;line-height:1.5;display:flex}.provision-note code{color:#0f172a;background:#e2e8f0;border-radius:4px;padding:1px 5px;font-size:11.5px}.provision-qr-wrap{justify-content:center;padding:12px 0;display:flex}.provision-qr-border{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.provision-raw-string{color:#475569;word-break:break-all;white-space:pre-wrap;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;margin-top:12px;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px}.provision-qr-placeholder{color:#94a3b8;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 10px;display:flex}@keyframes deviceDrawerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes deviceDrawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.device-drawer-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1050;background:#0f172a73;justify-content:flex-end;animation:.2s ease-out deviceDrawerFadeIn;display:flex;position:fixed;inset:0}.device-drawer-panel{background:var(--surface,#fff);flex-direction:column;width:min(100%,440px);height:100%;animation:.25s cubic-bezier(.16,1,.3,1) deviceDrawerSlideIn;display:flex;overflow:hidden;box-shadow:-8px 0 24px #00000026}.device-drawer-header{border-bottom:1px solid var(--border,#e2e8f0);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;display:flex}.device-drawer-icon{width:40px;height:40px;color:var(--accent,#f97316);background:#f973161f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.device-drawer-title{color:var(--text,#0f172a);text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:17px;font-weight:700;overflow:hidden}.device-drawer-subtitle{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.device-drawer-copy{background:var(--bg,#f8fafc);cursor:pointer;color:var(--muted,#64748b);border:none;border-radius:6px;align-items:center;gap:6px;min-width:0;max-width:100%;padding:4px 8px;font-size:11px;display:inline-flex}.device-drawer-copy code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.device-drawer-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px 20px;display:flex;overflow-y:auto}.device-drawer-section{border:1px solid var(--border,#e2e8f0);background:var(--bg,#f8fafc);border-radius:10px;padding:12px 14px}.device-drawer-section.device-drawer-warn{background:#f59e0b14;border-color:#b4530959}.device-drawer-section-title{text-transform:uppercase;letter-spacing:.4px;color:var(--muted,#64748b);align-items:center;gap:6px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.device-drawer-muted{color:var(--text,#0f172a);margin:0 0 10px;font-size:13px;line-height:1.4}.device-drawer-specs{flex-direction:column;gap:10px;margin:0;display:flex}.device-drawer-spec-row{grid-template-columns:minmax(100px,38%) minmax(0,1fr);align-items:start;gap:10px;display:grid}.device-drawer-spec-row dt{color:var(--muted,#64748b);margin:0;font-size:12px;font-weight:600}.device-drawer-spec-row dd{color:var(--text,#0f172a);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600}.device-drawer-spec-row dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:500}.device-drawer-footer{border-top:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:14px 20px;display:flex}.device-drawer-footer .btn-secondary,.device-drawer-footer .btn-primary{align-items:center;gap:6px;font-size:13px;display:inline-flex}.integrations-page{color:var(--text,#0f172a);box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:1440px;margin:0 auto;padding:0 32px 48px;font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.integrations-header-section{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.floor-select-dropdown{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);color:var(--text,#334155);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:flex;box-shadow:0 1px 2px #0000000d}.floor-select-dropdown select{color:inherit;cursor:pointer;background:0 0;border:none;outline:none;font-size:13px;font-weight:500}.integrations-summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.icon-gray{color:#64748b;background-color:#f8fafc}.summary-card-label{color:var(--text,#334155);margin-top:2px;font-size:13px;font-weight:600}.summary-card-sub{color:var(--muted,#64748b);font-size:11px}.integrations-controls-toolbar{background-color:var(--surface-hover,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:9999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:8px 12px;display:flex;box-shadow:0 1px 3px #0000000a}body.dark .integrations-controls-toolbar{background:var(--surface,#1e2024);border-color:#ffffff14;box-shadow:0 2px 8px #00000040}.controls-right{align-items:center;gap:10px;display:flex}.integrations-main-card{background-color:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;margin-bottom:36px;overflow:hidden}body.dark .integrations-main-card{background-color:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}.integrations-card-header{border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.integrations-card-title{color:var(--text,#0f172a);margin:0 0 4px;font-size:18px;font-weight:700}.integrations-card-subtitle{color:var(--muted,#64748b);margin:0;font-size:13px}.integrations-grid-list{divide-y:1px solid var(--border,#f1f5f9);flex-direction:column;display:flex}.integration-row-item{border-bottom:1px solid var(--border,#f1f5f9);justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;transition:background-color .15s;display:flex;position:relative}.integration-row-item:last-child{border-bottom:none}.integration-row-item:hover{background-color:var(--bg,#f8fafc)}.integration-row-item.disabled-integration{opacity:.75;background-color:var(--bg,#fafafa)}.integration-primary-info{flex:2;align-items:flex-start;gap:16px;min-width:280px;display:flex}.integration-icon-box{color:#2563eb;background-color:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.integration-name-wrap{flex-direction:column;display:flex}.integration-item-title{color:var(--text,#0f172a);align-items:center;gap:8px;margin:0 0 3px;font-size:15px;font-weight:700;display:flex}.integration-desc{color:var(--muted,#64748b);margin:0 0 6px;font-size:13px;line-height:1.4}.integration-tags-row{align-items:center;gap:8px;font-size:11px;display:flex}.badge-env-prod{color:#15803d;background-color:#f0fdf4;border-color:#bbf7d0}.badge-env-sandbox{color:#b45309;background-color:#fffbeb;border-color:#fde68a}.integration-direction-col{flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:140px;display:flex}.flow-direction-pill{letter-spacing:.5px;text-transform:uppercase;border-radius:9999px;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.flow-two-way{color:#1d4ed8;background-color:#eff6ff;border:1px solid #bfdbfe}.flow-outbound{color:#7e22ce;background-color:#faf5ff;border:1px solid #e9d5ff}.flow-inbound{color:#15803d;background-color:#f0fdf4;border:1px solid #bbf7d0}.flow-subtext{color:var(--muted,#64748b);margin-top:4px;font-size:11px;font-weight:500}.integration-status-col{flex-direction:column;flex:1;align-items:flex-start;min-width:130px;display:flex}.status-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:9999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.status-badge-dot{background-color:currentColor;border-radius:50%;width:6px;height:6px}.status-connected{color:#15803d;background-color:#dcfce7}.status-needs-attention{color:#b45309;background-color:#fef3c7}.status-disconnected{color:#b91c1c;background-color:#fee2e2}.status-disabled{color:#64748b;background-color:#f1f5f9}.status-testing{color:#0369a1;background-color:#e0f2fe}.status-error{color:#dc2626;background-color:#fee2e2}.status-time{color:var(--muted,#64748b);margin-top:4px;font-size:11px}.integration-actions-col{align-items:center;gap:10px;display:flex;position:relative}.btn-test-action{color:#1d4ed8;cursor:pointer;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;align-items:center;gap:5px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.btn-test-action:hover:not(:disabled){background-color:#dbeafe}.btn-test-action:disabled{opacity:.6;cursor:not-allowed}.menu-trigger-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:flex}.menu-trigger-btn:hover{background-color:var(--bg,#f1f5f9);color:var(--text,#0f172a)}.integration-dropdown-menu{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);z-index:50;border-radius:10px;min-width:170px;padding:6px;position:absolute;top:42px;right:0;overflow:hidden;box-shadow:0 10px 25px #0000001a}.integration-dropdown-menu button{text-align:left;cursor:pointer;width:100%;color:var(--text,#334155);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.integration-dropdown-menu button:hover{background-color:var(--bg,#f8fafc);color:#2563eb}.integration-dropdown-menu button.menu-danger{color:#dc2626}.integration-dropdown-menu button.menu-danger:hover{background-color:#fef2f2}.integration-logs-section{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;overflow:hidden;box-shadow:0 2px 6px #0000000a}.logs-header{border-bottom:1px solid var(--border,#e2e8f0);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.logs-title-area{flex-direction:column;display:flex}.logs-title{color:var(--text,#0f172a);margin:0 0 4px;font-size:18px;font-weight:700}.logs-subtitle{color:var(--muted,#64748b);margin:0;font-size:13px}.logs-filters{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.logs-search-wrapper{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);border-radius:6px;align-items:center;gap:8px;width:200px;padding:6px 12px;display:flex}.logs-search-wrapper input{width:100%;color:var(--text,#0f172a);background:0 0;border:none;outline:none;font-size:12px}.logs-table-container{overflow-x:auto}.logs-table{border-collapse:collapse;text-align:left;width:100%}.logs-table th{color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.6px;background-color:var(--bg,#f8fafc);border-bottom:1px solid var(--border,#e2e8f0);white-space:nowrap;padding:12px 20px;font-size:11px;font-weight:700}.logs-table td{color:var(--text,#334155);border-bottom:1px solid var(--border,#f1f5f9);vertical-align:middle;padding:14px 20px;font-size:13px}.logs-table tr:hover td{background-color:var(--bg,#f8fafc)}.logs-table tr:last-child td{border-bottom:none}.log-status-badge{text-transform:uppercase;letter-spacing:.4px;border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.log-status-success{color:#15803d;background-color:#dcfce7}.log-status-warning{color:#b45309;background-color:#fef3c7}.log-status-failed{color:#b91c1c;background-color:#fee2e2}.log-status-retrying{color:#0369a1;background-color:#e0f2fe}.log-btn-retry{color:#c2410c;cursor:pointer;background-color:#fff7ed;border:1px solid #fed7aa;border-radius:9999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.log-btn-retry:hover{background-color:#ffedd5}.form-section-block{border-bottom:1px solid var(--border,#f1f5f9);flex-direction:column;gap:14px;padding-bottom:20px;display:flex}.form-section-block:last-child{border-bottom:none;padding-bottom:0}.form-section-header{text-transform:uppercase;color:#2563eb;letter-spacing:.6px;margin:0 0 2px;font-size:12px;font-weight:700}.form-field-group label .required-star{color:#dc2626;margin-left:2px}.field-error-text{color:#dc2626;margin:4px 0 0;font-size:12px}.secret-input-wrapper{align-items:center;display:flex;position:relative}.secret-input-wrapper input{padding-right:40px}.btn-toggle-secret{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;position:absolute;right:10px}.direction-select-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.direction-card-option{border:1px solid var(--border,#cbd5e1);cursor:pointer;text-align:center;background-color:var(--bg,#f8fafc);border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:14px;transition:all .2s;display:flex}.direction-card-option.selected{background-color:#eff6ff;border-color:#2563eb}.direction-card-title{color:var(--text,#0f172a);font-size:13px;font-weight:700}.direction-card-desc{color:var(--muted,#64748b);font-size:11px;line-height:1.3}.events-checkbox-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.event-checkbox-label{color:var(--text,#334155);cursor:pointer;border:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.modal-bottom-actions{border-top:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.actions-right{align-items:center;gap:12px;display:flex}.btn-modal-danger{color:#fff;cursor:pointer;background-color:#dc2626;border:none;border-radius:9999px;padding:9px 20px;font-size:13px;font-weight:600}.btn-modal-danger:hover{background-color:#b91c1c}.detail-tab-nav{border-bottom:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);border-radius:12px;align-items:center;gap:8px;margin-bottom:16px;padding:0 24px;display:flex}.detail-tab-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 14px;font-size:13px;font-weight:600;transition:all .2s}.detail-tab-btn.active{color:var(--accent,#f97316);border-bottom-color:var(--accent,#f97316)}.details-spec-list{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:12px;display:grid}.workflow-usage-card{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:12px 16px;display:flex}.wf-tag-action{color:#1d4ed8;background-color:#eff6ff;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.wf-tag-trigger{color:#7e22ce;background-color:#faf5ff;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.mapping-table{border-collapse:collapse;width:100%;font-size:12px}.mapping-table th{background-color:var(--bg,#f1f5f9);color:var(--muted,#64748b);text-align:left;text-transform:uppercase;padding:8px 12px;font-size:11px;font-weight:700}.mapping-table td{border-bottom:1px solid var(--border,#e2e8f0);padding:10px 12px}.spin-indicator{animation:1s linear infinite spin}body.dark .status-connected{color:#4ade80;background-color:#22c55e26}body.dark .status-needs-attention{color:#fbbf24;background-color:#f59e0b26}body.dark .status-disconnected{color:#f87171;background-color:#ef444426}body.dark .status-disabled{color:#94a3b8;background-color:#94a3b826}body.dark .status-testing{color:#38bdf8;background-color:#38bdf826}body.dark .status-error{color:#f87171;background-color:#ef444426}body.dark .integration-icon-box{color:#60a5fa;background-color:#1e293b;border-color:#334155}body.dark .flow-two-way{color:#93c5fd;background-color:#2563eb33;border-color:#1d4ed8}body.dark .flow-outbound{color:#d8b4fe;background-color:#7e22ce33;border-color:#7e22ce}body.dark .flow-inbound{color:#86efac;background-color:#16a34a33;border-color:#15803d}body.dark .btn-test-action{color:#93c5fd;background-color:#1e293b;border-color:#3b82f6}body.dark .btn-test-action:hover:not(:disabled){color:#fff;background-color:#2563eb}body.dark .integration-dropdown-menu{background-color:var(--surface,#303238);border-color:var(--border,#41434a)}body.dark .integration-dropdown-menu button{color:var(--text,#f2f2f2)}body.dark .integration-dropdown-menu button:hover{background-color:var(--surface-hover,#383a40);color:#60a5fa}body.dark .integration-dropdown-menu button.menu-danger{color:#f87171}body.dark .integration-dropdown-menu button.menu-danger:hover{background-color:#ef444433}body.dark .icon-gray{color:#94a3b8;background-color:#64748b33}body.dark .detail-tab-nav{background-color:var(--surface,#303238);border-color:var(--border,#41434a)}body.dark .direction-card-option{background-color:var(--bg,#292b2f);border-color:var(--border,#41434a)}body.dark .direction-card-option.selected{background-color:#2563eb33;border-color:#3b82f6}body.dark .event-checkbox-label{background-color:var(--bg,#292b2f);border-color:var(--border,#41434a);color:var(--text,#f2f2f2)}@media (width<=1024px){.integrations-summary-grid{grid-template-columns:repeat(2,1fr)}.direction-select-grid{grid-template-columns:1fr}}@media (width<=768px){.integrations-page{padding:0 16px 32px}.walkthrough-banner{flex-direction:column;align-items:flex-start;gap:10px}.banner-right{justify-content:space-between;width:100%}.integrations-header-section{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{justify-content:space-between;width:100%}.integrations-controls-toolbar{flex-direction:column;align-items:stretch}.controls-left,.controls-right,.search-field-wrapper{width:100%}.integration-row-item{flex-direction:column;align-items:flex-start;gap:14px}.integration-actions-col{justify-content:space-between;width:100%}.form-grid-2col,.details-spec-list{grid-template-columns:1fr}.spec-item.full-width{grid-column:span 1}}.reports-page{color:var(--text,#0f172a);box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:1440px;margin:0 auto;padding:0 32px 48px;font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.reports-header-section{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.btn-primary-action{background-color:var(--accent,#f97316);color:#fff;cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:8px;padding:9px 20px;font-size:13px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 6px #f9731640}.btn-primary-action:hover{background-color:var(--accent-hover,#ea580c);transform:translateY(-1px);box-shadow:0 4px 12px #f9731659}.reports-summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.icon-amber{color:#d97706;background-color:#f9731626}.summary-card-sub{color:var(--muted,#64748b);align-items:center;gap:4px;margin-top:2px;font-size:12px;display:flex}.trend-badge-up{color:#16a34a;font-weight:600}.reports-category-nav{border-bottom:1px solid var(--border,#e2e8f0);align-items:center;gap:8px;margin-bottom:24px;display:flex;overflow-x:auto}.category-tab-button{color:var(--muted,#64748b);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.category-tab-button:hover{color:var(--text,#0f172a)}.category-tab-button.active{color:var(--accent,#f97316);border-bottom-color:var(--accent,#f97316)}.reports-toolbar{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:12px 18px;display:flex;box-shadow:0 1px 2px #00000008}.toolbar-left{flex-wrap:wrap;flex:1;align-items:center;gap:12px;display:flex}.search-field-wrapper{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);border-radius:8px;align-items:center;gap:10px;width:260px;padding:8px 14px;display:flex}.search-field-wrapper:focus-within{background-color:var(--surface,#fff);border-color:#2563eb}.filter-select{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);color:var(--text,#334155);cursor:pointer;border-radius:8px;outline:none;padding:8px 12px;font-size:13px;font-weight:500}.toolbar-right{align-items:center;gap:10px;display:flex}.reports-analytics-row{grid-template-columns:2fr 1fr;gap:20px;margin-bottom:24px;display:grid}.reports-analytics-row.single-col{grid-template-columns:1fr}.analytics-panel{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:14px;padding:20px 24px;box-shadow:0 1px 3px #0000000a}.panel-title-row{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.panel-heading-title{color:var(--text,#0f172a);margin:0;font-size:15px;font-weight:700}.panel-heading-sub{color:var(--muted,#64748b);margin:2px 0 0;font-size:12px}.bar-chart-visual{border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:flex-end;gap:16px;height:160px;margin-bottom:10px;padding-top:20px;display:flex}.bar-col-item{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.bar-pill{cursor:pointer;background-color:#2563eb;border-radius:6px 6px 0 0;width:100%;max-width:38px;transition:height .4s,background-color .2s;position:relative}.bar-pill:hover{background-color:#1d4ed8}.bar-pill.stacked-error{background-color:#ef4444}.bar-value-text{color:var(--muted,#64748b);font-size:11px;font-weight:700}.bar-label-text{color:var(--text,#334155);white-space:nowrap;font-size:12px;font-weight:500}.stage-performance-list{flex-direction:column;gap:12px;display:flex}.stage-perf-row{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.stage-perf-name{color:var(--text,#0f172a);font-size:13px;font-weight:600}.stage-perf-val{color:var(--muted,#64748b);align-items:center;gap:12px;font-size:12px;display:flex}.reports-table-card{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;margin-bottom:24px;overflow:hidden;box-shadow:0 2px 6px #0000000a}.report-table-wrap{overflow-x:auto}.report-table{border-collapse:collapse;text-align:left;width:100%}.report-table th{color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.6px;background-color:var(--bg,#f8fafc);border-bottom:1px solid var(--border,#e2e8f0);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;padding:12px 20px;font-size:11px;font-weight:700}.report-table th:hover{color:var(--text,#0f172a)}.report-table td{color:var(--text,#334155);border-bottom:1px solid var(--border,#f1f5f9);vertical-align:middle;padding:14px 20px;font-size:13px}.report-table tr{cursor:pointer;transition:background-color .15s}.report-table tr:hover td{background-color:var(--bg,#f8fafc)}.report-table tr:last-child td{border-bottom:none}.badge-status{letter-spacing:.4px;text-transform:uppercase;border-radius:9999px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.badge-status-active,.badge-status-success,.badge-status-normal{color:#15803d;background-color:#dcfce7}.badge-status-exception,.badge-status-failed,.badge-status-error{color:#b91c1c;background-color:#fee2e2}.badge-status-review,.badge-status-warning{color:#b45309;background-color:#fef3c7}.modal-dialog-box.wide-modal{max-width:740px}.form-field-group{flex-direction:column;gap:6px;display:flex}.form-field-group label{color:var(--text,#334155);font-size:12px;font-weight:600}.form-field-input{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#cbd5e1);width:100%;color:var(--text,#0f172a);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:13px}.form-field-input:focus{background-color:var(--surface,#fff);border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.btn-modal-cancel{background-color:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);color:var(--text,#334155);cursor:pointer;border-radius:9999px;padding:9px 18px;font-size:13px;font-weight:600}.btn-modal-cancel:hover{background-color:var(--bg,#f1f5f9)}.saved-report-item{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:14px 18px;display:flex}.toast-bar.toast-error{background-color:#b91c1c}.toast-bar.toast-warning{background-color:#b45309}body.dark .badge-status-active,body.dark .badge-status-success,body.dark .badge-status-normal{color:#4ade80;background-color:#22c55e26}body.dark .badge-status-exception,body.dark .badge-status-failed,body.dark .badge-status-error{color:#f87171;background-color:#ef444426}body.dark .badge-status-review,body.dark .badge-status-warning{color:#fbbf24;background-color:#f59e0b26}body.dark .btn-modal-cancel{background-color:var(--surface,#303238);border-color:var(--border,#41434a);color:var(--text,#f2f2f2)}body.dark .btn-modal-cancel:hover{background-color:var(--surface-hover,#383a40)}body.dark .icon-amber{color:#fbbf24;background-color:#d9770633}body.dark .bar-pill{background-color:#3b82f6}body.dark .bar-pill:hover{background-color:#60a5fa}@media (width<=1024px){.reports-summary-grid{grid-template-columns:repeat(2,1fr)}.reports-analytics-row{grid-template-columns:1fr}}@media (width<=768px){.reports-page{padding:0 16px 32px}.walkthrough-banner{flex-direction:column;align-items:flex-start;gap:10px}.banner-right{justify-content:space-between;width:100%}.reports-header-section{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{justify-content:space-between;width:100%}.reports-toolbar{flex-direction:column;align-items:stretch}.toolbar-left,.toolbar-right,.search-field-wrapper{width:100%}.reports-summary-grid,.form-grid-2col,.details-spec-list{grid-template-columns:1fr}.spec-item.full-width{grid-column:span 1}}.activity-history-page{color:var(--text,#0f172a);box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:1440px;margin:0 auto;padding:0 32px 48px;font-family:Google Sans,Product Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.walkthrough-banner{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;justify-content:space-between;align-items:center;margin-top:16px;margin-bottom:24px;padding:12px 20px;display:flex}.banner-left{align-items:center;gap:12px;display:flex}.banner-tag{color:#0284c7;letter-spacing:.6px;text-transform:uppercase;background:#e0f2fe;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:700;display:flex}.banner-text{color:#0369a1;font-size:13px;font-weight:500}.banner-right{align-items:center;gap:16px;display:flex}.admin-dropdown{color:#0f172a;cursor:pointer;align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.tour-btn{color:#0284c7;cursor:pointer;background-color:#fff;border:1px solid #7dd3fc;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.tour-btn:hover{background-color:#e0f2fe}.activity-header-section{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.header-titles{flex-direction:column;display:flex}.workspace-eyebrow{letter-spacing:.8px;color:var(--muted,#64748b);text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700}.main-title{color:var(--text,#0f172a);letter-spacing:-.02em;margin:0 0 6px;font-size:28px;font-weight:700}.subtitle{color:var(--muted,#64748b);margin:0;font-size:14px;line-height:1.5}.header-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;display:flex}.filter-pill-dropdown{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);color:var(--text,#334155);border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:flex;box-shadow:0 1px 2px #0000000d}.filter-pill-dropdown select{color:inherit;cursor:pointer;background:0 0;border:none;outline:none;font-size:13px;font-weight:500}.btn-secondary-action{background-color:var(--surface,#fff);color:var(--text,#334155);border:1px solid var(--border,#cbd5e1);cursor:pointer;border-radius:9999px;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 1px 2px #0000000d}.btn-secondary-action:hover{background-color:var(--bg,#f1f5f9)}.activity-summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.summary-card{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;align-items:center;gap:16px;padding:18px 20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 6px #0000000d}.summary-card:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000014}.summary-icon-box{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.icon-blue{color:#2563eb;background-color:#3b82f626}.icon-green{color:#16a34a;background-color:#10b98126}.icon-red{color:#dc2626;background-color:#ef444426}.icon-purple{color:#7e22ce;background-color:#a855f726}.summary-card-data{flex-direction:column;display:flex}.summary-card-value{color:var(--text,#0f172a);font-size:24px;font-weight:800;line-height:1.1}.summary-card-label{text-transform:uppercase;letter-spacing:.8px;color:var(--muted,#64748b);margin-top:3px;font-size:11px;font-weight:700}.summary-card-sub{color:var(--muted,#64748b);margin-top:2px;font-size:12px}.activity-nav-row{border-bottom:1px solid var(--border,#e2e8f0);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.activity-category-tabs{align-items:center;gap:6px;display:flex;overflow-x:auto}.cat-tab-btn{color:var(--muted,#64748b);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.cat-tab-btn:hover{color:var(--text,#0f172a)}.cat-tab-btn.active{color:var(--accent,#f97316);border-bottom-color:var(--accent,#f97316)}.view-toggle-wrap{background-color:var(--bg,#f1f5f9);border:1px solid var(--border,#e2e8f0);border-radius:8px;align-items:center;padding:3px;display:flex}.view-toggle-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.view-toggle-btn.active{background-color:var(--surface,#fff);color:var(--text,#0f172a);box-shadow:0 1px 3px #0000001a}.activity-controls-toolbar{background-color:var(--surface-hover,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:9999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:8px 12px;display:flex;box-shadow:0 1px 3px #0000000a}body.dark .activity-controls-toolbar{background:var(--surface,#1e2024);border-color:#ffffff14;box-shadow:0 2px 8px #00000040}.controls-left{flex-wrap:wrap;flex:1;align-items:center;gap:10px;display:flex}.search-field-wrapper{background-color:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);border-radius:9999px;flex:1;align-items:center;gap:8px;min-width:240px;max-width:340px;height:36px;padding:0 14px;transition:all .2s;display:flex}body.dark .search-field-wrapper{background:#141518;border-color:#ffffff1a}.search-field-wrapper:focus-within{border-color:var(--accent,#f97316);box-shadow:0 0 0 3px #f973161f}.search-field-wrapper input{width:100%;color:var(--text,#0f172a);background:0 0;border:none;outline:none;font-size:13px}body.dark .search-field-wrapper input{color:#f1f5f9}.reset-filters-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:13px;font-weight:600}.reset-filters-btn:hover{text-decoration:underline}.timeline-feed-container{flex-direction:column;margin-bottom:36px;display:flex;position:relative}.timeline-feed-container:before{content:"";background-color:var(--border,#e2e8f0);z-index:1;width:2px;position:absolute;top:24px;bottom:24px;left:27px}.timeline-item-row{z-index:2;cursor:pointer;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex;position:relative}button.timeline-item-row{text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;padding:0}.timeline-icon-node{background-color:var(--surface,#fff);color:#2563eb;width:36px;height:36px;box-shadow:0 0 0 4px var(--bg,#f8fafc);border:2px solid #2563eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s;display:flex}.timeline-item-row:hover .timeline-icon-node{transform:scale(1.1)}.timeline-node-success{color:#16a34a;border-color:#16a34a}.timeline-node-failed{color:#dc2626;border-color:#dc2626}.timeline-node-reversed{color:#7e22ce;border-color:#7e22ce}.timeline-node-warning{color:#d97706;border-color:#d97706}.timeline-card{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:14px;flex-direction:column;flex:1;gap:8px;padding:16px 20px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000000a}.timeline-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f}.timeline-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.timeline-event-name{color:var(--text,#0f172a);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.timeline-desc{color:var(--text,#334155);margin:0;font-size:13px;line-height:1.4}.timeline-meta-row{color:var(--muted,#64748b);flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;font-size:12px;display:flex}.meta-item{align-items:center;gap:4px;display:flex}.badge-compensating{color:#7e22ce;text-transform:uppercase;background-color:#faf5ff;border:1px solid #e9d5ff;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.badge-original{color:#475569;background-color:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.activity-table-card{background-color:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;margin-bottom:36px;overflow:hidden}body.dark .activity-table-card{background-color:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}.table-card-top{border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.table-card-title{color:var(--text,#0f172a);margin:0 0 2px;font-size:16px;font-weight:700}.table-card-sub{color:var(--muted,#64748b);margin:0;font-size:12px}.activity-table-wrap{overflow-x:auto}.activity-table{border-collapse:collapse;text-align:left;width:100%}.activity-table th{color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.6px;background-color:var(--bg,#f8fafc);border-bottom:1px solid var(--border,#e2e8f0);white-space:nowrap;padding:12px 20px;font-size:11px;font-weight:700}.activity-table td{color:var(--text,#334155);border-bottom:1px solid var(--border,#f1f5f9);vertical-align:middle;padding:14px 20px;font-size:13px}.activity-table tr{cursor:pointer;transition:background-color .15s}.activity-table tbody tr{cursor:pointer}.activity-table tr:hover td{background-color:var(--bg,#f8fafc)}.activity-table tr:last-child td{border-bottom:none}.status-pill{letter-spacing:.4px;text-transform:uppercase;border-radius:9999px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.status-failed{color:#b91c1c;background-color:#fee2e2}.status-pending{color:#0369a1;background-color:#e0f2fe}.status-reversed{color:#7e22ce;background-color:#faf5ff}.status-pill-dot{background-color:currentColor;border-radius:50%;width:6px;height:6px}.code-pill{background-color:var(--bg,#f1f5f9);border:1px solid var(--border,#e2e8f0);color:var(--text,#0f172a);border-radius:4px;padding:3px 8px;font-family:monospace;font-size:12px;font-weight:600}.badge-tag{background-color:var(--bg,#f1f5f9);color:var(--text,#475569);border:1px solid var(--border,#e2e8f0);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-dialog-box{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;flex-direction:column;width:100%;max-width:660px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #00000014}.modal-dialog-box.small-modal{max-width:440px}.modal-top-bar{border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-top-title{color:var(--text,#0f172a);margin:0;font-size:18px;font-weight:700}.modal-close-icon-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;padding:4px}.modal-close-icon-btn:hover{color:var(--text,#0f172a)}.modal-scroll-body{flex-direction:column;gap:16px;padding:24px;display:flex;overflow-y:auto}.details-spec-list{grid-template-columns:1fr 1fr;gap:14px;display:grid}.spec-item{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.spec-item.full-width{grid-column:span 2}.spec-title{text-transform:uppercase;color:var(--muted,#64748b);letter-spacing:.5px;font-size:11px;font-weight:700}.spec-val{color:var(--text,#0f172a);font-size:13px;font-weight:600}.lineage-step-box{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 14px;display:flex}.modal-bottom-actions{border-top:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.btn-modal-submit{background-color:var(--accent,#f97316);color:#fff;cursor:pointer;border:none;border-radius:9999px;padding:9px 20px;font-size:13px;font-weight:600;transition:all .2s;box-shadow:0 2px 6px #f9731640}.btn-modal-submit:hover{background-color:var(--accent-hover,#ea580c)}.toast-bar{color:#fff;z-index:2000;background-color:#0f172a;border-radius:8px;align-items:center;gap:10px;padding:12px 20px;font-size:13px;font-weight:500;animation:.25s ease-out slideUp;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 20px #0003}.toast-bar.toast-success{background-color:#15803d}.toast-bar.toast-info{background-color:#1d4ed8}.empty-state-box{text-align:center;background-color:var(--surface,#fff);border:1px dashed var(--border,#cbd5e1);color:var(--muted,#64748b);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;margin:20px 0;padding:60px 20px;display:flex}.empty-state-title{color:var(--text,#0f172a);margin:0;font-size:16px;font-weight:700}.empty-state-desc{max-width:380px;margin:0;font-size:13px}body.dark .walkthrough-banner{background-color:#082f49;border-color:#0369a1}body.dark .banner-tag{color:#38bdf8;background-color:#0c4a6e}body.dark .banner-text{color:#e0f2fe}body.dark .admin-dropdown{color:#f8fafc}body.dark .tour-btn{color:#38bdf8;background-color:#0f172a;border-color:#0284c7}body.dark .tour-btn:hover{background-color:#0c4a6e}body.dark .timeline-feed-container:before{background-color:var(--border,#41434a)}body.dark .timeline-icon-node{background-color:var(--surface,#303238);box-shadow:0 0 0 4px var(--bg,#292b2f)}body.dark .status-failed{color:#f87171;background-color:#ef444426}body.dark .status-pending{color:#38bdf8;background-color:#38bdf826}body.dark .status-reversed{color:#c084fc;background-color:#a855f726}body.dark .badge-compensating{color:#c084fc;background-color:#a855f726;border-color:#7e22ce}body.dark .view-toggle-wrap{background-color:var(--surface,#303238);border-color:var(--border,#41434a)}body.dark .view-toggle-btn.active{background-color:var(--bg,#292b2f);color:var(--text,#f2f2f2)}body.dark .modal-dialog-box{background-color:var(--surface,#303238);border-color:var(--border,#41434a)}body.dark .modal-bottom-actions{background-color:var(--bg,#292b2f);border-color:var(--border,#41434a)}body.dark .icon-blue{color:#60a5fa;background-color:#2563eb33}body.dark .icon-green{color:#4ade80;background-color:#16a34a33}body.dark .icon-red{color:#f87171;background-color:#dc262633}body.dark .icon-purple{color:#d8b4fe;background-color:#7e22ce33}@media (width<=1024px){.activity-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.activity-history-page{padding:0 16px 32px}.walkthrough-banner{flex-direction:column;align-items:flex-start;gap:10px}.banner-right{justify-content:space-between;width:100%}.activity-header-section{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{justify-content:space-between;width:100%}.activity-nav-row,.activity-controls-toolbar{flex-direction:column;align-items:stretch}.controls-left,.search-field-wrapper{width:100%}.details-spec-list{grid-template-columns:1fr}.spec-item.full-width{grid-column:span 1}}.floor-management-page{--text-muted:var(--muted,#64748b);--text-subtle:#94a3b8;--bg-alt:#f8fafc;max-width:1440px;min-height:calc(100vh - 64px);margin:0 auto;padding:24px 32px;animation:.25s ease-out fadeIn}body.dark .floor-management-page,body.dark .drawer-panel,body.dark .modal-dialog{--text-muted:var(--muted,#9b9da5);--text-subtle:#787a85;--bg-alt:#25272c}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.floor-header-section{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.floor-heading-content{flex:1;min-width:280px}.floor-heading-content .eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent,#f97316);margin-bottom:6px;font-size:11px;font-weight:700;display:inline-block}.floor-heading-content h1{color:var(--text,#0f172a);letter-spacing:-.02em;margin:0 0 6px;font-size:26px;font-weight:700}.floor-heading-content p{color:var(--text-muted,#64748b);max-width:680px;margin:0;font-size:13.5px;line-height:1.5}.floor-heading-actions{align-items:center;gap:12px;display:flex}.floor-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.floor-stat-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;align-items:center;gap:16px;padding:18px 20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 6px #0000000d}.floor-stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 14px #00000014}.stat-icon-wrap{width:40px;height:40px;color:var(--accent);background:#f973161f;border:1px solid #f9731633;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-content{flex-direction:column;display:flex}.stat-value{color:var(--text,#0f172a);font-size:24px;font-weight:800;line-height:1.2}.stat-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted,#64748b);margin-top:2px;font-size:11px;font-weight:700}.stat-subtext{color:var(--text-subtle,#94a3b8);margin-top:3px;font-size:12px}.floor-toolbar-panel{background:var(--surface-hover,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:9999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:8px 12px;display:flex;box-shadow:0 1px 3px #0000000a}.floor-toolbar-left{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:320px;display:flex}.floor-search-box{flex:1;min-width:220px;max-width:320px;position:relative}.floor-search-box svg{color:var(--text-muted,#94a3b8);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.floor-search-box input{background:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);width:100%;height:36px;color:var(--text,#0f172a);border-radius:9999px;outline:none;padding:0 14px 0 38px;font-size:13px;transition:all .15s}body.dark .floor-search-box input{color:#f1f5f9;background:#141518;border-color:#ffffff1a}.floor-search-box input:focus{border-color:var(--accent,#f97316);box-shadow:0 0 0 3px #f973161f}.floor-toolbar-right{align-items:center;gap:10px;display:flex}.view-mode-toggle{background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;padding:2px;display:flex}.view-toggle-btn{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px 10px;transition:all .15s;display:flex}.view-toggle-btn.active{background:var(--surface,#fff);color:var(--text,#0f172a);box-shadow:0 1px 2px #00000014}.floor-table-wrapper{background:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);overflow:hidden}.floor-table-wrapper .bvs-table{border-collapse:collapse;width:100%;min-width:1140px}.floor-table-wrapper .bvs-table th{text-transform:uppercase;letter-spacing:.05em;color:#64748b;white-space:nowrap;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:12px 14px;font-size:11px;font-weight:700}.floor-table-wrapper .bvs-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:14px;font-size:13px}.floor-table-wrapper .bvs-table tr:hover td{background-color:#fcfdfe}.floor-name-cell{flex-direction:column;gap:2px;min-width:0;max-width:240px;display:flex}.floor-name-heading{color:var(--text,#0f172a);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.floor-badge-code{background:var(--bg-alt,#f1f5f9);color:var(--text-muted,#475569);border:1px solid var(--border,#e2e8f0);white-space:nowrap;letter-spacing:.02em;border-radius:5px;flex-shrink:0;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;font-weight:600;display:inline-block}.floor-desc-sub{color:var(--text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;max-width:230px;font-size:12px;overflow:hidden}.floor-purpose-pill{background:var(--bg-alt,#f8fafc);color:var(--text,#334155);border:1px solid var(--border,#e2e8f0);white-space:nowrap;border-radius:6px;align-items:center;padding:3px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.cell-building{min-width:130px;color:var(--text-muted,#64748b);font-size:12.5px;line-height:1.35}.manager-cell-content{align-items:flex-start;gap:10px;min-width:155px;display:flex}.manager-avatar-badge{color:#c2410c;background:#ffedd5;border:1px solid #fed7aa;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:1px;font-size:11px;font-weight:700;display:inline-flex}.manager-info-col{flex-direction:column;gap:1px;display:flex}.manager-name{color:var(--text,#0f172a);white-space:nowrap;font-size:13px;font-weight:600}.manager-role-caption{color:var(--text-muted,#64748b);white-space:nowrap;font-size:11px}.multi-floor-tag{color:#0369a1;white-space:nowrap;background:#e0f2fe;border-radius:4px;width:fit-content;margin-top:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.cell-personnel{white-space:nowrap;align-items:baseline;gap:4px;min-width:95px;display:flex}.personnel-num{color:var(--text,#0f172a);font-size:14px;font-weight:700}.personnel-label{color:var(--text-muted,#64748b);font-size:12px}.cell-inventory{white-space:nowrap;flex-direction:column;min-width:135px;display:flex}.inventory-units-line{color:var(--text,#0f172a);align-items:baseline;gap:4px;font-size:13.5px;display:flex}.inventory-unit-label{color:var(--text-muted,#64748b);font-size:12px;font-weight:400}.inventory-subtext{color:var(--text-subtle,#94a3b8);margin-top:1px;font-size:11px}.cell-devices{color:var(--text,#334155);white-space:nowrap;align-items:center;gap:6px;min-width:105px;font-size:12.5px;display:flex}.table-actions-group{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.btn-action-edit{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.btn-action-edit:hover{border-color:var(--accent,#f97316);color:var(--accent,#f97316);background:#f8fafc}.btn-action-view{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.btn-action-view:hover{color:#0f172a;background:#fff;border-color:#94a3b8}.btn-action-delete{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:inline-flex}.btn-action-delete:hover{color:#fff;background:#dc2626;border-color:#dc2626}.admin-badge-strip{color:#92400e;letter-spacing:.05em;text-transform:uppercase;background:#fef3c7;border:1px solid #fde68a;border-radius:5px;align-items:center;gap:6px;padding:3px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.admin-confirm-box{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-top:14px;padding:14px}.admin-confirm-box p{color:#92400e;margin:0 0 10px;font-size:12.5px;line-height:1.45}.floor-grid-container{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.floor-card-item{background:var(--bvs-surface-bg,var(--surface,#fff));border:var(--bvs-surface-border,1px solid var(--border,#e2e8f0));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);flex-direction:column;justify-content:space-between;padding:20px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.floor-card-item:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 8px 16px -4px #00000014}.floor-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.floor-card-header-info{flex:1;min-width:0}.floor-card-header-info h3{color:var(--text,#0f172a);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0 0 4px;font-size:16px;font-weight:700;overflow:hidden}.floor-card-meta{color:var(--text-muted,#64748b);align-items:center;gap:8px;font-size:12px;display:flex}.floor-card-description{color:var(--text-muted,#64748b);min-height:36px;margin-bottom:16px;font-size:12.5px;line-height:1.45}.floor-card-metrics{background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#f1f5f9);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;padding:12px;display:grid}.metric-box{text-align:center;flex-direction:column;align-items:center;display:flex}.metric-box .metric-num{color:var(--text,#0f172a);font-size:15px;font-weight:700}.metric-box .metric-lbl{color:var(--text-muted,#64748b);font-size:11px;font-weight:500}.floor-card-manager-row{border-top:1px solid var(--border,#f1f5f9);justify-content:space-between;align-items:center;margin-bottom:16px;padding-top:12px;display:flex}.floor-card-actions{align-items:center;gap:8px;display:flex}.btn-card-primary{background:var(--surface,#fff);border:1px solid var(--border,#cbd5e1);height:34px;color:var(--text,#0f172a);cursor:pointer;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12.5px;font-weight:600;transition:all .15s;display:flex}.btn-card-primary:hover{background:var(--bg-alt,#f8fafc);border-color:var(--accent,#f97316);color:var(--accent,#f97316)}.drawer-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;background:#0f172a73;justify-content:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--surface,#fff);flex-direction:column;width:100%;max-width:860px;height:100%;animation:.25s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;box-shadow:-8px 0 24px #00000026}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{border-bottom:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);justify-content:space-between;align-items:flex-start;padding:20px 28px;display:flex}.drawer-title-area{flex-direction:column;gap:4px;display:flex}.drawer-title-area .eyebrow-badge{color:var(--accent,#f97316);text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.drawer-title-area h2{color:var(--text,#0f172a);margin:0;font-size:20px;font-weight:700}.drawer-title-area p{color:var(--text-muted,#64748b);margin:0;font-size:13px}.drawer-header-actions{align-items:center;gap:10px;display:flex}.drawer-tabs-bar{border-bottom:1px solid var(--border,#e2e8f0);background:var(--bg-alt,#f8fafc);scrollbar-width:none;padding:0 28px;display:flex;overflow-x:auto}.drawer-tabs-bar::-webkit-scrollbar{display:none}.drawer-tab-btn{color:var(--text-muted,#64748b);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:12px 16px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.drawer-tab-btn:hover{color:var(--text,#0f172a)}.drawer-tab-btn.active{color:var(--accent,#f97316);border-bottom-color:var(--accent,#f97316)}.drawer-body{flex:1;padding:24px 28px;overflow-y:auto}.drawer-footer{border-top:1px solid var(--border,#e2e8f0);background:var(--bg-alt,#f8fafc);justify-content:flex-end;gap:12px;padding:16px 28px;display:flex}.overview-grid-section{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px;display:grid}.overview-card-box{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:18px}.overview-card-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#64748b);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:13px;font-weight:700;display:flex}.spec-list-row{border-bottom:1px solid var(--border,#f1f5f9);justify-content:space-between;padding:8px 0;font-size:13px;display:flex}.spec-list-row:last-child{border-bottom:none}.spec-key{color:var(--text-muted,#64748b)}.spec-val{color:var(--text,#0f172a);font-weight:600}.manager-profile-card{align-items:flex-start;gap:14px;display:flex}.manager-big-avatar{color:#c2410c;background:#ffedd5;border:2px solid #fed7aa;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:flex}.manager-profile-details h4{color:var(--text,#0f172a);margin:0 0 2px;font-size:15px;font-weight:700}.manager-profile-details p{color:var(--text-muted,#64748b);margin:0 0 6px;font-size:12.5px}.secondary-managers-list{border-top:1px dashed var(--border,#e2e8f0);margin-top:14px;padding-top:12px}.secondary-tag-item{background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:6px;align-items:center;gap:6px;margin-top:6px;margin-right:8px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.permissions-container{flex-direction:column;gap:24px;display:flex}.matrix-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;overflow:hidden}.matrix-card-header{background:var(--bg-alt,#f8fafc);border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.matrix-card-header h3{color:var(--text,#0f172a);margin:0;font-size:14px;font-weight:700}.matrix-table{border-collapse:collapse;width:100%;font-size:12.5px}.matrix-table th{background:var(--surface,#fff);text-align:left;color:var(--text-muted,#64748b);border-bottom:1px solid var(--border,#e2e8f0);text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;font-size:11.5px;font-weight:600}.matrix-table td{border-bottom:1px solid var(--border,#f1f5f9);color:var(--text,#0f172a);padding:12px}.matrix-table tr:last-child td{border-bottom:none}.perm-pill{border-radius:4px;margin:2px;padding:2px 6px;font-size:10.5px;font-weight:600;display:inline-block}.perm-pill.crud{color:#334155;background:#f1f5f9}.perm-pill.op{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd}.perm-pill.delegated{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.delegation-banner-box{background:#fffbeb;border:1px solid #fef3c7;border-left:4px solid #f59e0b;border-radius:8px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.delegation-banner-text h4{color:#92400e;margin:0 0 2px;font-size:13.5px;font-weight:700}.delegation-banner-text p{color:#b45309;margin:0;font-size:12px;line-height:1.45}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1100;background:#0f172a80;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;width:100%;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{border-bottom:1px solid var(--border,#e2e8f0);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-title-with-icon{align-items:center;gap:12px;display:flex}.modal-cute-icon{color:#ea580c;background:#ffedd5;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.modal-header h2{color:var(--text,#0f172a);margin:0;font-size:17px;font-weight:700}.modal-subtitle{color:var(--text-muted,#64748b);margin:2px 0 0;font-size:12px}.modal-body{max-height:calc(85vh - 120px);padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border,#e2e8f0);background:var(--bg-alt,#f8fafc);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.form-grid-2col{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.form-field-group{flex-direction:column;margin-bottom:16px;display:flex}.form-field-group label{color:var(--text,#1e293b);margin-bottom:6px;font-size:12.5px;font-weight:600}.form-field-input{background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#cbd5e1);height:38px;color:var(--text,#0f172a);border-radius:7px;padding:0 12px;font-size:13.5px;transition:all .15s}.form-field-input:focus{background:var(--surface,#fff);border-color:var(--accent,#f97316);outline:none;box-shadow:0 0 0 3px #f973161f}textarea.form-field-input{height:auto;padding:10px 12px}.checkbox-permissions-grid{background:var(--bg-alt,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;grid-template-columns:repeat(2,1fr);gap:10px;padding:14px;display:grid}.permission-checkbox-label{color:var(--text,#1e293b);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:flex}.permission-checkbox-label input[type=checkbox]{accent-color:var(--accent,#f97316);cursor:pointer;width:15px;height:15px}.form-field-input:disabled{color:#64748b;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0}.cute-close-btn{width:32px;height:32px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.cute-close-btn:hover{background:var(--surface-hover,#f1f5f9);color:var(--text,#0f172a)}.floor-alert-box{background:#fff7ed;border:1px solid #ffedd5;border-left:4px solid #f97316;margin-bottom:20px}.floor-alert-icon{color:#f97316;flex-shrink:0}.floor-alert-title{color:#c2410c;margin:0 0 2px;font-size:13.5px;font-weight:700}.floor-alert-message{color:#9a3412;margin:0;font-size:12px;line-height:1.45}.admin-confirm-header{color:#d97706;align-items:center;gap:8px;margin-bottom:6px;display:flex}.admin-confirm-header strong{color:#92400e;font-size:12px}.admin-checkbox-label{color:#92400e;font-size:12.5px;font-weight:600}.admin-checkbox-label input[type=checkbox]{accent-color:#d97706}.modal-cute-icon-danger{color:#dc2626;background:#fef2f2}.modal-danger-title{color:#991b1b;margin-top:4px}.impact-summary-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:14px;padding:12px 14px}.impact-summary-header{color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:11px;font-weight:700}.impact-summary-grid{fontSize:12.5px;color:var(--text,#1e293b);grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.safety-guarantee-box{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:16px;padding:12px;font-size:12px;line-height:1.5}.delete-confirm-label{color:#991b1b;align-items:flex-start;font-size:12.5px;font-weight:600}.delete-confirm-label input[type=checkbox]{accent-color:#dc2626;margin-top:2px}.btn-danger-confirm{color:#fff;cursor:pointer;background:#dc2626;border:1px solid #dc2626;border-radius:8px;justify-content:center;align-items:center;padding:9px 18px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.btn-danger-confirm:disabled{cursor:not-allowed;opacity:.65;background:#f87171;border-color:#f87171}.btn-danger-confirm:not(:disabled):hover{background:#b91c1c;border-color:#b91c1c}.status-badge.status-maintenance{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.code-text{color:#334155;background:#f1f5f9;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.badge-small{color:#475569;background:#f1f5f9;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500;display:inline-block}body.dark .floor-management-page,body.dark .floor-heading-content h1{color:var(--text,#f2f2f2)}body.dark .floor-heading-content p{color:var(--muted,#9b9da5)}body.dark .floor-stat-card{background:var(--surface,#303238);border-color:var(--border,#3d3f46);box-shadow:0 2px 5px #00000040}body.dark .floor-stat-card:hover{background:var(--surface-hover,#383a40);border-color:#f9731666;box-shadow:0 6px 14px #00000073}body.dark .stat-icon-wrap{border-color:var(--border,#3d3f46);background:#25272c}body.dark .stat-value{color:var(--text,#f2f2f2)}body.dark .stat-label{color:var(--muted,#9b9da5)}body.dark .stat-subtext{color:#787a85}body.dark .floor-toolbar-panel{background:var(--surface,#303238);border-color:var(--border,#3d3f46);box-shadow:none}body.dark .floor-search-box input{border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2);background:#25272c}body.dark .floor-search-box input:focus{border-color:var(--accent,#f97316);background:#2a2c32;box-shadow:0 0 0 3px #f9731633}body.dark .floor-search-box svg{color:var(--muted,#9b9da5)}body.dark .floor-filter-select{border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2);background-color:#25272c;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239b9da5' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}body.dark .floor-filter-select:focus{border-color:var(--accent,#f97316)}body.dark .view-mode-toggle{border-color:var(--border,#3d3f46);background:#25272c}body.dark .view-toggle-btn{color:var(--muted,#9b9da5)}body.dark .view-toggle-btn.active{background:var(--surface,#303238);color:#fff;box-shadow:0 1px 3px #0006}body.dark .floor-table-wrapper{background:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}body.dark .floor-table-wrapper .bvs-table th,body.dark .bvs-table th{color:var(--muted,#9b9da5);border-bottom-color:var(--border,#3d3f46);background:#25272c}body.dark .floor-table-wrapper .bvs-table td,body.dark .bvs-table td{border-bottom-color:var(--border,#3d3f46);color:var(--text,#f2f2f2)}body.dark .floor-table-wrapper .bvs-table tr:hover td,body.dark .bvs-table tr:hover td{background-color:var(--surface-hover,#383a40)}body.dark .floor-name-heading{color:var(--text,#f2f2f2)}body.dark .floor-desc-sub{color:var(--muted,#9b9da5)}body.dark .floor-badge-code{color:#cbd5e1;border-color:var(--border,#3d3f46);background:#25272c}body.dark .floor-purpose-pill{color:#e2e8f0;border-color:var(--border,#3d3f46);background:#25272c}body.dark .cell-building{color:var(--muted,#9b9da5)}body.dark .manager-avatar-badge{color:#fb923c;background:#f9731633;border-color:#f9731666}body.dark .manager-name{color:var(--text,#f2f2f2)}body.dark .manager-role-caption{color:var(--muted,#9b9da5)}body.dark .multi-floor-tag{color:#38bdf8;background:#0369a140;border:1px solid #38bdf84d}body.dark .personnel-num{color:var(--text,#f2f2f2)}body.dark .personnel-label{color:var(--muted,#9b9da5)}body.dark .inventory-units-line{color:var(--text,#f2f2f2)}body.dark .inventory-unit-label{color:var(--muted,#9b9da5)}body.dark .inventory-subtext{color:#787a85}body.dark .cell-devices{color:var(--text,#f2f2f2)}body.dark .btn-action-edit{border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2);background:#25272c}body.dark .btn-action-edit:hover{background:var(--surface-hover,#383a40);border-color:var(--accent,#f97316);color:var(--accent,#f97316)}body.dark .btn-action-view{border-color:var(--border,#3d3f46);color:var(--muted,#9b9da5);background:#25272c}body.dark .btn-action-view:hover{background:var(--surface-hover,#383a40);color:#fff;border-color:#64748b}body.dark .btn-action-delete{color:#f87171;background:#ef444426;border-color:#ef444459}body.dark .btn-action-delete:hover{color:#fff;background:#dc2626;border-color:#dc2626}body.dark .status-badge.status-active{color:#34d399;background:#10b98133;border-color:#10b98159}body.dark .status-badge.status-maintenance{color:#fbbf24;background:#f59e0b33;border-color:#fbbf2459}body.dark .status-badge.status-inactive{color:#9ca3af;background:#6b728033;border-color:#6b72804d}body.dark .status-badge.status-pending{color:#fbbf24;background:#f59e0b33;border-color:#fbbf244d}body.dark .status-badge.status-suspended{color:#f87171;background:#ef444433;border-color:#ef444459}body.dark .floor-card-item{background:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}body.dark .floor-card-item:hover{border-color:#f9731673;box-shadow:0 8px 16px -4px #00000073}body.dark .floor-card-header-info h3{color:var(--text,#f2f2f2)}body.dark .floor-card-meta,body.dark .floor-card-description{color:var(--muted,#9b9da5)}body.dark .floor-card-metrics{border-color:var(--border,#3d3f46);background:#25272c}body.dark .metric-box .metric-num{color:var(--text,#f2f2f2)}body.dark .metric-box .metric-lbl{color:var(--muted,#9b9da5)}body.dark .floor-card-manager-row{border-top-color:var(--border,#3d3f46)}body.dark .btn-card-primary{border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2);background:#25272c}body.dark .btn-card-primary:hover{background:var(--surface-hover,#383a40);border-color:var(--accent,#f97316);color:var(--accent,#f97316)}body.dark .drawer-backdrop{background:#000000a6}body.dark .drawer-panel{background:var(--surface,#303238);border-left:1px solid var(--border,#3d3f46);box-shadow:-8px 0 28px #0009}body.dark .drawer-header{border-bottom-color:var(--border,#3d3f46);background:#25272c}body.dark .drawer-title-area h2{color:var(--text,#f2f2f2)}body.dark .drawer-title-area p{color:var(--muted,#9b9da5)}body.dark .drawer-tabs-bar{border-bottom-color:var(--border,#3d3f46);background:#25272c}body.dark .drawer-tab-btn{color:var(--muted,#9b9da5)}body.dark .drawer-tab-btn:hover{color:var(--text,#f2f2f2)}body.dark .drawer-tab-btn.active{color:var(--accent,#f97316);border-bottom-color:var(--accent,#f97316)}body.dark .drawer-footer{border-top-color:var(--border,#3d3f46);background:#25272c}body.dark .overview-card-box{border-color:var(--border,#3d3f46);background:#25272c}body.dark .overview-card-title{color:var(--muted,#9b9da5)}body.dark .spec-list-row{border-bottom-color:var(--border,#3d3f46)}body.dark .spec-key{color:var(--muted,#9b9da5)}body.dark .spec-val{color:var(--text,#f2f2f2)}body.dark .manager-big-avatar{color:#fb923c;background:#f9731633;border-color:#f9731666}body.dark .manager-profile-details h4{color:var(--text,#f2f2f2)}body.dark .manager-profile-details p{color:var(--muted,#9b9da5)}body.dark .secondary-managers-list{border-top-color:var(--border,#3d3f46)}body.dark .secondary-tag-item{background:var(--surface,#303238);border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2)}body.dark .floor-alert-box{border-color:#f9731659;border-left-color:var(--accent,#f97316);background:#f973161f}body.dark .floor-alert-title{color:#fb923c}body.dark .floor-alert-message{color:#fed7aa}body.dark .code-text{color:#cbd5e1;background:#1f2125}body.dark .badge-small{color:var(--muted,#9b9da5);background:#1f2125}body.dark .btn-table-action{color:var(--accent,#f97316)}body.dark .cute-close-btn{color:var(--muted,#9b9da5)}body.dark .cute-close-btn:hover{background:var(--surface-hover,#383a40);color:#fff}body.dark .matrix-card{border-color:var(--border,#3d3f46);background:#25272c}body.dark .matrix-card-header{border-bottom-color:var(--border,#3d3f46);background:#1f2125}body.dark .matrix-card-header h3{color:var(--text,#f2f2f2)}body.dark .matrix-table th{color:var(--muted,#9b9da5);border-bottom-color:var(--border,#3d3f46);background:#1f2125}body.dark .matrix-table td{border-bottom-color:var(--border,#3d3f46);color:var(--text,#f2f2f2)}body.dark .perm-pill.crud{color:#e2e8f0;background:#383a40}body.dark .perm-pill.op{color:#38bdf8;background:#0284c733;border-color:#38bdf84d}body.dark .perm-pill.delegated{color:#fbbf24;background:#f59e0b33;border-color:#fbbf244d}body.dark .delegation-banner-box{background:#f59e0b1f;border-color:#f59e0b4d #f59e0b4d #f59e0b4d #f59e0b}body.dark .delegation-banner-text h4{color:#fbbf24}body.dark .delegation-banner-text p{color:#fde68a}body.dark .modal-overlay{background:#000000a6}body.dark .modal-dialog{background:var(--surface,#303238);border-color:var(--border,#3d3f46);box-shadow:0 20px 30px -5px #000000b3}body.dark .modal-header{border-bottom-color:var(--border,#3d3f46);background:#25272c}body.dark .modal-header h2{color:var(--text,#f2f2f2)}body.dark .modal-subtitle{color:var(--muted,#9b9da5)}body.dark .modal-cute-icon{color:#fb923c;background:#f9731633;border:1px solid #f973164d}body.dark .modal-cute-icon-danger{color:#f87171;background:#ef444433;border:1px solid #ef444459}body.dark .modal-danger-title{color:#f87171}body.dark .modal-footer{border-top-color:var(--border,#3d3f46);background:#25272c}body.dark .form-field-group label{color:var(--text,#f2f2f2)}body.dark .form-field-input{border-color:var(--border,#3d3f46);color:var(--text,#f2f2f2);background:#25272c}body.dark .form-field-input:focus{border-color:var(--accent,#f97316);background:#2a2c32;box-shadow:0 0 0 3px #f9731633}body.dark .form-field-input:disabled{border-color:var(--border,#3d3f46);color:var(--muted,#9b9da5);opacity:.85;background:#1f2125}body.dark .checkbox-permissions-grid{border-color:var(--border,#3d3f46);background:#25272c}body.dark .permission-checkbox-label{color:var(--text,#f2f2f2)}body.dark .admin-badge-strip{color:#fbbf24;background:#f59e0b33;border-color:#fbbf2459}body.dark .admin-confirm-box{background:#f59e0b1f;border-color:#f59e0b4d}body.dark .admin-confirm-header,body.dark .admin-confirm-header strong{color:#fbbf24}body.dark .admin-confirm-box p{color:#fde68a}body.dark .admin-checkbox-label{color:#fbbf24}body.dark .impact-summary-box{border-color:var(--border,#3d3f46);background:#25272c}body.dark .impact-summary-header{color:var(--muted,#9b9da5)}body.dark .impact-summary-grid{color:var(--text,#f2f2f2)}body.dark .safety-guarantee-box{color:#7dd3fc;background:#0284c726;border-color:#38bdf84d}body.dark .delete-confirm-label{color:#f87171}body.dark .btn-danger-confirm{background:#dc2626;border-color:#dc2626}body.dark .btn-danger-confirm:disabled{color:#9ca3af;background:#ef444459;border-color:#ef444459}body.dark .btn-danger-confirm:not(:disabled):hover{background:#ef4444;border-color:#ef4444}@media (width<=1024px){.floor-stats-grid{grid-template-columns:repeat(2,1fr)}.overview-grid-section{grid-template-columns:1fr}.drawer-panel{max-width:100%}}@media (width<=640px){.floor-management-page{padding:16px}.floor-stats-grid{grid-template-columns:1fr}.floor-toolbar-panel{flex-direction:column;align-items:stretch}.floor-search-box{max-width:100%}.form-grid-2col,.checkbox-permissions-grid{grid-template-columns:1fr}}.default-floor-reconcile-card{background:var(--surface,#fff);border:1.5px solid #f97316;border-radius:16px;gap:18px;margin-bottom:24px;padding:20px 24px;animation:.25s ease-out fadeIn;display:flex;box-shadow:0 4px 16px #f9731614}.reconcile-card-icon{color:#f97316;background:#f973161f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.reconcile-card-content{flex:1}.reconcile-card-title-row{align-items:center;gap:10px;margin-bottom:6px;display:flex}.reconcile-card-badge{text-transform:uppercase;letter-spacing:.06em;color:#fff;background:#f97316;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700}.reconcile-card-content h3{color:var(--text,#0f172a);margin:0;font-size:16px;font-weight:700}.reconcile-card-content p{color:var(--text-muted,#64748b);max-width:800px;margin:0 0 14px;font-size:13px;line-height:1.5}.reconcile-form-row{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.reconcile-select-wrap{flex-direction:column;gap:6px;display:flex}.reconcile-select-wrap label{color:var(--text,#0f172a);font-size:12px;font-weight:600}.reconcile-select-wrap select{min-width:260px;height:38px}body.dark .default-floor-reconcile-card{background:var(--surface,#1e2024);box-shadow:0 4px 16px #0000004d}.settings-page{flex-direction:column;gap:0;max-width:860px;margin:0 auto;padding:0 4px 40px;display:flex}.settings-header-section{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;padding-bottom:24px;display:flex}.settings-header-titles{flex-direction:column;gap:4px;display:flex}.settings-eyebrow{letter-spacing:.12em;color:var(--accent);text-transform:uppercase;font-size:10px;font-weight:700}.settings-main-title{color:var(--text);letter-spacing:-.3px;font-size:26px;font-weight:700;line-height:1.2}.settings-subtitle{color:var(--muted);margin-top:2px;font-size:13px}.settings-header-icon-wrap{background:var(--surface);border:1px solid var(--border);width:56px;height:56px;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-header-icon{color:var(--accent)}.settings-tab-bar{border-bottom:1px solid var(--border);gap:4px;margin-bottom:24px;padding-bottom:0;display:flex}.settings-tab-btn{font-family:var(--font-family);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 18px;font-size:13px;font-weight:500;transition:color .2s,border-color .2s,background .2s;display:flex}.settings-tab-btn:hover{color:var(--text);background:var(--surface-hover)}.settings-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);background:0 0;font-weight:600}.settings-content-area,.settings-panel{flex-direction:column;gap:16px;display:flex}.settings-panel-header{color:var(--muted);align-items:flex-start;gap:12px;padding:16px 0 8px;display:flex}.settings-panel-header svg{color:var(--accent);flex-shrink:0;margin-top:2px}.settings-panel-title{color:var(--text);font-size:16px;font-weight:600;line-height:1.3}.settings-panel-subtitle{color:var(--muted);margin-top:2px;font-size:12px}.settings-card{background:var(--bvs-surface-bg,var(--surface));border:var(--bvs-surface-border,1px solid var(--border));border-radius:var(--bvs-surface-radius,20px);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;padding:0;overflow:hidden}.settings-card-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);background:var(--surface-hover);padding:12px 20px 8px;font-size:10px;font-weight:700}.settings-field-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:13px 20px;transition:background .15s;display:flex}.settings-field-row:last-child{border-bottom:none}.settings-field-row:hover{background:var(--surface-hover)}.settings-field-label{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;min-width:180px;font-size:13px;font-weight:500;display:flex}.settings-field-icon{color:var(--muted);flex-shrink:0}.settings-field-value-wrap{flex:1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.settings-field-value{color:var(--text);text-align:right;word-break:break-all;font-size:13px;font-family:var(--font-family)}.settings-code{background:var(--surface-hover);color:var(--accent);border:1px solid var(--border);border-radius:4px;padding:2px 5px;font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.settings-copy-btn{border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--muted);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:flex}.settings-copy-btn:hover{background:var(--surface-hover);color:var(--text);border-color:var(--accent)}.settings-copy-btn .copy-success{color:#10b981}.settings-status-badge{letter-spacing:.04em;text-transform:capitalize;border-radius:20px;align-items:center;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.settings-badge-active{color:#10b981;background:#10b9811f;border:1px solid #10b98140}.settings-badge-disabled{color:#ef4444;background:#ef44441a;border:1px solid #ef444433}.settings-badge-pending{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b33}.settings-readonly-notice{color:var(--muted);background:#f973160f;border:1px solid #f9731633;border-radius:10px;align-items:flex-start;gap:8px;padding:12px 16px;font-size:12px;line-height:1.5;display:flex}.settings-readonly-notice svg{color:var(--accent);flex-shrink:0;margin-top:1px}.settings-readonly-notice strong{color:var(--text)}.settings-password-help{color:var(--muted);margin:0 0 12px;font-size:13px;line-height:1.5}.settings-password-form{flex-direction:column;gap:12px;max-width:360px;display:flex}.settings-password-form .form-group{flex-direction:column;gap:6px;font-size:13px;display:flex}.settings-password-form .form-input{border:1px solid var(--border,#0000001f);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 12px}.settings-form-note{color:#10b981;margin:0;font-size:13px}.settings-form-error{color:var(--danger,#ef4444);margin:0;font-size:13px}.settings-avatar-row{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:14px;padding:16px 20px;display:flex}.settings-avatar-circle{background:var(--accent);color:#fff;width:48px;height:48px;box-shadow:2px 2px 5px var(--shadow-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:700;display:flex}.settings-avatar-info{flex-direction:column;gap:3px;display:flex}.settings-avatar-name{color:var(--text);font-size:15px;font-weight:600}.settings-avatar-role{color:var(--muted);font-size:12px}.settings-admin-badge-row{color:var(--text);align-items:flex-start;gap:10px;padding:16px 20px;font-size:13px;line-height:1.5;display:flex}.settings-admin-shield{color:var(--accent);flex-shrink:0;margin-top:1px}.settings-perms-empty{color:var(--muted);align-items:center;gap:6px;padding:16px 20px;font-size:12px;display:flex}.settings-perms-wrapper{padding:4px 0}.settings-perms-toggle{width:100%;font-family:var(--font-family);color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:12px 20px;font-size:13px;font-weight:500;transition:background .15s;display:flex}.settings-perms-toggle:hover{background:var(--surface-hover)}.settings-perms-toggle svg{color:var(--muted)}.settings-perms-toggle svg:first-child{color:var(--accent)}.settings-perms-list{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:8px 20px 16px;display:flex}.settings-perm-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.settings-perm-resource{color:var(--text);text-align:right;min-width:110px;font-size:12px;font-weight:600}.settings-perm-actions{flex-wrap:wrap;gap:5px;display:flex}.settings-perm-pill{color:var(--accent);letter-spacing:.03em;background:#f9731614;border:1px solid #f9731633;border-radius:20px;padding:2px 8px;font-size:11px;font-weight:500}.settings-theme-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.settings-theme-label-wrap{color:var(--muted);align-items:center;gap:12px;display:flex}.settings-theme-label-wrap svg{color:var(--accent);flex-shrink:0}.settings-theme-label{color:var(--text);font-size:13px;font-weight:600;line-height:1.3;display:block}.settings-theme-sub{color:var(--muted);margin-top:2px;font-size:11px;display:block}.settings-theme-toggle{border:1px solid var(--border);background:var(--surface-hover);cursor:pointer;font-family:var(--font-family);color:var(--text);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:5px 10px 5px 5px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s;display:flex}.settings-theme-toggle:hover{border-color:var(--accent)}.settings-theme-toggle.toggle-dark{color:#f2f2f2;background:#1b1c20;border-color:#3d3f46}.settings-theme-toggle.toggle-light{color:#1f2937;background:#fff;border-color:#d1d5db}.toggle-track{background:var(--border);border-radius:999px;align-items:center;width:36px;height:20px;transition:background .2s;display:flex;position:relative}.toggle-dark .toggle-track{background:var(--accent)}.toggle-light .toggle-track{background:var(--border)}.toggle-thumb{color:#f97316;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;transition:left .2s;display:flex;position:absolute;left:2px;box-shadow:0 1px 3px #0000004d}.toggle-dark .toggle-thumb{color:#292b2f;background:#f2f2f2;left:18px}.toggle-light .toggle-thumb{color:#f59e0b;background:#fff;left:2px}.settings-theme-preview-row{gap:16px;padding:16px 20px 20px;display:flex}.settings-theme-card{cursor:pointer;border:2px solid var(--border);background:0 0;border-radius:10px;flex-direction:column;flex:1;gap:8px;max-width:160px;padding:8px;transition:border-color .2s,box-shadow .2s;display:flex}.settings-theme-card:hover{border-color:var(--muted)}.settings-theme-card.theme-card-active{border-color:var(--accent);box-shadow:0 0 0 3px #f973161f}.settings-theme-card-label{color:var(--text);font-size:12px;font-weight:600;font-family:var(--font-family);justify-content:center;align-items:center;gap:5px;display:flex}.theme-check{color:var(--accent)}.theme-preview{aspect-ratio:16/10;border-radius:6px;width:100%;display:flex;overflow:hidden}.theme-preview-light{background:#f3f4f6}.tp-sidebar{background:#e5e7eb;border-right:1px solid #d1d5db;width:28%;height:100%}.tp-main{flex-direction:column;flex:1;display:flex}.tp-topbar{background:#fff;border-bottom:1px solid #d1d5db;height:20%}.tp-content{flex-direction:column;flex:1;gap:4px;padding:6px;display:flex}.tp-card{background:#fff;border:1px solid #e5e7eb;border-radius:3px;flex:1}.theme-preview-dark{background:#292b2f}.tp-sidebar-dark{background:#303238;border-right:1px solid #3d3f46;width:28%;height:100%}.tp-topbar-dark{background:#303238;border-bottom:1px solid #3d3f46;height:20%}.tp-card-dark{background:#303238;border:1px solid #3d3f46;border-radius:3px;flex:1}body.dark .settings-card{background:var(--bvs-surface-bg,#1e2024);box-shadow:var(--bvs-surface-shadow);border-color:#ffffff14}body.dark .settings-header-icon-wrap{box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light)}body.dark .settings-code{color:#f97316;background:#1f2024;border-color:#3d3f46}body.dark .settings-perm-pill{background:#f973161a;border-color:#f9731640}body.dark .settings-readonly-notice{background:#f9731612;border-color:#f973162e}body.dark .settings-copy-btn{background:var(--surface-hover)}body.dark .settings-copy-btn:hover{background:#3d3f46}body.dark .settings-tab-btn:hover{background:var(--surface-hover)}body.dark .toggle-light .toggle-track{background:#3d3f46}body.dark .settings-theme-card{border-color:var(--border)}@media (width<=640px){.settings-header-section{flex-direction:column;align-items:flex-start;gap:12px}.settings-tab-bar{scrollbar-width:none;gap:0;overflow-x:auto}.settings-tab-btn{padding:10px 12px;font-size:12px}.settings-field-row{flex-direction:column;align-items:flex-start;gap:6px}.settings-field-value-wrap{justify-content:flex-start}.settings-field-label{min-width:unset}.settings-theme-row{flex-direction:column;align-items:flex-start;gap:12px}.settings-theme-preview-row{flex-flow:wrap}.settings-theme-card{max-width:unset;flex:1;min-width:120px}.settings-perm-group{flex-direction:column;align-items:flex-start;gap:5px}.settings-perm-resource{min-width:unset;text-align:left}}.access-denied{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);max-width:520px;box-shadow:6px 6px 14px var(--shadow-dark), -6px -6px 14px var(--shadow-light);margin:24px auto;padding:28px 24px}.access-denied-kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.access-denied h1{margin:0 0 8px;font-size:1.5rem}.access-denied p{color:var(--muted);margin:0}.access-denied-link{margin-top:20px;text-decoration:none}.robridge-ai-widget{z-index:9999;font-family:var(--font-family,"Google Sans", "Product Sans", sans-serif);pointer-events:none;position:fixed;bottom:24px;right:24px}.robridge-ai-trigger-btn{pointer-events:auto;background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);cursor:pointer;border-radius:50%;outline:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 4px 14px #0000001a}.robridge-ai-trigger-btn:hover{border-color:var(--accent,#f97316);transform:scale(1.06);box-shadow:0 6px 20px #f9731640}.robridge-ai-trigger-btn:active,.robridge-ai-trigger-btn.active{border-color:var(--accent,#f97316);transform:scale(.96)}.trigger-icon-wrap{justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.trigger-logo-img{object-fit:cover;border:1px solid var(--border,#e2e8f0);border-radius:50%;width:34px;height:34px}.trigger-ping-dot{border:2px solid var(--surface,#fff);background-color:#10b981;border-radius:50%;width:9px;height:9px;position:absolute;top:-1px;right:-1px;box-shadow:0 0 0 1px #10b98140}.robridge-ai-panel{pointer-events:auto;background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:14px;flex-direction:column;width:390px;max-width:calc(100vw - 32px);height:530px;max-height:calc(100vh - 100px);animation:.22s cubic-bezier(.16,1,.3,1) panelSlideUp;display:flex;position:absolute;bottom:62px;right:0;overflow:hidden;box-shadow:0 10px 30px #0000001f,0 2px 8px #0000000f}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.ai-panel-header{border-bottom:1px solid var(--border,#e2e8f0);background-color:var(--surface,#fff);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.ai-header-left{align-items:center;gap:10px;display:flex}.ai-header-avatar{width:34px;height:34px;position:relative}.ai-header-avatar img{object-fit:cover;border:1.5px solid var(--accent,#f97316);border-radius:50%;width:100%;height:100%}.online-indicator{border:1.5px solid var(--surface,#fff);background-color:#10b981;border-radius:50%;width:8px;height:8px;position:absolute;bottom:0;right:0}.ai-header-info h3{color:var(--text,#0f172a);margin:0;font-size:14px;font-weight:700;line-height:1.2}.ai-subtitle{color:var(--muted,#64748b);white-space:nowrap;text-overflow:ellipsis;max-width:170px;font-size:11px;display:block;overflow:hidden}.ai-header-actions{align-items:center;gap:4px;display:flex}.ai-icon-btn{color:var(--muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.ai-icon-btn:hover,.ai-icon-btn.active{background-color:var(--bg,#f1f5f9);color:var(--text,#0f172a)}.ai-history-panel{border-bottom:1px solid var(--border,#e2e8f0);background-color:var(--bg,#f8fafc);flex-shrink:0;max-height:150px;padding:6px;overflow-y:auto}.ai-history-empty{color:var(--muted,#64748b);margin:0;padding:8px 10px;font-size:11.5px}.ai-history-item{text-align:left;cursor:pointer;width:100%;color:var(--text,#0f172a);background:0 0;border:none;border-radius:6px;align-items:center;padding:7px 10px;transition:all .15s;display:flex}.ai-history-item:hover,.ai-history-item.active{background-color:var(--surface,#fff);box-shadow:0 1px 3px #0000000d}.ai-history-title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.ai-banner{border-bottom:1px solid var(--border,#e2e8f0);padding:8px 12px;font-size:11.5px;line-height:1.4}.ai-banner-error{color:#dc2626;background-color:#ef44441a}.ai-banner-warning{color:#d97706;background-color:#f59e0b1f}.ai-loading-note,.ai-empty-state{color:var(--muted,#64748b);text-align:center;padding:12px 6px;font-size:12.5px;line-height:1.45}.ai-empty-state p{margin:0}.ai-panel-body{background-color:var(--bg,#f8fafc);flex-direction:column;flex:1;gap:12px;padding:14px;display:flex;overflow-y:auto}.ai-message-row{gap:8px;max-width:88%;display:flex}.ai-message-row.ai-row{align-self:flex-start}.ai-message-row.user-row{flex-direction:row-reverse;align-self:flex-end}.ai-bubble-avatar{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);width:24px;height:24px;color:var(--accent,#f97316);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.ai-message-bubble{border-radius:12px;padding:10px 14px;font-size:12.5px;line-height:1.45;box-shadow:0 1px 3px #0000000d}.ai-message-text{white-space:pre-wrap;word-break:break-word;margin:0}.ai-bubble{background-color:var(--surface,#fff);color:var(--text,#0f172a);border:1px solid var(--border,#e2e8f0);border-top-left-radius:2px}.user-bubble{background-color:var(--accent,#f97316);color:#fff;border-top-right-radius:2px;box-shadow:0 2px 8px #f973164d}.ai-message-time{opacity:.7;margin-top:4px;font-size:10px;display:block}.user-bubble .ai-message-time{text-align:right;color:#ffffffd9}.ai-proposal-card{border:1px solid var(--border,#e2e8f0);background-color:var(--surface,#fff);border-radius:8px;margin-top:10px;padding:10px 12px}.ai-proposal-title{color:var(--text,#0f172a);margin-bottom:8px;font-size:12px;font-weight:700}.ai-proposal-field{flex-direction:column;gap:2px;margin-bottom:6px;display:flex}.ai-proposal-field span{color:var(--muted,#64748b);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.ai-proposal-field strong{color:var(--text,#0f172a);font-size:12.5px;font-weight:600}.ai-proposal-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ai-proposal-btn{border:1px solid var(--border,#e2e8f0);background-color:var(--surface,#fff);color:var(--text,#0f172a);cursor:pointer;border-radius:6px;padding:5px 12px;font-size:11px;font-weight:600;transition:all .15s}.ai-proposal-btn.primary{background-color:var(--accent,#f97316);border-color:var(--accent,#f97316);color:#fff}.ai-proposal-btn:disabled{opacity:.55;cursor:not-allowed}.ai-proposal-status{color:var(--muted,#64748b);margin:6px 0 0;font-size:11px;font-weight:500}.typing-bubble{align-items:center;gap:4px;padding:10px 14px;display:flex}.typing-bubble .dot{background-color:var(--muted,#64748b);border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite typingBounce}.typing-bubble .dot:nth-child(2){animation-delay:.2s}.typing-bubble .dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.ai-quick-prompts{background-color:var(--surface,#fff);border-top:1px solid var(--border,#e2e8f0);scrollbar-width:none;flex-shrink:0;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.ai-quick-prompts::-webkit-scrollbar{display:none}.ai-prompt-chip{white-space:nowrap;background-color:var(--bg,#f8fafc);color:var(--text,#0f172a);border:1px solid var(--border,#e2e8f0);cursor:pointer;border-radius:9999px;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s}.ai-prompt-chip:hover:not(:disabled){border-color:var(--accent,#f97316);color:var(--accent,#f97316);background-color:#f973160f}.ai-panel-footer{background-color:var(--surface,#fff);border-top:1px solid var(--border,#e2e8f0);flex-shrink:0;padding:10px 12px 6px}.ai-input-wrapper{background-color:var(--bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;align-items:center;gap:8px;padding:6px 8px 6px 12px;transition:border-color .15s;display:flex}.ai-input-wrapper:focus-within{border-color:var(--accent,#f97316)}.ai-input-wrapper textarea{resize:none;color:var(--text,#0f172a);background:0 0;border:none;outline:none;flex:1;max-height:60px;font-family:inherit;font-size:12.5px;line-height:1.4}.ai-input-wrapper textarea::placeholder{color:var(--muted,#94a3b8)}.ai-send-btn{background-color:var(--accent,#f97316);color:#fff;cursor:pointer;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.ai-send-btn:hover:not(:disabled){background-color:var(--accent-hover,#ea580c);transform:translateY(-1px)}.ai-send-btn:disabled{opacity:.4;cursor:not-allowed}.ai-footer-note{text-align:center;margin-top:3px}.ai-footer-note span{color:var(--muted,#94a3b8);font-size:10px}.robridge-ai-fullscreen-overlay{pointer-events:auto;z-index:10000;background:var(--bg,#f8fafc);flex-direction:column;width:100vw;height:100vh;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.fs-header{background:var(--surface,#fff);border-bottom:1px solid var(--border,#e2e8f0);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 28px;display:flex;box-shadow:0 1px 3px #0000000a}.fs-header-left{align-items:center;gap:12px;display:flex}.fs-avatar{object-fit:cover;border:1.5px solid var(--accent,#f97316);border-radius:50%;width:36px;height:36px}.fs-title-wrap h2{color:var(--text,#0f172a);margin:0;font-size:16px;font-weight:700}.fs-status{color:var(--muted,#64748b);align-items:center;gap:6px;margin-top:1px;font-size:12px;font-weight:500;display:flex}.fs-header-actions{align-items:center;gap:8px;display:flex}.fs-btn-new-chat{color:var(--accent,#f97316);cursor:pointer;background:#f973161a;border:1px solid #f9731640;border-radius:9999px;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;transition:all .15s;display:flex}.fs-btn-new-chat:hover{background:var(--accent,#f97316);color:#fff}.fs-icon-btn{border:1px solid var(--border,#e2e8f0);width:32px;height:32px;color:var(--text,#0f172a);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.fs-icon-btn:hover,.fs-icon-btn.active{background:var(--bg,#f1f5f9);border-color:#cbd5e1}.fs-main-content{box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:900px;height:calc(100vh - 61px);margin:0 auto;padding:0 16px;display:flex}.fs-main-content .ai-panel-body{background:0 0;flex:1;padding:20px 4px}.fs-main-content .ai-message-row{max-width:80%}.fs-main-content .ai-panel-footer{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;margin-bottom:20px;padding:10px 14px 8px;box-shadow:0 4px 16px #0000000d}.fs-main-content .ai-quick-prompts{background:0 0;border-top:none;padding:6px 4px 10px}body.dark .robridge-ai-trigger-btn{background-color:var(--surface);border-color:var(--border);box-shadow:0 4px 14px #00000073}body.dark .trigger-ping-dot{border-color:var(--surface)}body.dark .robridge-ai-panel{background-color:var(--surface);border-color:var(--border);box-shadow:0 10px 30px #00000080}body.dark .ai-panel-header,body.dark .ai-panel-footer,body.dark .ai-quick-prompts{background-color:var(--surface);border-color:var(--border)}body.dark .ai-panel-body,body.dark .ai-history-panel{background-color:#17181c}body.dark .ai-bubble{background-color:var(--surface);border-color:var(--border);color:var(--text)}body.dark .ai-input-wrapper{border-color:var(--border);background-color:#17181c}body.dark .ai-input-wrapper textarea{color:var(--text)}body.dark .ai-proposal-card{background-color:var(--surface);border-color:var(--border)}body.dark .ai-proposal-title,body.dark .ai-proposal-field strong{color:var(--text)}body.dark .ai-proposal-btn{background-color:var(--surface);border-color:var(--border);color:var(--text)}body.dark .ai-proposal-btn.primary{background-color:var(--accent);color:#fff}body.dark .ai-prompt-chip{border-color:var(--border);color:var(--text);background-color:#17181c}body.dark .robridge-ai-fullscreen-overlay{background:#17181c}body.dark .fs-header{background:var(--surface);border-color:var(--border)}body.dark .fs-title-wrap h2{color:var(--text)}body.dark .fs-icon-btn{border-color:var(--border);color:var(--text)}body.dark .fs-icon-btn:hover{background:#24272f}body.dark .fs-main-content .ai-panel-footer{background:var(--surface);border-color:var(--border)}@media (width<=768px){.robridge-ai-widget{bottom:16px;right:16px}.robridge-ai-trigger-btn{width:44px;height:44px}.trigger-logo-img{width:30px;height:30px}.robridge-ai-panel{width:calc(100vw - 32px);height:calc(100vh - 84px);bottom:54px;right:0}.fs-header{padding:10px 16px}.fs-btn-new-chat span{display:none}}@font-face{font-family:Google Sans;font-style:normal;font-weight:400;font-display:swap;src:local(Google Sans Regular),local(GoogleSans-Regular),local(Google Sans),local(Product Sans),url(https://fonts.cdnfonts.com/s/14955/ProductSans-Regular.woff)format("woff")}@font-face{font-family:Google Sans;font-style:normal;font-weight:500;font-display:swap;src:local(Google Sans Medium),local(GoogleSans-Medium),local(Product Sans Medium),url(https://fonts.cdnfonts.com/s/14955/ProductSans-Medium.woff)format("woff")}@font-face{font-family:Google Sans;font-style:normal;font-weight:700;font-display:swap;src:local(Google Sans Bold),local(GoogleSans-Bold),local(Product Sans Bold),url(https://fonts.cdnfonts.com/s/14955/ProductSans-Bold.woff)format("woff")}:root{--font-family:"Google Sans", "Product Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg:#f3f4f6;--surface:#f3f4f6;--surface-hover:#e5e7eb;--surface-active:#f97316;--text:#1f2937;--text-inverse:#fff;--muted:#6b7280;--border:#d1d5db;--accent:#f97316;--accent-hover:#ea580c;--shadow-dark:#d1d5db;--shadow-light:#fff;--success:#10b981;--danger:#ef4444;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--transition-speed:.25s;--bvs-surface-radius:20px;--bvs-surface-border:1px solid var(--border,#d1d5db);--bvs-surface-shadow:3px 3px 8px var(--shadow-dark), -3px -3px 8px var(--shadow-light);--bvs-surface-bg:var(--surface,#fff)}body.dark{--bg:#292b2f;--surface:#303238;--surface-hover:#383a40;--surface-active:#f97316;--text:#f2f2f2;--text-inverse:#fff;--muted:#9b9da5;--border:#3d3f46;--accent:#f97316;--accent-hover:#ea580c;--shadow-dark:#1b1c20;--shadow-light:#24262b;--bvs-surface-border:1px solid #ffffff14;--bvs-surface-shadow:3px 3px 8px #0006, -3px -3px 8px #ffffff05;--bvs-surface-bg:#1e2024}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}.app-shell{width:100vw;min-height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--surface);box-shadow:5px 0 10px var(--shadow-dark), -5px 0 10px var(--shadow-light);transition:width var(--transition-speed) ease, transform var(--transition-speed) ease;z-index:50;flex-direction:column;flex-shrink:0;height:100vh;padding:24px 16px;display:flex}.sidebar-visible{width:260px}.sidebar-hidden{width:76px}.sidebar-header{justify-content:space-between;align-items:center;min-height:42px;margin-bottom:32px;display:flex}.sidebar-logo{object-fit:contain;height:auto;max-height:40px;transition:all var(--transition-speed) ease;display:block}.sidebar-logo-full{max-width:160px}.sidebar-logo-compact{border-radius:var(--radius-sm);object-fit:cover;width:36px;max-width:36px;height:36px;max-height:36px;box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light)}.sidebar-toggle{background:var(--surface);color:var(--muted);border-radius:var(--radius-sm);border:none;border:1px solid var(--border);cursor:pointer;width:32px;height:32px;transition:all var(--transition-speed) ease;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 1px 2px #0000000d}.sidebar-toggle:hover{color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 6px #00000014}.sidebar-toggle:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.sidebar-nav{flex-direction:column;flex-grow:1;gap:8px;display:flex}.sidebar-section-label{text-transform:uppercase;color:var(--muted);letter-spacing:.05em;margin:16px 0 8px 12px;font-size:.75rem;font-weight:600}.sidebar-link{border-radius:var(--radius-md);color:var(--muted);transition:all var(--transition-speed) ease;align-items:center;gap:12px;padding:12px;display:flex}.sidebar-link:hover{background:var(--surface-hover);color:var(--text)}.sidebar-link.active{background:var(--surface-active);color:var(--text-inverse);font-weight:600;box-shadow:0 2px 4px #f973164d}.sidebar-link-icon{justify-content:center;align-items:center;font-size:1.25rem;display:flex}.sidebar-link-label{white-space:nowrap;font-size:.875rem}.sidebar-user{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:auto;padding:16px 8px 0;display:flex}.sidebar-user-avatar{background:var(--surface);width:40px;height:40px;color:var(--accent);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.sidebar-user-details{flex-direction:column;display:flex;overflow:hidden}.sidebar-user-details strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.sidebar-user-details span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.sidebar-brand{align-items:center;gap:12px;display:flex;overflow:hidden}.sidebar-brand-text{flex-direction:column;display:flex}.brand-name{color:var(--text);font-size:1.25rem;font-weight:700;line-height:1.1}.brand-sub{color:var(--muted);white-space:nowrap;font-size:.65rem}.workspace-switcher{margin-bottom:24px;position:relative}.workspace-selector{border-radius:var(--radius-md);background:var(--surface);width:100%;color:inherit;font:inherit;text-align:left;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);cursor:pointer;transition:all var(--transition-speed) ease;border:none;align-items:center;gap:12px;margin-bottom:24px;padding:12px;display:flex}.workspace-switcher .workspace-selector{margin-bottom:0}.workspace-selector-static{cursor:default}.workspace-selector:hover{background:var(--surface-hover)}.workspace-initials{border-radius:var(--radius-sm);background:var(--surface-hover);width:32px;height:32px;color:var(--text);box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex}body.dark .workspace-selector{background:var(--surface);border:1px solid #ffffff0f;box-shadow:0 4px 12px #00000059}body.dark .workspace-initials{background:#25272c;border:1px solid #ffffff0d;box-shadow:inset 1px 1px 2px #00000080}.workspace-details{flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.workspace-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.workspace-dropdown-select{max-width:28px;color:var(--text);cursor:pointer;background:0 0;border:none}.workspace-type{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.workspace-dropdown{color:var(--muted);transition:transform var(--transition-speed) ease;align-items:center;display:flex}.workspace-dropdown-open{color:var(--accent);transform:rotate(180deg)}.workspace-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:220px;box-shadow:6px 6px 16px var(--shadow-dark), -4px -4px 12px var(--shadow-light);z-index:80;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0}.workspace-option{border-radius:var(--radius-sm);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;display:flex}.workspace-option:hover,.workspace-option-current{background:var(--surface-hover)}.workspace-option-current{color:var(--accent)}.workspace-option-initials{border-radius:var(--radius-sm);background:var(--surface);width:28px;height:28px;box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.workspace-option-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-access-note{color:var(--muted);margin:0 4px 16px;font-size:.8125rem}.sidebar-scrollable{flex-direction:column;flex-grow:1;padding-right:4px;display:flex;overflow:hidden auto}.sidebar-scrollable::-webkit-scrollbar{width:4px}.sidebar-scrollable::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:4px}.status-dot-small{background-color:var(--success);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-4px}.sidebar-link-icon{justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:relative}.sidebar-footer-status{border-radius:var(--radius-md);background:var(--surface);box-shadow:inset 3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);align-items:center;gap:12px;margin-top:24px;padding:16px 12px;display:flex}.status-dot{background-color:var(--success);border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 8px #10b98166}.status-details{flex-direction:column;display:flex;overflow:hidden}.status-details strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.status-details span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.sidebar-mobile-overlay{z-index:40;cursor:pointer;background-color:#0006;border:none;margin:0;padding:0;position:fixed;inset:0}.sidebar-hidden .sidebar-brand{justify-content:center;align-items:center;width:100%;display:flex}.sidebar-hidden .sidebar-logo{max-width:36px;max-height:36px}.sidebar-hidden .sidebar-link-label,.sidebar-hidden .sidebar-section-label,.sidebar-hidden .sidebar-user-details,.sidebar-hidden .sidebar-brand-text,.sidebar-hidden .workspace-details,.sidebar-hidden .workspace-dropdown,.sidebar-hidden .status-details{display:none}.sidebar-hidden .sidebar-link{justify-content:center;padding:12px 0}.sidebar-hidden .sidebar-user,.sidebar-hidden .workspace-selector,.sidebar-hidden .sidebar-footer-status{justify-content:center;padding:16px 0 0}.sidebar-hidden .workspace-selector{padding:12px 0}.sidebar-hidden .sidebar-footer-status{padding:16px 0}.sidebar-hidden .sidebar-header{flex-direction:column;gap:16px;margin-bottom:32px}.topbar{background-color:var(--bg);justify-content:space-between;align-items:center;min-height:80px;padding:16px 32px;display:flex}.topbar-left{align-items:center;gap:24px;display:flex}.mobile-menu-button{background:var(--surface);color:var(--text);border-radius:var(--radius-sm);width:40px;height:40px;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;display:none}.mobile-menu-button:active{box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light)}.topbar-workspace{flex-direction:column;gap:2px;display:flex}.topbar-label{color:var(--muted);margin:0;font-size:.75rem}.topbar-title{color:var(--text);margin:0;font-size:1.125rem;font-weight:600}.topbar-actions{align-items:center;gap:16px;display:flex}.topbar-icon-button{background:var(--surface);color:var(--muted);border:none;border:1px solid var(--border);cursor:pointer;width:40px;height:40px;transition:all var(--transition-speed) ease;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 1px 2px #0000000d}.topbar-icon-button:hover{color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 6px #00000014}.topbar-icon-button:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.topbar-user{align-items:center;gap:12px;margin-left:16px;display:flex}.topbar-user-avatar{background:var(--surface);width:40px;height:40px;color:var(--accent);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.topbar-user-details{flex-direction:column;display:flex}.topbar-user-details strong{color:var(--text);font-size:.875rem;font-weight:600}.topbar-user-details span{color:var(--muted);font-size:.75rem}.main-content{background-color:var(--bg);scroll-behavior:smooth;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#9ca3af73 transparent;flex-direction:column;flex-grow:1;height:100vh;display:flex;overflow:auto}.skip-to-content{z-index:10000;background:var(--surface,#fff);color:var(--text,#0f172a);border:1px solid var(--border,#e2e8f0);border-radius:6px;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;position:absolute;top:12px;left:12px;transform:translateY(-160%)}.skip-to-content:focus{outline:2px solid var(--accent,#f97316);outline-offset:2px;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.skip-to-content{transition:none}}.main-content::-webkit-scrollbar{width:6px;height:6px}.main-content::-webkit-scrollbar-track{background:0 0;border-radius:9999px;margin:4px}.main-content::-webkit-scrollbar-thumb{background-color:#9ca3af61;background-clip:padding-box;border:1px solid #0000;border-radius:9999px;transition:background-color .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1)}.main-content::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 6px #f9731680}.main-content::-webkit-scrollbar-thumb:active{background-color:var(--accent-hover);box-shadow:0 0 10px #f97316b3}body.dark .main-content::-webkit-scrollbar-thumb{background-color:#9ca3af40}body.dark .main-content::-webkit-scrollbar-thumb:hover{background-color:var(--accent);box-shadow:0 0 8px #f9731699}.page-content{width:100%;max-width:1400px;margin:0 auto;padding:0 32px 32px}.page-heading{margin-bottom:32px}.page-heading h1{color:var(--text);letter-spacing:-.025em;margin-bottom:8px;font-size:1.875rem;font-weight:700}.page-heading p{color:var(--muted);font-size:1rem}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);box-shadow:2px 2px 8px var(--shadow-dark), -2px -2px 8px var(--shadow-light);border-radius:16px;flex-direction:column;justify-content:space-between;gap:12px;min-height:140px;padding:20px 22px;transition:transform .25s,box-shadow .25s;display:flex}body.dark .stat-card{border-color:#ffffff12;box-shadow:0 4px 12px #00000040}.stat-card:hover{box-shadow:4px 6px 14px var(--shadow-dark), -4px -6px 14px var(--shadow-light);transform:translateY(-2px)}body.dark .stat-card:hover{box-shadow:0 8px 18px #00000059}.stat-card-header,.panel-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.stat-card-title,.stat-card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:700}.stat-card-icon{width:32px;height:32px;color:var(--accent);background:#f973161f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.stat-card-value{color:var(--text);margin-bottom:2px;font-size:1.85rem;font-weight:800;line-height:1.2}.stat-card-footer{border-top:1px solid #ffffff0d;align-items:center;gap:8px;margin-top:4px;padding-top:8px;display:flex}.stat-card-trend,.stat-card-change{background:var(--surface);box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:700}.stat-card-trend.positive,.stat-card-change.positive{color:var(--success)}.stat-card-trend.negative,.stat-card-change.negative{color:var(--danger)}.stat-card-trend.neutral,.stat-card-change.neutral{color:var(--muted)}.stat-card-description{color:var(--muted);font-size:12.5px;line-height:1.4}body.dark .stat-card-icon{color:var(--accent);background:#f9731626;border:1px solid #f9731633}body.dark .stat-card-trend,body.dark .stat-card-change{background:#25272c;border:1px solid #ffffff0d;box-shadow:inset 1px 1px 2px #0006}.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;display:grid}.dashboard-panel,.scan-performance-panel,.recent-activity-panel{background:var(--bvs-surface-bg);border:var(--bvs-surface-border);border-radius:var(--bvs-surface-radius);box-shadow:var(--bvs-surface-shadow);transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;flex-direction:column;padding:24px;display:flex;overflow:hidden}body.dark .dashboard-panel,body.dark .scan-performance-panel,body.dark .recent-activity-panel{background:var(--bvs-surface-bg);border:var(--bvs-surface-border);box-shadow:var(--bvs-surface-shadow)}.bvs-content-surface{background-color:var(--bvs-surface-bg);border:var(--bvs-surface-border);border-radius:var(--bvs-surface-radius);box-shadow:var(--bvs-surface-shadow);box-sizing:border-box;transition:border-color var(--transition-speed,.25s) ease, box-shadow var(--transition-speed,.25s) ease;width:100%;position:relative;overflow:hidden}body.dark .bvs-content-surface{background-color:var(--bvs-surface-bg);border:var(--bvs-surface-border);box-shadow:var(--bvs-surface-shadow)}.bvs-content-surface.bvs-surface-default,.bvs-content-surface.bvs-surface-padded{flex-direction:column;gap:16px;padding:22px 24px;display:flex}.bvs-content-surface.bvs-surface-compact{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.bvs-content-surface.bvs-surface-flush,.bvs-content-surface.bvs-surface-table{padding:0}.bvs-surface-table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.bvs-surface-header{border-bottom:1px solid var(--border,#e2e8f0);background-color:#0000;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}body.dark .bvs-surface-header{border-bottom-color:#ffffff14}.bvs-surface-footer{border-top:1px solid var(--border,#e2e8f0);background-color:#00000004;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}body.dark .bvs-surface-footer{background-color:#ffffff05;border-top-color:#ffffff14}.panel-heading,.panel-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.panel-heading h2,.panel-header h2{color:var(--text);margin:0;font-size:1.125rem;font-weight:600}.panel-heading p,.panel-header p{color:var(--muted);margin-top:4px;margin-bottom:0;font-size:.875rem}.panel-link,.panel-period{color:var(--accent);cursor:pointer;transition:opacity var(--transition-speed) ease;background:0 0;border:none;font-size:.875rem;font-weight:600}.panel-link:hover,.panel-period:hover{opacity:.8}.scan-chart,.chart-area{justify-content:space-between;align-items:flex-end;gap:16px;height:250px;padding-top:16px;display:flex}.chart-column{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:12px;height:100%;display:flex}.chart-value{color:var(--text);font-size:.8125rem;font-weight:600}.chart-bar-area,.chart-bar-wrapper{background:var(--bg);border-radius:var(--radius-md);width:100%;height:100%;box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);justify-content:center;align-items:flex-end;padding:0 4px;display:flex;overflow:hidden}.chart-bar{background-color:var(--accent);border-radius:var(--radius-sm) var(--radius-sm) 0 0;width:100%;max-width:32px;min-height:8px;box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);transition:height .5s ease-out}.chart-label{color:var(--muted);font-size:.75rem}.activity-list{flex-direction:column;padding-right:8px;display:flex;overflow-y:auto}.activity-item{border-bottom:1px solid var(--border);align-items:flex-start;gap:16px;padding:16px 0;display:flex}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-icon{border-radius:var(--radius-sm);background:var(--surface);width:40px;height:40px;box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);flex-shrink:0;justify-content:center;align-items:center;font-size:1.125rem;display:flex}.activity-icon.success,.activity-icon.completed{color:var(--success)}.activity-icon.warning,.activity-icon.pending{color:var(--accent)}.activity-icon.error,.activity-icon.failed{color:var(--danger)}.activity-icon.info{color:var(--text)}.activity-content,.activity-details{flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.activity-content strong,.activity-details strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:.875rem;font-weight:600;overflow:hidden}.activity-content span,.activity-details span{color:var(--muted);font-size:.8125rem}.activity-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.activity-meta strong,.activity-status{text-transform:uppercase;margin-bottom:2px;font-size:.75rem;font-weight:600}.activity-meta strong.success,.activity-status.success{color:var(--success)}.activity-meta strong.warning,.activity-status.warning{color:var(--accent)}.activity-meta strong.error,.activity-status.error,.activity-meta strong.failed,.activity-status.failed{color:var(--danger)}.activity-meta span{color:var(--muted);font-size:.75rem}button,.button-primary,.btn-primary{font-family:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.btn-primary,.button-primary{background-color:var(--accent);color:var(--text-inverse);cursor:pointer;transition:all var(--transition-speed) ease;border:none;border-radius:9999px;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #f9731647}.btn-primary:hover,.button-primary:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f9731661}.btn-primary:active,.button-primary:active{transform:translateY(0);box-shadow:0 2px 4px #f9731633}.btn-outline{background-color:var(--surface);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-speed) ease;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);border:none;align-items:center;gap:8px;padding:8px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-outline:hover{color:var(--accent)}.btn-outline:active{box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light)}@media (width<=1440px){.dashboard-grid{grid-template-columns:1fr}}@media (width<=1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=1024px){.app-shell{flex-direction:column}.sidebar{z-index:1000;width:260px;height:100vh;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar-visible{width:260px;transform:translate(0)}.sidebar-hidden{pointer-events:none}.page-content{padding:0 24px 24px}.topbar{padding:16px 24px}.mobile-menu-button{display:flex}.sidebar-toggle,.topbar-user{display:none}}@media (width<=768px){.topbar{padding:16px 24px}}@media (width<=420px){.stats-grid{grid-template-columns:1fr}.topbar{min-height:64px;padding:12px 16px}.page-content{padding:0 16px 16px}.page-heading h1{font-size:1.5rem}.stat-card,.dashboard-panel{padding:20px}.stat-card-value{font-size:1.75rem}.chart-bar-area{height:150px}}@media (width<=320px){.page-content{padding:0 12px 12px}.topbar-title{font-size:1rem}.topbar-actions{gap:8px}.topbar-icon-button{width:32px;height:32px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.dashboard-page{flex-direction:column;gap:24px;display:flex}.workspace-context-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.context-left{align-items:center;gap:12px;display:flex}.context-icon{background:var(--surface);border-radius:var(--radius-sm);width:28px;height:28px;box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.context-name{font-size:.875rem;font-weight:600}.context-badge{background:var(--surface);box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);color:var(--muted);text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:.65rem}.floor-dropdown-container{display:inline-block;position:relative}.floor-dropdown-trigger{background:var(--surface);height:38px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);border:1px solid #fff9;border-radius:9999px;align-items:center;gap:8px;padding:0 16px;font-size:.875rem;font-weight:500;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.floor-dropdown-trigger:hover{color:var(--text);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);transform:translateY(-1px)}.floor-dropdown-trigger.open,.floor-dropdown-trigger:active{box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);border-color:#f973164d;transform:translateY(0)}.floor-dropdown-trigger .dropdown-trigger-icon{color:var(--accent);flex-shrink:0}.floor-dropdown-trigger .dropdown-chevron{color:var(--muted);flex-shrink:0;transition:transform .25s}.floor-dropdown-trigger .dropdown-chevron.rotated{color:var(--accent);transform:rotate(180deg)}.floor-dropdown-menu{background:var(--surface);min-width:190px;box-shadow:6px 6px 16px var(--shadow-dark), -6px -6px 16px var(--shadow-light), 0 10px 25px #00000014;z-index:1000;border:1px solid #fffc;border-radius:16px;flex-direction:column;gap:3px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) dropdownFadeIn;display:flex;position:absolute;top:calc(100% + 8px);right:0}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.floor-dropdown-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;width:100%;padding:9px 12px;font-size:.8125rem;font-weight:500;transition:all .15s;display:flex}.floor-dropdown-item:hover{background:var(--surface-hover)}.floor-dropdown-item.active{color:var(--accent);box-shadow:inset 1px 1px 2px var(--shadow-dark), inset -1px -1px 2px var(--shadow-light);background:#f973161f;font-weight:600}.floor-item-content{align-items:center;gap:8px;display:flex}.floor-item-dot{background:var(--muted);border-radius:50%;width:6px;height:6px;transition:all .2s}.floor-dropdown-item.active .floor-item-dot{background:var(--accent);box-shadow:0 0 6px #f9731699}.floor-item-check{color:var(--accent);flex-shrink:0}.floor-selector{background:var(--surface);color:var(--text);box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);cursor:pointer;border:1px solid #fff9;border-radius:9999px;outline:none;padding:8px 16px;font-size:.875rem;font-weight:500;transition:all .2s}.floor-selector:hover,.floor-selector:focus{border-color:var(--accent);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light)}.bvs-select-container.full-width{width:100%;display:block;position:relative}.bvs-select-container.full-width .floor-dropdown-trigger{justify-content:space-between;width:100%}.bvs-select-container.full-width .floor-dropdown-menu{z-index:40;width:100%;min-width:100%;left:0;right:0}.bvs-select-container.bvs-select-form .floor-dropdown-trigger{border:1px solid var(--border,#cbd5e1);background:var(--bg,#f8fafc);height:auto;min-height:40px;box-shadow:none;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:500}.bvs-select-container.bvs-select-form .floor-dropdown-trigger:hover{box-shadow:none;border-color:var(--accent,#f97316);transform:none}.bvs-select-container.bvs-select-form .floor-dropdown-trigger.open,.bvs-select-container.bvs-select-form .floor-dropdown-trigger:active{background:var(--surface,#fff);border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.bvs-select-container.bvs-select-form .floor-dropdown-trigger.is-placeholder .dropdown-trigger-label{color:var(--muted,#94a3b8)}.filter-select-dropdown{min-width:140px}.floor-dropdown-container.align-left .floor-dropdown-menu,.bvs-select-container.align-left .floor-dropdown-menu{left:0;right:auto}.floor-dropdown-container.align-right .floor-dropdown-menu,.bvs-select-container.align-right .floor-dropdown-menu{left:auto;right:0}.bvs-dropdown-left-content{align-items:center;gap:8px;min-width:0;display:inline-flex;overflow:hidden}.floor-dropdown-trigger .dropdown-trigger-label{white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.bvs-select-container.full-width .floor-dropdown-trigger .dropdown-trigger-label{max-width:calc(100% - 24px)}.floor-dropdown-trigger:disabled,.floor-dropdown-trigger.disabled{opacity:.55;cursor:not-allowed;pointer-events:none;box-shadow:none}.floor-dropdown-trigger:focus-visible,.floor-dropdown-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.floor-dropdown-item.highlighted{background:var(--surface-hover)}.floor-dropdown-item.item-disabled{opacity:.45;cursor:not-allowed}.floor-item-icon{color:var(--muted);flex-shrink:0}.floor-dropdown-item.active .floor-item-icon{color:var(--accent)}.floor-item-badge{background:var(--surface-hover);color:var(--muted);border-radius:9999px;margin-left:6px;padding:1px 6px;font-size:10.5px}.bvs-dropdown-search-wrap{border-bottom:1px solid var(--border);align-items:center;margin-bottom:4px;padding:4px 6px 8px;display:flex;position:relative}.bvs-dropdown-search-icon{color:var(--muted);pointer-events:none;position:absolute;left:14px}.bvs-dropdown-search-input{border:1px solid var(--border);background:var(--surface-hover);width:100%;height:30px;color:var(--text);border-radius:9999px;outline:none;padding:0 24px 0 28px;font-size:12px;transition:border-color .15s}.bvs-dropdown-search-input:focus{border-color:var(--accent)}.bvs-dropdown-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;display:flex;position:absolute;right:14px}.bvs-dropdown-items-scroll{flex-direction:column;gap:3px;max-height:240px;display:flex;overflow-y:auto}.bvs-dropdown-items-scroll::-webkit-scrollbar{width:5px}.bvs-dropdown-items-scroll::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}body.dark .bvs-dropdown-items-scroll::-webkit-scrollbar-thumb{background:#ffffff26}.bvs-dropdown-empty{text-align:center;color:var(--muted);padding:12px;font-size:12px}select.form-input,select.cute-input,select.form-field-input,select.filter-select,select.floor-selector,select.select-input,.modal-form select,.form-group select{box-sizing:border-box;background-color:var(--surface);height:38px;color:var(--text);box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);appearance:none;cursor:pointer;-webkit-user-select:none;user-select:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid #fff9;border-radius:9999px;padding:0 36px 0 16px;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1)}select.form-input:hover,select.cute-input:hover,select.form-field-input:hover,select.filter-select:hover,select.floor-selector:hover,select.select-input:hover,.modal-form select:hover,.form-group select:hover{color:var(--text);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);transform:translateY(-1px)}select.form-input:focus,select.cute-input:focus,select.form-field-input:focus,select.filter-select:focus,select.floor-selector:focus,select.select-input:focus,.modal-form select:focus,.form-group select:focus{box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);border-color:#f973164d;outline:none;transform:translateY(0)}select.form-input:disabled,select.cute-input:disabled,select.form-field-input:disabled,select.filter-select:disabled,select.floor-selector:disabled,select.select-input:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.filter-dropdown-pill,.filter-pill-dropdown{background:var(--surface);height:38px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);border:1px solid #fff9;border-radius:9999px;align-items:center;padding:0 34px;font-size:.875rem;font-weight:500;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.filter-dropdown-pill:hover,.filter-pill-dropdown:hover{color:var(--text);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);transform:translateY(-1px)}.filter-dropdown-pill:focus-within,.filter-dropdown-pill:active,.filter-pill-dropdown:focus-within,.filter-pill-dropdown:active{box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);border-color:#f973164d;transform:translateY(0)}.filter-dropdown-pill .pill-icon,.filter-pill-dropdown .pill-icon{pointer-events:none;color:var(--accent);flex-shrink:0;position:absolute;left:14px}.filter-dropdown-pill .pill-chevron,.filter-pill-dropdown .pill-chevron{pointer-events:none;color:var(--muted);flex-shrink:0;transition:transform .25s;position:absolute;right:14px}.filter-dropdown-pill:focus-within .pill-chevron,.filter-pill-dropdown:focus-within .pill-chevron{color:var(--accent);transform:rotate(180deg)}.filter-dropdown-pill select,.filter-pill-dropdown select{appearance:none;color:var(--text);cursor:pointer;background:0 0;border:none;outline:none;width:100%;padding:0 4px;font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;box-shadow:none!important;background-image:none!important}.filter-dropdown-pill select option,.filter-pill-dropdown select option{background:var(--surface);color:var(--text);padding:8px 12px}body.dark select.form-input,body.dark select.cute-input,body.dark select.form-field-input,body.dark select.filter-select,body.dark select.floor-selector,body.dark select.select-input,body.dark .modal-form select,body.dark .form-group select{color:#f1f5f9;background-color:#25272c;border-color:#ffffff14;box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff0d}body.dark select.form-input:hover,body.dark select.cute-input:hover,body.dark select.form-field-input:hover,body.dark select.filter-select:hover,body.dark select.floor-selector:hover,body.dark select.select-input:hover,body.dark .modal-form select:hover,body.dark .form-group select:hover{border-color:#f9731666;box-shadow:0 6px 16px #00000073}body.dark select.form-input:focus,body.dark select.cute-input:focus,body.dark select.form-field-input:focus,body.dark select.filter-select:focus,body.dark select.floor-selector:focus,body.dark select.select-input:focus,body.dark .modal-form select:focus,body.dark .form-group select:focus{background:#25272c;border-color:#f9731680;box-shadow:inset 1px 1px 3px #00000080}body.dark .filter-dropdown-pill,body.dark .filter-pill-dropdown{background:#25272c;border-color:#ffffff14;box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff0d}body.dark .filter-dropdown-pill:hover,body.dark .filter-pill-dropdown:hover{border-color:#f9731666;box-shadow:0 6px 16px #00000073}body.dark .filter-dropdown-pill:focus-within,body.dark .filter-dropdown-pill:active,body.dark .filter-pill-dropdown:focus-within,body.dark .filter-pill-dropdown:active{background:#25272c;border-color:#f9731680;box-shadow:inset 1px 1px 3px #00000080}body.dark .filter-dropdown-pill select,body.dark .filter-pill-dropdown select{color:var(--text,#f1f5f9)}body.dark .filter-dropdown-pill select option,body.dark .filter-pill-dropdown select option{color:#f1f5f9;background:#25282f}body.dark .floor-selector{color:var(--text);background:#25272c;border:1px solid #ffffff14;box-shadow:0 4px 12px #00000059}.setup-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.setup-card{background:var(--surface);border-radius:var(--radius-md);text-align:left;box-shadow:4px 4px 8px var(--shadow-dark), -4px -4px 8px var(--shadow-light);flex-direction:column;gap:12px;padding:20px;display:flex}.setup-card h2{margin:0;font-size:1.1rem}.setup-card p{color:var(--muted);margin:0;font-size:.9rem}.setup-card .form-input{border-radius:var(--radius-sm);background:var(--bg);width:100%;color:var(--text);border:none;padding:10px 12px}.setup-card-button{cursor:pointer;color:inherit;font:inherit;border:0}.setup-card-button:hover{transform:translateY(-1px)}.empty-catalog{flex-direction:column;align-items:flex-start;gap:8px;padding:32px 8px;display:flex}.empty-catalog h3{margin:0}.empty-catalog p{color:var(--muted);margin:0 0 8px}.dashboard-heading-section{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.heading-content{flex-direction:column;display:flex}.eyebrow{color:var(--muted);letter-spacing:.05em;margin-bottom:8px;font-size:.75rem;font-weight:600}.heading-content h1{margin:0 0 4px;font-size:1.75rem;font-weight:700}.heading-content p{color:var(--muted);margin:0;font-size:.875rem}.heading-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.heading-actions .floor-dropdown-container{align-items:center;display:inline-flex}.heading-actions .floor-dropdown-trigger,.heading-actions .btn-primary,.heading-actions .btn-secondary{box-sizing:border-box;white-space:nowrap;vertical-align:middle;border-radius:9999px;justify-content:center;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:.875rem;font-weight:500;line-height:1;display:inline-flex}.heading-actions .btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:2px 2px 5px var(--shadow-dark), -2px -2px 5px var(--shadow-light);transition:all var(--transition-speed) ease}.heading-actions .btn-secondary:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-hover,var(--border));transform:translateY(-1px)}.heading-actions .btn-primary{background:var(--accent);color:#fff;transition:all var(--transition-speed) ease;border:none;font-weight:600;box-shadow:0 2px 8px #f9731647}.heading-actions .btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #f9731661}.status-indicator{align-items:center;gap:8px;display:flex}.status-text{color:var(--text);font-size:.875rem;font-weight:600}.dashboard-grid{gap:24px;display:grid}.main-panels{grid-template-columns:2fr 1fr}.lower-panels{grid-template-columns:1fr 1fr}.production-overview-panel{flex-direction:column;justify-content:space-between;display:flex}.production-flow-container{margin:16px 0;padding:16px 0;overflow-x:auto}.production-flow{justify-content:space-between;align-items:center;min-width:600px;display:flex}.flow-stage{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.stage-icon-container{background:var(--surface);width:48px;height:48px;box-shadow:4px 4px 8px var(--shadow-dark), -4px -4px 8px var(--shadow-light);color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.stage-name{font-size:.875rem;font-weight:600}.stage-count{color:var(--muted);font-size:.75rem}.flow-connector{color:var(--muted);opacity:.5}.production-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.footer-left{align-items:center;gap:8px;display:flex}.footer-status-text{font-size:.875rem;font-weight:600}.footer-badge{background:var(--surface);border-radius:var(--radius-sm);box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);color:var(--muted);padding:2px 8px;font-size:.75rem}.footer-right{color:var(--muted);font-size:.75rem}.scanner-action-card{justify-content:center;position:relative;overflow:hidden}.scanner-card-bg{color:var(--accent);position:absolute;top:-20px;right:-20px}.scanner-card-content{z-index:1;flex-direction:column;gap:12px;display:flex;position:relative}.scanner-eyebrow{color:var(--muted);font-size:.75rem;font-weight:700}.scanner-heading{margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.scanner-desc{color:var(--muted);margin-bottom:12px;font-size:.875rem}.scanner-link{color:var(--accent);align-self:flex-start;font-size:.875rem;font-weight:700}.scanner-link:hover{text-decoration:underline}.snapshot-list{flex-direction:column;gap:12px;display:flex}.snapshot-item{background:var(--surface);border-radius:var(--radius-sm);box-shadow:inset 2px 2px 4px var(--shadow-dark), inset -2px -2px 4px var(--shadow-light);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.snapshot-label{color:var(--text);font-size:.875rem}.snapshot-value{font-size:.875rem;font-weight:700}@media (width<=1024px){.main-panels{grid-template-columns:1fr}}@media (width<=768px){.dashboard-heading-section{flex-direction:column;align-items:flex-start;gap:16px}.lower-panels{grid-template-columns:1fr}.workspace-context-row{flex-direction:column;align-items:flex-start;gap:12px}.heading-actions{gap:10px;width:100%}}@media (width<=520px){.heading-actions{flex-direction:column;align-items:stretch;gap:8px;width:100%}.heading-actions .floor-dropdown-container,.heading-actions .floor-dropdown-trigger,.heading-actions .btn-primary,.heading-actions .btn-secondary{justify-content:center;width:100%}}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-speed) ease;border:none;padding:10px 20px;font-size:.875rem;font-weight:500;box-shadow:0 1px 2px #0000000d}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-speed) ease;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:500;display:flex;box-shadow:0 1px 2px #0000000d}.btn-secondary:hover{background:var(--surface-hover);transform:translateY(-1px);box-shadow:0 4px 6px #00000014}.btn-secondary:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.btn-table-action{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:.875rem;font-weight:600}.btn-table-action:hover{text-decoration:underline}.btn-close-icon{color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-close-icon:hover{color:var(--text)}.table-actions{align-items:center;gap:16px;display:flex}.search-box{background:var(--surface);border:1px solid var(--border);color:var(--muted);box-sizing:border-box;border-radius:9999px;align-items:center;gap:8px;height:38px;padding:6px 14px;transition:all .2s;display:flex}.search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #f9731626}.search-box input{color:var(--text);background:0 0;border:none;outline:none;width:250px;font-size:.875rem}.toolbar-pills-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.toolbar-filter-pill{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:9999px;justify-content:center;align-items:center;gap:6px;height:36px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .18s;display:inline-flex}body.dark .toolbar-filter-pill{color:#e2e8f0;background:#25272c;border-color:#ffffff14}.toolbar-filter-pill:hover{background:var(--surface-hover);border-color:var(--border-hover,#cbd5e1)}body.dark .toolbar-filter-pill:hover{background:#2d3036}.toolbar-filter-pill.active{background:var(--accent,#f97316);color:#fff;border-color:#0000;box-shadow:0 2px 6px #f973164d}body.dark .toolbar-filter-pill.active{background:var(--accent,#f97316);color:#fff}.toolbar-pill-count{color:var(--muted);margin-left:2px;font-size:11.5px;font-weight:700}.toolbar-filter-pill.active .toolbar-pill-count{color:#fff;background:#ffffff47;border-radius:9999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 6px;display:inline-flex}.toolbar-select-pill{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:9999px;align-items:center;gap:6px;height:36px;padding:0 12px;transition:all .18s;display:inline-flex;position:relative}body.dark .toolbar-select-pill{color:#e2e8f0;background:#25272c;border-color:#ffffff14}.toolbar-select-pill:hover{border-color:var(--border-hover,#cbd5e1);background:var(--surface-hover)}body.dark .toolbar-select-pill:hover{background:#2d3036}.toolbar-select-pill .pill-icon{color:var(--muted);flex-shrink:0}.toolbar-select-pill select{color:var(--text);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;padding-right:4px;font-family:inherit;font-size:13px;font-weight:600}body.dark .toolbar-select-pill select{color:#e2e8f0}.toolbar-select-pill select option{background:var(--surface);color:var(--text)}body.dark .toolbar-select-pill select option{color:#f1f5f9;background:#25272c}.toolbar-select-pill .pill-chevron{color:var(--muted);pointer-events:none;flex-shrink:0}.toolbar-action-pill{background:var(--surface);border:1px solid var(--border);height:36px;color:var(--text);cursor:pointer;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .18s;display:inline-flex}body.dark .toolbar-action-pill{color:#e2e8f0;background:#25272c;border-color:#ffffff14}.toolbar-action-pill:hover{background:var(--surface-hover);border-color:var(--border-hover,#cbd5e1)}body.dark .toolbar-action-pill:hover{background:#2d3036}.products-controls-toolbar,.inventory-controls-toolbar{background-color:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);box-shadow:3px 3px 8px var(--shadow-dark), -3px -3px 8px var(--shadow-light);border-radius:9999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:8px 14px;display:flex}body.dark .products-controls-toolbar,body.dark .inventory-controls-toolbar{background-color:#1e2024;border-color:#ffffff14;box-shadow:3px 3px 8px #0006,-3px -3px 8px #ffffff05}.products-controls-toolbar .controls-left,.inventory-controls-toolbar .controls-left{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.products-controls-toolbar .controls-right,.inventory-controls-toolbar .controls-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.products-controls-toolbar .search-field-wrapper,.inventory-controls-toolbar .search-field-wrapper{align-items:center;display:inline-flex;position:relative}.products-controls-toolbar .search-field-wrapper input,.inventory-controls-toolbar .search-field-wrapper input{border:1px solid var(--border,#e2e8f0);background-color:var(--surface,#fff);height:38px;color:var(--text,#0f172a);border-radius:9999px;outline:none;width:260px;padding:0 34px 0 38px;font-size:13px;transition:all .2s}body.dark .products-controls-toolbar .search-field-wrapper input,body.dark .inventory-controls-toolbar .search-field-wrapper input{color:#f1f5f9;background-color:#25272c;border-color:#ffffff14}.products-controls-toolbar .search-field-wrapper input:focus,.inventory-controls-toolbar .search-field-wrapper input:focus{border-color:var(--accent,#f97316);box-shadow:0 0 0 3px #f9731626}.products-controls-toolbar .search-field-wrapper .search-icon,.inventory-controls-toolbar .search-field-wrapper .search-icon{pointer-events:none;color:var(--muted,#94a3b8);position:absolute;left:14px}.products-controls-toolbar .search-field-wrapper .search-clear-btn,.inventory-controls-toolbar .search-field-wrapper .search-clear-btn{cursor:pointer;color:var(--muted,#94a3b8);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex;position:absolute;right:10px}.products-grid-view,.inventory-grid-view{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;padding:18px;display:grid}.bvs-entity-card{background:var(--surface,#fff);border:1px solid var(--border,#e4e9f0);border-radius:16px;flex-direction:column;gap:0;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:3px 3px 8px #0000000d,-2px -2px 6px #ffffffb3}.bvs-entity-card:hover{border-color:#f9731673;transform:translateY(-3px);box-shadow:0 8px 24px #0000001a}body.dark .bvs-entity-card{background:#1e2126;border-color:#ffffff12;box-shadow:3px 3px 10px #0006,-2px -2px 6px #ffffff05}body.dark .bvs-entity-card:hover{border-color:#f9731680;box-shadow:0 8px 28px #0000008c}.bvs-entity-card:before{content:"";background:var(--card-accent,var(--accent,#f97316));border-radius:16px 0 0 16px;width:4px;position:absolute;top:0;bottom:0;left:0}.bvs-entity-card.product-card{--card-accent:#f97316}.bvs-entity-card.archived-card,.bvs-entity-card.archived-product-card{--card-accent:#10b981}.bvs-entity-card.batch-card{--card-accent:#3b82f6}.bvs-entity-card.box-card{--card-accent:#0d9488}.bvs-entity-card.catalog-card,.bvs-entity-card.catalog-card-entity{--card-accent:#3b82f6}.bvs-entity-card.floor-card{--card-accent:#64748b}.bvs-entity-card.catalog-card .entity-card-type-icon{color:#3b82f6}.bvs-entity-card.archived-card .entity-card-type-icon,.bvs-entity-card.archived-product-card .entity-card-type-icon{color:#10b981}.bvs-entity-card.archived-card:before{background:#10b981!important}.bvs-entity-card.catalog-card:hover{border-color:#3b82f673}.bvs-entity-card.archived-card:hover,.bvs-entity-card.archived-product-card:hover{border-color:#10b98173}body.dark .bvs-entity-card.catalog-card:hover{border-color:#3b82f68c}body.dark .bvs-entity-card.archived-card:hover,body.dark .bvs-entity-card.archived-product-card:hover{border-color:#10b9818c}.bvs-entity-card .entity-card-header{justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 14px 10px 18px;display:flex}.bvs-entity-card .entity-title-group{flex-direction:column;gap:3px;min-width:0;display:flex}.bvs-entity-card .entity-card-type-icon{color:var(--card-accent,var(--accent,#f97316));text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:2px;font-size:11px;font-weight:600;display:flex}.bvs-entity-card .entity-card-title{color:var(--text,#0f172a);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14.5px;font-weight:700;line-height:1.3;overflow:hidden}.bvs-entity-card .entity-card-subtitle{color:var(--muted,#94a3b8);letter-spacing:.3px;margin-top:1px;font-family:Courier New,monospace;font-size:11px}.bvs-entity-card .entity-card-body{border-top:1px solid var(--border,#e4e9f0);flex-direction:column;flex-grow:1;gap:0;padding:6px 14px 10px 18px;display:flex}body.dark .bvs-entity-card .entity-card-body{border-top-color:#ffffff0f}.bvs-entity-card .entity-meta-row{border-bottom:1px dashed var(--border,#e4e9f0);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.bvs-entity-card .entity-meta-row:last-child{border-bottom:none}body.dark .bvs-entity-card .entity-meta-row{border-bottom-color:#ffffff0d}.bvs-entity-card .entity-meta-label{text-transform:uppercase;letter-spacing:.5px;color:var(--muted,#94a3b8);flex-shrink:0;font-size:11px;font-weight:600}.bvs-entity-card .entity-meta-val{color:var(--text,#0f172a);text-align:right;white-space:nowrap;text-overflow:ellipsis;max-width:60%;font-size:12.5px;font-weight:600;overflow:hidden}.inventory-qty-hero{background:var(--bg,#f8fafc);border:1px solid var(--border,#e4e9f0);border-radius:10px;justify-content:space-between;align-items:center;margin:6px 0 4px;padding:8px 10px;display:flex}body.dark .inventory-qty-hero{background:#25282f;border-color:#ffffff0f}.inventory-qty-hero .qty-value{color:var(--text,#0f172a);font-size:22px;font-weight:800;line-height:1}.inventory-qty-hero .qty-uom{color:var(--muted,#94a3b8);margin-left:4px;font-size:11.5px;font-weight:600}.inventory-qty-hero .qty-stepper-wrap{align-items:center;gap:4px;display:flex}.bvs-entity-card .entity-card-footer{border-top:1px solid var(--border,#e4e9f0);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px 12px 18px;display:flex}body.dark .bvs-entity-card .entity-card-footer{border-top-color:#ffffff0f}.bvs-entity-card .entity-card-footer .btn-table-action,.bvs-entity-card .entity-card-footer .btn-secondary{border:1px solid var(--border,#e4e9f0);background:var(--surface,#fff);height:30px;color:var(--text,#0f172a);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:0 12px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.bvs-entity-card .entity-card-footer .btn-table-action:hover,.bvs-entity-card .entity-card-footer .btn-secondary:hover{border-color:var(--accent,#f97316);color:var(--accent,#f97316);background:#f973160d}body.dark .bvs-entity-card .entity-card-footer .btn-table-action,body.dark .bvs-entity-card .entity-card-footer .btn-secondary{color:#e2e8f0;background:#25282f;border-color:#ffffff1a}body.dark .bvs-entity-card .entity-card-footer .btn-table-action:hover,body.dark .bvs-entity-card .entity-card-footer .btn-secondary:hover{color:#fb923c;background:#f9731614;border-color:#f9731699}.bvs-entity-card .entity-card-footer .btn-card-manage{color:var(--accent,#f97316);background:#f9731614;border-color:#f973164d;margin-left:auto}.bvs-entity-card .entity-card-footer .btn-card-manage:hover{background:var(--accent,#f97316);color:#fff;border-color:var(--accent,#f97316)}body.dark .bvs-entity-card .entity-card-footer .btn-card-manage{color:#fb923c;background:#f973161a;border-color:#f9731659}.bvs-entity-card .entity-card-footer .btn-icon-only{border:1px solid var(--border,#e4e9f0);background:var(--surface,#fff);width:30px;height:30px;color:var(--muted,#94a3b8);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.bvs-entity-card .entity-card-footer .btn-icon-only:hover{border-color:var(--accent,#f97316);color:var(--accent,#f97316)}body.dark .bvs-entity-card .entity-card-footer .btn-icon-only{color:#94a3b8;background:#25282f;border-color:#ffffff1a}.btn-icon-stepper{border:1px solid var(--border,#e4e9f0);background:var(--surface,#fff);width:26px;height:26px;color:var(--text,#0f172a);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:15px;font-weight:700;transition:all .15s;display:flex}body.dark .btn-icon-stepper{color:#f1f5f9;background:#1e2126;border-color:#ffffff1f}.btn-icon-stepper:hover:not(:disabled){background:var(--accent,#f97316);color:#fff;border-color:var(--accent,#f97316)}.btn-icon-stepper:disabled{opacity:.35;cursor:not-allowed}.bvs-entity-card.selected{border-color:#f9731680;box-shadow:0 0 0 2px #f9731626,3px 3px 8px #0000000f}body.dark .bvs-entity-card.selected{border-color:#f9731699;box-shadow:0 0 0 2px #f9731633,3px 3px 10px #0006}.table-responsive{overflow-x:auto}.bvs-table{border-collapse:collapse;text-align:left;width:100%}.bvs-table th{color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--border);padding:12px 16px;font-size:.75rem;font-weight:600}.bvs-table td{color:var(--text);border-bottom:1px solid var(--border);padding:16px;font-size:.875rem}.bvs-table tbody tr:hover{background:var(--surface-hover)}.code-text{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.8rem}.status-badge{border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600}.status-active{color:#065f46;background-color:#d1fae5}.status-review{color:#9a3412;background-color:#ffedd5}.status-inactive{color:#374151;background-color:#f3f4f6}body.dark .status-active{color:#34d399;background-color:#10b98133}body.dark .status-review{color:#fb923c;background-color:#f9731633}body.dark .status-inactive{color:#9ca3af;background-color:#6b728033}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:600px;padding:32px;box-shadow:0 10px 25px #0003}.modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal-header h2{font-size:1.5rem;font-weight:700}.modal-form{flex-direction:column;gap:16px;display:flex}.form-row{gap:16px;display:flex}.form-row .form-group{flex:1}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text);font-size:.875rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);outline:none;padding:10px 14px;font-family:inherit;font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #f9731633}.modal-footer{justify-content:flex-end;gap:16px;margin-top:16px;display:flex}.toast-notification{background:var(--surface);color:var(--text);border-radius:var(--radius-md);box-shadow:5px 5px 10px var(--shadow-dark), -5px -5px 10px var(--shadow-light);border-left:4px solid var(--success);z-index:1100;align-items:center;gap:12px;padding:16px 24px;font-weight:600;animation:.3s ease-out slideUp;display:flex;position:fixed;bottom:32px;right:32px}.toast-notification svg{color:var(--success)}.select-input{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:8px 16px;font-family:inherit;font-size:.875rem;transition:all .2s}.select-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #f9731633}.btn-icon-only{color:var(--muted);cursor:pointer;transition:all var(--transition-speed) ease;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.btn-icon-only:hover{color:var(--accent);background:var(--surface-hover)}.dropdown-menu{background:var(--surface);border-radius:var(--radius-sm);z-index:100;border:1px solid var(--border);flex-direction:column;min-width:160px;margin-top:8px;display:flex;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:5px 5px 15px #0000001a}body.dark .dropdown-menu{box-shadow:5px 5px 15px #00000080}.dropdown-menu button{text-align:left;color:var(--text);cursor:pointer;transition:background var(--transition-speed) ease;background:0 0;border:none;padding:12px 16px;font-size:.875rem}.dropdown-menu button:hover{background:var(--surface-hover)}.dropdown-divider{background:var(--border);height:1px;margin:4px 0}.text-danger{color:var(--danger)!important}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-speed) ease;border:none;padding:10px 20px;font-size:.875rem;font-weight:500;box-shadow:0 1px 2px #0000000d}.btn-danger:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.btn-danger:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.status-success{color:#065f46;background-color:#d1fae5}.status-warning{color:#92400e;background-color:#fef3c7}.status-danger{color:#b91c1c;background-color:#fee2e2}body.dark .status-success{color:#34d399;background-color:#10b98133}body.dark .status-warning{color:#fbbf24;background-color:#f59e0b33}body.dark .status-danger{color:#f87171;background-color:#ef444433}.modal-sm{max-width:400px}h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:700}button,input,select,textarea,optgroup{font-family:inherit}button{font-weight:500}label{font-family:inherit;font-weight:500}
