@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#292a24;--accent:#bd492a;--paper:#f7f5ef;--line:#e2ded4;--muted:#77796e;--green:#366049}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted)}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1,h2,h3,p{margin-top:0}h1{font-size:34px}h2{font-size:25px}h3{font-size:15px}label{display:grid;gap:8px;margin-bottom:18px;font-size:12px;font-weight:600}input,select,textarea{padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);width:100%}input[type=checkbox]{width:auto}textarea{min-height:85px}button{border:0;border-radius:7px;padding:11px 16px;font-weight:600}.primary{background:var(--accent);color:white}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.danger{background:#fde8e3;color:#a7331d}.subtle,.muted{color:var(--muted);font-size:12px}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-brand{background:#eee9dd;padding:60px 12%;position:relative;overflow:hidden}.login-brand img{width:180px;margin-bottom:85px}.login-brand h1{font-size:clamp(42px,5vw,76px);line-height:1.1;margin:25px 0}.login-brand em{color:var(--accent)}.login-brand>p:not(.eyebrow){line-height:1.9;color:var(--muted)}.login-brand>span{font-size:200px;color:var(--accent);position:absolute;right:-25px;bottom:-75px}.login-panel{display:grid;place-items:center;padding:35px}.login-card{max-width:400px;width:100%}.login-card h2{font-size:35px;line-height:1.2;margin:20px 0}.login-card>p:not(.eyebrow){line-height:1.8;color:var(--muted)}.login-card form{margin:35px 0}.login-card .primary{width:100%}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:30px 22px;background:#eeeae0;border-right:1px solid var(--line);display:flex;flex-direction:column}.logo img{width:155px;margin-bottom:35px}.sidebar select{font-size:12px;margin:5px 0 25px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{text-align:left;background:none;color:#66685e;padding:13px}.sidebar nav button.active{background:var(--accent);color:white}.sidebar nav button span{display:inline-block;width:25px}.sidebar-bottom{margin-top:auto;padding-top:30px;display:grid;gap:12px}.sidebar-bottom span{font-size:12px;line-height:1.7}.link-button{padding:0;color:var(--accent);text-align:left;background:none;font-size:12px}.main{padding:38px 4%;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.topbar h1{margin:7px 0}.topbar-right{display:flex;gap:20px;align-items:center}.live{font-size:11px;color:var(--green);white-space:nowrap}.billing-alert{padding:17px 20px;border:1px solid #e3bb6b;background:#fff1cf;color:#6b4b0e;border-radius:9px;margin-bottom:25px;line-height:1.7;font-weight:600}.billing-alert.suspended{background:#fde7e0;border-color:#df9e8a;color:#963e24}#feedback{padding:14px;border:1px solid #b6cbb9;background:#e6f0e6;border-radius:8px;margin-bottom:20px}#feedback.error{background:#fde7e0;border-color:#df9e8a}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:28px}.stat,.panel{background:#fff;border:1px solid var(--line);border-radius:12px}.stat{padding:22px}.stat .eyebrow{font-size:9px;letter-spacing:1px}.stat strong{display:block;font-size:28px;font-weight:500;margin:12px 0 4px}.stat small{color:var(--muted);font-size:11px}.panel{padding:25px;margin-bottom:25px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.panel-header h2{margin-bottom:0}.two-columns{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;font-size:10px;letter-spacing:.6px;color:var(--muted);font-weight:500;border-bottom:1px solid var(--line);padding:12px 10px}td{border-bottom:1px solid #eeeae2;padding:15px 10px;vertical-align:middle}td button{font-size:11px;padding:8px 11px}td small{display:block;color:var(--muted);margin-top:5px}.badge{display:inline-block;border-radius:30px;padding:5px 9px;font-size:10px;font-weight:600;background:#f0eee7;color:#6e705f}.badge.active,.badge.ready,.badge.completed{background:#e5efe6;color:#356046}.badge.pending_validation,.badge.grace{background:#fff0cf;color:#976a19}.badge.suspended,.badge.rejected,.badge.cancelled{background:#fbe3dc;color:#a1442a}.badge.sent_to_kitchen,.badge.preparing{background:#e6edf5;color:#47617b}.empty{text-align:center;padding:45px 20px;color:var(--muted);line-height:1.8}.empty .symbol{font-size:38px;color:var(--accent);display:block;margin-bottom:15px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.toolbar input{max-width:300px}.toolbar select{max-width:200px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:17px}.table-card,.order-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:23px}.table-card h3{font-size:23px;font-family:Georgia,serif}.table-card .actions{margin-top:22px}.order-card.pending_validation{border-top:4px solid #d9a547}.order-card.sent_to_kitchen{border-top:4px solid var(--accent)}.order-card.preparing{border-top:4px solid #6387aa}.order-card.ready{border-top:4px solid #6e9b75}.order-card header{display:flex;justify-content:space-between;gap:10px}.order-card header h3{font-size:21px}.order-card ul{padding-left:0;list-style:none;margin:20px 0}.order-card li{padding:9px 0;border-bottom:1px solid var(--line);line-height:1.5}.order-card li small{display:block;color:var(--muted)}.order-card .total{font-size:18px;font-weight:600;margin:18px 0}.order-card .note{padding:10px;background:#f5f1e7;border-radius:6px}.section-note{line-height:1.8;color:var(--muted);font-size:12px}.error{color:#a7331d;font-size:12px;line-height:1.7}footer{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted);margin-top:45px;padding-top:20px;border-top:1px solid var(--line)}dialog{border:1px solid var(--line);border-radius:14px;padding:26px;width:min(570px,94vw);max-height:92vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#25251fe0;backdrop-filter:blur(4px)}dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}dialog header h2{margin:0}dialog header button{background:none;font-size:25px;padding:0 5px}dialog label{margin-bottom:15px}dialog .primary{margin-top:8px}#qr-canvas{text-align:center}#qr-canvas canvas{max-width:100%;height:auto;background:#fff}#qr-url{font-size:10px;overflow-wrap:anywhere;margin-top:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#qr-print{display:none}.price{font-weight:600;white-space:nowrap}.check-label{display:flex;align-items:center;gap:8px;font-size:12px;margin:0}.notice{border-left:3px solid var(--accent);padding-left:18px;line-height:1.8}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid .panel{margin-bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.two-columns{grid-template-columns:1fr}.topbar-right .live{display:none}}@media(max-width:750px){.workspace{display:block}.sidebar{position:static;height:auto;padding:17px 5%}.sidebar .logo img{width:130px;margin-bottom:15px}.sidebar .eyebrow{display:none}.sidebar select{margin:0 0 13px}.sidebar nav{display:flex;overflow:auto;gap:5px}.sidebar nav button{white-space:nowrap;padding:10px;font-size:11px}.sidebar-bottom{padding-top:13px;display:flex;justify-content:space-between;gap:10px}.sidebar-bottom span{font-size:10px}.main{padding:25px 5%}.topbar h1{font-size:27px}.topbar{align-items:flex-start}.topbar-right button{font-size:10px;padding:10px}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:24px}.panel{padding:18px}.settings-grid{grid-template-columns:1fr}.login-layout{grid-template-columns:1fr}.login-brand{padding:30px 8%}.login-brand img{margin-bottom:25px;width:140px}.login-brand h1{font-size:35px;margin:15px 0}.login-brand h1 br{display:none}.login-brand>p:not(.eyebrow),.login-brand>span{display:none}.login-brand .eyebrow{font-size:8px}.login-panel{padding:30px 8%}.login-card h2{font-size:28px}.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}footer{flex-direction:column}.panel-header{align-items:flex-start}.panel-header h2{font-size:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{body>*{display:none!important}#qr-print{display:grid!important;grid-template-columns:1fr 1fr;gap:30px;padding:20px}#qr-print article{text-align:center;break-inside:avoid;border:1px solid #ccc;padding:20px}#qr-print canvas{width:200px;height:200px}#qr-print h2{margin-bottom:10px}#qr-print p{font-size:9px;overflow-wrap:anywhere}}

