/* Practice workspace: dark brand rail, warm neutral working canvas. */
body.studio-workspace{--bg:#f4f3ee;--panel:#fff;--line:#e0e3da;--gold:#94733d;--text:#26362f;--muted:#6d786f;--red:#a53232;background:var(--bg);color:var(--text);font-size:13px}
.practice-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100dvh}
.practice-sidebar{background:#17271f;color:#e9ede4;position:sticky;top:0;height:100dvh;padding:30px 18px;display:flex;flex-direction:column}
.practice-brand{font:24px Barlow;letter-spacing:.08em;text-decoration:none;padding:0 12px 30px}.practice-brand span{display:block;font:9px Manrope;letter-spacing:.15em;color:#c6ac79;margin-top:8px}
.practice-sidebar nav{display:block}.nav-group{margin-bottom:22px}.nav-group>small{font-size:9px;letter-spacing:.15em;text-transform:uppercase;display:block;padding:0 13px 8px;color:#8d9e92}
.practice-sidebar button,.sidebar-bottom a{display:flex;width:100%;align-items:center;gap:12px;padding:12px 14px;text-align:left;border:0;border-radius:8px;background:transparent;color:#c7d1c8;font-size:13px;text-decoration:none}
.practice-sidebar button:hover,.practice-sidebar button.selected{background:#304438;color:#f4e3bc}.practice-sidebar button.selected{box-shadow:inset 3px 0 #d3b47b}.practice-sidebar b{margin-left:auto;border-radius:6px;background:#c4a46c;color:#17271f;padding:0 6px}
.sidebar-bottom{margin-top:auto;border-top:1px solid #36473c;padding-top:18px}.sidebar-bottom>small{display:block;margin:20px 12px 0;color:#91a195;font-size:10px}
.practice-body{min-width:0}.studio-workspace header.practice-topbar{height:94px;background:#fff;border-bottom:1px solid var(--line);padding:20px 32px;display:flex;flex-direction:row;align-items:center;justify-content:space-between}
.workspace-crumb{font-size:9px;letter-spacing:.15em;color:#8a948c}.practice-topbar h1{font:600 28px Manrope;letter-spacing:-.04em;margin:2px 0}.topbar-actions{display:flex;align-items:center;gap:20px}.operator-name{font-size:12px;color:#6d786f}
.practice-main{padding:24px 30px;max-width:1900px;margin:0 auto}.practice-main> .toolbar:last-child{margin-top:25px;border-top:1px solid var(--line);padding-top:18px;justify-content:flex-end}
.studio-workspace button{background:#fff;border-color:#dce1d8;color:#304037;padding:10px 14px;border-radius:7px;font-size:12px}.studio-workspace button:hover{background:#eef2eb;border-color:#a0ac9f}.studio-workspace button.primary,.studio-workspace a.primary{background:#233e31;border-color:#233e31;color:#fff}
.studio-workspace .practice-sidebar button{background:transparent;border:0;color:#c7d1c8;padding:12px 14px}.studio-workspace .practice-sidebar button.selected,.studio-workspace .practice-sidebar button:hover{background:#304438;color:#f4e3bc}
.studio-workspace input,.studio-workspace select,.studio-workspace textarea{background:#fff;border-color:#d5dcd2;color:#293b30;color-scheme:light;min-height:40px;padding:9px 12px}.studio-workspace label{color:#55645a}.studio-workspace input:focus,.studio-workspace textarea:focus{border-color:#749280}
.studio-workspace .card,.studio-workspace .summary{background:#fff;border:1px solid #e0e4dc;box-shadow:0 3px 12px #20362b04;border-radius:12px}.studio-workspace .summary{background:#f6f7f2}.studio-workspace .notice{background:#eeefe5;color:#586249;border-left-color:#b79c69}
.studio-workspace .tag{background:#e6eee1;color:#496a41}.studio-workspace .tag.warn{background:#f6ead4;color:#8b6531}.studio-workspace .price,.studio-workspace .time,.studio-workspace .cash-summary{color:#395d48}
.studio-workspace .client-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.studio-workspace .client-card{padding:22px}.studio-workspace .client-card .icon-box{border-radius:50%;background:#edf0e7;color:#65805b;margin-bottom:14px}.studio-workspace .client-card button{width:100%;text-align:center}
.studio-workspace .tabs{border-bottom:1px solid #dfe4da;margin:18px 0}.studio-workspace .tabs button{background:transparent}.studio-workspace .tabs button.active{background:#edf2e8;color:#274b33;border-bottom:2px solid #587556}
.studio-workspace .activity{padding:16px;border:1px solid #e0e4dc;border-radius:9px;background:#fff;margin:10px 0;white-space:pre-wrap}
.studio-workspace dialog{background:#fff;color:#26362f;border:1px solid #dce1d5;border-radius:16px;width:min(1060px,calc(100vw - 48px));box-shadow:0 24px 100px #13281f40}
.studio-workspace .modal-head{background:#f7f7f2;border-color:#e1e6db;padding:20px 28px}.studio-workspace .modal-head h2{font:600 24px Manrope;letter-spacing:-.04em}.studio-workspace .modal-body{padding:24px 28px}.studio-workspace .modal-foot{background:#f7f7f2}.studio-workspace dialog::backdrop{background:#11271e80;backdrop-filter:blur(4px)}
.studio-workspace .stats .stat{background:#f4f6f0;box-shadow:none;border-color:#e1e6dc}.studio-workspace .stat strong{color:#365740}.studio-workspace .icon-box{background:#ebefe4;color:#58744b}
.studio-workspace .diary-toolbar{background:#fff;border:1px solid var(--line);padding:12px 16px;border-radius:12px;gap:12px;margin-bottom:14px}.studio-workspace .diary-toolbar .toolbar{gap:6px}.studio-workspace .diary-toolbar label{font-size:11px}.studio-workspace .diary-toolbar input,.studio-workspace .diary-toolbar select{margin-top:2px}.studio-workspace .diary-toolbar .check{max-width:155px;font-size:10px}
.calendar-viewport{overflow:auto;border:1px solid #dfe4db;border-radius:12px;background:white;max-height:calc(100dvh - 295px);min-height:320px}
.time-calendar{display:grid;grid-template-columns:54px repeat(var(--days),minmax(120px,1fr));min-width:calc(54px + var(--days)*120px);position:relative}
.calendar-date,.calendar-corner{background:#fafbf7;position:sticky;top:0;z-index:5;padding:10px 5px;text-align:center;border-bottom:1px solid #dfe4db;border-right:1px solid #edf0e9}.calendar-date small{display:block;font-size:10px;text-transform:uppercase}.calendar-date strong{display:inline-block;font:600 22px Manrope;line-height:1.2}.calendar-date>span{font-size:9px;display:block;color:#899488}.calendar-date.is-today{background:#e7eedf}.calendar-date.is-today strong{color:#43683c}.calendar-corner{font-size:8px;display:grid;place-items:center;left:0;z-index:7}
.calendar-hours{position:sticky;left:0;background:#fff;z-index:4;height:var(--calendar-height)}.calendar-hours span{position:absolute;right:7px;font-size:9px;color:#809080}
.calendar-column{height:var(--calendar-height);position:relative;border-right:1px solid #e7ebe2;background:repeating-linear-gradient(to bottom,#fff 0,#fff 35px,#eff1eb 35px,#eff1eb 36px,#fff 36px,#fff 71px,#dfe5d9 71px,#dfe5d9 72px)}
.studio-workspace button.calendar-event{position:absolute;z-index:2;padding:6px 7px;text-align:left;overflow:hidden;border:0;border-left:3px solid #789776;border-radius:5px;background:#e5eddf;color:#334a31;display:flex;flex-direction:column;gap:2px;line-height:1.25;min-height:0}
.calendar-event strong{font-size:12px}.calendar-event span,.calendar-event small{font-size:9px;color:inherit}.studio-workspace .calendar-event.service-remedial60,.studio-workspace .calendar-event.service-remedial120{background:#e1ebef;border-left-color:#7296a3;color:#304d59}.studio-workspace .calendar-event.service-somatic120{background:#efe6d5;border-left-color:#bb9d63;color:#655532}
.studio-workspace .calendar-event.status-cancelled,.studio-workspace .calendar-event.status-no_show{opacity:.6;text-decoration:line-through;background:#ece8e5;border-left-color:#a99388}.studio-workspace .calendar-event:hover{filter:brightness(.96);outline:2px solid #8caa81}
.calendar-hold{position:absolute;inset-inline:0;background:repeating-linear-gradient(135deg,#edf0ea,#edf0ea 8px,#e2e7de 8px,#e2e7de 10px);padding:6px;overflow:hidden;color:#6f7a6b;font-size:10px;display:flex;flex-direction:column;align-items:flex-start}.studio-workspace .calendar-hold button{padding:3px;font-size:9px;background:#fff9}
.calendar-legend{padding:12px 16px;display:flex;gap:18px;flex-wrap:wrap;color:#6e7e6b;font-size:10px;background:#fafbf8}.calendar-legend span:nth-child(2){color:#7296a3}.calendar-legend span:nth-child(3){color:#ae915b}
.client-workspace .wrap{max-width:1100px}.client-workspace h1{font-size:38px}.client-workspace .stats{gap:12px}.client-workspace .stat{padding:16px}.client-workspace .tabs{background:#202a22;border-radius:12px;padding:6px;border:0}.client-workspace .tabs button.active{background:#35432e;border:0;border-radius:8px}
@media(max-width:1000px){.practice-shell{grid-template-columns:176px minmax(0,1fr)}.practice-sidebar{padding:24px 10px}.practice-brand{font-size:20px}.practice-main{padding:18px}.operator-name{display:none}}
@media(max-width:700px){.practice-shell{display:block}.practice-sidebar{height:auto;position:relative;padding:16px}.practice-brand{display:block;padding:0 0 12px}.practice-brand span{display:inline;margin-left:10px;font-size:8px}.practice-sidebar nav{display:flex;overflow:auto;gap:10px}.nav-group{display:contents}.nav-group>small,.sidebar-bottom{display:none}.studio-workspace .practice-sidebar button{width:auto;white-space:nowrap;flex-shrink:0;padding:10px;gap:5px;font-size:11px}.practice-sidebar svg{width:15px}.studio-workspace header.practice-topbar{padding:14px 16px;height:76px}.practice-topbar h1{font-size:24px}.workspace-crumb{display:none}.practice-main{padding:12px}.topbar-actions button{padding:9px;font-size:11px}.calendar-viewport{max-height:68dvh}.studio-workspace .diary-toolbar{padding:10px}.studio-workspace dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.studio-workspace .modal-body,.studio-workspace .modal-head{padding:16px}.studio-workspace .fields,.studio-workspace .detail-list{grid-template-columns:1fr}.studio-workspace .tabs{overflow:auto;flex-wrap:nowrap}.studio-workspace .client-grid{grid-template-columns:1fr}.client-workspace .stats{grid-template-columns:1fr 1fr}}
.studio-workspace .client-contact{color:#627064}.studio-workspace .modal-body>.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-workspace [contenteditable="true"]{background:#fff;color:#26362f;border:1px solid #d5dcd2;border-radius:8px;padding:14px}
