:root{--ink:#171510;--gold:#cda85f;--cream:#f1ece3;--line:#d9d0c1;--muted:#726c63}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,sans-serif}.pos-sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#0d0c0b;color:#fff;padding:32px 24px}.pos-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.pos-brand b{font:42px 'Playfair Display',serif;color:#e3c47e}.pos-brand span{font-size:8px;line-height:1.5;letter-spacing:2px}.pos-sidebar nav{display:grid;gap:8px;margin-top:70px}.pos-sidebar nav a{padding:14px;color:#a9a39a;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:1px}.pos-sidebar nav a.active,.pos-sidebar nav a:hover{background:#28231b;color:#e3c47e}.pos-main{margin-left:245px;padding:42px 4vw 70px}.pos-header,.panel-heading,.builder-actions{display:flex;align-items:center;justify-content:space-between}.pos-header p{margin:0;color:#a97d31;font-size:9px;letter-spacing:2px}.pos-header h1{font:700 52px 'Playfair Display',serif;margin:5px 0 30px}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}.panel{background:#fff;border:1px solid var(--line);padding:25px;margin-bottom:18px}.panel h2{font:700 25px 'Playfair Display',serif;margin:0 0 20px}.field-grid,.discount-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.discount-controls{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:8px;color:#876422;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px}input,select{width:100%;height:46px;padding:0 13px;border:1px solid #d6cdbf;background:#fff;color:#171510;font:12px Manrope,sans-serif;outline:none}input:focus,select:focus{border-color:#a98039;box-shadow:0 0 0 2px rgba(201,164,93,.12)}.service-controls{display:grid;grid-template-columns:180px 1fr auto;gap:14px;align-items:end}.search-box{position:relative}.search-results{position:absolute;z-index:20;top:calc(100% + 5px);left:0;right:0;max-height:360px;overflow:auto;background:#fff;border:1px solid #cfc4b2;box-shadow:0 18px 45px rgba(35,25,12,.17)}.search-results button{width:100%;display:flex;justify-content:space-between;gap:20px;padding:13px;text-align:left;border:0;border-bottom:1px solid #eee8df;background:#fff;cursor:pointer}.search-results button:hover{background:#f7f0e4}.search-results span{display:grid;gap:4px}.search-results small{color:#867d70}.search-results strong{color:#98702b;white-space:nowrap}.search-results>p{padding:15px;color:#777}.gold,.secondary{height:46px;padding:0 21px;border:1px solid var(--gold);background:var(--gold);color:#15130e;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;cursor:pointer}.secondary{background:transparent}.bill-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px 110px 110px 30px;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid #ece6dc}.bill-row>div:first-child{display:grid;gap:4px}.bill-row small{color:#81796f;font-size:9px}.bill-row label{font-size:8px}.bill-row label input{height:36px}.qty{display:flex;align-items:center;justify-content:center;border:1px solid #ded5c8}.qty button,.remove,.link-button{border:0;background:none;cursor:pointer}.qty button{width:34px;height:34px}.qty span{min-width:26px;text-align:center;font-size:11px}.remove{font-size:22px;color:#9d342a}.empty-state{padding:28px;text-align:center;color:#8a8379;font-size:11px}.panel-heading h2{margin-bottom:0}.panel-heading>span{font-size:10px;color:#7a7369}.builder-actions{justify-content:flex-end;gap:12px}.qr-warning{padding:12px;background:#fff2d6;border:1px solid #e0bd75;color:#76561d;font-size:11px}.preview-label{text-align:center;color:#857b6d;font-size:8px;letter-spacing:1.4px}.receipt{width:80mm;max-width:100%;margin:auto;background:#fff;color:#000;padding:7mm 5mm;box-shadow:0 15px 55px rgba(38,27,14,.15);font:11px Arial,sans-serif}.receipt-header{text-align:center}.receipt-logo{display:flex;justify-content:center;align-items:baseline;gap:5px}.receipt-logo b{font:700 38px Georgia,serif}.receipt-logo span{font-size:24px;letter-spacing:3px}.receipt-header>strong{letter-spacing:4px;font-size:10px}.receipt-header p{font-size:9px;line-height:1.5}.receipt-rule{border-top:1px dashed #000;margin:10px 0}.receipt-meta p,.receipt-totals p,.receipt-line{display:flex;justify-content:space-between;gap:12px;margin:5px 0}.receipt-meta span,.receipt-totals span{color:#333}.receipt-meta b{text-align:right}.receipt-line span{max-width:70%;font-weight:700}.receipt-line small{display:block;margin-top:3px;font-weight:400}.receipt-line b{white-space:nowrap}.receipt-empty{text-align:center;padding:10px}.grand-total{font-size:16px;border-top:2px solid #000;padding-top:8px!important;margin-top:8px!important}.receipt-qr{text-align:center;margin:14px 0}.receipt-qr img{width:42mm;height:42mm;object-fit:contain;image-rendering:auto}.receipt-qr p{margin:3px 0 1px;font-weight:700;text-transform:uppercase}.receipt-qr.missing img,.receipt-qr.missing p,.receipt-qr.missing small{display:none}.receipt-footer{text-align:center;border-top:1px dashed #000;padding-top:10px}.receipt-footer strong{font-size:10px}.receipt-footer p{font-size:9px;line-height:1.4}.receipt-footer small{font-size:8px}.history{margin-top:28px}.link-button{color:#8a2f24}.history-list article{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid #ece6dc}.history-list article div{display:grid;gap:4px}.history-list span{font-size:9px;color:#777}.toast{position:fixed;right:25px;bottom:25px;padding:14px 20px;background:#16130f;color:#fff;transform:translateY(80px);opacity:0;transition:.25s;font-size:11px}.toast.show{transform:none;opacity:1}
@media(max-width:1100px){.pos-layout{grid-template-columns:1fr}.receipt-column{order:2}.receipt{margin-left:0}.bill-row{grid-template-columns:minmax(150px,1fr) 90px 100px 90px 25px}}
@media(max-width:720px){.pos-sidebar{position:static;width:auto;padding:18px}.pos-sidebar nav{margin-top:15px;display:flex;overflow:auto}.pos-main{margin:0;padding:25px 15px}.pos-header h1{font-size:39px}.service-controls,.field-grid,.discount-controls{grid-template-columns:1fr}.bill-row{grid-template-columns:1fr 90px 90px 25px}.bill-row>strong{grid-column:3}.bill-row label{grid-column:2}.receipt{width:100%}}
@media print{@page{size:80mm auto;margin:0}body{background:#fff}.pos-sidebar,.pos-main>.pos-header,.bill-builder,.preview-label,.history,.toast{display:none!important}.pos-main{margin:0;padding:0}.pos-layout{display:block}.receipt-column{display:block}.receipt{width:80mm;max-width:80mm;margin:0;padding:5mm 4mm;box-shadow:none}.receipt-qr img{width:38mm;height:38mm}}

/* Persistent receipt QR uploader */
.qr-setup{display:flex;align-items:center;gap:15px;margin:18px 0;padding:14px 16px;background:#fff;border:1px solid var(--line)}.qr-setup>div{display:grid;gap:4px;margin-right:auto}.qr-setup b{font-size:11px}.qr-setup span{color:#777;font-size:9px}.qr-upload{display:block;padding:12px 16px;background:#171510;color:#fff;cursor:pointer}.qr-upload input{display:none}@media(max-width:720px){.qr-setup{align-items:flex-start;flex-wrap:wrap}.qr-setup>div{width:100%}}

.receipt-logo-image{display:block;width:52mm;max-height:29mm;margin:0 auto 4px;object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact}.pos-brand{width:150px;height:84px;background:url('assets/nn-look-logo-transparent.png') center/contain no-repeat}.pos-brand>*{display:none}[hidden]{display:none!important}

/* One consistent admin sidebar; receipt alone retains the black logo plate. */
.pos-sidebar{width:250px;padding:28px 24px;display:flex;flex-direction:column}.pos-main{margin-left:250px}.pos-brand{width:185px;height:110px;margin:0 auto 10px}.sidebar-label{margin:8px 14px 12px;color:#d5b66f;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:2px}.pos-sidebar nav{margin-top:0;gap:7px}.pos-sidebar nav a{display:block;padding:14px;background:transparent;color:#9e9990;font-size:11px;font-weight:500}.pos-sidebar nav a.active{background:#231f18;color:#e1c27d}.pos-sidebar nav a:hover{background:#191713;color:#e1c27d}.pos-sidebar nav .view-site{margin-top:18px;border-top:1px solid #29251e;padding-top:20px}.receipt-logo-image{width:54mm;max-height:none;padding:0;background:transparent;border-radius:0;filter:brightness(0)}
@media(max-width:720px){.pos-sidebar{width:auto}.pos-main{margin-left:0}.pos-brand{width:135px;height:80px;margin:0}.sidebar-label{display:none}.pos-sidebar nav{margin-top:12px}}

.audit-panel textarea{width:100%;min-height:95px;padding:13px;border:1px solid #d6cdbf;background:#fff;color:#171510;font:12px/1.55 Manrope,sans-serif;resize:vertical;outline:none}.audit-panel textarea:focus{border-color:#a98039;box-shadow:0 0 0 2px rgba(201,164,93,.12)}.audit-panel label>small{color:#81796f;font-size:9px;font-weight:400;letter-spacing:0;text-transform:none}.receipt-audit{margin:11px 0;padding:8px 0;border-top:1px dashed #000;border-bottom:1px dashed #000}.receipt-audit>b{font-size:9px;letter-spacing:.7px}.receipt-audit p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:9px;line-height:1.45}.history-list article div>small{max-width:700px;color:#5f584e;font-size:9px;line-height:1.45}
.history-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:18px 0 6px}.history-filters label{display:grid;gap:6px;font-size:9px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.history-filters input,.history-filters select{height:40px;padding:0 10px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:12px;letter-spacing:0;text-transform:none}.history-search{flex:1;min-width:200px}.history-filters .link-button{height:40px;font-size:11px;text-decoration:underline}
.history-summary{display:flex;flex-wrap:wrap;gap:22px;padding:12px 0;border-bottom:1px solid #ece6dc;font-size:11px;color:var(--muted)}.history-summary:empty{display:none}.history-summary b{color:var(--ink)}
.history-list article{align-items:flex-start;gap:20px}.history-actions{justify-items:end;text-align:right}.history-actions .link-button{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;text-decoration:underline;white-space:nowrap}
.visit-badge{display:inline-block;margin-left:6px;padding:3px 7px;font-family:Manrope,sans-serif;font-size:8px;font-style:normal;font-weight:700;letter-spacing:1px;text-transform:uppercase;vertical-align:middle}.visit-badge.returning{background:#171510;color:#cda85f}.visit-badge.new{background:#e0ecdf;color:#37613c}
.customer-status{display:grid;gap:4px;margin-top:14px;padding:12px 14px;border-left:3px solid #37613c;background:#eef5ed;font-size:11px}.customer-status.returning{border-left-color:var(--gold);background:#f8f1e2}.customer-status b{font-size:12px;color:var(--ink)}.customer-status span{color:var(--muted);line-height:1.5}
.customers{margin-top:28px}.customer-list article{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:13px 0;border-bottom:1px solid #ece6dc}.customer-list article div{display:grid;gap:4px}.customer-list span,.customer-list small{font-size:9px;color:#777}
@media print{.customers{display:none!important}}
[data-pos-pane][hidden]{display:none!important}
.pos-tabs{display:flex;gap:4px;margin:22px 0 24px;border-bottom:1px solid var(--line);overflow-x:auto}.pos-tabs button{display:inline-flex;align-items:center;gap:8px;padding:14px 20px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--muted);font:inherit;font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;white-space:nowrap;cursor:pointer}.pos-tabs button:hover{color:var(--ink)}.pos-tabs button.active{color:var(--ink);border-bottom-color:var(--gold)}.pos-tabs span:empty{display:none}.pos-tabs span{padding:2px 7px;background:#ece5d8;color:#77591f;font-size:9px;letter-spacing:.5px}.pos-tabs button.active span{background:var(--ink);color:var(--gold)}
.history[data-pos-pane],.customers[data-pos-pane]{margin-top:0}
@media print{.pos-tabs{display:none!important}}
.receipt-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:22px}.receipt-actions .secondary{color:var(--ink)}
@media print{.receipt-actions{display:none!important}}
.pos-sidebar nav button{display:block;padding:14px;border:0;background:transparent;color:#9e9990;font:inherit;font-size:11px;font-weight:500;text-align:left;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.pos-sidebar nav button:hover{background:#28231b;color:#e3c47e}
