/* BiT Homes v33.7.1.8.35.6 — Appointment public page + super-admin storage maintenance. */
.bh-v356-appointments .bhcd34-main{width:min(100% - 2rem,1240px);max-width:1240px;margin-inline:auto}
.bhappt356-form-card{background:var(--bhappt356-card-bg,#fff);border:1px solid #dbe3ef;border-radius:16px;box-shadow:0 10px 28px rgba(15,23,42,.08);padding:clamp(1rem,2vw,1.5rem);margin:1rem 0}
.bhappt356-form-heading{font-size:clamp(1.25rem,2vw,1.8rem);font-weight:700;margin-bottom:.35rem}
.bhappt356-form-intro{margin-bottom:1rem;color:#475569}
.bhappt356-public-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.bhappt356-field{display:grid;gap:.35rem;min-width:0}
.bhappt356-field>span,.bhappt356-public-form label>span{font-weight:600}
.bhappt356-field input,.bhappt356-field select,.bhappt356-field textarea,.bhappt356-public-form input,.bhappt356-public-form select,.bhappt356-public-form textarea{width:100%;box-sizing:border-box;border:1px solid #b8c6d9;border-radius:9px;background:#fff;color:#172033;padding:.68rem .75rem;font:inherit;min-height:42px}
.bhappt356-field textarea{resize:vertical;min-height:120px}
.bhappt356-field input:focus,.bhappt356-field select:focus,.bhappt356-field textarea:focus{outline:3px solid rgba(37,99,235,.16);border-color:#2563eb}
.bhappt356-wide{grid-column:1/-1}
.bhappt356-required{color:#c1121f;font-weight:800}
.bhappt356-field-error{color:#b91c1c;font-weight:600}
.bhappt356-error{border-left:4px solid #c1121f;background:#fff1f2;border-radius:10px;padding:.85rem 1rem;margin:.75rem 0}
.bhappt356-success{border-left:4px solid #0f8a5f;background:#ecfdf5;border-radius:10px;padding:.85rem 1rem;margin:.75rem 0}
.bhappt356-success p,.bhappt356-error p{margin:.35rem 0}
.bhappt356-consent{display:flex;align-items:flex-start;gap:.6rem;font-weight:400}
.bhappt356-consent input{width:auto!important;min-height:auto!important;margin-top:.18rem;flex:0 0 auto}
.bhappt356-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.bhappt356-voice-note{font-size:.9rem;color:#475569;background:#f8fafc;border-radius:9px;padding:.7rem .8rem}
.bh-v356-appointments .bhcd34-card-media,.bh-v356-appointments .bhcd35-band-item,.bh-v356-appointments .bhcd35-banner-slide,.bh-v356-appointments .bhcd3543-card-media-visual{background:transparent!important}
.bh-v356-appointments .bhcd34-card-media img,.bh-v356-appointments .bhcd35-band-item img{object-fit:contain}

.bhappt356-admin-panel .bhcd35-panel-details-body{padding-top:1rem}
.bhappt356-fields{display:grid;gap:.7rem}
.bhappt356-field-card{border:1px solid #dbe3ef;border-radius:10px;background:#fff;padding:.5rem .65rem}
.bhappt356-field-card>summary{cursor:pointer;font-weight:700;padding:.25rem}
.bhappt356-responsibles{border:1px solid #cbd5e1;border-radius:9px;max-height:260px;min-height:90px;overflow:auto;resize:vertical;padding:.55rem;background:#fff;display:grid;gap:.3rem}
.bhappt356-responsibles .bhcd34-check{margin:0;padding:.25rem .35rem;border-radius:6px}
.bhappt356-responsibles .bhcd34-check:hover{background:#f8fafc}
.bhappt356-subject-list{display:grid;gap:.6rem}
.bhappt356-subject-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(100px,160px) auto auto;align-items:end;gap:.6rem;border:1px solid #dbe3ef;border-radius:10px;padding:.65rem;background:#fff}
.bhappt356-subject-row label{display:grid;gap:.25rem}
.bhappt356-subject-row .bhcd34-check{display:flex;align-items:center;align-self:center}

.bh-storage356{margin-top:1rem}
.bh-storage356-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.bh-storage356-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem;margin-top:.9rem}
.bh-storage356-card{border:1px solid #dbe3ef;border-radius:12px;background:#fff;padding:.85rem;min-width:0}
.bh-storage356-card strong{display:block;overflow-wrap:anywhere}
.bh-storage356-meter{height:9px;background:#edf2f7;border-radius:999px;overflow:hidden;margin:.55rem 0}
.bh-storage356-meter>span{display:block;height:100%;background:#2563eb;border-radius:inherit}
.bh-storage356-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;font-size:.88rem}
.bh-storage356-stats span{display:grid;gap:.1rem}
.bh-storage356-result{margin-top:.8rem;padding:.75rem;border-radius:9px;background:#f8fafc;border:1px solid #dbe3ef}
.bh-storage356-safety{font-size:.9rem;color:#475569;max-width:850px}

@media(max-width:760px){.bhappt356-public-form{grid-template-columns:1fr}.bhappt356-wide{grid-column:1}.bhappt356-subject-row{grid-template-columns:1fr}.bh-storage356-stats{grid-template-columns:1fr}.bh-v356-appointments .bhcd34-main{width:min(100% - 1rem,1240px)}}

/* v35.7 appointment phone/dial selector and local-only voice integration. */
.bhappt356-phone-row{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr);gap:.5rem;align-items:start}
.bhappt356-dial{position:relative;min-width:92px}
.bhappt356-dial>summary{list-style:none;cursor:pointer;border:1px solid #b8c6d9;border-radius:9px;background:#fff;color:#172033;padding:.68rem .75rem;min-height:42px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:.35rem}
.bhappt356-dial>summary::-webkit-details-marker{display:none}
.bhappt356-dial>summary:after{content:"▾";font-size:.75em}
.bhappt356-dial[open]>summary:after{content:"▴"}
.bhappt356-dial-panel{display:grid;gap:.4rem;margin-top:.35rem;border:1px solid #cbd5e1;border-radius:9px;background:#fff;padding:.45rem;max-height:230px;overflow:auto;box-shadow:0 8px 20px rgba(15,23,42,.08);position:static;width:min(260px,calc(100vw - 3rem));z-index:auto}
.bhappt356-dial-options{display:grid;gap:.15rem}
.bhappt356-dial-options>label{display:flex;align-items:center;gap:.45rem;padding:.3rem .4rem;border-radius:6px;cursor:pointer}
.bhappt356-dial-options>label:hover{background:#f8fafc}
.bhappt356-dial-options input[type=radio]{width:auto!important;min-height:auto!important}
.bhappt356-phone-row>.bithomes-voice-field{display:flex;align-items:stretch;gap:.35rem;min-width:0}
.bhappt356-phone-row>.bithomes-voice-field>input{min-width:0;flex:1 1 auto}
.bithomes-voice-field{display:flex;align-items:stretch;gap:.35rem;min-width:0}
.bithomes-voice-field>input,.bithomes-voice-field>textarea{min-width:0;flex:1 1 auto}
.bithomes-voice-button{flex:0 0 38px;width:38px;min-height:38px;border:1px solid #b8c6d9;border-radius:9px;background:#fff;cursor:pointer}
.bithomes-voice-button:disabled{opacity:.55;cursor:not-allowed}
.bithomes-voice-notice{display:block;margin:.75rem 0;padding:.7rem .8rem;border:1px solid #dbe3ef;border-radius:9px;background:#f8fafc;color:#334155}
.bithomes-voice-notice strong{display:block;margin-bottom:.2rem}
.bithomes-voice-prepare{margin-top:.45rem}
@media(max-width:520px){.bhappt356-phone-row{grid-template-columns:1fr}.bhappt356-dial-panel{width:100%}}

/* BITHOMES_V33_7_1_8_35_7_1_APPOINTMENT_FORM_EFFECTS_CANONICAL_DIAL */
.bhappt356-form-card{transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}
.bhappt356-form-card.bhcd34-shadow-none{box-shadow:none}
.bhappt356-form-card.bhcd34-shadow-soft{box-shadow:0 14px 34px rgba(15,23,42,.09)}
.bhappt356-form-card.bhcd34-shadow-strong{box-shadow:0 20px 48px rgba(15,23,42,.20)}
.bhappt356-public-form .bh-global-dial,.bhappt356-public-form .v331-phone{max-width:100%}

.bhappt356-public .bhcd3572-public-video,.bhappt356-public .bhcd3572-public-video-list{background:transparent}
