
:root{
  --navy:#0b2f63; --blue:#1268d8; --yellow:#ffd400; --green:#18a84a;
  --bg:#eef2f6; --ink:#142033; --muted:#6c7788; --panel:#fff;
}
*{box-sizing:border-box} html,body{margin:0;height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}
button,a{font:inherit} button{touch-action:manipulation}
.topbar{height:118px;background:white;display:flex;align-items:center;padding:12px 26px;border-bottom:5px solid var(--yellow);gap:20px}
.topbar img{width:290px;height:92px;object-fit:contain}
.topbar h1{margin:0;font-size:38px;letter-spacing:2px}.topbar p{margin:4px 0;color:var(--muted)}
.topbar nav{margin-left:auto}.topbar a,.dashboard-actions a{background:var(--navy);color:white;text-decoration:none;padding:18px 22px;border-radius:12px;font-weight:800}
.pos-layout{height:calc(100vh - 118px);display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:16px;padding:16px}
.catalogue{min-width:0;display:flex;flex-direction:column}
.category-tabs{display:flex;gap:10px;margin-bottom:12px}
.category-tab{border:0;border-radius:12px;background:#dbe3ed;padding:15px 22px;font-size:20px;font-weight:800}
.category-tab.active{background:var(--navy);color:white}
.product-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px;overflow:auto;padding-bottom:10px}
.product{min-height:132px;border:0;border-radius:16px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 3px 9px #0002;font-weight:800}
.product:active{transform:scale(.97)}.product-name{font-size:21px;line-height:1.08}.product-price{font-size:24px}
.product.yellow{background:#ffe063}.product.orange{background:#ff9c4b}.product.blue{background:#7db5ff}.product.green{background:#8edb9d}.product.pink{background:#f3a7c6}
.cart-panel{background:#1f2a38;color:white;border-radius:18px;padding:20px;display:flex;flex-direction:column;min-height:0}
.cart-heading{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #ffffff38;padding-bottom:14px}
.eyebrow{font-size:13px;letter-spacing:2px;color:#b8c7da}.cart-heading h2{margin:5px 0 0;font-size:30px}
.ghost{border:1px solid #ffffff55;background:transparent;color:white;border-radius:9px;padding:10px 14px;font-weight:800}.danger{color:#ffb2b2}
.cart-lines{flex:1;overflow:auto;padding:10px 0}.empty-cart{text-align:center;color:#9fb0c4;margin-top:60px;font-size:22px}
.cart-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding:13px 0;border-bottom:1px solid #ffffff20}
.cart-line-name{font-size:19px;font-weight:700}.cart-line-price{font-size:19px}
.qty-controls{display:flex;align-items:center;gap:8px;margin-top:8px}.qty-controls button{width:38px;height:34px;border:0;border-radius:8px;font-size:22px;font-weight:900}.qty{min-width:25px;text-align:center}
.totals{border-top:1px solid #ffffff38;padding-top:14px}.totals>div{display:flex;justify-content:space-between;font-size:20px;margin:8px 0}
.totals .grand-total{font-size:34px}.payment-buttons{display:grid;grid-template-columns:1fr 1.35fr;gap:12px;margin-top:12px}
.pay{min-height:96px;border:0;border-radius:14px;color:white;font-size:29px;font-weight:900}.pay small{font-size:14px}.pay.cash{background:#168b43}.pay.card{background:#1976df}.pay.volunteer{grid-column:1 / -1;background:#7a4db3;min-height:72px;font-size:23px}
.pay:disabled{opacity:.4}.status{height:22px;text-align:center;margin-top:8px;color:#ffd76a}
.modal{position:fixed;inset:0;background:#0b1526df;display:grid;place-items:center;z-index:50}.hidden{display:none}
.modal-card{background:white;border-radius:24px;padding:45px;text-align:center;min-width:520px;box-shadow:0 20px 70px #0008}
.spinner{width:80px;height:80px;border:10px solid #dbe6f5;border-top-color:var(--blue);border-radius:50%;margin:0 auto 24px;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}.tick{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#1ab657;color:white;font-size:70px}
.success-card button{border:0;background:var(--navy);color:white;border-radius:12px;padding:18px 30px;font-size:22px;font-weight:800}
.dashboard-page{background:#0e1726;color:white;min-height:100%}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:28px 38px;border-bottom:1px solid #ffffff22}
.dashboard-header h1{margin:5px 0 0;font-size:34px}.live-dot{display:inline-block;width:12px;height:12px;border-radius:50%;background:#36e575;margin-right:7px;box-shadow:0 0 14px #36e575}
.dashboard-actions{display:flex;gap:12px}.dashboard-actions button{border:1px solid #ffffff44;background:transparent;color:white;border-radius:10px;padding:13px 16px}
.dashboard-main{padding:28px 38px}.metric-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.metric-grid article,.panel{background:#18263a;border:1px solid #ffffff12;border-radius:18px;padding:24px}.metric-grid span{color:#a9b7c9}.metric-grid strong{display:block;font-size:42px;margin-top:9px}
.dashboard-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}.panel-title{display:flex;justify-content:space-between;align-items:center}.panel-title h2{margin:0 0 18px}.panel-title span{color:#8fa0b6;font-size:14px}
.item-row{display:grid;grid-template-columns:1fr 90px 110px;gap:10px;padding:13px 0;border-bottom:1px solid #ffffff17}.item-row.header{color:#8fa0b6;font-size:13px;text-transform:uppercase}.item-row strong{text-align:right}
.recent-order{display:grid;grid-template-columns:90px 1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid #ffffff17}.method{padding:5px 8px;border-radius:7px;background:#274463;text-transform:uppercase;font-size:12px}
.customer-page{background:white;text-align:center;padding:60px}.customer-page img{width:450px;max-width:80%}.customer-page h1{font-size:48px}.customer-page p{font-size:24px}.special{margin:50px auto;padding:35px;border-radius:20px;background:var(--yellow);font-size:28px;max-width:800px}.special strong{font-size:42px}
@media(max-width:1400px){.product-grid{grid-template-columns:repeat(4,1fr)}.pos-layout{grid-template-columns:minmax(0,1fr) 410px}.topbar img{width:240px}.topbar h1{font-size:31px}}


.admin-page{background:#f1f4f8;min-height:100%;color:#172235}
.admin-header{background:white;border-bottom:5px solid var(--yellow);padding:28px 38px;display:flex;justify-content:space-between;align-items:center}
.admin-header h1{margin:4px 0;font-size:38px}.admin-header p{margin:0;color:#68758a}.eyebrow-dark{font-size:13px;letter-spacing:2px;color:var(--navy);font-weight:900}
.admin-nav{display:flex;gap:10px}.admin-nav a{background:var(--navy);color:white;text-decoration:none;border-radius:10px;padding:14px 18px;font-weight:800}
.admin-main{padding:26px 38px}.admin-card{background:white;border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 4px 16px #20324b12}
.admin-card h2{margin:0 0 16px}.product-form{display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr auto;gap:14px;align-items:end}
.product-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800;color:#536174}
.product-form input,.product-form select,.admin-table input,.admin-table select,#product-search{border:1px solid #cfd7e2;border-radius:9px;padding:12px;background:white;min-width:0}
.product-form button{border:0;border-radius:10px;background:var(--green);color:white;font-weight:900;padding:14px 22px}
.admin-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.admin-card-title h2{margin-bottom:4px}.admin-card-title p{margin:0;color:#6d798b}.admin-card-title input{width:280px}
.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;color:#68758a;font-size:12px;text-transform:uppercase;letter-spacing:.7px;padding:10px;border-bottom:2px solid #e2e7ee}
.admin-table td{padding:10px;border-bottom:1px solid #e6ebf1}.admin-table td:nth-child(2){min-width:260px}.admin-table td:nth-child(4){min-width:160px}
.admin-table input,.admin-table select{width:100%}.row-actions{white-space:nowrap}.row-actions button{border:0;border-radius:8px;padding:10px 12px;font-weight:900;margin-right:5px}.save-product{background:var(--blue);color:white}.delete-product{background:#f3d6d6;color:#9b1d1d}
.suspended-row{opacity:.52;background:#f7f7f7}.switch{position:relative;display:inline-block;width:50px;height:28px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;background:#b9c1cc;border-radius:20px;cursor:pointer}.slider:before{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;background:white;border-radius:50%;transition:.2s}.switch input:checked + .slider{background:var(--green)}.switch input:checked + .slider:before{transform:translateX(22px)}
.admin-message{margin-top:12px;font-weight:800}.admin-message.success{color:#16823d}.admin-message.error{color:#b02222}
@media(max-width:1200px){.product-form{grid-template-columns:1fr 1fr}.product-form button{min-height:48px}.admin-header{align-items:flex-start}.admin-main{padding:20px}}

@media(max-width:1500px){.metric-grid{grid-template-columns:repeat(3,1fr)}}
