/* LT Fit & Style AI 1.5 – grafica in armonia con il tema LingerieTorino Blocksy.
   Usa le variabili del tema (--ltb-*); i valori dopo la virgola servono solo se il tema non c'è. */

.ltfs,.ltfs-sheet{
	--ltfs-ink:var(--ltb-ink,#1F171B);
	--ltfs-text:var(--ltb-text,#3B3136);
	--ltfs-muted:var(--ltb-muted,#7C6F75);
	--ltfs-line:var(--ltb-line,#EADDE2);
	--ltfs-blush:var(--ltb-blush,#F7EDF0);
	--ltfs-ivory:var(--ltb-ivory,#F6F5F3);
	--ltfs-mag:var(--ltb-magenta,#E5097F);
	--ltfs-mag-d:var(--ltb-magenta-dark,#B30763);
	--ltfs-display:var(--ltb-display,"Cormorant Garamond",Georgia,serif);
	--ltfs-sans:var(--ltb-sans,"Jost","Helvetica Neue",Arial,sans-serif);
	font-family:var(--ltfs-sans);
	color:var(--ltfs-text);
}

/* ---------- Riquadro nella scheda ---------- */
.ltfs{margin:14px 0 0;padding:16px 16px 16px;border:1px solid var(--ltfs-line);background:#fff}
.ltfs__head{display:flex;align-items:center;gap:12px}
.ltfs__mark{flex:0 0 38px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ltfs-blush);color:var(--ltfs-mag)}
.ltfs__who{flex:1 1 auto;min-width:0}
.ltfs__eyebrow{margin:0 0 3px;font:500 10.5px/1.3 var(--ltfs-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ltfs-mag-d)}
html body .ltfs__t{margin:0;font:400 23px/1.1 var(--ltfs-display);letter-spacing:0;color:var(--ltfs-ink)}
.ltfs__test{flex:0 0 auto;padding:3px 7px;border:1px dashed var(--ltfs-mag);font:500 10px/1 var(--ltfs-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ltfs-mag-d)}
.ltfs__facts{margin:14px 0 0;padding:0;list-style:none;border-top:1px solid var(--ltfs-line)}
.ltfs__fact{position:relative;margin:0;padding:9px 0 9px 16px;border-bottom:1px solid var(--ltfs-line);font:400 13.5px/1.45 var(--ltfs-sans);color:var(--ltfs-ink)}
.ltfs__fact::before{content:"";position:absolute;left:2px;top:1.05em;width:5px;height:5px;border-radius:50%;background:var(--ltfs-mag)}
.ltfs__fact--comp{color:var(--ltfs-text)}
.ltfs__chips,.ltfs-sheet__chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
html body .ltfs__chip{display:inline-flex;align-items:center;min-height:36px;margin:0;padding:0 13px;border:0;border-radius:2px;background:#fff;box-shadow:0 0 0 1px var(--ltfs-line);color:var(--ltfs-ink);font:400 13px/1.2 var(--ltfs-sans);letter-spacing:0;text-transform:none;cursor:pointer;transition:box-shadow .15s,background .15s}
html body .ltfs__chip:hover{box-shadow:0 0 0 1px var(--ltfs-ink);background:#fff;color:var(--ltfs-ink)}
html body .ltfs__ask{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;margin:14px 0 0;padding:0 16px;border:0;border-radius:2px;background:#fff;box-shadow:inset 0 0 0 1px var(--ltfs-ink);color:var(--ltfs-ink);font:500 12px/1 var(--ltfs-sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
html body .ltfs__ask:hover{background:var(--ltfs-ink);color:#fff}
html body :is(.ltfs__chip,.ltfs__ask):focus-visible{outline:2px solid var(--ltfs-mag);outline-offset:2px}

/* Link sotto le taglie, accanto a "Trova la mia taglia · Tabella taglie" */
.ltfs-sflink[hidden]{display:none}

/* ---------- Pannello ---------- */
html.ltfs-open,html.ltfs-open body{overflow:hidden}
.ltfs-sheet{position:fixed;inset:0;z-index:99997}
.ltfs-sheet[hidden]{display:none}
.ltfs-sheet__bg{position:absolute;inset:0;background:rgba(31,23,27,.42);opacity:0;transition:opacity .28s ease}
.ltfs-sheet__panel{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;height:88vh;height:88dvh;background:#fff;box-shadow:0 -12px 40px rgba(31,23,27,.14);transform:translateY(100%);transition:transform .32s cubic-bezier(.2,.7,.2,1);outline:0}
.ltfs-sheet.is-open .ltfs-sheet__bg{opacity:1}
.ltfs-sheet.is-open .ltfs-sheet__panel{transform:translateY(0)}
.ltfs-sheet__head{display:flex;align-items:center;gap:12px;padding:14px 10px 14px 16px;border-bottom:1px solid var(--ltfs-line)}
.ltfs-sheet__thumb{flex:0 0 40px;width:40px;aspect-ratio:2/3;background:var(--ltfs-ivory);overflow:hidden}
.ltfs-sheet__thumb img{display:block;width:100%;height:100%;object-fit:contain}
.ltfs-sheet__who{flex:1 1 auto;min-width:0}
.ltfs-sheet__t{margin:0 0 2px;font:400 22px/1.15 var(--ltfs-display);color:var(--ltfs-ink)}
.ltfs-sheet__sub{margin:0;font:400 12.5px/1.35 var(--ltfs-sans);color:var(--ltfs-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .ltfs-sheet__x{flex:0 0 44px;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--ltfs-ink);cursor:pointer}
.ltfs-sheet__body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:16px 16px 12px}
.ltfs-sheet__foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--ltfs-line);background:#fff}

.ltfs-hello{padding:14px 16px;background:var(--ltfs-ivory)}
.ltfs-hello__t{margin:0 0 4px;font:400 19px/1.25 var(--ltfs-display);color:var(--ltfs-ink)}
.ltfs-hello__d{margin:0;font:400 13.5px/1.5 var(--ltfs-sans);color:var(--ltfs-text)}
.ltfs-sheet__chips{margin:14px 0 4px}

/* Conversazione */
.ltfs-log{display:flex;flex-direction:column;gap:12px}
.ltfs-log:not(:empty){margin:16px 0 0}
.ltfs-msg{max-width:88%;margin:0;font:400 14.5px/1.6 var(--ltfs-sans)}
.ltfs-msg--q{align-self:flex-end;padding:10px 14px;background:var(--ltfs-blush);color:var(--ltfs-ink)}
.ltfs-msg--a{align-self:stretch;max-width:none;padding:2px 0 0 14px;border-left:2px solid var(--ltfs-mag);color:var(--ltfs-text)}
.ltfs-msg--a p{margin:0}
.ltfs-msg--err{color:var(--ltfs-mag-d)}
.ltfs-wait{align-self:flex-start;display:flex;align-items:center;gap:10px;font:400 13px/1 var(--ltfs-sans);color:var(--ltfs-muted)}
.ltfs-wait::before{content:"";width:28px;height:28px;background:var(--ltb-loader,none) center/contain no-repeat}

/* Azioni sotto la risposta */
.ltfs-acts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0 16px}
html body .ltfs-act{display:inline-flex;align-items:center;min-height:38px;margin:0;padding:0 14px;border:0;border-radius:2px;background:var(--ltfs-ink);box-shadow:none;color:#fff!important;font:500 11.5px/1 var(--ltfs-sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none!important;cursor:pointer;transition:background .2s}
html body .ltfs-act:hover{background:var(--ltfs-mag-d)}
html body .ltfs-act--link{background:#fff;box-shadow:inset 0 0 0 1px var(--ltfs-ink);color:var(--ltfs-ink)!important}
html body .ltfs-act--link:hover{background:var(--ltfs-ivory)}

/* Tabella taglie */
.ltfs-size{margin:12px 0 0 16px}
.ltfs-size__lab{margin:0 0 8px;font:500 10.5px/1.4 var(--ltfs-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ltfs-muted)}
.ltfs-size__wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ltfs-size table{width:100%;min-width:320px;margin:0;border-collapse:collapse;font:400 12.5px/1.35 var(--ltfs-sans);color:var(--ltfs-ink)}
.ltfs-size th,.ltfs-size td{padding:7px 8px;border:1px solid var(--ltfs-line);text-align:center;white-space:nowrap}
.ltfs-size th,.ltfs-size tr:first-child td{background:var(--ltfs-ivory);font-weight:500}
.ltfs-size__more{display:inline-block;margin:8px 0 0;font:400 13px/1.4 var(--ltfs-sans);color:var(--ltfs-ink)!important;text-decoration:underline;text-decoration-color:var(--ltfs-mag);text-underline-offset:3px}

/* Prodotti proposti */
.ltfs-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(138px,42%);gap:12px;margin:12px 0 0 16px;padding:0 0 6px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.ltfs-card{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0}
.ltfs-card__img{display:block;aspect-ratio:2/3;background:var(--ltfs-ivory);overflow:hidden}
.ltfs-card__img img{display:block;width:100%;height:100%;object-fit:contain}
.ltfs-card__brand{margin:8px 0 2px;font:500 10px/1.3 var(--ltfs-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ltfs-muted)}
.ltfs-card__name{margin:0;font:400 13px/1.35 var(--ltfs-sans);color:var(--ltfs-ink)!important;text-decoration:none!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ltfs-card__price{margin:4px 0 0;font:500 13.5px/1.2 var(--ltfs-sans);color:var(--ltfs-ink)}
.ltfs-card__price *{font:inherit}
.ltfs-card__price del{color:var(--ltfs-muted);font-weight:400;font-size:12px;margin-right:4px}
.ltfs-card__price ins{text-decoration:none;color:var(--ltfs-mag-d)}
.ltfs-card__badge{align-self:flex-start;margin:6px 0 0;padding:3px 7px;background:var(--ltfs-blush);font:500 10.5px/1.2 var(--ltfs-sans);color:var(--ltfs-mag-d)}
html body .ltfs-card__go{align-self:flex-start;margin:8px 0 0;padding:0;border:0;background:none;box-shadow:none;font:400 12.5px/1.3 var(--ltfs-sans);color:var(--ltfs-ink)!important;text-decoration:underline;text-decoration-color:var(--ltfs-mag);text-underline-offset:3px;cursor:pointer}

/* Utile? / Ascolta */
.ltfs-fb{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 0 16px;font:400 12px/1.3 var(--ltfs-sans);color:var(--ltfs-muted)}
html body .ltfs-fb button{margin:0;padding:0;border:0;background:none;box-shadow:none;font:inherit;color:var(--ltfs-ink);text-decoration:underline;text-decoration-color:var(--ltfs-line);text-underline-offset:3px;cursor:pointer}
html body .ltfs-fb button:hover{text-decoration-color:var(--ltfs-mag)}
html body .ltfs-fb button:disabled{opacity:.5;cursor:default}

/* Campo domanda */
.ltfs-input{display:flex;align-items:flex-end;gap:8px;margin:0}
html body .ltfs-input textarea{flex:1 1 auto;min-width:0;height:48px;min-height:48px;max-height:120px;margin:0;padding:13px 14px;border:1px solid var(--ltfs-line);border-radius:2px;background:#fff;box-shadow:none;font:400 16px/1.35 var(--ltfs-sans);color:var(--ltfs-ink);resize:none;overflow-y:auto}
html body .ltfs-input textarea:focus{border-color:var(--ltfs-ink);outline:0}
html body .ltfs-input__send,html body .ltfs-input__mic{flex:0 0 48px;display:grid;place-items:center;width:48px;height:48px;margin:0;padding:0;border:0;border-radius:2px;background:var(--ltfs-ink);box-shadow:none;color:#fff;cursor:pointer;transition:background .2s}
html body .ltfs-input__send:hover{background:var(--ltfs-mag-d)}
html body .ltfs-input__send:disabled{background:#cfc4c9;cursor:default}
html body .ltfs-input__mic{background:#fff;box-shadow:inset 0 0 0 1px var(--ltfs-line);color:var(--ltfs-ink)}
html body .ltfs-input__mic:hover{box-shadow:inset 0 0 0 1px var(--ltfs-ink)}
html body .ltfs-input__mic.is-rec{background:var(--ltfs-mag);box-shadow:none;color:#fff;animation:ltfs-pulse 1.2s ease-in-out infinite}
@keyframes ltfs-pulse{50%{opacity:.7}}
.ltfs-note{margin:8px 0 0;font:400 11px/1.45 var(--ltfs-sans);color:var(--ltfs-muted)}
.ltfs-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* Computer: finestra al centro, come "Trova la mia taglia" */
@media (min-width:900px){
	.ltfs-sheet__panel{left:50%;right:auto;top:50%;bottom:auto;width:600px;max-width:calc(100vw - 48px);height:min(760px,88vh);transform:translate(-50%,-46%);opacity:0;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .25s ease}
	.ltfs-sheet.is-open .ltfs-sheet__panel{transform:translate(-50%,-50%);opacity:1}
	.ltfs-sheet__head{padding:18px 16px 16px 24px}
	.ltfs-sheet__body{padding:20px 24px 14px}
	.ltfs-sheet__foot{padding:14px 24px 18px}
	.ltfs-cards{grid-auto-columns:calc((100% - 24px) / 3)}
}
@media (prefers-reduced-motion:reduce){.ltfs-sheet__panel,.ltfs-sheet__bg{transition:none}.ltfs-input__mic.is-rec{animation:none}}
.ltfs-sheet__chips[hidden],.ltfs__chips[hidden]{display:none}
