.hfp,.hfp-total{direction:rtl;text-align:right;--hfp-accent:#d4a017;--hfp-ink:#2b2b2b;--hfp-muted:#777;--hfp-line:#e6e2d8}
.hfp{margin:0 0 1rem}
.hfp-title{font-size:1.15rem;margin:0 0 .75rem}
.hfp-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:.75rem}
.hfp-item{border:1px solid var(--hfp-line);border-radius:12px;padding:.75rem;background:#fff}
.hfp-fieldset{border:0;margin:0;padding:0;min-width:0}
.hfp-item-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem}
.hfp-thumb img{width:56px;height:56px;object-fit:cover;border-radius:8px;display:block}
.hfp-item-name{font-size:1rem;font-weight:600;margin:0;line-height:1.6;color:var(--hfp-ink)}
.hfp-item-name a{color:inherit;text-decoration:none}
.hfp-item-name a:hover{text-decoration:underline}
.hfp-qty{color:var(--hfp-muted);font-weight:400;margin-inline-start:.25rem}
.hfp-badge{display:inline-block;font-size:.72rem;font-weight:400;padding:0 .5rem;border-radius:99px;margin-inline-start:.4rem;vertical-align:middle}
.hfp-badge.is-req{background:#fff4d6;color:#8a6500}.hfp-badge.is-opt{background:#eef3ee;color:#3c6e3c}
.hfp-options{display:flex;flex-wrap:wrap;gap:.5rem}
.hfp-chip{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:88px;min-height:48px;padding:.4rem .75rem;border:1.5px solid var(--hfp-line);border-radius:10px;cursor:pointer;transition:border-color .15s,background-color .15s;background:#fff;color:var(--hfp-ink)}
.hfp-chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.hfp-chip-w{font-weight:600;font-size:.9rem}
.hfp-chip-p{font-size:.78rem;color:var(--hfp-muted)}
.hfp-chip:hover{border-color:var(--hfp-accent)}
.hfp-chip:has(input:checked){border-color:var(--hfp-accent);background:#fffaf0;box-shadow:0 0 0 1px var(--hfp-accent) inset}
.hfp-chip:has(input:focus-visible){outline:2px solid #1a73e8;outline-offset:2px}
.hfp-chip.is-out{opacity:.5;cursor:not-allowed;text-decoration:line-through}
.hfp-chip.is-out input{cursor:not-allowed}
.hfp-select{width:100%;min-height:44px;padding:.4rem .6rem;border:1.5px solid var(--hfp-line);border-radius:10px;background:#fff}
.hfp-error{color:#b42318;background:#fef3f2;border-radius:8px;padding:.5rem .75rem;margin:.75rem 0 0}
.hfp-total{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin:.75rem 0;padding:.75rem 1rem;border-radius:12px;background:#faf7ef}
.hfp-total-label{color:var(--hfp-muted)}
.hfp-total-old{color:var(--hfp-muted);font-size:.9rem}
.hfp-total-value{font-size:1.35rem;font-weight:700;color:var(--hfp-ink)}
.hfp-buy{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;border-radius:12px;cursor:pointer}
.hfp-buy[aria-disabled=true]{opacity:.6}
.hfp-buy.loading{pointer-events:none;opacity:.7}
@media (min-width:768px){.hfp-thumb img{width:64px;height:64px}}
@media (max-width:767px){.hfp-sticky-yes{position:sticky;bottom:0;z-index:20;background:#fff;padding:.5rem;box-shadow:0 -4px 12px rgba(0,0,0,.08)}}
@media (prefers-reduced-motion:reduce){.hfp-chip{transition:none}}
