@font-face{font-family:Contrail;src:url(/fonts/CONTRAIL.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-002F,U+003A-10FFFF}:root{--bg: #121218;--card: #1e1e28;--surface: #262634;--accent: #d4b76e;--text: #f8f8fa;--muted: #c0c0ce;--border: #3a3a4a;--font-ui: "Contrail", "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--font-nums: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}body,button,input,select,textarea,optgroup{font-family:var(--font-ui)}input,select,textarea{font-family:var(--font-nums);font-variant-numeric:tabular-nums}.num,.service-card-meta,.service-card-meta strong,.stat-value,.money,.amount{font-family:var(--font-nums);font-variant-numeric:tabular-nums;font-weight:700}body{margin:0;background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}.layout{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--card);border-inline-end:1px solid var(--border);padding:1.5rem 1rem}.sidebar-brand{margin:0 0 .5rem;padding:.25rem .15rem;border-radius:10px;background:transparent}.sidebar-tagline{font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 1.5rem}.sera-logo-img{display:block;width:100%;max-width:168px;height:auto;object-fit:contain;filter:none}.sera-logo-img--compact{max-width:132px}.login-brand{display:flex;justify-content:center;margin-bottom:1.25rem;padding:.65rem .75rem;border-radius:12px;background:#0c0c10;border:1px solid rgba(212,183,110,.35)}.login-brand .sera-logo-img{max-width:200px}.dash-error-panel{max-width:420px}.dash-error-panel .alert{margin-bottom:.75rem}.sidebar nav a{display:block;padding:.6rem .75rem;border-radius:8px;color:var(--text);margin-bottom:.25rem}.sidebar nav a.active,.sidebar nav a:hover{background:#c9a96226;color:var(--accent)}.main{flex:1;padding:2rem}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.card .value{font-size:1.75rem;font-weight:700;color:var(--accent);font-family:var(--font-nums);font-variant-numeric:tabular-nums}.card .label{font-size:.85rem;color:var(--muted)}.dash-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding:1.1rem 1.25rem;border-radius:16px;border:1px solid rgba(212,183,110,.28);background:linear-gradient(135deg,rgba(212,183,110,.12),transparent 55%),var(--card)}.dash-kicker{margin:0 0 .25rem;color:var(--accent);font-size:.8rem;letter-spacing:.04em}.dash-title{margin:0 0 .35rem;font-size:1.35rem;font-weight:700}.dash-refresh{flex-shrink:0;border:1px solid rgba(212,183,110,.45);background:#d4b76e1f;color:var(--text);border-radius:999px;padding:.45rem 1rem;cursor:pointer;font-weight:700;transition:background .2s ease,transform .2s ease}.dash-refresh:hover:not(:disabled){background:#d4b76e38;transform:translateY(-1px)}.dash-refresh:disabled{opacity:.6;cursor:wait}.dash-cards .dash-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:start;cursor:pointer;color:inherit;font:inherit;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;animation:dash-card-in .35s ease both}.dash-cards .dash-card:hover{border-color:#d4b76e8c;transform:translateY(-2px);box-shadow:0 8px 24px #00000040}@keyframes dash-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dash-meter{margin-top:.65rem;height:6px;border-radius:999px;background:#ffffff14;overflow:hidden}.dash-meter>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a88b4a,#e8c97a);transition:width .45s ease}.dash-shortcuts{margin:0 0 1.5rem}.dash-shortcuts h4{margin:0 0 .65rem;font-size:.95rem;color:var(--muted);font-weight:600}.dash-shortcut-row{display:flex;flex-wrap:wrap;gap:.5rem}.dash-shortcut{border:1px solid rgba(212,183,110,.4);background:transparent;color:var(--accent);border-radius:999px;padding:.4rem .9rem;cursor:pointer;font-weight:700;font-size:.85rem;transition:background .2s ease,color .2s ease,transform .2s ease}.dash-shortcut:hover{background:#d4b76e29;transform:translateY(-1px)}.dash-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:1rem 1.15rem 1.15rem}.dash-panel h3{margin:0 0 .85rem}.dash-top-list{display:flex;flex-direction:column;gap:.75rem}.dash-top-row{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center}.dash-top-rank{width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center;background:#d4b76e26;color:var(--accent);font-weight:700;font-size:.85rem}.dash-top-main strong{display:block;margin-bottom:.35rem}.dash-top-bar{height:5px;border-radius:999px;background:#ffffff14;overflow:hidden}.dash-top-bar>span{display:block;height:100%;background:linear-gradient(90deg,#8a6b35,#d4b76e)}.dash-top-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;min-width:5.5rem}.page-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem}.page-head h3{margin:0}.chip-pick-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.chip-pick{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:.3rem .7rem;cursor:pointer;font-size:.8rem}.chip-pick.sel{border-color:var(--accent);color:var(--accent);background:#d4b76e1f}.form-actions-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.checkbox-row{display:flex;align-items:center;gap:.4rem}.settings-vat-toggle{margin:1rem 0 1.25rem;padding:.75rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--card);align-items:flex-start;cursor:pointer}.settings-vat-toggle input{margin-top:.2rem;flex-shrink:0}.settings-vat-hint{display:inline}.admin-list-cards{display:flex;flex-direction:column;gap:.65rem;margin-top:1.25rem}.admin-list-card{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--card)}.badge-featured{display:inline-block;margin-top:.35rem;padding:.15rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700;color:#1a1408;background:linear-gradient(180deg,#e8c97a,#c8a64d)}table{width:100%;border-collapse:collapse;background:var(--card);border-radius:12px;overflow:hidden}th,td{padding:.75rem 1rem;text-align:start;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:500}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-box{background:var(--card);padding:2rem;border-radius:16px;width:100%;max-width:380px;border:1px solid var(--border)}.login-box h2{font-size:1.35rem;font-weight:400;letter-spacing:.04em;text-align:center;margin:0 0 1rem}.header-row h2{font-size:1.5rem;font-weight:400;letter-spacing:.03em;margin:0}.login-box input{width:100%;margin:.5rem 0 1rem;padding:.75rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.password-field{position:relative;margin-bottom:1rem}.password-field input{margin-bottom:0;padding-inline-end:4.5rem}.password-toggle{position:absolute;inset-inline-end:.35rem;top:50%;transform:translateY(-50%);border:0;border-radius:6px;padding:.35rem .6rem;background:var(--accent);color:#111;cursor:pointer;font-size:.8rem;font-weight:700}button.primary{width:100%;padding:.75rem;background:var(--accent);color:#111;border:none;border-radius:8px;font-weight:600;cursor:pointer}.lang-toggle{margin-top:1rem;background:transparent;border:1px solid var(--border);color:var(--muted);padding:.4rem .8rem;border-radius:6px;cursor:pointer}.booking-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem;max-width:900px}.booking-form select,.booking-form input{padding:.6rem;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text)}.booking-form select.booking-form-service-select{font-size:1.1rem;padding:.75rem .85rem;min-height:2.75rem}.booking-form select.booking-form-service-select option{font-size:1.08rem;padding:.4rem .5rem}.booking-form select option{background:var(--card);color:var(--text)}.booking-slots-field{grid-column:1 / -1}.booking-slots-hint{margin:.25rem 0 0;font-size:.88rem}.booking-slot-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}.booking-slot-chip{padding:.45rem .85rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem;transition:border-color .15s,background .15s}.booking-slot-chip:hover,.booking-slot-chip.sel{border-color:var(--accent);background:#d4b76e26;color:var(--accent)}.service-form .field{display:flex;flex-direction:column;gap:.3rem}.service-form .field label{font-size:.82rem;color:var(--muted)}.service-form .field-hint{font-size:.75rem;color:var(--muted)}.service-head-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}table button{padding:.35rem .6rem;border-radius:6px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer}.header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.service-grid-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1.5rem}.service-card-admin{background:var(--card);border-radius:12px;overflow:hidden;border:1px solid var(--border)}.service-card-admin img{width:100%;height:140px;object-fit:cover;display:block}.service-card-admin>div{padding:.75rem}.service-card-meta{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin-top:.35rem;color:var(--text);font-size:.92rem;letter-spacing:.01em}.service-card-meta .num{color:#fff;font-weight:700;unicode-bidi:isolate}.service-card-meta-dot{opacity:.65}.service-card-duration{white-space:nowrap}.service-card-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.75rem}.service-card-action{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.35rem .85rem;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.service-card-action:hover{transform:translateY(-1px)}.service-card-action--edit{color:#1a1408;background:linear-gradient(180deg,#e8c97a,#c8a64d);border-color:#d4b76eb3}.service-card-action--delete{color:#fdd;background:#a030302e;border-color:#eb6e6e73}.service-card-action--delete:hover{color:#fff;background:#c83e3e57;border-color:#ff9191b3}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin:1rem 0 1.5rem}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.35rem}.stat-label{font-size:.85rem;color:var(--muted, #888)}.loyalty-admin .panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1.25rem}.loyalty-admin .data-table{width:100%;border-collapse:collapse;font-size:.9rem}.loyalty-admin .data-table th,.loyalty-admin .data-table td{border-bottom:1px solid var(--border);padding:.5rem;text-align:start}.staff-ratings-admin .rating-badge{display:inline-flex;align-items:center;gap:.35rem;color:#d4af6a}.staff-ratings-admin .rating-num{color:var(--text, #eee);font-weight:600}.staff-ratings-admin .panel{margin-bottom:1.5rem}.customers-page{width:100%;max-width:1280px}.page-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.page-title{margin:0;font-size:1.35rem;font-weight:700}.page-subtitle{margin:.25rem 0 0;font-size:.85rem}.page-toolbar-btn{flex-shrink:0;min-width:10rem}.alert{padding:.65rem 1rem;border-radius:8px;margin:0 0 1rem;font-size:.9rem}.alert-success{color:#8bc98b;background:#2e784626;border:1px solid rgba(46,120,70,.35)}.alert-error{color:#e8a0a0;background:#782e2e26;border:1px solid rgba(120,46,46,.35)}.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:#ffffff05}.panel-head h3{margin:0;font-size:1rem;font-weight:600}.icon-close{border:none;background:transparent;color:var(--muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:0 .25rem}.icon-close:hover{color:var(--text)}.customers-layout{display:grid;gap:1.25rem;align-items:start}.customers-layout--split{grid-template-columns:minmax(300px,380px) 1fr}.customers-side{position:sticky;top:1rem}.customer-form{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.customer-form .panel-head{margin:-1rem -1rem 0;padding:.85rem 1rem}.customer-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.customer-form-grid .field{display:flex;flex-direction:column;gap:.3rem}.customer-form-grid .field--full{grid-column:1 / -1}.customer-form-grid label{font-size:.8rem;color:var(--muted, #888);font-weight:600}.customer-form-grid input,.customer-form-grid textarea,.customer-form-grid select,.customer-form .field input,.customer-form .field select,.customer-form .field textarea{padding:.55rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%}.customer-form .field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.customer-form .field label{font-size:.8rem;color:var(--muted);font-weight:600}.muted{color:var(--muted)}.small{font-size:.85rem}.customer-form-submit{width:100%;margin-top:.25rem}.beauty-side{padding:1rem}.beauty-side .panel-head{margin:-1rem -1rem .5rem;padding:.85rem 1rem}.beauty-list{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.beauty-list li{display:flex;flex-wrap:wrap;gap:.35rem .75rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.9rem}.beauty-list li:last-child{border-bottom:none}.beauty-label{color:var(--muted);min-width:5rem}.beauty-notes{flex-direction:column}.beauty-notes p{margin:.25rem 0 0}.customers-main .table-wrap{overflow-x:auto;padding:.5rem 0}.customers-page .data-table{width:100%;border-collapse:collapse;font-size:.88rem}.customers-page .data-table th,.customers-page .data-table td{padding:.65rem 1rem;text-align:start;border-bottom:1px solid var(--border);vertical-align:middle}.customers-page .data-table th{font-size:.78rem;color:var(--muted);font-weight:600;background:#00000026}.customers-page .data-table tbody tr:hover{background:#d4af6a0f}.customers-page .data-table tr.row-selected{background:#d4af6a1f}.employee-thumb{width:40px;height:40px;border-radius:50%;object-fit:cover;vertical-align:middle}.employee-thumb--empty{display:inline-flex;align-items:center;justify-content:center;background:var(--surface);font-size:.75rem;color:var(--muted)}.employee-preview{margin-top:.5rem;max-width:120px;border-radius:8px}.page-toolbar-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.data-table tr.row-inactive{opacity:.55}.data-table tr.row-inactive td{text-decoration:line-through;text-decoration-color:#00000040}.portal-employee-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 .75rem}.portal-employee-picker .employee-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--text);cursor:pointer;font-size:.85rem}.portal-employee-picker .employee-chip.sel{border-color:var(--accent);background:#d4af6a1f}.portal-employee-picker .employee-thumb{width:40px;height:40px;border-radius:50%;object-fit:cover}.inventory-mode-tabs{display:flex;gap:.35rem;margin-bottom:1rem}.inventory-mode-tabs .tab{flex:1;padding:.45rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);cursor:pointer;font-size:.82rem}.inventory-mode-tabs .tab.on{border-color:var(--accent);background:#c9a96238;color:var(--text)}.filter-select{padding:.4rem .6rem;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text)}.qty-input{width:4.5rem;padding:.25rem .35rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text)}.qty-input--sm{width:3rem;margin:0 .25rem}.inventory-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.data-table tr.row-low-stock{background:#e5555514}.finance-page .finance-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem}.finance-page .finance-tabs .tab{padding:.45rem .85rem;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);cursor:pointer;font-size:.85rem}.finance-page .finance-tabs .tab.on{border-color:var(--accent);background:#c9a96238;color:var(--text)}.journal-form{margin-bottom:1.5rem}.journal-meta-grid{grid-template-columns:minmax(10rem,12rem) minmax(8.25rem,9rem) 1fr;gap:.5rem .65rem;align-items:end}.journal-meta-grid .field-entry-number input{font-size:.82rem}.journal-meta-grid .field-entry-date input{max-width:100%;font-size:.82rem;padding:.35rem .4rem}.journal-form-head{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;width:100%;margin-bottom:.75rem}.journal-form-head h3{margin:0;font-size:1rem}.journal-goto-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0000008c}.journal-goto-dialog{width:min(22rem,100%);padding:1.1rem 1.25rem;box-shadow:0 12px 40px #00000073}.journal-goto-title{margin:0 0 .85rem;font-size:1.05rem}.journal-goto-hint{margin:.35rem 0 .75rem}.journal-goto-actions{display:flex;justify-content:flex-end;gap:.5rem}.journal-goto-dialog input{width:100%;font-size:1rem}.journal-toolbar-ribbon{display:flex;flex-wrap:wrap;align-items:center;width:100%;box-sizing:border-box;padding:.5rem .55rem;gap:.35rem;overflow-x:auto;background:linear-gradient(180deg,#e8f1fa,#b8cfe8 55%,#9ebad9);border:1px solid #7a9cbc;border-radius:8px;box-shadow:inset 0 1px #ffffffa6}.ribbon-group{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:.4rem;padding:0 .2rem;flex:0 0 auto}.ribbon-sep{width:1px;align-self:stretch;margin:.2rem .1rem;background:linear-gradient(180deg,#a8c0d8,#6d8fad);flex:0 0 1px}.journal-promo-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.75rem;padding:.55rem 1.1rem;border-radius:10px;font-family:inherit;font-weight:700;font-size:.95rem;line-height:1.2;text-decoration:none;border:1px solid rgba(255,255,255,.3);box-shadow:0 2px 6px #00000047,inset 0 1px #ffffff4d;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;flex-shrink:0;white-space:nowrap}.journal-promo-btn:hover:not(:disabled),.journal-promo-btn:focus-visible:not(:disabled){transform:translateY(-2px);filter:brightness(1.06);outline:2px solid rgba(255,255,255,.45);outline-offset:2px}.journal-promo-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;filter:none}.journal-promo-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:50%;flex-shrink:0;line-height:0}.journal-promo-btn-glyph{font-size:1.15rem;font-weight:800;line-height:1}.journal-promo-btn-label{font-size:inherit;font-weight:inherit}.journal-promo-btn--accent,a.journal-promo-btn--accent{background:linear-gradient(180deg,#e8c97a 0%,var(--accent) 55%,#b8962e 100%);color:#1a1408}.journal-promo-btn--accent .journal-promo-btn-icon{background:#1a14081f}.journal-promo-btn--nav{background:linear-gradient(180deg,#f8fbff,#d4e6f7);color:#1e3a5f;border-color:#8aa8c4;min-height:2.5rem;padding:.45rem .85rem;font-size:.88rem}.journal-promo-btn--nav .journal-promo-btn-icon{background:#1e3a5f14;width:1.25rem;height:1.25rem}.journal-promo-btn--print{background:linear-gradient(180deg,#f4f6f8,#cfd8dc);color:#263238;border-color:#90a4ae}.journal-promo-btn--print .journal-promo-btn-icon{background:#2632381a}.journal-promo-btn--excel{background:linear-gradient(180deg,#c8e6c9,#66bb6a);color:#1b3d1f;border-color:#43a047}.journal-promo-btn--excel .journal-promo-btn-icon{background:#1b3d1f1f}.journal-promo-btn--pdf{background:linear-gradient(180deg,#ffcdd2,#e57373);color:#5c1a1a;border-color:#c62828}.journal-promo-btn--pdf .journal-promo-btn-icon{background:#5c1a1a1f}.journal-promo-btn--danger{background:linear-gradient(180deg,#ffc9c9,#e57373);color:#5c1a1a;border-color:#c0392b}.journal-promo-btn--danger .journal-promo-btn-icon{background:#5c1a1a1a}.journal-promo-btn--primary{background:linear-gradient(180deg,#bbdefb,#64b5f6);color:#0d2a45;border-color:#2980b9}.journal-promo-btn--primary .journal-promo-btn-icon{background:#0d2a451a}a.journal-promo-btn--accent:hover,a.journal-promo-btn--accent:focus-visible{color:#1a1408;text-decoration:none;box-shadow:0 6px 18px #d4b76e73,inset 0 1px #fff6}.journal-line-actions-inner{display:flex;flex-direction:row;flex-wrap:wrap;gap:.3rem;align-items:stretch}.journal-line-actions-head{width:9rem}.journal-line-actions{width:9rem;vertical-align:middle}.journal-line-actions .table-action{flex:1 1 auto;min-width:4.5rem;font-size:.72rem;padding:.3rem .4rem}.journal-line-actions .table-action:disabled{opacity:.45;cursor:not-allowed}.table-action--danger{border-color:#dc50508c;color:#f0a0a0}.table-action--danger:hover{background:#b43c3c40}.journal-lines-table{overflow:visible;table-layout:fixed;width:100%;border-collapse:collapse}.journal-lines-table tbody,.journal-lines-table tr,.journal-lines-table td,.journal-form.panel{overflow:visible}.journal-lines-table th,.journal-lines-table td{padding:.2rem .3rem;vertical-align:middle}.journal-lines-table tfoot .journal-lines-total td{padding:.45rem .35rem;border-top:2px solid #7a9cbc;background:linear-gradient(180deg,#e8f1fa,#b8cfe8);font-weight:700}.journal-total-label{text-align:end;color:#1e3a5f;font-size:.88rem}.journal-total-debit,.journal-total-credit{text-align:center;font-size:.9rem;background:#fff!important;border:1px solid #8aa8c4;box-shadow:inset 0 0 0 1px #fffc}.journal-total-debit{color:#c0392b}.journal-total-credit{color:#27ae60}.journal-lines-total--unbalanced .journal-total-debit,.journal-lines-total--unbalanced .journal-total-credit{border-color:#c0392b;box-shadow:0 0 0 1px #c0392b59}.journal-lines-total--unbalanced .journal-total-label{color:#c0392b}.journal-lines-table .col-account-code{width:5.25rem}.journal-lines-table .col-account{width:24%}.journal-lines-table .col-debit,.journal-lines-table .col-credit{width:4.25rem}.journal-lines-table .col-desc{width:16%}.journal-lines-table .col-cost{width:7.5rem}.journal-lines-table input,.journal-lines-table select{width:100%;font-size:.8rem;padding:.3rem .35rem;margin:0;box-sizing:border-box}.journal-account-code{font-family:var(--font-mono, ui-monospace, monospace);letter-spacing:.02em}.account-search-picker{position:relative;width:100%}.account-search-input{width:100%}.account-search-dropdown{position:absolute;z-index:9000;top:100%;left:0;right:0;margin:.15rem 0 0;padding:.25rem 0;max-height:21.5rem;overflow-y:auto;list-style:none;background:var(--surface-elevated, #2a2d35);border:1px solid var(--border, #444);border-radius:6px;box-shadow:0 8px 24px #00000059}.account-search-dropdown li{min-height:2.05rem;line-height:1.35;padding:.4rem .55rem;cursor:pointer;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-search-dropdown li.on,.account-search-dropdown li:hover{background:#c9a96238}.journal-card{margin-bottom:.75rem;padding:.75rem 1rem}.journal-card-head{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.35rem}.data-table.compact td,.data-table.compact th{padding:.3rem .45rem;font-size:.82rem}.report-filters{margin-bottom:1rem}.reports-page .reports-layout{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:1.25rem;align-items:start}.reports-nav{max-height:calc(100vh - 180px);overflow-y:auto;padding:1rem}.reports-nav-cat{margin:.75rem 0 .35rem;font-size:.78rem;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.reports-nav-group:first-child .reports-nav-cat{margin-top:0}.reports-nav ul{list-style:none;padding:0;margin:0}.reports-nav-item{display:block;width:100%;text-align:start;padding:.4rem .5rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:.85rem;color:inherit}.reports-nav-item:hover{background:#d4af6a1a}.reports-nav-item.on{background:#d4af6a33;font-weight:600}.reports-main{padding:1.25rem;min-height:400px}.report-result{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.report-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.report-cards{margin-top:1rem}.report-raw{font-size:.75rem;overflow:auto;max-height:400px}@media (max-width: 960px){.reports-page .reports-layout{grid-template-columns:1fr}.reports-nav{max-height:none}}.chart-page-layout{display:grid;grid-template-columns:1fr minmax(280px,340px);gap:1rem;align-items:start}.chart-page-main{min-width:0}.chart-tree-panel{padding:0;overflow:hidden;background:var(--surface);border:1px solid var(--border);color:var(--text);box-shadow:0 2px 12px #00000040}.chart-tree-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:#2e2e3c}.chart-tree-toolbar h3{margin:0;font-size:1.1rem;color:var(--text);font-weight:600}.chart-tree-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.chart-tree-actions .table-action{color:var(--accent);border-color:var(--accent)}.chart-tree-actions .primary{width:auto;padding:.45rem .85rem;font-size:.82rem}.chart-tree-entity{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:#c9a96214;border-bottom:1px solid var(--border);font-size:.95rem;color:var(--text)}.chart-tree-entity strong{color:var(--accent)}.chart-tree-body{padding:.25rem 0 .5rem;max-height:55vh;overflow-y:auto;background:var(--surface)}.chart-tree-node-wrap{margin:0;padding:0}.chart-tree-row{display:flex;align-items:center;gap:.2rem;min-height:0;padding:.1rem .3rem;line-height:1.2;color:var(--text);border-bottom:1px solid rgba(255,255,255,.04)}.chart-tree-row:hover{background:#ffffff12}.chart-tree-row.sel{background:#d4b76e47}.chart-tree-icon{flex-shrink:0;font-size:1rem;line-height:1}.chart-tree-icon.folder{filter:saturate(1.2) brightness(1.15)}.chart-tree-icon.doc{opacity:.95}.chart-tree-row.main .chart-tree-text{font-weight:600;color:var(--text)}.chart-tree-toggle{width:1.5rem;border:none;background:transparent;cursor:pointer;color:var(--accent);flex-shrink:0;font-size:.75rem}.chart-tree-toggle.spacer{visibility:hidden}.chart-tree-label{flex:1;display:flex;align-items:center;gap:.3rem;border:none;background:transparent;text-align:start;cursor:pointer;padding:.12rem 0;font-size:.88rem;line-height:1.2;min-width:0;min-height:0;color:var(--text)}.chart-tree-label:hover .chart-tree-text{color:var(--accent)}.chart-tree-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.88rem;line-height:1.2;letter-spacing:.01em}.chart-tree-badge{font-size:.62rem;padding:.08rem .35rem;line-height:1.1;border-radius:4px;background:#d4b76e47;color:#f5e6c8;border:1px solid rgba(212,183,110,.5);flex-shrink:0}.chart-tree-balance{font-size:.88rem;color:#f5e6c8;margin-inline-start:.35rem;font-weight:700;flex-shrink:0}.chart-tree-add-child{border:1px solid var(--accent);background:#c9a96226;color:var(--accent);border-radius:50%;width:1.35rem;height:1.35rem;cursor:pointer;flex-shrink:0;line-height:1;font-weight:700;font-size:.85rem}.chart-tree-add-child:hover{background:var(--accent);color:#1a1a22}.chart-tree-panel .empty-state{color:var(--muted);padding:2rem 1rem}.chart-page-form,.chart-page-detail{padding:1rem;color:var(--text)}.chart-page-detail h4{margin:0 0 .5rem;color:var(--text)}.chart-page-detail .mono{color:var(--accent)}.finance-page .page-title,.finance-page .page-toolbar h2{color:var(--text)}@media (max-width: 1100px){.chart-page-layout{grid-template-columns:1fr}}.customers-page .data-table td.mono{font-family:ui-monospace,monospace;font-size:.82rem}.table-action{padding:.35rem .65rem;border-radius:6px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer;font-size:.78rem;white-space:nowrap}.table-action.on{background:#d4af6a26}.empty-state{padding:2rem 1rem;text-align:center}@media (max-width: 960px){.customers-layout--split{grid-template-columns:1fr}.customers-side{position:static}.customer-form-grid{grid-template-columns:1fr}}.success-msg{color:#6a6;margin-bottom:1rem}.error{color:#c66}.page-head-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.page-head-row a.journal-promo-btn--accent{font-size:1.05rem;padding:.6rem 1.35rem}.journal-back-link{display:inline-block;margin-bottom:.35rem;text-decoration:none}.journal-back-link:hover{text-decoration:underline}.journal-list-page,.journal-entry-page{max-width:100%}.journal-list-toolbar{margin-bottom:1rem;padding:.75rem 1rem}.journal-list-search{width:100%;max-width:28rem;padding:.5rem .65rem;font-size:.95rem}.journal-list-table-wrap{padding:0;overflow-x:auto}.journal-list-table tbody tr.journal-list-row{cursor:pointer}.journal-list-table tbody tr.journal-list-row:hover,.journal-list-table tbody tr.journal-list-row:focus{background:#d4b76e1f;outline:none}.badge-posted{background:#d4edda;color:#155724}.badge-draft{background:#fff3cd;color:#856404}.settings-page{max-width:1200px}.settings-layout-body{display:grid;grid-template-columns:minmax(200px,240px) 1fr;gap:1.25rem;align-items:start}.settings-subnav{display:flex;flex-direction:column;gap:.15rem;padding:.65rem .5rem;position:sticky;top:.5rem}.settings-subnav-group{margin:.75rem .35rem .25rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.settings-subnav-link{display:block;padding:.55rem .75rem;border-radius:8px;color:var(--text);text-decoration:none;font-weight:600;font-size:.92rem}.settings-subnav-link:hover{background:#d4b76e1a}.settings-subnav-link.on{background:#d4b76e33;color:var(--accent)}.settings-content{min-width:0}.settings-panel{padding:1rem 1.15rem}.settings-panel-title{margin:0 0 1rem;font-size:1.1rem}.settings-panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.settings-users-layout{display:grid;grid-template-columns:1fr minmax(280px,360px);gap:1rem;align-items:start}.settings-users-row{cursor:default}.settings-users-row.on td{background:#d4b76e1f}.settings-users-actions{display:flex;gap:.35rem;flex-wrap:wrap}.tab-danger{color:#e57373}.settings-check-row{display:flex;align-items:center;gap:.5rem;margin:.75rem 0;font-size:.9rem}.settings-form-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.settings-role-tabs{display:flex;gap:.35rem;margin-bottom:1rem;flex-wrap:wrap}.settings-role-tab{padding:.45rem 1rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font-family:inherit;font-weight:600}.settings-role-tab.on{border-color:var(--accent);background:#d4b76e26;color:var(--accent)}.settings-permissions-table-wrap{overflow-x:auto;margin-bottom:1rem}.settings-perm-screen-col{text-align:start!important;min-width:11rem;font-weight:600}.settings-perm-col,.settings-perm-check,.settings-perm-all-col{text-align:center;vertical-align:middle;min-width:4.5rem}.settings-perm-all-col{min-width:3rem}.settings-permissions-table thead th.settings-perm-col{font-size:.82rem;white-space:nowrap;background:#d4b76e1f}.settings-perm-check input{width:1.1rem;height:1.1rem;cursor:pointer}.settings-permissions-intro{margin:-.5rem 0 1rem}@media (max-width: 900px){.settings-layout-body{grid-template-columns:1fr}.settings-subnav{position:static;flex-direction:row;flex-wrap:wrap}.settings-subnav-group{width:100%}.settings-users-layout{grid-template-columns:1fr}}.settings-whatsapp{padding:1.25rem}.settings-whatsapp-intro{margin:0 0 1rem}.settings-whatsapp-status{padding:.85rem 1rem;border-radius:10px;margin-bottom:1rem;border:1px solid var(--border)}.settings-whatsapp-status.on{background:#2e7d321f;border-color:#2e7d3259}.settings-whatsapp-status.off{background:#c666661a;border-color:#c6666659}.settings-whatsapp-section{margin:1.25rem 0;padding-top:1rem;border-top:1px solid var(--border)}.settings-whatsapp-section h4{margin:0 0 .75rem}.settings-whatsapp-hint{margin:.25rem 0 .75rem 1.75rem;font-size:.85rem}.settings-whatsapp-meta{margin:0;padding-inline-start:1.25rem;line-height:1.8}.settings-whatsapp-test{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.settings-whatsapp-test input{flex:1;min-width:160px;padding:.55rem .75rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.settings-whatsapp-actions{margin-top:1rem}.settings-sections{display:flex;flex-direction:column;gap:1rem}.settings-section{padding:0;overflow:hidden}.settings-section-toggle{display:flex;align-items:center;gap:.65rem;width:100%;padding:1rem 1.15rem;border:none;background:transparent;color:var(--text);cursor:pointer;font-family:inherit;text-align:start}.settings-section-toggle:hover{background:#d4b76e14}.settings-section-chevron{color:var(--accent);font-size:.75rem;flex-shrink:0}.settings-section-title{font-size:1.1rem;font-weight:700;flex-shrink:0}.settings-section-summary{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-section-body{padding:0 1.15rem 1.15rem;border-top:1px solid var(--border)}.settings-bilingual-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem;margin-bottom:1rem}.settings-bilingual-grid .field--full{grid-column:1 / -1}.settings-org-form textarea{width:100%;min-height:4.5rem;resize:vertical}.settings-logo-block{margin-bottom:1rem}.settings-logo-row{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.settings-logo-preview{display:flex;align-items:center;justify-content:center;width:120px;height:120px;padding:.5rem;border-radius:12px;border:1px solid var(--border);background:#ffffff0a}.settings-logo-img{max-width:100%;max-height:100%;object-fit:contain}.settings-logo-input{display:none}.settings-logo-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem}.settings-logo-hint{margin:0;max-width:16rem}@media (max-width: 640px){.settings-bilingual-grid{grid-template-columns:1fr}}.pos-page .page-title{margin:0}.pos-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.pos-page-header-main{display:flex;flex-direction:column;gap:.5rem}.pos-shift-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.pos-shift-badge{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;background:color-mix(in srgb,var(--pos-accent, var(--accent)) 12%,transparent);color:var(--pos-accent, var(--accent));font-size:.875rem;font-weight:600}.pos-close-shift{color:#b42318;border-color:color-mix(in srgb,#b42318 35%,transparent)}.btn-sm{padding:.35rem .65rem;font-size:.8125rem}.shift-gate{display:flex;justify-content:center;align-items:flex-start;min-height:60vh;padding:2rem 1rem}.shift-gate-card{width:min(520px,100%);padding:2rem;border-radius:16px;background:var(--card-bg, #fff);border:1px solid var(--border, #e8e4f0);box-shadow:0 8px 32px #58387814}.shift-gate-hint{margin:.5rem 0 1.25rem}.shift-gate-existing{margin-bottom:1.25rem;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--pos-border, #e6dff2);background:#faf8fd}.shift-gate-existing__text{margin:0 0 .65rem;color:var(--pos-text, #2b2438);font-size:.9rem}.shift-continue-btn{width:100%;justify-content:center}.shift-gate-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.25rem}.shift-type-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1rem;border:2px solid var(--border, #e8e4f0);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.shift-type-btn:hover,.shift-type-btn--active{border-color:var(--pos-accent, var(--accent));background:color-mix(in srgb,var(--pos-accent, var(--accent)) 8%,#fff)}.shift-type-btn__name{font-weight:700;font-size:1.05rem}.shift-type-btn__time{font-size:.8rem;color:var(--muted, #6b6578)}.shift-gate-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.shift-gate-field select,.shift-gate-field textarea{width:100%}.shift-gate-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:.5rem}.shift-open-btn{min-width:10rem}.shifts-page-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.shifts-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.shifts-tabs button{padding:.5rem 1rem;border:1px solid var(--border, #e8e4f0);border-radius:8px;background:#fff;cursor:pointer}.shifts-tabs button.shifts-tab--active{background:var(--accent);color:#fff;border-color:var(--accent)}.card-header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.shift-status{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.8rem;font-weight:600}.shift-status--open{background:#ecfdf3;color:#027a48}.shift-status--closed{background:#f2f4f7;color:#475467}.shifts-report-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;align-items:end;margin-bottom:1.25rem}.shifts-report-filters label{display:flex;flex-direction:column;gap:.35rem}.shifts-report-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:1rem 0}.shifts-report-kpis>div{padding:1rem;border-radius:10px;background:var(--bg-subtle, #f9f7fc);border:1px solid var(--border, #e8e4f0)}.shifts-report-kpis span{display:block;font-size:.8rem;color:var(--muted, #6b6578);margin-bottom:.25rem}.shifts-type-modal{max-width:420px}.shifts-type-times{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.shift-close-summary{max-width:420px}.pos-history-toggle{border-color:var(--pos-accent, var(--accent));color:var(--pos-accent, var(--accent));font-weight:600}.pos-history-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;margin-inline-start:.35rem;padding:0 .35rem;border-radius:999px;background:var(--pos-accent-soft, rgba(212, 183, 110, .2));font-size:.75rem}.pos-page--sales-only .pos-shell{margin-bottom:0}.pos-page--sales-only .pos-catalog-panel{min-height:calc(100vh - 11rem)}.pos-page--sales-only .pos-catalog-grid--cards{max-height:none}.pos-account-chips{display:flex;flex-wrap:wrap;gap:.5rem}.pos-account-chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.pos-layout{margin-bottom:1.5rem}.pos-shell{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:1rem;align-items:start;margin-bottom:1.5rem}.pos-cart-panel{display:flex;flex-direction:column;gap:.75rem;position:sticky;top:.75rem;max-height:calc(100vh - 6rem);overflow:auto}.pos-cart-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.pos-cart-head h3{margin:0;font-size:1.05rem}.pos-clear-btn{font-size:.85rem;padding:.25rem .5rem}.pos-cart-field{margin:0}.pos-cart-field label{font-size:.8rem}.pos-icon-btn{width:2.5rem;flex-shrink:0;border:1px solid var(--accent);background:#d4b76e1f;color:var(--accent);border-radius:8px;font-size:1.25rem;line-height:1;cursor:pointer}.pos-cart-lines{display:flex;flex-direction:column;gap:.5rem;min-height:4rem;max-height:240px;overflow:auto;padding:.25rem 0}.pos-cart-empty{text-align:center;padding:1rem 0}.pos-cart-line{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:.25rem .5rem;padding:.65rem;border:1px solid var(--border);border-radius:10px;background:var(--bg)}.pos-cart-line-info{display:flex;flex-direction:column;gap:.15rem;grid-column:1}.pos-cart-line-controls{display:flex;align-items:center;gap:.25rem;grid-column:2;grid-row:1 / span 2;align-self:center}.pos-qty-btn{width:1.75rem;height:1.75rem;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;cursor:pointer;font-size:1rem;line-height:1}.pos-qty-val{min-width:1.25rem;text-align:center;font-weight:600}.pos-remove-btn{border:none;background:transparent;color:#e57373;font-size:1.2rem;cursor:pointer;margin-inline-start:.25rem}.pos-cart-line-total{grid-column:1;font-weight:600;color:var(--accent);font-size:.9rem}.pos-totals{display:flex;flex-direction:column;gap:.35rem;padding-top:.5rem;border-top:1px solid var(--border);font-size:.9rem}.pos-totals>div{display:flex;justify-content:space-between;gap:.5rem}.pos-totals-grand{font-size:1.05rem;font-weight:700;color:var(--accent);padding-top:.35rem;margin-top:.15rem;border-top:1px dashed var(--border)}.pos-pay-methods--stack{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.pos-pay-methods--stack .pos-pay-btn{padding:.4rem .35rem;font-size:.78rem;text-align:center}.pos-pay-main{width:100%;padding:.85rem 1rem;font-size:1.05rem;font-weight:600}.pos-notes{width:100%;resize:vertical;min-height:2.5rem}.pos-catalog-panel{display:flex;flex-direction:column;gap:.75rem;min-width:0}.pos-catalog-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.pos-search{flex:1;min-width:200px;padding:.65rem 1rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text)}.pos-category-pills{display:flex;flex-wrap:wrap;gap:.4rem}.pos-category-pills button{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:.35rem .85rem;cursor:pointer;font-size:.85rem;white-space:nowrap}.pos-category-pills button.on{border-color:var(--accent);color:var(--accent);background:#d4b76e1f}.pos-catalog-grid--cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:none;overflow:visible}.pos-catalog-card{display:flex;flex-direction:column;border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:hidden;cursor:pointer;padding:0;text-align:start;color:var(--text);transition:border-color .15s,transform .15s}.pos-catalog-card:hover{border-color:var(--accent);transform:translateY(-2px)}.pos-catalog-card-media{position:relative;aspect-ratio:4 / 3;background:var(--bg);overflow:hidden}.pos-catalog-card-media img{width:100%;height:100%;object-fit:cover}.pos-catalog-card-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--muted);font-size:.75rem;letter-spacing:.08em}.pos-catalog-card-add{position:absolute;bottom:.5rem;inset-inline-start:.5rem;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--accent);color:#1a1a22;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;line-height:1}.pos-catalog-card-body{padding:.55rem .65rem .7rem;display:flex;flex-direction:column;gap:.2rem}.pos-catalog-card-name{font-size:.88rem;line-height:1.35;min-height:2.4em}.pos-catalog-card-body strong{color:var(--accent);font-size:.9rem}.pos-custom-line--compact{grid-template-columns:1fr 5rem auto}@media (max-width: 960px){.pos-shell{grid-template-columns:1fr}.pos-cart-panel{position:static;max-height:none}}.pos-customer-row{display:flex;gap:.5rem;align-items:stretch}.pos-customer-row select{flex:1;min-width:0}.pos-add-customer-btn{white-space:nowrap;flex-shrink:0}.pos-cart-table td,.pos-cart-table th,.pos-line-desc{color:var(--text)}.pos-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#000000b8;display:flex;align-items:center;justify-content:center;padding:1rem}.pos-modal{width:min(420px,100%)}.pos-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.pos-workspace{display:flex;flex-direction:column;gap:1rem}.pos-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.pos-pay-methods{display:flex;flex-wrap:wrap;gap:.5rem}.pos-pay-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.45rem .85rem;cursor:pointer;font-size:.9rem}.pos-pay-btn.on{border-color:var(--accent);background:#d4b76e26;color:var(--accent)}.pos-catalog-tabs{display:flex;gap:.35rem;margin-bottom:.65rem}.pos-catalog-tabs button{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:8px;padding:.35rem .75rem;cursor:pointer}.pos-catalog-tabs button.on{color:var(--text);border-color:var(--accent)}.pos-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;max-height:220px;overflow:auto}.pos-catalog-item{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;text-align:start;border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:.65rem .75rem;cursor:pointer;color:var(--text);min-height:72px}.pos-catalog-item:hover{border-color:var(--accent)}.pos-catalog-item strong{color:var(--accent);font-size:.9rem}.pos-cart h3,.pos-preview-title,.pos-history h3{margin:0 0 .75rem;font-size:1rem}.pos-cart-table .pos-cart-input{width:4.5rem;padding:.25rem .35rem}.pos-custom-line{display:grid;grid-template-columns:1fr 6rem 4rem auto;gap:.5rem;align-items:center}.pos-qty-input{max-width:4rem}.pos-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.pos-issue-btn{min-width:200px}.pos-preview{position:sticky;top:1rem;padding:.75rem;overflow:auto;max-height:calc(100vh - 120px)}.pos-receipt{width:100%}.pos-receipt-paper{background:#fff;color:#1a1a24;border-radius:10px;padding:1rem;box-shadow:inset 0 0 0 1px #e8e8ee;font-size:.85rem}.pos-receipt-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;border-bottom:2px solid #d4af6a;padding-bottom:.65rem;margin-bottom:.65rem}.pos-receipt-brand{display:flex;gap:.65rem;align-items:flex-start;flex:1;min-width:180px}.pos-receipt-logo{width:52px;height:52px;object-fit:contain;border-radius:8px;background:#f5f5f8}.pos-receipt-type{margin:0;font-weight:700;color:#8b6914;font-size:.8rem}.pos-receipt-head h2{margin:.2rem 0;font-size:1.05rem;color:#1a1a24}.pos-receipt-muted{color:#555;margin:.15rem 0;font-size:.78rem}.pos-receipt-meta{text-align:end;font-size:.8rem}.pos-receipt-label{display:block;font-size:.68rem;color:#666}.pos-receipt-qr{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.35rem;border:1px solid #ddd;border-radius:8px;font-size:.65rem;color:#555}.pos-receipt-vat{background:#f8f4ea;padding:.45rem .65rem;border-radius:8px;margin:0 0 .65rem;font-size:.8rem}.pos-receipt-parties{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.pos-receipt-parties h4{margin:0 0 .25rem;font-size:.7rem;color:#666;text-transform:uppercase}.pos-receipt-lines{width:100%;border-collapse:collapse;margin-bottom:.75rem}.pos-receipt-lines th,.pos-receipt-lines td{border:1px solid #ddd;padding:.35rem .45rem;text-align:start}.pos-receipt-lines th{background:#f5f5f8;font-size:.75rem}.pos-receipt-empty{text-align:center;color:#888;padding:1rem!important}.pos-receipt-totals>div{display:flex;justify-content:space-between;padding:.2rem 0}.pos-receipt-grand{font-weight:700;font-size:1rem;border-top:2px solid #1a1a24;margin-top:.35rem;padding-top:.35rem}.pos-receipt-notes{font-size:.8rem;color:#444;margin:.5rem 0 0}.pos-receipt-footer{text-align:center;font-size:.72rem;color:#666;margin:.75rem 0 0}.pos-receipt-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-bottom:.75rem;flex-wrap:wrap}.pos-receipt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#000000d1;overflow:auto;padding:1rem}.pos-receipt-overlay .pos-receipt{max-width:320px;margin:0 auto 2rem}.pos-receipt-overlay .pos-receipt-paper{box-shadow:0 8px 32px #00000059}.pos-receipt-thermal{width:100%;max-width:260px;margin:0 auto;padding:10px 8px 16px;font-family:Courier New,Segoe UI,Tahoma,sans-serif;font-size:11px;line-height:1.35;color:#000;background:#fff;overflow-x:hidden;box-sizing:border-box}.thermal-head{text-align:center}.thermal-logo{width:56px;height:56px;object-fit:contain;margin:0 auto 6px;display:block}.thermal-title{margin:0 0 4px;font-size:10px;font-weight:700;letter-spacing:.02em}.thermal-shop{margin:0 0 4px;font-size:14px;font-weight:800;line-height:1.25}.thermal-muted{margin:2px 0;font-size:10px;color:#333}.thermal-rule{border-top:1px dashed #000;margin:8px 0}.thermal-meta{display:flex;flex-direction:column;gap:3px}.thermal-meta-row{display:flex;justify-content:space-between;gap:8px;font-size:10px}.thermal-meta-row span:first-child{color:#333;flex-shrink:0}.thermal-meta-row span:last-child,.thermal-meta-row strong{text-align:end;word-break:break-word}.thermal-lines{display:flex;flex-direction:column;gap:6px}.thermal-line-name{font-weight:700;font-size:11px;margin-bottom:2px}.thermal-line-row{display:flex;justify-content:space-between;align-items:baseline;gap:6px;width:100%;font-size:10px}.thermal-line-row>span:first-child{flex:1 1 auto;min-width:0}.thermal-amt{flex:0 0 auto;white-space:nowrap;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;text-align:left}.thermal-empty{text-align:center;color:#666;margin:0}.thermal-totals{display:flex;flex-direction:column;gap:3px}.thermal-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;width:100%;font-size:10px}.thermal-total-row>span:first-child{flex:1 1 auto;min-width:0}.thermal-total-row--grand{margin-top:4px;padding-top:6px;border-top:2px solid #000;font-size:12px}.thermal-notes{font-size:10px;margin:0;word-break:break-word}.thermal-qr{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:10px;font-size:9px;color:#333}.thermal-footer{text-align:center;margin:10px 0 0;font-size:10px}.thermal-cut{margin:12px 0 0;height:0}.invoice-print-page{width:68mm;max-width:68mm;margin:0;padding:1.5mm 2mm;background:#fff;color:#000;box-sizing:border-box;overflow-x:hidden}html.invoice-print-active,html.invoice-print-active body{width:68mm;max-width:68mm;margin:0;padding:0;background:#fff;color:#000;overflow-x:hidden}html.invoice-print-active #root{width:68mm;max-width:68mm;margin:0;padding:0}@page thermal-receipt{size:80mm auto;margin:0}@media print{html.invoice-print-active,html.invoice-print-active body,html.invoice-print-active #root{width:68mm!important;max-width:68mm!important;margin:0!important;padding:0!important;background:#fff!important}html.invoice-print-active .invoice-print-page{page:thermal-receipt;width:68mm!important;max-width:68mm!important;margin:0!important;padding:1.5mm 2mm!important;box-shadow:none!important;overflow:hidden!important}html.invoice-print-active #pos-invoice-print{page:thermal-receipt;width:100%!important;max-width:68mm!important;margin:0!important;padding:0!important;box-shadow:none!important;overflow:hidden!important}html.invoice-print-active #pos-invoice-print,html.invoice-print-active #pos-invoice-print *{color:#000!important;visibility:visible!important}html.invoice-print-active .thermal-amt{flex-shrink:0!important;white-space:nowrap!important}}@media print{@page{margin:3mm}html,body{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sidebar,.header-row,.no-print,.lang-toggle{display:none!important}.layout,.main,.pos-page,.pos-receipt-overlay,.pos-receipt{display:block!important;position:static!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;box-shadow:none!important;overflow:visible!important}.pos-page>*:not(.pos-receipt-overlay){display:none!important}.pos-receipt-overlay{background:#fff!important}.pos-receipt-actions{display:none!important}#pos-invoice-print{page:thermal-receipt;width:68mm!important;max-width:68mm!important;margin:0!important;padding:1.5mm 2mm!important;background:#fff!important;color:#000!important;box-shadow:none!important;overflow:hidden!important}#pos-invoice-print,#pos-invoice-print *{color:#000!important;visibility:visible!important}#pos-invoice-print .thermal-amt{flex-shrink:0!important;white-space:nowrap!important}.thermal-logo{width:48px;height:48px}.thermal-qr svg{width:88px!important;height:88px!important}}@media (max-width: 1100px){.pos-layout{grid-template-columns:1fr}.pos-preview{position:static;max-height:none}}@media (max-width: 720px){.pos-fields-grid,.pos-custom-line{grid-template-columns:1fr}.pos-qty-input{max-width:100%}}.pos-page{--pos-bg: #f3effa;--pos-surface: #ffffff;--pos-border: #e6dff2;--pos-text: #2b2438;--pos-muted: #8a8198;--pos-accent: #7b5eb8;--pos-accent-soft: #efe8fb;--pos-accent-hover: #684da3;--pos-danger: #e25555;background:var(--pos-bg);border-radius:18px;padding:1rem 1.15rem 1.35rem;color:var(--pos-text)}.pos-page .page-title{color:var(--pos-text);font-size:1.35rem}.pos-page .muted{color:var(--pos-muted)}.pos-page .panel{background:var(--pos-surface);border:1px solid var(--pos-border);box-shadow:0 8px 28px #583e8c14;border-radius:16px}.pos-page input,.pos-page select,.pos-page textarea{background:#faf8fd;border:1px solid var(--pos-border);color:var(--pos-text);border-radius:10px}.pos-page .primary,.pos-page .pos-pay-main{background:linear-gradient(135deg,#8b6cc9,#6f52ad);border:none;color:#fff;border-radius:12px;box-shadow:0 8px 20px #6f52ad47}.pos-page .primary:disabled,.pos-page .pos-pay-main:disabled{opacity:.55;box-shadow:none}.pos-page .btn-ghost{color:var(--pos-muted);border-color:var(--pos-border)}.pos-cart-panel{padding:1rem}.pos-cart-head h3{display:flex;align-items:center;gap:.45rem;color:var(--pos-accent);font-weight:700}.pos-cart-icon{font-size:1.15rem}.pos-icon-btn{border-color:var(--pos-accent);background:var(--pos-accent-soft);color:var(--pos-accent);border-radius:10px}.pos-cart-lines{max-height:280px}.pos-cart-line{display:flex;gap:.65rem;align-items:stretch;padding:.7rem;border:1px solid var(--pos-border);border-radius:12px;background:#faf8fd}.pos-cart-line-thumb{width:2.6rem;height:2.6rem;border-radius:10px;background:var(--pos-accent-soft);color:var(--pos-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}.pos-cart-line-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.45rem}.pos-cart-line-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.35rem}.pos-cart-line-top .pos-line-desc{color:var(--pos-text);font-size:.92rem;line-height:1.35}.pos-cart-line-bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.pos-qty-btn{border:1px solid var(--pos-border);background:#fff;color:var(--pos-text);border-radius:8px}.pos-remove-btn{color:var(--pos-danger);font-size:.95rem;padding:0}.pos-cart-line-total{color:var(--pos-accent);font-weight:700;white-space:nowrap}.pos-discount-row{display:grid;grid-template-columns:1fr auto;gap:.45rem}.pos-discount-btn{border:none;background:var(--pos-accent-soft);color:var(--pos-accent);border-radius:10px;padding:.45rem .85rem;font-weight:600;cursor:not-allowed;opacity:.7}.pos-totals{border-top-color:var(--pos-border)}.pos-totals-grand{color:var(--pos-accent);border-top-color:var(--pos-border)}.pos-pay-methods--stack{grid-template-columns:repeat(5,1fr)}.pos-page .pos-pay-btn{border:1px solid var(--pos-border);background:#fff;color:var(--pos-muted);border-radius:10px}.pos-page .pos-pay-btn.on{border-color:var(--pos-accent);background:var(--pos-accent-soft);color:var(--pos-accent);font-weight:600}.pos-catalog-panel{padding:1rem;min-height:520px}.pos-search{width:100%;border-radius:999px;background:#faf8fd;border:1px solid var(--pos-border);padding:.75rem 1.1rem;font-size:.95rem}.pos-account-chip{background:var(--pos-accent-soft);border-color:transparent;color:var(--pos-accent)}.pos-catalog-tabs button,.pos-category-pills button{border:1px solid var(--pos-border);background:#fff;color:var(--pos-muted)}.pos-catalog-tabs button.on,.pos-category-pills button.on{border-color:var(--pos-accent);background:var(--pos-accent);color:#fff}.pos-category-pills{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.pos-catalog-grid--cards{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:.85rem}.pos-page .pos-catalog-card{border:1px solid var(--pos-border);background:#fff;border-radius:14px;box-shadow:0 4px 14px #583e8c0f;color:var(--pos-text)}.pos-page .pos-catalog-card-name{color:var(--pos-text);font-weight:600}.pos-page .pos-catalog-card-placeholder{color:var(--pos-muted)}.pos-page .pos-catalog-card:hover{border-color:var(--pos-accent);box-shadow:0 8px 22px #6f52ad24}.pos-catalog-card-media{background:#f0eaf8}.pos-catalog-card-add{background:var(--pos-accent);color:#fff}.pos-page .pos-catalog-card-body strong{color:var(--pos-accent)}.pos-catalog-footer{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;padding-top:.5rem;margin-top:auto;border-top:1px solid var(--pos-border)}.pos-footer-btn{border:none;background:transparent;font-weight:600;cursor:pointer;padding:.35rem .5rem}.pos-footer-btn--danger{color:var(--pos-danger)}.pos-footer-btn--new{color:var(--pos-accent)}.pos-history.panel{margin-top:.5rem}.pos-page .pos-history .table-wrap{padding:0 1rem 1rem}.pos-page .data-table{background:var(--pos-surface);border-radius:12px;border:1px solid var(--pos-border)}.pos-page .data-table th,.pos-page .data-table td{color:var(--pos-text);border-bottom-color:var(--pos-border)}.pos-page .data-table th{color:var(--pos-accent);font-weight:600;background:var(--pos-accent-soft)}.pos-page .data-table tbody tr:hover{background:#faf8fd}.pos-page .data-table .table-action{border-color:var(--pos-accent);color:var(--pos-accent)}.pos-page .pos-history h3{color:var(--pos-text);padding:1rem 1rem .5rem;margin:0}.pos-page .alert-success{background:#e8f7ee;color:#1f6b42;border:1px solid #b9e5cb}.pos-page .alert-error{background:#fdeeee;color:#a33;border:1px solid #f5c2c2}@media (max-width: 960px){.pos-pay-methods--stack{grid-template-columns:repeat(3,1fr)}}
