.clinic-topline{text-align:center;background:var(--sage);font-size:11px;letter-spacing:.5px;padding:9px 20px;color:var(--olive-dark)}.clinic-topline span{padding:0 10px}.clinic-topline a{text-decoration:underline;text-underline-offset:3px}.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-block:70px 90px;align-items:start}.account-copy h1{font-size:58px;margin:20px 0 28px}.account-copy>.lead{margin-bottom:24px}.account-copy>.text-link{display:inline-block;margin-top:25px}.account-panel{padding:35px;border:1px solid var(--line);background:var(--white)}.account-panel h2{font-size:31px;margin-bottom:22px}.account-panel form{margin-top:22px}.account-panel form label{margin-top:18px}.account-panel form button,.editor>.button{margin-top:22px}.account-panel p{font-size:14px}.account-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.mfa-qr{margin:20px auto}.secret-key{display:block;overflow-wrap:anywhere;padding:15px;background:var(--sage);margin-top:12px}.checkbox{display:flex;align-items:flex-start;gap:12px;font-size:13px;font-weight:400;line-height:1.7;margin-block:18px}.checkbox input{width:18px;height:18px;margin:3px 0 0;flex-shrink:0;accent-color:var(--olive)}.checkbox a{text-decoration:underline;text-underline-offset:3px}.recovery-codes{padding:20px;list-style:none;background:var(--sage);line-height:2;font-size:15px}.text-button{background:none;border:0;color:var(--olive);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px;padding:10px 0}.logout-form{margin-top:25px}.booking-empty{padding-bottom:80px}.booking-empty .panel{max-width:750px;margin:0}.booking-empty .button{margin-top:22px}.booking-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:55px;padding-bottom:75px}.booking-layout>aside{border-right:1px solid var(--line);padding-right:26px}.booking-layout h2{font-size:32px;margin-bottom:25px}.service-filter{display:block;font-size:13px;padding:14px;margin:8px 0;border:1px solid transparent}.service-filter strong{font-weight:500}.service-filter span{display:block;font-size:11px;color:var(--muted);margin-top:5px}.service-filter.selected{background:var(--sage);border-color:var(--line)}.booking-slot{padding:24px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;align-items:center}.booking-slot p{font-size:13px;margin-top:6px}.booking-slot form{max-width:250px}.legal a:not(.button){text-decoration:underline;text-underline-offset:3px}.legal p{margin-bottom:18px}.legal h2{font-size:28px}.list-row{padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.list-row h2,.list-row h3{font-size:26px;letter-spacing:-.4px}.list-row p{font-size:13px;margin-top:8px}.inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:20px}.inline-actions form{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inline-actions select{width:auto;max-width:100%}select{font:inherit;width:100%;padding:12px;background:var(--white);color:var(--ink);border:1px solid #aab39a;border-radius:3px}.subheading{font-size:29px;margin:40px 0 20px}.service-editor{border:1px solid var(--line);margin:25px 0;padding:22px}.service-editor legend{font:24px var(--serif);padding-inline:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}.form-grid label{font-size:11px}.table-scroll{overflow:auto;margin-top:25px}.table-scroll table{border-collapse:collapse;width:100%;font-size:11px}.table-scroll td,.table-scroll th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.journal-entry>p{white-space:normal;overflow-wrap:anywhere}.search-form{margin-block:25px}.search-form input{max-width:400px}.search-form button{margin-left:10px}.appointment{margin-top:22px}.appointment>h2{margin-top:20px}.appointment>p{margin-block:15px}.panel .button{margin-top:18px}.editor .checkbox{margin-top:20px}
@media(max-width:850px){.account-layout{gap:30px}.account-copy h1{font-size:43px}.booking-layout{grid-template-columns:220px minmax(0,1fr);gap:25px}.booking-slot{flex-direction:column;align-items:start}.booking-slot form{max-width:100%}.form-grid{grid-template-columns:1fr 1fr}.form-grid>div:last-child{grid-column:1/-1}}
@media(max-width:600px){.account-layout{grid-template-columns:1fr;padding-block:35px 50px;gap:30px}.account-copy h1{font-size:43px}.account-copy .lead{font-size:16px}.account-panel{padding:24px}.booking-layout{grid-template-columns:1fr;padding-bottom:45px}.booking-layout>aside{border-right:0;border-bottom:1px solid var(--line);padding:0 0 20px}.service-filter{padding:10px}.list-row{flex-wrap:wrap}.list-row h2{font-size:24px}.inline-actions{align-items:start;flex-direction:column}.inline-actions form{align-items:stretch;flex-direction:column;width:100%}.inline-actions select{width:100%}.form-grid{grid-template-columns:1fr}.form-grid>div:last-child{grid-column:auto}.service-editor{padding:18px}.service-editor legend{font-size:21px}.search-form button{margin:12px 0 0}.legal h2{font-size:25px}.clinic-topline{font-size:10px}}

/* Full-width appointment editing, comfortable on clinic tablets. */
.appointment-editor{max-width:900px}.appointment-fields{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}.appointment-fields input{width:100%;min-width:0;box-sizing:border-box;min-height:48px}.week-edit{display:inline-block;font-weight:700;padding:8px 0;min-height:32px}.appointment-editor .inline-actions{gap:16px;margin-top:24px}
@media(max-width:600px){.appointment-fields{grid-template-columns:1fr;gap:16px}.appointment-editor .inline-actions{display:flex;flex-direction:column;align-items:stretch}}

.journal-compose summary,.journal-thread>summary{cursor:pointer;padding:8px 0}.journal-thread>summary strong{font-size:21px}.journal-thread>summary .field-help{display:block;margin-top:8px}.journal-textarea{min-height:96px!important;height:108px;max-width:100%;box-sizing:border-box}.journal-note-body{margin-top:20px}.journal-addition{border-left:3px solid var(--line);padding:12px 18px;margin-top:16px;background:var(--sage)}.journal-addition p{overflow-wrap:anywhere}.journal-append{margin-top:20px}.journal-append form{max-width:720px}

.week-event .home-visit-badge{font-weight:600;font-size:11px;border:1px solid var(--line);border-radius:3px;padding:4px 6px;background:var(--white);margin-block:6px}

.journal-thread>summary .field-help{display:block!important;white-space:normal}.journal-photos,.journal-photo-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-block:16px}.journal-photos img,.journal-photo-preview img{display:block;max-width:100%;width:100%;max-height:240px;object-fit:contain;border:1px solid var(--line);background:var(--white);border-radius:4px}.journal-photo-input{margin-top:18px;padding-top:12px;border-top:1px solid var(--line)}.journal-photo-input input[type=file]{width:100%;min-width:0;font-size:13px}.journal-photo-input [hidden]{display:none!important}

.week-pay{display:block;padding:10px 12px;margin-block:8px;background:var(--olive);color:var(--white);text-align:center;border-radius:3px;font-weight:600;min-height:44px;box-sizing:border-box}.payment-paid{display:block;color:var(--olive);font-weight:700;margin-block:8px}.payment-total{font-size:32px;font-weight:600;margin-block:20px}

.site-footer .footer-facebook{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-top:15px;font-size:13px;color:var(--olive-dark);text-decoration:none;text-underline-offset:4px}.footer-facebook svg{flex:none;opacity:.85}.site-footer .footer-facebook:hover span:first-of-type{text-decoration:underline}.footer-facebook:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:3px}.facebook-link-note{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

.site-footer .footer-social{display:block;clear:both;margin-top:18px}.site-footer .footer-social .footer-facebook{display:inline-flex;align-items:center;gap:9px;margin:0;min-height:44px;line-height:1.5;font-size:13px;letter-spacing:normal}.site-footer .footer-facebook svg{display:block;width:19px;height:19px;flex:0 0 19px}

.customer-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.customer-topbar .eyebrow{margin:0}.customer-topbar form{margin:0}.customer-topbar button{min-height:44px;white-space:nowrap}.mobile-actions form{margin:0;display:flex;min-width:0}.mobile-actions form button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:8px;font:inherit;font-size:14px;font-weight:600;line-height:1.5;color:var(--olive-dark);background:transparent;border:1px solid var(--line);cursor:pointer}

.site-header .header-logout{margin:0;display:flex;align-items:center}.site-header .header-logout button{font:inherit;font-size:13px;white-space:nowrap;min-height:44px;padding:8px 12px;color:var(--olive-dark);background:transparent;border:1px solid var(--line);border-radius:3px;cursor:pointer}.site-header .header-logout button:hover{background:var(--sage)}.site-header .header-logout button:focus-visible{outline:2px solid var(--olive-dark);outline-offset:3px}