.panel,.stat,.two-columns>*{min-width:0}.order-card header{align-items:flex-start}.badge{white-space:nowrap}.stat strong{overflow-wrap:anywhere}@media(max-width:1100px){.two-columns{grid-template-columns:minmax(0,1fr)}}@media(max-width:750px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-header{flex-wrap:wrap}.sidebar nav{min-width:0;max-width:100%}}

.setup-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.setup-step{border:1px solid var(--line);border-radius:9px;padding:17px;display:flex;flex-direction:column;align-items:flex-start;gap:13px}.setup-step strong{font-size:13px;line-height:1.5}.setup-step button{margin-top:auto;font-size:11px}@media(max-width:750px){.setup-steps{grid-template-columns:minmax(0,1fr)}}

.live.offline{color:#a1442a}

.phone-line{display:grid;grid-template-columns:minmax(0,1fr) 85px 36px;gap:10px;align-items:center;margin-bottom:10px}.phone-line label{min-width:0;margin:0}.phone-line button{padding:8px}.phone-section{margin:20px 0}.phone-total{padding:15px 0;font-weight:600;line-height:1.7}.phone-contact{font-size:12px;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.order-card h3{overflow-wrap:anywhere}@media(max-width:500px){.phone-line{grid-template-columns:minmax(0,1fr) 65px 30px;gap:6px}.phone-line select{font-size:11px;padding:10px 5px}}

/* Keep account controls reachable on shorter desktop screens. */
@media(min-width:751px){.sidebar{overflow-y:auto}}
