:root{--bg:#f5f1ea;--surface:#fffdf9;--surface-soft:#f0e9dd;--primary:#3a2921;--primary-hover:#221711;--accent:#aa7b3d;--accent-soft:#f4e5c7;--text:#251b17;--muted:#796e66;--border:#ddd2c5;--success:#21714c;--warning:#9b641c;--danger:#a44038;--sidebar:#1d1714;--sidebar-muted:#b9aba0;--shadow:0 12px 32px rgba(53,34,22,.08);--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px "Segoe UI",Arial,sans-serif;line-height:1.45}aside{position:fixed;z-index:5;width:250px;inset:0 auto 0 0;background:var(--sidebar);padding:28px 16px;color:#fff;box-shadow:8px 0 28px #1b110d14}aside h1{margin:0 10px 24px;font:700 20px Georgia,serif;letter-spacing:2px}aside small,.nav-label{display:block;color:#c8a875;font:700 10px "Segoe UI",sans-serif;letter-spacing:1.6px;margin-top:5px}.nav-label{margin:22px 10px 6px;color:#918177}aside a,aside button{display:block;width:100%;border:0;border-radius:9px;background:none;color:var(--sidebar-muted);text-decoration:none;padding:10px 12px;margin:2px 0;text-align:left;font:inherit;transition:.15s ease}aside a:hover,aside a.active,aside button:hover{background:#34251e;color:#fff}aside form{margin-top:16px;border-top:1px solid #44342b;padding-top:12px}main{max-width:1450px;margin-left:250px;padding:34px 42px}header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}h2,h3,h4{margin-top:0;color:var(--primary)}h2{font:700 26px Georgia,serif;letter-spacing:.2px}h3{font-size:16px}.eyebrow{margin:0 0 5px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:1.7px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{position:relative;overflow:hidden;padding:18px}.metric:before{content:"";position:absolute;left:0;top:18px;width:3px;height:30px;background:var(--accent);border-radius:4px}.metric strong{display:block;margin-top:9px;font-size:21px;letter-spacing:-.5px}.metric span{color:var(--muted);margin-left:10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.7px}table{width:100%;border-collapse:separate;border-spacing:0;min-width:550px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid var(--border)}th{background:var(--surface-soft);color:#6d5a4e;font-size:10px;text-transform:uppercase;letter-spacing:1px}tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fffbf4}a{color:#725020;font-weight:600}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--border);border-radius:9px;padding:8px 13px;background:var(--surface);color:var(--primary);text-decoration:none;cursor:pointer;font:700 13px inherit;transition:.15s ease}button:hover,.button:hover{transform:translateY(-1px);border-color:#bea57f}button:focus,input:focus,select:focus,textarea:focus{outline:3px solid #e8d1a940;outline-offset:1px}.primary{background:var(--primary);border-color:var(--primary);color:#fff}.primary:hover{background:var(--primary-hover);color:#fff}.danger{color:#8c302b}.form{max-width:620px}.form label,label{display:block;margin:0 0 15px;color:#5d5048;font-size:12px;font-weight:700}input,select,textarea{width:100%;min-height:42px;margin-top:6px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:#fffefa;color:var(--text);font:inherit}textarea{min-height:100px;resize:vertical}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;min-height:auto;margin:0}.flash{position:relative;padding:13px 16px;border:1px solid;border-radius:10px;margin-bottom:18px;font-weight:600}.success{background:#e7f5ed;border-color:#bce0ca;color:#1f6845}.danger{background:#fce9e7;border-color:#e9bcb7;color:#96362e}.warning{background:#fbf1df;border-color:#ead5a9;color:#865515}.search,.report-filter{display:flex;gap:9px;align-items:center;margin-bottom:18px}.search input{max-width:360px}.report-filter input,.report-filter select{width:auto;margin:0}.report-tabs{display:flex;gap:18px;margin-bottom:15px}.pos{display:grid;grid-template-columns:310px minmax(0,1fr);gap:20px}.pos .card:first-child{height:max-content}.cart{padding:23px}.cart .line{display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(140px,1fr) 70px 100px 110px 38px;align-items:center;gap:9px;padding:10px;background:#fffcf7;border:1px solid var(--border);border-radius:10px;margin-bottom:9px}.cart .line select,.cart .line input{margin:0}.cart .unit-price,.cart .line-total{white-space:nowrap;text-align:right;font-size:13px}.cart .remove{padding:6px;min-height:32px;color:var(--danger);font-size:20px}.totals{max-width:380px;margin:24px 0 18px auto;background:var(--surface-soft);border-radius:11px;padding:10px 15px}.totals div{display:flex;justify-content:space-between;padding:8px 0;color:var(--muted)}.totals .grand{padding-top:13px;margin-top:5px;border-top:1px solid #c9b99e;color:var(--primary);font-size:19px;font-weight:800}.hint{color:var(--muted);font-size:12px;line-height:1.6}.badge{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.badge.active,.badge.completed,.badge.taxable{color:#226342;background:#e5f3ea}.badge.inactive,.badge.cancelled{color:#8f332d;background:#f9e4e1}.badge.nontaxable{color:#81541b;background:#f8edd9}.login-page{min-height:100vh;margin:0;padding:0;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#74523b 0,#2a1d18 35%,#16100e 100%)}.login-page main{margin:0;padding:30px;width:min(100%,1040px);max-width:none}.login-page main:before{content:"";position:fixed;inset:0;opacity:.25;background:repeating-linear-gradient(135deg,transparent 0 32px,#d7a45f18 33px 34px);pointer-events:none}.login{position:relative;width:min(100%,430px);margin:8vh auto;background:#fffdf9eF;padding:34px;border-color:#e2c89e}.login-brand{text-align:center;margin-bottom:25px}.login-brand h1{margin:0;color:var(--primary);font:700 28px Georgia,serif;letter-spacing:2px}.login-brand p{color:var(--muted);margin:8px 0 0}.login .primary{width:100%;margin-top:5px}.receipt{width:58mm;background:#fff;margin:auto;padding:4mm;font:12px monospace;color:#000}.receipt h2,.receipt p{text-align:center}.receipt-line{display:flex;justify-content:space-between;margin:7px 0}.total{font-size:15px}.empty{text-align:center;max-width:600px;margin:10vh auto}@media(max-width:1000px){main{padding:26px}.grid{grid-template-columns:repeat(3,1fr)}.pos{grid-template-columns:1fr}}@media(max-width:760px){aside{position:static;width:auto;display:flex;flex-wrap:wrap;gap:2px;padding:14px}aside h1{width:100%;margin-bottom:8px}aside a,aside button{width:auto;padding:8px 9px}.nav-label{display:none}aside form{margin:0;padding:0;border:0}main{margin:0;padding:20px}.grid{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start;flex-direction:column}.search,.report-filter{flex-wrap:wrap}.search input{max-width:none}.cart .line{grid-template-columns:1fr 1fr 62px}.cart .unit-price,.cart .line-total{font-size:12px;text-align:left}.cart .remove{grid-column:3}.card{overflow-x:auto}}@media print{aside,.no-print,.report-filter,button,.button{display:none!important}body{background:#fff;font-size:11px}main{margin:0;padding:0;max-width:none}.card{box-shadow:none;border-color:#bbb;break-inside:avoid}.grid{grid-template-columns:repeat(4,1fr);gap:6px}.metric{padding:8px}.metric strong{font-size:14px}.receipt{border:0;box-shadow:none;width:58mm}}
