/* Find My Shed (/shed-size-planner): the site's cream, forest green and warm accents */
.fms-main{padding:clamp(.5rem,2vw,1.2rem) 0 clamp(2.5rem,6vw,4.5rem)}
.fms-intro{margin:.4rem 0 1.1rem;max-width:760px}
.fms-intro h1{font-size:clamp(2.1rem,4.6vw,3.4rem);margin-bottom:.3em}
.fms-intro h1:focus{outline:none}
.fms-intro--slim{margin:.2rem 0 .5rem}
.fms-intro--slim .eyebrow{margin:0}
.fms-ic{width:22px;height:22px;flex:none}
.fms-ic--s{width:16px;height:16px}
.fms-ic--xl{width:56px;height:56px}

/* progress */
.fms-progress{list-style:none;margin:0 0 1rem;padding:0;display:flex;gap:.4rem;counter-reset:s}
.fms-progress li{flex:1;min-width:0}
.fms-progress li>span,.fms-progress li>button{display:flex;align-items:center;gap:.55rem;width:100%;min-height:48px;padding:.45rem .8rem;border-radius:12px;border:1px solid var(--line);background:var(--paper);font:600 .92rem/1.15 var(--sans);color:var(--muted);text-align:left}
.fms-progress li>button{cursor:pointer;color:var(--ink)}
.fms-progress li>button:hover{border-color:var(--forest)}
.fms-progress b{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--cream-2);color:var(--forest);font-size:.8rem}
.fms-progress li.is-cur>span{background:var(--forest);border-color:var(--forest);color:#fff}
.fms-progress li.is-cur b{background:#fff;color:var(--forest)}
.fms-progress li.is-done b{background:var(--ok);color:#fff}
@media (max-width:560px){.fms-progress li>span,.fms-progress li>button{flex-direction:column;justify-content:center;gap:.2rem;padding:.4rem .3rem;font-size:.78rem;text-align:center}}

/* product being checked */
.fms-ctx{display:flex;align-items:center;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap;margin:0 0 1rem;padding:.65rem .9rem;background:var(--sage-soft);border-radius:12px}
.fms-ctx>div{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.fms-k{display:block;font:800 .68rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--forest-3)}
.fms-ctx .fms-k{display:inline}

/* cards and questions */
.fms-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.1rem,3vw,2rem);box-shadow:var(--shadow-1)}
.fms-step-h{font-size:clamp(1.55rem,3vw,2.15rem);margin-bottom:.3em}
.fms-step-h:focus{outline:none}
.fms-q>.muted{margin-bottom:1.1rem}
.fms-reasons{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.65rem}
.fms-reason,.fms-use{position:relative;display:flex;align-items:center;gap:.75rem;min-height:72px;padding:.8rem 2.6rem .8rem .85rem;border:1.5px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s}
.fms-reason:hover,.fms-use:hover{border-color:var(--forest-3)}
.fms-reason input,.fms-use input{position:absolute;opacity:0;width:1px;height:1px}
.fms-reason:focus-within,.fms-use:focus-within{outline:3px solid var(--focus);outline-offset:2px}
.fms-reason.is-on,.fms-use.is-on{border-color:var(--forest);background:#f3f6f0;box-shadow:0 0 0 1px var(--forest) inset}
.fms-reason-ic{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:var(--cream-2);color:var(--forest)}
.fms-reason.is-on .fms-reason-ic,.fms-use.is-on .fms-reason-ic{background:var(--forest);color:#fff}
.fms-reason-t{font-weight:700;line-height:1.3}
.fms-tick{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-2);color:transparent}
.fms-tick .fms-ic{width:16px;height:16px}
.is-on>.fms-tick{background:var(--forest);border-color:var(--forest);color:#fff}
@media (prefers-reduced-motion:no-preference){.is-on>.fms-tick{animation:fmsPop .25s ease-out}}
@keyframes fmsPop{from{transform:translateY(-50%) scale(.6)}to{transform:translateY(-50%) scale(1)}}
.fms-other{margin-top:1rem;max-width:520px}
.fms-uses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.fms-use-t strong{display:block;line-height:1.25}
.fms-use-t span{display:block;font-size:.86rem;color:var(--muted);line-height:1.35;margin-top:.15rem}
@media (max-width:620px){.fms-uses{grid-template-columns:minmax(0,1fr)}}
.fms-why{margin:.9rem 0 0;padding:.65rem .85rem;background:var(--cream);border-radius:10px;font-size:.92rem}

/* storage unit */
.fms-units{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.55rem}
.fms-opt{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:68px;padding:.7rem .85rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;font:inherit;text-align:left;cursor:pointer}
.fms-opt strong{font-size:1.05rem}
.fms-opt span{font-size:.84rem;color:var(--muted);line-height:1.3}
.fms-opt:hover{border-color:var(--forest-3)}
.fms-opt[aria-checked="true"]{border-color:var(--forest);background:#f3f6f0;box-shadow:0 0 0 1px var(--forest) inset}
.fms-sub{margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.fms-sub h3{font:700 1rem/1.3 var(--sans);margin-bottom:.6rem}
.fms-seg{display:flex;flex-wrap:wrap;gap:.4rem}
.fms-segb{min-height:44px;padding:.5rem .95rem;border-radius:999px;border:1.5px solid var(--line-2);background:#fff;font:600 .9rem/1.1 var(--sans);color:var(--ink);cursor:pointer}
.fms-segb:hover{border-color:var(--forest)}
.fms-segb[aria-checked="true"]{background:var(--forest);border-color:var(--forest);color:#fff}
.fms-fine1,.fms-hint1{font-size:.86rem;color:var(--muted);margin:.55rem 0 0;line-height:1.45}
.fms-money{display:flex;align-items:center;gap:.45rem;margin-top:.5rem;max-width:280px}
.fms-money input{flex:1;min-height:46px;padding:.5rem .7rem;border:1.5px solid var(--line-2);border-radius:10px;font:inherit;background:#fff}
.fms-yearly{margin:.6rem 0 0;min-height:1.4em}

/* nav: Back / Next; sticky on phones without covering content */
.fms-nav{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:1.4rem}
.fms-nav .btn svg{width:18px;height:18px}
.fms-nav-hint{margin:.45rem 0 0;text-align:right;font-size:.86rem;color:var(--muted)}
.fms-nav-hint.is-shake{color:var(--danger);font-weight:600}
@media (prefers-reduced-motion:no-preference){.fms-nav-hint.is-shake{animation:fmsShake .35s}}
@keyframes fmsShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media (max-width:900px){
  .fms-nav{position:sticky;bottom:0;z-index:5;margin:1.2rem calc(-1 * clamp(1.1rem,3vw,2rem)) calc(-1 * clamp(1.1rem,3vw,2rem));padding:.7rem clamp(1.1rem,3vw,2rem) calc(.7rem + env(safe-area-inset-bottom));background:rgba(255,253,248,.96);border-top:1px solid var(--line);border-radius:0 0 var(--r-lg) var(--r-lg);backdrop-filter:blur(6px)}
  .fms-nav .btn--lg{flex:1;max-width:340px}
  .fms-main--results .fms-nav{display:none}
}

/* split: questions beside the plan */
.fms-split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(1rem,2.5vw,1.8rem);align-items:start}
.fms-aside{position:sticky;top:calc(var(--header-h) + 12px)}
@media (max-width:900px){.fms-split{grid-template-columns:minmax(0,1fr)}.fms-aside{position:static;order:-1}}

/* items */
.fms-search{display:flex;align-items:center;gap:.5rem;padding:0 .8rem;border:1.5px solid var(--line-2);border-radius:12px;background:#fff;margin-bottom:.8rem;color:var(--muted)}
.fms-search:focus-within{border-color:var(--forest);outline:3px solid var(--focus);outline-offset:1px}
.fms-search input{flex:1;min-width:0;min-height:46px;border:0;background:none;font:inherit;outline:none}
.fms-results-k{font-size:.9rem;color:var(--muted);margin:0 0 .5rem}
.fms-link{background:none;border:0;padding:0;font:inherit;color:var(--forest-3);text-decoration:underline;cursor:pointer}
.fms-tabs{display:flex;gap:.35rem;overflow-x:auto;padding:.1rem .1rem .5rem;margin:0 0 .4rem;scrollbar-width:thin}
.fms-tab{flex:none;min-height:42px;padding:.45rem .9rem;border-radius:999px;border:1.5px solid var(--line);background:var(--cream);font:600 .88rem/1 var(--sans);color:var(--ink);cursor:pointer;white-space:nowrap}
.fms-tab[aria-selected="true"]{background:var(--forest);border-color:var(--forest);color:#fff}
.fms-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.fms-row,.fms-unitrow{border:1px solid var(--line);border-radius:12px;background:#fff;transition:border-color .15s,background-color .15s}
.fms-unitrow{margin-top:.6rem;background:#f3f6f0;border-color:var(--sage)}
.fms-row.is-on{border-color:var(--forest-3);background:#f8faf5}
.fms-row--none{padding:.8rem;color:var(--muted)}
.fms-row-main{display:flex;align-items:center;gap:.7rem;padding:.5rem .6rem}
.fms-row-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:10px;background:var(--cream-2);color:var(--forest)}
.fms-row.is-on .fms-row-ic{background:var(--forest);color:#fff}
.fms-row-t{flex:1;min-width:0}
.fms-row-t strong{display:block;line-height:1.25}
.fms-row-t span{display:block;font-size:.84rem;color:var(--muted)}
.fms-qty{display:flex;align-items:center;gap:.15rem;flex:none}
.fms-qty output{min-width:1.8em;text-align:center;font-weight:700}
.fms-qbtn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line-2);background:#fff;font:600 1.3rem/1 var(--sans);color:var(--forest);cursor:pointer}
.fms-qbtn:hover:not([disabled]){border-color:var(--forest);background:var(--cream)}
.fms-qbtn[data-plus]{background:var(--forest);border-color:var(--forest);color:#fff}
.fms-qbtn[data-plus]:hover{background:var(--forest-3)}
.fms-qbtn[disabled]{opacity:.35;cursor:not-allowed}
.fms-dims{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.4rem 1rem;padding:0 .7rem .7rem 3.6rem}
.fms-dims .fms-hint1{flex-basis:100%;margin:0}
.fms-ftin{border:0;margin:0;padding:0;display:flex;align-items:center;gap:.3rem}
.fms-ftin legend{float:left;font-size:.8rem;font-weight:700;margin-right:.3rem;padding:0}
.fms-ftin label{display:flex;align-items:center;gap:.2rem;font-size:.82rem;color:var(--muted)}
.fms-ftin input,.fms-cqty input{width:3.6em;min-height:40px;padding:.3rem .4rem;border:1.5px solid var(--line-2);border-radius:8px;font:inherit;text-align:center;background:#fff}
@media (max-width:520px){.fms-dims{padding-left:.7rem}}
.fms-custom{margin-top:1rem;border:1px dashed var(--line-2);border-radius:12px;background:var(--cream)}
.fms-custom>summary{cursor:pointer;padding:.8rem 1rem;font-weight:700;min-height:44px;list-style-position:inside}
.fms-cform{padding:0 1rem 1rem}
.fms-cform .fms-dims{padding:0;margin:.4rem 0}
.fms-cform .field input[type=text]{width:100%;min-height:44px;padding:.45rem .7rem;border:1.5px solid var(--line-2);border-radius:10px;font:inherit;background:#fff}
.fms-cqty{display:flex;align-items:center;gap:.4rem}
.fms-cqty label{font-size:.8rem;font-weight:700}
.fms-cveh{display:flex;gap:.5rem;align-items:center;margin:.3rem 0 .4rem;font-size:.92rem}
.fms-customs{list-style:none;margin:0;padding:0 1rem}
.fms-customs li{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.5rem 0;border-bottom:1px solid var(--line)}
.fms-customs-b{display:flex;gap:.3rem}
.fms-editing{margin:.2rem 0 .5rem}

/* the plan panel */
.fms-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(.9rem,2vw,1.3rem);box-shadow:var(--shadow-1)}
.fms-panel--empty{text-align:center;padding:2.4rem 1.4rem;color:var(--forest)}
.fms-panel--empty p{color:var(--ink);margin:.4rem 0 0}
.fms-empty-art{display:grid;place-items:center;width:96px;height:96px;margin:0 auto .6rem;border-radius:24px;background:var(--cream-2)}
.fms-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem;flex-wrap:wrap;margin-bottom:.6rem}
.fms-panel-size{display:block;font:400 clamp(1.5rem,3vw,2rem)/1.1 var(--serif)}
.fms-status{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:999px;font:700 .8rem/1.2 var(--sans)}
.fms-status--ok{background:#e3efe5;color:var(--ok)}
.fms-status--mid{background:#efe9dc;color:#5d4a2e}
.fms-status--warn{background:#f6e7c8;color:#7a5410}
.fms-status--bad{background:#f4ddd8;color:var(--danger)}
.fms-status--bad svg{transform:rotate(45deg)}
.fms-plan{margin:0;background:#fbf8f1;border-radius:14px;padding:.4rem;touch-action:none}
.fms-svg{width:100%;height:auto;max-height:min(62vh,560px);margin:0 auto;user-select:none;-webkit-user-select:none}
.fms-panel.is-big .fms-svg{max-height:none}
.fms-wall{fill:#5b4a3a}
.fms-floor{fill:#f6efe1}
.fms-grid line{stroke:#e6dcc8;stroke-width:.6}
.fms-door{fill:var(--gold)}
.fms-swing{fill:none;stroke:var(--gold);stroke-width:1;stroke-dasharray:3 3;opacity:.8}
.fms-z rect{stroke-width:1;stroke-dasharray:5 3}
.fms-z--walk rect{fill:rgba(47,107,69,.1);stroke:rgba(47,107,69,.5)}
.fms-z--entry rect{fill:rgba(201,149,47,.12);stroke:rgba(201,149,47,.65)}
.fms-zt{text-anchor:middle;dominant-baseline:middle;fill:#3d5546;font-family:var(--sans);font-weight:700;opacity:.85}
.fms-clear{fill:url(#fms-hatch);stroke:rgba(140,95,60,.5);stroke-width:.8;stroke-dasharray:3 2}
#fms-hatch line{stroke:rgba(140,95,60,.35);stroke-width:2}
.fms-work rect{fill:rgba(143,162,149,.18);stroke:var(--sage);stroke-width:1;stroke-dasharray:6 3}
.fms-grow rect{fill:rgba(255,255,255,.5);stroke:var(--clay);stroke-width:1.4;stroke-dasharray:6 4}
.fms-it{cursor:grab;outline:none}
.fms-it rect{stroke:rgba(23,32,26,.4);stroke-width:1;transition:stroke .15s}
.fms-it:hover rect,.fms-it:focus rect{stroke:var(--forest);stroke-width:2.2}
.fms-it:focus-visible rect{stroke:var(--focus);stroke-width:3.5}
.fms-it.is-sel rect{stroke:var(--forest);stroke-width:3}
.fms-it.is-drag{cursor:grabbing;opacity:.85}
.fms-it.is-blocked rect{stroke:var(--danger);stroke-dasharray:4 3}
.fms-it-ic{fill:none;stroke:#2c3a31;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.75;pointer-events:none}
.fms-it-t{text-anchor:middle;dominant-baseline:middle;fill:#17201a;font-family:var(--sans);font-weight:700;pointer-events:none}
.fms-dim{text-anchor:middle;dominant-baseline:middle;fill:var(--muted);font-family:var(--sans);font-weight:700}
@media (prefers-reduced-motion:no-preference){
  .fms-it.is-new{animation:fmsIn .45s cubic-bezier(.2,.8,.3,1.2) both}
  .fms-grow{animation:fmsFade .4s ease-out}
}
@keyframes fmsIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes fmsFade{from{opacity:.4}to{opacity:1}}
.fms-note{min-height:1.2em;margin:.4rem 0 0;font-size:.86rem;font-weight:600;color:var(--forest-3)}
.fms-hint{margin:.4rem 0 0;font-size:.82rem;color:var(--muted)}
.fms-selbox{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.5rem;padding:.55rem .65rem;border-radius:12px;background:var(--cream-2)}
.fms-selbox strong{margin-right:auto;font-size:.92rem}
.fms-nudge{display:flex;gap:.2rem}
.fms-tools{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}
.fms-tool{display:inline-flex;align-items:center;gap:.35rem;min-height:40px;min-width:40px;justify-content:center;padding:.35rem .7rem;border-radius:999px;border:1.5px solid var(--line-2);background:#fff;font:600 .84rem/1 var(--sans);color:var(--ink);cursor:pointer}
.fms-tool svg{width:17px;height:17px}
.fms-tool:hover:not([disabled]){border-color:var(--forest);color:var(--forest)}
.fms-tool[disabled]{opacity:.4;cursor:not-allowed}
.fms-tool--expand{margin-left:auto}
.fms-legend{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem .9rem;margin:.65rem 0 0;padding:0;font-size:.78rem;color:var(--muted)}
.fms-legend li{display:flex;align-items:center;gap:.35rem}
.lg{display:inline-block;width:14px;height:10px;border-radius:3px;border:1px dashed}
.lg--walk{background:rgba(47,107,69,.12);border-color:rgba(47,107,69,.6)}
.lg--entry{background:rgba(201,149,47,.15);border-color:rgba(201,149,47,.8)}
.lg--clear{background:repeating-linear-gradient(45deg,rgba(140,95,60,.35) 0 2px,transparent 2px 5px);border-color:rgba(140,95,60,.6)}
.lg--work{background:rgba(143,162,149,.25);border-color:var(--sage)}
.lg--grow{background:#fff;border-color:var(--clay)}
.lg--blocked{background:#fff;border-color:var(--danger)}
.lg--door{background:var(--gold);border:0;height:5px}
.fms-msg{margin:.7rem 0 0;padding:.65rem .8rem;border-radius:10px;font-size:.9rem}
.fms-msg p{margin:0}.fms-msg p+p{margin-top:.35rem}
.fms-msg--err{background:#f8e6e2;color:#6d1f19}
.fms-fine{margin:.6rem 0 0;padding-left:1.1rem;font-size:.84rem;color:var(--muted)}
.fms-fine li+li{margin-top:.25rem}
/* phones: the plan opens from a compact strip */
.fms-peek{display:none}
@media (max-width:900px){
  .fms-peek{display:flex;justify-content:space-between;align-items:center;gap:.6rem;width:100%;min-height:52px;padding:.55rem .9rem;border-radius:14px;border:1px solid var(--line);background:var(--paper);font:inherit;text-align:left;box-shadow:var(--shadow-1);cursor:pointer}
  .fms-peek-b{flex:none;padding:.35rem .75rem;border-radius:999px;background:var(--forest);color:#fff;font-weight:700;font-size:.85rem}
  .fms-aside .fms-panel{display:none;margin-top:.5rem}
  .fms-peek-open .fms-aside .fms-panel{display:block}
  .fms-aside .fms-panel--empty{display:none!important}
  .fms-svg{max-height:52vh}
}

/* results */
.fms-res-head{margin:.3rem 0 1rem}
.fms-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem;margin-bottom:1.1rem}
.fms-optcard{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;padding:1rem 1.05rem;border:1.5px solid var(--line);border-radius:18px;background:var(--paper);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .2s,transform .2s}
.fms-optcard:hover{border-color:var(--forest-3);transform:translateY(-2px);box-shadow:var(--shadow-1)}
.fms-optcard.is-on{border-color:var(--forest);box-shadow:0 0 0 2px var(--forest) inset,var(--shadow-1)}
.fms-optcard-k{display:flex;align-items:center;gap:.45rem;font:800 .7rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--forest-3)}
.fms-optcard-k em{font-style:normal;letter-spacing:.04em;text-transform:none;font-size:.75rem;background:var(--forest);color:#fff;padding:.15rem .5rem;border-radius:999px}
.fms-optcard-size{font:400 2rem/1 var(--serif)}
.fms-optcard-why{font-size:.88rem;color:var(--muted);line-height:1.4}
.fms-optcard-row{display:flex;justify-content:space-between;gap:.6rem;width:100%;font-size:.84rem;border-top:1px solid var(--line);padding-top:.35rem}
.fms-optcard-row span{color:var(--muted)}
.fms-optcard-price{display:flex;flex-direction:column;margin-top:auto;padding-top:.3rem}
.fms-optcard-price b{font-size:1.25rem}
.fms-optcard-price small{font-size:.8rem;font-weight:600;color:var(--muted)}
.fms-optcard-price span{font-size:.8rem;color:var(--muted)}
.fms-optcard-stock{font-size:.78rem;font-weight:700;color:var(--ok);background:#e3efe5;padding:.2rem .55rem;border-radius:999px}
.fms-picked{margin:-.4rem 0 1rem;font-size:.92rem}
.fms-res{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1rem,2.5vw,1.8rem);align-items:start}
@media (max-width:900px){.fms-res{grid-template-columns:minmax(0,1fr)}}
.fms-h3{font:700 1.05rem/1.3 var(--sans);margin:0 0 .6rem}
.fms-fits{margin-top:1rem}
.fms-fitlist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.3rem .8rem;font-size:.92rem}
.fms-fitlist li{display:flex;gap:.35rem;align-items:center}
.fms-fitlist li svg{color:var(--ok)}
.fms-fitlist li.is-out{color:var(--danger)}
.fms-fitlist li.is-out svg{color:var(--danger);transform:rotate(45deg)}
.fms-styles{display:grid;gap:.5rem}
.fms-style{display:flex;align-items:center;gap:.8rem;padding:.5rem;border:1.5px solid var(--line);border-radius:14px;background:#fff;font:inherit;text-align:left;cursor:pointer}
.fms-style:hover{border-color:var(--forest-3)}
.fms-style.is-on{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest) inset;background:#f8faf5}
.fms-style img{width:108px;height:81px;object-fit:cover;border-radius:10px;flex:none}
.fms-style-t{display:flex;flex-direction:column;gap:.15rem;min-width:0}
.fms-style-t strong{font-size:1rem}
.fms-style-t>span{font-size:.82rem;color:var(--muted);line-height:1.35}
.fms-style-t .fms-style-p{color:var(--ink);font-size:.88rem}
.fms-buy{margin-top:1rem;padding:1.1rem 1.15rem;border-radius:18px;background:var(--forest);color:var(--forest-ink)}
.fms-buy p{margin:0}
.fms-buy-name{font:400 1.45rem/1.15 var(--serif);color:#fff}
.fms-buy-price{margin:.35rem 0 .2rem!important;font-size:1rem}
.fms-buy-price strong{font-size:1.6rem;color:#fff}
.fms-buy-price span{color:var(--forest-muted)}
.fms-buy-terms{font-size:.8rem;color:var(--forest-muted);line-height:1.45;margin-bottom:.9rem!important}
.fms-buy .btn--primary{background:#fff;color:var(--forest);border-color:#fff;min-height:56px;font-size:1.08rem}
.fms-buy .btn--primary:hover{background:var(--cream)}
.fms-buy-alt{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.55rem}
.fms-buy .fms-buy-alt .btn{color:#fff;border-color:rgba(255,255,255,.5);white-space:normal;text-align:center}
.fms-buy .fms-buy-alt .btn:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.fms-buy .fms-buy-alt svg{width:18px;height:18px}
.fms-buy-note{font-size:.8rem;color:var(--forest-muted);margin-top:.7rem!important}
.fms-buy a:not(.btn){color:#fff}
.fms-tips{margin:0 0 .8rem;padding-left:1.1rem}
.fms-compare{margin-top:1rem;padding:1rem 1.1rem;border-radius:16px;background:var(--cream-2);font-size:.92rem}
.fms-compare p{margin:0 0 .5rem}
.fms-stock{margin-top:1.6rem;padding:1.1rem;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--paper)}
.fms-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem}
.fms-stockcard{position:relative;display:flex;flex-direction:column;gap:.2rem;padding-bottom:.6rem;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;color:var(--ink);text-decoration:none;font-size:.86rem}
.fms-stockcard:hover{border-color:var(--forest)}
.fms-stockcard img,.fms-stock-noimg{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--cream-2)}
.fms-stock-noimg{display:grid;place-items:center;color:var(--muted)}
.fms-stockcard strong,.fms-stockcard>span:last-child{padding:0 .7rem}
.fms-stockcard>span:last-child{color:var(--muted)}
.fms-stock-b{position:absolute;top:.5rem;left:.5rem;background:var(--ok);color:#fff;font-weight:700;font-size:.72rem;padding:.2rem .5rem;border-radius:999px}
.fms-allsizes{margin-top:1.4rem;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.fms-allsizes>summary{cursor:pointer;padding:.9rem 1.1rem;font-weight:700;min-height:48px}
.fms-allsizes>.muted{padding:0 1.1rem;margin:0 0 .6rem}
.fms-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.45rem;padding:0 1.1rem 1.1rem}
.fms-szchip{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.55rem .7rem;border-radius:12px;border:1.5px solid var(--line);background:#fff;font:inherit;font-size:.8rem;text-align:left;cursor:pointer;border-left-width:5px}
.fms-szchip strong{font-size:.98rem}
.fms-szchip span{color:var(--muted);line-height:1.25}
.fms-szchip--ok{border-left-color:var(--ok)}
.fms-szchip--mid{border-left-color:var(--gold)}
.fms-szchip--warn{border-left-color:var(--clay)}
.fms-szchip--bad{border-left-color:var(--line-2);opacity:.75}
.fms-szchip.is-on{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest) inset}
.fms-foot{margin-top:1.4rem}
.fms-estimate{font-size:.82rem;color:var(--muted);max-width:80ch}
.fms-foot-b{display:flex;flex-wrap:wrap;gap:.45rem}
.fms-foot-b .btn svg{width:16px;height:16px}
.fms-share-out{margin:.5rem 0 0;font-size:.88rem;min-height:1.2em}
.fms-share-in{width:100%;max-width:520px;min-height:40px;padding:.3rem .5rem;border:1px solid var(--line-2);border-radius:8px;font:inherit;font-size:.82rem}
.fms-adv{margin-top:1rem;border:1px solid var(--line);border-radius:14px;background:#fff}
.fms-adv>summary{cursor:pointer;padding:.8rem 1rem;font-weight:700;min-height:48px;display:flex;align-items:center;gap:.5rem}
.fms-adv>summary span{font-weight:600;font-size:.78rem;color:var(--muted);background:var(--cream-2);padding:.15rem .5rem;border-radius:999px}
.fms-adv>*:not(summary){margin-left:1rem;margin-right:1rem}
.fms-adv>*:last-child{margin-bottom:1rem}
.fms-range{margin:.6rem 0}
.fms-range label{display:flex;justify-content:space-between;font-size:.92rem;font-weight:600}
.fms-range input{width:100%;accent-color:var(--forest);min-height:36px}
.fms-fs{border:0;padding:0;margin:.8rem 0}
.fms-fs legend{font-weight:600;font-size:.92rem;margin-bottom:.4rem;padding:0}
.fms-opt1{margin:.8rem 0}
.fms-optk{display:block;font-weight:600;font-size:.92rem;margin-bottom:.35rem}
.fms-grow-row{display:flex;align-items:center;gap:.7rem}
.fms-grow-row .fms-hint1{margin:0}
.fms-page .site-footer{margin-top:0}
.fms-mbar{display:none}
@media (max-width:900px){
  .fms-mbar{position:sticky;bottom:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin:1rem calc(-1 * var(--gutter)) 0;padding:.65rem var(--gutter) calc(.65rem + env(safe-area-inset-bottom));background:rgba(255,253,248,.97);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(23,32,26,.08);font-size:.84rem;line-height:1.3}
  .fms-mbar strong{display:block;font-size:.92rem}
  .fms-mbar .btn{flex:none}
  .fms-opts{grid-template-columns:minmax(0,1fr);gap:.55rem}
  .fms-optcard{padding:.8rem .9rem}
  .fms-optcard-size{font-size:1.6rem}
  .fms-optcard-styles{display:none!important}
}
