/* TTBG v0.4: restrained navy-and-gold polish, with the existing page flow. */
:root{--surface:#fff;--wash:#edf2f6;--shadow:0 8px 30px #102b4608;--radius:16px}
html[data-theme="dark"]{--surface:#122438;--wash:#1a3046;--shadow:0 8px 30px #0002}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;background-image:radial-gradient(ellipse at 95% 0%,#bd91420a,transparent 40%)}
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{box-shadow:0 2px 12px #102b4605}.header-inner{gap:20px}header nav{gap:16px;flex-wrap:wrap;justify-content:flex-end}header nav>a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:3px;text-underline-offset:9px}
.panel,.mentor-card,.stats>div{border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:28px}.panel.no-pad{padding:0}.mentor-card{transition:transform .18s ease,box-shadow .18s ease}.mentor-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #102b4612}.button{border-radius:9px;transition:background .15s ease,box-shadow .15s ease}.button:hover{box-shadow:0 4px 12px #102b4612}.button:disabled{cursor:wait;opacity:.65}
input:not([type=checkbox]):not([type=hidden]),select,textarea{border-radius:9px}input[type=search]{padding-left:16px}.lane{border-radius:24px}.control-nav a{background:var(--surface)}.control-nav a[aria-current="page"],.support-nav a[aria-current="page"]{border-color:var(--gold);box-shadow:inset 0 -2px var(--gold)}
.directory-intro{background-image:radial-gradient(ellipse at top right,#bd914214,transparent 65%)}.stats>div{border-top-width:2px}.stats strong{font-variant-numeric:tabular-nums}.table-wrap{border-radius:10px}tbody tr:hover{background:var(--wash)}th{font-size:.7rem}td{overflow-wrap:anywhere}.notice{border-radius:10px}.dismissible{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dismissible button{font-size:1.4rem;color:inherit;text-decoration:none;line-height:1;min-width:28px}
.avatar.profile-square{width:144px;height:144px;border-radius:14px;font-size:3rem}.profile-heading:has(.profile-square){align-items:center}.profile-heading .profile-square img{border-radius:inherit}
.quick-trigger{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 10px;font-size:.75rem;white-space:nowrap}kbd{font:inherit;color:var(--muted);border:1px solid var(--line);padding:1px 4px;border-radius:4px;margin-left:5px}
dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 100px #0004;width:min(560px,calc(100vw - 32px));max-height:85vh;padding:28px;overflow:auto}dialog::backdrop{background:#061321a6;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.dialog-heading h2{font-size:1.4rem;margin:0}.quick-links{display:grid;gap:4px;margin:18px 0;font-size:1rem}.quick-links a{padding:11px 13px;border-radius:8px;white-space:normal}.quick-links a:hover{background:var(--wash)}
.support-banner{padding:32px 36px;border-radius:20px;background:linear-gradient(120deg,#102b46,#204764);color:#dce7ef;display:flex;justify-content:space-between;gap:28px;align-items:center}.support-banner h1{color:white;font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:12px}.support-banner .eyebrow{color:#e1c286}.support-banner p:last-child{margin:0;max-width:630px}.staff-tag{border:1px solid #668098;padding:7px 12px;border-radius:24px;font-size:.75rem;white-space:nowrap;color:#fff}.support-nav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 28px}.support-nav a{padding:9px 15px;border:1px solid transparent;border-radius:9px}.support-nav a:hover{background:var(--wash)}.support-columns{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.support-columns>*{min-width:0}.support-columns .summary-grid{margin:18px 0}.support-note{padding:20px 0;border-top:1px solid var(--line);margin-top:20px}.support-note p{margin-bottom:10px}.support-note small,.timeline small,.credential-row small{display:block;color:var(--muted);font-size:.78rem}.timeline{list-style:none;padding:0;margin:24px 0 0}.timeline li{padding:0 0 26px 22px;border-left:1px solid var(--line);position:relative}.timeline li:before{content:"";position:absolute;left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--surface)}.timeline li:last-child{padding-bottom:0}.timeline p{font-size:.85rem;color:var(--muted);margin:8px 0 0;overflow-wrap:anywhere}.pagination{justify-content:center;gap:20px;margin-top:24px}.pagination span{font-size:.85rem;color:var(--muted)}.credential-row{padding:22px 0;display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);flex-wrap:wrap}.credential-row>div{flex:1;min-width:220px}.credential-row code{letter-spacing:.12em;color:var(--muted)}#credential-value{font-family:monospace;overflow-wrap:anywhere;margin-top:10px}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;justify-content:center;padding:18px 0;gap:18px}header nav{justify-content:center}.support-columns{grid-template-columns:minmax(0,1fr) 310px}}
@media(max-width:850px){.support-columns{grid-template-columns:1fr}.support-banner{align-items:flex-start;flex-direction:column;padding:26px}.support-nav{gap:4px}.support-nav a{padding:8px 10px;font-size:.83rem}}
@media(max-width:600px){.avatar.profile-square{width:120px;height:120px}.profile-heading:has(.profile-square){align-items:flex-start}.panel{padding:20px}.panel.no-pad{padding:0}.quick-trigger kbd{display:none}.role-label{display:none}.support-banner p:last-child{font-size:.9rem}.staff-tag{font-size:.7rem}.credential-row{gap:12px}.credential-row>div{min-width:180px}dialog{padding:22px}.pagination{gap:12px;flex-wrap:wrap}.support-columns th,.support-columns td{padding:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.mentor-card:hover{transform:none}}

.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}.booking-layout>section{min-width:0}.booking-summary .avatar{width:88px;height:88px}.session-price{font-size:2.5rem;font-weight:700;letter-spacing:-.04em;margin-bottom:12px}.timezone-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.85rem;margin:20px 0}.timezone-row select{width:auto;flex:1;min-width:150px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:26px 0}.weekday{text-align:center;color:var(--muted);font-size:.75rem;padding-bottom:8px}.calendar-day{display:flex;justify-content:center;align-items:center;min-height:48px;border-radius:9px;text-decoration:none;font-weight:600;font-variant-numeric:tabular-nums}.calendar-day.unavailable{color:var(--muted);opacity:.5}.calendar-day.available{background:var(--wash);border:1px solid var(--line)}.calendar-day.available:hover,.calendar-day.chosen{background:var(--navy);color:white;border-color:var(--gold)}html[data-theme="dark"] .calendar-day.chosen{background:var(--gold);color:#102b46}.slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}@media(max-width:850px){.booking-layout{grid-template-columns:1fr}.booking-summary{order:-1}.booking-summary .avatar{float:right}.calendar-grid{gap:5px}.calendar-day{min-height:40px}}

.support-banner-actions{display:flex;flex-direction:column;align-items:flex-end;gap:14px;flex-shrink:0}.support-banner-actions .button{white-space:nowrap}@media(max-width:850px){.support-banner-actions{align-items:flex-start}}
/* Shared knowledge and lightweight help guide. */
.knowledge-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;align-items:start}.knowledge-sidebar{position:sticky;top:16px}.knowledge-tree{display:grid;gap:6px;margin-top:24px}.knowledge-tree a{white-space:normal;display:block;padding:10px;border-radius:8px;overflow-wrap:anywhere}.knowledge-tree small{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase}.knowledge-tree .selected{background:var(--wash)}.knowledge-tree .depth-1{margin-left:12px}.knowledge-tree .depth-2{margin-left:24px}.knowledge-tree .depth-3,.knowledge-tree .depth-4,.knowledge-tree .depth-5,.knowledge-tree .depth-6{margin-left:36px}.knowledge-result{padding:20px 0;border-bottom:1px solid var(--line)}.knowledge-result h3{margin:6px 0}.knowledge-content{line-height:1.8;overflow-wrap:anywhere}.knowledge-content h2,.knowledge-content h3,.knowledge-content h4{margin-top:28px}.knowledge-main textarea{min-height:350px}.knowledge-image{margin:24px 0}.knowledge-image img{max-width:100%;height:auto;border:1px solid var(--line);border-radius:10px}.knowledge-image figcaption{color:var(--muted);padding:8px 0}.danger{color:#b33333}.button.danger:not(.outline){background:#a32929;color:white;border-color:#a32929}html[data-theme="dark"] .danger{color:#ffb1a9}.help-guide{position:fixed;right:20px;bottom:20px;z-index:80;max-width:calc(100vw - 32px);font-size:.9rem}.help-guide>summary{cursor:pointer;list-style:none;margin-left:auto;width:max-content;padding:12px 20px;border-radius:28px;background:var(--ink,#132337);color:var(--surface);box-shadow:0 5px 25px #0003;font-weight:700}.help-guide[open]>summary{margin-bottom:10px}.help-body{width:360px;max-width:calc(100vw - 32px);max-height:70dvh;overflow:auto;background:var(--surface);color:var(--ink,#132337);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 8px 40px #0003}.help-body .section-heading{margin-bottom:8px}.help-transcript{max-height:200px;overflow-y:auto;overscroll-behavior:contain}.help-answer,.help-question{padding:10px 12px;border-radius:12px;background:var(--wash);overflow-wrap:anywhere}.help-question{border:1px solid var(--line);background:transparent;margin-left:20px}.help-topics{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.help-input{display:flex;gap:8px}.help-input input{min-width:0}.help-links{display:grid;gap:8px;margin-top:14px}.help-body .small{font-size:.78rem}.help-guide:has(summary:focus-visible){outline:2px solid currentColor}.help-body button:focus-visible,.help-body a:focus-visible{outline:2px solid currentColor;outline-offset:3px}@media(max-width:800px){.knowledge-layout{grid-template-columns:1fr}.knowledge-sidebar{position:static}.knowledge-tree{max-height:240px;overflow:auto}.help-guide{right:12px;bottom:12px}}@media print{.help-guide,.knowledge-sidebar{display:none}.knowledge-layout{display:block}}
/* Acuity booking flow: the same TTBG navy, gold, and generous spacing. */
.practice-banner{padding:10px 20px;background:#fff0cb;color:#463510;text-align:center;border-bottom:1px solid #d5b770;font-size:.85rem}.booking-steps{display:flex;list-style:none;gap:12px;padding:0;margin:24px 0 32px;flex-wrap:wrap}.booking-steps li{padding:10px 18px;border-radius:30px;border:1px solid var(--line);color:var(--muted)}.booking-steps li.active{background:var(--navy);color:var(--surface);border-color:var(--gold)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.capability-list{list-style:none;padding:0}.capability-list li{display:flex;gap:18px;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.capability-list strong{color:var(--navy)}.confirmation-mark{display:grid;place-items:center;width:60px;height:60px;border:1px solid var(--gold);border-radius:50%;font-size:2rem;color:var(--navy);margin-bottom:20px}.booking-meta{padding:18px;background:var(--wash);border-radius:12px;margin:18px 0}fieldset{border:1px solid var(--line);border-radius:10px;padding:16px}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.booking-steps li{font-size:.8rem;padding:8px 12px}}

/* Service imports share the TTBG workspace palette and spacing. */
.import-workspace{max-width:1200px}.import-entry{max-width:720px}.import-entry .booking-meta strong{display:block;margin-top:6px}.import-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px;align-items:start}.import-layout>*,.import-comparison td{min-width:0;overflow-wrap:anywhere}.import-summary{position:sticky;top:24px}.import-summary dt{color:var(--muted);font-size:.85rem;margin-top:18px}.import-summary dd{margin:4px 0;font-weight:600}.import-comparison caption{text-align:left;padding:12px 0;font-weight:600}.import-comparison th{white-space:normal}.import-comparison td{max-width:260px;vertical-align:top}.import-comparison .preline{white-space:pre-wrap}.import-workspace textarea{min-height:150px}@media(max-width:800px){.import-layout{grid-template-columns:1fr}.import-summary{position:static}.import-workspace .section-heading{align-items:flex-start;flex-wrap:wrap;gap:16px}.import-comparison td{min-width:150px}}

.service-heading{flex-wrap:wrap}.service-heading .action-buttons{flex-wrap:wrap}

/* Payment center: reuse TTBG navy, gold, and accessible theme surfaces. */
.payment-ref{overflow-wrap:anywhere;display:block}.payment-actions{display:flex;gap:.75rem;flex-wrap:wrap}.payment-actions .button{flex:1 1 230px}.booking-summary small{display:block;margin-top:.5rem}details>summary{cursor:pointer;font-weight:700;padding:.75rem 0}

/* v0.8 financial operations, TTBG theme surfaces */
.payment-presets{display:flex;gap:14px;flex-wrap:wrap}.financial-timeline-item{padding:18px 0;border-top:1px solid var(--line)}.financial-timeline-item>small{display:block}.financial-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.financial-action-grid small{display:block;margin-top:6px}.payment-customer-layout{max-width:900px;margin:auto}.financial-action-grid .button{width:100%}@media(max-width:760px){.financial-action-grid{grid-template-columns:1fr}.payment-presets{gap:12px;font-size:.9rem}}
