:root{--fg-primary:#0f6ad8;--fg-primary-strong:#0b52a7;--fg-primary-soft:#e8f2ff;--fg-accent:#0ea5e9;--fg-surface:#fff;--fg-surface-muted:#f3f5f9;--fg-border:#d9e2ec;--fg-text:#0f172a;--fg-muted:#6b7280;--fg-radius:12px;--fg-shadow:0 14px 40px rgba(15,106,216,.08);--fg-navbar-height:64px;--fg-sidebar-width:260px;--fg-sidebar-collapsed:72px}body{background-color:var(--fg-surface-muted);color:var(--fg-text);font-size:.95rem;margin:0;padding-top:var(--fg-navbar-height)}.card{background-color:var(--fg-surface);border:1px solid var(--fg-border);border-radius:var(--fg-radius);box-shadow:var(--fg-shadow)}.btn,.dropdown-item,.navbar .nav-link{font-size:.9rem;padding:.4rem .75rem}.btn-primary{background-color:var(--fg-primary);border-color:var(--fg-primary)}.btn-primary:hover{background-color:var(--fg-primary-strong);border-color:var(--fg-primary-strong)}.dropdown-menu{border:1px solid var(--fg-border);border-radius:var(--fg-radius);box-shadow:var(--fg-shadow)}.text-danger{color:#dc3545!important}#sidebar-wrapper{background:linear-gradient(180deg,#f6f9ff,#f1f5ff 35%,#ecf3ff);border-right:1px solid var(--fg-border);height:100vh;left:0;overflow-y:auto;padding:1rem 1rem 2rem;position:fixed;top:0;transition:width .2s ease,padding .2s ease;width:var(--fg-sidebar-width);z-index:1050}#sidebar-wrapper .sidebar-heading{align-items:center;background:hsla(0,0%,100%,.7);border:1px solid rgba(37,99,235,.14);border-radius:12px;color:var(--fg-primary);display:flex;flex-wrap:nowrap;font-weight:700;gap:.35rem;justify-content:space-between;padding:.5rem .55rem}#sidebar-wrapper .sidebar-heading small{color:var(--fg-muted);font-weight:500;line-height:1.1}#sidebar-wrapper .sidebar-logo{border-radius:10px;height:32px;width:32px}.sidebar-title-block{align-items:flex-start;display:flex;flex-direction:column;line-height:1.1;min-width:0}#sidebar-wrapper .sidebar-collapse-btn{align-items:center;background:transparent;border:none;border-radius:8px;box-shadow:none;display:inline-flex;height:30px;justify-content:center;min-width:30px;padding:0;width:30px}#sidebar-wrapper .sidebar-collapse-btn:focus,#sidebar-wrapper .sidebar-collapse-btn:hover{background:transparent;box-shadow:none;color:var(--fg-primary)}#sidebar-wrapper .list-group-item{background:transparent;border:none;border-radius:10px;color:var(--fg-text);padding:.65rem .75rem}#sidebar-wrapper .list-group-item i{color:var(--fg-primary);text-align:center;width:18px}#sidebar-wrapper .list-group-item:focus{box-shadow:none}#sidebar-wrapper .list-group-item+.list-group-item{margin-top:.35rem}#sidebar-wrapper .sidebar-heading+.list-group{margin-top:.75rem}#sidebar-wrapper .list-group-item.ps-5{background:transparent;border:1px solid var(--fg-border);border-radius:10px}#sidebar-wrapper .list-group-item.ps-5:hover{background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.25)}#sidebar-wrapper .list-group-item-action.active{background-color:rgba(37,99,235,.12)!important;border:1px solid rgba(37,99,235,.18);border-radius:10px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.6);color:var(--fg-primary)!important;font-weight:600}#sidebar-wrapper .list-group-item-action:hover{background-color:var(--fg-primary-soft);color:var(--fg-primary)}.sidebar-category-title{background-color:var(--fg-surface-muted)!important;color:var(--fg-text)!important;font-size:.95rem;font-weight:600}.list-group-item-action.active{background-color:rgba(37,99,235,.12)!important;border:1px solid rgba(37,99,235,.18);border-radius:10px;color:var(--fg-primary)!important;font-weight:600}.list-group-item-action:hover{background-color:var(--fg-primary-soft);color:var(--fg-primary)}.sidebar-item-text{align-items:center;display:inline-flex;gap:.5rem}.sidebar-section-label{color:var(--fg-muted);font-size:.75rem;letter-spacing:.4px;padding:.4rem .25rem;text-transform:uppercase}.main-content{margin-left:var(--fg-sidebar-width);padding:1.5rem 2rem 2rem}.navbar{align-items:center;backdrop-filter:blur(8px);background-color:hsla(0,0%,100%,.92)!important;border-bottom:1px solid var(--fg-border);display:flex;flex-wrap:wrap;height:var(--fg-navbar-height);padding:0 1rem;position:fixed;top:0;width:100%;z-index:1040}.navbar-toggler{align-items:center;display:inline-flex;justify-content:center}.admin-navbar .navbar-toggler{display:none}@media(max-width:991.98px){.admin-navbar .navbar-toggler{display:inline-flex}}.app-navbar{gap:1rem}.app-navbar .brand-block{align-items:center;background:linear-gradient(135deg,rgba(37,99,235,.15),rgba(37,99,235,.05));border:1px solid rgba(37,99,235,.2);border-radius:12px;display:flex;gap:.75rem;padding:.4rem .75rem}.app-navbar .brand-block span{color:var(--fg-primary);font-weight:700;letter-spacing:.2px}.navbar-brand img{border-radius:8px;height:auto;max-height:42px}.navbar .nav-link{color:var(--fg-muted)}.navbar .nav-link.show,.navbar .nav-link:focus,.navbar .nav-link:hover{color:var(--fg-primary)}.navbar .dropdown-menu .dropdown-item:hover{background-color:var(--fg-primary-soft);color:var(--fg-primary)}.sidebar-toggle-btn{border-color:var(--fg-border)}.sidebar-toggle-btn:hover{border-color:var(--fg-primary);color:var(--fg-primary)}body.sidebar-collapsed #sidebar-wrapper{padding-left:.5rem;padding-right:.5rem;width:var(--fg-sidebar-collapsed)}body.sidebar-collapsed #sidebar-wrapper .sidebar-heading,body.sidebar-collapsed #sidebar-wrapper .sidebar-heading small,body.sidebar-collapsed #sidebar-wrapper .sidebar-heading strong{text-align:center}body.sidebar-collapsed #sidebar-wrapper .sidebar-heading small,body.sidebar-collapsed #sidebar-wrapper .sidebar-heading strong,body.sidebar-collapsed #sidebar-wrapper .sidebar-item-text,body.sidebar-collapsed #sidebar-wrapper .sidebar-section-label,body.sidebar-collapsed #sidebar-wrapper .sidebar-title-block{display:none}body.sidebar-collapsed #sidebar-wrapper .list-group-item{align-items:center;display:flex;justify-content:center;padding:.55rem .5rem}body.sidebar-collapsed #sidebar-wrapper .sidebar-heading{align-items:center;flex-direction:column;gap:.35rem;justify-content:center}body.sidebar-collapsed #toggleSidebarDesktop{display:inline-flex!important;margin-left:0}body.sidebar-collapsed #sidebar-wrapper .sidebar-logo{margin-bottom:.25rem}body.sidebar-collapsed .main-content{margin-left:var(--fg-sidebar-collapsed)}@media(max-width:991.98px){#sidebar-wrapper{border-right:none;height:auto;padding-top:0;position:static;width:100%;z-index:1}.main-content{margin-left:0;padding:1rem}.navbar{height:calc(var(--fg-navbar-height) + 8px);padding:.5rem 1rem}body{padding-top:calc(var(--fg-navbar-height) + 8px)}.admin-navbar,.app-navbar{background-color:#fff!important;box-shadow:0 6px 18px rgba(0,0,0,.06);height:auto;padding:.75rem 1rem .5rem;position:sticky;top:0;width:100%}.admin-navbar .navbar-collapse,.app-navbar .navbar-collapse{background-color:#fff;padding-top:.5rem;width:100%}.admin-navbar .navbar-nav,.app-navbar .navbar-nav{align-items:flex-start}}.dashboard-page{background:radial-gradient(circle at 10% 20%,rgba(37,99,235,.08),transparent 26%),radial-gradient(circle at 90% 10%,rgba(16,185,129,.08),transparent 25%),radial-gradient(circle at 80% 90%,rgba(245,158,11,.08),transparent 20%)}.dashboard-hero{background:linear-gradient(135deg,#f7f9ff,#eef3ff 50%,#fdfdff);border:1px solid rgba(37,99,235,.12);overflow:hidden;position:relative}.dashboard-hero:after{background:radial-gradient(circle at 20% 30%,rgba(37,99,235,.08),transparent 45%),radial-gradient(circle at 80% 70%,rgba(16,185,129,.08),transparent 40%);content:"";inset:0;opacity:.8;pointer-events:none;position:absolute}.dashboard-hero .card-body{position:relative;z-index:1}.hero-chip{background:rgba(37,99,235,.08);border:1px dashed rgba(37,99,235,.5);border-radius:999px;color:var(--fg-primary);display:inline-block;font-size:.75rem;letter-spacing:.08em;padding:.35rem .7rem}.hero-title{color:var(--fg-text);font-size:1.9rem;margin:0}.hero-subtitle{line-height:1.5;max-width:640px}.stat-card{background:#fff;border:1px solid var(--fg-border);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 12px 26px rgba(0,0,0,.08);transform:translateY(-3px)}.stat-icon{align-items:center;border-radius:14px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.7);display:inline-flex;font-size:1.2rem;height:52px;justify-content:center;width:52px}.stat-label{color:var(--fg-text);font-weight:600}.stat-value{color:var(--fg-text);font-size:1.8rem;font-weight:700;margin-bottom:.15rem}.badge-soft-primary{background:rgba(37,99,235,.12);border:1px solid rgba(37,99,235,.25);color:var(--fg-primary)}.badge-soft-warning{background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.22);color:#c27803}.bg-primary-soft{background:rgba(37,99,235,.12)}.bg-success-soft{background:rgba(16,185,129,.12)}.bg-warning-soft{background:rgba(245,158,11,.16)}.chart-card{background:#fff;border:1px solid var(--fg-border)}.chart-eyebrow{color:var(--fg-muted);font-size:.78rem;letter-spacing:.08em;margin-bottom:.25rem;text-transform:uppercase}.chart-placeholder{background:var(--fg-surface-muted);border:1px dashed var(--fg-border);border-radius:var(--fg-radius)}.placeholder-icon{align-items:center;background:#fff;border-radius:16px;box-shadow:var(--fg-shadow);display:inline-flex;height:60px;justify-content:center;width:60px}.printer-table .table{border:1px solid var(--fg-border)}.printer-table thead{background:var(--fg-primary-soft)}.printer-table tbody tr:hover{background:rgba(37,99,235,.05)}.printer-table .badge{font-weight:600}.printer-table .action-col{min-width:96px;width:96px}.printer-action-btn{align-items:center;background:#fff;border:1px solid var(--fg-border);border-radius:10px;color:var(--fg-primary);display:inline-flex;height:36px;justify-content:center;margin-right:6px;transition:all .15s ease;width:36px}.printer-action-btn:focus,.printer-action-btn:hover{background:var(--fg-primary-soft);border-color:rgba(37,99,235,.35);color:var(--fg-primary);text-decoration:none}.printer-history-table .action-col{min-width:60px;width:60px}.printer-history-card .table{border:1px solid var(--fg-border)}.printer-history-card thead{background:var(--fg-primary-soft)}.printer-history-card tbody tr:hover{background:rgba(37,99,235,.05)}.printer-history-table td,.printer-history-table th{vertical-align:middle}.printer-history-table td{text-align:center}.printer-form-card{background:#fff;box-shadow:var(--fg-shadow)}.badge-soft-success{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.2);color:#0f9b6c}.printer-form-header{display:flex;flex-direction:column;gap:.4rem}.printer-icon{height:32px;justify-content:center;width:32px}.printer-helper,.printer-icon{align-items:center;background:var(--fg-primary-soft);border-radius:10px;color:var(--fg-primary);display:inline-flex}.printer-helper{border:1px solid rgba(37,99,235,.2);font-size:.9rem;gap:.35rem;padding:.4rem .65rem}.printer-form .form-text{color:var(--fg-muted);line-height:1.25;margin-top:.25rem}.printer-field .form-control,.printer-field .input-group .form-control,.printer-field .input-group-text{height:48px}.printer-back-btn{background:#fff;border-color:#d9dce3;color:var(--fg-muted)}.printer-back-btn:focus,.printer-back-btn:hover{background:#f8fafc;border-color:var(--fg-border);color:var(--fg-text)}.printer-action-danger{border-color:rgba(220,53,69,.35);color:#c1121f}.printer-action-danger:focus,.printer-action-danger:hover{background:rgba(220,53,69,.08);border-color:rgba(220,53,69,.6);color:#9c0f1a}.printer-actions{display:flex;gap:.75rem;justify-content:flex-end}.printing-table .table{border:1px solid var(--fg-border)}.printing-table thead{background:var(--fg-primary-soft)}.printing-table tbody tr:hover{background:rgba(37,99,235,.05)}.printing-table .action-col{min-width:60px;width:60px}.printing-action-btn{align-items:center;background:#fff;border:1px solid var(--fg-border);border-radius:10px;color:var(--fg-primary);display:inline-flex;height:36px;justify-content:center;transition:all .15s ease;width:36px}.printing-action-btn:focus,.printing-action-btn:hover{background:var(--fg-primary-soft);border-color:rgba(37,99,235,.35);color:var(--fg-primary);text-decoration:none}.printing-form-card{background:#fff;box-shadow:var(--fg-shadow)}.printing-form-header{display:flex;flex-direction:column;gap:.4rem}.printing-icon{height:32px;justify-content:center;width:32px}.printing-helper,.printing-icon{align-items:center;background:var(--fg-primary-soft);border-radius:10px;color:var(--fg-primary);display:inline-flex}.printing-helper{border:1px solid rgba(37,99,235,.2);font-size:.9rem;gap:.35rem;padding:.4rem .65rem}.printing-field .form-control,.printing-field .form-select,.printing-field .input-group .form-control,.printing-field .input-group-text{height:48px}.printing-wires-box{background:#fff;border:1px solid var(--fg-border);border-radius:var(--fg-radius);padding:1rem}.printing-wire-item .form-control,.printing-wire-item .form-select{height:48px}.printing-add-wire-btn{border-color:rgba(37,99,235,.35);color:var(--fg-primary)}.printing-add-wire-btn:focus,.printing-add-wire-btn:hover{background:var(--fg-primary-soft);border-color:rgba(37,99,235,.5);color:var(--fg-primary)}.printing-actions{display:flex;gap:.75rem;justify-content:flex-end}.printing-badges .badge{background:#fff;border:1px solid var(--fg-border);box-shadow:var(--fg-shadow);color:var(--fg-text);font-weight:600}.printing-details-card .card-header{border-bottom:1px solid rgba(0,0,0,.06)}.printing-details-card .item-row+.item-row{border-top:1px solid rgba(0,0,0,.06)}.printing-icon-lg{align-items:center;background:var(--fg-primary-soft);border-radius:14px;color:var(--fg-primary);display:inline-flex;font-size:1.2rem;height:48px;justify-content:center;width:48px}.printing-wire-table td,.printing-wire-table th{vertical-align:middle}.printing-wire-table tbody tr:hover{background:rgba(37,99,235,.05)}.printing-wire-table thead{background:var(--fg-surface-muted);border-bottom:1px solid var(--fg-border);font-weight:600}.wire-page .page-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.wire-page .page-header h2{align-items:center;display:flex;gap:.5rem;margin:0}.wire-table .table{border:1px solid var(--fg-border);margin:0}.wire-table thead{background:var(--fg-primary-soft)}.wire-table tbody tr:hover{background:rgba(37,99,235,.05)}.wire-table .badge{font-weight:600}.wire-table .action-col{min-width:48px;width:48px}.wire-action-btn{align-items:center;background:#fff;border:1px solid var(--fg-border);border-radius:10px;color:var(--fg-primary);display:inline-flex;height:36px;justify-content:center;transition:all .15s ease;width:36px}.wire-action-btn:focus,.wire-action-btn:hover{background:var(--fg-primary-soft);border-color:rgba(37,99,235,.35);color:var(--fg-primary);text-decoration:none}.wire-card{border:1px solid var(--fg-border)}.wire-form-card{background:#fff;box-shadow:var(--fg-shadow)}.wire-form-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.wire-icon{height:34px;justify-content:center;width:34px}.wire-helper,.wire-icon{align-items:center;background:var(--fg-primary-soft);border-radius:10px;color:var(--fg-primary);display:inline-flex}.wire-helper{border:1px solid rgba(37,99,235,.2);font-size:.9rem;gap:.35rem;padding:.45rem .7rem}.wire-form .form-floating>label,.wire-form .form-label{color:var(--fg-muted)}.wire-form .input-group-text{background:var(--fg-surface-muted);border-color:var(--fg-border)}.wire-form .form-text{color:var(--fg-muted);line-height:1.25;margin-top:.25rem}.wire-field .form-control,.wire-field .form-select,.wire-field .input-group .form-control,.wire-field .input-group-text{height:48px}.wire-back-btn{background:#fff;border-color:#d9dce3;color:var(--fg-muted)}.wire-back-btn:focus,.wire-back-btn:hover{background:#f8fafc;border-color:var(--fg-border);color:var(--fg-text)}.wire-actions{display:flex;gap:.75rem;justify-content:flex-end}.wire-color-chip{box-shadow:var(--fg-shadow);height:40px;width:40px}.wire-color-chip,.wire-color-dot{border:1px solid var(--fg-border);border-radius:50%}.wire-color-dot{height:16px;width:16px}.wire-progress .progress{height:10px}.wire-progress .progress-bar{background:linear-gradient(90deg,var(--fg-primary) 0,#38bdf8 100%)}.wire-stats .card{border:1px solid var(--fg-border)}.wire-status.badge{align-items:center;display:inline-flex;font-weight:600;gap:.3rem}.wire-status.empty{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.2);color:#c1121f}.wire-status.low{background:rgba(245,158,11,.16);border:1px solid rgba(245,158,11,.22);color:#a16207}.wire-status.ok{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.2);color:#0f9b6c}.wire-details-block{background:var(--fg-surface-muted);border:1px solid var(--fg-border);border-radius:var(--fg-radius)}