:root{color-scheme:light;--ink: #11151f;--muted: #737b8e;--line: #e5e8f0;--paper: #f7f8fb;--card: #ffffff;--brand-blue: #5e9bff;--brand-violet: #7166e8;--brand-dark: #0b0d13;--brand-soft: #eef0ff;--amber: #e1a43d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper)}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{background:var(--brand-dark);color:#fff;padding:28px 18px;display:flex;flex-direction:column;gap:30px;box-shadow:14px 0 34px #0e122312}.brand{display:flex;align-items:center;gap:12px;padding:0 10px}.brand-logo{width:38px;height:38px;object-fit:cover;border-radius:12px;box-shadow:0 0 20px #5e9bff47}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--brand-violet),var(--brand-blue));color:#fff;display:grid;place-items:center;font-weight:850;box-shadow:0 0 20px #5e9bff59}.brand strong{display:block;font-size:16px;letter-spacing:-.03em}.brand span{color:#9fb4ae;font-size:11px}.nav{display:grid;gap:8px}.nav button{border:0;background:transparent;color:#b7c8c3;text-align:left;padding:13px 12px;border-radius:10px;font-weight:650}.nav button.active,.nav button:hover{background:linear-gradient(100deg,#7166e859,#5e9bff2b);color:#fff}.nav-icon{display:inline-block;width:25px;opacity:.8}.workspace-note{margin-top:auto;border:1px solid #2b3043;border-radius:14px;padding:14px;color:#b8c0d2;font-size:12px;line-height:1.5}.workspace-note b{color:#fff;display:block;margin-bottom:5px}.main{min-width:0;padding:28px 32px 40px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{color:var(--brand-violet);font-weight:800;font-size:12px;letter-spacing:.09em;text-transform:uppercase}h1{margin:7px 0 5px;font-size:clamp(27px,3vw,38px);letter-spacing:-.06em}.subtitle{margin:0;color:var(--muted)}.context{display:flex;gap:10px;align-items:center}.status{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--card);padding:10px 13px;border-radius:12px;font-size:12px;color:var(--muted)}.dot{width:8px;height:8px;border-radius:50%;background:var(--amber)}.status.connected .dot{background:#48bd83;box-shadow:0 0 0 4px #48bd831f}.user-menu{position:relative}.user-chip{display:flex;align-items:center;gap:9px;min-width:185px;padding:7px 11px 7px 7px;background:var(--card);border:1px solid var(--line);border-radius:12px;font-size:12px;font-weight:750;text-align:left;transition:border-color .15s ease,box-shadow .15s ease}.user-chip:hover,.user-chip[aria-expanded=true]{border-color:#c9c9ee;box-shadow:0 8px 18px #191f4b14}.user-chip-copy{display:grid;min-width:0;gap:2px}.user-chip-copy strong,.user-chip-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip-copy small{max-width:125px;color:var(--muted);font-size:10px;font-weight:600}.user-chevron{margin-left:auto;color:var(--brand-violet);font-size:16px;line-height:1}.avatar{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:#fff;background:linear-gradient(135deg,var(--brand-violet),var(--brand-blue))}.user-dropdown{position:absolute;z-index:30;top:calc(100% + 9px);right:0;width:270px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px #14193729}.user-dropdown-head{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--line)}.user-dropdown-head strong,.user-dropdown-head small{display:block}.user-dropdown-head strong{font-size:13px}.user-dropdown-head small{max-width:190px;margin-top:3px;color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar.large{width:38px;height:38px;border-radius:12px}.user-dropdown-company{padding:12px 10px 10px}.menu-label{display:block;margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.user-dropdown-company strong{font-size:12px}.user-dropdown-item{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;color:var(--ink);border-radius:10px;padding:10px;text-align:left;font-size:12px;font-weight:750}.user-dropdown-item:hover{background:var(--brand-soft);color:#4c44a9}.user-dropdown-item.danger{color:#8c3041}.user-dropdown-item.danger:hover{background:#fff0f1;color:#6d2130}.user-dropdown-divider{height:1px;margin:3px 4px;background:var(--line)}.notice{display:flex;align-items:flex-start;gap:12px;background:#fff8e9;color:#6c521d;border:1px solid #f2dfb2;border-radius:14px;padding:14px 16px;margin-bottom:20px;font-size:13px;line-height:1.45}.notice b{display:block;color:#503a12;margin-bottom:2px}.notice span{font-size:18px}.notice.error{background:#fff0f1;color:#8c3041;border-color:#f2c8cf}.notice.error b{color:#6d2130}.notice.success{background:#edf9f3;color:#276b4b;border-color:#bce8ce}.notice.success b{color:#20583d}.layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:18px;align-items:start}.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #14372d0a}.panel-head{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0;font-size:16px;letter-spacing:-.03em}.count{color:var(--muted);font-size:12px}.search{border:1px solid var(--line);background:#fbfdfc;border-radius:10px;padding:10px 12px;min-width:220px;outline:none}.search:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px #5e9bff21}.categories{display:flex;gap:8px;padding:14px 20px 4px;overflow-x:auto}.category{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:8px 12px;white-space:nowrap;font-size:12px;font-weight:700}.category.active{background:linear-gradient(100deg,var(--brand-violet),var(--brand-blue));border-color:transparent;color:#fff}.empty-catalog{min-height:360px;padding:40px;display:grid;place-items:center;text-align:center;color:var(--muted)}.empty-icon{width:58px;height:58px;border-radius:18px;background:var(--brand-soft);color:var(--brand-violet);display:grid;place-items:center;font-size:25px;margin:0 auto 14px}.empty-catalog h3{color:var(--ink);margin:0 0 7px;font-size:17px}.empty-catalog p{max-width:370px;margin:0 auto;line-height:1.55;font-size:13px}.catalog-grid{padding:18px 20px 22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:12px}.product-card{position:relative;display:flex;flex-direction:column;min-height:258px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.product-card:hover{transform:translateY(-2px);border-color:#c9c9ee;box-shadow:0 10px 20px #191f4b14}.product-card.unavailable{opacity:.55}.product-image{position:absolute;inset:0;z-index:0;display:grid;place-items:center;background:linear-gradient(135deg,#f0f1ff,#f5f8ff);color:var(--brand-violet);font-size:28px}.product-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#080c19c7,#080c191f 38%,#080c19b8);pointer-events:none}.product-image img{width:100%;height:100%;object-fit:cover}.product-info{position:relative;z-index:1;min-height:258px;padding:14px 13px 65px;display:flex;flex-direction:column;gap:5px;color:#fff}.product-info h3{margin:0;color:#fff;font-size:14px;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.55)}.product-info strong{margin-top:auto;font-size:18px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.55)}.product-meta,.product-info small{color:#ffffffe6;font-size:11px;text-shadow:0 1px 3px rgba(0,0,0,.55)}.stock{color:#b9f5d0!important}.stock.out{color:#ffd0d5!important}.add-product{position:absolute;z-index:2;left:13px;right:13px;bottom:13px;margin:0;border:0;border-radius:9px;padding:10px;color:#fff;background:linear-gradient(100deg,var(--brand-violet),var(--brand-blue));font-size:12px;font-weight:800;box-shadow:0 5px 12px #0a0e1e33}.add-product:disabled{cursor:not-allowed;background:#c5c8d1}.cart-lines{display:grid;gap:8px}.cart-line{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px}.cart-line strong,.cart-line small{display:block}.cart-line strong{font-size:12px}.cart-line small{color:var(--muted);font-size:10px;margin-top:3px}.quantity{display:flex;align-items:center;gap:7px}.quantity button{width:25px;height:25px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--brand-violet);font-weight:900}.quantity span{min-width:18px;text-align:center;font-size:12px;font-weight:800}.pending-value{color:var(--brand-violet);font-size:11px;font-weight:800}.tax-value{color:#4c44a9;font-size:12px;font-weight:800}.total-value{color:var(--ink);font-size:17px;font-weight:900}.tickets-panel{min-height:560px}.tickets-state{display:grid;place-items:center;min-height:420px;padding:30px;text-align:center;color:var(--muted)}.tickets-state h3{margin:0 0 7px;color:var(--ink);font-size:17px}.tickets-state p{max-width:430px;margin:0;line-height:1.55;font-size:13px}.ticket-list{display:grid;gap:12px;padding:18px 20px 22px}.ticket-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.ticket-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--brand-soft);color:var(--brand-violet);font-size:19px}.ticket-card-main{min-width:0}.ticket-card-main h3{margin:0;font-size:14px}.ticket-card-main p{margin:4px 0 0;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket-card-meta{margin-top:8px;color:var(--muted);font-size:11px}.ticket-card-side{display:grid;justify-items:end;gap:8px}.ticket-card-side strong{color:var(--brand-violet);font-size:16px}.ticket-status{padding:4px 7px;border-radius:999px;background:#edf9f3;color:#276b4b;font-size:10px;font-weight:800}.ticket-status.pending{background:#fff7e7;color:#966d19}.small-button{border:1px solid #d8d9f7;background:#f7f7ff;color:#4c44a9;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800}.small-button:hover{border-color:var(--brand-violet);background:var(--brand-soft)}.ticket-viewer-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:22px;background:#090c1494}.report-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;margin-bottom:18px}.report-toolbar h2{margin:0 0 4px;font-size:16px}.report-date-fields{display:flex;align-items:end;gap:10px}.report-date-fields label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:750}.report-date-fields input{border:1px solid var(--line);border-radius:9px;padding:9px 10px;color:var(--ink);background:#fbfdfc}.report-refresh{width:auto;min-width:155px;margin:0;padding:11px 14px}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.report-kpi{padding:17px 18px;border:1px solid var(--line);border-radius:15px;background:var(--card);box-shadow:0 8px 24px #14372d0a}.report-kpi span,.report-kpi small{display:block;color:var(--muted);font-size:11px}.report-kpi strong{display:block;margin:8px 0 4px;color:var(--brand-violet);font-size:22px;letter-spacing:-.045em}.report-kpi small{font-size:10px}.pending-kpi strong{color:var(--amber)}.report-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.report-panel{min-width:0}.report-list{padding:7px 20px 13px}.report-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.report-row:last-child{border-bottom:0}.report-row>span{display:flex;align-items:center;gap:9px;min-width:0}.report-row>span>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-row strong{color:var(--brand-violet);white-space:nowrap}.report-row small{color:var(--muted);white-space:nowrap}.report-dot{width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--brand-violet),var(--brand-blue))}.rank{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:var(--brand-soft);color:var(--brand-violet);font-size:10px}.report-inline-empty,.report-empty{color:var(--muted);text-align:center}.report-empty{min-height:220px;display:grid;place-items:center;align-content:center;gap:6px;padding:30px}.report-empty strong{color:var(--ink)}.daily-report{margin-bottom:18px}.daily-chart{min-height:250px;display:flex;align-items:end;gap:8px;padding:24px 24px 20px;overflow-x:auto}.daily-column{min-width:44px;height:190px;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:end;gap:7px}.daily-value{color:var(--muted);font-size:9px;white-space:nowrap;transform:rotate(-45deg);transform-origin:center;margin-bottom:4px}.daily-bar-track{width:100%;max-width:38px;height:125px;display:flex;align-items:end;border-radius:8px 8px 3px 3px;background:var(--brand-soft);overflow:hidden}.daily-bar{width:100%;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--brand-blue),var(--brand-violet))}.daily-column>span{color:var(--muted);font-size:10px}.ticket-viewer{width:min(100%,680px);max-height:calc(100vh - 44px);overflow:auto;border-radius:18px;background:#f7f8fb;box-shadow:0 24px 80px #00000047}.ticket-viewer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 14px}.ticket-viewer-head h2{margin:5px 0 4px;font-size:20px}.ticket-viewer-head p{margin:0;color:var(--muted);font-size:12px}.ticket-viewer-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:0 22px 16px;border-bottom:1px solid var(--line)}.viewer-format{margin-right:auto;color:var(--muted);font-size:12px;font-weight:750}.finanbox-ticket-preview{width:min(100% - 44px,460px);margin:22px auto 28px;padding:24px;background:#fff;color:#111827;border:1px solid #e5e7eb;box-shadow:0 7px 22px #191f4b12;font:12px Arial,Helvetica,sans-serif}.finanbox-ticket-preview .center{text-align:center}.finanbox-ticket-preview .section{border-bottom:1px solid #e5e7eb;padding:0 0 10px;margin-bottom:10px}.finanbox-ticket-preview .company{font-weight:900;text-transform:uppercase;font-size:1.1em}.finanbox-ticket-preview .doc-type{margin-top:8px;font-weight:800}.finanbox-ticket-preview .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.finanbox-ticket-preview p{margin:0 0 4px}.finanbox-ticket-preview table{width:100%;table-layout:fixed;border-collapse:collapse;margin:10px 0}.finanbox-ticket-preview th,.finanbox-ticket-preview td{border-bottom:1px solid #e5e7eb;padding:5px 0;vertical-align:top}.finanbox-ticket-preview .concept{width:48%;padding-right:8px}.finanbox-ticket-preview .qty{width:17%;text-align:center;white-space:nowrap;padding:0 4px;font-variant-numeric:tabular-nums}.finanbox-ticket-preview .total{width:35%;text-align:right;white-space:nowrap;padding-left:6px;font-weight:800;font-variant-numeric:tabular-nums}.finanbox-ticket-preview .line-name{font-weight:800;line-height:1.18;overflow-wrap:anywhere}.finanbox-ticket-preview .muted{color:#6b7280;font-size:.85em;margin-top:2px}.finanbox-ticket-preview .summary{border-bottom:1px solid #e5e7eb;padding-bottom:10px}.finanbox-ticket-preview .summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.finanbox-ticket-preview .small{color:#4b5563;font-size:.9em}.finanbox-ticket-preview .grand-total{border-top:1px solid #e5e7eb;padding-top:8px;font-size:1.35em;font-weight:900}.finanbox-ticket-preview .pending{font-weight:900}.finanbox-ticket-preview .thanks{text-align:center;font-size:.9em;margin-top:16px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 10% 10%,rgba(113,102,232,.16),transparent 34%),radial-gradient(circle at 90% 90%,rgba(94,155,255,.14),transparent 34%),var(--brand-dark)}.login-card{width:min(100%,430px);padding:34px;border:1px solid #2a3042;border-radius:22px;background:#141721f5;color:#fff;box-shadow:0 24px 70px #0000004d}.login-logo{width:70px;height:70px;object-fit:cover;border-radius:19px;margin-bottom:26px;box-shadow:0 0 26px #5e9bff38}.login-card h1{margin-top:9px}.login-card .subtitle{color:#aeb5c6;line-height:1.55}.login-form{display:grid;gap:16px;margin-top:25px}.login-form label{display:grid;gap:7px;color:#c8cede;font-size:12px;font-weight:750}.login-form input{border:1px solid #384056;border-radius:10px;background:#10131c;color:#fff;padding:12px;outline:none}.login-form input:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px #5e9bff26}.form-error{margin-top:18px;padding:12px;border-radius:10px;background:#b3495624;border:1px solid rgba(242,200,207,.36);color:#ffb7c2;font-size:12px;line-height:1.45}.login-note{margin:22px 0 0;color:#929bad;font-size:11px;line-height:1.5}.login-card .secondary{margin-top:22px}.company-selector-card{width:min(100%,520px)}.company-list{display:grid;gap:10px;margin-top:24px}.company-option{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid #384056;border-radius:13px;background:#10131c;color:#fff;text-align:left}.company-option:hover,.company-option:focus-visible{border-color:var(--brand-blue);background:#171c2a;outline:none}.company-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,var(--brand-violet),var(--brand-blue));font-weight:850}.company-option strong,.company-option small{display:block}.company-option strong{font-size:13px}.company-option small{margin-top:3px;color:#929bad;font-size:11px}.company-arrow{color:#aeb8ff;font-size:20px}.cart{position:sticky;top:20px}.cart-body{padding:18px 20px}.cart-empty{padding:38px 12px;text-align:center;color:var(--muted);font-size:13px;border:1px dashed var(--line);border-radius:13px}.cart-empty strong{color:var(--ink);display:block;margin-bottom:5px}.totals{display:grid;gap:11px;margin-top:20px;padding-top:17px;border-top:1px solid var(--line);font-size:13px}.total-row{display:flex;justify-content:space-between;color:var(--muted)}.total-row.total{color:var(--ink);font-size:20px;font-weight:850;letter-spacing:-.04em}.payment-title{margin:23px 0 10px;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pay{border:1px solid var(--line);background:#fbfdfc;color:var(--ink);border-radius:10px;padding:12px 5px;font-size:12px;font-weight:750}.pay.active{border-color:var(--brand-violet);background:var(--brand-soft);color:#4c44a9}.primary{width:100%;border:0;border-radius:11px;background:linear-gradient(100deg,var(--brand-violet),var(--brand-blue));color:#fff;padding:14px;margin-top:15px;font-weight:800;box-shadow:0 8px 20px #6069e12e}.primary:disabled{cursor:not-allowed;opacity:.45}.secondary{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:10px;padding:10px 12px;font-weight:750;font-size:12px}.footer-note{text-align:center;color:var(--muted);font-size:11px;margin:20px 0 0}@media(max-width:950px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar{padding:22px 10px}.brand{justify-content:center;padding:0}.brand>div:not(.brand-mark),.nav button span:not(.nav-icon),.workspace-note{display:none}.nav button{text-align:center}.nav-icon{width:auto}.main{padding:22px 18px 30px}.layout{grid-template-columns:1fr}.cart{position:static}}@media(max-width:620px){.topbar{display:block}.context{margin-top:15px;flex-wrap:wrap}.search{min-width:0;width:100%}.panel-head{align-items:flex-start;flex-direction:column}.notice{font-size:12px}.report-toolbar{align-items:stretch;flex-direction:column}.report-date-fields{align-items:stretch;flex-wrap:wrap}.report-date-fields label{flex:1 1 130px}.report-refresh{flex:1 1 100%}.report-kpis,.report-columns{grid-template-columns:1fr}.report-row{grid-template-columns:minmax(0,1fr) auto}.report-row small{grid-column:1 / -1;margin-left:31px}}@media(max-width:620px){.ticket-card{grid-template-columns:36px minmax(0,1fr)}.ticket-icon{width:36px;height:36px}.ticket-card-side{grid-column:2;justify-items:start;display:flex;align-items:center;flex-wrap:wrap}}@media(max-width:620px){.ticket-viewer-backdrop{padding:10px}.ticket-viewer{max-height:calc(100vh - 20px)}.ticket-viewer-head{padding:16px}.ticket-viewer-actions{padding:0 16px 14px}.finanbox-ticket-preview{width:calc(100% - 24px);margin:12px auto 18px;padding:16px}}
