.fsm-template-cards{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    align-items:start;
}
.fsm-template-card{
    border:1px solid #d8e8df;
    border-radius:16px;
    padding:16px;
    background:#fff;
    box-shadow:0 2px 10px rgba(15,107,79,.06);
}
.fsm-template-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin:0 0 10px;
}
.fsm-template-card h3{margin:0;line-height:1.25}.fsm-template-card h4{margin:12px 0 8px}.fsm-template-card label{display:block;margin:0 0 12px}.fsm-template-card input,.fsm-template-card select{width:100%}.fsm-template-card .button{width:100%;text-align:center}.fsm-template-sort-form{display:flex;gap:4px;flex:0 0 auto;margin:0}.fsm-template-sort-button{width:30px;height:30px;border:1px solid #d8e8df;border-radius:9px;background:#f6fbf8;color:#0f6b4f;cursor:pointer;font-weight:700;line-height:1}.fsm-template-sort-button:hover{background:#e8f5ee}.fsm-template-product-list{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:10px}.fsm-template-product{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;padding:10px;border:1px solid #edf3ef;border-radius:12px;background:#fbfdfb}.fsm-template-product-image{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#f4f7f5;border-radius:10px;overflow:hidden}.fsm-template-product-image img{width:64px;height:64px;object-fit:cover;display:block}.fsm-template-product-image-placeholder{width:30px;height:30px;border-radius:8px;background:#dfe9e3;display:block}.fsm-template-product-info{display:grid;gap:6px;min-width:0}.fsm-template-product-name{font-weight:600;line-height:1.25}.fsm-template-product-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.fsm-template-product-qty{font-size:.92em;color:#496054}.fsm-template-product-price{color:#496054;line-height:1.35}.fsm-template-product-qty-input{display:flex!important;align-items:center;gap:8px;margin:0!important;font-size:.92em;color:#496054;font-weight:600}.fsm-template-product-qty-input input[type=number]{width:74px;max-width:74px;text-align:center;padding:4px 6px}.fsm-template-order-form textarea{width:100%;min-height:82px}.fsm-template-order-form textarea[readonly]{background:#f7f7f7;color:#555}.fsm-template-quantity-fields{display:none}
@media(max-width:900px){.fsm-template-cards{grid-template-columns:1fr}}
@media(max-width:520px){.fsm-template-product{grid-template-columns:54px minmax(0,1fr)}.fsm-template-product-image,.fsm-template-product-image img{width:54px;height:54px}.fsm-template-card-head{align-items:center}}

.fsm-template-card-head{position:relative}.fsm-template-drag-handle{flex:0 0 auto;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d8e8df;border-radius:10px;background:#f6fbf8;color:#0f6b4f;cursor:grab;font-weight:700;line-height:1;margin-top:-2px}.fsm-template-drag-handle:active{cursor:grabbing}.fsm-template-card-sort-placeholder{border:2px dashed #9ccbb5;border-radius:16px;background:#f6fbf8;min-height:120px}.fsm-template-sorting-saving .fsm-template-card{transition:opacity .15s}.fsm-template-sorting-saving .fsm-template-card:not(.ui-sortable-helper){opacity:.72}.fsm-template-card.ui-sortable-helper{box-shadow:0 10px 30px rgba(15,107,79,.18);z-index:50}


/* 0.1.23: toon caption/titel over volledige regel in mijn account kaart. */
.fsm-template-card-head{
    flex-wrap:wrap;
}
.fsm-template-card-head h3{
    order:2;
    flex:0 0 100%;
    width:100%;
    margin-top:6px;
    overflow-wrap:anywhere;
    word-break:normal;
}
.fsm-template-drag-handle{
    order:1;
}
.fsm-template-sort-form{
    order:1;
    margin-left:auto;
}

/* 0.1.24: pijltjes voor handmatig sorteren niet meer tonen; sorteren loopt via verslepen. */
.fsm-template-sort-form,.fsm-template-sort-button{display:none!important}


/* 0.1.25: sleepgreep/versleep-afbeelding rechts uitlijnen in Mijn Account. */
.fsm-template-card-head .fsm-template-drag-handle{
    margin-left:auto;
    margin-right:0;
}

/* 0.1.31: adresgegevens direct onder leverwijze-keuze tonen en alleen bij bezorgen. */
.fsm-template-fulfillment-field{
    margin-top:12px;
}
.fsm-template-address-panel{
    margin:10px 0 14px;
    padding:12px;
    border:1px solid #d8e8df;
    border-radius:14px;
    background:#fbfdfb;
}
.fsm-template-address-panel.is-hidden{
    display:none!important;
}
.fsm-template-address-fields{
    display:grid;
    gap:10px;
}
.fsm-template-address-fields h4{
    margin:0 0 2px!important;
}
.fsm-template-address-fields label{
    margin:0!important;
}
.fsm-template-address-readonly{
    margin:0;
    line-height:1.45;
}


/* 0.1.33: FSM-stijl beta melding boven bestelsjablonen in Mijn Account. */
.fsm-template-beta-notice{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:14px 16px;
    margin:0 0 18px;
    border:1px solid #d8e8df;
    border-left:4px solid #0f6b4f;
    border-radius:14px;
    background:#f6fbf8;
    box-shadow:0 2px 10px rgba(15,107,79,.05);
    color:#24382e;
}
.fsm-template-beta-notice__icon{
    flex:0 0 26px;
    width:26px;
    height:26px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#0f6b4f;
    color:#fff;
    font-weight:700;
    font-size:14px;
    line-height:1;
    margin-top:1px;
}
.fsm-template-beta-notice__body strong{
    display:block;
    margin:0 0 3px;
    color:#0f6b4f;
    font-size:14px;
}
.fsm-template-beta-notice__body p{
    margin:0;
    line-height:1.45;
    font-size:14px;
}
.fsm-template-beta-notice__body a{
    color:#0f6b4f;
    font-weight:600;
    text-decoration:underline;
    text-underline-offset:2px;
}

/* 0.1.36: sjabloon-specifieke keuze voor klantmail in Mijn Account. */
.fsm-template-email-confirmation-option{
    display:flex!important;
    align-items:center;
    gap:8px;
    margin:10px 0 12px!important;
    padding:10px 12px;
    border:1px solid #d8e8df;
    border-radius:12px;
    background:#f8fcfa;
    color:#24382e;
    font-size:14px;
}
.fsm-template-email-confirmation-option input{
    margin:0!important;
}

.fsm-template-product-price-input {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 8px;
    font-size: 12px;
}
.fsm-template-product-price-input input {
    max-width: 110px;
}
.fsm-template-product-price-limits {
    display: block;
    margin-top: 4px;
    opacity: .75;
}


/* 0.1.43: bestelbevestiging wordt altijd verzonden; toon alleen compacte uitleg. */
.fsm-template-email-confirmation-note{
    margin:10px 0 12px;
    padding:10px 12px;
    border:1px solid #d8e8df;
    border-radius:12px;
    background:#f8fcfa;
    color:#496054;
    font-size:14px;
    line-height:1.4;
}


/* 0.1.44: instelbare FSM-meldingtypes boven bestelsjablonen. */
.fsm-template-beta-notice--beta{border-left-color:#0f6b4f;background:#f6fbf8}
.fsm-template-beta-notice--info{border-left-color:#0f6b4f;background:#f6fbf8}
.fsm-template-beta-notice--success{border-left-color:#22863a;background:#f6fbf8}
.fsm-template-beta-notice--warning{border-left-color:#b7791f;background:#fffaf0}
.fsm-template-beta-notice--success .fsm-template-beta-notice__icon{background:#22863a}
.fsm-template-beta-notice--warning .fsm-template-beta-notice__icon{background:#b7791f}
.fsm-template-beta-notice--success .fsm-template-beta-notice__body strong{color:#22863a}
.fsm-template-beta-notice--warning .fsm-template-beta-notice__body strong{color:#8a5a16}
