/* Charcoal and warm gold, shared by the customer and owner views. */
:root{color-scheme:dark;--bg:#171b17;--panel:#232923;--ink:#f4eddf;--muted:#c0bdaa;--gold:#d9b979;--line:#42483b;--paper:#f0e8d8;--dark:#24291f;--green:#d9b979;--sage:#2d3329}
header{background:#171b17f5}.demo-banner,.preview{background:#302b20;color:#e5d2ae}
.primary,.button{background:var(--gold);border-color:var(--gold);color:#211f16;font-weight:600}.primary:hover:enabled,.button:hover{background:#e8cc98}
.secondary{background:#232923;color:var(--ink);border-color:#667056}.quiet{color:var(--gold)}
.salon-page .brand small,.salon-page .brand-mark,.salon-page .hero .eyebrow,.salon-page .hero h1 em{color:var(--gold)}
.salon-page .button.outline{color:var(--ink);border-color:#a08d65;background:transparent}.salon-page .button.outline:hover{background:#313629}
.salon-page .service-card{background:var(--panel)}.salon-page .card-top,.salon-page .card-art{color:var(--gold)}
.salon-page .price-switch button[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}
.salon-page .style-section{background:#eee6d6}.salon-page .style-result .button{background:#292f23;color:#f5eddf;border-color:#292f23}
.salon-page .ritual{background:#252c23;color:var(--ink)}.salon-page .ritual h2 em,.salon-page .ritual .eyebrow,.salon-page .signature{color:var(--gold)}
.salon-page .ritual-left p,.salon-page .steps p,.salon-page .steps article>span{color:var(--muted)}.salon-page .steps article{border-color:var(--line)}
.salon-page .social-card,.salon-page .contact{background:#22281f}.salon-page .contact h2 em{color:var(--gold)}
.salon-page .contact .button{background:var(--gold);border-color:var(--gold);color:#211f16}.salon-page .mobile-bar{background:#171b17f5}
.salon-page dialog{color-scheme:light}.salon-page dialog .button{background:#303728;border-color:#303728;color:#fff8e9}
.owner-page nav{background:#2b3127}.owner-page nav button[aria-pressed=true]{background:var(--gold);color:#242318}
.owner-page .appointment,.owner-page .hours-row,.owner-page .panel{background:var(--panel)}
.owner-page input[type=date],.owner-page input[type=time]{background:#1c221c;color:var(--ink);border-color:#667056}
.owner-page .date-bar button{background:var(--panel);color:var(--gold)}.owner-page .appointment-actions button{background:#2b3228;color:#f2e9d6;border-color:#616952}
.owner-page .appointment-actions button.accept{background:var(--gold);color:#242318;border-color:var(--gold)}
.owner-page .appointment-actions button.cancel{color:#edc0ad}.owner-page .appointment-actions .calendar-action{flex-basis:100%;text-align:left;color:var(--gold)}
.owner-page .badge{background:#394533;color:#e0ebd5}.owner-page .badge.pending{background:#4a402c;color:#f0d59a}.owner-page .badge.cancelled{background:#363b32;color:#c1c2b5}
.owner-page .empty{background:#252d23;border-color:#727f61}.owner-page .leave-item{background:var(--panel)}.owner-page .leave-item button{color:#edc0ad}
.owner-page .status{color:#e7d2a7}.owner-page .error{color:#f4b7a0}.owner-page .save-bar .status:not(:empty){background:#303b28}
.owner-page dialog{background:#252b22}.owner-page .close{color:var(--ink)}.owner-page .toast{background:#ddbf87;color:#262317}
.demo-page .demo-choice{background:var(--panel)}.demo-page .demo-choice .number{color:var(--gold)}.demo-page .practice{background:#2b3225}
.booking-page{--paper:#171b17;--green:#d9b979}.booking-page .booking-panel{background:#20261f}.booking-page .summary{background:#2a3026}
.booking-page .treatment[aria-pressed=true]{background:#3c3829}.booking-page .treatment .choice{border-color:#bba77a}
.booking-page .treatment[aria-pressed=true] .choice{border-color:var(--gold)}.booking-page select,.booking-page input[type=date]{background:#1b211b;color:var(--ink);border-color:#73805f}
.booking-page .primary{color:#211f16}.booking-page .primary:hover:enabled{background:#e8cc98}.booking-page .secondary{background:transparent;color:var(--gold)}
.booking-page .quick-dates button,.booking-page .slots button{background:#252d23;color:var(--ink)}
.booking-page .slots button[aria-pressed=true],.booking-page .quick-dates button[aria-pressed=true]{background:var(--gold);color:#211f16}
.booking-page .facebook-preview{background:#293124;border-color:var(--gold)}.booking-page .avatar,.booking-page .success-mark{background:#d9b979;color:#252319}
.facebook-login{display:block;width:100%;min-height:50px;border:1px solid #7296d0;border-radius:7px;background:#235ba6;color:white;padding:14px;margin-top:16px;font-weight:600}.facebook-login:disabled{opacity:.65}
.booking-page .summary-price{border-color:#59624d}.booking-page .receipt{background:#303829}.booking-page .summary .small{color:var(--muted)}
.month-calendar{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:14px;margin:20px 0}
.month-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.month-top h3{text-transform:capitalize;font:22px Georgia;text-align:center;margin:5px 0}
.month-top button{border:1px solid var(--line);border-radius:9px;background:#2b3228;color:var(--gold);width:46px;font-size:22px;flex-shrink:0}
.calendar-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays{text-align:center;color:var(--muted);font-size:11px;padding:18px 0 10px}
.month-grid button{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-width:0;min-height:57px;padding:5px 1px;border:1px solid #424c38;border-radius:8px;background:#2b3228;color:var(--ink)}
.month-grid strong{font-size:17px;font-weight:400}.month-grid small{font-size:9px;min-height:11px;white-space:nowrap;color:#dacda8}
.month-grid button[aria-current=date]{outline:1px solid var(--gold);outline-offset:-4px}.month-grid button[aria-pressed=true]{background:var(--gold);color:#211f16;border-color:var(--gold)}
.month-grid button[aria-pressed=true] small{color:#39311f}.month-grid button.closed{background:#232820}.month-grid button.away{border-style:dashed}.calendar-hint{font-size:12px;color:var(--muted);line-height:1.7;margin:14px 0 0}
.month-grid button.closed[aria-pressed=true]{background:var(--gold);color:#211f16}
.calendar-export{margin-top:22px;border:1px solid var(--line);padding:16px;border-radius:12px}.calendar-export summary{cursor:pointer;font-size:14px;min-height:44px;display:flex;align-items:center;gap:8px}.calendar-export summary:before{content:'+';color:var(--gold);font-size:20px}.calendar-export[open] summary:before{content:'−'}.calendar-export p{font-size:12px;line-height:1.8;color:var(--muted)}
.date-jump{margin:0 0 14px;font-size:12px;color:var(--muted)}.date-jump summary{min-height:44px;cursor:pointer;display:flex;align-items:center;text-decoration:underline}.date-jump .date-bar{margin:8px 0 18px}.owner-page nav{margin:18px 0 24px}.owner-page .demo-note{margin:16px 0}.owner-page main{padding-top:25px}
.owner-connection{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:24px;background:#232923}.owner-connection>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--gold)}.owner-connection>summary:before{content:'↗';font-size:20px}.owner-connection p{font-size:12px;line-height:1.8}.owner-connection input[type=email]{display:block;width:100%;min-height:50px;padding:13px;border:1px solid #73805f;border-radius:8px;background:#1b211b;color:var(--ink);font-size:16px}.owner-connection .secondary{display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:12px;font-size:13px}.owner-connection .quiet{display:block;margin-top:12px}.owner-connection #cloudStatus{color:#ddc799}.owner-connection #cloudStatus.error{color:#efb59d}
@media(max-width:450px){.month-calendar{padding:10px}.month-grid,.calendar-weekdays{gap:3px}.month-grid button{min-height:54px}.month-top h3{font-size:20px}.calendar-weekdays{font-size:10px}.booking-page .summary-content>.small{display:block;font-size:10px}.booking-page .summary-content>.small[data-b=taxes]{display:none}}
