:root{--bg: #f1efeb;--bg-grad: radial-gradient(1200px 700px at 100% -10%, #faf6ee 0%, transparent 60%), radial-gradient(900px 600px at -10% 110%, #f3f0ea 0%, transparent 55%), linear-gradient(180deg, #fbfaf9 0%, #f0ede7 100%);--surface: #ffffff;--surface-2: #faf8f4;--surface-3: #f0ece5;--border: #e8e3da;--border-strong: #d8d1c4;--text: #1a1816;--text-muted: #6f6a64;--text-soft: #9c968b;--primary: #f0a500;--primary-dark: #8a6205;--primary-600: #d99600;--primary-soft: #fdefcf;--primary-grad: linear-gradient(135deg, #ffd166 0%, #f0a500 55%, #d99600 100%);--on-primary: #1a1816;--gold: #f0a500;--gold-soft: #fdefcf;--gold-grad: linear-gradient(135deg, #ffd166 0%, #f0a500 100%);--success: #2f7d4f;--success-soft: #dcefe0;--danger: #b23a3a;--danger-soft: #f6e0dd;--warning: #b45309;--warning-soft: #f8e6c9;--info: #3f6d8a;--info-soft: #e2ecf1;--side-bg: linear-gradient(185deg, #1f1c18 0%, #26221c 55%, #141210 100%);--side-text: #cdc6ba;--side-muted: #8b857a;--radius: 16px;--radius-sm: 10px;--radius-lg: 22px;--pill: 999px;--shadow-xs: 0 1px 2px rgba(45, 35, 15, .05);--shadow-sm: 0 1px 3px rgba(45, 35, 15, .07), 0 1px 2px rgba(45, 35, 15, .04);--shadow: 0 4px 16px rgba(60, 45, 20, .1), 0 1px 3px rgba(60, 45, 20, .06);--shadow-lg: 0 18px 44px rgba(55, 40, 15, .18);--shadow-xl: 0 30px 70px rgba(35, 25, 10, .3);--shadow-primary: 0 10px 26px rgba(240, 165, 0, .34);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .7);--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--t: .18s cubic-bezier(.4, 0, .2, 1);--t-slow: .38s cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--bg);background-image:var(--bg-grad);background-attachment:fixed;color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,.brand b{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700}.login-hero .hero-mid h2{font-weight:700}td.num,th.num,.mono{font-feature-settings:"tnum" 1}::selection{background:var(--primary-soft);color:var(--primary-dark)}*{scrollbar-width:thin;scrollbar-color:#d8d1c4 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#d8d1c4;border-radius:999px;border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:#c2bbac;background-clip:content-box}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}@keyframes slideInRight{0%{opacity:0;transform:translate(26px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-18px) rotate(3deg)}}@keyframes pulseGlow{0%,to{opacity:.55}50%{opacity:1}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes popIn{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.app{display:flex;min-height:100vh}.sidebar{width:256px;flex-shrink:0;background:var(--side-bg);color:var(--side-text);display:flex;flex-direction:column;padding:22px 16px 16px;position:sticky;top:0;height:100vh;overflow:hidden}.sidebar:before{content:"";position:absolute;top:-120px;right:-120px;width:300px;height:300px;background:radial-gradient(circle,rgba(240,165,0,.45),transparent 65%);filter:blur(20px);animation:pulseGlow 6s ease-in-out infinite;pointer-events:none}.sidebar:after{content:"";position:absolute;bottom:-100px;left:-80px;width:260px;height:260px;background:radial-gradient(circle,rgba(255,209,102,.16),transparent 65%);filter:blur(24px);pointer-events:none}.brand{display:flex;align-items:center;gap:12px;padding:6px 8px 22px;position:relative;z-index:1}.brand .logo{width:42px;height:42px;border-radius:13px;background:var(--gold-grad);display:grid;place-items:center;color:var(--on-primary);font-weight:800;font-size:16px;font-family:var(--font-display);box-shadow:0 8px 20px #f0a50066,var(--shadow-inset)}.brand .logo-mark{display:grid;place-items:center;flex-shrink:0}.brand b{color:#fff;font-size:21px;font-weight:600;letter-spacing:.01em;font-family:var(--font-display);line-height:1}.brand .tag{display:block;font-size:9.5px;font-weight:500;color:var(--side-muted);letter-spacing:.28em;text-transform:uppercase;margin-top:2px}.nav-label{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--side-muted);padding:14px 12px 8px;position:relative;z-index:1}.nav{display:flex;flex-direction:column;gap:3px;position:relative;z-index:1}.nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:var(--side-text);text-decoration:none;font-weight:600;font-size:13.5px;position:relative;transition:background var(--t),color var(--t),transform var(--t)}.nav a .ico{width:20px;height:20px;display:grid;place-items:center;opacity:.9;transition:transform var(--t)}.nav a:hover{background:#ffffff0f;color:#fff}.nav a:hover .ico{transform:scale(1.14)}.nav a.active{background:linear-gradient(100deg,#f0a50047,#ffd1661f);color:#fff;box-shadow:inset 0 0 0 1px #ffd1664d}.nav a.active:before{content:"";position:absolute;left:-16px;top:50%;transform:translateY(-50%);width:4px;height:22px;border-radius:0 4px 4px 0;background:var(--gold-grad);box-shadow:0 0 12px #ffd166b3}.nav a.active .ico{color:#ffd166;opacity:1}.sidebar .foot{margin-top:auto;font-size:11px;color:var(--side-muted);padding:12px 10px 4px;position:relative;z-index:1;line-height:1.5}.sidebar .foot .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--success);margin-right:6px;box-shadow:0 0 8px var(--success);animation:pulseGlow 2.4s infinite}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{min-height:68px;background:#ffffffb8;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 30px;position:sticky;top:0;z-index:20}.topbar .tb-title h1{font-size:19px;margin:0;font-weight:800}.topbar .tb-title .crumb{font-size:12px;color:var(--text-soft);font-weight:600;letter-spacing:.02em}.topbar .tb-right{display:flex;align-items:center;gap:12px}.userchip{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 6px;border-radius:var(--pill);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.userchip .avatar{width:34px;height:34px;border-radius:50%;background:var(--primary-grad);color:var(--on-primary);display:grid;place-items:center;font-weight:700;font-size:13px;box-shadow:var(--shadow-primary)}.userchip .who{line-height:1.2}.userchip .who .n{font-weight:700;font-size:13px}.userchip .who .r{font-size:11px;color:var(--text-soft);font-weight:600}.content{padding:30px;max-width:1280px;width:100%;animation:fadeUp .45s var(--t-slow) both}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-head .sub{color:var(--text-muted);margin:4px 0 0;font-size:13px}h3.section{font-size:15px;margin:6px 0 14px;display:flex;align-items:center;gap:9px}h3.section .si{color:var(--primary);display:grid;place-items:center}.grid{display:grid;gap:18px}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}@media(max-width:1000px){.grid.cols-4{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:1fr}}@media(max-width:640px){.grid.cols-4,.grid.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;position:relative}.card.pad-lg{padding:26px}.stat{overflow:hidden;animation:fadeUp .5s var(--t-slow) both}.stat .stat-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.stat .icon-bubble{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff;box-shadow:var(--shadow-sm);flex-shrink:0}.stat .icon-bubble.indigo{background:var(--primary-grad);color:var(--on-primary);box-shadow:var(--shadow-primary)}.stat .icon-bubble.gold{background:var(--gold-grad);color:var(--on-primary)}.stat .icon-bubble.green{background:linear-gradient(135deg,#34d399,#059669)}.stat .icon-bubble.rose{background:linear-gradient(135deg,#fb7185,#e11d48)}.stat .label{color:var(--text-muted);font-size:12.5px;font-weight:600;letter-spacing:.01em}.stat .value{font-size:30px;font-weight:600;margin-top:8px;font-family:var(--font-mono);letter-spacing:-.01em;line-height:1;font-variant-numeric:tabular-nums}.stat .sub{font-size:12px;color:var(--text-soft);margin-top:7px;display:flex;align-items:center;gap:5px}.stat .spark{position:absolute;right:0;bottom:0;left:0;height:4px;background:var(--primary-grad);opacity:.85}.stat.is-alert .value{color:var(--danger)}.stat.is-alert .spark{background:linear-gradient(90deg,#fb7185,#e11d48)}.trend{display:inline-flex;align-items:center;gap:3px;font-weight:700;font-size:11.5px;padding:2px 7px;border-radius:var(--pill)}.trend.up{background:var(--success-soft);color:var(--success)}.trend.down{background:var(--danger-soft);color:var(--danger)}.trend.flat{background:var(--surface-3);color:var(--text-muted)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.table-wrap.flat{box-shadow:none}table{width:100%;border-collapse:collapse;font-size:13.5px}thead th{text-align:left;padding:13px 18px;background:var(--surface-2);color:var(--text-muted);font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);white-space:nowrap;position:sticky;top:0;z-index:1}tbody td{padding:13px 18px;border-bottom:1px solid var(--border)}tbody tr{transition:background var(--t)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-weight:600}.mono{font-family:var(--font-mono);font-size:12.5px}.cell-strong{font-weight:700}tbody.stagger tr{animation:fadeUp .4s var(--t-slow) both}tbody.stagger tr:nth-child(1){animation-delay:.02s}tbody.stagger tr:nth-child(2){animation-delay:.05s}tbody.stagger tr:nth-child(3){animation-delay:.08s}tbody.stagger tr:nth-child(4){animation-delay:.11s}tbody.stagger tr:nth-child(5){animation-delay:.14s}tbody.stagger tr:nth-child(6){animation-delay:.17s}tbody.stagger tr:nth-child(7){animation-delay:.2s}tbody.stagger tr:nth-child(8){animation-delay:.23s}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--pill);font-size:11.5px;font-weight:700;letter-spacing:.01em;line-height:1.4}.badge .bdot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok{background:var(--success-soft);color:var(--success)}.badge.warn{background:var(--warning-soft);color:var(--warning)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.info{background:var(--info-soft);color:var(--info)}.badge.primary{background:var(--primary-soft);color:var(--primary-dark)}.badge.gold{background:var(--gold-soft);color:#a5730a}.badge.muted{background:var(--surface-3);color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;border-radius:11px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:600;font-size:13.5px;cursor:pointer;font-family:inherit;transition:background var(--t),border-color var(--t),transform var(--t),box-shadow var(--t);box-shadow:var(--shadow-xs)}.btn:hover{background:var(--surface-2);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(0)}.btn .ico{display:grid;place-items:center}.btn.primary{background:var(--primary-grad);background-size:160% 160%;border-color:transparent;color:var(--on-primary);box-shadow:var(--shadow-primary)}.btn.primary:hover{background-position:100% 50%;box-shadow:0 14px 30px #f0a5006b;transform:translateY(-2px)}.btn.gold{background:var(--gold-grad);border-color:transparent;color:var(--on-primary);box-shadow:0 8px 20px #f0a50057}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}.btn.ghost:hover{background:var(--surface-3)}.btn.danger{color:var(--danger);border-color:var(--danger-soft);background:#fff}.btn.danger:hover{background:var(--danger-soft);border-color:#f7bfca}.btn.sm{padding:6px 12px;font-size:12.5px;border-radius:9px}.btn.foto-btn{padding:3px 6px;margin-left:4px;vertical-align:middle;color:var(--text-muted)}.btn.icon{padding:8px;width:38px;height:38px}.btn.icon.sm{width:32px;height:32px;padding:6px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:var(--shadow-xs)!important}.btn.block{width:100%}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.field label{font-weight:600;font-size:12.5px;color:var(--text)}.field .hint{font-size:11.5px;color:var(--text-soft)}input,select,textarea{padding:10px 13px;border:1px solid var(--border-strong);border-radius:11px;font-family:inherit;font-size:14px;background:var(--surface);color:var(--text);width:100%;transition:border-color var(--t),box-shadow var(--t),background var(--t)}input::placeholder,textarea::placeholder{color:var(--text-soft)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft);background:#fff}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236f6a64' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:15px}@media(max-width:560px){.row2{grid-template-columns:1fr}}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}.filter-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;margin-bottom:18px}.filter-bar .fb-item{display:flex;flex-direction:column;gap:6px}.filter-bar .fb-item>label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft)}.filter-bar .grow{flex:1;min-width:200px}.filter-bar .fb-actions{margin-left:auto;display:flex;gap:10px;align-items:flex-end}.filter-bar input,.filter-bar select{padding:9px 12px}.search{position:relative}.search .ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text-soft);display:grid;place-items:center;pointer-events:none}.search input{padding-left:40px}.seg{display:inline-flex;background:var(--surface-3);border-radius:11px;padding:4px;gap:3px}.seg button{border:none;background:transparent;padding:7px 13px;border-radius:8px;font-weight:700;font-size:12.5px;color:var(--text-muted);cursor:pointer;width:auto;transition:all var(--t)}.seg button.active{background:var(--surface);color:var(--primary-dark);box-shadow:var(--shadow-sm)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}.pagination .info{font-size:12.5px;color:var(--text-muted);font-weight:500}.pagination .pages{display:flex;align-items:center;gap:6px}.pagination .pnum{min-width:34px;height:34px;padding:0 8px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:700;font-size:13px;cursor:pointer;display:grid;place-items:center;transition:all var(--t)}.pagination .pnum:hover:not(:disabled){border-color:var(--primary);color:var(--primary-dark)}.pagination .pnum.active{background:var(--primary-grad);border-color:transparent;color:var(--on-primary);box-shadow:var(--shadow-primary)}.pagination .pnum:disabled{opacity:.4;cursor:not-allowed}.pagination .dots{color:var(--text-soft);padding:0 2px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a181685;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:100;padding:22px;animation:fadeIn .2s ease;overflow-y:auto}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:580px;max-height:calc(100vh - 44px);display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .26s var(--t-slow);border:1px solid rgba(255,255,255,.6)}.modal.lg{max-width:800px}.modal header{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;background:var(--surface)}.modal header h3{margin:0;font-size:17px;display:flex;align-items:center;gap:9px;min-width:0}.modal header h3 .si{color:var(--primary);display:grid;place-items:center;flex-shrink:0}.modal .body{padding:22px;overflow-y:auto;flex:1 1 auto;-webkit-overflow-scrolling:touch}.modal footer{padding:15px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px;flex-shrink:0;background:var(--surface);flex-wrap:wrap}.x{background:var(--surface-3);border:none;border-radius:9px;font-size:18px;cursor:pointer;color:var(--text-muted);line-height:1;width:36px;height:36px;display:grid;place-items:center;padding:0;transition:all var(--t);flex-shrink:0}.x:hover{background:var(--danger-soft);color:var(--danger)}.tabs{display:flex;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:var(--pill);padding:5px;margin-bottom:22px;box-shadow:var(--shadow-sm);width:fit-content;max-width:100%;overflow-x:auto}.tabs button{background:none;border:none;padding:9px 18px;cursor:pointer;font-weight:700;font-size:13.5px;color:var(--text-muted);border-radius:var(--pill);width:auto;white-space:nowrap;transition:all var(--t);display:inline-flex;align-items:center;gap:8px}.tabs button:hover{color:var(--text)}.tabs button.active{color:var(--on-primary);background:var(--primary-grad);box-shadow:var(--shadow-primary)}.muted{color:var(--text-muted)}.soft{color:var(--text-soft)}.empty{text-align:center;padding:52px 20px;color:var(--text-soft)}.empty .ei{display:grid;place-items:center;margin:0 auto 12px;width:56px;height:56px;border-radius:16px;background:var(--surface-3);color:var(--text-soft)}.err-banner{background:var(--danger-soft);color:#b21237;padding:13px 16px;border-radius:var(--radius-sm);margin-bottom:16px;font-weight:600;display:flex;align-items:center;gap:9px}.toast-wrap{position:fixed;bottom:26px;right:26px;display:flex;flex-direction:column;gap:10px;z-index:400}.toast{padding:14px 18px;border-radius:13px;box-shadow:var(--shadow-lg);font-weight:600;color:#fff;display:flex;align-items:center;gap:10px;animation:slideInRight .28s var(--t-slow);min-width:260px}.toast .ti{display:grid;place-items:center;width:22px;height:22px}.toast.ok{background:linear-gradient(135deg,#10b981,#059669)}.toast.err{background:linear-gradient(135deg,#f43f5e,#e11d48)}.spinner{display:inline-block;width:22px;height:22px;border:3px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.center-load{display:grid;place-items:center;padding:70px;gap:14px}.center-load .cl-txt{color:var(--text-soft);font-weight:600;font-size:13px}.skel{position:relative;overflow:hidden;background:var(--surface-3);border-radius:8px}.skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:shimmer 1.4s infinite}kbd{font-family:var(--font-mono);font-size:11px;background:var(--surface-3);border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:6px;padding:2px 6px;color:var(--text-muted)}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.login-hero{display:none!important}}.login-hero{position:relative;overflow:hidden;color:#fff;padding:56px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,#1a1816,#2a2317 48%,#4a3400);background-size:180% 180%;animation:gradientShift 16s ease infinite}.login-hero .orb{position:absolute;border-radius:50%;filter:blur(8px);opacity:.5;animation:floaty 9s ease-in-out infinite}.login-hero .orb.a{width:340px;height:340px;top:-80px;right:-60px;background:radial-gradient(circle,rgba(240,165,0,.85),transparent 65%)}.login-hero .orb.b{width:300px;height:300px;bottom:-60px;left:-40px;background:radial-gradient(circle,rgba(255,209,102,.5),transparent 65%);animation-delay:-3s}.login-hero .orb.c{width:200px;height:200px;top:40%;left:50%;background:radial-gradient(circle,rgba(217,150,0,.55),transparent 65%);animation-delay:-5s}.login-hero .hero-top{position:relative;z-index:1;display:flex;align-items:center;gap:13px}.login-hero .hero-top .logo{width:48px;height:48px;border-radius:15px;background:var(--gold-grad);display:grid;place-items:center;color:var(--on-primary);font-weight:800;font-size:18px;font-family:var(--font-display);box-shadow:0 10px 26px #f0a50080}.login-hero .hero-top b{font-size:20px;font-family:var(--font-display);font-weight:800}.login-hero .hero-mid{position:relative;z-index:1}.login-hero .hero-mid h2{font-size:40px;line-height:1.08;margin:0 0 16px;font-weight:800;letter-spacing:-.03em}.login-hero .hero-mid p{font-size:15.5px;color:#d8cfbf;max-width:400px;line-height:1.6}.login-hero .feats{position:relative;z-index:1;display:flex;flex-direction:column;gap:14px}.login-hero .feat{display:flex;align-items:center;gap:13px;font-size:14px;color:#e6ddcd;font-weight:500}.login-hero .feat .fi{width:38px;height:38px;border-radius:11px;background:#ffffff17;border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-panel{display:grid;place-items:center;padding:40px 28px;background:var(--surface);position:relative}.login-card{width:100%;max-width:380px;animation:fadeUp .5s var(--t-slow) both}.login-card .lc-badge{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;color:var(--primary-dark);background:var(--primary-soft);padding:5px 12px;border-radius:var(--pill);letter-spacing:.04em;margin-bottom:20px}.login-card h1{font-size:27px;margin:0 0 6px;font-weight:800;letter-spacing:-.02em}.login-card .lc-sub{color:var(--text-muted);margin:0 0 26px;font-size:14px}.login-card .field{margin-bottom:17px}.input-ico{position:relative}.input-ico .ii{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text-soft);display:grid;place-items:center}.input-ico input{padding-left:42px}.input-ico .toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;width:auto;padding:6px;cursor:pointer;color:var(--text-soft);border-radius:8px}.input-ico .toggle:hover{color:var(--text);background:var(--surface-3)}.login-card .btn.primary{padding:13px;font-size:15px;margin-top:6px}.login-hint{margin-top:22px;padding:14px 16px;background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:12px;font-size:12px;color:var(--text-muted);line-height:1.6}.login-hint b{color:var(--text)}.login-err{background:var(--danger-soft);color:#b21237;padding:11px 14px;border-radius:11px;margin-bottom:16px;font-weight:600;font-size:13px;display:flex;align-items:center;gap:8px;animation:popIn .3s}.login-ok{background:var(--success-soft);color:var(--success);padding:11px 14px;border-radius:11px;margin-bottom:16px;font-weight:600;font-size:13px;line-height:1.45;display:flex;align-items:flex-start;gap:8px;animation:popIn .3s}.login-ok svg{flex-shrink:0;margin-top:1px}.mov-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--pill);font-weight:700;font-size:11.5px}.mov-chip.in{background:var(--success-soft);color:var(--success)}.mov-chip.out{background:var(--danger-soft);color:var(--danger)}.delta-pos{color:var(--success);font-weight:700}.delta-neg{color:var(--danger);font-weight:700}.pos-grid{display:grid;grid-template-columns:1fr 360px;gap:20px;align-items:start}@media(max-width:900px){.pos-grid{grid-template-columns:1fr}}.scan-card{background:var(--primary-grad);border-radius:var(--radius);padding:22px;color:var(--on-primary);box-shadow:var(--shadow-primary);position:relative;overflow:hidden}.scan-card:after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;background:radial-gradient(circle,rgba(255,255,255,.3),transparent 65%)}.scan-card label{color:var(--on-primary);font-weight:700;display:flex;align-items:center;gap:9px;margin-bottom:12px;font-size:14px}.scan-card input{background:#1a181614;border-color:#1a181647;color:var(--on-primary);font-size:19px;font-family:var(--font-mono);letter-spacing:.04em}.scan-card input::placeholder{color:#1a181680}.scan-card input:focus{background:#1a18161f;border-color:var(--on-primary);box-shadow:0 0 0 4px #1a181624}@keyframes rowFlash{0%{background:var(--primary-soft)}to{background:transparent}}tbody tr.row-flash,tbody.stagger tr.row-flash{animation:rowFlash 1.1s ease-out both}.scan-miss{font-size:20px;font-weight:700;margin-bottom:14px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px dashed var(--border-strong);overflow-wrap:anywhere}.scan-miss .muted{font-size:13px;font-weight:500}.scan-hint{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-muted)}.scan-hint .dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 8px var(--success);animation:pulseGlow 2.4s infinite}.cot-banner{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 14px;margin-bottom:14px;border-radius:var(--radius-sm);background:var(--info-soft);color:var(--info);font-size:13px}.cot-banner span{flex:1;color:var(--text)}.pos-combo{position:relative}.pos-results{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:342px;overflow-y:auto}.pos-results .opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;cursor:pointer;border-bottom:1px solid var(--border)}.pos-results .opt:last-child{border-bottom:none}.pos-results .opt.active{background:var(--surface-2)}.pos-results .opt .nm{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-results .opt .sku{font-size:12px}.pos-results .msg{padding:16px 14px;text-align:center;color:var(--text-muted);font-size:13px}.summary-card{position:sticky;top:92px}.sum-row{display:flex;justify-content:space-between;margin-bottom:9px;font-size:13.5px}.sum-row .muted{color:var(--text-muted)}.sum-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:14px;border-top:2px dashed var(--border-strong)}.sum-total .lbl{font-weight:700;font-size:15px}.sum-total .amt{font-size:28px;font-weight:700;font-family:var(--font-mono);letter-spacing:-.01em;color:var(--primary-dark);font-variant-numeric:tabular-nums}.qty-ctl{display:inline-flex;align-items:center;gap:6px}.qty-ctl input{width:58px;text-align:center;font-family:var(--font-mono)}.lbl-config{margin-bottom:18px}.lbl-config .lc-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.lbl-config .lc-item{display:flex;flex-direction:column;gap:6px}.lbl-config .lc-item>label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft)}.lbl-config .lc-item input{width:120px;font-family:var(--font-mono)}.lc-guide{margin-top:14px;font-size:13.5px}.lc-guide summary{cursor:pointer;font-weight:700;color:var(--text)}.lc-guide ol{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;color:var(--text-muted)}.lc-guide b{color:var(--text)}.lbl-2x1{width:50.8mm;height:25.4mm;box-sizing:border-box;padding:1.2mm 2mm;position:relative;overflow:hidden;background:#fff;color:#000;display:flex;flex-direction:column;align-items:center;justify-content:space-between;font-family:var(--font)}.lbl-2x1 .l-name{width:100%;height:6mm;font-size:7.5pt;line-height:1.12;font-weight:700;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.lbl-2x1 .l-bars{display:block;flex:none;max-width:100%;image-rendering:pixelated}.lbl-2x1 .l-foot{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:1.5mm}.lbl-2x1 .l-code{font-family:var(--font-mono);font-size:6.5pt;letter-spacing:.02em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lbl-2x1 .l-price{font-family:var(--font-mono);font-size:12pt;font-weight:700;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}.lbl-2x1.test:after{content:"";position:absolute;top:.6mm;right:.6mm;bottom:.6mm;left:.6mm;border:.25mm solid #000;pointer-events:none}.lbl-preview{display:flex;flex-wrap:wrap;gap:18px}.lbl-preview .lbl-2x1{zoom:1.5;border-radius:1.5mm;outline:1px dashed var(--border-strong);box-shadow:var(--shadow-sm)}.label-print{display:none}.report-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a181694;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:300;overflow:auto;padding:26px;animation:fadeIn .2s}.report-toolbar{max-width:900px;margin:0 auto 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.report-toolbar .rt-title{color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;gap:9px}.report-sheet{max-width:900px;margin:0 auto;background:#fff;color:#101828;border-radius:14px;box-shadow:var(--shadow-xl);padding:40px 44px;animation:scaleIn .28s var(--t-slow)}.report-sheet .rs-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:3px solid var(--primary);padding-bottom:18px;margin-bottom:4px}.report-sheet .rs-emisor{display:flex;gap:13px;align-items:center}.report-sheet .rs-emisor img{max-height:54px;max-width:120px;object-fit:contain}.report-sheet .rs-emisor .rs-logo{width:48px;height:48px;border-radius:13px;background:var(--primary-grad);color:var(--on-primary);display:grid;place-items:center;font-weight:800;font-family:var(--font-display);font-size:17px}.report-sheet .rs-emisor .nom{font-weight:800;font-size:16px;font-family:var(--font-display)}.report-sheet .rs-emisor .sub{font-size:12px;color:#667085}.report-sheet .rs-doc{text-align:right}.report-sheet .rs-doc .tt{font-size:19px;font-weight:800;font-family:var(--font-display);color:var(--primary-dark);letter-spacing:-.02em}.report-sheet .rs-doc .mt{font-size:12px;color:#667085}.report-sheet .rs-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin:16px 0 18px;font-size:12px}.report-sheet .rs-meta .k{color:#667085}.report-sheet .rs-meta .v{font-weight:700}.report-sheet .rs-kpis{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.report-sheet .rs-kpi{flex:1;min-width:130px;border:1px solid #e7ecf5;border-radius:12px;padding:12px 14px;background:#f8fafc}.report-sheet .rs-kpi .kl{font-size:11px;color:#667085;font-weight:600}.report-sheet .rs-kpi .kv{font-size:20px;font-weight:700;font-family:var(--font-mono);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:3px}.report-sheet table{font-size:12.5px}.report-sheet thead th{background:#1a1816;color:#fff;text-transform:none;letter-spacing:0;font-size:11.5px;position:static;padding:9px 12px}.report-sheet tbody td{padding:8px 12px;border-bottom:1px solid #eef2f6}.report-sheet tbody tr:nth-child(2n){background:#f9fafc}.report-sheet .rs-foot{margin-top:22px;padding-top:14px;border-top:1px dashed #cbd5e1;font-size:11px;color:#667085;display:flex;justify-content:space-between;gap:12px}.factura{background:#fff;color:#14203a;font-size:13px;border-radius:16px;overflow:hidden;border:1px solid #e7ecf5;box-shadow:var(--shadow);-webkit-print-color-adjust:exact;print-color-adjust:exact}.factura .fac-banner{background:linear-gradient(120deg,#ffd166,#f0a500 55%,#d99600);color:var(--on-primary);padding:22px 26px;display:flex;justify-content:space-between;gap:18px;position:relative;overflow:hidden}.factura .fac-banner:after{content:"";position:absolute;right:-50px;top:-50px;width:180px;height:180px;background:radial-gradient(circle,rgba(255,255,255,.28),transparent 65%)}.factura .emisor{display:flex;gap:14px;align-items:center;position:relative;z-index:1}.factura .emisor img{max-height:60px;max-width:130px;object-fit:contain;background:#fff;border-radius:10px;padding:5px}.factura .emisor .elogo{width:54px;height:54px;border-radius:14px;background:#1a18161a;border:1px solid rgba(26,24,22,.22);display:grid;place-items:center;font-weight:800;font-family:var(--font-display);font-size:19px}.factura .emisor .nom{font-size:17px;font-weight:800;font-family:var(--font-display);letter-spacing:-.01em}.factura .emisor .meta{font-size:12px;opacity:.9}.factura .doc{text-align:right;min-width:200px;position:relative;z-index:1}.factura .doc .tit{font-size:15px;font-weight:800;letter-spacing:.08em;font-family:var(--font-display);opacity:.92}.factura .doc .badge-num{display:inline-block;margin-top:6px;background:#1a18161a;border:1px solid rgba(26,24,22,.24);border-radius:10px;padding:6px 12px;font-weight:700;font-family:var(--font-mono);font-size:15px}.factura .doc .fch{font-size:12px;opacity:.9;margin-top:6px}.factura .fac-body{padding:20px 26px 24px}.factura .fel-box{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;padding:11px 14px;margin:0 0 16px;font-size:12px;color:#065f46}.factura .fel-box .k{color:#047857;font-weight:600}.factura .receptor{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;margin-bottom:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:13px 16px}.factura .receptor .k{color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.factura table{width:100%;border-collapse:collapse;margin-bottom:14px;border-radius:10px;overflow:hidden}.factura thead th{background:#1a1816;color:#fff;padding:10px 12px;text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.factura tbody td{padding:9px 12px;border-bottom:1px solid #eef2f6}.factura tbody tr:nth-child(2n){background:#f9fafc}.factura .tot{margin-left:auto;width:300px}.factura .tot .r{display:flex;justify-content:space-between;padding:5px 0;font-size:13px;color:#475569}.factura .tot .grand{margin-top:8px;padding:12px 16px;border-radius:12px;color:#fff;background:linear-gradient(120deg,#1a1816,#3a2e14);display:flex;justify-content:space-between;align-items:center;font-size:20px;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.factura .frases{margin-top:16px;font-size:11px;color:#64748b;border-top:1px dashed #d6deeb;padding-top:10px;line-height:1.6}.factura .gracias{margin-top:14px;text-align:center;font-family:var(--font-display);font-weight:800;color:var(--primary-dark);font-size:15px;letter-spacing:.01em}.fac-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-bottom:14px}.report-overlay~.overlay{z-index:310}.pdf-estado{display:flex;align-items:center;gap:11px;padding:11px 14px;margin-bottom:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px}.pdf-estado .pt{flex:1;min-width:0;overflow-wrap:anywhere}.pdf-estado .pi{color:var(--primary-dark);display:grid;place-items:center;flex-shrink:0}.pdf-estado .pi.err{color:var(--danger)}.pdf-captura{position:absolute;left:0;top:0;opacity:0;pointer-events:none;z-index:-1;background:#fff}.pdf-captura,.pdf-captura *{animation:none!important;transition:none!important}.pdf-captura .factura{box-shadow:none;border:none;border-radius:0}.pdf-captura .report-sheet{box-shadow:none;border-radius:0;max-width:none;margin:0}.factura .doc .sub{font-size:10.5px;font-weight:600;letter-spacing:.04em;opacity:.85;margin-top:2px}.factura .fel-alerta{border-radius:12px;padding:11px 14px;margin:0 0 16px;font-size:12px;line-height:1.5}.factura .fel-alerta.warn{background:#fdf3dc;border:1.5px dashed #b45309;color:#7a3e06}.factura .fel-alerta.danger{background:#f6e0dd;border:1.5px solid #b23a3a;color:#7f1d1d}.factura .exento-tag{margin-left:8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#2f7d4f;border:1px solid #2f7d4f;border-radius:4px;padding:0 5px}.factura .en-letras{margin-top:10px;font-size:12px;text-align:right}.factura .en-letras .k,.factura .obs .k{color:#64748b;font-weight:600}.factura .tot-nota{text-align:right;font-size:11px;color:#6f6a64;margin-top:5px}.factura .obs{margin-top:12px;font-size:12.5px}.factura .firmas{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;font-size:11px;color:#6f6a64;text-align:center}.factura .firmas .linea{border-top:1px solid #1a1816;margin-bottom:6px}.doc-nofiscal .fac-banner{background:repeating-linear-gradient(135deg,#f3f1ee 0,#f3f1ee 14px,#e8e4de 14px,#e8e4de 28px);color:var(--text)}.doc-nofiscal .fac-banner:after{display:none}.doc-nofiscal .fac-body{position:relative}.doc-nofiscal .fac-body:before{content:"NO FISCAL";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;font:800 88px/1 var(--font-display);letter-spacing:.08em;color:#1a18160d;transform:rotate(-18deg)}.doc-nofiscal .tot .grand{background:#3a3632}.factura .nofiscal-band{border:2px solid #1a1816;border-radius:10px;padding:10px 14px;margin:0 0 16px;font-size:12px;line-height:1.5;background:#fff;position:relative}.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--border-strong);border-radius:12px;cursor:pointer;background:var(--surface-2);margin-bottom:14px;-webkit-user-select:none;user-select:none}.switch .sw-txt b{display:block;font-size:13.5px}.switch .sw-txt span{font-size:11.5px;color:var(--text-muted)}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .sw-track{width:44px;height:26px;border-radius:999px;background:var(--border-strong);position:relative;flex-shrink:0;transition:background var(--t)}.switch .sw-track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--t)}.switch input:checked+.sw-track{background:var(--primary)}.switch input:checked+.sw-track:after{transform:translate(18px)}.switch input:focus-visible+.sw-track{box-shadow:0 0 0 4px var(--primary-soft)}.factura .anulada-stamp{color:var(--danger);border:3px solid var(--danger);display:inline-block;padding:2px 12px;border-radius:6px;font-weight:800;transform:rotate(-8deg);background:#ffffffe6}.sidebar{transition:width var(--t-slow),transform var(--t-slow)}.nav a .nav-txt{white-space:nowrap;overflow:hidden}.menu-btn{display:grid;place-items:center}.nav-backdrop{display:none}@media(min-width:769px){.app.nav-collapsed .sidebar{width:78px;padding-left:12px;padding-right:12px}.app.nav-collapsed .brand{justify-content:center}.app.nav-collapsed .brand>div,.app.nav-collapsed .nav-label,.app.nav-collapsed .sidebar .foot{display:none}.app.nav-collapsed .nav a{justify-content:center;padding:12px 0}.app.nav-collapsed .nav a .nav-txt{display:none}.app.nav-collapsed .nav a.active:before{left:-12px}}@media(max-width:1024px){.content{padding:22px 18px}.grid.cols-4{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:1fr}}@media(max-width:768px){body{font-size:13px}.sidebar{position:fixed;left:0;top:0;height:100vh;z-index:120;transform:translate(-100%);box-shadow:var(--shadow-xl);width:250px!important;padding:22px 16px 16px!important}.app.nav-open .sidebar{transform:none}.app.nav-open .nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#1a181685;z-index:110;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app.nav-collapsed .brand>div,.app.nav-collapsed .nav-label,.app.nav-collapsed .sidebar .foot{display:revert}.app.nav-collapsed .nav a{justify-content:flex-start;padding:11px 12px}.app.nav-collapsed .nav a .nav-txt{display:inline}.content{padding:16px 13px}.topbar{padding:0 14px;min-height:58px;gap:10px}.topbar .tb-title h1{font-size:15.5px}.topbar .tb-title .crumb{font-size:11px}.userchip{padding:5px}.userchip .who{display:none}.page-head{gap:10px}.page-head h1,.page-head h3{font-size:15px}.grid.cols-4,.grid.cols-3,.grid.cols-2{grid-template-columns:1fr;gap:14px}.stat .value{font-size:24px}.filter-bar{padding:13px;gap:10px}.filter-bar .fb-item,.filter-bar .grow{width:100%;flex:1 1 100%;min-width:0}.filter-bar .fb-actions{margin-left:0;width:100%}.filter-bar .fb-actions .btn{flex:1}.pos-grid{grid-template-columns:1fr}.summary-card{position:static}table{font-size:12.5px}thead th,tbody td{padding:10px 12px}.overlay{padding:10px;align-items:flex-start}.modal{max-width:100%!important;max-height:calc(100vh - 20px)}.modal .body{padding:18px}.report-overlay{padding:12px}.report-sheet{padding:22px 18px}.report-toolbar{flex-wrap:wrap}.tabs{width:100%}.factura .fac-banner{flex-direction:column;padding:18px}.factura .doc{text-align:left}.factura .tot{width:100%}.factura .receptor{grid-template-columns:1fr}}@media(max-width:480px){body{font-size:12.5px}.stat .value{font-size:21px}.stat .icon-bubble{width:40px;height:40px}.btn{padding:9px 13px;font-size:13px}.sum-total .amt{font-size:24px}.pagination{justify-content:center}.pagination .info{width:100%;text-align:center}.modal header h3{font-size:15.5px}}.login-alt{text-align:center;font-size:13px;color:var(--text-muted);margin:14px 0 0}.login-alt a,.linklike{color:var(--primary-dark);font-weight:700;text-decoration:none}.login-alt a:hover,.linklike:hover{text-decoration:underline}.linklike{background:none;border:none;cursor:pointer;font:inherit;padding:0;width:auto}.login-card.wide{max-width:460px}.btn.lg{padding:13px 22px;font-size:15px;border-radius:13px}.landing{min-height:100vh;background:var(--bg);background-image:var(--bg-grad)}.lp-nav{max-width:1160px;margin:0 auto;padding:20px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lp-nav-actions{display:flex;gap:10px;align-items:center}@media(max-width:560px){.lp-nav-actions .btn.ghost{display:none}}.lp-hero{position:relative;overflow:hidden;text-align:center;padding:60px 26px 76px}.lp-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;pointer-events:none}.lp-orb.a{width:460px;height:460px;top:-160px;right:-80px;background:radial-gradient(circle,rgba(255,209,102,.6),transparent 65%)}.lp-orb.b{width:400px;height:400px;bottom:-180px;left:-100px;background:radial-gradient(circle,rgba(240,165,0,.38),transparent 65%)}.lp-hero-inner{position:relative;z-index:1;max-width:820px;margin:0 auto}.lp-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--primary-dark);background:var(--primary-soft);border:1px solid var(--border-strong);padding:6px 14px;border-radius:var(--pill);letter-spacing:.02em}.lp-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(40px,7vw,74px);line-height:1.02;margin:20px 0 0;color:var(--text)}.lp-hero h1 em{font-style:italic;color:var(--primary-dark)}.lp-sub{max-width:620px;margin:20px auto 0;font-size:17px;line-height:1.7;color:var(--text-muted)}.lp-cta{display:flex;gap:12px;justify-content:center;margin-top:30px;flex-wrap:wrap}.lp-note{margin-top:20px;font-size:12.5px;color:var(--text-soft);display:inline-flex;align-items:center;gap:7px}.lp-section-head{text-align:center;max-width:680px;margin:0 auto 34px}.lp-kicker{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--primary-dark)}.lp-section-head h2{font-family:var(--font-display);font-weight:600;font-size:clamp(26px,4vw,38px);margin:10px 0 0;color:var(--text)}.lp-features,.lp-steps,.lp-final{max-width:1160px;margin:0 auto;padding:40px 26px}.lp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:900px){.lp-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.lp-grid{grid-template-columns:1fr}}.lp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;transition:transform var(--t),box-shadow var(--t)}.lp-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.lp-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--gold-grad);color:var(--on-primary);box-shadow:var(--shadow-sm)}.lp-card h3{font-family:var(--font-display);font-weight:600;font-size:21px;margin:15px 0 7px;color:var(--text)}.lp-card p{color:var(--text-muted);font-size:14px;line-height:1.6;margin:0}.lp-steps-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:720px){.lp-steps-row{grid-template-columns:1fr}}.lp-step{text-align:center;padding:10px}.lp-step-n{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 12px;border-radius:50%;font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--primary-dark);background:var(--primary-soft);border:1px solid var(--border-strong)}.lp-step h4{font-family:var(--font-display);font-weight:600;font-size:20px;margin:0 0 6px}.lp-step p{color:var(--text-muted);font-size:14px;margin:0}.lp-final-card{background:linear-gradient(150deg,#ffffff,var(--surface-2));border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center;padding:48px 26px}.lp-final-card h2{font-family:var(--font-display);font-weight:600;font-size:clamp(28px,4vw,40px);margin:20px 0 8px}.lp-final-card p{color:var(--text-muted);max-width:460px;margin:0 auto 22px;font-size:15.5px}.lp-footer{max-width:1160px;margin:0 auto;padding:30px 26px 40px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--border);color:var(--text-soft);font-size:12.5px;flex-wrap:wrap}.pending-wrap{min-height:100vh;display:grid;place-items:center;padding:26px;background:var(--bg);background-image:var(--bg-grad)}.pending-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:460px;width:100%;padding:40px 34px;text-align:center;animation:scaleIn .3s var(--t-slow)}.pending-ico{display:grid;place-items:center;width:68px;height:68px;border-radius:20px;margin:22px auto 4px}.pending-ico.warn{background:var(--warning-soft);color:var(--warning)}.pending-ico.danger{background:var(--danger-soft);color:var(--danger)}.pending-ico.ok{background:var(--success-soft);color:var(--success)}.pending-card h1{font-family:var(--font-display);font-weight:600;font-size:27px;margin:8px 0 2px}.pending-empresa{font-weight:700;color:var(--primary-dark);margin:0 0 12px}.pending-text{color:var(--text-muted);line-height:1.65;font-size:14.5px}.pending-actions{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}.pending-foot{margin-top:22px;font-size:12px;color:var(--text-soft)}.sa-shell{min-height:100vh;background:var(--bg);background-image:var(--bg-grad)}.sa-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 30px;background:#ffffffbf;-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.sa-top-right{display:flex;align-items:center;gap:12px}.sa-shell .content{margin:0 auto}@media(max-width:560px){.sa-top{padding:12px 14px}.sa-top-right .userchip .who{display:none}}.backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.backup-grid code{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:8px;padding:8px 10px;text-align:center;font-size:13px;letter-spacing:.04em}@media print{.no-print,.sidebar,.topbar{display:none!important}.content{padding:0!important;max-width:none!important;animation:none!important}body{background:#fff!important;background-image:none!important}@page{margin:12mm}body.print-target-report #root,body.print-target-report>.overlay,body.print-target-report .toast-wrap{display:none!important}body.print-target-report .report-overlay{position:static;padding:0;background:#fff;overflow:visible;display:block;backdrop-filter:none;-webkit-backdrop-filter:none}body.print-target-report .report-toolbar{display:none!important}body.print-target-report .report-sheet{box-shadow:none;border-radius:0;max-width:none;margin:0;animation:none}body.print-target-factura #root,body.print-target-factura .report-overlay,body.print-target-factura .toast-wrap{display:none!important}body.print-target-factura .overlay{position:static;padding:0;background:#fff;display:block;overflow:visible;backdrop-filter:none;-webkit-backdrop-filter:none}body.print-target-factura .modal{max-width:none;max-height:none;box-shadow:none;border:none;border-radius:0;overflow:visible;display:block;animation:none}body.print-target-factura .modal>header,body.print-target-factura .modal>footer,body.print-target-factura .fac-actions{display:none!important}body.print-target-factura .modal .body{padding:0;overflow:visible}body.print-target-factura .factura{box-shadow:none;border:none}.factura .fac-banner{flex-direction:row;padding:22px 26px}.factura .tot{width:300px}.factura .receptor{grid-template-columns:1fr 1fr}body.print-target-labels #root,body.print-target-labels>.overlay,body.print-target-labels .report-overlay,body.print-target-labels .toast-wrap{display:none!important}body.print-target-labels .label-print{display:block}.label-print.termica .lbl-2x1{transform:translate(var(--off-x, 0mm),var(--off-y, 0mm));break-inside:avoid}.label-print.termica .lbl-2x1+.lbl-2x1{break-before:page}body.print-target-labels .label-print.a4{display:grid;grid-template-columns:repeat(3,50.8mm);gap:3mm;justify-content:center}.label-print.a4 .lbl-2x1{outline:.2mm dashed #999;break-inside:avoid}}.barlist{display:flex;flex-direction:column;gap:12px}.barlist .bl-top{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:5px}.barlist .bl-lbl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.barlist .bl-val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.barlist .bl-track{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}.barlist .bl-track span{display:block;height:100%;border-radius:999px;background:var(--primary-grad);transition:width var(--t-slow)}.barlist .bl-det{font-size:11.5px;color:var(--text-soft);margin-top:3px}.pay-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:6px;margin-bottom:12px}.pay-methods button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 4px;border-radius:11px;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;font-weight:700;font-size:11.5px;color:var(--text-muted);transition:all var(--t)}.pay-methods button:hover{border-color:var(--primary);color:var(--text)}.pay-methods button.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-dark);box-shadow:0 0 0 3px #f0a5002e}.pay-methods button:disabled{opacity:.45;cursor:not-allowed}.quick-cash{display:flex;gap:6px;flex-wrap:wrap;margin:-4px 0 12px}.quick-cash button{padding:5px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface-2);font-family:var(--font-mono);font-size:12px;cursor:pointer}.quick-cash button:hover{border-color:var(--primary)}.cambio-box{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-radius:12px;margin-bottom:12px;font-weight:700}.cambio-box.ok{background:var(--success-soft);color:var(--success)}.cambio-box.falta{background:var(--danger-soft);color:var(--danger)}.cambio-box .amt{font-family:var(--font-mono);font-size:20px}.credit-card-box{border:1px solid var(--border-strong);border-radius:12px;padding:10px 13px;margin-bottom:12px;background:var(--surface-2);font-size:12.5px}.credit-card-box .sum-row{margin-bottom:4px;font-size:12.5px}.caja-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);margin-bottom:14px;font-size:13px;flex-wrap:wrap}.caja-banner.abierta{background:var(--success-soft);color:var(--success)}.caja-banner.cerrada{background:var(--warning-soft);color:var(--warning)}.caja-banner span{flex:1;color:var(--text);min-width:180px}.caja-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:20px;align-items:start}@media(max-width:1000px){.caja-grid{grid-template-columns:1fr}}.arqueo-linea{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--border);font-size:13.5px}.arqueo-linea:last-child{border-bottom:none}.arqueo-linea .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600}.arqueo-linea.total{font-weight:800;font-size:15px;border-top:2px solid var(--text);border-bottom:none;margin-top:4px;padding-top:10px}.denom-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 14px}.denom{display:grid;grid-template-columns:64px 1fr 90px;align-items:center;gap:8px;font-size:13px}.denom .d{font-family:var(--font-mono);font-weight:700}.denom input{padding:7px 9px;text-align:right}.denom .sub{font-family:var(--font-mono);text-align:right;color:var(--text-muted);font-size:12px}@media(max-width:560px){.denom-grid{grid-template-columns:1fr}}.diff-box{border-radius:14px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:800;margin:12px 0}.diff-box.cero{background:var(--success-soft);color:var(--success)}.diff-box.sobra{background:var(--info-soft);color:var(--info)}.diff-box.falta{background:var(--danger-soft);color:var(--danger)}.diff-box .amt{font-family:var(--font-mono);font-size:22px}.aging{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:20px}.aging .ag{border-radius:12px;padding:11px 13px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.aging .ag .k{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft)}.aging .ag .v{font-family:var(--font-mono);font-weight:700;font-size:17px;margin-top:4px}.aging .ag.t0{border-top:3px solid var(--success)}.aging .ag.t1{border-top:3px solid var(--primary)}.aging .ag.t2{border-top:3px solid var(--warning)}.aging .ag.t3{border-top:3px solid #d9622b}.aging .ag.t4{border-top:3px solid var(--danger)}@media(max-width:800px){.aging{grid-template-columns:repeat(2,1fr)}}tr.vencida td{background:#b23a3a0a}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-2)}.compra-lineas input{padding:7px 9px}.compra-lineas td{vertical-align:middle}.tot-bar{display:flex;justify-content:flex-end;gap:22px;align-items:baseline;padding:14px 4px 0;flex-wrap:wrap}.tot-bar .k{color:var(--text-muted);font-size:13px}.tot-bar .v{font-family:var(--font-mono);font-weight:800;font-size:22px}.factura.comprobante .kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;margin-bottom:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:13px 16px}.factura.comprobante .kv-grid .k{color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.pagos-doc{margin-top:12px;font-size:12.5px;border:1px solid var(--border);border-radius:10px;padding:10px 14px;background:var(--surface-2)}.pagos-doc .r{display:flex;justify-content:space-between;padding:2px 0}.pagos-doc .k{color:#64748b;font-weight:600}
