.bm-auth{width:min(100%,560px);margin:0 auto}.bm-auth .bm-card{padding:clamp(1.25rem,4vw,2.25rem)}.bm-auth h2{font-size:clamp(2rem,7vw,3.5rem);margin:.25rem 0 1.25rem}.bm-auth form{display:grid;gap:1rem}.bm-auth label{display:grid;gap:.4rem;color:var(--bone,#f3efe7)}.bm-auth label small{color:var(--muted,#bdb6aa)}.bm-auth .bm-input{max-width:none;margin:0}.bm-auth-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;justify-content:start}.bm-auth-check input{width:18px;height:18px;accent-color:var(--blade,#c9a227)}.bm-auth .bm-button{width:100%;margin-top:.25rem}.bm-google-button{display:flex;align-items:center;justify-content:center;width:100%;margin-top:1rem;padding:.8rem 1rem;border:1px solid #f3efe733;background:#fff;color:#211e1c;font-weight:700}.bm-google-button:hover{border-color:var(--blade,#c9a227)}.bm-auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin-top:1.25rem}.bm-auth-links a{color:var(--blade,#c9a227);text-decoration:underline;text-underline-offset:3px}.bm-auth-message{padding:.85rem 1rem;margin:0 0 1rem;border:1px solid}.bm-auth-message.is-error{border-color:#c8102e;color:#ff9aaa;background:#c8102e18}.bm-auth-message.is-success{border-color:#4f9b62;color:#b8efc5;background:#4f9b6218}@media(max-width:600px){.bm-auth-links{display:grid}.bm-auth .bm-card{border-inline:0}}
.bm-appointment-layout.has-receipt{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:1rem;align-items:start}.bm-appointment-info{min-width:0}.bm-receipt-preview{display:grid;gap:.4rem;width:112px;padding:0;border:1px solid #f3efe733;background:#181615;color:var(--bone,#f3efe7);cursor:pointer;overflow:hidden}.bm-receipt-preview img{width:110px;height:90px;object-fit:cover;background:#fff}.bm-receipt-preview small{padding:0 .35rem .45rem;text-align:center}.bm-receipt-pdf{display:grid;place-items:center;width:110px;height:90px;background:#fff;color:#c8102e;font-weight:800;font-size:1.25rem}.bm-receipt-preview:hover,.bm-receipt-preview:focus{border-color:var(--blade,#c9a227)}@media(max-width:520px){.bm-appointment-layout.has-receipt{grid-template-columns:minmax(0,1fr) 88px}.bm-receipt-preview{width:88px}.bm-receipt-preview img,.bm-receipt-pdf{width:86px;height:76px}}
.bm-schedule-wrap{margin:0 0 2.25rem}.bm-schedule-help{margin:.4rem 0 1rem;color:var(--muted,#bdb6aa);font-size:.9rem}.bm-schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:.65rem}.bm-schedule-slot{min-height:94px;display:flex;flex-direction:column;justify-content:center;gap:.18rem;padding:.7rem;border:1px solid #f3efe733;background:#2b2724;color:#f3efe7;text-align:left;cursor:pointer;touch-action:manipulation}.bm-schedule-slot time{font:700 1.05rem monospace;color:#c9a227}.bm-schedule-slot span{font-weight:700}.bm-schedule-slot small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bdb6aa}.bm-schedule-slot.is-free{border-color:#59735b;background:#243026}.bm-schedule-slot.is-free:active,.bm-schedule-slot.is-free:hover{border-color:#9ed3a4;background:#314837}.bm-schedule-slot.is-blocked{border-color:#b8752e;background:#372916}.bm-schedule-slot.is-blocked:active,.bm-schedule-slot.is-blocked:hover{border-color:#e2ac57}.bm-schedule-slot.is-reserved{border-color:#c9a227;background:#342f2b}.bm-schedule-slot.is-reserved:active,.bm-schedule-slot.is-reserved:hover{border-color:#f3efe7}.bm-schedule-slot:disabled{cursor:not-allowed;opacity:.75}.bm-appointment-menu h3{margin:.1rem 0 .8rem}.bm-appointment-menu .bm-receipt-preview{margin:.5rem 0}.bm-appointment-menu .bm-secondary{margin:.9rem 0 0}.bm-dialog{max-height:88dvh;overflow:auto}@media(max-width:520px){.bm-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.bm-schedule-slot{min-height:88px;padding:.6rem}.bm-dashboard-head{gap:.5rem}.bm-dashboard-head h2{font-size:1.85rem}.bm-day-nav{top:72px}.bm-day-nav button,.bm-day-nav input{min-height:42px}.bm-dialog{width:calc(100vw - 1.5rem);padding:1rem}}
.bm-announcement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.bm-announcement-card{overflow:hidden}.bm-announcement-card img{width:100%;aspect-ratio:4/3;object-fit:cover;margin:-1.35rem -1.35rem 1rem;width:calc(100% + 2.7rem)}.bm-staff-tabs{position:sticky;top:88px;z-index:4;display:flex;gap:.4rem;overflow-x:auto;padding:.65rem 0;background:var(--ink,#211e1c);scrollbar-width:none;-webkit-overflow-scrolling:touch}.bm-staff-tabs button{flex:0 0 auto;border:1px solid #f3efe733;background:var(--surface,#2b2724);color:var(--bone,#f3efe7);padding:.6rem .8rem;cursor:pointer}.bm-staff-tabs .bm-tabs-toggle{display:none}.bm-staff-tabs button.is-active{border-color:var(--blade,#c9a227);color:var(--blade,#c9a227)}.bm-admin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.bm-admin-cards strong{display:block;margin:.3rem 0;font-size:1.55rem;color:var(--blade,#c9a227)}.bm-admin-cards span,.bm-muted{color:var(--muted,#bdb6aa)}.bm-management-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.bm-management-list h3{margin-top:0}.bm-management-list a{color:var(--blade,#c9a227);text-decoration:underline}.bm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:1rem;background:var(--surface,#2b2724);border:1px solid #f3efe733}.bm-form label{display:grid;gap:.35rem;color:var(--bone,#f3efe7)}.bm-form input,.bm-form textarea,.bm-form select,.bm-hours-row input{width:100%;background:#181615;color:var(--bone,#f3efe7);border:1px solid #f3efe733;padding:.62rem}.bm-form textarea{min-height:80px}.bm-form button{align-self:end}.bm-switch{display:flex;gap:.6rem;align-items:center;margin-bottom:.8rem}.bm-switch input{width:20px;height:20px;accent-color:var(--blade,#c9a227)}.bm-product-card{display:grid;grid-template-columns:76px 1fr;gap:.85rem}.bm-product-card img{width:76px;height:76px;object-fit:cover}.bm-system-hours{display:grid;gap:.55rem}.bm-hours-row{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr auto;gap:.45rem;align-items:center;padding:.65rem;background:var(--surface,#2b2724)}.bm-hours-row label{display:flex;gap:.4rem;align-items:center}.bm-hours-row label input{width:auto}@media(max-width:700px){.bm-announcement-grid,.bm-management-list{grid-template-columns:1fr}.bm-form{grid-template-columns:1fr}.bm-staff-tabs{top:72px;padding:.55rem 0;gap:.35rem}.bm-staff-tabs button{min-width:max-content;padding:.58rem .7rem;font-size:.88rem}.bm-hours-row{grid-template-columns:1fr 1fr}.bm-hours-row label{grid-column:1/-1}.bm-hours-row button{grid-column:1/-1}.bm-admin-cards{grid-template-columns:1fr}.bm-announcement-card img{aspect-ratio:16/9}}
.bm-system-section{margin:0 0 .8rem;border:1px solid #f3efe733;background:var(--surface,#2b2724)}.bm-system-section summary{padding:.85rem 1rem;cursor:pointer;font-weight:700}.bm-system-section .bm-system-hours{padding:.8rem}.bm-management-list form.bm-card{display:grid;gap:.65rem}.bm-management-list form.bm-card label{display:grid;gap:.3rem}.bm-management-list form.bm-card input,.bm-management-list form.bm-card textarea{width:100%;background:#181615;color:var(--bone,#f3efe7);border:1px solid #f3efe733;padding:.6rem}.bm-system-thumb{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1px solid var(--blade,#c9a227)}
.bm-danger{margin-top:.8rem;background:transparent;border:1px solid #c8102e;color:#ff9aaa;padding:.55rem .75rem;cursor:pointer}.bm-danger:hover{background:#c8102e;color:#fff}
