*{box-sizing:border-box}body.workspace{margin:0;background:#f3f6fa;color:#152338;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}body.workspace .shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100dvh}body.workspace .side{background:#101c2b;color:#e8eff8;padding:25px 15px;display:flex;flex-direction:column;gap:35px}body.workspace .logo{display:flex;align-items:center;gap:12px;padding:4px 8px}.mark{display:grid;place-items:center;width:43px;height:43px;background:#e33443;color:white;border-radius:12px;font-weight:800}.logo strong{display:block;font-size:14px}.logo small{display:block;color:#aabbd0;font-size:11px;margin-top:4px}.side-nav{display:grid;gap:6px}.side-nav button{border:0;background:transparent;color:#bdcad9;text-align:left;padding:13px;border-radius:11px;font-weight:650;cursor:pointer}.side-nav button.active,.side-nav button:hover{background:#26364b;color:white}.side-foot{margin-top:auto;color:#9eafc2;font-size:11px;line-height:1.8;padding:8px}.content{min-width:0}.top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 30px;background:white;border-bottom:1px solid #e2e7ee}.top h1{margin:5px 0 0;font-size:25px}.eyebrow{font-size:10px;letter-spacing:.12em;color:#d63141;font-weight:800}.top-actions{display:flex;align-items:center;gap:15px}.link-button{display:inline-flex;text-decoration:none;padding:11px 14px;border-radius:9px;background:#e33443;color:white;font-size:13px;font-weight:700}.content main{padding:24px 30px;max-width:1500px;margin:auto}.workspace-grid{display:block}.staff-area{max-width:1200px}.workspace .staff-panel{width:100%;max-width:none}.workspace .booking-embed{display:none}.workspace .staff-panel nav{display:flex;gap:10px;flex-wrap:wrap}.workspace #staff{display:grid;gap:14px}.workspace #staff>h3{margin:12px 0 0}.workspace .entry{border:1px solid #e3e9f1;background:white;border-radius:12px;padding:14px;margin:9px 0;overflow-wrap:anywhere}.workspace #appointments,.workspace #notifications,.workspace #inbox,.workspace #thread{min-width:0}.workspace button{cursor:pointer}.workspace .mobile-nav{display:none}.workspace [data-section]{display:none!important}.workspace [data-section].shown{display:block!important}.workspace #staff.hidden{display:none}.workspace .staff-panel{box-shadow:none}.workspace .login-title{margin-top:0}.workspace #notice:not(:empty){background:#fff4d9;padding:12px;border-radius:10px;margin-bottom:15px}.staff-legacy{display:none}.staff-redirect{padding:15px}.booking-panel{min-width:0}@media(max-width:900px){body.workspace .shell{grid-template-columns:74px minmax(0,1fr)}.side{padding:20px 8px!important}.side .logo div,.side-nav span,.side-foot{display:none!important}.side-nav button{text-align:center;font-size:20px!important}.top{padding:18px}.content main{padding:18px}.top-actions .platform{display:none}}@media(max-width:640px){body.workspace .shell{display:block}.workspace .side{display:none!important}.workspace .top{padding:17px 15px}.workspace .top h1{font-size:21px}.workspace .top-actions .link-button{font-size:11px;padding:8px}.workspace .content main{padding:12px 12px 90px}.workspace .mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;justify-content:space-around;gap:2px;background:white;border-top:1px solid #dce4ef;padding:8px 4px max(8px,env(safe-area-inset-bottom))}.workspace .mobile-nav button{background:transparent;border:0;color:#657489;font-size:21px;display:grid;justify-items:center;gap:2px;padding:5px 2px;min-width:0}.workspace .mobile-nav button span{font-size:10px}.workspace .mobile-nav button.active{color:#d92e42}.workspace input,.workspace select,.workspace textarea{font-size:16px;max-width:100%}.workspace .entry button{margin:4px}.workspace .staff-panel{padding:13px}}
/* V1.9: desktop density and mobile touch ergonomics */
.workspace [data-section].shown{animation:panel-in .16s ease-out}
@keyframes panel-in{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}
.workspace .request-card{border-left:4px solid #dc3549;box-shadow:0 3px 12px #14263b0a}
.workspace .request-card p{margin:8px 0}.workspace .request-card button[data-status=rejected]{background:#e8edf3;color:#25384c}
.workspace .empty-state{padding:26px 18px;background:#f5f8fb;border:1px dashed #cbd5e1;border-radius:12px;color:#53667b}
.workspace .side-nav button:focus-visible,.workspace .mobile-nav button:focus-visible{outline:3px solid #ef9da8;outline-offset:2px}
@media(min-width:1100px){.workspace #appointments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workspace #appointments .entry{margin:0}.workspace #requestsMirror{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:640px){.workspace .mobile-nav button{min-height:52px;min-width:54px}.workspace .request-card button{min-height:48px}.workspace .top{position:sticky;top:0;z-index:20}.workspace #threadMessages{max-height:48dvh}.workspace [data-section].shown{animation:none}}
@media(prefers-reduced-motion:reduce){.workspace [data-section].shown{animation:none}}
/* V2.0 desktop / mobile refinements */
:root{font-synthesis:none}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:transform .12s ease,filter .15s ease}button:active{transform:scale(.985)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e05b4f;outline-offset:2px} .entry{overflow-wrap:anywhere} .request-card{display:flex;flex-wrap:wrap;align-items:center;gap:10px} .request-card strong,.request-card p{flex-basis:100%} .request-card button{min-height:42px} .empty-state{padding:22px;text-align:center} @media(max-width:760px){input,select,textarea{font-size:16px!important;max-width:100%}button{min-height:44px}.workspace-grid,.staff-area{min-width:0}.entry{min-width:0}body{overflow-x:hidden}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.hours-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.hours-form fieldset{border:1px solid #71809655;border-radius:12px;padding:12px;min-width:0}.hours-row{display:flex;gap:10px;margin:8px 0}.hours-row label{flex:1;min-width:0}.hours-row input{width:100%;min-width:0}.hours-form>button{grid-column:1/-1;min-height:44px}
