/* Shared StyleTi palette, type and cart across the constructor, shop and templates. */
:root{--brand-paper:#f2efe6;--brand-surface:#faf8f2;--brand-ink:#11100f;--brand-orange:#ff5b33;--brand-lime:#b7ff4a}

/* The cart is the same fixed control on all three shopping pages. */
.styleti-cart-float{
  position:fixed!important;right:clamp(16px,3vw,36px)!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;z-index:950!important;
  display:flex!important;align-items:center;justify-content:center;gap:12px;
  min-height:52px;padding:10px 14px!important;border:2px solid var(--brand-ink)!important;
  border-radius:0!important;background:var(--brand-ink)!important;color:#fff!important;
  box-shadow:5px 5px 0 var(--brand-orange)!important;
  font:900 12px/1 Arial,Helvetica,sans-serif!important;letter-spacing:.1em!important;
  text-decoration:none;cursor:pointer;transition:translate .2s,box-shadow .2s
}
.styleti-cart-float:hover{translate:0 -3px;box-shadow:5px 8px 0 var(--brand-orange)!important}
.styleti-cart-float:focus-visible{outline:3px solid var(--brand-orange);outline-offset:5px}
.styleti-cart-float b,.styleti-cart-float span:last-child{
  display:grid;place-items:center;min-width:26px;height:26px;padding:0 5px;
  border:0;border-radius:0;background:var(--brand-lime);color:var(--brand-ink);
  font:900 11px/1 Arial,Helvetica,sans-serif;letter-spacing:0
}
.catalog-page .catalog-cart{gap:12px}
.modal-v26 .modal-kicker-v26{font:800 9px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.modal-v26 .cart-card-v26 h2{font:900 28px/1.1 Arial Black,Arial,Helvetica,sans-serif!important;letter-spacing:-.04em;text-transform:uppercase}
.modal-v26 .cart-checkout-v26{background:var(--brand-lime);color:var(--brand-ink);font:900 12px/1 Arial,Helvetica,sans-serif!important}
.modal-v26 .cart-checkout-v26:hover{box-shadow:5px 5px 0 var(--brand-orange)}

/* Use one type system and the same cream, ink, orange and lime on templates. */
body.template-page{--ink:var(--brand-ink);--paper:var(--brand-paper);--blue:var(--brand-orange);--line:#d9d3c7;background:var(--brand-paper);font-family:Arial,Helvetica,sans-serif}
.template-page button,.template-page input,.template-page select,.template-page textarea{font-family:Arial,Helvetica,sans-serif}
.template-page .templates-header{height:78px;background:var(--brand-paper);border-bottom:1px solid var(--brand-ink)}
.template-page .templates-header nav a,.template-page .header-phone{font-family:Arial,Helvetica,sans-serif;font-weight:800}
.template-page .intro h1{font:900 clamp(46px,8.2vw,106px)/1.03 Arial Black,Arial,Helvetica,sans-serif;letter-spacing:-.067em}
.template-page .intro h1 em{color:var(--brand-orange)}
.template-page .section-heading h2{font:900 clamp(20px,2.7vw,34px)/1.02 Arial Black,Arial,Helvetica,sans-serif;letter-spacing:-.045em}
.template-page .choice-info strong{font:900 clamp(24px,3vw,36px)/1 Arial Black,Arial,Helvetica,sans-serif;letter-spacing:-.05em}
.template-page .choice-art b{font-family:Arial Black,Arial,Helvetica,sans-serif}
.template-page .template-choice,.template-page .settings{background:var(--brand-surface)}
.template-page .template-choice.is-selected .choice-info{background:var(--brand-lime)}
.template-page .settings-top span{color:var(--brand-orange)}
.template-page .add-button{background:var(--brand-orange);color:var(--brand-ink)}
.template-page .checkout-link{background:var(--brand-lime);color:var(--brand-ink)}
.template-page .file-field{background:var(--brand-paper)}
.template-page .file-field:hover,.template-page .file-field:focus-within{border-color:var(--brand-orange)}
.template-page .form-block input[type=text]:focus,.template-page .option-line select:focus{outline-color:var(--brand-orange)}
.template-page>footer{background:var(--brand-ink);color:#fff;border-top:0}

/* Template cart and checkout now match the established shop/constructor dialogs. */
.template-page .modal-backdrop{z-index:10000;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}
.template-page .modal-sheet{width:min(760px,100%);max-height:92dvh;overflow:auto;padding:24px;background:#121212;color:#fff;border:1px solid #303030;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.template-page .checkout-sheet{width:min(760px,100%)}
.template-page .modal-kicker{color:var(--brand-lime);font-size:9px;font-weight:800;letter-spacing:.17em}
.template-page .modal-sheet h2{margin:8px 40px 20px 0;font:900 28px/1.1 Arial Black,Arial,Helvetica,sans-serif;letter-spacing:-.04em}
.template-page .modal-close{color:#aaa;font-size:28px;top:14px}
.template-page .modal-close:hover{color:#fff}
.template-page .cart-items{max-height:42dvh}
.template-page .cart-empty{margin:16px 0 28px;color:#aaa;font-size:12px;line-height:1.5}
.template-page .cart-item{background:#181818;border:1px solid #303030;color:#fff}
.template-page .cart-info strong{font-weight:800}
.template-page .cart-info small,.template-page .cart-controls label{color:#aaa}
.template-page .cart-controls select,.template-page .cart-controls input{background:#111;border:1px solid #444;color:#fff}
.template-page .cart-item-end b{color:var(--brand-lime)}
.template-page .cart-remove{color:#aaa}
.template-page .cart-remove:hover{color:#fff}
.template-page .cart-totals,.template-page .checkout-summary{border-top:1px solid #303030}
.template-page .cart-totals{display:flex;justify-content:space-between;gap:20px;padding-top:12px}
.template-page .cart-totals p{display:flex;flex-direction:column;gap:5px;padding:0;border:0;color:#aaa;font-size:11px}
.template-page .cart-totals p:last-child{text-align:right}
.template-page .cart-totals p b{color:#fff;font-size:18px}
.template-page .cart-total{font-size:11px!important;font-weight:400}
.template-page .modal-primary{min-height:48px;margin-top:18px;border:0;background:var(--brand-lime);color:var(--brand-ink);font-size:12px;font-weight:900;justify-content:center;gap:10px}
.template-page .modal-primary:hover{box-shadow:5px 5px 0 var(--brand-orange)}
.template-page .modal-primary:disabled{opacity:.55;cursor:default}
.template-page .checkout-summary{margin-bottom:20px}
.template-page .checkout-summary p{color:#aaa;border-bottom:1px solid #303030}
.template-page .checkout-summary b{color:#fff}
.template-page .checkout-form label:not(.consent){color:#aaa}
.template-page .checkout-form input:not([type=checkbox]),.template-page .checkout-form select,.template-page .checkout-form textarea{background:#191919;color:#fff;border:1px solid #444}
.template-page .checkout-form input:focus,.template-page .checkout-form select:focus,.template-page .checkout-form textarea:focus{outline:2px solid var(--brand-orange);outline-offset:1px}
.template-page .delivery-note,.template-page .consent{color:#aaa}
.template-page .consent input{accent-color:var(--brand-lime)}

@media(max-width:580px){
  .styleti-cart-float{right:16px!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;min-height:48px;padding:9px 12px!important;font-size:11px!important}
  .template-page .modal-sheet{max-height:94dvh;padding:20px 16px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
  .template-page .cart-totals{gap:10px}
  .template-page .cart-totals p b{font-size:15px}
}
@media(max-width:480px){
  .template-page .intro h1{font-size:clamp(43px,12vw,62px);line-height:1.03}
  .template-page .choice-info strong{font-size:clamp(17px,4.5vw,23px);line-height:1.03}
}

/* Final order action is identical on all three checkout forms. */
.modal-v26 .styleti-submit-order,.template-page .styleti-submit-order{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;min-height:48px;margin-top:18px;padding:12px 16px;
  border:0;border-radius:0;background:var(--brand-lime);color:var(--brand-ink);
  font:900 12px/1 Arial,Helvetica,sans-serif;letter-spacing:.06em;
  text-transform:uppercase;cursor:pointer;transition:translate .2s,box-shadow .2s
}
.modal-v26 .styleti-submit-order::after{content:"↗";font-size:14px;line-height:1}
.template-page .styleti-submit-order span{font-size:14px;line-height:1}
.modal-v26 .styleti-submit-order:hover,.template-page .styleti-submit-order:hover{translate:0 -2px;box-shadow:5px 5px 0 var(--brand-orange)}
.modal-v26 .styleti-submit-order:focus-visible,.template-page .styleti-submit-order:focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}
.modal-v26 .styleti-submit-order:disabled,.template-page .styleti-submit-order:disabled{opacity:.55;cursor:wait;translate:none;box-shadow:none}
