:root{--bg: #eef6fc;--surface: #ffffff;--surface-2: #f4f9fd;--surface-3: #e9f3fb;--sidebar: #ffffff;--sidebar-2: #eef6fc;--sidebar-3: #dceefb;--text: #181818;--text-soft: #514f4d;--muted: #706e6b;--sidebar-text: #514f4d;--sidebar-muted: #706e6b;--primary: #0ea5e9;--primary-hover: #0284c7;--primary-soft: #e0f2fe;--primary-ring: rgba(14, 165, 233, .28);--border: #e5e5e5;--border-strong: #c9c9c9;--danger: #ba0517;--danger-hover: #8e030f;--danger-soft: #fef1ee;--ok: #2e844a;--ok-soft: #ecfbe6;--warn: #a86403;--warn-soft: #fef5e7;--radius: .25rem;--radius-sm: .25rem;--radius-lg: .5rem;--shadow-xs: 0 1px 1px rgba(0, 0, 0, .05);--shadow: 0 2px 2px rgba(0, 0, 0, .05), 0 0 1px rgba(0, 0, 0, .08);--shadow-md: 0 2px 4px rgba(0, 0, 0, .08), 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .2);--line: var(--border);--bg-soft: var(--surface-2);--surface-muted: var(--surface-2);--surface-hover: var(--surface-3);--brand: var(--primary)}:root[data-theme=dark]{--bg: #0b1220;--surface: #151d2e;--surface-2: #1b2536;--surface-3: #223048;--sidebar: #101828;--sidebar-2: #172032;--sidebar-3: #223048;--text: #e8eef7;--text-soft: #c0ccdd;--muted: #8b99ae;--sidebar-text: #cdd7e5;--sidebar-muted: #8b99ae;--primary: #38bdf8;--primary-hover: #7dd3fc;--primary-soft: rgba(56, 189, 248, .16);--primary-ring: rgba(56, 189, 248, .38);--border: #2c3a52;--border-strong: #435370;--danger: #f87171;--danger-hover: #fca5a5;--danger-soft: rgba(248, 113, 113, .16);--ok: #4ade80;--ok-soft: rgba(74, 222, 128, .16);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .16);--shadow-xs: 0 1px 1px rgba(0, 0, 0, .4);--shadow: 0 2px 3px rgba(0, 0, 0, .45), 0 0 1px rgba(0, 0, 0, .6);--shadow-md: 0 2px 6px rgba(0, 0, 0, .5), 0 6px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .6)}:root[data-theme=dark] .topbar{background:#101828d9}:root[data-theme=dark] *{scrollbar-color:#3a4a63 transparent}:root[data-theme=dark] *::-webkit-scrollbar-thumb{background:#3a4a63}:root[data-theme=dark] *::-webkit-scrollbar-thumb:hover{background:#4d6182}:root[data-theme=dark] .login-aside{background:linear-gradient(160deg,#131c2e,#0f1728 45%,#0b1220)}:root[data-theme=dark] .login-page{background:linear-gradient(160deg,#131c2e,#0b1220)}:root[data-theme=dark] .sk-line,:root[data-theme=dark] .sk-block{background:linear-gradient(90deg,var(--surface-3) 25%,#33456180 37%,var(--surface-3) 63%);background-size:400% 100%}:root[data-theme=dark] .loan-asset-card{background:var(--surface-2);border-color:var(--border)}:root[data-theme=dark] .table tbody tr.is-pending,:root[data-theme=dark] .table tbody tr.po-row-parcial,:root[data-theme=dark] .table tbody tr.row-parcial,:root[data-theme=dark] .table tbody tr.req-row-docs-pending{background:#fbbf2421}:root[data-theme=dark] .table tbody tr.is-pending:hover,:root[data-theme=dark] .table tbody tr.po-row-parcial:hover,:root[data-theme=dark] .table tbody tr.row-parcial:hover,:root[data-theme=dark] .table tbody tr.req-row-docs-pending:hover{background:#fbbf2433}:root[data-theme=dark] .table tbody tr.asset-row-maintenance{background:#fb923c24}:root[data-theme=dark] .table tbody tr.asset-row-maintenance:hover{background:#fb923c38}:root[data-theme=dark] .table tbody tr.is-overdue,:root[data-theme=dark] .table tbody tr.asset-row-out-of-service{background:#f8717129}:root[data-theme=dark] .table tbody tr.is-overdue:hover,:root[data-theme=dark] .table tbody tr.asset-row-out-of-service:hover{background:#f871713d}:root[data-theme=dark] .table tbody tr.is-selected:hover{background:#38bdf838}:root[data-theme=dark] .legend-swatch{border-color:var(--border)}:root[data-theme=dark] .swatch-pending{background:#fbbf2459}:root[data-theme=dark] .swatch-overdue{background:#f8717166}:root[data-theme=dark] .field select.select-parcial,:root[data-theme=dark] .field select option.option-parcial{background-color:#fbbf2429;color:var(--text)}:root[data-theme=dark] .badge-ok{background:#4ade8029;color:#86efac;border-color:#4ade8059}:root[data-theme=dark] .badge-warn{background:#fbbf2429;color:#fcd34d;border-color:#fbbf2459}:root[data-theme=dark] .badge-info{background:#38bdf829;color:#7dd3fc;border-color:#38bdf859}:root[data-theme=dark] .badge-danger{background:#f8717129;color:#fca5a5;border-color:#f8717161}:root[data-theme=dark] .badge-muted{background:#94a3b829;color:#cbd5e1;border-color:#94a3b852}:root[data-theme=dark] .accent-blue .stat-icon{background:#38bdf829;color:#7dd3fc}:root[data-theme=dark] .accent-green .stat-icon{background:#4ade8029;color:#86efac}:root[data-theme=dark] .accent-violet .stat-icon{background:#a78bfa2e;color:#c4b5fd}:root[data-theme=dark] .accent-amber .stat-icon{background:#fbbf2429;color:#fcd34d}:root[data-theme=dark] .item-tag.is-asset,:root[data-theme=dark] .audit-chip.info{color:#7dd3fc}:root[data-theme=dark] .item-tag.is-product,:root[data-theme=dark] .audit-chip.ok{color:#86efac}:root[data-theme=dark] .audit-chip.warn{color:#fcd34d}:root[data-theme=dark] .audit-adj.pos{color:#86efac}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","tnum"}h1,h2,h3{margin:0;letter-spacing:-.01em}a{color:inherit;text-decoration:none}::selection{background:var(--primary-ring)}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#94a3b8;background-clip:padding-box}.splash{height:100vh;display:grid;place-items:center;background:var(--bg)}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;margin:2rem auto}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:var(--surface)}.login-aside{position:relative;overflow:hidden;background:linear-gradient(160deg,#f8fbff,#eef3fb 45%,#e7eefb);color:var(--text);padding:3rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--border)}.login-aside:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(37,99,235,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.05) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(120% 80% at 30% 20%,#000 0%,transparent 75%);mask-image:radial-gradient(120% 80% at 30% 20%,#000 0%,transparent 75%);pointer-events:none}.login-aside>*{position:relative}.login-aside-brand{display:flex;align-items:center;gap:.75rem}.login-aside-brand .brand-name{font-size:1.1rem;letter-spacing:.04em}.login-aside-hero h2{font-size:2rem;line-height:1.2;font-weight:700;margin-bottom:.9rem;letter-spacing:-.02em}.login-aside-hero p{margin:0;color:var(--text-soft);font-size:.96rem;max-width:40ch}.login-features{list-style:none;margin:1.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.85rem}.login-features li{display:flex;align-items:center;gap:.7rem;font-size:.9rem;color:var(--text-soft)}.login-features svg{width:18px;height:18px;color:var(--primary);flex-shrink:0}.login-aside-foot{font-size:.78rem;color:var(--muted)}.login-main{display:grid;place-items:center;padding:2rem}.login-card{width:100%;max-width:380px}.login-brand{margin-bottom:1.9rem}.login-brand h1{margin:1rem 0 .35rem;font-size:1.5rem;font-weight:700}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--primary),#38bdf8);color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.04em;box-shadow:0 6px 16px -4px #2563eb80}.brand-mark.lg{width:54px;height:54px;font-size:1rem;border-radius:14px}.brand-logo{display:block;height:52px;width:auto;max-width:100%;object-fit:contain;object-position:left center}.login-aside-brand .brand-logo{height:84px}.login-brand-logo{height:112px;margin-bottom:.7rem;object-position:center}.login-form{display:flex;flex-direction:column;gap:1rem}.login-hint{margin:1.5rem 0 0;font-size:.82rem;padding:.7rem .85rem;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm)}@media(max-width:880px){.login-page{grid-template-columns:1fr;background:linear-gradient(160deg,#eef3fb,#e7eefb);place-items:center;padding:1.5rem}.login-aside{display:none}.login-main{width:100%;max-width:420px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:2.5rem 2rem}}.field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.field>span{font-size:.8rem;font-weight:600;color:var(--text-soft)}.field-label-na{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.na-btn{font-size:.68rem;font-weight:700;letter-spacing:.03em;padding:1px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-soft);cursor:pointer;transition:background .1s ease,color .1s ease,border-color .1s ease}.na-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.field-check{flex-direction:row;align-items:center;gap:.5rem}.input-with-btn{display:flex;align-items:stretch;gap:.4rem}.input-with-btn>select,.input-with-btn>input{flex:1;min-width:0}.input-with-btn>.btn{white-space:nowrap;flex-shrink:0}.field-check>input{width:auto;margin:0}.field-check>span{font-size:.9rem;font-weight:500;color:var(--text)}input,select,textarea{width:100%;padding:.55rem .75rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font-size:.9rem;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s}input::placeholder,textarea::placeholder{color:var(--muted)}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#b9c2d0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring)}input:disabled,input:read-only{background:var(--surface-3);color:var(--muted);cursor:not-allowed}input[type=date],input[type=datetime-local],input[type=month],input[type=week],input[type=time]{cursor:pointer;padding-right:.5rem}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=week]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{width:1.15rem;height:1.15rem;padding:.2rem;margin-left:.35rem;border-radius:var(--radius-sm);opacity:1;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");background-size:1.15rem 1.15rem;background-repeat:no-repeat;background-position:center;transition:background-color .15s}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=datetime-local]::-webkit-calendar-picker-indicator:hover,input[type=month]::-webkit-calendar-picker-indicator:hover,input[type=week]::-webkit-calendar-picker-indicator:hover,input[type=time]::-webkit-calendar-picker-indicator:hover{background-color:var(--primary-soft)}:root[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=month]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=week]::-webkit-calendar-picker-indicator,:root[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2338bdf8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}input[type=date]:disabled,input[type=date]:read-only,input[type=datetime-local]:disabled,input[type=datetime-local]:read-only,input[type=time]:disabled,input[type=time]:read-only{cursor:not-allowed}input[type=date]:disabled::-webkit-calendar-picker-indicator,input[type=date]:read-only::-webkit-calendar-picker-indicator,input[type=datetime-local]:disabled::-webkit-calendar-picker-indicator,input[type=datetime-local]:read-only::-webkit-calendar-picker-indicator,input[type=time]:disabled::-webkit-calendar-picker-indicator,input[type=time]:read-only::-webkit-calendar-picker-indicator{opacity:.4;cursor:not-allowed}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.52rem .95rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s}.btn:hover{background:var(--surface-2);border-color:#b9c2d0}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--primary-ring)}.btn svg{width:16px;height:16px}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 1px 2px #2563eb40}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover);border-color:var(--danger-hover)}.btn-warn{background:var(--warn);border-color:var(--warn);color:#fff}.btn-warn:hover{filter:brightness(.94)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--surface-3);border-color:transparent}.btn-block{width:100%;padding:.68rem}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border:none;background:transparent;color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s}.icon-btn:hover{background:var(--surface-3);color:var(--primary)}.icon-btn.danger:hover{background:var(--danger-soft);color:var(--danger)}.icon-btn svg{width:17px;height:17px}.link{color:var(--primary);font-weight:600;font-size:.85rem}.link:hover{text-decoration:underline}.link.danger{color:var(--danger, #c0392b)}.note{border-radius:8px;padding:10px 14px;font-size:13px;border:1px solid var(--line, #e5e5e5);background:var(--bg-soft, #f7f9fc)}.note-warn{background:var(--warn-soft);border-color:#f0d49a;color:var(--warn)}.note-ok{background:var(--ok-soft);border-color:#b6e3bf;color:var(--ok)}.note-info{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 35%,transparent);color:var(--text-soft)}.app-shell{display:flex;min-height:100vh}.sidebar{width:256px;flex-shrink:0;background:var(--sidebar);color:var(--sidebar-text);display:flex;flex-direction:column;padding:1.1rem .85rem;position:sticky;top:0;height:100vh;height:100dvh;border-right:1px solid var(--border)}.brand{display:flex;align-items:center;justify-content:center;gap:.7rem;padding:.35rem .5rem 1.1rem;margin-bottom:.6rem;border-bottom:1px solid var(--border)}.brand .brand-logo{height:78px;flex:1;min-width:0;object-position:center}.brand-name{font-weight:700;color:var(--text);font-size:1.02rem;letter-spacing:-.01em}.brand-sub{font-size:.72rem;color:var(--sidebar-muted)}.nav{display:flex;flex-direction:column;gap:.12rem;flex:1;overflow-y:auto}.nav-group{display:flex;flex-direction:column}.nav-group+.nav-group{margin-top:.35rem}.nav-group-toggle{display:flex;align-items:center;gap:.4rem;width:100%;padding:.3rem .6rem .32rem;background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:background .15s}.nav-group-toggle:hover{background:var(--sidebar-2)}.nav-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--sidebar-muted);font-weight:700;margin:0;flex:1;text-align:left}.nav-group-caret{width:14px;height:14px;flex-shrink:0;color:var(--sidebar-muted);transition:transform .18s ease}.nav-group.closed .nav-group-caret{transform:rotate(-90deg)}.nav-group-items{display:flex;flex-direction:column;gap:.12rem;overflow:hidden}.nav-group.closed .nav-group-items{display:none}.nav-item{position:relative;display:flex;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:var(--radius-sm);color:var(--sidebar-text);font-weight:500;font-size:.9rem;transition:background .15s,color .15s}.nav-item:hover{background:var(--sidebar-2);color:var(--text)}.nav-item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.nav-item.active:before{content:"";position:absolute;left:-.85rem;top:50%;transform:translateY(-50%);width:3px;height:22px;border-radius:0 3px 3px 0;background:var(--primary)}.nav-item.active .nav-icon{color:var(--primary)}.nav-icon{width:19px;height:19px;flex-shrink:0;color:var(--muted);transition:color .15s}.nav-item:hover .nav-icon{color:var(--text)}.nav-badge{margin-left:auto;min-width:1.15rem;height:1.15rem;padding:0 .35rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#b3261e;color:#fff;font-size:.7rem;font-weight:700;line-height:1}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;margin-left:.4rem;padding:0 .35rem;border-radius:999px;background:#b3261e;color:#fff;font-size:.7rem;font-weight:700;line-height:1;vertical-align:middle}.app-shell.is-collapsed .nav-badge{display:inline-flex;position:absolute;top:.1rem;right:.35rem;margin:0;min-width:1rem;height:1rem;padding:0 .2rem;font-size:.62rem;box-shadow:0 0 0 2px var(--sidebar);z-index:1}.sidebar-foot{border-top:1px solid var(--border);padding-top:.85rem;margin-top:.6rem;display:flex;flex-direction:column;gap:.6rem}.user-card{display:flex;align-items:center;gap:.65rem;padding:.35rem .4rem;border-radius:var(--radius-sm)}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--primary),#38bdf8);color:#fff;font-weight:700;font-size:.85rem;flex-shrink:0}.avatar-sm{width:34px;height:34px;font-size:.78rem;border-radius:9px}.user-name{font-size:.86rem;font-weight:600;color:var(--text)}.user-role{font-size:.72rem;color:var(--sidebar-muted);text-transform:capitalize}.logout-btn{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .7rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-soft);font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.logout-btn:hover{background:var(--danger-soft);border-color:#f4b9b9;color:var(--danger)}.logout-btn .nav-icon{color:inherit}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:64px;background:#ffffffd9;-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 1.75rem;position:sticky;top:0;z-index:5}.topbar-titles{display:flex;flex-direction:column;gap:.1rem;min-width:0}.topbar h1{font-size:1.18rem;font-weight:700}.topbar-crumb{font-size:.74rem;color:var(--muted);font-weight:500}.menu-btn,.sidebar-close,.sidebar-backdrop{display:none}.topbar-user{display:flex;align-items:center;gap:.75rem}.topbar-divider{width:1px;height:28px;background:var(--border)}.notif{position:relative;display:inline-flex}.notif-count{position:absolute;top:-2px;right:-2px;min-width:1.05rem;height:1.05rem;padding:0 .25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#b3261e;color:#fff;font-size:.62rem;font-weight:700;line-height:1;border:2px solid var(--surface);pointer-events:none}.notif-btn.has-unread{color:var(--primary)}.notif-panel{position:absolute;top:calc(100% + .5rem);right:0;width:340px;max-width:calc(100vw - 2rem);max-height:70vh;max-height:70dvh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:60;overflow:hidden}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:1px solid var(--border)}.notif-title{font-weight:700;font-size:.9rem;color:var(--text)}.notif-mark{display:inline-flex;align-items:center;gap:.3rem;border:none;background:transparent;color:var(--primary);font-size:.78rem;font-weight:600;cursor:pointer;padding:.15rem .3rem;border-radius:var(--radius-sm)}.notif-mark:hover{background:var(--surface-3)}.notif-mark svg{width:15px;height:15px}.notif-list{overflow-y:auto}.notif-empty{padding:1.5rem 1rem;text-align:center;color:var(--muted);font-size:.85rem}.notif-item{display:flex;align-items:flex-start;gap:.6rem;width:100%;text-align:left;padding:.65rem .9rem;border:none;border-bottom:1px solid var(--border);background:transparent;cursor:pointer;transition:background .12s}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--surface-2)}.notif-item.unread{background:var(--primary-soft)}.notif-item.unread:hover{background:color-mix(in srgb,var(--primary-soft) 80%,var(--primary) 12%)}.notif-dot{flex-shrink:0;width:8px;height:8px;margin-top:.35rem;border-radius:999px;background:var(--muted)}.notif-dot.cat-solicitud{background:#0ea5e9}.notif-dot.cat-requisicion{background:#7c3aed}.notif-dot.cat-prestamo{background:#ea580c}.notif-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.notif-item-title{font-size:.83rem;font-weight:600;color:var(--text);overflow-wrap:anywhere}.notif-item-text{font-size:.79rem;color:var(--text-soft);line-height:1.3;overflow-wrap:anywhere}.notif-time{font-size:.72rem;color:var(--muted)}.content{padding:1.5rem 2rem;width:100%}.stack{display:flex;flex-direction:column;gap:1.25rem}.muted{color:var(--muted)}.muted-cell{color:var(--text-soft)}.unit-label{color:var(--muted);font-size:.8rem}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.85rem}.inline-icon{width:16px;height:16px;vertical-align:-3px;margin-right:.3rem;color:var(--muted)}.pad{padding:1rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);padding:1.25rem}.card.no-pad{padding:0;overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.card-head h3{font-size:.98rem;font-weight:700}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:1.1rem}.stat-card{display:flex;align-items:center;gap:1rem;position:relative;overflow:hidden;transition:box-shadow .15s,border-color .15s,transform .15s}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-1px)}.stat-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-sm);flex-shrink:0}.stat-icon svg{width:24px;height:24px}.stat-value{font-size:1.55rem;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-label{font-size:.8rem;color:var(--muted);margin-top:.2rem;font-weight:500}.accent-blue .stat-icon{background:#e0f2fe;color:#0284c7}.accent-green .stat-icon{background:#dcfce7;color:#16a34a}.accent-violet .stat-icon{background:#ede9fe;color:#7c3aed}.accent-amber .stat-icon{background:#fef3c7;color:#d97706}.grid-2{display:grid;grid-template-columns:1.4fr 1fr;gap:1.25rem}@media(max-width:900px){.grid-2{grid-template-columns:1fr}}.summary-list{list-style:none;margin:0;padding:0}.summary-list li{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid var(--border);font-size:.92rem}.summary-list li:last-child{border-bottom:none}.summary-list strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.toolbar.end{justify-content:flex-end}.toolbar-actions{margin-left:auto;display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:520px){.toolbar-actions{margin-left:0}.toolbar-actions .btn{flex:1 1 auto}}.toolbar.start{justify-content:flex-start}.search-box{position:relative;flex:1 1 320px;max-width:420px}.search-box .search-icon{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--muted)}.search-box input{padding-left:2.2rem}.filter-select{width:auto;flex:0 0 auto}.field-inline{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;font-size:.85rem;color:var(--muted);white-space:nowrap}.field-inline>span{font-weight:500}.field-inline input{width:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.72rem 1rem;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.table thead th{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);background:var(--surface-2);font-weight:700;position:sticky;top:0}.table tbody tr{transition:background .1s}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--surface-2)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table .muted{text-align:center;padding:2.5rem}.actions-col{text-align:right;width:1%}.actions-col .icon-btn{vertical-align:middle}.row-actions{position:relative;display:inline-block;vertical-align:middle;margin-left:.25rem}.row-actions-menu{position:fixed;z-index:1000;min-width:180px;padding:.25rem;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.row-actions-item{display:block;width:100%;text-align:left;padding:.45rem .6rem;border:none;background:transparent;color:var(--text, #1f1f1f);font-size:.85rem;font-weight:500;border-radius:var(--radius-sm);cursor:pointer}.row-actions-item:hover:not(:disabled){background:var(--surface-3)}.row-actions-item:disabled{opacity:.5;cursor:default}.row-actions-item.danger{color:var(--danger, #c0392b)}.row-actions-item.danger:hover:not(:disabled){background:var(--danger-soft, #fde8e8)}.out{color:var(--danger);font-weight:700}.card.no-pad.matrix-card{max-height:max(calc(100vh - 15rem),16rem);overflow-y:auto}.matrix-table .matrix-action-col{min-width:220px}.matrix-table th:first-child,.matrix-table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface)}.matrix-table thead th:first-child{z-index:4;background:var(--surface-2)}.matrix-table tbody tr:hover td:first-child{background:var(--surface-2)}.matrix-table .matrix-section td:first-child,.matrix-table tbody tr.matrix-section:hover td:first-child{background:var(--bg-soft, #f4f6fb)}.matrix-table .matrix-section strong{position:sticky;left:1rem;display:inline-block}@media(max-width:520px){.matrix-table .matrix-action-col{min-width:150px}}.matrix-table thead th{z-index:3}.matrix-table th.center,.matrix-table td.center{text-align:center}.matrix-table thead th{vertical-align:top}.matrix-table .role-col{display:inline-flex;flex-direction:column;align-items:center;gap:4px}.matrix-section td{background:var(--bg-soft, #f4f6fb);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;color:var(--muted, #6b7280);padding-top:10px;padding-bottom:6px}.matrix-table input[type=checkbox]{width:17px;height:17px;cursor:pointer}.matrix-table input[type=checkbox]:disabled{cursor:not-allowed;opacity:.65}.matrix-table input.chk-dirty{outline:2px solid var(--primary, #0176d3);outline-offset:1px;border-radius:3px}.checkbox-field{flex-direction:row;align-items:center;gap:8px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;padding:.18rem .6rem;border-radius:999px;font-size:.76rem;font-weight:700;line-height:1.4;text-align:center;border:1px solid transparent}.badge-ok{background:var(--ok-soft);color:#15803d;border-color:#bbf7d0}.badge-warn{background:var(--warn-soft);color:#b45309;border-color:#fde68a}.badge-info{background:var(--primary-soft);color:#0369a1;border-color:#bae6fd}.badge-danger{background:#fbe9e7;color:#b3261e;border-color:#f0bcb5}.badge-muted{background:#f1f5f9;color:#64748b;border-color:#e2e8f0}.loan-legend{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.legend-swatch{display:inline-block;width:.9rem;height:.9rem;border-radius:3px;border:1px solid #e2e8f0;vertical-align:middle}.swatch-pending{background:#ffeebc}.swatch-overdue{background:#fbd3ce}.loan-asset-card{display:flex;gap:.85rem;align-items:flex-start;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.loan-asset-thumb{width:72px;height:72px;flex-shrink:0}.loan-asset-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.loan-asset-meta p{margin:0}.note-danger{display:flex;flex-direction:column;gap:.2rem;padding:.7rem .85rem;border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:8px;background:var(--danger-soft)}.table tbody tr.is-pending{background:#ffeebc}.table tbody tr.is-pending:hover{background:#ffe4a0}.table tbody tr.is-overdue{background:#fbd3ce}.table tbody tr.is-overdue:hover{background:#f8c1ba}.table tbody tr.po-row-parcial{background:#fff8e6}.table tbody tr.po-row-parcial:hover{background:#fdf0cf}.table tbody tr.row-parcial{background:#fff8e6}.table tbody tr.row-parcial:hover{background:#fdf0cf}.field select.select-parcial{background-color:#fff8e6;border-color:#e6c66a}.field select option.option-parcial{background-color:#fff8e6}.table tbody tr.asset-row-maintenance{background:#fff1e0}.table tbody tr.asset-row-maintenance:hover{background:bisque}.table tbody tr.asset-row-out-of-service{background:#fdecea}.table tbody tr.asset-row-out-of-service:hover{background:#fbe0dc}.condition-inline-select{max-width:160px;padding:4px 8px;font-size:.82rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:inherit;cursor:pointer}.table tbody tr.req-row-docs-pending{background:#fff8e6}.table tbody tr.req-row-docs-pending:hover{background:#fdf0cf}.req-docs-alert{display:inline-flex;align-items:center;gap:6px;width:fit-content;max-width:100%;align-self:flex-start;padding:.52rem .95rem;text-align:left;cursor:pointer;font:inherit;font-size:.88rem;line-height:1.2}.req-docs-alert:hover{filter:brightness(.98)}.req-docs-alert-icon{font-size:.95rem;line-height:1}.req-docs-alert-text{font-weight:600}.req-docs-alert-cta{font-weight:700;white-space:nowrap}.req-docs{border-top:1px solid var(--border, #e5e7eb);padding-top:12px}.req-doc-slot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 12px;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:var(--surface-2, #f9fafb)}.req-doc-slot-main{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;flex:1 1 240px}.req-doc-name{font-weight:600}.pager-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.pager{display:flex;align-items:center;gap:.75rem}.pager button{width:34px;height:34px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-size:1rem;transition:background .15s,border-color .15s,color .15s}.pager button:hover:not(:disabled){background:var(--surface-2);border-color:var(--primary);color:var(--primary)}.pager button:disabled{opacity:.4;cursor:not-allowed}.form-error{color:var(--danger);font-size:.85rem;background:var(--danger-soft);border:1px solid #fecaca;padding:.6rem .8rem;border-radius:var(--radius-sm);margin:0}.field-missing>span{color:var(--danger);font-weight:600}.field-missing>input,.field-missing>select,.field-missing>textarea,.field-missing>.item-picker>.item-picker-trigger,.field-missing>.item-picker>.item-picker-input,.req-line.field-missing input,.req-line.field-missing select{border-color:var(--danger)!important;box-shadow:0 0 0 3px var(--danger-soft)}.field-missing-msg{color:var(--danger);font-size:.8rem;margin-top:.25rem}.req-line.field-missing{outline:2px solid var(--danger);outline-offset:2px;border-radius:var(--radius-sm)}.form-error.sticky-top{position:sticky;top:calc(-1 * var(--modal-body-pad, 1.4rem));z-index:5;margin:calc(-1 * var(--modal-body-pad, 1.4rem)) calc(-1 * var(--modal-body-pad, 1.4rem)) .4rem;border-radius:0;border-left:none;border-right:none;border-top:none;font-size:.95rem;font-weight:600;padding:.75rem 1.4rem;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .08))}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080f1e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:1.5rem;z-index:50;animation:fade .12s ease-out}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:560px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;animation:modal-in .16s ease-out}.modal-lg{max-width:860px}.modal-xl{max-width:min(1200px,96vw)}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.4rem;border-bottom:1px solid var(--border)}.modal-head h3{font-size:1.05rem;font-weight:700}.modal-body{--modal-body-pad: 1.4rem;padding:var(--modal-body-pad);overflow-y:auto;overflow-wrap:break-word}.modal-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem;padding:1rem 1.4rem;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.modal-foot .btn{white-space:nowrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid .span-2{grid-column:1 / -1}@media(max-width:520px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}}.btn-sm{padding:.4rem .7rem;font-size:.8rem}.img-col{width:1%;white-space:nowrap}.product-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--border);background:var(--surface-2);display:block}.product-thumb-empty{display:grid;place-items:center;font-size:1.1rem;color:var(--muted)}.product-thumb.is-clickable{cursor:zoom-in;transition:transform .1s ease,box-shadow .1s ease}.product-thumb.is-clickable:hover{transform:scale(1.05);box-shadow:0 2px 8px #0f172a40}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:2rem;background:#0f172ad1;z-index:300;animation:fade .12s ease-out;cursor:zoom-out}.lightbox-img{max-width:min(94vw,1100px);max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 12px 40px #00000080;background:var(--surface);cursor:default}.lightbox-close{position:fixed;top:1rem;right:1rem;width:40px;height:40px;display:grid;place-items:center;border:none;border-radius:50%;background:#ffffff26;color:#fff;cursor:pointer;transition:background .1s ease}.lightbox-close:hover{background:#ffffff4d}.image-uploader{display:flex;align-items:center;gap:1rem}.image-preview{width:88px;height:88px;border-radius:10px;object-fit:cover;border:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.image-preview-empty{display:grid;place-items:center;font-size:2rem;color:var(--muted)}.image-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.image-hint{width:100%;margin:0;font-size:.75rem}.evidence-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.evidence-row{display:flex;align-items:center;gap:.75rem;padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.evidence-row-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.attachment-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.attachment-item a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-item .icon-btn{margin-left:auto}.pickup-ref-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.pickup-ref-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.45rem}.pickup-ref-row{display:flex;align-items:center;gap:.75rem;padding:.4rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);transition:background .12s ease,border-color .12s ease}.pickup-ref-ready{background:color-mix(in srgb,var(--ok, #2e844a) 12%,var(--surface-2));border-color:color-mix(in srgb,var(--ok, #2e844a) 45%,var(--border))}.pickup-ref-check{width:1.15rem;height:1.15rem;flex:none;cursor:pointer;accent-color:var(--ok, #2e844a)}.pickup-ref-info{flex:1;display:flex;flex-direction:column;min-width:0}.pickup-ref-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pickup-ref-loc{font-size:.85em;font-weight:600;color:#1b5e20}.pickup-ref-photo{display:inline-flex;align-items:center;gap:.5rem;margin-top:.35rem;flex-wrap:wrap}.pickup-ref-photo .form-error{font-size:.8em;margin:0}.pickup-ref-condition{display:flex;flex-direction:column;gap:.25rem;margin-top:.4rem;max-width:26rem}.pickup-ref-condition>label{font-size:.82em;font-weight:600}.pickup-ref-condition>select,.pickup-ref-condition>input{font-size:.9em;padding:.35rem .5rem}.pickup-ref-condition .form-error{font-size:.8em;margin:0}.pickup-ref-condition.field-missing>label{color:var(--danger)}.pickup-ref-qty{font-weight:600;white-space:nowrap}.pickup-ref-ship{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;font-weight:400}.pickup-ref-ship>label{font-size:.78em;text-transform:uppercase;letter-spacing:.02em}.pickup-ref-ship input{width:5.5rem;text-align:right;font-weight:600}.pickup-ref-rest{font-size:.8em;font-weight:600;color:var(--warn, #a06000)}.pickup-ref-skip{opacity:.6;border-style:dashed}.pickup-partial-note{margin:.6rem 0 0;padding:.5rem .7rem;border-radius:8px;font-size:.9em;color:var(--warn, #a06000);background:color-mix(in srgb,var(--warn, #a06000) 10%,var(--surface-2));border:1px solid color-mix(in srgb,var(--warn, #a06000) 35%,var(--border))}.pickup-ref-actions{flex:none;margin-left:auto;display:flex;align-items:center}.acomodo-loc{display:flex;flex-direction:column;gap:2px;margin-top:.35rem}.acomodo-loc input{padding:.3rem .5rem;border:1px solid var(--border);border-radius:6px;font:inherit;max-width:260px}.acomodo-actions{flex:none;display:flex;align-items:flex-start}.settings-toggle{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;cursor:pointer;margin-top:.5rem}.settings-toggle input{width:1.15rem;height:1.15rem;cursor:pointer;accent-color:var(--ok, #2e844a)}.settings-actions{display:flex;gap:.5rem;margin-top:.85rem;flex-wrap:wrap}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.evidence-item{display:flex;flex-direction:column;gap:.35rem;text-decoration:none;color:inherit}.evidence-thumb{width:100%;height:100px;border-radius:10px;object-fit:cover;border:1px solid var(--border);background:var(--surface-2)}.evidence-doc{display:grid;place-items:center;font-size:.9rem;font-weight:600;color:var(--muted)}.evidence-name{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-lines{display:flex;flex-direction:column;gap:.5rem}.req-line{display:grid;grid-template-columns:minmax(0,1fr) 90px 2.5rem auto;align-items:center;gap:.5rem}@media(max-width:520px){.req-line:not(.req-line--receipt):not(.po-line){grid-template-columns:minmax(0,1fr) 4rem 2.5rem auto;gap:.35rem}}.req-line--receipt{grid-template-columns:minmax(0,1fr) 5.5rem 5.5rem 7rem 3rem 2.25rem;column-gap:.6rem;row-gap:.35rem}.req-line--receipt .req-qty{width:100%;min-width:0;text-align:center}.req-line--receipt .req-unit{text-align:center}.req-head{padding:0 0 .15rem;font-size:.68rem;font-weight:600;letter-spacing:0;text-transform:uppercase;color:var(--text-soft)}.req-head-c{text-align:center;white-space:nowrap;overflow:visible}.req-qty{text-align:right;width:4.5rem;min-width:4.5rem}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table td.cell-form{white-space:normal;background:var(--surface-2)}.table td.cell-form>.field{contain:inline-size;min-width:18rem}.table-receipt th,.table-receipt td{padding:.55rem .6rem}.table-receipt td:nth-child(3){white-space:normal;min-width:14rem}.input-invalid{border-color:var(--danger, #c23934)!important;background:var(--danger-soft, #fdf0ef)}.input-invalid:focus{outline-color:var(--danger, #c23934)}.req-unit{font-size:.8rem;color:var(--text-soft)}.req-warn{grid-column:1 / -1;font-size:.75rem;color:var(--danger)}.req-note{grid-column:1 / -1;font-size:.75rem;color:var(--text-soft)}.req-add{margin-top:.65rem;align-self:start}.seg-group{display:inline-flex;flex-wrap:wrap;gap:.4rem}.item-picker{position:relative;min-width:0}.item-picker-row{display:flex;align-items:center;gap:.35rem;min-width:0}.item-picker-row>.item-picker-trigger,.item-picker-row>.item-picker-input{flex:1 1 auto;min-width:0}.item-picker-scan{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-soft);cursor:pointer}.item-picker-scan:hover{border-color:var(--primary);color:var(--primary)}.item-picker-scan svg{width:1.05rem;height:1.05rem}.item-picker-scan-error{margin:.3rem 0 0;font-size:.78rem;color:var(--danger, #dc2626)}.item-picker-trigger{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .65rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:.9rem;text-align:left;cursor:pointer}.item-picker-trigger:hover{border-color:var(--primary)}.item-picker-label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text)}.item-picker-placeholder{flex:1;color:var(--text-soft)}.item-picker-trigger-icon{flex-shrink:0;color:var(--text-soft)}.item-picker-input{display:flex;align-items:center;gap:.45rem;padding:.5rem .65rem;background:var(--surface);border:1px solid var(--primary);border-radius:8px}.item-picker-input svg{flex-shrink:0;color:var(--text-soft)}.item-picker-input input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:.9rem}.item-picker-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:auto;min-width:100%;width:max-content;max-width:min(460px,92vw);max-height:320px;overflow-y:auto;margin:0;padding:.25rem;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg)}.item-picker-option{display:flex;align-items:center;gap:.6rem;padding:.45rem .55rem;border-radius:6px;font-size:.88rem;cursor:pointer}.item-picker-option.active{background:var(--primary-soft)}.item-picker-thumb{flex-shrink:0;width:2.6rem;height:2.6rem;border-radius:6px;border:1px solid var(--border);background:var(--surface-muted, #f3f4f6);overflow:hidden;display:flex;align-items:center;justify-content:center}.item-picker-thumb img{width:100%;height:100%;object-fit:cover}.item-picker-thumb.is-zoomable{cursor:zoom-in}.item-picker-thumb.is-zoomable:hover{border-color:var(--brand, #0ea5e9)}.item-picker-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0f172ab8}.item-picker-preview-box{position:relative;background:var(--surface, #fff);border-radius:10px;padding:.75rem;max-width:min(90vw,640px);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 50px #00000059}.item-picker-preview-box img{max-width:100%;max-height:75vh;object-fit:contain;border-radius:6px}.item-picker-preview-caption{margin:.6rem 0 0;text-align:center;font-size:.85rem;color:var(--text-muted, #6b7280)}.item-picker-preview-close{position:absolute;top:-.7rem;right:-.7rem;width:2rem;height:2rem;border-radius:50%;border:1px solid var(--border);background:var(--surface, #fff);color:var(--text, #111827);font-size:1.3rem;line-height:1;cursor:pointer;box-shadow:0 2px 6px #0003}.item-picker-preview-close:hover{background:var(--surface-muted, #f3f4f6)}.item-picker-thumb-empty{font-size:1.2rem;line-height:1}.item-thumb-sm{width:2.1rem;height:2.1rem}.qr-scanner{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3100;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0f172ab8}.qr-scanner-box{width:min(94vw,460px);max-height:92vh;max-height:92dvh;overflow-y:auto;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 50px #00000059}.qr-scanner-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.qr-scanner-head h3{margin:0;font-size:1rem;color:var(--text)}.qr-scanner-close{width:1.9rem;height:1.9rem;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer}.qr-scanner-close:hover{background:var(--surface-muted, #f3f4f6)}.qr-scanner-view{position:relative;aspect-ratio:4 / 3;border-radius:10px;overflow:hidden;background:#0f172a}.qr-scanner-view video{width:100%;height:100%;object-fit:cover;display:block}.qr-scanner-frame{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:2px solid rgba(255,255,255,.85);border-radius:10px;box-shadow:0 0 0 100vmax #0f172a40;pointer-events:none}.qr-scanner-state{position:absolute;left:.75rem;right:.75rem;bottom:.75rem;margin:0;padding:.5rem .65rem;border-radius:8px;background:#0f172ad1;color:#fff;font-size:.78rem;text-align:center}.qr-scanner-state.is-error{background:#ba0517e6}.qr-scanner-devices{display:flex;align-items:center;gap:.5rem;margin-top:.7rem;font-size:.8rem;color:var(--text-soft)}.qr-scanner-devices select{flex:1;min-width:0;padding:.35rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.82rem}.qr-scanner-hint{margin:.7rem 0 0;font-size:.8rem;color:var(--text-soft)}.qr-scanner-manual{display:flex;gap:.4rem;margin-top:.6rem}.qr-scanner-manual input{flex:1;min-width:0;padding:.45rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:.85rem}.qr-scanner-manual input:focus{outline:none;border-color:var(--primary)}.item-thumb-sm .item-picker-thumb-empty{font-size:1rem}.item-thumb-lg{width:4.5rem;height:4.5rem}.item-thumb-lg .item-picker-thumb-empty{font-size:2rem}.cell-with-thumb{display:inline-flex;align-items:center;gap:.5rem}.item-picker-option-text{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.item-picker-option-name{display:flex;align-items:center;gap:.4rem;font-weight:600;color:var(--text);white-space:normal;overflow-wrap:anywhere;line-height:1.25}.item-picker-stock{font-size:.78rem;color:var(--text-soft)}.item-picker-meta{display:flex;flex-wrap:wrap;gap:.15rem .75rem;align-items:baseline}.item-picker-detail{font-size:.78rem;color:var(--text-soft)}.item-picker-empty{padding:.6rem .55rem;font-size:.85rem;color:var(--text-soft)}.item-picker-create{display:flex;align-items:center;gap:.4rem;padding:.6rem .55rem;font-size:.85rem;font-weight:600;color:var(--brand, #1763d6);cursor:pointer;border-top:1px solid var(--border, #e5e7eb)}.item-picker-create:hover{background:var(--surface-hover, #f3f6fb)}.item-picker-create-plus{font-size:1rem;line-height:1}.item-tag{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.4rem;height:1.4rem;border-radius:6px;font-size:.78rem;font-weight:700;border:1px solid transparent}.item-tag.is-asset{background:var(--primary-soft);color:#0369a1;border-color:#bae6fd}.item-tag.is-product{background:var(--ok-soft);color:#15803d;border-color:#bbf7d0}.req-detail-head{display:flex;align-items:center;gap:.75rem}.po-line{grid-template-columns:1fr 80px 2.4rem 90px 5.5rem auto}.po-doc{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem .8rem;border:1px solid var(--border, #e5e5e5);border-radius:8px;background:var(--bg-soft, #f7f9fc);font-size:.9rem}.po-doc-actions{display:inline-flex;gap:.4rem;margin-left:auto}.po-doc-list{align-items:center}.po-doc-item{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .5rem;border:1px solid var(--border, #e5e5e5);border-radius:999px;background:var(--surface, #fff)}@media(max-width:720px){.po-line{grid-template-columns:1fr 1fr}}@media(max-width:640px){.req-head.req-line--receipt{display:none}.req-line--receipt{grid-template-columns:repeat(3,minmax(0,1fr))}.req-line--receipt>.item-picker{grid-column:1 / span 2;grid-row:1}.req-line--receipt>.icon-btn{grid-column:3;grid-row:1;justify-self:end}.req-line--receipt>.req-unit{grid-column:1 / -1;text-align:left}}.card.no-pad{overflow-x:auto;-webkit-overflow-scrolling:touch}.card.no-pad>.table{width:max-content;min-width:100%}.card.no-pad.scroll-x-always{overflow-x:scroll}.scroll-x-top{height:12px;overflow-x:auto;overflow-y:hidden;margin-bottom:.35rem}.scroll-x-top__inner{height:1px}.scroll-x-top.is-hidden{display:none}@media(max-width:1024px){.sidebar{width:220px}}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;width:270px;max-width:85vw;z-index:60;transform:translate(-100%);transition:transform .25s ease;box-shadow:var(--shadow-lg)}.sidebar.open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:55;opacity:0;pointer-events:none;transition:opacity .25s ease}.sidebar-backdrop.show{opacity:1;pointer-events:auto}.menu-btn{display:inline-grid}.sidebar-close{display:inline-grid;margin-left:auto;color:var(--sidebar-text)}.sidebar-close:hover{background:var(--sidebar-2);color:var(--primary)}.topbar{gap:.75rem;padding:0 1rem}.topbar h1{font-size:1.05rem}.topbar-titles{flex:1}.topbar h1,.topbar-crumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-user .muted,.topbar-divider{display:none}.topbar-search{min-width:0;width:36px;padding:0;justify-content:center;background:transparent;border-color:transparent}.topbar-search .ts-label,.topbar-search kbd{display:none}.topbar-search:hover{background:var(--surface-3)}.content{padding:1.1rem}}@media(max-width:768px)and (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}}@media(max-width:520px){.content{padding:.9rem}.topbar-obj{display:none}.notif-panel{position:fixed;top:calc(64px + .5rem);left:.75rem;right:.75rem;width:auto;max-width:none}.toolbar{flex-direction:column;align-items:stretch}.toolbar.end{align-items:flex-end}.search-box{flex-basis:auto;max-width:none}.toolbar>.btn{width:100%}.cards{grid-template-columns:1fr}.modal-overlay{padding:.75rem}.modal{max-height:94vh;max-height:94dvh}.modal-body{--modal-body-pad: 1.1rem;padding:var(--modal-body-pad)}.bulk-actions{margin-left:0;flex-wrap:wrap}.lightbox-overlay{padding:1rem}.pager-bar{flex-direction:column;gap:.6rem;align-items:stretch;text-align:center}.pager{justify-content:center}}.topbar-obj{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius);background:linear-gradient(135deg,var(--primary),#1b96ff);color:#fff;flex-shrink:0;box-shadow:0 2px 5px -1px #0176d373}.topbar-obj svg{width:20px;height:20px}.topbar-lead{display:flex;align-items:center;gap:.8rem;min-width:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.page-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.page-header .eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--muted)}.page-header h2{font-size:1.35rem;font-weight:700;margin-top:.15rem}.page-header .sub{font-size:.85rem;color:var(--text-soft);margin-top:.2rem}.card-head .card-title{display:flex;align-items:center;gap:.55rem}.card-head .card-title svg{width:18px;height:18px;color:var(--primary)}.stat-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:currentColor;opacity:.9}.accent-blue:after{color:#0176d3}.accent-green:after{color:#2e844a}.accent-violet:after{color:#9050e9}.accent-amber:after{color:#a86403}.accent-violet .stat-icon{background:#f0e9fb;color:#7526e3}.badge-dot{gap:.4rem;padding-left:.5rem;background:var(--surface-3);color:var(--text-soft);border-color:var(--border)}.badge-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.sk-line{display:block;height:12px;width:100%;border-radius:4px;background:linear-gradient(90deg,var(--surface-3) 25%,#eaeaea 37%,var(--surface-3) 63%);background-size:400% 100%;animation:sk-shimmer 1.3s ease-in-out infinite}.sk-line.sk-sm{width:55%}.sk-line.sk-chip{width:48px;height:20px;border-radius:999px;margin-left:auto}.sk-line.sk-avatar{width:40px;height:40px;border-radius:8px}@keyframes sk-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.sk-block{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-3) 25%,#eaeaea 37%,var(--surface-3) 63%);background-size:400% 100%;animation:sk-shimmer 1.3s ease-in-out infinite}.empty-cell{padding:0!important}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1.5rem;text-align:center;white-space:normal}.empty-state .empty-ico{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--primary-soft);color:var(--primary);margin-bottom:.25rem}.empty-state .empty-ico svg{width:28px;height:28px}.empty-state .empty-title{margin:0;font-weight:700;font-size:.98rem;color:var(--text)}.empty-state .empty-hint{margin:0;font-size:.85rem;color:var(--muted);max-width:38ch}.toast-stack{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:200;display:flex;flex-direction:column;gap:.6rem;width:min(440px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:.7rem;padding:.75rem .85rem;border-radius:var(--radius);background:#032d60;color:#fff;box-shadow:var(--shadow-lg);font-size:.9rem;font-weight:500;animation:toast-in .22s cubic-bezier(.2,.8,.2,1)}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}}.toast-success{background:#2e844a}.toast-error{background:#ba0517}.toast-warning{background:#a86403}.toast-info{background:#032d60}.toast-icon{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff38;font-weight:800;font-size:.8rem;flex-shrink:0}.toast-msg{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.35}.toast-close{display:inline-grid;place-items:center;width:26px;height:26px;border:none;background:transparent;color:#ffffffd9;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.toast-close:hover{background:#ffffff2e;color:#fff}.toast-close svg{width:15px;height:15px}.bar-list{display:flex;flex-direction:column;gap:.9rem}.bar-row{display:grid;grid-template-columns:1fr auto;gap:.2rem .75rem;align-items:center}.bar-row .bar-name{font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-row .bar-val{font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--text-soft);font-weight:600}.bar-track{grid-column:1 / -1;height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}.bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#fb923c,#ef4444);transition:width .5s ease}.bar-fill.ok{background:linear-gradient(90deg,#34d399,#2e844a)}.rotation-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.rotation-grid>*{min-width:0}@media(max-width:900px){.rotation-grid{grid-template-columns:1fr}}.rot-subhead{display:flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;margin-bottom:.9rem}.rot-subhead .rot-note{margin-left:auto;font-size:.76rem;font-weight:500;color:var(--text-soft)}.rot-legend-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.donut-wrap{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.donut{--p1: 0%;--p2: 0%;width:132px;height:132px;border-radius:50%;flex-shrink:0;background:conic-gradient(#0176d3 0 var(--p1),#9050e9 var(--p1) var(--p2),#2e844a var(--p2) 100%);position:relative}.donut:after{content:"";position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;background:var(--surface)}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;z-index:1}.donut-center .dc-val{font-size:1.4rem;font-weight:700;line-height:1}.donut-center .dc-lbl{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.legend{display:flex;flex-direction:column;gap:.6rem;flex:1;min-width:160px}.legend-item{display:flex;align-items:center;gap:.6rem;font-size:.9rem}.legend-dot{width:11px;height:11px;border-radius:3px;flex-shrink:0}.legend-item .legend-val{margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums}.io-donuts-wrap{display:flex;flex-direction:column;gap:.9rem}.io-legend-row{flex-direction:row;flex:none;gap:1.4rem;margin:0;padding:0;list-style:none}.io-donuts{display:flex;flex-wrap:wrap;gap:1rem 1.2rem;justify-content:space-between}.io-donut-cell{display:flex;flex-direction:column;align-items:center;gap:.45rem}.mini-donut{width:86px;height:86px;border-radius:50%;position:relative;flex-shrink:0}.mini-donut:after{content:"";position:absolute;top:15px;right:15px;bottom:15px;left:15px;border-radius:50%;background:var(--surface)}.mini-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:.82rem;font-weight:700;color:var(--text);z-index:1;font-variant-numeric:tabular-nums}.io-donut-x{font-size:.78rem;color:var(--muted);text-transform:capitalize}.proj-dash-hero{display:flex;align-items:center;gap:1.75rem;flex-wrap:wrap}.proj-donut{--pct: 0deg;width:128px;height:128px;border-radius:50%;flex-shrink:0;position:relative;background:conic-gradient(#16a34a 0 var(--pct),#f59e0b var(--pct) 360deg)}.proj-donut.empty{background:var(--surface-3)}.proj-donut:after{content:"";position:absolute;top:19px;right:19px;bottom:19px;left:19px;border-radius:50%;background:var(--surface)}.proj-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;z-index:1}.proj-donut-center .pdc-val{font-size:1.6rem;font-weight:700;line-height:1}.proj-donut-center .pdc-lbl{font-size:.64rem;color:var(--muted);margin-top:3px;text-transform:uppercase;letter-spacing:.06em}.proj-hero-figs{display:flex;gap:1.5rem 2rem;flex-wrap:wrap;flex:1}.proj-hero-fig .phf-val{font-size:1.9rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.proj-hero-fig .phf-lbl{font-size:.78rem;color:var(--muted);margin-top:.35rem}.proj-hero-fig.green .phf-val{color:#16a34a}.proj-hero-fig.amber .phf-val{color:#d97706}.proj-value-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1.5rem;border-left:4px solid #16a34a;background:linear-gradient(90deg,rgba(22,163,74,.08),transparent 60%)}.proj-value-banner .pvb-lbl{font-size:.8rem;color:var(--muted);font-weight:500}.proj-value-banner .pvb-val{font-size:2rem;font-weight:800;line-height:1.1;color:#16a34a;font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:.15rem}.proj-value-banner .pvb-split{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.85rem;color:var(--text-soft)}.proj-value-banner .pvb-split strong{color:var(--text);font-variant-numeric:tabular-nums}.proj-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem}.proj-kpi{border:1px solid var(--border);border-top:3px solid var(--kpi, #0284c7);border-radius:var(--radius);background:var(--surface);padding:.8rem .9rem}.proj-kpi .pk-val{font-size:1.45rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.proj-kpi .pk-lbl{font-size:.76rem;color:var(--muted);margin-top:.25rem;font-weight:500}.proj-kpi .pk-sub{font-size:.7rem;color:var(--text-soft);margin-top:.2rem}.proj-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:.35rem;vertical-align:middle}.proj-caret{display:inline-block;color:var(--muted);font-size:.8rem;width:.9em}.proj-detail-block>summary{cursor:pointer;font-weight:600;font-size:.9rem;padding:.3rem 0;-webkit-user-select:none;user-select:none;list-style:none}.proj-detail-block>summary::-webkit-details-marker{display:none}.topbar-search{display:flex;align-items:center;gap:.55rem;height:36px;padding:0 .6rem 0 .7rem;min-width:220px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--muted);font-family:inherit;font-size:.85rem;cursor:pointer;transition:border-color .15s,background .15s}.topbar-search:hover{border-color:#b9c2d0;background:var(--surface)}.topbar-search svg{width:16px;height:16px}.topbar-search .ts-label{flex:1;text-align:left}kbd{font-family:inherit;font-size:.7rem;font-weight:700;color:var(--text-soft);background:var(--surface);border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;padding:.05rem .35rem;white-space:nowrap}.rail-toggle{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;padding:.5rem .7rem;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-soft);font-size:.82rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s,color .15s;margin-bottom:.6rem;flex-shrink:0}.rail-toggle:hover{background:var(--surface-3);color:var(--primary)}.rail-toggle svg{width:18px;height:18px;transition:transform .2s ease}.is-collapsed .sidebar{width:76px;padding-left:.7rem;padding-right:.7rem}.is-collapsed .brand{justify-content:center}.is-collapsed .brand .brand-logo{height:auto;width:100%;max-width:56px;flex:0 1 auto;object-position:center}.is-collapsed .brand-text,.is-collapsed .nav-item span:not(.nav-badge),.is-collapsed .nav-label,.is-collapsed .user-info,.is-collapsed .logout-btn span,.is-collapsed .rail-toggle span{display:none}.is-collapsed .nav-item,.is-collapsed .user-card,.is-collapsed .logout-btn{justify-content:center}.is-collapsed .nav-item.active:before{left:-.7rem}.is-collapsed .nav-group-toggle{display:none}.is-collapsed .nav-group+.nav-group{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--sidebar-2)}.is-collapsed .rail-toggle svg{transform:rotate(180deg)}@media(max-width:768px){.rail-toggle{display:none}.is-collapsed .sidebar{width:270px;padding:1.1rem .85rem}.is-collapsed .brand-text,.is-collapsed .nav-item span:not(.nav-badge),.is-collapsed .nav-label,.is-collapsed .user-info,.is-collapsed .logout-btn span{display:revert}.is-collapsed .nav-group-toggle{display:flex}.app-shell.is-collapsed .nav-badge{position:static;margin-left:auto;min-width:1.15rem;height:1.15rem;padding:0 .35rem;font-size:.7rem;box-shadow:none}}.compact .table th,.compact .table td{padding-top:.42rem;padding-bottom:.42rem}.compact .product-thumb{width:34px;height:34px}.compact .content{padding-top:1.1rem;padding-bottom:1.1rem}.density-active{color:var(--primary)!important;background:var(--primary-soft)!important}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080f1e73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding-top:12vh;z-index:120;animation:fade .12s ease-out}.cmdk{width:min(560px,calc(100vw - 2rem));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:modal-in .16s ease-out}.cmdk-input{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;border-bottom:1px solid var(--border)}.cmdk-input svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.cmdk-input input{border:none;padding:0;font-size:1rem;background:transparent}.cmdk-input input:focus{outline:none;box-shadow:none}.cmdk-list{list-style:none;margin:0;padding:.4rem;max-height:min(320px,50vh);max-height:min(320px,50dvh);overflow-y:auto}.cmdk-item{display:flex;align-items:center;gap:.7rem;padding:.6rem .7rem;border-radius:var(--radius-sm);font-size:.92rem;font-weight:500;color:var(--text);cursor:pointer}.cmdk-item svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.cmdk-item>span:first-of-type{min-width:0;overflow-wrap:anywhere}.cmdk-item.active{background:var(--primary-soft);color:var(--primary)}.cmdk-item.active svg{color:var(--primary)}.cmdk-item .cmdk-go{margin-left:auto;font-size:.72rem;color:var(--muted)}.cmdk-empty{padding:1.5rem;text-align:center;color:var(--muted);font-size:.9rem}.cmdk-foot{display:flex;gap:1rem;padding:.55rem 1rem;border-top:1px solid var(--border);font-size:.74rem;color:var(--muted)}.cmdk-foot kbd{margin-right:.3rem}.cmdk-group{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--muted);padding:.6rem .7rem .3rem}.cmdk-item .cmdk-kind{margin-left:auto;flex-shrink:0;font-size:.72rem;color:var(--muted);font-weight:600}.cmdk-item.active .cmdk-kind{color:var(--primary)}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s,background .15s}.table th.sortable:hover{color:var(--primary);background:var(--surface-3)}.th-inner{display:inline-flex;align-items:center;gap:.35rem}.table th.num .th-inner{flex-direction:row-reverse}.sort-caret{font-size:.6rem;line-height:1;opacity:.35;transition:opacity .15s}.table th.sortable:hover .sort-caret{opacity:.7}.table th.sorted{color:var(--primary)}.table th.sorted .sort-caret{opacity:1;color:var(--primary)}.check-col{width:1%;text-align:center;white-space:nowrap}.row-check{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--primary);vertical-align:middle}.table tbody tr.is-selected{background:var(--primary-soft)}.table tbody tr.is-selected:hover{background:#e0edfb}.bulk-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .85rem;padding:.55rem .85rem;background:#032d60;color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-md);animation:toast-in .18s ease-out}.bulk-clear{display:inline-grid;place-items:center;width:28px;height:28px;border:none;background:#ffffff29;color:#fff;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.bulk-clear:hover{background:#ffffff47}.bulk-clear svg{width:15px;height:15px}.bulk-count{font-weight:700;font-size:.9rem}.bulk-actions{display:flex;gap:.5rem;margin-left:auto}.bulk-actions .btn{border-color:transparent}.views-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.views-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--muted);margin-right:.15rem}.view-chip{display:inline-flex;align-items:center;max-width:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;overflow:hidden}.view-apply{border:none;background:transparent;color:var(--text);font-family:inherit;font-size:.82rem;font-weight:600;padding:.28rem .4rem .28rem .75rem;cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-apply:hover{color:var(--primary)}.view-del{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 .55rem 0 .3rem}.view-del:hover{color:var(--danger)}.pager-info{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.page-size{display:flex;align-items:center;gap:.5rem}.page-size select{width:auto;padding:.3rem .5rem;font-size:.82rem}.pager button{font-weight:600}.doc-open-switch{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.doc-missing{color:var(--danger, #b91c1c);font-weight:600}.doc-issue{color:var(--warn-text, #92400e)}.row-clickable{cursor:pointer}.mov-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:.6rem 1.5rem}.mov-field{display:flex;flex-direction:column;gap:.1rem;min-width:0}.mov-field-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted, #6b7280)}.mov-field-value{font-weight:600;overflow-wrap:anywhere}.mov-docs{margin:.35rem 0 0;padding-left:1.1rem}.mov-review{border-top:1px solid var(--border, #e5e7eb);padding-top:.9rem}.doc-links{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin-top:.25rem;font-size:.85em}.audit-active{display:flex;flex-direction:column;gap:1.1rem}.audit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.audit-head-info{min-width:0}.audit-folio{display:flex;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700}.audit-folio svg{width:20px;height:20px;color:var(--primary)}.audit-head-info p{margin:.3rem 0 0;font-size:.85rem}.audit-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.audit-progress{display:flex;flex-direction:column;gap:.45rem}.audit-progress .bar-track{height:12px}.audit-progress-meta{display:flex;align-items:baseline;gap:.6rem}.audit-progress-meta strong{font-size:1.15rem;font-variant-numeric:tabular-nums;color:var(--primary)}.audit-chips{display:flex;flex-wrap:wrap;gap:.5rem}.audit-chip{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--surface-3);color:var(--text-soft);border:1px solid var(--border)}.audit-chip.ok{background:var(--ok-soft);color:#15803d;border-color:#bbf7d0}.audit-chip.warn{background:var(--warn-soft);color:#b45309;border-color:#fde68a}.audit-chip.info{background:var(--primary-soft);color:#1d4ed8;border-color:#bfdbfe}.audit-scan{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--primary-soft)}.audit-scan-input{flex:1 1 auto;max-width:none}.audit-scan-input input{font-size:.95rem}.audit-paused-note{padding:.9rem 1.25rem;border-bottom:1px solid var(--border);background:var(--warn-soft);color:#b45309;font-weight:600;font-size:.88rem}.audit-filters{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.audit-filters .search-box{flex:1 1 280px}.audit-actions-th,.audit-row-actions{min-width:230px;width:230px}.audit-row-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:.4rem;white-space:nowrap}.audit-row-actions>*{flex:0 0 auto}.audit-count-input{width:72px;flex:0 0 72px;padding:.32rem .5rem;text-align:right;font-size:.85rem}.audit-row-actions .link{padding:.32rem .4rem;font-size:.82rem;white-space:nowrap}.audit-diff-neg{color:var(--danger);font-weight:700}.audit-diff-pos{color:var(--primary);font-weight:700}.audit-section-title{font-size:1rem;font-weight:700}.audit-detail-head{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.audit-form-hint{font-size:.8rem;margin:0}.audit-adj{margin-left:.35rem;font-size:.72rem;font-weight:700;padding:.05rem .3rem;border-radius:4px}.audit-adj.pos{color:#15803d;background:var(--ok-soft)}.audit-adj.neg{color:var(--danger);background:var(--danger-soft)}.audit-movs-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.audit-movs-head strong{font-size:.92rem}.audit-movs-card .table th,.audit-movs-card .table td{padding-top:.55rem;padding-bottom:.55rem}.theme-options{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:.5rem}.theme-option{display:flex;align-items:center;gap:.75rem;padding:.7rem .9rem;min-width:190px;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;color:var(--text);font:inherit;text-align:left}.theme-option:hover{border-color:var(--border-strong)}.theme-option.is-selected{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring)}.theme-option-label{display:flex;flex-direction:column;gap:.15rem;font-weight:600}.theme-option-active{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary)}.theme-swatch{position:relative;width:46px;height:34px;border-radius:6px;border:1px solid var(--border-strong);overflow:hidden;flex-shrink:0}.theme-swatch-light{background:#eef6fc}.theme-swatch-dark{background:#0b1220}.theme-swatch-bar{position:absolute;left:6px;right:6px;top:7px;height:5px;border-radius:3px}.theme-swatch-light .theme-swatch-bar{background:#fff;box-shadow:0 0 0 1px #e5e5e5}.theme-swatch-dark .theme-swatch-bar{background:#151d2e;box-shadow:0 0 0 1px #2c3a52}.theme-swatch-dot{position:absolute;left:6px;bottom:6px;width:12px;height:12px;border-radius:50%;background:#0ea5e9}.theme-swatch-dark .theme-swatch-dot{background:#38bdf8}.login-company-chip{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.login-company-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-hover);overflow:hidden;flex:none}.login-company-icon img{width:100%;height:100%;object-fit:contain}.login-company-icon svg{width:17px;height:17px}.login-company-name{font-weight:700;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-company-change{font-size:.85rem;flex:none}.lp{min-height:100vh;background:var(--bg);color:var(--text)}.lp-container{width:100%;max-width:1120px;margin:0 auto;padding:0 1.5rem}.lp-nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.lp-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:66px}.lp-brand{display:inline-flex;align-items:center}.lp-logo{height:46px;width:auto;display:block}.lp-links{display:flex;align-items:center;gap:1.4rem}.lp-links>a{color:var(--text-soft);font-weight:600;font-size:.92rem;text-decoration:none}.lp-links>a:hover{color:var(--text)}.lp-link-login{color:var(--text)!important}.lp-cta{padding:.5rem 1.1rem}.lp-burger{display:none}.lp-hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(2.5rem,5vw,4rem);background:radial-gradient(120% 90% at 85% 0%,var(--primary-soft) 0%,transparent 55%)}.lp-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.lp-eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--primary-hover);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 22%,transparent);padding:.3rem .7rem;border-radius:999px}.lp-eyebrow svg{width:15px;height:15px}.lp-hero-copy h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.08;font-weight:800;margin:1rem 0;letter-spacing:-.02em}.lp-accent{color:var(--primary)}.lp-bullets{list-style:none;padding:0;margin:1.2rem 0 1.6rem;display:grid;gap:.6rem}.lp-bullets li{display:flex;align-items:center;gap:.6rem;color:var(--text-soft);font-size:1rem}.lp-bullets svg{width:20px;height:20px;color:var(--ok);flex:none}.lp-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.lp-btn-lg{padding:.72rem 1.5rem;font-size:.98rem;border-radius:var(--radius)}.lp-hero-note{margin-top:1rem;font-size:.9rem}.lp-hero-visual{display:flex;justify-content:center}.lp-mock{width:100%;max-width:460px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.lp-mock-top{display:flex;gap:.4rem;padding:.7rem .9rem;border-bottom:1px solid var(--line);background:var(--surface-2)}.lp-dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.lp-dot:nth-child(1){background:#f87171}.lp-dot:nth-child(2){background:#fbbf24}.lp-dot:nth-child(3){background:#34d399}.lp-mock-body{padding:1.1rem;display:grid;gap:1rem}.lp-mock-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.lp-mock-stat{display:grid;justify-items:start;gap:.15rem;padding:.7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.lp-mock-stat svg{width:18px;height:18px;color:var(--primary)}.lp-mock-stat b{font-size:1.2rem}.lp-mock-stat span{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}.lp-mock-rows{display:grid;gap:.55rem}.lp-mock-rows span{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--primary-soft),color-mix(in srgb,var(--primary) 30%,transparent))}.lp-section{padding:clamp(3rem,6vw,5rem) 0}.lp-section-alt{background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lp-section-head{text-align:center;max-width:680px;margin:0 auto 2.5rem;display:grid;gap:.6rem;justify-items:center}.lp-section-head h2{font-size:clamp(1.6rem,3.5vw,2.3rem);font-weight:800;letter-spacing:-.02em}.lp-features{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}.lp-feature{padding:1.4rem;display:grid;gap:.55rem;align-content:start}.lp-feature-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius);background:var(--primary-soft);color:var(--primary-hover);margin-bottom:.3rem}.lp-feature-icon svg{width:22px;height:22px}.lp-feature h3{font-size:1.05rem;font-weight:700}.lp-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:start}.lp-plan{padding:1.6rem;display:grid;gap:.7rem;position:relative}.lp-plan.is-featured{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),var(--shadow-md)}.lp-plan-badge{position:absolute;top:-.75rem;left:1.6rem;background:var(--primary);color:#fff;font-size:.72rem;font-weight:700;padding:.25rem .7rem;border-radius:999px}.lp-plan h3{font-size:1.15rem;font-weight:700}.lp-plan-price{display:flex;align-items:baseline;gap:.3rem}.lp-plan-price b{font-size:2rem;font-weight:800;letter-spacing:-.02em}.lp-plan-price span{color:var(--muted);font-size:.9rem}.lp-plan-tag{min-height:2.4em;font-size:.9rem}.lp-plan-features{list-style:none;padding:0;margin:.3rem 0 .9rem;display:grid;gap:.5rem}.lp-plan-features li{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-soft)}.lp-plan-features svg{width:17px;height:17px;color:var(--ok);flex:none}.lp-cta-band{padding:clamp(2.5rem,5vw,4rem) 0}.lp-cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;background:linear-gradient(120deg,var(--primary),var(--primary-hover));color:#fff;border-radius:var(--radius-lg);padding:2rem 2.4rem;box-shadow:var(--shadow-lg)}.lp-cta-band-inner h2{font-size:clamp(1.4rem,3vw,2rem);font-weight:800}.lp-cta-band-inner .muted{color:#ffffffd9}.lp-cta-band-inner .btn-primary{background:#fff;color:var(--primary-hover);border-color:#fff}.lp-cta-band-inner .btn-primary:hover{background:#f1f5f9}.lp-footer{border-top:1px solid var(--line);padding:1.6rem 0;background:var(--surface)}.lp-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.lp-footer .lp-logo{height:36px}@media(max-width:900px){.lp-hero-grid,.lp-features,.lp-plans{grid-template-columns:1fr}.lp-hero-visual{order:-1}}@media(max-width:720px){.lp-burger{display:inline-flex}.lp-links{position:absolute;top:66px;right:0;left:0;flex-direction:column;align-items:stretch;gap:.6rem;padding:1rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-md);display:none}.lp-links.open{display:flex}.lp-cta,.lp-links .btn{width:100%;justify-content:center}}
