:root{--bg:#f8fafc;--surface:rgba(255,255,255,0.75);--text:#0f172a;--muted:#64748b;--line:rgba(226,232,240,0.8);--blue:#0f62fe;--green:#198038;--orange:#eb6200;--red:#da1e28;--shadow:0 10px 25px -5px rgba(0,0,0,0.03),0 4px 10px -3px rgba(0,0,0,0.02);--accent-gradient:linear-gradient(135deg,#0f62fe,#3b82f6);--chat-bg:#f1f5f9}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Outfit,Inter,system-ui,sans-serif;overflow:hidden}button,input,select,textarea{font:inherit;transition:all .2s ease}button{border:0;border-radius:8px;background:var(--blue);color:#fff;cursor:pointer;font-weight:700;min-height:42px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover{background:#0353e9;transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,98,254,.2)}button:active{transform:translateY(0)}button:disabled{background:#cbd5e1;color:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}button.secondary{background:#eef4ff;color:var(--blue)}button.secondary:hover{background:#e0ecff;box-shadow:0 4px 12px rgba(15,98,254,.1)}button.miniButton{min-height:32px;padding:0 10px;font-size:13px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);min-height:42px;padding:10px 14px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(15,98,254,.15)}textarea{resize:vertical;line-height:1.5}label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.shell{display:grid;grid-template-columns:var(--sidebar-width,280px) 1fr;transition:grid-template-columns .3s cubic-bezier(.4,0,.2,1)}.shell,.sidebar{height:100vh;overflow:hidden}.sidebar{display:flex;flex-direction:column;gap:0;border-right:1px solid var(--line);background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:24px 20px 0;position:relative;transition:padding .3s ease}.shell.collapsed{--sidebar-width:80px}.shell.collapsed .sidebar{padding:32px 12px}.shell.collapsed .sidebar .badge-container,.shell.collapsed .sidebar .sidebarFooter p,.shell.collapsed .sidebar .sidebarFooter span,.shell.collapsed .sidebar .sidebarFooter strong,.shell.collapsed .sidebar h1,.shell.collapsed .sidebar nav button span.label,.shell.collapsed .sidebar p{display:none!important}.shell.collapsed .sidebar nav button{justify-content:center;padding:12px 0;text-align:center}.shell.collapsed .sidebarFooter{border:none;background:transparent;padding:0;display:flex;justify-content:center}.shell.collapsed .sidebarFooter button{width:44px!important;height:44px!important;border-radius:50%!important;padding:0!important;display:flex!important;justify-content:center!important;align-items:center!important;margin:0!important}.shell.collapsed .sidebarFooter button span.label{display:none!important}.shell.collapsed .sidebarFooter button span.icon-only{display:block!important;font-size:18px!important}.sidebar h1{margin:0;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:24px;font-weight:800}.sidebar nav{display:grid;grid-gap:4px;gap:4px;flex:1 1;overflow-y:auto;overflow-x:hidden;padding:8px 0 12px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.sidebar nav::-webkit-scrollbar{width:4px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}.sidebar nav button{justify-content:flex-start;background:transparent;color:var(--muted);text-align:left;border-radius:8px;padding:12px 16px;min-height:44px;font-weight:600}.sidebar nav button:hover{background:rgba(15,98,254,.08);color:var(--blue)}.sidebar nav button.active{background:var(--blue);color:#fff;box-shadow:0 4px 12px rgba(15,98,254,.25)}.sidebarFooter{margin-top:auto;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.5);padding:16px}.sidebarFooter p{margin:0 0 4px;font-weight:700}.hint,.muted{color:var(--muted);font-size:13px}.content{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg)}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:10}.topbar h2{margin:0;font-size:22px;font-weight:800}.topActions{display:flex;align-items:center;gap:12px}.topActions select{min-width:220px}.scrollable-area{flex:1 1;overflow-y:auto;padding:32px;display:grid;align-content:start;grid-gap:24px;gap:24px}.callout,.notice{border:1px solid #bae6fd;border-radius:10px;background:#f0f9ff;color:#0369a1;padding:14px 18px;font-size:14px;display:flex;align-items:center;gap:10px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:18px;gap:18px}.metric,.panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.metric{display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:20px;border-left:4px solid var(--blue);transition:all .2s ease}.metric:hover{transform:translateY(-2px);box-shadow:0 12px 30px -10px rgba(0,0,0,.06)}.metric.warning{border-left-color:var(--orange)}.metric.danger{border-left-color:var(--red)}.metric span{color:var(--muted);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.05em}.metric strong{font-size:28px;font-weight:800}.metric.warning strong{color:var(--orange)}.metric.danger strong{color:var(--red)}.grid{display:grid;grid-gap:24px;gap:24px}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.twoThirds{grid-template-columns:2fr 1fr}.panel{display:flex;flex-direction:column;gap:20px;padding:24px}.panel h3{margin:0;font-size:18px;font-weight:800;border-bottom:2px solid var(--line);padding-bottom:12px}.form,.list,.report,.stack{display:grid;grid-gap:16px;gap:16px}.formGrid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:16px;gap:16px}.formGrid.three{grid-template-columns:repeat(3,1fr)}.table{display:grid;overflow-x:auto;grid-gap:4px;gap:4px}.row,.thead{display:grid;align-items:center;grid-gap:12px;gap:12px;min-width:800px;padding:12px 8px}.thead{border-bottom:2px solid var(--line);color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.row{border-bottom:1px solid var(--line);background:rgba(255,255,255,.3);border-radius:8px;transition:all .2s ease}.row:hover{background:#ffffff;transform:scale(1.005)}.four{grid-template-columns:1.4fr 1fr 1fr 120px}.five{grid-template-columns:1.4fr 1fr .8fr 1.1fr 120px}.six{grid-template-columns:1.3fr 1fr 1fr .8fr .8fr 110px}.seven{grid-template-columns:40px 1.2fr .9fr .8fr .8fr .8fr 110px}.eight{grid-template-columns:40px 1.2fr .9fr .8fr .7fr .8fr .8fr 110px}.purchaseColsPro{grid-template-columns:1.1fr 1.1fr .5fr .6fr .6fr .5fr .6fr .6fr .8fr .5fr}.orderCols{grid-template-columns:.8fr 1.2fr .9fr .8fr .9fr}.supplierCols{grid-template-columns:1.3fr 1fr 1.2fr .8fr .7fr}.documentBox{display:grid;grid-gap:14px;gap:14px;border:1px solid var(--line);border-radius:10px;background:rgba(248,250,252,.7);padding:18px}.aiSummary,.inlineActions,.matchCell{display:flex;align-items:center;gap:10px}.aiSummary{justify-content:space-between;flex-wrap:wrap}.aiSummary p,.inlineMeta{margin:3px 0 0;color:var(--muted);font-size:12px}.okText{color:var(--green);font-weight:800}.warnText{color:var(--orange);font-weight:800}.pendingBox{display:flex;flex-wrap:wrap;gap:8px;border:1px solid #bae6fd;border-radius:10px;background:#f0f9ff;color:#0369a1;padding:14px}.pendingBox strong{width:100%}.pendingBox span{border-radius:999px;background:#fff;padding:6px 12px;font-size:13px;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.03)}.badge{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;border-radius:999px;font-size:11px;font-weight:800;padding:4px 10px;text-transform:uppercase;letter-spacing:.05em}.badge.neutral{background:#f1f5f9;color:var(--muted)}.badge.success{background:#dcfce7;color:var(--green)}.badge.warning{background:#fef3c7;color:var(--orange)}.badge.danger{background:#fee2e2;color:var(--red)}.listItem,.movement,.report p{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.4);padding:14px;transition:all .2s ease}.listItem{width:100%;color:var(--text);text-align:left;cursor:pointer}.listItem:hover{background:#fff;border-color:var(--blue);transform:translateY(-1px)}.accordion-item{border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.4);overflow:hidden;transition:all .2s ease;margin-bottom:8px}.accordion-item:hover{background:#ffffff;border-color:#cbd5e1}.accordion-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:700}.accordion-content{max-height:0;overflow:hidden;transition:max-height .25s ease-out,padding .2s ease;background:rgba(248,250,252,.5)}.accordion-item.active .accordion-content,.accordion-item.expanded .accordion-content{max-height:1200px;padding:16px 20px;border-top:1px solid var(--line)}.empty{margin:0;border:2px dashed var(--line);border-radius:10px;color:var(--muted);padding:24px;text-align:center;background:rgba(255,255,255,.2)}.chat-trigger{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:var(--accent-gradient);box-shadow:0 4px 20px rgba(15,98,254,.4);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:998;transition:transform .2s ease;font-size:24px}.chat-trigger:hover{transform:scale(1.08)}.chat-widget{position:fixed;bottom:96px;right:24px;width:380px;height:480px;border:1px solid var(--line);border-radius:16px;background:#ffffff;box-shadow:0 12px 40px rgba(0,0,0,.12);display:flex;flex-direction:column;overflow:hidden;z-index:999;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}.chat-widget.collapsed{transform:scale(0) translateY(100px);opacity:0;pointer-events:none}.chat-header{background:var(--accent-gradient);color:#fff;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;font-weight:700}.chat-header button{background:transparent;color:#fff;border:none;min-height:auto;padding:0;font-size:20px}.chat-header button:hover{background:transparent;box-shadow:none;transform:scale(1.1)}.chat-messages{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--chat-bg)}.chat-message{max-width:80%;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.4;word-break:break-word}.chat-message.user{background:var(--blue);color:#fff;align-self:flex-end;border-bottom-right-radius:2px;box-shadow:0 2px 4px rgba(15,98,254,.1)}.chat-message.bot{background:#ffffff;color:var(--text);align-self:flex-start;border-bottom-left-radius:2px;border:1px solid var(--line);box-shadow:0 1px 3px rgba(0,0,0,.02)}.chat-input-area{border-top:1px solid var(--line);padding:12px;display:flex;gap:8px;background:#fff}.chat-input-area input{flex:1 1;min-height:38px;border-radius:8px;font-size:13.5px}.chat-input-area button{min-height:38px;border-radius:8px;padding:0 14px}.pos-employee-bar{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.5);padding:10px 16px;margin-bottom:16px;font-size:13px}.pos-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:14px;gap:14px}.pos-table-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px;border:2px solid var(--line);border-radius:12px;background:#fff;color:var(--text);font-weight:700;min-height:110px}.pos-table-card:hover{transform:translateY(-2px)}.pos-table-card.libre{border-color:var(--green);background:#f0fdf4}.pos-table-card.ocupada{border-color:var(--blue);background:#eff6ff}.pos-table-card.precuenta{border-color:var(--orange);background:#fffbeb}.pos-table-card.limpieza{border-color:var(--red);background:#fef2f2;opacity:.85}.pos-carta-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px;max-height:520px;overflow-y:auto;padding:4px}.pos-carta-item{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:space-between!important;gap:8px!important;padding:14px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;color:var(--text)!important;min-height:96px!important;text-align:left!important;transition:all .2s ease!important;cursor:pointer!important;box-shadow:var(--shadow)!important}.pos-carta-item:hover{background:#f8fafc!important;border-color:var(--blue)!important;transform:translateY(-2px)!important;box-shadow:0 6px 16px rgba(15,98,254,.08)!important}.pos-carta-item:active{transform:translateY(0)!important}.pos-carta-item strong{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--text);word-break:break-word;flex-grow:1}.pos-carta-item span{font-size:12.5px;font-weight:500;color:var(--muted);margin-top:4px}.pos-carta-item:disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important}.pos-pinpad,.pos-pinpad-roster{display:grid;grid-gap:16px;gap:16px;max-width:420px;margin:40px auto;text-align:center}.pos-pinpad-avatars{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:12px;gap:12px}.pos-pinpad-avatar{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--text);font-weight:700}.pos-pinpad-avatar-initial{width:44px;height:44px;border-radius:50%;background:var(--accent-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px}.pos-pinpad-avatar small{color:var(--muted);font-weight:600;text-transform:capitalize}.pos-pinpad-dots{display:flex;justify-content:center;gap:12px}.pos-pinpad-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--line)}.pos-pinpad-dot.filled{background:var(--blue);border-color:var(--blue)}.pos-pinpad-keys{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.pos-pinpad-keys button{min-height:56px;font-size:20px}.pos-kds-wrapper{padding:4px}.pos-kds-fullscreen{background:var(--bg);padding:24px;overflow-y:auto;height:100vh}.pos-kds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:16px;gap:16px}.pos-kds-card{border:2px solid var(--line);border-radius:12px;background:#fff;padding:16px;box-shadow:var(--shadow)}.pos-kds-card.timer-success{border-color:var(--green)}.pos-kds-card.timer-warning{border-color:var(--orange)}.pos-kds-card.timer-danger{border-color:var(--red);animation:pos-kds-pulse 1.4s ease-in-out infinite}@keyframes pos-kds-pulse{0%,to{box-shadow:0 0 0 0 rgba(218,30,40,.25)}50%{box-shadow:0 0 0 6px rgba(218,30,40,.05)}}.pos-kds-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}@media (max-width:980px){.grid.two,.grid.twoThirds{grid-template-columns:1fr}.pos-carta-grid,.pos-table-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.pos-kds-grid{grid-template-columns:1fr}.shell{grid-template-columns:1fr!important;display:flex;flex-direction:column;height:100vh;overflow:hidden}.sidebar{height:auto!important;padding:12px 16px!important;border-right:none!important;border-bottom:1px solid var(--line)!important;align-items:center!important;justify-content:space-between!important;background:#ffffff!important}.sidebar,.sidebar nav{gap:8px!important;flex-direction:row!important}.sidebar nav{display:flex!important;overflow-x:auto!important;padding-bottom:2px;width:auto!important;flex:1 1!important;margin:0 10px!important}.sidebar nav button{padding:8px 12px!important;min-height:auto!important;white-space:nowrap!important}.sidebar button.toggle-collapse,.sidebarFooter{display:none!important}.content{flex:1 1;overflow:auto}.topbar{position:static;-webkit-backdrop-filter:none;backdrop-filter:none}.scrollable-area{overflow-y:visible}.chat-widget{width:calc(100% - 48px);right:24px}}