:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#172c3e;background:#f2f5f8;font-synthesis:none;--teal:#007e80;--line:#dce4eb}
*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;height:100dvh;display:flex;flex-direction:column}
[hidden]{display:none!important}
header{height:48px;flex:0 0 48px;padding:0 24px;background:#122b40;color:#fff;display:flex;align-items:center;gap:32px}
.brand{color:#fff;text-decoration:none;font-weight:900;font-size:23px;letter-spacing:1px}.brand span{font-size:10px;margin-left:14px;letter-spacing:2px;font-weight:600}.header-label{font-size:9px;letter-spacing:2px;color:#a6c0d4}#identity{margin-left:auto;font-size:12px}
main{max-width:1600px;margin:auto;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;padding:10px 20px}
.page-heading{display:flex;align-items:center;gap:18px;flex-shrink:0;margin-bottom:8px;min-height:36px}.eyebrow{font-size:8px;font-weight:800;letter-spacing:1.5px;color:var(--teal);margin:0 0 4px}h1{font-size:25px;letter-spacing:-.6px;margin:0}h2{font-size:16px;margin:0}.subtitle,.page-heading>.eyebrow{display:none}.page-heading>div:first-child>.eyebrow{display:none}.session-actions{display:flex;gap:7px;margin-left:auto}
.card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:16px;box-shadow:0 3px 10px #122b4004}
label{display:block;font-size:12px;font-weight:700;color:#52697c;margin:16px 0 10px}
input,select,textarea{display:block;width:100%;border:1px solid #cbd7e1;border-radius:7px;padding:11px;font:inherit;color:#172c3e;background:#fff;margin-top:7px;font-size:15px}
input:focus,select:focus,textarea:focus{outline:3px solid #b9e3df;border-color:var(--teal)}
button{border:0;border-radius:7px;padding:9px 13px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--teal);color:white}.secondary{background:#edf3f7;color:#25455e;border:1px solid #d6e0e9}
.hint{font-size:11px;color:#6b7f90;line-height:1.5;margin:6px 0 0}.badge{font-size:10px;letter-spacing:.6px;font-weight:800;background:#e1f3ef;color:#007767;border-radius:5px;padding:6px 8px;display:inline-block;white-space:nowrap}.card-heading{display:flex;align-items:center;gap:9px}.card-heading .badge{margin-left:auto}.number{font-size:11px;font-weight:800;color:#8095a5}
#message{flex-shrink:0;padding:8px 12px;border-radius:7px;background:#e7f1ff;border:1px solid #a6c6ec;color:#174f86;margin-bottom:8px;font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#message.error{background:#fff0ee;border-color:#efb8b1;color:#a12d24}
/* Station settings are available when needed and occupy only one small summary row. */
.page-heading{flex-wrap:wrap;row-gap:8px}
.station-settings{min-width:0;margin-left:auto;max-width:440px}
.station-settings[open]{order:3;flex:0 0 100%;max-width:none;margin-left:0}
.station-settings[open] summary{width:fit-content;margin-left:auto;max-width:100%}
.station-settings summary{cursor:pointer;border:1px solid #d6e0e9;background:#fff;border-radius:7px;padding:6px 11px;list-style:none;display:flex;gap:12px;align-items:center;color:#52697c;font-size:11px}
.station-settings summary::after{content:'\203A';font-size:17px;line-height:1}.station-settings[open] summary::after{transform:rotate(90deg)}.station-settings[open] summary{border-color:var(--teal)}.station-settings summary>span{font-weight:700;white-space:nowrap}.station-settings summary small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.station-drawer{position:static;width:100%;margin-top:8px;padding:10px;background:#fff;border:1px solid #cbdde5;border-radius:10px}.station-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.station-grid .card{padding:12px;min-width:0;background:#f8fafb}.station-grid h2{font-size:14px}.station-grid .badge{font-size:8px;padding:5px}.station-choice{display:flex;align-items:flex-end;gap:8px;margin-top:9px}.station-choice label{flex:1;min-width:0;font-size:10px;margin:0}.station-choice select{font-size:12px;margin-top:4px;padding:8px;height:34px}.station-choice button{flex-shrink:0;height:34px;font-size:11px;padding:8px 10px}.station-grid .hint{font-size:10px}
#console{flex:1;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px}.packing footer{display:none}
/* Tote ownership is the primary station state. */
.tote-card{display:flex;align-items:center;gap:18px;padding:10px 20px;background:#fff9e9;border:2px solid #e7ca7a;min-width:0}.tote-card.locked{background:#e8f5f0;border-color:#49aa8a}.tote-symbol{height:48px;width:48px;flex-shrink:0;color:#ab7911}.locked .tote-symbol{color:#007b61}.tote-symbol svg{height:100%;width:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}.tote-copy{min-width:0}.tote-copy h2{font-size:18px;font-weight:900;line-height:1.1;letter-spacing:1.5px;color:#745314;margin-bottom:4px}.locked .tote-copy h2{color:#14583e}#tote-name{display:block;font-size:34px;font-weight:850;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#tote-hint{font-size:10px;margin-top:3px}#exit{margin-left:auto;padding:9px 18px;flex-shrink:0;background:#fff;border-color:#94cbb7;color:#126a51}
.scan-card{margin:0;background:#122b40;color:white;border-radius:10px;padding:9px 16px}.scan-card label{color:#c4d9e7;font-size:12px;margin:0 0 5px}.scan-field{display:flex;align-items:center;gap:10px}.scan-field>span{font-size:24px;color:#9dc7d1}.scan-field input{margin:0;font-size:19px;padding:8px 12px;min-width:0}.scan-field button{align-self:stretch;min-width:75px}.scan-card .hint{color:#a6c0d4;font-size:10px;margin-top:4px}.busy{color:#70ded1;font-size:11px;margin:5px 0 0}
.order-panel{padding:12px;min-height:0;display:flex;flex-direction:column;overflow:hidden}.order-title{display:grid;grid-template-columns:auto auto minmax(110px,1fr) auto auto;align-items:center;gap:18px;flex-shrink:0;margin-bottom:10px;min-height:44px}.order-reference h2{font-size:23px;line-height:1.05}.pickwave-reference>strong{font-size:18px}.packaging-reference>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.1;color:#1b6486;font-size:20px}.order-navigation{display:flex;align-items:center;gap:12px}.product-pages{display:flex;align-items:center;gap:6px;font-size:10px;white-space:nowrap;color:#617487}.product-pages button{font-size:20px;line-height:20px;padding:3px 9px}
.document-statuses{display:flex;gap:12px}.print-status{display:flex;align-items:center;gap:5px;color:#78909e}.print-status svg{width:29px;height:29px;flex-shrink:0}.print-status .paper{stroke-width:1.7;stroke-linejoin:round}.print-status .ink{stroke-width:1.6;stroke-linejoin:round}.print-status>span{font-size:10px;font-weight:750;white-space:nowrap}.print-status small{display:block;font-size:7px;letter-spacing:.4px;margin-top:3px}.print-status.printed{color:#16834c}.print-status.error{color:#d02c35}
.packaging-reference{text-align:center;min-width:0}
/* Always show four products per page; fewer items can use the full row height. */
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;flex:1;min-height:0;overflow:hidden}.product-grid[data-count='1'],.product-grid[data-count='2']{grid-template-rows:minmax(0,1fr)}
.product-card{display:grid;grid-template-columns:clamp(120px,13vw,185px) minmax(0,1fr) auto;gap:12px;align-items:center;min-width:0;min-height:0;padding:10px;border:1px solid #dce4eb;border-radius:9px;background:#fff}.product-card.active{border-color:#168e8d;box-shadow:inset 3px 0 #168e8d}.product-card.complete{background:#eef9f3;border-color:#b6dcc8}.product-image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;max-height:210px;min-height:0;background:#fff;border:1px solid #e6edf2;border-radius:7px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain}.product-image span{font-size:11px;color:#8b9daa;text-align:center}.product-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.product-code{font-size:clamp(19px,1.9vw,28px);font-weight:850;line-height:1.05;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.product-name{font-size:14px;color:#435c6f;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-sku{font-size:11px;color:#6b7f90;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-barcode{font-size:10px;color:#91a2af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-count{text-align:right;white-space:nowrap}.product-count strong{font-size:30px;display:block;color:#172c3e}.product-count strong span{font-size:18px;font-weight:500;color:#708798}.product-count small{font-size:7px;font-weight:800;letter-spacing:.4px;color:#708798}.complete .product-count strong,.complete .product-count small{color:#008263}
.order-bottom{flex-shrink:0}.progress{height:5px;width:100%;border:0;appearance:none;background:#e4ebf1;border-radius:4px;overflow:hidden;margin:8px 0 6px}.progress::-webkit-progress-bar{background:#e4ebf1}.progress::-webkit-progress-value{background:#00a083}.progress::-moz-progress-bar{background:#00a083}.order-bottom>.hint{font-size:10px;margin-top:0}.ready-callout{padding:7px 12px;background:#e1f3ef;color:#007767;font-size:12px;font-weight:700;border-radius:7px}.order-error{font-size:12px;line-height:1.4;max-height:2.8em;overflow:hidden;margin:4px 0;color:#a12d24}#resume{font-size:11px;padding:6px 10px}.empty{display:flex;flex:1;min-height:0;flex-direction:column;align-items:center;justify-content:center;padding:10px;color:#6b7f90}.empty h2{color:#435d70;margin-top:12px}.empty p{font-size:13px;margin:8px 0 0}.empty-icon{font-size:36px;color:#9cb4c4}
/* This alert leaves the scanner focused: a valid tote scan dismisses it automatically. */
body.tote-error::after,body.order-error-frame::after{content:'';position:fixed;inset:0;border:11px solid #df2635;z-index:1000;pointer-events:none;box-shadow:inset 0 0 50px #df263535}.tote-alert{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:22px;pointer-events:none}.tote-alert-card{background:#fff5f5;border:3px solid #df2635;border-radius:18px;padding:28px 44px;max-width:680px;box-shadow:0 20px 80px #9c162d45;text-align:center;color:#a21624;pointer-events:auto}.warning-symbol{display:inline-grid;place-items:center;width:54px;height:54px;background:#df2635;border-radius:50%;color:white;font-weight:900;font-size:38px;margin-bottom:15px}.tote-alert h2{font-size:32px;letter-spacing:.8px}.tote-alert p{font-size:21px;font-weight:700;line-height:1.4;margin:14px 0}.tote-alert small{font-size:14px;display:block}.tote-alert button{display:block;margin:20px auto 0;background:white;color:#a21624;border-color:#efb7bd}
#supervisor{position:fixed;inset:75px 8% 25px;z-index:50;margin:0;overflow:auto;box-shadow:0 0 0 100vmax #122b4070,0 20px 60px #122b4040}.review-row{padding:16px 0;border-top:1px solid var(--line);margin-top:16px}.review-row p{font-size:13px;overflow-wrap:anywhere}.review-row textarea{min-height:65px}.review-actions{display:flex;gap:10px;align-items:center;margin-top:12px}.review-actions select{margin:0;max-width:320px}
.login-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;max-width:1040px;width:100%;flex:1;min-height:0;margin:0 auto}.intro{padding:20px}.intro h2{font-size:42px;letter-spacing:-1px;line-height:1.1;margin:20px 0}.intro p{max-width:360px;line-height:1.7;color:#617487}.intro ol{padding-left:20px;line-height:2.2;font-size:14px}.login-card{padding:28px}.login-card h2{font-size:24px;margin-bottom:22px}.login-card .primary{width:100%;margin-top:12px;padding:13px}.login-card .hint{font-size:12px}footer{flex-shrink:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#8ca0b0;padding-top:8px}
/* Keep packing prompts centred, with balanced space for the side controls. */
.tote-card{display:grid;grid-template-columns:100px minmax(0,1fr) 100px}
.tote-copy{text-align:center}
#exit{justify-self:end;margin-left:0}
.scan-card,.scan-field input,#message,.order-bottom,.empty{text-align:center}
.scan-field{display:grid;grid-template-columns:75px minmax(0,1fr) 75px}
.scan-field>span{justify-self:center}
@media(max-width:650px){.tote-card{grid-template-columns:72px minmax(0,1fr) 72px}.tote-copy #tote-name,.tote-copy #tote-hint{white-space:normal}.tote-card #exit{font-size:10px;padding:7px 8px}.scan-field{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:1200px){.order-title{gap:12px}.order-navigation{flex-direction:column;gap:4px}.document-statuses{gap:8px}.print-status svg{width:25px;height:25px}.product-card{gap:9px;grid-template-columns:clamp(110px,13vw,150px) minmax(0,1fr) auto}.product-name{font-size:13px}.product-count strong{font-size:27px}.product-count strong span{font-size:16px}}
@media(max-height:700px){header{height:42px;flex-basis:42px}main{padding:8px 16px}.page-heading{min-height:30px;margin-bottom:6px}h1{font-size:22px}.tote-card{padding:8px 16px}#tote-name{font-size:30px}.tote-symbol{height:42px;width:42px}.scan-card .hint{display:none}.scan-card{padding:8px 13px}.scan-field input{font-size:17px;padding:7px 10px}.order-panel{padding:10px}.order-title{margin-bottom:8px}.product-card{padding:8px;gap:8px}.product-code{font-size:20px}.product-name{font-size:12px}.product-copy{gap:4px}.login-card{padding:20px}.intro h2{font-size:34px}.login-card label{margin:12px 0 8px}}
@media(max-width:950px){.header-label{display:none}.brand span{font-size:8px}.station-settings summary small{max-width:150px}.order-title{grid-template-columns:auto auto minmax(100px,1fr) auto}.order-navigation{grid-column:1/-1;flex-direction:row;justify-content:space-between}.document-statuses{justify-self:end}.product-card{grid-template-columns:100px minmax(0,1fr);position:relative;align-items:start}.product-count{grid-column:2;text-align:left;display:flex;align-items:center;gap:8px}.product-count strong{font-size:22px}.product-image{grid-row:1/3}.product-code{font-size:20px}.packaging-reference>strong{font-size:17px}}
@media(max-width:650px){header{padding:0 16px}.brand span{display:none}#identity{font-size:10px}.page-heading{gap:8px}.station-settings summary small{display:none}.session-actions{gap:4px}.session-actions button{font-size:10px;padding:7px}.station-settings summary{padding:6px 8px}.station-grid{grid-template-columns:1fr}.station-drawer{max-height:240px;overflow:auto}.tote-card{gap:10px}.tote-symbol{width:36px;height:36px}#tote-name{font-size:25px}.tote-copy h2{font-size:15px}#tote-hint{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#exit{padding:7px 10px}.scan-field>span{display:none}.order-title{gap:8px}.order-reference h2{font-size:19px}.pickwave-reference>strong{font-size:15px}.document-statuses{gap:5px}.print-status>span{font-size:8px}.print-status svg{width:21px}.product-grid{gap:6px}.product-card{grid-template-columns:58px minmax(0,1fr);padding:6px;gap:5px}.product-code{font-size:15px}.product-name{font-size:10px}.product-sku,.product-barcode{font-size:8px}.product-count strong{font-size:18px}.product-count small{font-size:6px}.product-count strong span{font-size:12px}.tote-alert-card{padding:24px}.tote-alert h2{font-size:25px}.tote-alert p{font-size:17px}.login-layout{display:block;max-width:450px;padding-top:8px}.intro{display:none}footer span{display:none}}

/* Picking shortfalls are advisory; barcode verification remains mandatory. */
.product-card.not-picked{background:#edf5ff;border-color:#4389d6;box-shadow:inset 4px 0 #4389d6}.pick-warning{font-size:10px;font-weight:800;color:#175694;line-height:1.25}.pick-summary{font-size:11px;font-weight:700;color:#175694;background:#e3efff;border:1px solid #9fc3ed;border-radius:6px;padding:5px 8px;margin-top:6px}

/* Required quantities stay prominent; green completion requires every unit. */
.product-count{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:12px 10px;min-width:112px;border:2px solid #d3dfe8;border-radius:10px;background:#f2f6f9;white-space:nowrap}
.product-count .quantity-label{font-size:9px;color:#52697c;letter-spacing:.6px}
.product-count .required-quantity{display:flex;align-items:baseline;justify-content:center;gap:5px;font-size:46px;font-weight:900;line-height:1;color:#172c3e}
.product-count .quantity-unit{font-size:11px;font-weight:800;color:inherit}
.product-count.multi-quantity{background:#eee0ff;border-color:#8951c0;min-width:130px}
.product-count.multi-quantity .required-quantity{font-size:56px;color:#542078}
.product-count.multi-quantity .quantity-label{color:#542078}
.quantity-progress{display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;font-weight:800;color:#617487}
.quantity-progress.has-scans{color:#008263}
.scanner-icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-count.verified{background:#def3e8;border-color:#008263}
.product-count.verified .required-quantity,.product-count.verified .quantity-label{color:#008263}
@media(max-width:1200px){.product-count{min-width:96px;padding:10px 8px}.product-count .required-quantity{font-size:38px}.product-count.multi-quantity{min-width:112px}.product-count.multi-quantity .required-quantity{font-size:46px}}
@media(max-width:950px){.product-count{flex-direction:row;justify-content:flex-start;flex-wrap:wrap;gap:6px 10px;min-width:0;padding:6px 8px}.product-count.multi-quantity{min-width:0}.product-count .quantity-label{display:none}.product-count .required-quantity{font-size:30px}.product-count.multi-quantity .required-quantity{font-size:36px}.product-count .quantity-unit{font-size:9px}.quantity-progress{font-size:9px}.scanner-icon{width:18px;height:18px}}
@media(max-width:650px){.product-count{gap:4px 6px;padding:4px 6px}.product-count .required-quantity{font-size:24px}.product-count.multi-quantity .required-quantity{font-size:28px}.product-count .quantity-unit{font-size:8px}.quantity-progress{font-size:8px}.scanner-icon{width:16px;height:16px}}

/* Let warning pills straddle the card border without clipping the first row. */
.product-grid{padding-top:15px;row-gap:25px}
.product-card.not-picked{position:relative;padding-top:23px}
.pick-warning{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);z-index:1;max-width:calc(100% - 18px);width:max-content;padding:7px 16px;border-radius:999px;background:#1766b6;color:#fff;font-size:12px;font-weight:850;letter-spacing:.3px;line-height:1.2;text-align:center;box-shadow:0 2px 5px #17569425}
@media(max-width:650px){.product-grid{padding-top:19px;row-gap:30px}.product-card.not-picked{padding-top:24px}.pick-warning{max-width:calc(100% - 10px);font-size:9px;padding:6px 9px;letter-spacing:0}}

/* Stronger packing instructions with a compact footer footprint. */
.pick-summary,.order-bottom>.hint{font-size:14px;font-weight:800;line-height:1.3;padding:8px 12px;border-radius:8px;text-align:center;margin:6px 0 0}
.pick-summary{background:#dcecff;border:1px solid #82afe0;color:#174f86}
.order-bottom>.hint{background:#edf3f7;border:1px solid #c6d6e3;color:#25455e}
@media(min-width:1100px){
 .order-bottom:has(>.pick-summary):has(>.hint){display:grid;grid-template-columns:1fr 1fr;column-gap:10px}
 .order-bottom:has(>.pick-summary):has(>.hint)>.progress{grid-column:1/-1;grid-row:1;margin:6px 0 4px}
 .order-bottom:has(>.pick-summary):has(>.hint)>.pick-summary{grid-column:1;grid-row:2;margin-top:0;display:grid;place-items:center}
 .order-bottom:has(>.pick-summary):has(>.hint)>.hint{grid-column:2;grid-row:2;margin-top:0;display:grid;place-items:center}
}
@media(max-height:750px),(max-width:650px){.pick-summary,.order-bottom>.hint{font-size:12px;line-height:1.25;padding:6px 9px;margin-top:4px}.order-bottom>.progress{margin:5px 0 3px}}

.product-card.scanned{background:#8ee6a7;border-color:#087f36;box-shadow:inset 6px 0 #087f36}
.product-card.scanned:not(.order-error-card) .product-name{color:#224a35}
.product-card.scanned:not(.order-error-card) .product-sku,.product-card.scanned:not(.order-error-card) .product-barcode{color:#31573e}

/* Instructions and waiting feedback share one reserved row, preventing scan-time jumps. */
.scan-feedback{display:grid;align-items:center;min-height:16px;margin-top:4px}
.scan-feedback>.hint,.scan-feedback>.busy{grid-area:1/1;margin:0;line-height:16px}
.scan-feedback>#busy{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scan-feedback>#busy[hidden]{display:block!important;visibility:hidden}
.scan-feedback:has(>#busy:not([hidden]))>.hint{visibility:hidden}

.order-alert{z-index:70;background:#122b4033;pointer-events:auto}.order-alert .tote-alert-card{max-height:calc(100dvh - 44px);overflow:auto}.order-alert #order-alert-reference{display:block;font-size:20px;margin-top:10px}.order-alert #order-alert-text{font-size:18px;overflow-wrap:anywhere;white-space:pre-wrap}.order-alert #return-to-tote{background:#c52534;color:#fff;border-color:#c52534;font-size:15px;padding:12px 24px}.order-alert #return-to-tote:focus-visible{outline:3px solid #a21624;outline-offset:4px}

#supervisor>.card-heading{position:sticky;top:-16px;z-index:1;background:#fff;padding:12px 0;border-bottom:1px solid var(--line)}#supervisor #refresh-review{margin-left:auto}#close-review{font-size:14px;white-space:nowrap}

/* Order and document errors take precedence over picking and scan colours. */
.product-card.order-error-card{background:#fff0f1;border-color:#d92e40;box-shadow:inset 4px 0 #d92e40}

/* Larger document icons with clear separation; compact sizes on smaller stations. */
.document-statuses{gap:26px;align-items:center}.print-status{gap:8px}.print-status svg{width:42px;height:42px}
@media(max-width:1200px){.document-statuses{gap:18px}.print-status{gap:6px}.print-status svg{width:34px;height:34px}}
@media(max-width:650px){.document-statuses{gap:12px}.print-status{gap:5px}.print-status svg{width:28px;height:28px}}

.ready-callout{font-size:32px;font-weight:900;line-height:1.15;padding:12px 16px;border:2px solid #47a67a;border-radius:10px;background:#d9f2e4;color:#086b43;text-align:center}
@media(max-height:750px),(max-width:650px){.ready-callout{font-size:24px;padding:8px 12px}}

/* Packaging stays centred and has its own prominent purple outline. */
.packaging-reference>.eyebrow{color:#78509b}
.packaging-reference>strong{width:fit-content;max-width:100%;margin:0 auto;padding:7px 14px;border:2px solid #9463bf;border-radius:9px;background:#f3ebfc;color:#683399;font-size:24px;font-weight:850;line-height:1.15;overflow-wrap:anywhere}
@media(max-width:950px),(max-height:750px){.packaging-reference>strong{font-size:20px;padding:5px 10px}}
@media(max-width:650px){.packaging-reference>strong{font-size:18px;padding:5px 7px}}

/* Equal side tracks keep packaging on the full header's centre line. */
.order-title{grid-template-columns:minmax(0,1fr) minmax(160px,28%) minmax(0,1fr)}
.order-details-left,.order-details-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap;min-width:0}
.order-details-right{justify-content:flex-end}
@media(max-width:1200px){.order-details-left,.order-details-right{gap:10px}}
@media(max-width:650px){.order-title{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.order-title>.packaging-reference{grid-column:1/-1;grid-row:1}.order-details-left{grid-column:1;grid-row:2}.order-details-right{grid-column:2;grid-row:2}.order-details-right .document-statuses{flex-wrap:wrap;justify-content:flex-end}.order-details-right .order-navigation{align-items:flex-end;flex-direction:column}}

.packaging-reference>.eyebrow{font-size:17px;font-weight:900;line-height:1.1;letter-spacing:1.2px;color:#683399;margin:0 0 6px}
@media(max-width:650px),(max-height:750px){.packaging-reference>.eyebrow{font-size:14px;margin-bottom:4px}}


/* Balance the tote totals on either side of the centred tote identity. */
.tote-card{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr)}
.tote-left,.tote-right{display:flex;align-items:center;gap:20px;min-width:0}
.tote-right{justify-content:flex-end}
.tote-total{text-align:center;flex-shrink:0;color:#225c48}
.tote-total>span{display:block;font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
.tote-total>strong{display:block;font-size:30px;font-weight:900;line-height:1.1;color:#126a51;margin-top:3px}
@media(max-width:950px){.tote-left,.tote-right{gap:10px}.tote-total>span{font-size:9px}.tote-total>strong{font-size:26px}}
@media(max-width:650px){.tote-card{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,1fr)}.tote-card.locked .tote-symbol{display:none}.tote-left{justify-content:center}.tote-right{flex-direction:column;gap:5px}.tote-total>span{font-size:8px;letter-spacing:.3px}.tote-total>strong{font-size:23px}.tote-card #exit{padding:5px 7px}}

.tote-total{padding:6px 14px;border:1px solid #a895d0;border-radius:9px;background:#f1ecfa;color:#665083;min-width:110px}
.tote-total>strong{color:#634292}
@media(max-width:950px){.tote-total{min-width:90px;padding:5px 10px}}
@media(max-width:650px){.tote-total{min-width:0;width:100%;padding:4px 7px}}

/* Matching reference cards for the order number and pickwave IDs. */
.order-reference,.pickwave-reference{border:1px solid #bdcfe0;border-radius:9px;background:#f3f7fb;padding:7px 12px;text-align:center;max-width:100%;min-width:0}
.order-reference>h2,.pickwave-reference>strong{display:block;font-size:23px;font-weight:850;line-height:1.1;color:#25455e;overflow-wrap:anywhere}
.order-reference>.eyebrow,.pickwave-reference>.eyebrow{font-size:8px;line-height:1.2;margin-bottom:5px}
@media(max-width:650px),(max-height:750px){.order-reference,.pickwave-reference{padding:6px 9px}.order-reference>h2,.pickwave-reference>strong{font-size:19px}}

#printer.printer-online,#printer option.printer-online{color:#08783d;font-weight:700}
#printer.printer-offline,#printer option.printer-offline{color:#b42318;font-weight:700}
#printer option{background:#fff;color:#173247}


/* A visual celebration only: scanner and station controls remain available. */
.tote-celebration{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 35%,#e9fff0 0%,#d8f8e9 45%,#c3efdf 100%);opacity:1;transition:opacity .45s ease}
.tote-celebration.fading{opacity:0}.celebration-content{position:relative;text-align:center;padding:24px;max-width:95vw;color:#104d39}
.celebration-tick{width:clamp(90px,15vh,155px);margin:0 auto 18px;animation:celebration-pop .55s cubic-bezier(.2,.9,.3,1.35) both}.celebration-tick svg{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 12px 22px #08783d26)}.celebration-tick circle{fill:#10844e}.celebration-tick path{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:70;stroke-dashoffset:70;animation:celebration-check .4s .2s ease forwards}
.celebration-eyebrow{font-size:clamp(14px,2vw,23px);font-weight:800;letter-spacing:3px;margin:0 0 8px}.celebration-content h2{font-size:clamp(38px,7vw,110px);line-height:1.05;font-weight:950;letter-spacing:-3px;color:#08783d;margin:0}.celebration-name{font-size:clamp(22px,3.2vw,45px);font-weight:750;margin:18px 0 24px}.celebration-totals{display:flex;justify-content:center;gap:clamp(16px,4vw,64px)}.celebration-totals>div{min-width:145px;padding:15px 28px;border:2px solid #70ba96;border-radius:18px;background:#ffffff9c}.celebration-totals strong{display:block;font-size:clamp(38px,5vw,68px);line-height:1.1;font-weight:900}.celebration-totals span{display:block;font-size:clamp(13px,1.5vw,19px);margin-top:4px}.celebration-next{font-size:clamp(14px,1.5vw,20px);margin:24px 0 0;color:#39715c}
.celebration-confetti{position:absolute;inset:0;overflow:hidden}.celebration-confetti i{position:absolute;top:-40px;width:10px;height:20px;background:#15945e;border-radius:2px;animation:celebration-fall 3.4s ease-in both}.celebration-confetti i:nth-child(3n){background:#9b6fe8}.celebration-confetti i:nth-child(3n+1){background:#dfa735}.celebration-confetti i:nth-child(4n){width:12px;height:12px;border-radius:50%;background:#1e9eaa}
@keyframes celebration-pop{from{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@keyframes celebration-check{to{stroke-dashoffset:0}}@keyframes celebration-fall{from{transform:translateY(-10vh) rotate(0deg);opacity:1}to{transform:translateY(115vh) rotate(620deg);opacity:.2}}
@media(max-height:650px){.celebration-tick{width:80px;margin-bottom:10px}.celebration-content h2{font-size:clamp(34px,6vw,72px)}.celebration-name{margin:10px 0 14px}.celebration-totals>div{padding:8px 24px}.celebration-next{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.celebration-confetti{display:none}.celebration-tick,.celebration-tick path{animation:none}.celebration-tick path{stroke-dashoffset:0}.tote-celebration{transition:none}}
.celebration-confetti i:nth-child(1){left:37%;animation-delay:0.055s;animation-duration:2.56s}
.celebration-confetti i:nth-child(2){left:74%;animation-delay:0.110s;animation-duration:2.72s}
.celebration-confetti i:nth-child(3){left:11%;animation-delay:0.165s;animation-duration:2.88s}
.celebration-confetti i:nth-child(4){left:48%;animation-delay:0.220s;animation-duration:3.04s}
.celebration-confetti i:nth-child(5){left:85%;animation-delay:0.275s;animation-duration:3.20s}
.celebration-confetti i:nth-child(6){left:22%;animation-delay:0.330s;animation-duration:3.36s}
.celebration-confetti i:nth-child(7){left:59%;animation-delay:0.385s;animation-duration:2.40s}
.celebration-confetti i:nth-child(8){left:96%;animation-delay:0.440s;animation-duration:2.56s}
.celebration-confetti i:nth-child(9){left:33%;animation-delay:0.000s;animation-duration:2.72s}
.celebration-confetti i:nth-child(10){left:70%;animation-delay:0.055s;animation-duration:2.88s}
.celebration-confetti i:nth-child(11){left:7%;animation-delay:0.110s;animation-duration:3.04s}
.celebration-confetti i:nth-child(12){left:44%;animation-delay:0.165s;animation-duration:3.20s}
.celebration-confetti i:nth-child(13){left:81%;animation-delay:0.220s;animation-duration:3.36s}
.celebration-confetti i:nth-child(14){left:18%;animation-delay:0.275s;animation-duration:2.40s}
.celebration-confetti i:nth-child(15){left:55%;animation-delay:0.330s;animation-duration:2.56s}
.celebration-confetti i:nth-child(16){left:92%;animation-delay:0.385s;animation-duration:2.72s}
.celebration-confetti i:nth-child(17){left:29%;animation-delay:0.440s;animation-duration:2.88s}
.celebration-confetti i:nth-child(18){left:66%;animation-delay:0.000s;animation-duration:3.04s}
.celebration-confetti i:nth-child(19){left:3%;animation-delay:0.055s;animation-duration:3.20s}
.celebration-confetti i:nth-child(20){left:40%;animation-delay:0.110s;animation-duration:3.36s}
.celebration-confetti i:nth-child(21){left:77%;animation-delay:0.165s;animation-duration:2.40s}
.celebration-confetti i:nth-child(22){left:14%;animation-delay:0.220s;animation-duration:2.56s}
.celebration-confetti i:nth-child(23){left:51%;animation-delay:0.275s;animation-duration:2.72s}
.celebration-confetti i:nth-child(24){left:88%;animation-delay:0.330s;animation-duration:2.88s}
.celebration-confetti i:nth-child(25){left:25%;animation-delay:0.385s;animation-duration:3.04s}
.celebration-confetti i:nth-child(26){left:62%;animation-delay:0.440s;animation-duration:3.20s}
.celebration-confetti i:nth-child(27){left:99%;animation-delay:0.000s;animation-duration:3.36s}
.celebration-confetti i:nth-child(28){left:36%;animation-delay:0.055s;animation-duration:2.40s}
.celebration-confetti i:nth-child(29){left:73%;animation-delay:0.110s;animation-duration:2.56s}
.celebration-confetti i:nth-child(30){left:10%;animation-delay:0.165s;animation-duration:2.72s}
.celebration-confetti i:nth-child(31){left:47%;animation-delay:0.220s;animation-duration:2.88s}
.celebration-confetti i:nth-child(32){left:84%;animation-delay:0.275s;animation-duration:3.04s}
.celebration-confetti i:nth-child(33){left:21%;animation-delay:0.330s;animation-duration:3.20s}
.celebration-confetti i:nth-child(34){left:58%;animation-delay:0.385s;animation-duration:3.36s}
.celebration-confetti i:nth-child(35){left:95%;animation-delay:0.440s;animation-duration:2.40s}
.celebration-confetti i:nth-child(36){left:32%;animation-delay:0.000s;animation-duration:2.56s}

.picked-by{display:block;font-size:12px;font-weight:700;line-height:1.2;color:#3c596f;margin-top:4px;overflow-wrap:anywhere}
/* Prepared packing controls: no space added to the main order layout. */
#process-now{display:block;width:100%;cursor:pointer;font-family:inherit}
#process-now:hover:not(:disabled){background:#bce9cf;border-color:#15834b}
#process-now:focus-visible,#tote-name:focus-visible{outline:3px solid #007d95;outline-offset:4px}
#tote-name[role=button]:not([aria-disabled=true]){cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.reprint-document{font-family:inherit;background:transparent;cursor:pointer;text-align:left}
.reprint-document:hover:not(:disabled){background:#edf7f3;box-shadow:0 0 0 2px #88baa2}
.reprint-document:disabled{cursor:default;opacity:1}
.packing-dialog[hidden]{display:none}
.packing-dialog{position:fixed;inset:0;z-index:1500;background:rgba(12,32,47,.65);display:flex;align-items:center;justify-content:center;padding:24px}
.packing-dialog-card{background:#fff;border:2px solid #87aec6;border-radius:16px;padding:24px;width:min(850px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 18px 70px #0005}
.packing-dialog .card-heading{flex-shrink:0;justify-content:space-between;gap:20px}
.packing-dialog h2{margin:0;font-size:24px}
#packing-dialog-body{min-height:70px;overflow:auto;overscroll-behavior:contain;margin:16px 0}
.packing-dialog-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0}
.tote-view-position{text-align:center;color:#547087;font-weight:700}
.tote-view-items{display:grid;gap:12px}
.tote-view-item{border:2px solid #b8cbd6;border-radius:10px;padding:14px;display:flex;justify-content:space-between;gap:16px}
.tote-view-item.short{border-color:#2789cb;background:#edf7ff}
.tote-view-item p{margin:6px 0}
.tote-view-quantities{display:flex;flex-direction:column;gap:7px;text-align:right;min-width:205px;max-width:240px;flex-shrink:0}
.tote-view-quantities>span{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:5px 12px;border:2px solid #a6bfd2;border-radius:8px;background:#fff;color:#25455e;font-size:13px;font-weight:800;text-transform:uppercase}
.tote-view-quantities>span>b{font-size:32px;font-weight:900;line-height:1.1;color:#122b40}
.tote-view-quantities>strong{color:#13679f;font-size:16px;font-weight:850;line-height:1.3}
.tote-view-item.short .tote-view-quantities>strong{background:#13679f;color:#fff;border-radius:8px;padding:8px 10px;text-align:center}
@media(max-width:600px){.packing-dialog{padding:12px}.packing-dialog-card{padding:16px}.tote-view-item{flex-direction:column}.tote-view-quantities{text-align:left}.packing-dialog h2{font-size:20px}}
.tote-card.locked{cursor:pointer}
.tote-card.locked #exit{cursor:default}
/* Equal columns and stretched rows give both reference cards identical bounds. */
.order-details-left,.tote-view-references{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;min-width:0}
.order-reference,.pickwave-reference{display:flex;flex-direction:column;justify-content:center;align-self:stretch;width:100%}
.tote-view-references{margin:10px 0 14px}
.tote-view-product{display:flex;align-items:center;gap:14px;min-width:0;flex:1}
.tote-view-product>div:last-child{min-width:0;overflow-wrap:anywhere}
.tote-view-image{width:96px;height:110px;flex:0 0 96px;border:1px solid #dce4eb;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;color:#6b7f90;font-size:11px;text-align:center}
.tote-view-image img{width:100%;height:100%;object-fit:contain;border-radius:8px}
@media(max-width:600px){.tote-view-image{width:76px;height:90px;flex-basis:76px}}

@media(max-width:600px){.tote-view-quantities{min-width:0;max-width:none;width:100%}}
.celebration-daily{display:flex;align-items:center;justify-content:center;gap:16px;margin:16px auto 0;padding:10px 24px;width:fit-content;max-width:100%;background:#08783d;color:#fff;border:2px solid #055b2d;border-radius:14px}
.celebration-daily strong{font-size:clamp(32px,4vw,52px);font-weight:950;line-height:1.1}
.celebration-daily span{font-size:clamp(17px,2vw,25px);font-weight:800}
@media(max-height:650px){.celebration-daily{margin-top:10px;padding:6px 18px}.celebration-daily strong{font-size:32px}}
#split-packaging{margin-top:6px;padding:6px 12px;font-size:12px;border:1px solid #9677b8;color:#62318e;background:#f4edfc}
.split-packaging-dialog .packing-dialog-card{width:min(1160px,100%);height:94vh;max-height:94vh;padding:16px}
.split-packaging-dialog #packing-dialog-body{flex:1;min-height:0;overflow:hidden;margin:12px 0}
.split-packaging-dialog iframe{display:block;width:100%;height:100%;border:1px solid #bdcfe0;border-radius:8px;background:#fff}
.split-packaging-dialog .packing-dialog-actions .hint{margin:0}
.order-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin:4px 0;flex-wrap:wrap}
.order-actions button{padding:6px 14px;font-size:12px}
#missing-from-tote{border-color:#b17536;background:#fff4e7;color:#875015}
.product-count.multi-quantity:not(.verified){border:3px solid #8050b5;background:#e6d2ff}
.product-count.multi-quantity:not(.verified) .required-quantity,.tote-view-quantities.multi-required>span:first-child>b{position:relative;padding:6px 10px;isolation:isolate}
.quantity-ring{position:absolute;inset:-5px;width:calc(100% + 10px);height:calc(100% + 10px);pointer-events:none;overflow:visible}
.quantity-ring ellipse{fill:none;stroke:#6f28a8;stroke-width:4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw-quantity-circle 2.8s ease-in-out infinite}
.separate-items-warning{display:block;max-width:150px;color:#4e1b76;font-size:11px;font-weight:900;line-height:1.15;white-space:normal;text-transform:uppercase}
.tote-view-quantities.multi-required>span:first-child{border-color:#8050b5;background:#e6d2ff;color:#542078}
#tote-view-missing{border:1px solid #b17536;background:#fff4e7;color:#875015}
@keyframes draw-quantity-circle{0%,8%{stroke-dashoffset:1;opacity:1}55%,86%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@media(prefers-reduced-motion:reduce){.quantity-ring ellipse{animation:none;stroke-dashoffset:0}}
.packaging-tools{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:6px}
.packaging-tools #split-packaging{margin-top:0}
#report-wrong-packaging{padding:6px 10px;font-size:12px;background:#fff4df;border:1px solid #c39344;color:#79521a}
.packaging-report-summary{display:flex;flex-direction:column;gap:5px;color:#25455e}
.packaging-report-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.packaging-report-groups fieldset{min-width:0;border:1px solid #bdcfe0;border-radius:9px;padding:10px}
.packaging-report-groups legend{font-size:16px;font-weight:850;color:#62318e;padding:0 5px}
.packaging-report-groups label{display:flex;align-items:center;gap:8px;margin:0;padding:7px 5px;border-radius:5px;cursor:pointer;color:#25455e;font-size:13px}
.packaging-report-groups label:has(input:checked){background:#eee4fa;color:#542581}
.packaging-report-groups input{width:17px;height:17px;margin:0;flex-shrink:0;accent-color:#7446a0}
.packaging-report-error{color:#b32635;font-size:14px;font-weight:700}
@media(max-width:600px){.packaging-report-groups{grid-template-columns:1fr}.packaging-report-groups fieldset{display:flex;flex-wrap:wrap;gap:3px 12px}}

/* Keep station controls legible when the packing page is zoomed out. */
.order-details-right{gap:12px}
.document-statuses{gap:20px}
.print-status{gap:8px;padding:2px;border-radius:9px}
.print-status svg{width:60px;height:60px}
.print-status>span{font-size:14px;font-weight:850}
.print-status small{font-size:10px;font-weight:850;letter-spacing:.5px}
.order-navigation>.badge{font-size:20px;font-weight:900;line-height:1.15;padding:10px 14px;border:2px solid #46a88d;border-radius:9px;color:#075b48;background:#d4f4e7}
.packaging-tools{gap:8px}
.packaging-tools #split-packaging,.packaging-tools #report-wrong-packaging{padding:9px 12px;font-size:16px;font-weight:850;line-height:1.2;border-width:2px;min-height:42px}
.packaging-tools #split-packaging{background:#e9d9fc;border-color:#8050ac;color:#54247e}
.packaging-tools #report-wrong-packaging{background:#ffe7b6;border-color:#ac7623;color:#65410d}
@media(max-width:1500px){
 .document-statuses{gap:14px}
 .print-status svg{width:50px;height:50px}
 .print-status>span{font-size:12px}
 .print-status small{font-size:9px}
 .order-navigation>.badge{font-size:18px;padding:8px 11px}
 .packaging-tools #split-packaging,.packaging-tools #report-wrong-packaging{font-size:15px;padding:8px 10px}
}
@media(max-width:650px){
 .document-statuses{gap:10px}
 .print-status{gap:5px}
 .print-status svg{width:40px;height:40px}
 .print-status>span{font-size:11px}
 .order-navigation>.badge{font-size:16px;padding:7px 9px}
}

/* Keep all order tools together above the products. */
.order-panel>.order-actions.packaging-tools{flex-shrink:0;gap:10px;margin:0 0 10px}
.order-actions.packaging-tools #skip-order,.order-actions.packaging-tools #missing-from-tote{padding:9px 12px;font-size:16px;font-weight:850;line-height:1.2;border-width:2px;min-height:42px}
.packaging-tools #report-wrong-packaging{background:#d3f2f2;border-color:#308c94;color:#135861}
.order-actions #missing-from-tote{background:#dae9ff;border-color:#4378b9;color:#153f75}
.order-actions #skip-order{background:#e7edf5;border-color:#7c93af;color:#29445e}
@media(max-width:1500px){.order-actions.packaging-tools #skip-order,.order-actions.packaging-tools #missing-from-tote{font-size:15px;padding:8px 10px}}

/* The tote viewer keeps its frame steady while orders change. */
.tote-view-dialog .packing-dialog-card{height:min(780px,86dvh)}
.tote-view-dialog #packing-dialog-body{flex:1;min-height:0;scrollbar-gutter:stable}

/* Tote pagination shows both the available directions and the current order. */
#tote-view-previous:disabled,#tote-view-next:disabled{background:#e5e7eb;color:#89929c;border-color:#d1d5db;opacity:1;cursor:not-allowed;box-shadow:none}
.tote-view-dots{flex:0 0 100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;max-height:50px;overflow:auto;padding:5px 2px;margin-bottom:3px}
.tote-view-dot{width:10px;height:10px;flex:0 0 10px;border:2px solid #9eafbf;border-radius:50%;background:#edf1f5}
.tote-view-dot.current{background:#7550a9;border-color:#5a348b;box-shadow:0 0 0 3px #e8ddf6}

/* A silent, five-second celebration with a navy backdrop and teal spotlight. */
.tote-celebration{background:radial-gradient(ellipse at 50% 36%,#15505b 0%,#102e42 40%,#081728 85%)}
.tote-celebration::before,.tote-celebration::after{content:"";position:absolute;left:50%;top:42%;width:min(75vw,880px);aspect-ratio:1;border:1px solid #58d9c01a;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.tote-celebration::after{width:min(95vw,1160px);border-color:#eac47112}
.celebration-content{width:min(1080px,95vw);padding:20px;color:#e3f8f2}
.celebration-tick{position:relative;width:clamp(96px,17vh,158px);height:clamp(96px,17vh,158px);margin:0 auto 12px}
.celebration-tick .celebration-tote-art{width:100%;height:100%;filter:drop-shadow(0 10px 24px #38d4b543)}
.celebration-tick .celebration-tote-art path{fill:#24697666;stroke:#8df0d9;stroke-width:5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:0;animation:none}
.celebration-tick .celebration-tote-art path+path{fill:none}
.celebration-tick .celebration-checkmark{position:absolute;right:-12%;bottom:0;width:49%;height:49%;filter:drop-shadow(0 4px 12px #06152399)}
.celebration-tick .celebration-checkmark circle{fill:#24b48a;stroke:#b6ffe9;stroke-width:3}
.celebration-eyebrow{display:inline-block;color:#a5d6d8;background:#ffffff08;border:1px solid #75b7c147;border-radius:30px;padding:6px 18px;font-size:clamp(12px,1.6vw,17px);letter-spacing:2px;margin:0 0 12px}
.celebration-content h2{color:#a0f7dc;font-size:clamp(36px,7.5vw,92px);font-weight:950;letter-spacing:-2px;line-height:1;text-shadow:0 6px 32px #2ed7b328}
.celebration-name{font-size:clamp(24px,3.4vw,44px);font-weight:800;color:#fff;margin:12px 0 20px}
.celebration-totals{gap:16px}
.celebration-totals>div{min-width:150px;padding:10px 26px;border:1px solid #7cbecc55;border-radius:14px;background:#ffffff08}
.celebration-totals strong{font-size:clamp(34px,5vh,56px);color:#f1fffc}
.celebration-totals span{font-size:clamp(12px,1.5vw,17px);color:#b5d4dd}
.celebration-daily{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:18px;row-gap:2px;margin:18px auto 0;padding:12px 32px;border:1px solid #dab87588;border-radius:18px;background:linear-gradient(120deg,#b18a3029,#e8c57510);box-shadow:0 10px 40px #0002;color:#ffe1a0}
.celebration-daily::before{content:"YOUR RUNNING TOTAL";grid-column:1/-1;font-size:11px;font-weight:850;letter-spacing:2px;color:#e6c78e}
.celebration-daily strong{font-size:clamp(46px,8vh,84px);line-height:1;font-variant-numeric:tabular-nums;color:#ffe1a0}
.celebration-daily span{font-size:clamp(15px,2vw,23px);max-width:180px;text-align:left;color:#f4e2bd}
.celebration-next{margin:18px 0 0;color:#9abcc9;font-size:clamp(13px,1.5vw,18px)}
.celebration-confetti i{background:#64e3c7}
.celebration-confetti i:nth-child(3n){background:#f4deab}
.celebration-confetti i:nth-child(3n+1){background:#d5ad55}
.celebration-confetti i:nth-child(4n){background:#7ec4d4}
@media(max-height:700px){
 .celebration-content{padding:12px}
 .celebration-tick{width:88px;height:88px;margin-bottom:5px}
 .celebration-eyebrow{font-size:12px;padding:4px 14px;margin-bottom:8px}
 .celebration-content h2{font-size:clamp(34px,6vw,64px)}
 .celebration-name{font-size:28px;margin:8px 0 12px}
 .celebration-totals>div{padding:6px 22px;min-width:130px}
 .celebration-totals strong{font-size:34px}
 .celebration-daily{margin-top:12px;padding:8px 24px}
 .celebration-daily strong{font-size:48px}
 .celebration-daily span{font-size:17px}
 .celebration-next{margin-top:12px}
}
@media(max-width:500px){
 .celebration-content h2{font-size:clamp(30px,9vw,44px);letter-spacing:-1px}
 .celebration-totals{gap:10px}
 .celebration-totals>div{min-width:0;padding:8px 18px}
 .celebration-daily{padding:10px 20px;column-gap:12px}
}

.packed-parcel-warning{font-size:17px;line-height:1.5;color:#244c68;font-weight:700}
.packed-parcel-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.packed-parcel-details>div{padding:14px;border:1px solid #bed2e1;background:#f0f6fb;border-radius:10px;min-width:0}
.packed-parcel-details dt{font-size:12px;font-weight:800;color:#547087;margin-bottom:6px}
.packed-parcel-details dd{margin:0;font-size:21px;font-weight:850;color:#173b56;overflow-wrap:anywhere}
.packed-parcel-details small{display:block;margin-top:5px;font-size:13px;font-weight:650;color:#547087}
.packed-parcel-details>.packed-parcel-packaging{background:#f0e7fc;border:2px solid #9463bf}
.packed-parcel-packaging dt,.packed-parcel-packaging dd{color:#683399}
@media(max-width:550px){.packed-parcel-details{grid-template-columns:1fr}.packed-parcel-details dd{font-size:18px}}

.station-grid .station-template{margin:10px 0 0;font-size:10px}
.station-template select{height:34px;padding:7px 8px;margin-top:4px;font-size:12px}
