/* Filiera Ittica – Banco virtuale. Il banco del mercato: cartellini dei prezzi su fondo laguna. */
.fib{--laguna:#0E3B43;--laguna-2:#16525C;--sale:#F2F5F4;--fondale:#56676B;--linea:#D3DCDA;--bragozzo:#E7B522;--errore:#B3261E;
	font-family:"FIB Barlow",system-ui,sans-serif;font-size:16px;line-height:1.5;color:var(--laguna);max-width:1180px;margin:0 auto 48px;box-sizing:border-box}
.fib *,.fib *::before,.fib *::after{box-sizing:border-box}
.fib [hidden]{display:none!important}
.fib a{color:var(--laguna-2)}
.fib button:focus-visible,.fib a:focus-visible,.fib input:focus-visible,.fib textarea:focus-visible{outline:3px solid var(--bragozzo);outline-offset:2px}

/* Testata del banco */
.fib-testa{background:var(--laguna);color:#E4ECEA;padding:28px 28px 22px;border-radius:6px 6px 0 0}
.fib-testa h2{font-family:"FIB Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:clamp(32px,5vw,48px);line-height:1;margin:0 0 8px;color:#fff}
.fib-testa p{margin:0 0 12px;max-width:70ch;color:#C9D6D4}
.fib-testa a{color:var(--bragozzo)}
.fib-su{font-size:14px}
.fib-info{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:14.5px}
.fib-info strong{color:var(--bragozzo);font-weight:600;margin-right:4px}
.fib-anteprima{background:#F9EEDA;color:#7A4B00;padding:10px 14px;border-radius:6px;margin:0 0 10px}

.fib-corpo{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start;background:var(--sale);padding:22px;border-radius:0 0 6px 6px}

/* Cartellini */
.fib-banco{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.fib-prod{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:4px;position:relative}
.fib-prod::before{content:"";position:absolute;left:50%;top:-6px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--sale);border:1px solid var(--linea)}
.fib-cartellino{padding:18px 18px 12px;flex:1}
.fib-prod h3{font-family:"FIB Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:28px;line-height:1;margin:4px 0 2px;text-transform:uppercase;letter-spacing:.01em}
.fib-sci{font-style:italic;color:var(--fondale);margin:0 0 10px;font-size:14.5px}
.fib-prezzo{margin:0 0 12px;font-size:15px;color:var(--fondale)}
.fib-prezzo span{display:inline-block;font-family:"FIB Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:40px;line-height:1;color:var(--laguna);background:var(--bragozzo);padding:4px 10px 2px;border-radius:3px;margin-right:4px;font-variant-numeric:tabular-nums}
.fib-tracc{display:grid;grid-template-columns:max-content 1fr;gap:2px 12px;margin:0 0 10px;font-size:13.5px}
.fib-tracc dt{color:var(--fondale)}
.fib-tracc dd{margin:0;font-weight:600}
.fib-desc{font-size:14px;color:var(--fondale);margin:0 0 8px}
.fib-all{font-size:12.5px;color:var(--fondale);margin:0}
.fib-compra{border-top:1px dashed var(--linea);padding:12px 18px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.fib-stato{margin:0;width:100%;font-weight:600;font-size:14px;color:var(--fondale)}
.fib-pochi{color:#A8650B}
.fib-esaurito{opacity:.6}
.fib-qta{display:inline-flex;align-items:center;border:1.5px solid var(--linea);border-radius:4px}
.fib-qta button{width:38px;height:40px;border:0;background:none;font-size:20px;color:var(--laguna);cursor:pointer}
.fib-qta button:disabled{opacity:.3;cursor:default}
.fib-qta output{min-width:44px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
.fib-qta span{font-size:13px;color:var(--fondale);padding-right:6px}
.fib-metti{flex:1;min-height:42px;border:0;border-radius:4px;background:var(--laguna);color:#fff;font:inherit;font-weight:600;cursor:pointer;padding:0 12px}
.fib-metti:hover{background:var(--laguna-2)}
.fib-preso{border-color:var(--laguna);box-shadow:inset 0 -3px 0 var(--bragozzo)}

/* Carrello */
.fib-carrello{position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 16px);background:#fff;border:1px solid var(--linea);border-radius:4px;padding:18px}
.fib-carrello h3{margin:0 0 8px;font-family:"FIB Condensed","Arial Narrow",sans-serif;font-size:26px;font-weight:700;line-height:1}
.fib-carr-vuoto{color:var(--fondale);font-size:14.5px;margin:0}
.fib-righe{list-style:none;margin:0 0 8px;padding:0}
.fib-righe li{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:2px 8px;padding:8px 0;border-bottom:1px solid var(--linea);font-size:14.5px}
.fib-r-n{font-weight:600;grid-column:1}
.fib-r-q{grid-column:1;grid-row:2;color:var(--fondale);font-size:13.5px}
.fib-r-i{grid-column:2;grid-row:1/3;align-self:center;font-variant-numeric:tabular-nums;font-weight:600}
.fib-togli{grid-column:3;grid-row:1/3;align-self:center;width:28px;height:28px;border:0;background:none;border-radius:50%;color:var(--fondale);font-size:18px;cursor:pointer}
.fib-togli:hover{background:var(--sale)}
.fib-totale{display:flex;justify-content:space-between;margin:6px 0 2px;font-size:15px}
.fib-totale strong{font-size:20px;font-variant-numeric:tabular-nums}
.fib-nota-peso,.fib-piccolo{font-size:13px;color:var(--fondale);margin:0 0 12px}
.fib-cassa{display:grid;gap:10px;border-top:2px solid var(--laguna);padding-top:14px}
.fib-cassa label{display:grid;gap:4px;font-size:14px;font-weight:600}
.fib-cassa input:not([type=radio]):not([type=checkbox]),.fib-cassa textarea{width:100%;padding:9px 10px;border:1.5px solid var(--linea);border-radius:4px;font:inherit;font-weight:400;color:var(--laguna);background:#fff}
.fib-cassa input:focus,.fib-cassa textarea:focus{border-color:var(--laguna);outline:none;box-shadow:0 0 0 3px rgba(231,181,34,.45)}
.fib-modo{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.fib-modo legend{font-size:14px;font-weight:600;margin:0 0 4px;padding:0;width:100%}
.fib-modo label{display:flex;align-items:center;gap:6px;font-weight:400;border:1.5px solid var(--linea);border-radius:4px;padding:7px 11px;cursor:pointer}
.fib-modo label:has(input:checked){border-color:var(--laguna);background:#EAF1F0;font-weight:600}
.fib-modo input{accent-color:var(--laguna);margin:0}
.fib-cassa .fib-consenso{display:flex;gap:8px;align-items:flex-start;font-weight:400;font-size:13.5px}
.fib-consenso input{margin-top:3px;accent-color:var(--laguna)}
.fib-minimo{margin:0;font-size:13.5px;color:var(--fondale)}
.fib-minimo.fib-sotto{color:#A8650B;font-weight:600}
.fib-invia{min-height:48px;border:0;border-radius:4px;background:var(--bragozzo);color:var(--laguna);font:inherit;font-size:17px;font-weight:600;cursor:pointer}
.fib-invia:hover{background:#D6A51A}
.fib-invia:disabled{opacity:.55;cursor:not-allowed}
.fib-nascosto{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.fib-apri-carr{display:none}

.fib-err{background:#FBEDEC;color:#8A1C14;border-left:4px solid var(--errore);padding:12px 16px;margin:12px 0}
.fib-ok{background:#E5F4E4;color:#1E5C22;padding:12px 16px;border-radius:4px;margin:0 0 12px}
.fib-vuoto{padding:28px;text-align:center;color:var(--fondale);background:#fff;border:1.5px dashed var(--linea);border-radius:4px;grid-column:1/-1}

/* Elenco dei banchi */
.fib-banchi{list-style:none;margin:0;padding:22px;background:var(--sale);display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;border-radius:0 0 6px 6px}
.fib-banchi a{display:grid;gap:2px;padding:18px;background:#fff;border:1px solid var(--linea);border-radius:4px;text-decoration:none;color:var(--laguna)}
.fib-banchi a:hover{border-color:var(--laguna)}
.fib-banchi strong{font-family:"FIB Condensed","Arial Narrow",sans-serif;font-size:24px;line-height:1.05}
.fib-banchi small{color:var(--fondale)}

/* Ricevuta */
.fib-ricevuta .fib-testa{border-radius:6px}
.fib-percorso{list-style:none;display:flex;margin:18px 0;padding:0;counter-reset:p}
.fib-percorso li{flex:1;padding-top:10px;border-top:4px solid var(--linea);font-size:14px;color:var(--fondale);margin-right:4px}
.fib-percorso li.fatto{border-top-color:var(--laguna);color:var(--laguna)}
.fib-percorso li.ora{border-top-color:var(--bragozzo);color:var(--laguna);font-weight:600}
.fib-tab{width:100%;border-collapse:collapse;margin:0 0 12px;font-size:15px;background:#fff}
.fib-tab th,.fib-tab td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--linea);vertical-align:top}
.fib-tab th{background:var(--sale);font-size:13.5px;color:var(--fondale);font-weight:600}
.fib-tab .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.fib-tab small{color:var(--fondale)}
.fib-tab tfoot th{background:none;color:var(--laguna);font-size:15px}

/* Gestione (area operatore) */
.fib-stato-banco{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.fib-aperto{color:#1D6B4F;font-weight:600}
.fib-chiuso{color:#A8650B;font-weight:600}
.fib-st{font-size:13px;font-weight:600;padding:2px 8px;border-radius:3px;background:var(--sale,#F2F5F4)}
.fib-st-ricevuto{background:#F9EEDA;color:#7A4B00}
.fib-st-confermato{background:#E7F1FB;color:#1F4E80}
.fib-st-pronto{background:#E5F4E4;color:#1E5C22}
.fib-st-annullato{text-decoration:line-through;color:#5b6575}
.fib-dett dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 18px;margin:0 0 14px;font-size:15px}
.fib-dett dt{color:#56676B}
.fib-dett dd{margin:0}
.fib-gest .fib{max-width:none;margin:0 0 14px}
.fib-gest .fib-ricevuta .fib-testa{display:none}
.fib-pz{max-width:180px}
.fib-pz span:last-child{padding:0 9px 0 0}

@media (max-width:900px){
	.fib-corpo{grid-template-columns:minmax(0,1fr);padding:14px}
	.fib-carrello{position:static}
	.fib-testa{padding:22px 18px 18px;border-radius:0}
	.fib-apri-carr{display:flex;position:fixed;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 12px);z-index:50;justify-content:center;gap:8px;align-items:center;min-height:50px;border:0;border-radius:6px;background:var(--laguna);color:#fff;font:inherit;font-weight:600;box-shadow:0 8px 24px rgba(14,59,67,.35)}
	.fib-apri-carr b{background:var(--bragozzo);color:var(--laguna);border-radius:999px;min-width:24px;padding:0 7px}
	.fib-banco{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){.fib *{transition:none!important;scroll-behavior:auto!important}}
