:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;--cream:#faf8f3;--surface:#fff;--sage:#b9cba9;--sage-light:#dde7d4;--sage-deep:#315b3d;--lilac:#dccbe4;--navy:#172033;--muted:#68717d;--border:#e8e4dd;--shadow:0 8px 24px #222b3409;background:#faf8f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:20px}*{box-sizing:border-box}body{background:var(--cream);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #315b3d3d}.app-shell{min-height:100vh}.sidebar{z-index:10;border-right:1px solid var(--border);background:#fffefa;flex-direction:column;width:252px;padding:26px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand-lockup{align-items:center;gap:11px;min-height:115px;padding:0 7px 23px;display:flex}.brand-mark{width:48px;height:48px;color:var(--sage-deep);flex:none;display:inline-flex}.brand-mark svg{width:100%;height:100%}.brand-copy{flex-direction:column;line-height:1.05;display:flex}.brand-copy>span{font-size:15px}.brand-copy strong{letter-spacing:-.035em;margin-top:3px;font-size:22px;line-height:1.04}.brand-copy small{color:#55605b;letter-spacing:.16em;margin-top:9px;font-size:9px;font-weight:700;line-height:1.65}.sidebar-caption{color:#9a9a91;letter-spacing:.13em;margin:23px 12px 12px;font-size:11px;font-weight:750}.side-nav{gap:5px;display:grid}.nav-item{color:#414a53;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:13px;width:100%;min-height:46px;padding:0 13px;transition:all .18s;display:flex}.nav-item span{font-size:18px;font-weight:540}.nav-item:hover{background:#f3f5ef}.nav-item.active{background:var(--sage-light);color:#1e3927}.nav-item.active span{font-weight:700}.nav-dot{background:#8da87c;border-radius:50%;width:7px;height:7px;margin-left:auto}.sidebar-bottom{margin-top:auto}.care-card{background:linear-gradient(135deg,#f4f5ed,#f5f0f6);border:1px solid #eeece5;border-radius:13px;align-items:center;gap:10px;margin:0 3px 16px;padding:12px 10px;display:flex}.care-icon{width:34px;height:34px;color:var(--sage-deep);background:#fff;border-radius:10px;justify-content:center;align-items:center;display:flex}.care-card b,.care-card small{display:block}.care-card b{font-size:12px}.care-card small{color:var(--muted);margin-top:4px;font-size:11px}.side-profile{border:0;border-top:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;width:100%;padding:16px 4px 0;display:flex}.avatar{border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar.camila{color:#315b3d;background:linear-gradient(145deg,#b9cba9,#e7eddf);width:36px;height:36px;font-size:15px;font-weight:750}.side-profile b,.top-profile b{font-size:14px;display:block}.side-profile small,.top-profile small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.subtle-icon{color:#929a9e;margin-left:auto}.main-area{min-height:100vh;margin-left:252px}.topbar{z-index:8;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefae0;justify-content:space-between;align-items:center;height:70px;padding:0 38px;display:flex;position:sticky;top:0}.breadcrumb{color:#93989a;align-items:center;gap:9px;font-size:14px;display:flex}.breadcrumb b{color:#343e48;font-weight:650}.topbar-actions{align-items:center;gap:13px;display:flex}.icon-button{color:#58616a;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:37px;height:37px;display:inline-flex;position:relative}.icon-button:hover{background:#f0f2ec}.notification:after{content:"";background:#bda3c9;border:2px solid #fffefa;border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:7px}.topbar-divider{background:var(--border);width:1px;height:30px;margin:0 3px}.top-profile{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;display:flex}.top-profile .avatar{width:34px;height:34px}.top-profile .subtle-icon{margin-left:4px}.search-input{border:1px solid var(--border);background:#fff;border-radius:10px;width:190px;height:36px;padding:0 12px;font-size:15px}.mobile-brand{display:none}.content-area{max-width:1440px;margin:0 auto;padding:34px 38px 28px}.welcome-row{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.eyebrow{color:#879087;letter-spacing:.075em;text-transform:uppercase;font-size:12px;font-weight:700;display:block}h1{color:var(--navy);letter-spacing:-.055em;margin:8px 0 6px;font-size:clamp(32px,3.1vw,42px);line-height:1.15}.greeting-spark{color:#8ea57e;vertical-align:4px;margin-left:4px;font-size:24px}.welcome-row p{color:#68727a;margin:0;font-size:18px}.primary-button{border:1px solid var(--sage-deep);background:var(--sage-deep);color:#fff;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:14px;font-weight:680;transition:all .18s;display:inline-flex;box-shadow:0 5px 13px #315b3d1f}.primary-button:hover{background:#254b31;transform:translateY(-1px)}.demo-banner{color:#586653;background:#f1f3ec;border:1px solid #e6eadf;border-radius:9px;align-items:center;gap:7px;width:fit-content;min-height:34px;margin-bottom:19px;padding:0 11px;font-size:15px;display:flex}.demo-banner>i{background:#829d73;border-radius:50%;width:6px;height:6px}.demo-banner b{color:#50684b}.demo-banner>span{color:#a3a99d}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px;display:grid}.metric-card{border:1px solid var(--border);min-height:114px;box-shadow:var(--shadow);background:#fff;border-radius:14px;align-items:flex-start;gap:12px;padding:17px 15px;display:flex}.metric-icon{border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.metric-icon.sage{color:#58764d;background:#eff4e9}.metric-icon.lilac{color:#846a91;background:#f2ebf5}.metric-icon.sand{color:#9a7757;background:#f7f1e9}.metric-icon.mint{color:#4c7964;background:#eaf3ef}.metric-card>div{flex-direction:column;min-width:0;display:flex}.metric-title{color:#606b72;font-size:15px;line-height:1.35}.metric-card strong{color:var(--navy);letter-spacing:-.05em;margin-top:7px;font-size:29px;line-height:1.18}.metric-card small{color:#727b7e;white-space:nowrap;margin-top:4px;font-size:12px}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);align-items:stretch;gap:16px;display:grid}.panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:15px}.week-panel{min-width:0;padding:17px 18px 10px}.panel-header,.panel-title{align-items:center;display:flex}.panel-header{justify-content:space-between;margin-bottom:12px}.panel-title{gap:9px;min-width:0}.panel-title h2{color:#26313a;letter-spacing:-.02em;white-space:nowrap;margin:0;font-size:19px}.panel-icon{border-radius:9px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.sage-icon{color:#57744d;background:#eff4e9}.lilac-icon{color:#866c91;background:#f2ebf5}.week-range{color:#59646b;white-space:nowrap;align-items:center;gap:7px;font-size:15px;display:flex}.week-range button{color:#60696d;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:25px;height:26px;display:inline-flex}.week-range button:hover{background:#f2f4ef}.week-list{border-top:1px solid #f0eee9}.day-row{border-bottom:1px solid #f1efeb;align-items:stretch;gap:12px;min-height:63px;padding:8px 5px;display:flex}.day-row:last-child{border-bottom:0}.day-row.today{background:linear-gradient(90deg,#f0e9f3bd,#faf8f340);border-radius:8px}.day-name{border-right:1px solid #ece9e3;flex-direction:column;flex:0 0 51px;justify-content:center;padding-left:2px;display:flex}.day-name b{color:#344047;text-transform:capitalize;font-size:15px}.day-name small{color:#68757b;margin-top:3px;font-size:12px}.day-items{flex:1;gap:4px;min-width:0;display:grid}.day-item{align-items:center;gap:9px;min-width:0;display:flex}.item-time{color:#47535b;flex:0 0 40px;font-size:14px;font-weight:600}.specialty-tag{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;width:fit-content;max-width:100%;padding:5px 8px;font-size:12px;font-weight:630;line-height:1.25;display:inline-flex;overflow:hidden}.specialty-tag.sage{color:#3e5f3b;background:#e3ecd9}.specialty-tag.lilac{color:#725b7f;background:#eee3f1}.specialty-tag.lavender{color:#6b6273;background:#f0e9f3}.item-count{color:#70797d;white-space:nowrap;margin-left:auto;font-size:12px}.right-column{grid-template-rows:auto 1fr;gap:14px;display:grid}.revenue-panel{background:linear-gradient(135deg,#fff 25%,#fbf8fc 100%);min-height:203px;padding:15px 16px 11px;position:relative;overflow:hidden}.revenue-panel .panel-header{z-index:1;position:relative}.period{color:#707b80;margin:12px 0 5px;font-size:14px;display:block}.revenue-amount{align-items:center;gap:9px;display:flex}.revenue-amount strong{color:var(--navy);letter-spacing:-.05em;white-space:nowrap;font-size:clamp(25px,2.5vw,33px)}.trend{color:#496d42;background:#e7f0e2;border-radius:30px;align-items:center;gap:2px;padding:4px 6px;font-size:11px;font-weight:700;display:inline-flex}.revenue-note{color:#6e787e;margin-top:3px;font-size:12px;display:block}.chart{opacity:.84;align-items:end;gap:6px;width:39%;height:53px;display:flex;position:absolute;bottom:26px;right:17px}.chart i{background:linear-gradient(#cadbbf,#e7eee1);border-radius:4px 4px 1px 1px;flex:1;max-width:19px;min-height:10px}.chart i.last{background:linear-gradient(#a8bf99,#d3e0c9)}.chart-labels{color:#737b79;justify-content:space-between;width:43%;font-size:11px;display:flex;position:absolute;bottom:10px;right:14px}.more-button{color:#899196;cursor:pointer;background:0 0;border:0;margin-left:auto;display:inline-flex}.quiet-link{color:#62805a;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;margin-left:auto;font-size:11px;font-weight:650;display:inline-flex}.upcoming-panel{padding:13px 15px 10px}.upcoming-panel .panel-header{margin-bottom:9px}.upcoming-row{border-bottom:1px solid #f0eee9;align-items:center;gap:9px;min-height:49px;padding:7px 1px;display:flex}.upcoming-row:last-child{border-bottom:0}.upcoming-time{color:#47535b;flex:0 0 88px;font-size:12px}.upcoming-row>div{gap:3px;min-width:0;display:grid}.upcoming-row .specialty-tag{padding:4px 6px;font-size:11px}.upcoming-row small{color:#5f696e;font-size:12px}.today-section{margin-top:26px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:12px;display:flex}.section-heading h2{color:var(--navy);letter-spacing:-.035em;margin:5px 0 0;font-size:24px}.today-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.session-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:13px;padding:13px 14px}.session-card-top{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.session-card-top>span{color:#4a565e;align-items:center;gap:5px;font-size:15px;font-weight:700;display:inline-flex}.session-card-top>span svg{color:#82967a}.session-badges{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.session-type{color:#69716b;background:#f3f2ed;border-radius:20px;padding:4px 7px;font-size:12px}.confirmed{color:#4f6949;background:#f0f5ed;border-radius:20px;align-items:center;gap:5px;padding:5px 7px;font-size:12px;display:inline-flex}.confirmed i{background:#7e9d70;border-radius:50%;width:5px;height:5px}.client-row{border-top:1px solid #f0eee9;align-items:center;gap:8px;margin-top:11px;padding-top:10px;display:flex}.client-avatar{color:#705a7c;background:#f1eaf4;width:28px;height:28px;font-size:11px;font-weight:750}.client-row>span:nth-child(2){gap:3px;display:grid}.client-row b{color:#344049;font-size:14px}.client-row small{color:#687276;font-size:12px}.reschedule-button{color:#52744c;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #f0eee9;justify-content:space-between;align-items:center;width:100%;margin-top:10px;padding:9px 2px 0;font-size:14px;font-weight:650;display:flex}.reschedule-button:hover{color:#315b3d}.app-footer{color:#a1a29a;justify-content:center;gap:6px;margin:28px 0 0;font-size:11px;display:flex}.mobile-nav{display:none}.coming-soon{border:1px solid var(--border);max-width:540px;box-shadow:var(--shadow);text-align:center;background:#fff;border-radius:18px;flex-direction:column;align-items:center;margin:9vh auto;padding:48px 30px;display:flex}.coming-soon>span{width:56px;height:56px;color:var(--sage-deep);background:#eef3e9;border-radius:16px;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.coming-soon h1{margin:8px 0;font-size:34px}.coming-soon p{color:#778087;max-width:320px;margin:3px 0 18px;font-size:15px;line-height:1.6}.coming-soon>small:last-child{color:#71816b;background:#f4f5ef;border-radius:8px;padding:9px 12px;font-size:12px}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#151e2159;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fffefa;border:1px solid #fffc;border-radius:18px;width:100%;max-width:490px;padding:27px;animation:.18s ease-out appear;position:relative;box-shadow:0 25px 90px #151e212e}@keyframes appear{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.close-modal{color:#66716c;cursor:pointer;background:#f1f2ed;border:0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:28px;display:flex;position:absolute;top:18px;right:18px}.modal-kicker{color:#7d9471;letter-spacing:.14em;font-size:11px;font-weight:750}.modal h2{letter-spacing:-.04em;margin:7px 0 5px;font-size:29px}.modal-intro{color:#7a8386;margin:0 0 20px;font-size:14px}.modal form{gap:13px;display:grid}.choice-group{border:0;gap:7px;min-width:0;margin:1px 0 0;padding:0;display:grid}.choice-group legend{color:#505a60;margin-bottom:7px;font-size:14px;font-weight:700}.choice-card{cursor:pointer;background:#fff;border:1px solid #e7e6df;border-radius:10px;align-items:flex-start;min-width:0;padding:10px 11px;gap:9px!important;display:flex!important}.choice-card.chosen{background:#f5f8f1;border-color:#a7bd9a}.choice-card input{accent-color:#315b3d;flex:none;width:16px;height:16px;margin:2px 0 0}.choice-card span{gap:4px;min-width:0;display:grid}.choice-card b{color:#334039;font-size:14px}.choice-card small{color:#687276;font-size:12px;font-weight:400;line-height:1.4}.single-session-note{color:#52664c;background:#f2f4ed;border-radius:8px;padding:10px 11px;font-size:12px;line-height:1.45}.modal label{color:#505a60;gap:6px;font-size:12px;font-weight:650;display:grid}.modal input,.modal select{color:#26313a;background:#fff;border:1px solid #e4e3dc;border-radius:8px;width:100%;height:38px;padding:0 10px;font-size:14px}.modal input::placeholder{color:#a0a5a3}.form-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.demo-note{color:#71806b;background:#f2f4ed;border-radius:7px;padding:9px 10px;font-size:11px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.secondary-button{border:1px solid var(--border);color:#616a70;cursor:pointer;background:#fff;border-radius:9px;min-height:38px;padding:0 13px;font-size:12px;font-weight:650}.modal-actions .primary-button{min-height:38px}.saved-state{text-align:center;flex-direction:column;align-items:center;padding:18px 6px 5px;display:flex}.saved-check{color:#54724a;background:#e8f0e3;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.saved-state h2{margin-top:14px;font-size:24px}.saved-state p{color:#7c8588;margin:0 0 18px;font-size:14px}@media (width<=1200px){.sidebar{width:220px}.main-area{margin-left:220px}.topbar{padding:0 26px}.content-area{padding-left:26px;padding-right:26px}.metrics-grid{gap:9px}.metric-card{gap:9px;padding:14px 11px}.metric-icon{width:33px;height:33px}.metric-title{font-size:14px}.metric-card small{font-size:11px}}@media (width<=980px){.sidebar{width:76px;padding:19px 10px 13px}.brand-lockup{justify-content:center;min-height:75px;padding:0 0 15px}.brand-copy,.sidebar-caption,.nav-item span,.care-card,.side-profile>span:nth-child(2),.side-profile>svg{display:none}.side-nav{margin-top:15px}.nav-item{justify-content:center;min-height:45px;padding:0;position:relative}.nav-item.active:after{background:var(--sage-deep);content:"";border-radius:3px;width:3px;height:21px;position:absolute;left:0}.sidebar-bottom{justify-content:center;display:flex}.side-profile{border:0;justify-content:center;padding:12px 0 0}.main-area{margin-left:76px}.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(250px,.85fr)}.item-count{display:none}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:94px;padding:14px}}@media (width<=700px){.sidebar{display:none}.main-area{margin-left:0;padding-bottom:78px}.topbar{height:58px;padding:0 16px}.mobile-brand{align-items:center;gap:8px;display:flex}.mobile-brand .brand-mark{width:29px;height:29px}.mobile-brand b{letter-spacing:-.02em;font-size:14px}.breadcrumb{display:none}.topbar-actions{gap:4px}.icon-button{width:34px;height:34px}.top-profile,.topbar-divider{display:none}.search-input{background:var(--cream);width:min(38vw,155px);height:33px}.content-area{padding:24px 16px 23px}.welcome-row{align-items:flex-start;gap:12px;margin-bottom:14px}.welcome-row h1{margin-top:7px;font-size:32px}.welcome-row p{max-width:230px;font-size:15px}.new-session{border-radius:9px;gap:0;width:39px;min-width:39px;height:38px;min-height:38px;padding:0;font-size:0}.demo-banner{flex-wrap:wrap;min-height:32px;margin-bottom:13px;padding:5px 9px;font-size:12px}.metrics-grid{gap:8px;margin-bottom:12px}.metric-card{border-radius:12px;gap:9px;min-height:80px;padding:11px 9px}.metric-icon{border-radius:9px;width:30px;height:30px}.metric-icon svg{width:16px;height:16px}.metric-title{font-size:12px}.metric-card strong{margin-top:4px;font-size:25px}.metric-card small{margin-top:2px;font-size:10px}.dashboard-grid{grid-template-columns:1fr;gap:11px}.panel{border-radius:13px}.week-panel{padding:13px 11px 8px}.panel-title{gap:7px}.panel-title h2{font-size:16px}.panel-icon{width:28px;height:28px}.panel-icon svg{width:16px;height:16px}.week-range{gap:2px;font-size:12px}.week-range button{width:20px;height:22px}.day-row{gap:7px;min-height:58px;padding:7px 3px}.day-name{flex-basis:38px}.day-name b{font-size:12px}.day-name small{font-size:11px}.day-items,.day-item{gap:5px}.item-time{flex-basis:34px;font-size:11px}.specialty-tag{padding:4px 6px;font-size:11px}.item-count{display:none}.right-column{grid-template-rows:auto;grid-template-columns:1fr;gap:10px}.revenue-panel{min-height:176px;padding:11px 10px}.revenue-panel .panel-header,.upcoming-panel .panel-header{gap:5px}.revenue-panel .panel-title h2,.upcoming-panel .panel-title h2{font-size:16px}.period{margin:10px 0 6px;font-size:12px}.revenue-amount{flex-direction:row;align-items:center;gap:8px}.revenue-amount strong{font-size:32px}.trend{padding:4px 6px;font-size:11px}.revenue-note{max-width:none;font-size:11px}.chart{gap:4px;width:39%;height:43px;bottom:24px;right:12px}.chart-labels{width:43%;font-size:10px;right:10px}.upcoming-panel{padding:10px 8px 7px}.upcoming-panel .panel-header{margin-bottom:5px}.upcoming-panel .panel-icon{width:25px;height:25px}.upcoming-panel .quiet-link{display:none}.upcoming-row{flex-direction:row;align-items:center;gap:10px;min-height:58px;padding:8px 0}.upcoming-time{flex:0 0 95px;font-size:11px}.upcoming-row>div{gap:3px}.upcoming-row .specialty-tag{padding:4px 6px;font-size:11px}.upcoming-row small{font-size:11px}.today-section{margin-top:21px}.section-heading{margin-bottom:9px}.section-heading h2{font-size:21px}.section-heading .quiet-link{font-size:11px}.today-grid{grid-template-columns:1fr;gap:8px}.session-card{padding:11px}.session-card-top{margin-bottom:8px}.client-row{margin-top:8px;padding-top:8px}.app-footer{margin-top:20px;font-size:11px}.mobile-nav{z-index:15;height:67px;padding:6px 5px max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf5;justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#78817e;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:10px;display:flex}.mobile-nav button span{white-space:nowrap}.mobile-nav button.active{color:#315b3d;background:#eff4e9;font-weight:700}.mobile-nav button svg{width:18px;height:18px}.modal-backdrop{align-items:flex-end;padding:0}.modal{max-width:none;padding:25px 20px max(23px, env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.modal h2{font-size:32px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.modal .choice-card{align-items:center;gap:12px!important;display:flex!important}.modal .choice-card input[type=radio]{flex:0 0 18px;width:18px;min-width:18px;height:18px;min-height:18px;margin:0;padding:0}.modal .choice-card>span{flex:1;gap:4px;min-width:0;display:grid}.modal-wide{max-width:760px}.client-modal{overscroll-behavior:contain;max-height:calc(100vh - 36px);overflow-y:auto}.client-modal form{gap:18px}.client-form-section{border-bottom:1px solid #eeeae3;padding-bottom:15px}.client-form-section h3{color:#35423b;letter-spacing:-.02em;margin:0 0 12px;font-size:16px}.client-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.address-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.address-grid label:nth-child(2){grid-column:span 2}.cep-hint{color:#717c76;margin-top:8px;font-size:12px;line-height:1.45;display:block}.portal-note{color:#52654d;background:#f4f6f0;border:1px solid #e7ebdf;border-radius:10px;align-items:flex-start;gap:9px;margin-top:12px;padding:12px;font-size:12px;line-height:1.5;display:flex}.portal-note svg{flex:none;margin-top:1px}.clients-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.clients-heading h1{margin:8px 0 6px}.clients-heading p{color:#68727a;margin:0;font-size:15px}.clients-toolbar{color:#65706f;justify-content:space-between;align-items:center;gap:16px;margin-bottom:13px;font-size:13px;display:flex}.client-search{border:1px solid var(--border);color:#738078;background:#fff;border-radius:11px;align-items:center;gap:9px;width:min(420px,100%);height:44px;padding:0 12px;display:flex}.client-search input{color:#26313a;background:0 0;border:0;outline:0;width:100%;font-size:13px}.client-search input::placeholder{color:#929a97}.clients-table-wrap{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:14px;overflow-x:auto}.clients-table{border-collapse:collapse;text-align:left;width:100%;min-width:760px}.clients-table th{border-bottom:1px solid var(--border);color:#6f7a75;text-transform:uppercase;letter-spacing:.04em;padding:15px 14px;font-size:11px;font-weight:700}.clients-table td{color:#515d61;white-space:nowrap;border-bottom:1px solid #f0eee9;padding:14px;font-size:13px}.clients-table tbody tr:last-child td{border-bottom:0}.client-table-person{align-items:center;gap:10px;display:flex}.client-table-person .avatar{width:36px;height:36px}.client-table-person>span:last-child{gap:3px;display:grid}.client-table-person b{color:#26313a;font-size:13px}.client-table-person small,.table-email{color:#7b8586;font-size:11px;display:block}.table-email{margin-top:4px}.client-status{color:#54734b;align-items:center;gap:6px;font-size:12px;display:inline-flex}.client-status i,.client-demo-notice i{background:#82a076;border-radius:50%;width:7px;height:7px}.client-demo-notice{color:#687763;align-items:center;gap:8px;margin-top:14px;font-size:12px;display:flex}.empty-clients{color:#78827e;text-align:center;padding:28px;font-size:14px}@media (width<=700px){.client-modal{max-height:92dvh;padding:23px 18px max(20px, env(safe-area-inset-bottom))}.client-form-grid{grid-template-columns:1fr}.address-grid{grid-template-columns:1fr 1fr}.address-grid label:nth-child(2){grid-column:span 2}.clients-heading{align-items:flex-start}.clients-heading h1{font-size:32px}.clients-heading p{font-size:13px}.clients-heading .primary-button{gap:0;width:42px;min-width:42px;padding:0;font-size:0}.clients-toolbar{flex-direction:column;align-items:flex-start}.client-search{width:100%}}.cpf-hint{color:#7b8580;margin-top:5px;font-size:11px;line-height:1.4;display:block}.cpf-error{color:#ad3e39;margin-top:5px;font-size:12px;font-weight:600;line-height:1.4;display:block}.modal input[aria-invalid=true]{border-color:#c94d48;box-shadow:0 0 0 2px #c94d481a}.therapist-summary{background:linear-gradient(110deg,#f2f5ed,#faf8f3);border:1px solid #e7ebdf;border-radius:13px;align-items:center;gap:12px;margin:0 0 22px;padding:15px 17px;display:flex}.therapist-summary-icon{width:40px;height:40px;color:var(--sage-deep);background:#fff;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.therapist-summary b,.therapist-summary small{display:block}.therapist-summary b{color:#35423b;font-size:15px}.therapist-summary small{color:#707b75;margin-top:3px;font-size:12px}.therapist-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.therapist-card{border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:19px}.therapist-card-head{justify-content:space-between;align-items:center;display:flex}.therapist-avatar{border-radius:15px;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:750;display:inline-flex}.therapist-avatar.sage{color:#456340;background:#e7efe0}.therapist-avatar.lilac{color:#765e82;background:#f0e7f3}.therapist-avatar.lavender{color:#6b6273;background:#f0e9f3}.therapist-status{color:#737875;background:#f3f2ee;border-radius:20px;align-items:center;gap:6px;padding:5px 8px;font-size:11px;font-weight:650;display:inline-flex}.therapist-status i{background:#aaa;border-radius:50%;width:6px;height:6px}.therapist-status.active{color:#54734b;background:#eff4e9}.therapist-status.active i{background:#82a076}.therapist-card h2{color:#26313a;letter-spacing:-.03em;margin:14px 0 5px;font-size:20px}.therapist-contact{color:#778087;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.7}.therapist-specialties{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:48px;margin-top:12px;display:flex}.therapist-specialties .specialty-tag{font-size:11px}.therapist-availability{border-top:1px solid #f0eee9;border-bottom:1px solid #f0eee9;gap:5px;margin-top:8px;padding:11px 0;display:grid}.therapist-availability small{color:#89918b;letter-spacing:.08em;font-size:10px;font-weight:750}.therapist-availability b{color:#48564f;font-size:12px;font-weight:650}.therapist-availability span{color:#778087;font-size:12px}.therapist-card-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.therapist-card-actions .secondary-button{min-height:34px;padding:0 10px;font-size:11px}.therapist-toggle-button{color:#687763;cursor:pointer;background:0 0;border:0;padding:7px 3px;font-size:11px;font-weight:650}.therapist-toggle-button:hover{color:#315b3d;text-decoration:underline}.therapist-modal{overscroll-behavior:contain;max-height:calc(100vh - 36px);overflow-y:auto}.therapist-modal form{gap:16px}.therapist-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.modal .therapist-option{color:#505a60;cursor:pointer;background:#fff;border:1px solid #e7e6df;border-radius:9px;align-items:center;gap:8px;min-height:42px;padding:9px;font-size:12px;display:flex}.modal .therapist-option input,.therapist-day input,.therapist-active-toggle input{accent-color:#315b3d;width:16px;min-width:16px;height:16px;min-height:16px;margin:0}.therapist-days{flex-wrap:wrap;gap:7px;margin:2px 0 12px;display:flex}.modal .therapist-day{color:#6d7772;cursor:pointer;background:#fff;border:1px solid #e6e5df;border-radius:9px;justify-content:center;align-items:center;width:42px;height:38px;font-size:11px;display:inline-flex}.modal .therapist-day input{opacity:0;pointer-events:none;position:absolute}.modal .therapist-day.selected{color:#315b3d;background:#eff4e9;border-color:#a7bd9a;font-weight:750}.therapist-active-toggle{cursor:pointer;background:#fff;border:1px solid #e7e6df;border-radius:10px;align-items:flex-start;padding:11px;gap:10px!important;display:flex!important}.therapist-active-toggle>span{gap:3px;display:grid}.therapist-active-toggle b{color:#45534b;font-size:12px}.therapist-active-toggle small{color:#7b8580;font-size:11px;font-weight:400}@media (width<=1100px){.therapist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.therapist-grid{grid-template-columns:1fr}.therapist-modal{max-height:92dvh;padding:23px 18px max(20px, env(safe-area-inset-bottom))}.therapist-options{grid-template-columns:1fr}.therapist-hours{grid-template-columns:1fr 1fr}.therapist-summary small{line-height:1.4}}.agenda-filters{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;margin:0 0 17px;padding:14px;display:grid}.agenda-filters label{color:#59645f;gap:6px;font-size:12px;font-weight:650;display:grid}.agenda-filters select{color:#344049;background:#fff;border:1px solid #e4e3dc;border-radius:8px;width:100%;height:40px;padding:0 10px;font-size:13px}.agenda-calendar{overflow:hidden}.agenda-calendar-header{border-bottom:1px solid #eeece7;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:13px 16px;display:flex}.agenda-period-controls{align-items:center;gap:7px;min-width:0;display:flex}.agenda-period-controls h2{color:#344049;text-transform:capitalize;margin:0 0 0 7px;font-size:18px;font-weight:680}.agenda-period-controls .secondary-button{min-height:34px;font-size:11px}.calendar-arrow{color:#5a665f;cursor:pointer;background:#fff;border:1px solid #e8e6df;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.calendar-arrow:hover{background:#f3f5ef}.agenda-view-switch{background:#f5f4ef;border:1px solid #ebe9e3;border-radius:9px;gap:2px;padding:3px;display:flex}.agenda-view-switch button{color:#707a76;cursor:pointer;background:0 0;border:0;border-radius:7px;min-width:55px;height:30px;font-size:12px}.agenda-view-switch button.selected{color:#315b3d;background:#fff;font-weight:700;box-shadow:0 1px 4px #19231e1a}.agenda-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:770px;display:grid}.agenda-week-day{border-right:1px solid #efeee9;min-height:330px}.agenda-week-day:last-child{border-right:0}.agenda-week-day.today{background:#fbfcf8}.agenda-day-heading{cursor:pointer;background:0 0;border:0;border-bottom:1px solid #efeee9;justify-items:center;gap:4px;width:100%;padding:12px 6px;display:grid}.agenda-day-heading small{color:#89918d;text-transform:uppercase;font-size:10px;font-weight:700}.agenda-day-heading b{color:#45514c;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:flex}.agenda-week-day.today .agenda-day-heading b{background:var(--sage-deep);color:#fff}.agenda-week-events{align-content:start;gap:6px;padding:7px 5px;display:grid}.agenda-week-event{color:#3f5940;text-align:left;cursor:pointer;background:#edf3e8;border:0;border-left:3px solid #8fa67f;border-radius:5px;gap:4px;min-width:0;padding:7px 6px;display:grid}.agenda-week-event.lilac{color:#6c5676;background:#f2eaf4;border-left-color:#a58ab0}.agenda-week-event.lavender{color:#655d6b;background:#f1edf3;border-left-color:#a99caf}.agenda-week-event.completed{opacity:.72}.agenda-week-event.cancelled{opacity:.55;text-decoration:line-through}.agenda-week-event b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.agenda-week-event small{text-overflow:ellipsis;font-size:9px;line-height:1.35;overflow:hidden}.agenda-day-view{align-content:start;gap:9px;min-height:250px;padding:14px;display:grid}.agenda-event{background:#f8faf5;border:1px solid #e8e9e1;border-left:4px solid #8fa67f;border-radius:11px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.agenda-event.lilac{background:#fbf8fc;border-left-color:#a58ab0}.agenda-event.lavender{background:#faf9fb;border-left-color:#a99caf}.agenda-event.completed{opacity:.75}.agenda-event.cancelled{opacity:.55}.agenda-event-time{color:#42504a;font-size:14px;font-weight:750}.agenda-event-main{gap:3px;min-width:0;display:grid}.agenda-event-main b{color:#303b38;font-size:14px}.agenda-event-main span,.agenda-event-main small{color:#67716d;font-size:12px}.agenda-event button{color:#52744c;cursor:pointer;background:#fff;border:1px solid #dde5d6;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:650}.agenda-empty{color:#818984;text-align:center;padding:48px 15px;font-size:14px}.agenda-month{padding-bottom:8px}.agenda-month-headings,.agenda-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:620px;display:grid}.agenda-month-headings{border-bottom:1px solid #efeee9;padding:11px 0}.agenda-month-headings b{color:#818a85;text-align:center;text-transform:uppercase;font-size:10px}.agenda-month-day{text-align:left;cursor:pointer;background:#fff;border:1px solid #f0eee9;border-top:0;border-left:0;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;min-height:92px;padding:7px;display:flex}.agenda-month-day:nth-child(7n){border-right:0}.agenda-month-day>span{color:#4a5550;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:11px;display:flex}.agenda-month-day.outside>span{color:#b8bdb9}.agenda-month-day.today>span{background:var(--sage-deep);color:#fff}.agenda-month-event{color:#455d40;text-overflow:ellipsis;white-space:nowrap;background:#edf3e8;border-radius:4px;max-width:100%;padding:3px 4px;font-size:9px;overflow:hidden}.agenda-month-event.lilac{color:#6c5676;background:#f2eaf4}.agenda-month-event.lavender{color:#655d6b;background:#f1edf3}.agenda-more{color:#758071;font-size:9px}.agenda-legend{color:#707a75;border-top:1px solid #efeee9;flex-wrap:wrap;align-items:center;gap:13px;padding:11px 14px;font-size:10px;display:flex}.agenda-legend span{align-items:center;gap:5px;display:inline-flex}.agenda-legend i{background:#8fa67f;border-radius:3px;width:8px;height:8px}.agenda-legend i.lilac{background:#a58ab0}.agenda-legend i.lavender{background:#a99caf}.agenda-result-count{margin-left:auto}@media (width<=700px){.agenda-filters{grid-template-columns:1fr;gap:9px;padding:11px}.agenda-calendar-header{flex-direction:column;align-items:flex-start;padding:12px}.agenda-period-controls{width:100%}.agenda-period-controls h2{font-size:14px}.agenda-period-controls .secondary-button{padding:0 9px}.agenda-view-switch{align-self:flex-end}.agenda-week-grid{overscroll-behavior-x:contain;scrollbar-width:thin;grid-template-columns:repeat(7,minmax(104px,1fr));width:100%;min-width:0;overflow-x:auto}.agenda-month{overscroll-behavior-x:contain;scrollbar-width:thin;overflow-x:auto}.agenda-week-day{min-height:260px}.agenda-event{grid-template-columns:49px minmax(0,1fr);gap:8px}.agenda-event button{grid-column:2;justify-self:start}.agenda-result-count{width:100%;margin-left:0}}.agenda-week-event{cursor:default}.agenda-week-event button{color:inherit;cursor:pointer;background:#ffffffbf;border:0;border-radius:4px;justify-self:start;padding:3px 5px;font-size:9px;font-weight:700}.agenda-week-event button:hover{background:#fff;text-decoration:underline}.agenda-specialty-legend{color:#8a928d;font-style:italic}.agenda-event-main .specialty-tag{width:fit-content;font-size:10px}.billing-period-row{justify-content:space-between;align-items:end;gap:12px;margin:-5px 0 16px;display:flex}.billing-period-row label,.billing-status-filter{color:#606b66;gap:5px;font-size:12px;font-weight:650;display:grid}.billing-period-row input,.billing-status-filter select{border:1px solid var(--border);color:#35423b;background:#fff;border-radius:9px;min-width:170px;height:39px;padding:0 10px;font-size:13px}.billing-period-row>span{color:#828a85;padding-bottom:8px;font-size:11px}.billing-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.billing-stat{border:1px solid var(--border);min-width:0;min-height:132px;box-shadow:var(--shadow);background:#fff;border-radius:13px;grid-template-columns:38px 1fr;align-content:start;column-gap:10px;padding:15px;display:grid}.billing-stat-icon{border-radius:10px;grid-row:span 3;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.billing-stat-icon.sage{color:#58764d;background:#eff4e9}.billing-stat-icon.lilac{color:#846a91;background:#f2ebf5}.billing-stat-icon.sand{color:#9a7757;background:#f7f1e9}.billing-stat-icon.rose{color:#a05f5b;background:#f8eeee}.billing-stat>small{color:#707b78;align-self:center;font-size:12px}.billing-stat>b{color:#26313a;letter-spacing:-.04em;white-space:nowrap;margin-top:11px;font-size:clamp(20px,2vw,27px)}.billing-stat>span:last-child{color:#7d8782;margin-top:5px;font-size:10px}.billing-toolbar{justify-content:space-between;align-items:end;gap:14px;margin:0 0 12px;display:flex}.billing-toolbar .client-search{width:min(420px,100%)}.billing-status-filter select{min-width:150px}.billing-table-wrap{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:14px;overflow-x:auto}.billing-table{border-collapse:collapse;text-align:left;width:100%;min-width:920px}.billing-table th{border-bottom:1px solid var(--border);color:#727d77;letter-spacing:.05em;text-transform:uppercase;padding:14px 12px;font-size:10px;font-weight:750}.billing-table td{color:#515d61;white-space:nowrap;border-bottom:1px solid #f0eee9;padding:13px 12px;font-size:12px}.billing-table tbody tr:last-child td{border-bottom:0}.billing-table td:first-child{min-width:160px}.billing-table td:first-child b,.billing-table td:first-child small{display:block}.billing-table td:first-child b{color:#303b38;font-size:13px}.billing-table td:first-child small{color:#858d89;margin-top:4px;font-size:10px}.billing-status-pill{color:#69736d;background:#f2f3ef;border-radius:18px;padding:5px 8px;font-size:10px;font-weight:700;display:inline-flex}.billing-status-pill.paid{color:#4e7048;background:#edf4e9}.billing-status-pill.open{color:#857348;background:#f3f1e9}.billing-status-pill.partially_paid{color:#786183;background:#f2ebf5}.billing-status-pill.overdue{color:#a34e49;background:#f8ecea}.billing-status-pill.cancelled{color:#85837f;background:#f0efed}.billing-row-actions{align-items:center;gap:8px;display:flex}.billing-row-actions button{color:#52744c;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 6px;font-size:10px;font-weight:700}.billing-row-actions button:hover{background:#f2f5ee}.billing-notice{color:#52744c;background:#f2f7ee;border:1px solid #dce8d5;border-radius:9px;justify-content:space-between;align-items:center;margin:0 0 12px;padding:10px 12px;font-size:12px;display:flex}.billing-notice span{align-items:center;gap:8px;display:flex}.billing-notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:20px}.billing-detail-modal{max-width:650px}.billing-detail-lines{border-top:1px solid #eeeae3;margin:17px 0 0}.billing-detail-lines>div{color:#5f6a64;border-bottom:1px solid #f0eee9;justify-content:space-between;gap:12px;padding:12px 2px;font-size:13px;display:flex}.billing-detail-lines b{color:#35423b}.billing-detail-totals{color:#65706a;background:#f6f6f1;border-radius:10px;gap:9px;margin-top:15px;padding:13px;font-size:12px;display:grid}.billing-detail-totals span{justify-content:space-between;display:flex}.billing-detail-totals b{color:#344039;font-size:13px}@media (width<=1050px){.billing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.billing-metrics{gap:8px}.billing-stat{grid-template-columns:30px 1fr;column-gap:7px;min-height:112px;padding:11px 9px}.billing-stat-icon{border-radius:8px;width:29px;height:29px}.billing-stat-icon svg{width:15px;height:15px}.billing-stat>small{font-size:10px}.billing-stat>b{margin-top:8px;font-size:19px}.billing-stat>span:last-child{font-size:9px}.billing-period-row{flex-direction:column;align-items:flex-start}.billing-period-row>span{padding-bottom:0}.billing-toolbar{flex-direction:column;align-items:stretch}.billing-toolbar .client-search,.billing-status-filter,.billing-status-filter select{width:100%}}.auth-page{background:radial-gradient(circle at 50% 15%, #f0f3e9, transparent 38%), var(--cream);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:28px 18px;display:flex}.auth-brand{margin-bottom:18px}.auth-brand .brand-lockup{min-height:0;padding:0}.auth-card{border:1px solid var(--border);background:#fffefa;border-radius:18px;width:min(100%,440px);padding:31px;box-shadow:0 18px 55px #222b3414}.auth-icon{width:43px;height:43px;color:var(--sage-deep);background:#eff4e9;border-radius:13px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.auth-card h1{margin:8px 0 6px;font-size:34px}.auth-card>p{color:#6e7975;margin:0 0 22px;font-size:14px;line-height:1.5}.auth-card form{gap:14px;display:grid}.auth-card label{color:#4e5955;gap:7px;font-size:13px;font-weight:650;display:grid}.auth-card input{color:#26313a;background:#fff;border:1px solid #e3e2dc;border-radius:9px;width:100%;height:44px;padding:0 12px;font-size:15px}.auth-card input::placeholder{color:#a0a5a3}.auth-card form .primary-button{width:100%;min-height:44px;margin-top:2px}.auth-card form .primary-button:disabled{opacity:.65;cursor:wait}.auth-error{color:#984b47;background:#fbf0ef;border:1px solid #f0d9d6;border-radius:8px;padding:10px 11px;font-size:12px;line-height:1.45}.auth-footnote{color:#7d8782;text-align:center;margin-top:18px;font-size:11px;line-height:1.5;display:block}.auth-copyright{color:#88918b;margin-top:18px;font-size:11px}.auth-access-error{text-align:center}.auth-access-error .auth-icon{margin-left:auto;margin-right:auto}.auth-access-error .secondary-button{margin-top:8px}.auth-loading{background:var(--cream);color:#68736d;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-size:14px;display:flex}.auth-spinner{border:3px solid #dce6d5;border-top-color:var(--sage-deep);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.signout-button{color:#68736d}@media (width<=700px){.auth-card{padding:24px 20px}.auth-card h1{font-size:31px}}
