
.pp_container .highlightWindow{display:flex;flex-direction:column;touch-action:manipulation;}

/* --- Riga calcolo preventivo --- */
.pp_container .calc{display:flex;flex-wrap:wrap;align-items:center;gap:15px 20px;padding:20px;border-bottom:1px solid #F0F0F0;}
.pp_container .calc-title{font-size:1.3em;line-height:1.1;}

/* Quantità: pillola unica con i due bottoni ai lati della labeledForm centrale */
.pp_container .quantityForm{flex:0 0 auto;width:180px;display:inline-flex;align-items:stretch;border:var(--lf-border-size) solid var(--lf-border-color);border-radius:15px;background:var(--lf-label-background);transition:.2s;}
.pp_container .quantityForm button{flex:0 0 44px;border:none;background:none;padding:0;color:#666;font-size:2em;cursor:pointer;touch-action:manipulation;}
.pp_container .quantityForm button:hover{color:var(--standard-text-color);}
.pp_container .quantityForm .labeledForm{flex:1 1 auto;border-left:var(--lf-border-size) solid var(--lf-border-color);border-right:var(--lf-border-size) solid var(--lf-border-color);}
.pp_container .quantityForm .labeledForm > label{left:50%;margin-left:0;transform:translateX(-50%);}
.pp_container .quantityForm .labeledForm > input{border:none;border-radius:0;background:transparent;text-align:center;}
.pp_container .quantityForm .labeledForm > input:focus{border-color:transparent;box-shadow:none;}
.pp_container .quantityForm:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color);}

/* Chip rapidi */
.pp_container .chips{display:flex;flex-wrap:wrap;gap:10px;align-self:stretch;align-items:stretch;}
.pp_container .chip{min-width:48px;padding:10px 14px;border:1px solid #DDD;border-radius:12px;background:#FFF;color:#666;font-size:1em;cursor:pointer;}
.pp_container .chip.selected{border-color:var(--standard-text-color);color:var(--standard-text-color);font-weight:bold;outline:1px solid var(--standard-text-color);}

/* Ricerca: labeledForm a tutta larghezza */
.pp_container .searchForm{flex:1 1 100%;}

/* Lista formati */
.pp_container .contentLine{position:relative;overflow-y:auto;}
.pp_container .wait-panel{display:inline-block;font-size:3em;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
.pp_container .list{opacity:0;min-height:130px;}
.pp_container .empty{padding:40px 30px;text-align:center;color:#999;}
.pp_container .group.hidden{display:none;}
.pp_container .group > h2{margin:0;padding:30px 30px 15px;font-size:1.4em;}

.pp_container .format{border-bottom:1px solid #F0F0F0;}
.pp_container .format.hidden{display:none;}
.pp_container .list .group:not(.hidden):not(:has(~ .group:not(.hidden))) .format:not(.hidden):not(:has(~ .format:not(.hidden))){border-bottom:none;}
.pp_container .format-head{display:flex;align-items:center;gap:15px;padding:10px 30px;cursor:pointer;}
.pp_container .format-label{font-size:1.3em;font-weight:bold;flex:1;}
.pp_container .format-summary{display:flex;flex-direction:column;align-items:flex-end;text-align:right;}
.pp_container .cad{font-size:1.4em;font-weight:bold;white-space:nowrap;}
.pp_container .cad .unit{font-size:.6em;font-weight:normal;color:#999;margin-left:7px;}
.pp_container .cad .striked{font-size:.7em;font-weight:normal;margin-right:7px;}
.pp_container .striked{color:var(--light-text-color);text-decoration:line-through;}
.pp_container b.discount{color:var(--discount-color);}
.pp_container .subline{display:flex;align-items:center;gap:10px;margin-top:4px;font-size:.9em;}
.pp_container .badge{background:var(--discount-color);color:#FFF;border-radius:6px;padding:2px 7px;margin:-2px 0;}
.pp_container .chevron{transition:transform .2s;color:#999;}
.pp_container .format.expanded .chevron{transform:rotate(180deg);}
.pp_container .format.single .format-head,.pp_container .format.no-detail .format-head{cursor:default;}
.pp_container .format.single .chevron{display:none;}

/* Dettaglio (fasce/valori) */
.pp_container .format-detail{display:none;margin:0 30px;padding:10px 0;border-top:1px solid #F0F0F0;}
.pp_container .format-detail table{width:100%;border-collapse:collapse;}
.pp_container .format-detail td{padding:7px;}
/* La label assorbe tutta la larghezza extra, così prezzi e barrati restano incolonnati a destra */
.pp_container .row-label{text-align:left;width:100%;}
.pp_container :is(.row-price,.row-striked){text-align:right;white-space:nowrap;}
.pp_container .format-detail tr td{transition:background .2s;}
.pp_container .format-detail tr td:first-child{border-radius:7px 0 0 7px;}
.pp_container .format-detail tr td:last-child{border-radius:0 7px 7px 0;}
.pp_container .format-detail tr[data-band]:not(.active){cursor:pointer;}
.pp_container .format-detail tr[data-band]:not(.active):hover td{background:#F5F5F5;}
.pp_container .format-detail tr.active td{background:var(--primary-color-030);}

.pp_container :is(.upsell, .printsize){margin-top:10px;padding:7px;display:flex;align-items:center;gap:7px;}
.pp_container .upsell{background:rgba(250,99,1,.20);color:var(--discount-color);border-radius:7px;font-weight:bold;}
.pp_container .printsize{color:#999;font-style:italic;}

@media only screen and (max-width:1002px){
    .pp_container .highlightWindow{font-size:13px;}
}

@media only screen and (max-width:798px) {
    .pp_container .calc-title{display:none;}
    .pp_container .quantityForm{width:auto;flex:1 1 100%;}
    .pp_container .chips{flex:1 1 100%;}
    .pp_container .chip{flex:1 1 0;min-height:46px;}
}