.fb-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:16px;align-items:end}.fb-selector label,.fb-student-fields label,.fb-cart-edit label{display:grid;gap:7px;color:#242424;font-size:14px;font-weight:700}.fb-selector select,.fb-student-fields input,.fb-student-fields textarea,.fb-cart-edit input,.fb-cart-edit textarea{width:100%;min-height:48px;border:1px solid #dbe2ea;border-radius:14px;background:#fff;padding:10px 14px;font:inherit;color:#242424}.fb-selector select:focus,.fb-student-fields :is(input,textarea):focus,.fb-cart-edit :is(input,textarea):focus{outline:3px solid rgba(24,167,213,.25);border-color:#164c8c}.fb-selector__message{grid-column:1/-1;margin:0;color:#b42318}.fb-school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.fb-school-card{display:grid;gap:6px;min-height:180px;padding:24px;border:1px solid #dbe2ea;border-radius:24px;background:#fff;color:#242424;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.fb-school-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(22,76,140,.12)}.fb-school-card__mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#eaf4ff;color:#164c8c;font-size:22px}.fb-school-card strong{font-size:18px;color:#164c8c}.fb-school-card small{margin-top:auto;color:#5b6573}.fb-student-fields{margin:24px 0;padding:24px;border:1px solid #bed8f2;border-radius:20px;background:#f6fbff}.fb-student-fields legend{padding:0 8px;color:#164c8c;font-size:22px;font-weight:800}.fb-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fb-field-grid label:last-child{grid-column:1/-1}.fb-field-grid label span{font-size:12px;font-weight:500;color:#687486}.fb-cart-edit{margin-top:12px}.fb-cart-edit summary{cursor:pointer;color:#164c8c;font-weight:700}.fb-cart-edit__form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;padding:16px;border-radius:16px;background:#f5f7fa}.fb-cart-edit__form button{align-self:end}.fb-add-another{display:block;margin:0 0 18px;padding:14px 18px;border:2px solid #164c8c;border-radius:14px;color:#164c8c!important;text-align:center;font-weight:800}.fb-product-context{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.fb-product-context span{padding:7px 11px;border-radius:999px;background:#eaf4ff;color:#164c8c;font-size:13px;font-weight:700}.fb-product-context--pilsa span{background:#f0efff;color:#5145d9}.fb-price-pending{color:#687486;font-size:15px;font-weight:700}.fb-product-contents{padding:16px;border-left:4px solid #ff6a1a;background:#fff8f3;border-radius:0 14px 14px 0}@media(max-width:900px){.fb-selector{grid-template-columns:1fr 1fr}.fb-selector .fb-button{width:100%}.fb-school-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.fb-selector,.fb-field-grid,.fb-cart-edit__form,.fb-school-grid{grid-template-columns:1fr}.fb-field-grid label:last-child{grid-column:auto}}

/* --- Kit componible --- */
.fb-kit-builder{margin:24px 0;display:grid;gap:18px}
.fb-kit-group{margin:0;padding:20px;border:1px solid #dbe2ea;border-radius:20px;background:#fff}
.fb-kit-group legend{padding:0 8px;color:#164c8c;font-size:20px;font-weight:800}
.fb-kit-group__hint{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px;color:#687486;font-size:13px}
.fb-kit-toggle{border:1px solid #bed8f2;border-radius:999px;background:#f6fbff;padding:4px 12px;color:#164c8c;font-size:12px;font-weight:700;cursor:pointer}
.fb-kit-toggle:hover{background:#eaf4ff}
.fb-kit-items{display:grid;gap:8px}
.fb-kit-item{display:grid;grid-template-columns:auto 48px auto 1fr auto;gap:12px;align-items:center;padding:10px 14px;border:1px solid #e6ebf2;border-radius:14px;background:#fbfdff;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.fb-kit-item:hover{border-color:#bed8f2}
.fb-kit-item input{width:20px;height:20px;min-height:0;accent-color:#164c8c}
.fb-kit-item__thumb img{display:block;width:48px;height:48px;object-fit:contain;border-radius:10px;background:#fff}
.fb-kit-item__name{display:grid;gap:2px;font-weight:700;color:#242424}
.fb-kit-item__name small{font-weight:500;color:#687486}
.fb-kit-item__price{font-weight:800;color:#164c8c;white-space:nowrap}
.fb-kit-item.is-off{opacity:.55;background:#f5f7fa}
.fb-kit-item.is-off .fb-kit-item__name,.fb-kit-item.is-off .fb-kit-item__price{text-decoration:line-through;text-decoration-color:#b7c1cf}
.fb-kit-total{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;margin:0;padding:16px 20px;border-radius:16px;background:#eaf4ff;color:#164c8c;font-size:16px;font-weight:700}
.fb-kit-total strong{font-size:24px;font-weight:800}
.fb-kit-total__count{color:#5b6573;font-size:13px;font-weight:600}
.fb-kit-warning{margin:0;color:#b42318;font-weight:700}
.fb-kit-empty{padding:14px 18px;border-radius:14px;background:#fff8f3;border-left:4px solid #ff6a1a;color:#5b6573}
.fb-kit-price-note{display:block;color:#687486;font-size:13px;font-weight:600}
/* Selector de cantidad de componente (v1.2.1) */
.fb-kit-qty{display:inline-flex;align-items:center;gap:4px;flex:none}
.fb-kit-qty--fixed{width:0;min-width:0;margin-left:-12px;visibility:hidden}
.fb-kit-qty__btn{display:grid;place-items:center;width:28px;min-width:28px;max-width:28px;height:28px;padding:0;border:1px solid #bed8f2;border-radius:8px;background:#f6fbff;color:#164c8c;font-size:16px;font-weight:800;line-height:1;cursor:pointer;flex:0 0 28px}
.fb-kit-qty__btn:hover{background:#eaf4ff}
.fb-kit-qty input{width:44px;min-width:44px;max-width:44px;min-height:0;height:30px;padding:2px 4px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;text-align:center;font:inherit;font-size:14px;font-weight:700;color:#242424;box-sizing:border-box;flex:0 0 44px;-moz-appearance:textfield;appearance:textfield}
.fb-kit-qty input::-webkit-outer-spin-button,.fb-kit-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fb-kit-item.is-off .fb-kit-qty{opacity:.5}
.fb-kit-item.is-off .fb-kit-qty input{text-decoration:none}
@media(max-width:600px){.fb-kit-item{grid-template-columns:auto auto 1fr auto}.fb-kit-item__thumb{display:none}}
