:root{color:#1c1d20;font-synthesis:none;--orange:#ff5a1f;--orange-dark:#e9470d;--orange-soft:#fff0e9;--ink:#1c1d20;--muted:#777a80;--line:#e8e7e3;--surface:#fff;--canvas:#f7f7f5;--green:#16875f;--green-soft:#e8f6ef;--amber:#b7790b;--amber-soft:#fff5da;--red:#d94b43;--red-soft:#fff0ee;--shadow:0 18px 50px #1d1f2214;background:#f7f7f5;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #ff5a1f38}h1,h2,h3,p{margin-top:0}.eyebrow{color:var(--orange-dark);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:7px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.brand{width:fit-content;line-height:0}.brand__logo{object-fit:contain;width:auto;max-width:min(260px,100%);height:36px;display:block}.brand--compact .brand__logo{max-width:196px;height:28px}.sidebar__top .brand__logo{max-width:100%;height:26px;margin:0 auto}.public-header .brand__logo{max-width:230px;height:32px}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:41px;padding:0 16px;font-size:13px;font-weight:750;text-decoration:none;transition:all .18s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.48}.button--primary{color:#fff;background:var(--orange);box-shadow:0 8px 20px #ff5a1f33}.button--primary:hover:not(:disabled){background:var(--orange-dark)}.button--secondary{color:#3d3f43;border-color:var(--line);background:#fff}.button--secondary:hover:not(:disabled),.button--quiet:hover:not(:disabled){background:#fbfaf8;border-color:#d3d2ce}.button--quiet{color:#64676c;background:0 0;border-color:#0000}.button--danger-text{color:var(--red);background:0 0;border-color:#f3cfcb}.button--full{width:100%}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:inline-grid;position:relative}.link-button{color:var(--orange-dark);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;font-size:12px;font-weight:750;display:flex}.spinner{border:2px solid #f0d4c9;border-top-color:var(--orange);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}label{color:#44464a;gap:7px;font-size:12px;font-weight:700;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dededb;border-radius:10px;padding:11px 12px;font-size:14px;transition:border-color .16s,box-shadow .16s}input,select{min-height:43px}input:hover,select:hover,textarea:hover{border-color:#cac9c5}input:focus,select:focus,textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #ff5a1f1a}textarea{resize:vertical}.optional{color:#999b9e;font-size:11px;font-weight:500}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-error{color:#a93630;background:var(--red-soft);border:1px solid #f4d0cd;border-radius:9px;padding:11px 13px;font-size:12px}.label-with-icon{align-items:center;gap:6px;display:inline-flex}.login-page{background:#fff;grid-template-columns:minmax(480px,1.08fr) minmax(420px,.92fr);min-height:100vh;display:grid}.login-story{background:#f5f2ec;border-right:1px solid #ece8df;flex-direction:column;min-height:100vh;padding:48px clamp(48px,7vw,105px);display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:80px solid #ff5a1f12;border-radius:50%;width:390px;height:390px;position:absolute;top:65px;right:-195px}.login-story__copy{z-index:1;max-width:600px;margin-top:auto;position:relative}.login-story h1{letter-spacing:-.055em;margin:20px 0 18px;font-size:clamp(45px,5.2vw,74px);line-height:.99}.login-story__copy>p{color:#65676b;max-width:510px;font-size:17px;line-height:1.6}.login-preview{width:min(530px,94%);box-shadow:var(--shadow);z-index:1;background:#ffffffd1;border:1px solid #e7e2da;border-radius:18px;margin:35px 0 25px;position:relative;overflow:hidden}.preview-date{border-bottom:1px solid var(--line);color:#55575b;align-items:center;gap:9px;min-height:54px;padding:0 18px;font-size:13px;display:flex}.preview-date b{color:var(--orange-dark);margin-left:auto}.preview-item{border-bottom:1px solid #eeece8;grid-template-columns:48px 9px 1fr 22px;align-items:center;gap:10px;min-height:72px;padding:0 18px;display:grid}.preview-item:last-child{border:0}.preview-item time{font-size:13px;font-weight:800}.preview-item span{gap:4px;display:grid}.preview-item b{font-size:13px}.preview-item small{color:var(--muted)}.dot{border-radius:50%;width:7px;height:7px;display:inline-block}.dot--green{background:#21a375}.dot--amber{background:#efa92d}.dot--red{background:#e3564e}.login-story__foot{color:#8a8985;margin-top:auto}.login-panel{place-items:center;padding:55px;display:grid}.login-card{gap:18px;width:min(390px,100%);display:grid}.login-card h2{letter-spacing:-.04em;margin:2px 0 -10px;font-size:34px}.login-card>p{color:var(--muted);margin:0 0 8px}.mobile-logo{display:none}.demo-access{border-top:1px solid var(--line);color:var(--muted);text-align:center;gap:12px;margin-top:10px;padding-top:22px;font-size:11px;display:grid}.demo-access>div{justify-content:center;gap:8px;display:flex}.demo-access button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:7px;min-width:90px;padding:8px 10px;font-size:12px;display:flex}.demo-access button.active{border-color:var(--orange);background:var(--orange-soft);color:var(--orange-dark)}.demo-access button i{background:#efefed;border-radius:50%;place-items:center;width:25px;height:25px;font-size:9px;font-style:normal;font-weight:800;display:grid}.app-loading,.page-loading,.public-loading{min-height:60vh;color:var(--muted);place-content:center;justify-items:center;gap:14px;display:grid}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:20;border-right:1px solid var(--line);background:#fff;flex-direction:column;width:232px;min-height:100vh;padding:25px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar__top{justify-content:center;align-items:center;padding:4px 0 28px;display:flex;position:relative}.sidebar__top .mobile-only{position:absolute;top:0;right:0}.sidebar__top .brand{justify-content:center;width:100%;display:flex}.sidebar nav{gap:4px;display:grid}.sidebar nav button{color:#62656a;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;min-height:43px;padding:0 12px;font-size:13px;display:flex}.sidebar nav button:hover{color:var(--ink);background:#faf9f7}.sidebar nav button.active{background:var(--orange-soft);color:var(--orange-dark);box-shadow:inset 3px 0 var(--orange);font-weight:750}.sidebar nav button em{background:var(--orange);color:#fff;border-radius:4px;margin-left:auto;padding:3px 5px;font-size:8px;font-style:normal;font-weight:900}.sidebar__plan{background:#fbfaf8;border:1px solid #ede9e4;border-radius:12px;gap:5px;margin-top:auto;padding:14px;display:grid}.sidebar__plan span{color:var(--orange-dark);align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.sidebar__plan b{font-size:12px}.sidebar__plan small{color:var(--muted);font-size:10px}.workspace{grid-column:2;min-width:0}.topbar{z-index:15;border-bottom:1px solid var(--line);background:#fffffff5;align-items:center;gap:18px;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.topbar__heading{flex:1;gap:3px;min-width:0;display:grid}.topbar__heading h1{letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:22px;line-height:1.15;overflow:hidden}.topbar__heading p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.topbar__actions{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.topbar__page-actions{align-items:center;gap:8px;margin-right:4px;display:flex}.topbar__page-actions:empty{display:none}.topbar__page-actions .button{min-height:38px;padding:0 14px;font-size:12px}.topbar__actions .icon-button i{background:var(--orange);border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:7px}.avatar{color:#fff;background:#292b2e;border-radius:50%;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.avatar--large{color:#7c4b32;background:#f1e4db;width:48px;height:48px;font-size:12px}.user-menu{position:relative}.user-menu__trigger{cursor:pointer;color:#64676c;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:4px 6px 4px 4px;display:flex}.user-menu__trigger:hover,.user-menu__trigger.is-open{color:var(--ink);background:#f7f6f3}.user-menu__trigger.is-open svg:last-child{transform:rotate(180deg)}.user-menu__trigger svg:last-child{transition:transform .16s}.user-menu__meta{text-align:left;gap:2px;display:grid}.user-menu__meta b{text-overflow:ellipsis;white-space:nowrap;max-width:180px;color:var(--ink);font-size:12px;overflow:hidden}.user-menu__meta small{color:var(--muted);font-size:9px}.user-menu__dropdown{z-index:30;border:1px solid var(--line);min-width:196px;box-shadow:var(--shadow);background:#fff;border-radius:12px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.user-menu__dropdown button{color:#3f4145;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 11px;font-size:13px;font-weight:650;display:flex}.user-menu__dropdown button:hover{background:#f7f6f3}.user-menu__logout{color:var(--red)!important}.content{min-height:calc(100vh - 72px)}.page{width:min(1430px,100%);margin:0 auto;padding:22px 34px 55px}.panel{border:1px solid var(--line);background:#fff;border-radius:14px}.mobile-only,.mobile-nav{display:none}.stats-grid{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-rows:24px 38px 20px;grid-template-columns:40px 1fr;align-items:center;min-height:132px;padding:17px;display:grid}.stat-icon{border-radius:10px;grid-row:1/3;place-items:center;width:37px;height:37px;display:grid}.stat-icon--orange{color:var(--orange-dark);background:var(--orange-soft)}.stat-icon--green{color:var(--green);background:var(--green-soft)}.stat-icon--amber{color:var(--amber);background:var(--amber-soft)}.stat-icon--red{color:var(--red);background:var(--red-soft)}.stat-card>span{color:var(--muted);font-size:11px}.stat-card strong{letter-spacing:-.04em;font-size:25px}.stat-card small{color:#929397;grid-column:1/3;align-self:end;font-size:10px}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);align-items:start;gap:14px;margin-top:14px;display:grid}.panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:71px;padding:16px 18px;display:flex}.panel header h2{letter-spacing:-.02em;margin:5px 0 0;font-size:17px}.appointment-list{padding:5px 18px 10px}.appointment-row{cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #efeeeb;grid-template-columns:50px 12px minmax(130px,1fr) auto 25px 20px;align-items:center;gap:9px;width:100%;min-height:74px;padding:8px 2px;display:grid}.appointment-row:last-child{border:0}.appointment-row:hover{background:#fbfaf8}.appointment-row time{gap:3px;font-size:12px;font-weight:800;display:grid}.appointment-row time small,.appointment-row__person small{color:var(--muted);font-size:10px;font-weight:400}.appointment-row__person{gap:4px;display:grid}.appointment-row__person b{font-size:12px}.timeline-dot{background:#bbb;border-radius:50%;width:7px;height:7px}.status--confirmed{--state:var(--green);--state-soft:var(--green-soft)}.status--pending,.status--requested{--state:var(--amber);--state-soft:var(--amber-soft)}.status--cancelled,.status--no_show{--state:var(--red);--state-soft:var(--red-soft)}.status--completed{--state:#49778d;--state-soft:#e9f2f5}.timeline-dot.status--confirmed{background:var(--green)}.timeline-dot.status--pending,.timeline-dot.status--requested{background:var(--amber)}.timeline-dot.status--cancelled,.timeline-dot.status--no_show{background:var(--red)}.timeline-dot.status--completed{background:#49778d}.badge{white-space:nowrap;border-radius:999px;width:fit-content;padding:5px 8px;font-size:9px;font-weight:750}.badge--confirmed{color:var(--green);background:var(--green-soft)}.badge--pending,.badge--requested{color:var(--amber);background:var(--amber-soft)}.badge--cancelled,.badge--no_show,.badge--red{color:var(--red);background:var(--red-soft)}.badge--completed{color:#49778d;background:#e9f2f5}.badge--neutral{color:#6d7074;background:#efefed}.side-stack{gap:14px;display:grid}.count-pill{width:25px;height:25px;color:var(--orange-dark);background:var(--orange-soft);border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.attention-panel>button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #efeeeb;grid-template-columns:38px 1fr 18px;align-items:center;gap:10px;width:calc(100% - 24px);min-height:68px;margin:0 12px;padding:9px 3px;display:grid}.attention-panel>button:last-child{border:0}.attention-panel>button>span:nth-child(2){gap:4px;display:grid}.attention-panel button b{font-size:11px}.attention-panel button small{color:var(--muted);font-size:9px}.attention-icon{border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.attention-icon--orange{color:var(--orange);background:var(--orange-soft)}.attention-icon--red{color:var(--red);background:var(--red-soft)}.attention-icon--gray{color:#6e7175;background:#f0f0ee}.empty-compact{min-height:150px;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.empty-compact span{gap:5px;display:grid}.empty-compact b{color:var(--ink);font-size:13px}.agenda-toolbar{border:1px solid var(--line);background:#fff;border-radius:13px 13px 0 0;align-items:center;gap:7px;min-height:58px;padding:8px 12px;display:flex}.agenda-toolbar>strong{text-transform:capitalize;margin-left:10px;font-size:13px}.date-control{border:1px solid var(--line);cursor:pointer;border-radius:9px;place-items:center;width:42px;height:38px;display:grid;position:relative}.date-control input{opacity:0;cursor:pointer;position:absolute;inset:0}.view-switch{border:1px solid var(--line);border-radius:9px;margin-left:auto;padding:3px;display:flex}.view-switch button{min-height:28px;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:0 12px;font-size:10px}.view-switch button.active{color:var(--orange-dark);background:var(--orange-soft);font-weight:800}.agenda-workspace{border:1px solid var(--line);background:#fff;border-top:0;border-radius:0 0 13px 13px;grid-template-columns:215px minmax(420px,1fr);min-height:660px;display:grid;overflow:hidden}.agenda-workspace.has-detail{grid-template-columns:205px minmax(390px,1fr) 320px}.agenda-rail{border-right:1px solid var(--line);background:#fcfbf9;padding:15px}.mini-calendar{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-rows:22px 34px;grid-template-columns:1fr 48px;align-items:center;padding:13px;display:grid}.mini-calendar span{color:#6f7175;text-transform:capitalize;font-size:10px}.mini-calendar strong{color:var(--orange);grid-area:1/2/3;justify-self:center;font-size:29px}.mini-calendar small{color:var(--muted);text-transform:capitalize}.professional-filter{gap:8px;margin-top:20px;display:grid}.professional-filter>span,.agenda-legend>span:first-child{color:#909195;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.professional-filter button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:34px 1fr 16px;align-items:center;gap:8px;width:100%;min-height:56px;padding:6px;display:grid}.professional-filter button.active{background:#fff;border-color:#eadfd9}.professional-filter button>i{color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;font-size:9px;font-style:normal;font-weight:800;display:grid}.professional-filter button span{gap:3px;display:grid}.professional-filter button b{font-size:10px}.professional-filter button small{color:var(--muted);font-size:8px}.professional-filter button svg{color:var(--orange)}.agenda-legend{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px;margin-top:24px;padding-top:15px;display:flex}.agenda-legend span{color:var(--muted);align-items:center;gap:5px;font-size:8px;display:flex}.day-calendar>header{border-bottom:1px solid var(--line);min-height:48px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 16px;font-size:10px;display:flex}.day-calendar header span{color:var(--orange-dark);font-weight:900}.calendar-list{position:relative}.calendar-hour{grid-template-columns:58px 1fr;min-height:67px;display:grid}.calendar-hour>time{color:#9a9b9f;text-align:right;border-right:1px solid #eeece9;padding:9px 10px;font-size:9px}.calendar-hour>div{border-bottom:1px solid #efeeeb;gap:4px;min-height:67px;padding:4px 8px;display:grid}.calendar-event{border:1px solid color-mix(in srgb, var(--state) 28%, white);border-left:3px solid var(--state);background:var(--state-soft);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:1fr auto 20px;align-items:center;gap:7px;width:100%;min-height:58px;padding:7px 9px;display:grid}.calendar-event:hover,.calendar-event.selected{transform:translateY(-1px);box-shadow:0 5px 15px #00000012}.calendar-event>span{gap:2px;display:grid}.calendar-event>span b{color:var(--state);font-size:8px}.calendar-event>span strong{font-size:10px}.calendar-event>span small{color:#6f7175;font-size:8px}.calendar-event--overbooking{--state:var(--red);--state-soft:var(--red-soft)}.calendar-empty{color:#a1a2a5;pointer-events:none;place-content:center;justify-items:center;gap:7px;min-height:170px;display:grid;position:absolute;inset:100px 30px auto 90px}.calendar-empty b{color:#5d6064;font-size:13px}.calendar-empty span{font-size:10px}.appointment-detail{border-left:1px solid var(--line);background:#fff}.appointment-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:73px;padding:14px 15px;display:flex}.appointment-detail h2{margin:5px 0 0;font-size:16px}.patient-summary{grid-template-columns:48px 1fr 38px;align-items:center;gap:9px;margin:15px;display:grid}.patient-summary>div{gap:4px;display:grid}.patient-summary b{font-size:12px}.patient-summary small{color:var(--muted);font-size:9px}.detail-status{margin:0 15px 13px}.detail-list{border-top:1px solid #efeeeb;border-bottom:1px solid #efeeeb;margin:0;padding:2px 15px 8px}.detail-list>div{grid-template-columns:105px 1fr;gap:8px;padding:11px 0;display:grid}.detail-list dt{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.detail-list dd{gap:3px;margin:0;font-size:10px;font-weight:750;display:grid}.detail-list dd small{color:var(--muted);font-size:9px;font-weight:400}.detail-price{border-bottom:1px solid #efeeeb;justify-content:space-between;margin:0 15px;padding:14px 0;font-size:10px;display:flex}.detail-price span{color:var(--muted)}.detail-price strong{font-size:13px}.detail-notes{margin:14px 15px}.detail-notes span{color:var(--muted);font-size:9px}.detail-notes p{color:#55575b;margin:5px 0;font-size:10px;line-height:1.45}.detail-actions{gap:8px;padding:15px;display:grid}.detail-actions .button{width:100%}.reschedule-form{background:#faf8f5;border-radius:10px;gap:11px;margin:15px;padding:13px;display:grid}.reschedule-form>div{justify-content:flex-end;gap:7px;display:flex}.modal-backdrop{z-index:50;background:#17181a73;place-items:center;padding:25px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:17px;width:min(650px,100%);max-height:calc(100vh - 50px);overflow:auto;box-shadow:0 25px 80px #0003}.modal--small{width:min(540px,100%)}.modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:78px;padding:17px 20px;display:flex}.modal h2{margin:5px 0 0;font-size:21px}.modal form{gap:15px;padding:20px;display:grid}.modal form>footer{justify-content:flex-end;gap:8px;padding-top:5px;display:flex}.check-label{border:1px solid var(--line);cursor:pointer;border-radius:10px;grid-template-columns:18px 1fr;align-items:start;gap:9px;min-height:57px;padding:10px 12px;display:grid}.check-label input{width:16px;min-height:16px;accent-color:var(--orange)}.check-label span{gap:4px;display:grid}.check-label b{font-size:11px}.check-label small{color:var(--muted);font-size:9px;font-weight:400;line-height:1.4}.slot-picker{gap:9px;display:grid}.slot-picker>span,.public-slots>span{color:#44464a;font-size:12px;font-weight:700}.slot-picker>div,.public-slots>div{flex-wrap:wrap;gap:7px;display:flex}.slot-picker button,.public-slots button{border:1px solid var(--line);color:#4b4e52;cursor:pointer;background:#fff;border-radius:8px;min-width:66px;min-height:36px;padding:0 11px;font-size:11px}.slot-picker button.active,.public-slots button.active{color:#fff;border-color:var(--orange);background:var(--orange);font-weight:800}.slot-picker p,.public-slots p{color:var(--muted);font-size:11px}.overbooking-box{background:var(--red-soft);color:var(--red);border:1px solid #f1ccc8;border-radius:11px;grid-template-columns:25px 1fr;gap:7px;padding:12px;display:grid}.overbooking-box .form-grid{color:var(--ink)}.patients-panel>header>span{color:var(--muted);font-size:11px}.search-control{width:min(430px,70%);position:relative}.search-control svg{color:#999;position:absolute;top:12px;left:12px}.search-control input{padding-left:38px}.patients-table__head,.patients-table article{border-bottom:1px solid #efeeeb;grid-template-columns:1.4fr 1.2fr .5fr .65fr 40px;align-items:center;gap:15px;min-height:66px;padding:8px 18px;display:grid}.patients-table__head{color:#96979b;text-transform:uppercase;letter-spacing:.06em;background:#fbfbfa;min-height:38px;font-size:9px;font-weight:800}.patients-table article:last-child{border-bottom:0}.patient-cell{align-items:center;gap:10px;display:flex}.patient-cell>i{color:#89553a;background:#f2e7df;border-radius:50%;place-items:center;width:35px;height:35px;font-size:9px;font-style:normal;font-weight:800;display:grid}.patient-cell span,.contact-cell{gap:4px;display:grid}.patient-cell b,.contact-cell span{font-size:11px}.patient-cell small,.contact-cell small{color:var(--muted);font-size:9px}.patients-table article>strong{font-size:12px}.table-empty{color:#aaa;place-content:center;justify-items:center;gap:7px;min-height:270px;display:grid}.table-empty b{color:#555;font-size:13px}.table-empty span{font-size:10px}.safety-chip,.status-chip{color:#717378;background:#f0f0ee;border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:7px 10px;font-size:10px;font-weight:750;display:inline-flex}.status-chip--ok{color:var(--green);background:var(--green-soft)}.assistant-layout{grid-template-columns:minmax(430px,1.55fr) minmax(280px,.65fr);align-items:start;gap:14px;display:grid}.assistant-chat{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-rows:67px 1fr 70px;min-height:620px;display:grid;overflow:hidden}.ai-orb{background:var(--orange);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.chat-history{background:#fbfaf8;flex-direction:column;gap:12px;padding:22px;display:flex;overflow:auto}.chat-bubble{border-radius:13px;align-items:flex-start;gap:7px;max-width:78%;padding:11px 13px;font-size:12px;line-height:1.55;display:flex}.chat-bubble p{margin:0}.chat-bubble--assistant{border:1px solid var(--line);background:#fff;border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble--assistant svg{color:var(--orange);flex:none;margin-top:2px}.chat-bubble--user{color:#fff;background:#282a2e;border-bottom-right-radius:4px;align-self:flex-end}.concierge-bubble{z-index:40;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.concierge-fab{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:58px;height:58px;transition:transform .18s,background .18s;display:grid;box-shadow:0 14px 34px #ff5a1f59}.concierge-fab:hover{background:var(--orange-dark);transform:translateY(-1px)}.concierge-fab.is-open{background:#292b2e;box-shadow:0 12px 28px #1d1f2238}.concierge-panel{border:1px solid var(--line);width:min(380px,100vw - 32px);height:min(560px,100vh - 120px);box-shadow:var(--shadow);background:#fff;border-radius:18px;grid-template-rows:64px 1fr 68px;display:grid;overflow:hidden}.concierge-panel>header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:0 12px 0 16px;display:flex}.concierge-panel>header .ai-orb{border-radius:10px;width:34px;height:34px}.concierge-panel>header div{gap:3px;min-width:0;display:grid}.concierge-panel>header b{font-size:12px}.concierge-panel>header small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.concierge-panel>header>i{background:#aaa;border-radius:50%;flex:none;width:8px;height:8px}.concierge-panel>header>i.online{background:#21a375}.concierge-panel>header .icon-button{width:34px;height:34px;margin-left:auto}.concierge-panel .chat-history{padding:16px}.concierge-panel .chat-bubble{max-width:88%}.concierge-panel>form{border-top:1px solid var(--line);gap:8px;padding:12px;display:flex}.concierge-panel form input{border-radius:12px}.concierge-panel form button{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:11px;place-items:center;width:43px;display:grid}.concierge-panel form button:disabled{opacity:.48;cursor:not-allowed}.settings-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.settings-card{overflow:hidden}.settings-card>header{justify-content:flex-start}.settings-card header>div{flex:1}.settings-card header h2{margin:0 0 4px}.settings-card header p{color:var(--muted);margin:0;font-size:10px}.integration-icon{width:40px;height:40px;color:var(--green);background:#e9f6ef;border-radius:11px;place-items:center;display:grid}.integration-icon--dark{color:#fff;background:#282a2e}.integration-icon--soft{color:var(--orange);background:var(--orange-soft)}.settings-card>small{color:var(--muted);padding:14px 18px;font-size:9px;display:block}.settings-row{border-bottom:1px solid #efeeeb;justify-content:space-between;align-items:center;min-height:47px;margin:0 18px;font-size:10px;display:flex}.settings-row span{color:var(--muted)}.settings-card--wide{grid-column:1/-1}.public-link{align-items:center;gap:8px;padding:16px 18px;display:flex}.public-link code{color:#5e6064;text-overflow:ellipsis;background:#f6f6f4;border-radius:9px;flex:1;min-width:0;padding:12px;font-size:11px;overflow:hidden}.empty-error{text-align:center;min-height:430px;color:var(--muted);place-content:center;justify-items:center;gap:9px;display:grid}.empty-error svg{color:var(--red)}.empty-error h2{color:var(--ink);margin:4px 0 0;font-size:18px}.empty-error p{max-width:430px;font-size:12px}.public-booking{background:#f7f5f1;min-height:100vh;padding-bottom:30px}.public-header{background:#ffffffe6;border-bottom:1px solid #e7e3db;justify-content:space-between;align-items:center;height:76px;padding:0 max(24px,50vw - 520px);display:flex}.public-header>div{color:#686a6e;align-items:center;gap:7px;font-size:11px;display:flex}.public-progress{grid-template-columns:repeat(4,1fr);width:min(700px,100% - 40px);margin:28px auto 23px;display:grid;position:relative}.public-progress:before{content:"";background:#dcd9d3;height:1px;position:absolute;top:15px;left:10%;right:10%}.public-progress div{z-index:1;color:#a0a1a4;justify-items:center;gap:7px;font-size:9px;font-weight:700;display:grid;position:relative}.public-progress i{background:#f7f5f1;border:1px solid #d9d7d1;border-radius:50%;place-items:center;width:31px;height:31px;font-style:normal;display:grid}.public-progress div.active{color:var(--orange-dark)}.public-progress div.active i{color:#fff;border-color:var(--orange);background:var(--orange)}.booking-card{background:#fff;border:1px solid #e4e1da;border-radius:18px;width:min(740px,100% - 32px);margin:0 auto;overflow:hidden;box-shadow:0 20px 55px #25231e12}.booking-step{padding:35px 38px 25px}.booking-step h1,.booking-success h1{letter-spacing:-.04em;margin:10px 0 9px;font-size:29px}.booking-step>p,.booking-success>p{color:var(--muted);font-size:12px;line-height:1.5}.service-options{gap:10px;margin:25px 0;display:grid}.service-options>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;width:100%;min-height:96px;padding:15px;display:grid}.service-options>button:hover,.service-options>button.active{border-color:var(--orange);background:#fffaf7}.service-radio{border:1px solid #c9c8c4;border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.service-options button.active .service-radio{border-color:var(--orange)}.service-radio i{background:var(--orange);border-radius:50%;width:10px;height:10px}.service-options button>div{gap:5px;display:grid}.service-options b{font-size:13px}.service-options small{color:var(--muted);font-size:10px}.service-options em{color:#6e7074;align-items:center;gap:5px;margin-top:3px;font-size:9px;font-style:normal;display:flex}.service-options strong{color:#44464a;font-size:14px}.booking-step>footer{border-top:1px solid var(--line);background:#fdfdfc;justify-content:space-between;margin:28px -38px -25px;padding:16px 38px;display:flex}.booking-date{grid-template-columns:1fr 1fr;gap:10px;margin:24px 0;display:grid}.booking-date>label,.booking-date>div{border:1px solid var(--line);border-radius:11px;grid-template-columns:26px 1fr;align-items:center;gap:7px;min-height:69px;padding:11px 13px;display:grid}.booking-date__field{cursor:pointer;position:relative}.booking-date__field:hover{border-color:var(--orange);background:#fffaf7}.booking-date__field input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;inset:0}.booking-date span{gap:4px;display:grid}.booking-date small{color:var(--muted);font-size:9px}.booking-date b{text-transform:capitalize;font-size:11px}.public-slots{align-content:start;gap:11px;min-height:135px;display:grid}.slots-loading{color:var(--muted);align-items:center;font-size:11px}.booking-summary{background:var(--orange-soft);color:var(--orange-dark);border:1px solid #f0d9cc;border-radius:11px;grid-template-columns:25px 1fr auto;align-items:center;gap:9px;margin:22px 0;padding:14px;display:grid}.booking-summary>div{gap:4px;display:grid}.booking-summary b{color:var(--ink);font-size:11px}.booking-summary span{color:#74645b;font-size:9px}.booking-summary strong{color:var(--ink);font-size:12px}.booking-step form{gap:15px;display:grid}.booking-step label{margin-bottom:14px}.privacy-note,.whatsapp-note{color:var(--green);background:#eef7f3;border-radius:10px;align-items:center;gap:9px;padding:12px;display:flex}.privacy-note span,.whatsapp-note span{gap:4px;display:grid}.privacy-note b,.whatsapp-note b{color:#315749;font-size:10px}.privacy-note small,.whatsapp-note small{color:#628074;font-size:9px}.booking-success{text-align:center;padding:42px 45px}.success-icon{background:var(--green-soft);width:70px;height:70px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.success-ticket{border:1px solid var(--line);text-align:left;background:#fdfdfc;border-radius:12px;grid-template-columns:1fr 1fr;gap:7px 15px;width:min(440px,100%);margin:26px auto 14px;padding:15px 18px;display:grid}.success-ticket span{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.success-ticket b{text-align:right;font-size:11px}.whatsapp-note{text-align:left;width:min(440px,100%);margin:0 auto 20px}.booking-code{color:#9b9c9f;font-size:9px}.public-footer{color:#93918c;justify-content:space-between;width:min(740px,100% - 32px);margin:18px auto;font-size:9px;display:flex}.public-footer span{align-items:center;gap:5px;display:flex}@media (width<=1100px){.app-shell{grid-template-columns:200px minmax(0,1fr)}.sidebar{width:200px}.page{padding:28px 24px 50px}.dashboard-grid{grid-template-columns:1fr 310px}.agenda-workspace.has-detail{grid-template-columns:minmax(390px,1fr) 300px}.agenda-workspace.has-detail .agenda-rail,.user-menu__meta{display:none}}@media (width<=860px){.app-shell{display:block}.workspace{width:100%}.sidebar{width:240px;transition:transform .2s;transform:translate(-102%);box-shadow:15px 0 40px #0000001f}.sidebar--open{transform:translate(0)}.sidebar-backdrop{z-index:19;background:#00000059;border:0;position:fixed;inset:0}.mobile-only{display:inline-grid}.topbar{gap:12px;height:64px;padding:0 16px}.topbar__heading h1{font-size:17px}.topbar__heading p{font-size:11px}.content{min-height:calc(100vh - 64px);padding-bottom:64px}.page{padding:18px 18px 40px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}.mobile-nav{z-index:18;height:62px;padding:5px 14px max(5px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff7;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{color:#7b7d81;background:0 0;border:0;align-content:center;place-items:center;gap:3px;font-size:8px;display:grid}.mobile-nav button.active{color:var(--orange)}.agenda-workspace,.agenda-workspace.has-detail{grid-template-columns:180px minmax(390px,1fr);overflow-x:auto}.agenda-workspace.has-detail .agenda-rail{display:block}.appointment-detail{z-index:25;width:min(350px,92vw);position:fixed;top:64px;bottom:62px;right:0;overflow:auto;box-shadow:-15px 0 45px #00000021}.concierge-bubble{bottom:78px;right:16px}.concierge-panel{height:min(520px,100vh - 170px)}}@media (width<=640px){.login-page{background:#f7f5f1;display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:28px 20px}.login-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:17px;padding:27px 22px}.mobile-logo{margin-bottom:25px;display:block}.demo-access>div{flex-wrap:wrap}.demo-access button{min-width:75px}.topbar__page-actions .button{min-height:34px;padding:0 10px}.topbar__page-actions .button--secondary span,.topbar__heading p{display:none}.stats-grid{gap:9px}.stat-card{min-height:118px;padding:13px}.stat-card strong{font-size:22px}.side-stack{grid-template-columns:1fr}.appointment-list{padding:4px 12px}.appointment-row{grid-template-columns:45px 10px 1fr auto}.appointment-row>svg,.appointment-row .badge,.agenda-toolbar>strong,.view-switch{display:none}.agenda-workspace,.agenda-workspace.has-detail{grid-template-columns:minmax(390px,1fr)}.agenda-rail,.agenda-workspace.has-detail .agenda-rail{display:none}.calendar-hour{grid-template-columns:50px 1fr}.appointment-detail{width:100vw;top:64px;bottom:62px}.form-grid{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.modal,.modal--small{border-radius:18px 18px 0 0;width:100%;max-height:92vh}.patients-panel>header{justify-items:stretch;display:grid}.search-control{width:100%}.patients-table__head{display:none}.patients-table article{grid-template-columns:1fr auto;gap:8px;padding:13px}.contact-cell{grid-column:1}.patients-table article>strong,.patients-table article>.badge{display:none}.patients-table article>.icon-button{grid-area:1/2/3}.settings-grid{grid-template-columns:1fr}.public-link{flex-wrap:wrap}.public-link code{flex-basis:100%}.public-header{height:66px;padding:0 18px}.public-header>div span{display:none}.public-progress{margin-top:20px}.public-progress div span{font-size:8px}.booking-card{width:calc(100% - 20px)}.booking-step{padding:28px 20px 20px}.booking-step h1,.booking-success h1{font-size:25px}.booking-step>footer{margin:25px -20px -20px;padding:14px 20px}.service-options>button{grid-template-columns:20px 1fr}.service-options>button>strong{grid-column:2}.booking-date{grid-template-columns:1fr}.booking-success{padding:35px 20px}.success-ticket{grid-template-columns:1fr}.success-ticket b{text-align:left;margin-bottom:5px}.public-footer{justify-content:center}.public-footer span:not(:last-child){display:none}.concierge-panel .chat-bubble{max-width:92%}}
