/* Storefront: the "Personalize it" box on the product page.
   Mirrors the theme's form styling (navy/blue/sun, 14px radii, 2px borders). */
.tt-pers{--tp-navy:#0a3855;--tp-blue:#0ba8ff;--tp-sun:#fed33c;--tp-ink:#0b1a2a;--tp-body:#33475b;--tp-muted:#66788c;--tp-line:#e1e8ef;--tp-paper:#f4f7fb;
  margin:0 0 18px;padding:18px 20px;border:1px solid var(--tp-line);border-radius:16px;background:var(--tp-paper);position:relative}
.tt-pers::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,var(--tp-blue),var(--tp-sun))}
.tt-pers-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.tt-pers-title{font-family:"Bricolage Grotesque",system-ui,sans-serif;font-weight:700;font-size:1.05rem;color:var(--tp-ink);letter-spacing:-.01em}
.tt-pers-note{font-size:.82rem;color:var(--tp-muted)}
.tt-pers-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.tt-pers-field{display:flex;flex-direction:column;gap:6px;margin:0}
.tt-pers-field label{font-weight:600;font-size:.88rem;color:var(--tp-ink);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tt-pers-field label .required{color:#e5484d;text-decoration:none;border:0}
.tt-pers-price{font-size:.78rem;font-weight:700;color:var(--tp-navy);background:#fff;border:1px solid var(--tp-line);border-radius:999px;padding:2px 8px;line-height:1.5}
.tt-pers-price .amount{font-weight:700}
.woocommerce div.product .tt-pers .tt-pers-input,.tt-pers .tt-pers-input{width:100%;font:inherit;font-size:16px;color:var(--tp-ink);background:#fff;border:2px solid #dbe3ec;border-radius:14px;padding:11px 14px;min-height:48px;line-height:1.4;box-shadow:none;margin:0}
.tt-pers .tt-pers-input:focus{outline:none;border-color:var(--tp-blue);box-shadow:0 0 0 4px rgba(11,168,255,.15)}
.tt-pers select.tt-pers-input{-webkit-appearance:none;appearance:none;padding-right:38px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230a3855' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 14px center}
.tt-pers-type-number .tt-pers-input{max-width:8em;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.tt-pers-hint{font-size:.78rem;color:var(--tp-muted)}
@media (max-width:600px){.tt-pers{padding:16px;border-radius:14px}.tt-pers-fields{grid-template-columns:1fr}.tt-pers-type-number .tt-pers-input{max-width:none}}
/* cart / checkout: the typed values under the product name */
.woocommerce-cart .tt-pers-summary,.woocommerce ul.woocommerce-mini-cart .variation{font-size:.85rem}
