:root{--color-bg:var(--bg-surface-2);--color-bg-subtle:var(--bg-app);--color-surface:var(--bg-surface);--color-border:var(--border-subtle);--color-text:var(--text-primary);--color-text-muted:var(--text-secondary);--color-primary:var(--accent);--color-primary-hover:var(--accent-hover);--color-primary-contrast:var(--text-on-accent);--color-danger:#eb9c8a;--color-danger-bg:var(--negative-soft);--color-success:var(--green-200);--color-success-bg:var(--accent-soft);--color-warning:#f0c878;--color-warning-bg:var(--amber-soft);--font-base:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.75rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius-sm:10px;--radius-md:16px;--shadow-sm:0 1px 0 #ffffff05 inset, 0 4px 12px #0000003d;--shadow-md:var(--shadow-card);--green-50:#eef7e6;--green-200:#bfe19d;--green-400:#8cc866;--green-500:#6ba644;--green-600:#598c38;--green-700:#45702c;--green-900:#223a16;--accent:var(--green-500);--accent-hover:#7cbb52;--accent-ink:#0f1a0a;--accent-soft:#6ba64429;--accent-soft-strong:#6ba64447;--accent-ring:#6ba64459;--amber-500:#d9a441;--amber-soft:#d9a44129;--negative:#d9634b;--negative-soft:#d9634b29;--orange-500:#d9822b;--orange-soft:#d9822b29;--yellow-500:#d9c93f;--yellow-soft:#d9c93f2e;--bg-app:#0d120e;--bg-sidebar:#0f1511;--bg-surface:#141b16;--bg-surface-2:#1a2219;--bg-elevated:#212b21;--border-subtle:#232c24;--border-strong:#303c30;--text-primary:#eef2ec;--text-secondary:#d8ded5;--text-tertiary:#a3ac9f;--text-on-accent:#0f1a0a;--radius-lg:22px;--radius-pill:999px;--shadow-card:0 1px 0 #ffffff05 inset, 0 8px 24px #00000047;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--font-mono:"SF Mono", "Consolas", monospace}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-base);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg-subtle);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0}button,input,select,textarea{font:inherit}.main-content{padding:var(--space-5);flex:1;width:100%;max-width:1600px;margin:0 auto}.main-content .field{max-width:520px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-5)}.field{gap:var(--space-1);margin-bottom:var(--space-3);flex-direction:column;display:flex}.field label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.field input,.field select,.field textarea,input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text)}.btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-base);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.btn-primary{background:var(--color-primary);color:var(--color-primary-contrast)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0}.error-banner{background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-3);border-radius:var(--radius-sm);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.login-shell{background:var(--color-bg-subtle);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:320px}table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--color-bg-subtle)}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}th{color:var(--color-text-muted);font-weight:600}.badge{padding:2px var(--space-2);background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:999px;font-size:.75rem;display:inline-block}.section-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.card>h3,.section-header>h3{letter-spacing:-.01em;margin:0 0 var(--space-4);font-size:15px;font-weight:700}.info-list{flex-direction:column;display:flex}.info-row{align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle);display:flex}.info-row:last-child{border-bottom:none}.info-row label{font-size:var(--font-size-sm);color:var(--text-tertiary);flex:0 0 35%}.info-row span{text-align:left;flex:0 0 65%;font-weight:600}.papel-fila{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle);display:flex}.papel-fila:last-child{border-bottom:none}.papel-fila-info{justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;flex:1;padding:0;display:flex}.papel-fila-info:disabled{cursor:default;opacity:.6}.papel-fila-subir{font-size:var(--font-size-sm);color:var(--color-primary);cursor:pointer;flex:none}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-header h1{letter-spacing:-.01em;margin:0 0 4px;font-size:22px}.page-header p{color:var(--text-secondary);margin:0;font-size:13px}.page-header-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-surface-2);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--bg-elevated);color:var(--text-primary)}.stat-row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.stat-card{flex-direction:column;display:flex}.stat-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.stat-head{font-size:var(--font-size-sm);color:var(--color-text-muted)}.stat-menu{color:var(--text-tertiary);flex:none;font-size:15px;line-height:1}.stat-value{letter-spacing:-.01em;font-size:26px;font-weight:700}.stat-card-foot{align-items:center;gap:var(--space-2);margin-top:var(--space-3);display:flex}.stat-trend{border-radius:var(--radius-pill);flex:none;align-items:center;gap:3px;padding:2px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.stat-trend.up{background:var(--accent-soft);color:var(--green-200)}.stat-trend.down{background:var(--negative-soft);color:#eb9c8a}.stat-trend.neutral{background:var(--bg-elevated);color:var(--text-tertiary)}.stat-progress{border-radius:var(--radius-pill);background:var(--bg-elevated);flex:1;height:5px;overflow:hidden}.stat-progress>span{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--green-600), var(--accent));height:100%;display:block}.stat-progress.warn>span{background:linear-gradient(90deg, #a9761f, var(--amber-500))}.stat-progress.danger>span{background:linear-gradient(90deg, #8f3f2d, var(--negative))}.mini-cifra{flex-direction:column;gap:2px;display:flex}.mini-cifra .label{color:var(--text-tertiary);font-size:12.5px}.mini-cifra .valor{letter-spacing:-.01em;font-size:20px;font-weight:700}.chart-card-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.stat-icon-circle{border-radius:var(--radius-pill);background:var(--accent-soft);width:44px;height:44px;color:var(--green-200);flex:none;justify-content:center;align-items:center;display:flex}.stat-icon-circle-hero{color:var(--text-on-accent);background:#ffffff2e}.stat-card-icon-head{margin-bottom:var(--sp-4);justify-content:space-between;align-items:flex-start;display:flex}.stat-pill{border-radius:var(--radius-pill);flex:none;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.stat-pill.up{background:var(--accent-soft);color:var(--green-200)}.stat-pill.down{background:var(--negative-soft);color:#eb9c8a}.stat-pill.neutral{background:var(--bg-elevated);color:var(--text-tertiary)}.stat-pill-hero{color:var(--text-on-accent);background:#ffffff2e}.stat-card-hero{background:linear-gradient(155deg, var(--green-500), var(--green-700));border-color:#0000}.stat-card-hero .stat-head{color:#0f1a0abf}.stat-card-hero .stat-value{color:var(--text-on-accent)}.launcher-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.launcher-card{align-items:flex-start;gap:var(--space-3);text-align:left;cursor:pointer;display:flex}.launcher-icon{border-radius:var(--radius-sm);background:var(--accent-soft);width:38px;height:38px;color:var(--green-200);flex:none;justify-content:center;align-items:center;font-size:17px;display:flex}.launcher-card h3{font-size:var(--font-size-base);margin:0 0 4px}.launcher-card p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.side-panel{padding:var(--space-5)}.side-panel h3{margin:0 0 var(--space-4);font-size:var(--font-size-base)}.bar-list{gap:var(--space-3);flex-direction:column;display:flex}.bar-item .bar-item-top{font-size:var(--font-size-sm);color:var(--color-text-muted);justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.bar-item .bar-item-top strong{color:var(--color-text)}.bar-track{border-radius:var(--radius-pill);background:var(--bg-surface-2);height:7px;overflow:hidden}.bar-track>span{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--green-600), var(--accent));height:100%;display:block}.page-grid{gap:var(--space-5);grid-template-columns:1fr 300px;align-items:start;display:grid}.patient-page-grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:stretch}.patient-contact-column,.patient-side-column{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.patient-contact-column>.card:first-child,.patient-side-column>.card:first-child{flex:1}.patient-recipe-history{overflow-x:auto}@media (width<=1100px){.page-grid{grid-template-columns:1fr}}.search-pill{border-radius:var(--radius-pill)}.chip-filter-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip-filter{border:1px solid var(--color-border);background:var(--bg-surface-2);color:var(--color-text-muted);border-radius:var(--radius-pill);padding:6px var(--space-4);font-size:var(--font-size-sm);cursor:pointer;font-weight:600}.chip-filter.active{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.avatar{border-radius:var(--radius-pill);width:34px;height:34px;color:var(--text-on-accent);flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.pagination{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.pagination-info{color:var(--color-text-muted);font-size:var(--font-size-sm)}.pagination-pages{align-items:center;gap:4px;display:flex}.pagination-pages button{border-radius:var(--radius-sm);min-width:30px;height:30px;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:1px solid #0000;padding:0 6px}.pagination-pages button:hover:not(:disabled){background:var(--bg-surface-2);color:var(--color-text)}.pagination-pages button.active{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.pagination-pages button:disabled{opacity:.4;cursor:default}.app-shell{min-height:100vh;margin-left:232px}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);width:232px;padding:var(--sp-5) var(--sp-4);gap:var(--sp-6);font-family:var(--font-base);z-index:10;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.brand{padding:0 var(--sp-2);align-items:center;gap:10px;display:flex}.brand-mark{background:linear-gradient(155deg, var(--green-400), var(--green-700));width:30px;height:30px;color:var(--accent-ink);border-radius:9px;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.brand-name{letter-spacing:-.01em;color:var(--text-primary);font-size:15px;font-weight:700}.sidebar-search{padding:8px var(--sp-3);border-radius:var(--radius-sm);background:var(--bg-surface-2);border:1px solid var(--border-subtle);color:var(--text-tertiary);align-items:center;gap:8px;font-size:13px;display:flex}.sidebar-search svg{opacity:.8;flex:none}.sidebar-search input{color:var(--text-primary);background:0 0;border:none;width:100%;padding:0;font-size:13px}.sidebar-search input::placeholder{color:var(--text-tertiary)}.sidebar-search input:focus{outline:none}.sidebar nav{flex-direction:column;gap:2px;display:flex}.nav-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);padding:var(--sp-2) var(--sp-2) 2px;font-size:10.5px}.nav-item{color:var(--text-secondary);border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.nav-item.active{background:var(--accent-soft);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--accent-ring)}.nav-ico{opacity:.85;flex:none;width:16px}.nav-item.active .nav-ico{opacity:1}.nav-item-btn{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;font-family:inherit}.sidebar-footer{gap:var(--sp-2);flex-direction:column;margin-top:auto;display:flex}.sidebar-user{padding:var(--sp-2);border-top:1px solid var(--border-subtle);padding-top:var(--sp-4);flex-direction:column;display:flex}.sidebar-user-name{color:var(--text-primary);font-size:12.5px;font-weight:600}.sidebar-user-rol{color:var(--text-tertiary);text-transform:capitalize;font-size:11px}.despachos-page{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-base);margin:calc(var(--space-5) * -1);padding:var(--sp-6);gap:var(--sp-5);flex-direction:column;min-height:calc(100vh - 65px);display:flex}.despachos-page .d-topbar{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);flex-wrap:wrap;display:flex}.despachos-page h2{letter-spacing:-.01em;margin:0 0 4px;font-size:22px}.despachos-page .d-topbar p{color:var(--text-secondary);margin:0;font-size:13px}.despachos-page .field label{color:var(--text-tertiary)}.despachos-page .field input{background:var(--bg-surface-2);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:var(--radius-sm)}.despachos-page .error-banner{background:var(--negative-soft);color:#eb9c8a}.despachos-page .card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--sp-5)}.despachos-page .stat-row{gap:var(--sp-4);grid-template-columns:repeat(4,1fr);display:grid}.despachos-page .stat-head{color:var(--text-secondary);margin-bottom:var(--sp-3);font-size:13px}.despachos-page .stat-value{letter-spacing:-.01em;font-size:26px;font-weight:700}.despachos-page .d-body{gap:var(--sp-5);grid-template-columns:1fr 280px;align-items:start;display:grid}.despachos-page .d-empty{color:var(--text-tertiary);margin:0;font-size:13px}.despachos-page table{border-collapse:collapse;width:100%;font-size:13px}.despachos-page thead th{text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;padding:0 10px var(--sp-3);border-bottom:1px solid var(--border-subtle);font-size:11px;font-weight:600}.despachos-page tbody td{border-bottom:1px solid var(--border-subtle);padding:12px 10px}.despachos-page tbody tr:last-child td{border-bottom:none}.despachos-page tbody tr:hover td{background:var(--bg-elevated)}.despachos-page a{color:var(--accent)}.despachos-page .status{border-radius:var(--radius-pill);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.despachos-page .status-entregado{background:var(--accent-soft);color:var(--green-200)}.despachos-page .status-enviado{background:var(--amber-soft);color:#f0c878}.despachos-page .status-preparado,.despachos-page .status-pendiente{background:var(--bg-surface-2);color:var(--text-secondary);border:1px solid var(--border-subtle)}.despachos-page .status-cancelado{background:var(--negative-soft);color:#eb9c8a}.despachos-page .d-comunas-card h3{margin:0 0 var(--sp-4);font-size:15px}.despachos-page .d-comuna-list{gap:var(--sp-3);flex-direction:column;display:flex}.despachos-page .d-comuna-item{color:var(--text-secondary);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;font-size:12.5px;display:flex}.despachos-page .d-comuna-item:last-child{border-bottom:none;padding-bottom:0}.despachos-page .d-comuna-n{color:var(--text-primary);font-weight:700}.table-filters{align-items:end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.region-filter{gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary);flex-direction:column;display:flex}.region-filter select{border-radius:var(--radius-pill);background:var(--bg-surface-2);color:var(--text-primary);padding:var(--space-2) var(--space-4);border:1px solid var(--border-subtle)}.recipe-summary h3{margin-top:0}.recipe-summary-bar{gap:var(--sp-1);height:var(--sp-3);border-radius:var(--radius-pill);margin-bottom:var(--space-3);display:flex;overflow:hidden}.recipe-summary-legend{gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-summary-item{align-items:center;gap:var(--space-2);color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);padding:var(--space-2);background:0 0;border:0;display:flex;position:relative}.recipe-dot{width:var(--sp-2);height:var(--sp-2);border-radius:var(--radius-pill)}.recipe-count{padding:var(--space-2) var(--space-3);white-space:nowrap;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text-primary);z-index:10;display:none;position:absolute;bottom:100%;left:0}.recipe-summary-item:hover .recipe-count,.recipe-summary-item:focus .recipe-count{display:block}.patient-page-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.patient-contact-column{grid-area:1/2;min-width:0}.patient-side-column{grid-area:1/1}.edit-order-line{align-items:end;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.edit-order-line>.field{flex:1;min-width:0}@media (width<=800px){.patient-page-grid{grid-template-columns:minmax(0,1fr)}.patient-contact-column,.patient-side-column{grid-area:auto}.table-filters>*{max-width:100%}}
