:root{--brand:#172a52;--brand-2:#29467e;--accent:#f3c748;--surface:#f5f7fb;--line:#dce2ec;--danger:#b42318;--success:#067647}*{box-sizing:border-box}body{margin:0;background:#fff;color:#202939;font-family:"Google Sans",Arial,sans-serif}.app-loading{display:grid;min-height:100vh;place-content:center;text-align:center;color:var(--brand)}.brandbar{align-items:center;background:var(--brand);display:flex;height:76px;justify-content:space-between;padding:12px max(24px,calc((100% - 1180px)/2));position:relative;z-index:2}.brandbar img{height:45px;max-width:210px;object-fit:contain}.brandbar a{color:#fff;text-decoration:none}.brand-banner{display:block;height:210px;object-fit:cover;width:100%}.site-main{margin:0 auto;max-width:1180px;padding:38px 24px 60px}.product-grid{align-items:start;display:grid;gap:32px;grid-template-columns:1fr 1.15fr .9fr}.product-image{background:#f0f2f5;border-radius:14px;min-height:320px;overflow:hidden}.product-image img{height:100%;max-height:430px;object-fit:contain;width:100%}.placeholder{display:grid;min-height:320px;place-content:center}.lead{color:#52606d;font-size:1.05rem;line-height:1.7}.ticks{list-style:none;padding:0}.ticks li{margin:.65rem 0;padding-left:28px;position:relative}.ticks li:before{color:var(--success);content:'✓';font-weight:800;left:0;position:absolute}.steps{background:var(--surface);border-radius:14px;padding:24px}.steps h2{font-size:1.25rem}.step-item{display:flex;gap:13px;margin-top:18px}.step-item>b{background:var(--brand);border-radius:50%;color:#fff;display:grid;flex:0 0 30px;height:30px;place-content:center}.step-item strong,.step-item span{display:block}.step-item span{color:#667085;font-size:.88rem;margin-top:4px}.static-detail{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.detail-summary{align-items:center;display:flex;font-size:1.1rem;font-weight:700;gap:12px}.detail-icon svg,.cart-button svg,.help-icon{fill:none;height:24px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:24px}.cart-button{align-items:center;background:var(--brand);border-radius:9px;color:#fff;display:flex;font-weight:700;gap:10px;justify-content:center;margin-top:28px;padding:15px;text-decoration:none;width:100%}.flow-card{border:1px solid var(--line);border-radius:14px;margin:auto;max-width:760px;padding:28px}.summary-row{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:20px;padding:18px 0}.summary-row img{height:95px;object-fit:contain;width:110px}.status-page{margin:auto;max-width:620px;padding:80px 20px;text-align:center}.status-icon{background:#fff2f0;border-radius:50%;color:var(--danger);display:grid;font-size:2rem;height:70px;margin:0 auto 18px;place-content:center;width:70px}.footer{background:#0d1b36;color:#c7d0df;padding:28px;text-align:center}.admin-shell{background:#f4f6fa;min-height:100vh}.admin-nav{background:var(--brand);color:#fff}.admin-nav .navbar-brand img{height:36px;max-width:170px}.admin-content{margin:0 auto;max-width:1320px;padding:32px 20px}.metric{border:0;border-radius:13px;box-shadow:0 2px 15px #1c2c4810}.metric .display-6{color:var(--brand);font-weight:700}.panel{background:#fff;border:1px solid #e3e7ee;border-radius:13px;margin-bottom:24px;padding:24px}.panel-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.panel-head h2{font-size:1.35rem;margin:0}.panel-head p{color:#667085;margin:.3rem 0 0}.login-page{background:linear-gradient(135deg,#132546,#2f4f88);display:grid;min-height:100vh;padding:20px;place-content:center}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;padding:34px;width:min(430px,calc(100vw - 40px))}.login-card img{display:block;height:52px;margin:0 auto 26px;max-width:220px;object-fit:contain}.badge.active,.badge.confirmed,.badge.delivered{background:#dcfae6;color:#067647}.badge.disabled,.badge.cancelled{background:#fee4e2;color:#b42318}.badge.redeemed,.badge.dispatched{background:#e0e7ff;color:#3730a3}.badge.expired{background:#f2f4f7;color:#344054}.copy-row{min-width:360px}.empty{color:#667085;padding:35px!important;text-align:center}.toast-wrap{position:fixed;right:20px;top:20px;z-index:1090}.preline{white-space:pre-line}@media(max-width:850px){.brandbar{height:64px;padding:10px 16px}.brandbar img{height:38px;max-width:170px}.brand-banner{height:130px}.site-main{padding:24px 16px 40px}.product-grid{grid-template-columns:1fr}.product-image{min-height:240px}.steps{order:3}.panel{padding:17px}.panel-head{align-items:flex-start;flex-direction:column}.copy-row{min-width:290px}}
/* Public reward pages, aligned with the approved V4 mockups. */
.site-header{border-bottom:1px solid #e4e7ec;margin:auto;max-width:1180px}.brandbar{background:#fff;height:72px;padding:14px 24px}.brandbar img{height:38px;max-width:190px}.brandbar a{color:#101828}.brand-banner{height:auto}.site-main{padding-top:32px}.footer{display:none}.product-grid{grid-template-columns:1.05fr .8fr .9fr}.product-grid h1,.flow-card>h1,.status-page h1{color:#101828;font-size:2rem;font-weight:700;line-height:1.2}.product-image{border:1px dashed #cfd4dc;border-radius:8px}.steps{background:#fff;border-left:1px solid var(--line);border-radius:0;min-height:100%;padding:24px 0 24px 30px}.static-detail{max-width:68%}.cart-button,.btn-primary{background:#061b3d;border-color:#061b3d;border-radius:5px;text-transform:uppercase}.cart-button:hover,.btn-primary:hover{background:#102f5d;border-color:#102f5d}.flow-card{border-color:#d8dce3;border-radius:8px;max-width:960px;padding:44px 48px}.flow-card>h1{margin-bottom:10px}.page-intro{color:#344054;font-size:1.05rem;margin-bottom:30px}.summary-row{border:1px solid #d8dce3;border-radius:8px;gap:28px;margin:22px 0;padding:24px 28px}.summary-row img,.summary-placeholder{background:#f2f3f5;border-radius:6px;height:120px;object-fit:contain;width:140px}.summary-placeholder{color:#aeb4bf;display:grid;font-size:3rem;place-content:center}.summary-row h2{font-size:1.2rem;font-weight:700;margin:0 0 12px}.summary-row p{color:#101828;font-size:1.05rem;margin:0}.flow-actions{border-top:1px solid #d8dce3;display:flex;flex-direction:column;gap:20px;margin-top:34px;padding-top:34px}.flow-actions .btn{font-size:1.05rem;font-weight:600;padding:15px;width:100%}.back-link,.support-link{color:#075dcc;text-align:center;text-decoration:none}.shipping-card{max-width:980px;padding-top:28px}.shipping-card .page-intro{margin-bottom:24px}.form-label{color:#101828;font-size:.9rem;font-weight:600;margin-bottom:7px}.form-control,.form-select{border-color:#cdd2da;border-radius:5px;min-height:48px}.shipping-card .btn{font-weight:600;margin-top:10px;padding:15px}.review-card{max-width:980px}.review-card>.summary-row{max-width:570px}.section-label{font-size:1.05rem;font-weight:700;margin:38px 0 0}.shipping-summary{border:1px solid #d8dce3;border-radius:8px;max-width:570px;padding:20px 24px}.summary-title{align-items:center;display:flex;justify-content:space-between}.summary-title h2{font-size:1.05rem;font-weight:700}.summary-title a{color:#0671e8;font-weight:600;text-decoration:none}.shipping-summary p{line-height:1.55;margin:8px 0 0}.status-page{max-width:960px}.confirmation-page .status-icon{background:#07982b;color:#fff;font-size:2.5rem;height:86px;width:86px}.confirmation-page .lead{color:#101828;font-size:1.1rem;line-height:1.55}.order-id{background:#fafbfc;border:1px solid #d8dce3;border-radius:7px;display:flex;flex-direction:column;margin:28px auto;width:min(360px,100%);padding:17px}.order-id span{font-size:1.55rem;font-weight:700;margin-top:6px}.confirmation-note{line-height:1.55}.home-button{display:block;font-weight:600;margin:32px auto 18px;max-width:360px;padding:14px}.support-link{display:block}.support-page{min-height:620px}.support-icon{background:#eef4ff;border-radius:50%;color:#0671e8;display:grid;font-size:3rem;height:120px;margin:0 auto 28px;place-content:center;width:120px}.support-page h1{font-size:2.4rem}.title-rule{background:#0671e8;height:3px;margin:25px auto 34px;width:70px}.support-page p{font-size:1.15rem}.support-page>a{color:#0671e8;font-size:1.3rem;font-weight:700;text-decoration:none}
@media(max-width:850px){.site-header{width:100%}.brandbar{height:60px}.product-grid{grid-template-columns:1fr}.steps{border-left:0;border-top:1px solid var(--line);padding:24px 0}.static-detail{max-width:none}.flow-card{padding:26px 20px}.flow-card>h1,.product-grid h1,.status-page h1{font-size:1.65rem}.summary-row{padding:18px}.summary-row img,.summary-placeholder{height:85px;width:95px}.support-page{min-height:460px}.support-page>a{font-size:1rem;overflow-wrap:anywhere}}
.help-link{align-items:center;display:flex;gap:8px}
.site-header .brand-banner{display:block;width:100%}.footer{align-items:center;background:#061b3d;color:#fff;display:flex;justify-content:space-between;margin-top:24px;padding:22px max(24px,calc((100% - 1180px)/2))}.footer a{align-items:center;color:#fff;display:flex;gap:8px;text-decoration:none}.detail-ticks{margin:16px 0 0}.detail-ticks li{line-height:1.55;margin:.55rem 0}
@media(max-width:850px){.footer{gap:16px;padding:20px 16px}}
.site-header picture{display:block;width:100%}.product-grid h1{font-size:1.5rem}.detail-ticks{list-style:disc;padding-left:20px}.detail-ticks li{line-height:1.4;margin:.15rem 0;padding-left:0}.detail-ticks li:before{content:none}
.ticks{list-style:disc;padding-left:20px}.ticks li{line-height:1.35;margin:.05rem 0;padding-left:0}.ticks li:before{content:none}
.btn,.cart-button,button{border-radius:999px}
.product-image{background:transparent;border:0}.footer{justify-content:center}.footer-help{font-weight:600;padding:10px 24px}@media(max-width:850px){.site-header{max-width:none}.site-header .brand-banner{aspect-ratio:auto;height:auto;max-width:none;object-fit:contain;width:100%}}
.step-item>b{background:#202939;border-radius:50%;font-size:0;flex:0 0 7px;height:7px;margin-top:7px;width:7px}
.footer .footer-help{align-items:center;background:#fff;border:1px solid #fff;color:#061b3d!important;display:inline-flex;justify-content:center;min-width:160px}.footer .footer-help:hover,.footer .footer-help:focus{background:#e9f1ff;border-color:#e9f1ff;color:#061b3d!important}
.summary-row img{background:transparent}
.steps h2{font-size:1.1rem;font-weight:700;margin:0}.step-item{gap:10px;margin-top:.55rem}.step-item span{margin-top:2px}.support-page>a{font-size:1.15rem;font-weight:400}.product-image img{display:block;height:auto;margin:auto;max-height:390px;width:90%}@media(max-width:850px){.product-image img{width:92%}}
.support-page .title-rule~p,.support-page .title-rule~a{line-height:1.5;margin:0}.support-page .title-rule~*+*{margin-top:16px}
.bulk-actions{align-items:end;background:#f8f9fc;border:1px solid #e3e7ee;border-radius:10px;display:flex;gap:12px;margin-bottom:18px;padding:14px}.bulk-actions strong{margin-right:auto;white-space:nowrap}.bulk-actions .form-control{max-width:190px}.bulk-actions .btn{white-space:nowrap}@media(max-width:700px){.bulk-actions{align-items:stretch;flex-direction:column}.bulk-actions .form-control{max-width:none}}
.static-detail{margin-bottom:20px;margin-top:0;max-width:100%}.steps{padding:0 0 24px 30px}
.btn:not(.btn-close):not(.navbar-toggler),.cart-button,button:not(.btn-close):not(.navbar-toggler){background:#1a73e8!important;border-color:#1a73e8!important;color:#fff!important}.btn:not(.btn-close):not(.navbar-toggler):hover,.btn:not(.btn-close):not(.navbar-toggler):focus,.cart-button:hover,.cart-button:focus,button:not(.btn-close):not(.navbar-toggler):hover,button:not(.btn-close):not(.navbar-toggler):focus{background:#1557b0!important;border-color:#1557b0!important;color:#fff!important}
@media(max-width:850px){.steps{padding:24px 0}.steps .step-item{padding-left:10px}}

.language-toolbar{display:flex;justify-content:flex-start;align-items:center;gap:12px;margin:0 0 24px;max-width:1200px}.language-toolbar label{font-weight:600}.language-toolbar .form-select{width:auto;min-width:180px;font-family:inherit}

/* Landing-page dividers span the banner; content keeps its original gutters. */
.site-main:has(> .product-grid) {
  display: grid;
  grid-template-columns: minmax(24px, 1fr) minmax(0, 1132px) minmax(24px, 1fr);
  max-width: none;
  padding-inline: 0;
}
.site-main:has(> .product-grid) > * { grid-column: 2; }
.site-main:has(> .product-grid) > .static-detail {
  grid-column: 1 / -1;
  padding-inline: max(24px, calc((100% - 1132px) / 2));
}
@media (max-width: 850px) {
  .site-main:has(> .product-grid) {
    grid-template-columns: 16px minmax(0, 1fr) 16px;
  }
  .site-main:has(> .product-grid) > .static-detail { padding-inline: 16px; }
}

/* Separate the product area from the full-width About divider. */
.site-main > .product-grid { margin-bottom: 32px; }
.admin-table-controls{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:20px}.admin-table-controls label{display:grid;gap:6px;font-size:.9rem;font-weight:600;min-width:140px}.admin-table-controls label:first-child{flex:1;min-width:220px}.admin-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.admin-table-pagination nav{display:flex;align-items:center;gap:14px}.admin-table-pagination button:disabled{opacity:.45;cursor:default}@media(max-width:700px){.admin-table-controls label{flex:1}.admin-table-pagination{align-items:flex-start;flex-direction:column}}
