:root{--paper:#f8f4ec;--card:#fffdf8;--ink:#29221f;--muted:#776d65;--line:#e5ddcf;--wine:#76283b;--green:#32644b;--gold:#a77d36;font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--card);padding:.7rem 1rem;border-radius:10px;color:var(--ink);min-height:44px}button:hover{border-color:var(--wine)}button:disabled{cursor:wait;opacity:.55}button.primary,.button.primary{background:var(--wine);color:white;border-color:var(--wine)}button.danger{color:var(--wine)}a{color:var(--wine)}.button{display:inline-block;padding:.7rem 1rem;border-radius:10px;text-decoration:none}.muted,small{color:var(--muted)}small{font-size:.85rem}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:500}h1{font-size:2.2rem;line-height:1.15;margin-bottom:.4rem}h2{font-size:1.8rem;margin-bottom:1rem}h3{font-size:1rem}header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 2rem;background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap}.brand{font-family:Georgia,serif;font-size:1.65rem;letter-spacing:.08em;color:var(--wine)}.brand small{display:block;font:10px system-ui;letter-spacing:.22em}.header-actions,.actions,.filters{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.page{max-width:1440px;margin:auto;padding:2rem}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:var(--wine);margin-bottom:.5rem}.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.5rem}.workspace{display:grid;grid-template-columns:minmax(290px,370px) 1fr;gap:1.5rem}.queue{display:grid;gap:.65rem;max-height:70vh;overflow:auto;margin-top:1rem}.visit{text-align:left;display:block;width:100%;padding:1rem;background:var(--card)}.visit.selected{border-color:var(--wine);box-shadow:inset 3px 0 var(--wine)}.visit strong{display:block;font-size:1rem}.visit .row{display:flex;justify-content:space-between;gap:.5rem}.badge{display:inline-block;font-size:.75rem;padding:.2rem .55rem;border-radius:20px;background:#eee6d6;color:#6e562c}.badge.chair{background:#e4ebf3;color:#3d5979}.badge.paid{background:#e1eee3;color:var(--green)}.badge.cancelled{background:#f0e1e3;color:var(--wine)}.filters button[aria-pressed=true]{background:var(--wine);color:white}.filters button{font-size:.8rem;padding:.4rem .7rem}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.5rem}.line-item,.total-line{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.total-line{font-weight:650;font-size:1.3rem;border:0;margin-top:.5rem}.chips{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.chips button[aria-pressed=true]{background:#eee0e3;border-color:var(--wine)}.empty{padding:3rem 1rem;text-align:center;color:var(--muted)}.status{font-size:.82rem;color:var(--muted)}.status.error,.error{color:var(--wine)}.notice{background:#f3ead6;border:1px solid #dfcca4;padding:.8rem 1rem;border-radius:10px;margin:1rem 0}.error-box{background:#f5e5e7;border:1px solid #ddbec4;color:var(--wine);padding:.8rem 1rem;border-radius:10px;margin:.8rem 0}.success{color:var(--green)}.login-wrap{min-height:75vh;display:grid;place-items:center;padding:2rem}.login-card{width:100%;max-width:420px}.login-card h1{margin:1.5rem 0 .6rem}label{display:block;font-size:.85rem;margin-bottom:1rem;font-weight:550}input,select,textarea{display:block;width:100%;padding:.7rem .85rem;border:1px solid var(--line);border-radius:9px;margin-top:.35rem;background:white;color:var(--ink);min-height:44px}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--wine);outline-offset:3px}input[type=checkbox]{display:inline-block;width:auto;min-height:auto;margin:0 .5rem 0 0;accent-color:var(--wine)}input[type=radio]{display:inline-block;width:auto;min-height:auto;margin:0 .5rem 0 0;accent-color:var(--wine)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.full{grid-column:1/-1}.service-list{max-height:280px;overflow:auto;margin:.5rem 0 1rem;border:1px solid var(--line);border-radius:10px;padding:.75rem}.service-list label{display:flex;justify-content:space-between;gap:.7rem;padding:.5rem;margin:0;font-weight:400}.service-list label span{flex:1}.service-list details>summary{padding:.65rem .4rem;font-weight:650;cursor:pointer}.service-list .offer{color:var(--wine)}dialog{width:min(720px,94vw);max-height:92vh;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:1.8rem;color:var(--ink)}dialog::backdrop{background:#211a1cb3}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.dialog-heading button{font-size:1.2rem;padding:.3rem .7rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.4rem}.payment{display:grid;grid-template-columns:110px 1fr 44px;gap:.5rem;align-items:center;margin-bottom:.5rem}.payment input,.payment select{margin:0}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);max-width:min(600px,94vw);background:var(--ink);color:white;padding:.9rem 1.3rem;border-radius:12px;z-index:100;box-shadow:0 6px 24px #0002}.kiosk{max-width:850px}.kiosk-intro{margin:1rem 0 2rem}.kiosk-form{padding:2rem}.kiosk-form input,.kiosk-form select{font-size:1rem}.kiosk-form .primary{width:100%;font-size:1.1rem}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.4rem 0}.kpi small{display:block}.kpi strong{display:block;font-size:1.65rem;color:var(--wine);margin:.5rem 0}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}.dashboard-grid .wide{grid-column:1/-1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.87rem}th,td{text-align:left;padding:.65rem .5rem;border-bottom:1px solid var(--line)}th{font-weight:600;color:var(--muted)}.bar-row{display:grid;grid-template-columns:100px 1fr 100px;gap:.7rem;align-items:center;margin:.6rem 0;font-size:.85rem}.bar-track{height:12px;border-radius:20px;background:#eee5d9;overflow:hidden}.bar-fill{height:100%;background:var(--wine);border-radius:20px}.summary-number{font-size:1.5rem;color:var(--wine)}[hidden]{display:none!important}.spaced{margin-top:1.3rem}.wide-button{width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:850px){header{padding:1rem}.page{padding:1rem}.workspace{grid-template-columns:1fr}.queue{max-height:35vh}.kpis{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .wide{grid-column:auto}}@media(max-width:480px){.fields{grid-template-columns:1fr}.full{grid-column:auto}.page-heading{align-items:flex-start;flex-direction:column}.panel,.kiosk-form{padding:1.1rem}.header-actions{gap:.4rem}.header-actions a{font-size:.85rem}.bar-row{grid-template-columns:75px 1fr 85px}dialog{padding:1.2rem}}
