.client-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block-end:1.5rem}.client-metrics article,.client-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem}.client-metrics article{display:grid;gap:.35rem;padding:1.5rem}.client-metrics strong{font:500 2.5rem/1 Georgia,serif}.client-metrics span,.client-muted{color:var(--color-text-muted)}.client-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.client-detail-columns{grid-template-columns:minmax(17rem,.75fr) minmax(0,1.25fr)}.client-panel{padding:clamp(1.25rem,3vw,2rem)}.client-panel h2{margin:0 0 1.25rem;font:500 1.7rem/1.1 Georgia,serif}.client-panel-title{display:flex;align-items:center;justify-content:space-between;gap:1rem}.client-panel-title a{color:var(--color-espresso);font-weight:700}.client-list-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;color:inherit;border-top:1px solid var(--color-border);text-decoration:none}.client-list-row>span:first-child{display:grid;gap:.25rem}.client-list-row small{color:var(--color-text-muted)}.client-status{display:inline-flex;padding:.28rem .6rem;border-radius:999px;background:#ece8df;color:var(--color-text-muted);font-size:.78rem;font-weight:750;white-space:nowrap}.client-status-approved,.client-status-confirmed,.client-status-completed{color:var(--color-success);background:#e5f3eb}.client-status-rejected,.client-status-cancelled{color:var(--color-error);background:#fbe9e7}.client-status-underreview,.client-status-awaitingcustomer,.client-status-tentative{color:var(--color-warning);background:#fff2d7}.client-empty{text-align:center}.client-empty .button{margin-block-start:1rem}.client-empty-icon{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;border-radius:50%;color:var(--color-bronze);background:color-mix(in srgb,var(--color-bronze) 12%,white);font:500 2rem Georgia,serif}.client-table-wrap{overflow:auto;background:#fff;border:1px solid var(--color-border);border-radius:1rem}.client-table{width:100%;border-collapse:collapse}.client-table th,.client-table td{padding:1rem;text-align:start;border-bottom:1px solid var(--color-border)}.client-table th{color:var(--color-text-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.client-table a{color:var(--color-espresso)}.client-badge{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;margin-inline-start:.45rem;padding:0 .3rem;color:#fff;background:var(--color-bronze);border-radius:999px;font-size:.72rem}.client-definition{display:grid;gap:1rem;margin:0}.client-definition div{display:grid;gap:.25rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.client-definition dt{color:var(--color-text-muted);font-size:.8rem}.client-definition dd{margin:0}.client-messages{display:grid;gap:.75rem;max-height:28rem;overflow:auto;margin-bottom:1.5rem}.client-message{max-width:85%;padding:1rem;border-radius:1rem;background:#f2eee7}.client-message.is-client{margin-inline-start:auto;background:#e8f0ec}.client-message header{display:flex;justify-content:space-between;gap:1rem;font-size:.8rem}.client-message time{color:var(--color-text-muted)}.client-message p{margin:.5rem 0 0;white-space:pre-wrap}.client-panel form{display:grid;gap:.75rem}.client-panel label{font-weight:700}.client-panel textarea,.client-panel input,.client-panel select{width:100%;min-height:2.75rem;padding:.7rem .85rem;background:#fff;border:1px solid var(--color-border);border-radius:.6rem}.client-panel textarea{min-height:7rem;resize:vertical}.client-error{color:var(--color-error)}.client-success{color:var(--color-success)}.client-thread{position:relative;display:grid;grid-template-columns:minmax(9rem,.35fr) minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem 0;color:inherit;border-bottom:1px solid var(--color-border);text-decoration:none}.client-thread>div{display:grid}.client-thread span,.client-thread time{color:var(--color-text-muted);font-size:.8rem}.client-thread p{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.client-account-link{display:inline-block;margin-top:1.5rem}.client-form-panel{max-width:42rem}.client-form-panel label{display:grid;gap:.4rem}.client-form-panel input:disabled{background:#eee;color:var(--color-text-muted)}
@media(max-width:52rem){.client-metrics,.client-two-columns{grid-template-columns:1fr}.client-table th:nth-child(2),.client-table td:nth-child(2),.client-table th:nth-child(4),.client-table td:nth-child(4){display:none}.client-thread{grid-template-columns:1fr auto}.client-thread p{grid-column:1/-1}.client-message{max-width:95%}}

.ops-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.ops-head h1{margin:.25rem 0 0;font:500 clamp(2rem,4vw,3.5rem) Georgia,serif}.ops-kicker{color:var(--color-bronze);font-size:.76rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.ops-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.ops-card,.ops-panel{padding:1.4rem;background:#fff;border:1px solid #ddd;border-radius:.8rem}.ops-card strong{display:block;font:500 2.25rem Georgia,serif}.ops-card span{color:#67706b}.ops-panel h2{margin-top:0}.ops-actions{display:flex;flex-wrap:wrap;gap:.75rem}.ops-form{display:grid;gap:.9rem}.ops-form label{display:grid;gap:.35rem;font-weight:650}.ops-form input,.ops-form select,.ops-form textarea{min-height:2.6rem;padding:.65rem;border:1px solid #ccc;border-radius:.45rem}.ops-form textarea{min-height:6rem}.ops-grid{display:grid;grid-template-columns:minmax(17rem,.7fr) minmax(0,1.3fr);gap:1.25rem}.ops-calendar-list{display:grid;gap:.65rem}.ops-calendar-item{display:grid;grid-template-columns:9rem 1fr auto;gap:1rem;padding:1rem;border-left:.3rem solid var(--color-gold);background:#fff}.ops-calendar-item.booking{border-left-color:var(--color-success)}
@media(max-width:58rem){.ops-cards,.ops-grid{grid-template-columns:1fr}.ops-head{align-items:flex-start;flex-direction:column}.ops-calendar-item{grid-template-columns:1fr auto}.ops-calendar-item>div{grid-column:1/-1}}
.promotion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.promotion-card h2,.certificate-card h2{font:500 1.75rem Georgia,serif}.promotion-card details,.certificate-card details{margin-top:1rem}.certificate-list{display:grid;gap:1.25rem}.certificate-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.certificate-card .eyebrow{margin-bottom:.35rem}.certificate-balance{display:flex;align-items:baseline;gap:.75rem;margin:1.5rem 0}.certificate-balance strong{font:500 clamp(2rem,5vw,3.5rem) Georgia,serif}.certificate-balance span{color:var(--color-text-muted)}.certificate-history{display:grid;gap:.65rem;margin-top:1rem}.certificate-history>div{display:grid;grid-template-columns:10rem 1fr 1fr;gap:1rem;padding:.75rem 0;border-top:1px solid var(--color-border)}.certificate-history time,.certificate-history span{color:var(--color-text-muted);font-size:.85rem}.booking-timeline{display:grid;gap:0}.booking-timeline article{position:relative;display:grid;gap:.2rem;padding:0 0 1.5rem 1.5rem;border-left:2px solid var(--color-border)}.booking-timeline article::before{content:"";position:absolute;left:-.42rem;top:.2rem;width:.7rem;height:.7rem;border-radius:50%;background:var(--color-bronze)}.booking-timeline time{color:var(--color-text-muted);font-size:.8rem}.booking-timeline p{margin:.3rem 0 0;color:var(--color-text-muted)}@media(max-width:52rem){.promotion-grid{grid-template-columns:1fr}.certificate-card>header,.certificate-balance{align-items:flex-start;flex-direction:column}.certificate-history>div{grid-template-columns:1fr}}
.ops-form-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.ops-form fieldset{display:grid;gap:.75rem;padding:1rem;border:1px solid var(--color-border);border-radius:.6rem}.ops-form legend{padding:0 .4rem;font-weight:750}.admin-select-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:1rem 0;background:none;border:0;border-bottom:1px solid var(--color-border);text-align:left}.admin-select-row>span:first-child{display:grid;gap:.2rem}.admin-select-row small{color:var(--color-text-muted)}.admin-clickable-row{cursor:pointer}.admin-clickable-row:hover{background:#f3f0e9}@media(max-width:52rem){.ops-form-columns{grid-template-columns:1fr}}
