/* Happy Fingers branded order desk and ticketing UI */
:root{--hf-navy:#071d49;--hf-navy-2:#102b5f;--hf-orange:#f28c18;--hf-orange-dark:#d94b20;--hf-cream:#fff8ee;--hf-line:#e8dcc9;--hf-ink:#282a30;--hf-green:#28734d}
.payment-help{margin-top:10px;padding:14px 16px;border:1px solid var(--hf-line);border-left:4px solid var(--hf-orange);border-radius:12px;background:#fffaf2;color:#4f4c47;font-size:.92rem;line-height:1.55}
.order-success{margin:28px 0;padding:30px;border:1px solid #d9e8dc;border-radius:22px;background:linear-gradient(145deg,#fffdf8,#f0f8f0);box-shadow:0 14px 40px rgba(7,29,73,.08)}
.order-success[hidden]{display:none}.success-top{display:flex;justify-content:space-between;align-items:center}.success-check{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e2f3e8;color:#17633a;font-size:1.5rem;font-weight:900}.order-success h2{color:var(--hf-navy);margin:10px 0}.order-success p{line-height:1.55}.ticket-number{margin:20px 0;padding:18px 16px;border:2px dashed var(--hf-orange);border-radius:14px;background:#fff;text-align:center;color:var(--hf-navy);font-size:clamp(1.35rem,3vw,2rem);font-weight:900;letter-spacing:.08em;overflow-wrap:anywhere}.success-grid{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.success-grid .btn{flex:1 1 190px;justify-content:center;text-align:center}.success-payment{padding:12px 14px;border-radius:10px;background:#fff3da}.success-whatsapp-note{font-size:.9rem;color:#615e58}.whatsapp-share,.whatsapp-direct{background:#167b48!important;border-color:#167b48!important;color:#fff!important}
.status-page{min-height:55vh;padding:70px 0;background:var(--hf-cream)}.status-card{max-width:760px;margin:0 auto;padding:34px;border:1px solid var(--hf-line);border-radius:24px;background:#fff;box-shadow:0 14px 44px rgba(7,29,73,.08)}.status-card h1{color:var(--hf-navy)}.status-token{font-size:clamp(1.3rem,4vw,2rem);font-weight:900;color:var(--hf-orange-dark);letter-spacing:.06em;overflow-wrap:anywhere}.status-progress{display:grid;gap:12px}.status-pill{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:8px 13px;border-radius:100px;background:#fff1d9;color:#79410a;font-weight:800;text-transform:capitalize}.status-accepted,.status-preparing,.status-ready{background:#e7f2ff;color:#123e78}.status-completed{background:#e4f4e9;color:#1a6840}.status-cancelled{background:#fde8e5;color:#932d20}.status-items{display:grid;gap:10px;padding:16px;border-radius:14px;background:#fffaf2}.status-items>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #eee3d4;padding-bottom:8px}.status-total{display:flex;justify-content:space-between;padding:14px 0;border-top:2px solid var(--hf-line);font-size:1.12rem}.status-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.status-actions .btn{flex:1 1 180px;justify-content:center}
/* Admin portal */
.admin-body{margin:0;background:#f7f2e9;color:var(--hf-ink);font-family:Arial,Helvetica,sans-serif}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:12px max(24px,calc((100% - 1200px)/2));background:var(--hf-navy);color:#fff;gap:20px}.admin-header img{display:block;width:180px;height:auto;max-height:62px;object-fit:contain;object-position:left center}.admin-header>div{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:.78rem;font-weight:800;letter-spacing:.12em}.admin-header a{color:#fff;text-decoration:none}.admin-header>div a{font-size:.84rem;letter-spacing:0;color:#ffc16a}.admin-wrap{max-width:1200px;margin:0 auto;padding:42px 22px 90px}.admin-login{max-width:480px;margin:8vh auto;padding:34px;background:#fff;border:1px solid var(--hf-line);border-radius:22px;box-shadow:0 15px 40px rgba(7,29,73,.08)}.eyebrow{font-size:.75rem;font-weight:900;letter-spacing:.16em;color:var(--hf-orange-dark)}.admin-login h1,.admin-heading h1{margin:8px 0 10px;color:var(--hf-navy);font-size:2rem}.admin-login p,.admin-heading p{line-height:1.55;color:#69645c}.admin-login form{display:grid;gap:16px;margin-top:24px}.admin-login label,.admin-controls label{display:grid;gap:7px;font-size:.9rem;font-weight:800}.admin-login input,.admin-controls select,.admin-filters select{width:100%;padding:12px;border:1px solid #d9d1c6;border-radius:10px;background:#fff;font:inherit}.admin-login .btn{justify-content:center;border:0;cursor:pointer}.admin-error{color:#a22b1e!important;min-height:1.2em}.admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.admin-toolbar{display:flex;gap:9px;flex-wrap:wrap}.admin-toolbar button{cursor:pointer}.admin-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;margin-bottom:20px;border-radius:14px;background:#fff;border:1px solid var(--hf-line)}.admin-filters label{font-weight:800}.admin-filters select{max-width:240px}.admin-filters span{margin-left:auto;color:#82796f;font-size:.85rem}.admin-orders{display:grid;gap:18px}.admin-order-card{padding:24px;border:1px solid var(--hf-line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(7,29,73,.05)}.admin-order-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid #eee7dc}.admin-order-top h2{margin:5px 0;color:var(--hf-navy);font-size:1.5rem;letter-spacing:.04em}.admin-order-top small{color:#857f76}.admin-customer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px 0}.admin-customer>div{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.admin-customer a{color:var(--hf-navy)}.admin-customer span,.admin-customer small{color:#6a665f;line-height:1.4}.admin-item-list{list-style:none;padding:12px 0;margin:0;border-top:1px solid #eee7dc;border-bottom:1px solid #eee7dc}.admin-item-list li{display:flex;justify-content:space-between;gap:15px;padding:6px 0}.admin-note{padding:10px 14px;background:#fff7e7;border-radius:10px;margin-top:12px}.admin-note p{margin:5px 0}.admin-total{display:flex;justify-content:space-between;padding:16px 0;font-size:1.1rem}.admin-total strong{color:var(--hf-navy)}.admin-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;padding:16px 0;border-top:1px solid #eee7dc}.admin-controls button{cursor:pointer;white-space:nowrap}.admin-order-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-order-actions .btn{font-size:.85rem;padding:10px 13px}.admin-card-message{min-height:1.2em;color:var(--hf-green);font-size:.88rem}.admin-empty{padding:38px;text-align:center;border:1px dashed #c9bdad;border-radius:18px;background:#fff;color:#6d675d}
@media(max-width:760px){.order-success{padding:22px}.status-page{padding:36px 0}.status-card{padding:24px 18px}.admin-header{padding:10px 16px}.admin-header img{width:145px}.admin-wrap{padding:26px 14px 60px}.admin-heading{align-items:flex-start;flex-direction:column}.admin-customer{grid-template-columns:1fr}.admin-controls{grid-template-columns:1fr}.admin-order-card{padding:17px}.admin-filters span{margin-left:0;width:100%}}
@media print{.admin-header,.admin-filters,.admin-toolbar,.admin-controls,.admin-order-actions{display:none!important}.admin-wrap{max-width:none;padding:0}.admin-order-card{box-shadow:none;break-inside:avoid}}


/* IVA estimate shown before checkout */
.iva-preview { display: grid; gap: 5px; padding: 10px 0; border-top: 1px solid rgba(7,29,73,.12); border-bottom: 1px solid rgba(7,29,73,.12); }
.iva-preview .iva-rate-heading { color: #071d49; font-size: .82rem; font-weight: 800; margin-top: 3px; }
.iva-preview .iva-line { display: flex; justify-content: space-between; gap: 12px; color: #5d6980; font-size: .84rem; }
.iva-preview .iva-line strong { color: #26364f; white-space: nowrap; }

.success-receipt-summary { margin: 18px 0; padding: 18px; border: 1px solid #e5eaf3; border-radius: 14px; background: #f8faff; }
.success-receipt-summary h3 { margin: 0 0 10px; color: #071d49; }
.success-receipt-summary > div { display: flex; justify-content: space-between; gap: 16px; padding: 5px 0; color: #5d6980; }
.success-receipt-summary > div strong { color: #26364f; white-space: nowrap; }
.success-receipt-summary .receipt-total { border-top: 1px solid #dbe2ef; margin-top: 8px; padding-top: 12px; color: #071d49; font-weight: 800; }
.success-receipt-summary .receipt-total strong { color: #071d49; font-size: 1.15rem; }

.admin-tax-summary{padding:14px 16px;margin:6px 0 18px;border:1px solid var(--hf-line);border-radius:12px;background:#fffaf2}.admin-tax-summary>strong{display:block;margin-bottom:8px;color:var(--hf-navy)}.admin-tax-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;color:#6a665f;font-size:.9rem}.admin-tax-row strong{color:#26364f}.admin-grand-total{margin:6px -16px -14px;padding:14px 16px;border-top:1px solid var(--hf-line);font-weight:900}

/* Always-visible receipt controls in offline/local WhatsApp checkout mode */
.success-grid .receipt-download{background:#fff!important;color:#071d49!important;border:2px solid #071d49!important;font-weight:900;box-shadow:0 5px 16px rgba(7,29,73,.09)}
.success-grid #printLocalReceipt{cursor:pointer;background:#eef3fb!important;color:#071d49!important;border:1px solid #ccd7e9!important}
.success-grid .receipt-download:focus-visible,.success-grid #printLocalReceipt:focus-visible{outline:3px solid #f28c18;outline-offset:3px}
