:root{
    --cream:#f5f1eb;
    --card:#ffffff;
    --ink:#111827;
    --muted:#6b7280;
    --coffee:#4b1f0e;
    --gold:#b2783c;
    --soft-gold:#fff3d6;
    --border:#eadfce;
    --success:#166534;
    --danger:#b91c1c;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;width:100%;overflow-x:hidden;}
body{
    font-family:Arial, Helvetica, sans-serif;
    background:radial-gradient(circle at top, #fff 0, var(--cream) 45%, #efe8de 100%);
    color:var(--ink);
    min-height:100vh;
    padding:22px;
    line-height:1.5;
}

.search-container,.result-container,.admin-container{
    width:100%;
    max-width:1100px;
    margin:24px auto;
    background:rgba(255,255,255,.96);
    border-radius:24px;
    padding:34px;
    box-shadow:0 18px 45px rgba(75,31,14,.10);
    border:1px solid rgba(178,120,60,.14);
}
.login-card{max-width:560px;text-align:center;}
.public-card{max-width:920px;}

.logo-main,img.logo-main{
    display:block!important;
    width:100%!important;
    max-width:430px!important;
    height:auto!important;
    object-fit:contain!important;
    margin:0 auto 26px!important;
    border-radius:0!important;
}
.topbar-left .logo-main{max-width:260px!important;margin:0!important;}
.login-card .logo-main{max-width:350px!important;}

h1,h2,h3{margin:0 0 14px;color:#071327;letter-spacing:-.02em;}
p{margin:0 0 18px;}.lead{font-size:18px;color:var(--muted);}.muted{color:var(--muted);font-size:14px;}
label{font-weight:bold;display:block;margin:2px 0 7px;}

input,textarea,select{
    width:100%;padding:14px 16px;margin:0 0 16px;border:1px solid #d7d7d7;border-radius:14px;font-size:16px;background:#fafafa;
}
input:focus,textarea:focus,select:focus{outline:2px solid rgba(178,120,60,.25);border-color:var(--gold);}
textarea{min-height:115px;resize:vertical;}
.copy-link{font-size:13px;background:#fff;margin:8px 0 0;padding:10px 12px;}

.btn-submit,.btn-shop,.logout-btn,.btn-delete,.btn-light{
    display:block;width:100%;text-align:center;border:none;border-radius:14px;padding:14px 18px;margin:10px 0;color:#fff;background:#111827;font-weight:bold;font-size:16px;text-decoration:none;cursor:pointer;
}
.btn-submit:hover,.btn-shop:hover{filter:brightness(1.08);}
.btn-shop{background:linear-gradient(135deg,var(--coffee),var(--gold));}
.btn-light{background:#fff;color:var(--coffee);border:1px solid var(--border);}
.logout-btn{width:auto;min-width:160px;}
.btn-delete{background:var(--danger);}.compact-delete{padding:9px 12px;font-size:13px;border-radius:10px;margin-top:8px;}

.grid-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.card,.record-card,.notice-box,.alert,.help-card{
    border-radius:18px;padding:18px;margin-bottom:20px;
}
.card,.record-card,.help-card{background:#fffaf4;border:1px solid var(--border);}
.notice-box{background:var(--soft-gold);border:1px solid #f1cd7b;}
.alert.success{background:#eef8e7;border:1px solid #cfe8bf;}.alert.error{background:#fdecec;border:1px solid #f5b5b5;}

.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:24px;}
.topbar-left{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.small-link{display:inline-block;margin:4px 12px 4px 0;font-weight:bold;color:#7c3f16;text-decoration:none;}
.small-link:hover{text-decoration:underline;}

.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0;}
.lookup-form{margin:22px 0;}

.records-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;}
.admin-search{display:grid;grid-template-columns:minmax(220px,1fr) 180px 110px auto;gap:10px;align-items:start;max-width:720px;}
.admin-search input,.admin-search select,.admin-search button,.admin-search .btn-light{margin:0;}

.shipment-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;}
.shipment-card{
    background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px;cursor:pointer;transition:.15s ease;box-shadow:0 6px 18px rgba(75,31,14,.05);
}
.shipment-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(75,31,14,.12);border-color:#d6b386;}
.shipment-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px;}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-size:11px;font-weight:bold;display:block;}
.compact-meta{display:grid;gap:4px;color:#374151;font-size:14px;}
.compact-note{background:#fffaf4;border-left:3px solid var(--gold);padding:9px 10px;margin:10px 0;border-radius:8px;font-size:13px;}
.card-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;}

.status-pill{display:inline-block;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:bold;background:#eef2ff;color:#3730a3;white-space:nowrap;}
.status-order-processing{background:#fff7ed;color:#9a3412;}.status-dispatched{background:#eff6ff;color:#1d4ed8;}.status-in-transit{background:#eef2ff;color:#4338ca;}.status-out-for-delivery{background:#f5f3ff;color:#6d28d9;}.status-ready-for-pickup{background:#f0fdf4;color:#15803d;}.status-delivered{background:#dcfce7;color:#166534;}.status-delayed{background:#fee2e2;color:#991b1b;}

.hero-result{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fffaf4;border:1px solid var(--border);border-radius:20px;padding:20px;margin:18px 0;}
.qr-code{width:130px;height:130px;border-radius:12px;background:#fff;border:1px solid var(--border);padding:8px;}
.progress-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:18px 0;}
.step{border:1px solid var(--border);background:#fff;border-radius:14px;padding:12px;font-weight:bold;color:#6b7280;}
.step span{margin-right:7px;}.step.done{background:#f0fdf4;color:#166534;border-color:#bbf7d0;}.step.active{background:#fff7ed;color:#9a3412;border-color:#fed7aa;}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;background:#fff;}
.admin-user-card input{margin-top:10px;}

/* 3CX LIVE CHAT CLICKABILITY FIX */
call-us-selector,call-us,#wp-live-chat-by-3CX,#tcx-callus-js,[class*="call-us"],[class*="callus"]{z-index:2147483647!important;pointer-events:auto!important;opacity:1!important;visibility:visible!important;}
body::before,body::after{pointer-events:none!important;}

@media(max-width:800px){
    body{padding:12px;}.search-container,.result-container,.admin-container{padding:22px;border-radius:18px;}
    .grid-layout,.help-grid,.detail-grid{grid-template-columns:1fr;}
    .topbar,.topbar-left{flex-direction:column;align-items:flex-start;}.logout-btn{width:100%;}
    .admin-search{grid-template-columns:1fr;width:100%;}.records-header{display:block;}
    .logo-main,img.logo-main{max-width:310px!important;}.topbar-left .logo-main{max-width:260px!important;}
    .hero-result{flex-direction:column;align-items:flex-start;}.qr-code{width:150px;height:150px;}
}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.label-toolbar{max-width:760px;margin:18px auto;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px;}
.label-toolbar .btn-submit,.label-toolbar .btn-light{margin:0;}
.label-page{background:#f3f0eb;padding:20px;}
.print-label{width:148mm;min-height:210mm;margin:0 auto;background:#fff;color:#111;border:1px solid #ddd;box-shadow:0 10px 28px rgba(0,0,0,.12);padding:12mm;font-family:Arial,Helvetica,sans-serif;}
.label-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:3px solid #111;padding-bottom:8mm;margin-bottom:8mm;}
.courier-name{font-size:34px;font-weight:900;letter-spacing:-.04em;}
.label-service{font-size:18px;font-weight:800;text-transform:uppercase;margin-top:4px;}
.label-logo{width:52mm;height:auto;object-fit:contain;}
.royalmail-label .courier-name{color:#b91c1c;}.dpd-label .courier-name{color:#111827;}
.label-route{display:grid;grid-template-columns:1fr 42mm;gap:8mm;align-items:start;border-bottom:2px solid #111;padding-bottom:8mm;margin-bottom:7mm;}
.label-route h1{font-size:24px;line-height:1.1;margin:3mm 0;color:#111;}
.label-address{font-size:18px;line-height:1.35;font-weight:700;text-transform:uppercase;}
.label-postcode{border:3px solid #111;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:900;min-height:34mm;text-align:center;}
.label-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:4mm;margin-bottom:7mm;}
.label-info-grid div{border:1px solid #111;padding:4mm;font-size:13px;min-height:18mm;}
.label-codes{display:grid;grid-template-columns:1fr 34mm;gap:6mm;align-items:center;border-top:2px solid #111;border-bottom:2px solid #111;padding:6mm 0;margin-bottom:6mm;}
.barcode{width:100%;max-height:42mm;object-fit:contain;}
.tracking-text{font-size:16px;font-weight:900;letter-spacing:.08em;text-align:center;margin-top:3mm;}
.label-qr{width:34mm;height:34mm;border:1px solid #ccc;padding:2mm;}
.label-footer{font-size:12px;line-height:1.4;color:#333;}
@media print{
    @page{size:A5;margin:0;}
    body.label-page{background:#fff;padding:0;}
    .no-print, call-us-selector, call-us, #wp-live-chat-by-3CX{display:none!important;}
    .print-label{width:148mm;min-height:210mm;margin:0;box-shadow:none;border:none;page-break-after:always;}
}
@media(max-width:800px){.two-col,.label-toolbar{grid-template-columns:1fr;}.print-label{width:100%;min-height:auto;padding:20px;}.label-route,.label-codes{grid-template-columns:1fr;}.label-postcode{min-height:70px;}.label-logo{width:220px;max-width:100%;}}

/* Courier label v2: correct Royal Mail / DPD logo switching */
.label-toolbar{max-width:900px;grid-template-columns:repeat(6,1fr)}
.courier-head{align-items:center;gap:8mm}
.courier-logo{max-width:72mm;max-height:26mm;object-fit:contain;display:block}
.service-box{text-align:right;margin-left:auto}
.royalmail-label .label-head{border-bottom-color:#e30613}
.dpd-label .label-head{border-bottom-color:#dc2626}
.royalmail-label .label-postcode{border-color:#e30613}
.dpd-label .label-postcode{border-color:#111827}
.qr-wrap{text-align:center;font-size:10px;font-weight:700;color:#333}
.qr-wrap small{display:block;margin-top:2mm}
.label-a4{width:148mm;min-height:210mm}
.label-4x6{width:101.6mm;min-height:152.4mm;padding:7mm}
.label-4x6 .courier-logo{max-width:52mm;max-height:18mm}
.label-4x6 .courier-name{font-size:20px}
.label-4x6 .label-service{font-size:14px}
.label-4x6 .label-route{grid-template-columns:1fr;gap:4mm}
.label-4x6 .label-postcode{min-height:18mm;font-size:22px}
.label-4x6 .label-address{font-size:14px}
.label-4x6 .label-route h1{font-size:18px}
.label-4x6 .label-info-grid{font-size:11px;gap:2mm;margin-bottom:4mm}
.label-4x6 .label-info-grid div{padding:2mm;min-height:12mm}
.label-4x6 .label-codes{grid-template-columns:1fr 26mm;gap:3mm;padding:3mm 0;margin-bottom:3mm}
.label-4x6 .label-qr{width:24mm;height:24mm}
.label-4x6 .barcode{max-height:22mm}
@media print{
    @page{size:4in 6in;margin:0}
    .print-label.label-a4{width:148mm;min-height:210mm;padding:12mm}
    .print-label.label-4x6{width:101.6mm;min-height:152.4mm;padding:7mm}
}
@media(max-width:800px){.label-toolbar{grid-template-columns:1fr 1fr}.courier-logo{max-width:220px}.service-box{text-align:left}}
