/* Owner workspace only: landing palette, local display face, no external assets. */
@font-face {font-family:'Bricolage Grotesque';font-style:normal;font-display:swap;font-weight:200 800;src:url('/fonts/bricolage-grotesque-latin-opsz-normal.woff2') format('woff2');}
.workspace,.auth-page {font-family:system-ui,-apple-system,'Segoe UI','Noto Sans CJK SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased;}
.workspace h1,.workspace h2,.auth-page h1,.workspace .logo,.auth-page .logo {font-family:'Bricolage Grotesque','Noto Sans CJK SC','Microsoft YaHei',system-ui,sans-serif;text-wrap:balance;letter-spacing:-.025em;}
.workspace p,.auth-page p {text-wrap:pretty;}
.workspace h1 {font-size:clamp(1.75rem,2.6vw,2.4rem);font-weight:750;line-height:1.12;}
.workspace h2 {font-size:1.2rem;}
.workspace .logo,.auth-page .logo {font-size:1.65rem;letter-spacing:-.05em;}
.app-shell {display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh;}
.app-sidebar {background:#f0eee8;border-right:1px solid var(--line);padding:2rem 1.25rem;display:flex;flex-direction:column;gap:2rem;position:sticky;top:0;height:100vh;}
.workspace-label,.eyebrow {font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.workspace-label {margin:0;}
.eyebrow {color:var(--brand);margin-bottom:.6rem;}
.app-sidebar .tabs {flex-direction:column;border:0;overflow:visible;gap:.5rem;margin:0;}
.app-sidebar .tabs button {border:0;border-radius:8px;white-space:normal;text-align:left;justify-content:flex-start;gap:.75rem;padding:.75rem;color:#524f48;font-size:.92rem;min-height:48px;}
.app-sidebar .tabs button[aria-selected=true] {background:#dcebe4;color:#075d55;}
.nav-icon {width:1.25rem;font-size:1.3rem;line-height:1;flex-shrink:0;}
.sidebar-bottom {margin-top:auto;color:var(--muted);font-size:.8rem;}
.sidebar-bottom button {width:100%;margin-top:.5rem;}
.app-content {min-width:0;}
.workspace-topbar {min-height:92px;background:#fffdf9;border-bottom:1px solid var(--line);padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.business-heading {display:flex;flex-direction:column;gap:.3rem;min-width:0;overflow-wrap:anywhere;}
.business-heading strong {font-size:1rem;font-weight:650;}
.topbar-actions {display:flex;align-items:center;gap:1rem;flex-shrink:0;}
.lang-toggle {gap:0;}
.lang-toggle button {min-height:40px;border-color:var(--line);border-radius:0;color:var(--muted);font-size:.8rem;padding:.4rem .65rem;}
.lang-toggle button:first-child {border-radius:7px 0 0 7px;}
.lang-toggle button:last-child {border-radius:0 7px 7px 0;}
.lang-toggle button[aria-pressed=true] {background:var(--brand-soft);color:#075d55;border-color:#a5cfc7;position:relative;}
.workspace-main {padding:2rem;max-width:1440px;margin:auto;}
.page-heading {display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.75rem 0 1.75rem;}
.page-heading>button {flex-shrink:0;white-space:nowrap;}
.page-heading .muted {max-width:46rem;margin:.6rem 0 0;}
.workspace .card {box-shadow:none;padding:1.5rem;border-radius:10px;}
.setup-panel {background:#e9f0e9;border:1px solid #d1ddd0;border-radius:10px;padding:1.5rem;margin-bottom:1.5rem;}
.setup-panel h2 {margin-bottom:.4rem;}
.setup-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;}
.setup-step.secondary {display:grid;grid-template-columns:auto 1fr;align-items:start;text-align:left;padding:1rem;background:#fffdf9;border:1px solid #d1ddd0;color:var(--ink);font-size:.9rem;gap:.5rem .75rem;}
.setup-step>span:first-child {grid-row:span 2;font-variant-numeric:tabular-nums;color:var(--brand);font-size:.75rem;line-height:1.8;}
.setup-step small {font-size:.75rem;font-weight:500;color:var(--muted);}
.workspace .queue-card {padding:0;overflow:hidden;}
.queue-toolbar {padding:1rem 1.25rem .5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;}
.filters {display:flex;flex-wrap:wrap;gap:.5rem;}
.live-status {display:flex;align-items:center;gap:.45rem;margin:0;font-size:.78rem;font-weight:500;color:var(--muted);min-width:0;}
.live-dot {flex:none;width:.55rem;height:.55rem;border-radius:50%;background:#a8a29a;}
.live-status[data-state=live] {color:#075d55;}
.live-status[data-state=live] .live-dot {background:#0f8a7e;box-shadow:0 0 0 3px #d5ede8;}
.live-status[data-state=reconnecting] .live-dot,.live-status[data-state=connecting] .live-dot {background:#c98a12;}
.live-status[data-state=offline] {color:#8a3b12;}
.live-status[data-state=offline] .live-dot {background:#b5471b;}
.filters button {border:1px solid transparent;background:none;color:var(--muted);font-size:.85rem;min-height:40px;padding:.4rem .7rem;}
.filters button[aria-pressed=true] {background:var(--brand-soft);color:#075d55;border-color:#b9dcd5;}
.queue-note {font-size:.78rem;padding:0 1.25rem 1rem;border-bottom:1px solid var(--line);margin:0;}
.booking-queue li {padding:1.25rem;gap:1rem;}
.booking-queue li:last-child {border-bottom:0;}
.booking-queue strong {font-variant-numeric:tabular-nums;font-size:.95rem;}
.booking-detail {margin-top:.5rem;display:flex;flex-direction:column;gap:.15rem;font-size:.95rem;}
.booking-detail small {color:var(--muted);font-size:.8rem;}
.workspace .badge {margin:.25rem 0 .25rem .5rem;padding:.2rem .6rem;text-decoration:none;}
.workspace .badge.cancelled {color:#57534d;background:#eeeae5;}
.workspace .actions {flex-wrap:wrap;gap:.5rem;}
.workspace .small {min-height:40px;}
.empty-state {padding:3.5rem 1.5rem;text-align:center;}
.empty-state h2 {margin-bottom:.75rem;}
.empty-state p {max-width:29rem;margin:0 auto;color:var(--muted);font-size:.92rem;}
.share-card {display:flex;align-items:center;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.85rem;border-left:3px solid #c4d9d1;padding:.75rem 1rem;}
.share-card a {overflow-wrap:anywhere;min-width:0;}
.workspace .hours-row {grid-template-columns:minmax(70px,1fr) 75px minmax(0,1fr) minmax(0,1fr);gap:.5rem;padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.83rem;}
.workspace .hours-row label {min-height:44px;}
.hours-row input[type=time] {min-width:0;padding:.5rem .25rem;font-size:.82rem;}
.workspace input {border-color:#d9d4cb;}
.workspace form>button,.workspace form>.shrink {margin-top:1rem;}
.workspace #services-list {margin-bottom:1rem;}
.workspace #panel-profile {max-width:760px;}
.workspace #panel-staff {max-width:860px;}
.capacity-line {margin:0 0 1rem;padding:.75rem 1rem;background:var(--brand-soft);color:#075d55;border-radius:8px;font-size:.9rem;font-weight:600;}
.workspace #staff-list {margin-bottom:1rem;}
#staff-list li>div:first-child {display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;}
#staff-list .badge {margin:0;}
#staff-list li.inactive strong {color:var(--muted);}
.staff-count {font-size:.8rem;flex-basis:100%;}
.assign {margin-top:.85rem;display:flex;flex-direction:column;gap:.35rem;max-width:26rem;}
.assign>label {font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;}
.assign-controls {display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;}
.assign-select {flex:1 1 11rem;min-width:0;min-height:40px;padding:.4rem .6rem;border:1px solid #d9d4cb;border-radius:8px;background:#fffdf9;font:inherit;font-size:.9rem;color:var(--ink);}
.assign-controls button {flex:0 0 auto;}
.workspace .assign-error:not(:empty) {margin:.15rem 0 0;font-size:.85rem;}
.assigned-staff {margin:.6rem 0 0;font-size:.85rem;}
.workspace .grid2 {grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;}
.workspace #blocks-list {margin-top:1rem;font-size:.85rem;}
.feedback-bar:has(.error:empty):has(.success:empty):has(#retry-load.hidden) {display:none;}
.feedback-bar {margin-bottom:1rem;}
.workspace .error:empty,.workspace .success:empty {min-height:0;margin:0;}
.workspace .error:not(:empty),.workspace .success:not(:empty) {margin:.75rem 0;}
.workspace button:hover:not(:disabled),.auth-page button:hover:not(:disabled) {filter:brightness(.97);}
.skip-link {position:fixed;top:-100px;left:1rem;z-index:10;background:white;padding:1rem;}
.skip-link:focus {top:1rem;}
.auth-page .topbar {max-width:1200px;margin:auto;border:0;background:transparent;padding:1.5rem 2rem;flex-wrap:wrap;}
.auth-page .topbar>a:nth-child(2) {margin-left:auto;font-size:.9rem;font-weight:600;}
.auth-page .narrow {max-width:520px;margin:2.5rem auto 4rem;}
.auth-page .auth-card {padding:2rem;background:#fffdf9;border-radius:12px;box-shadow:0 8px 32px #1d1b1905;}
.auth-page h1 {font-size:2.1rem;line-height:1.15;}
.auth-page form {margin-top:1.5rem;}
.auth-page label {margin-top:1rem;}
.auth-page form>button {margin-top:1rem;}
.auth-page #slug-preview {overflow-wrap:anywhere;}
.auth-page [data-i18n=slugHelp] {font-size:.78rem;margin-top:.5rem;}
@media(max-width:1150px) {
 .workspace .grid2 {grid-template-columns:1fr;}
 .app-shell {grid-template-columns:196px minmax(0,1fr);}
 .workspace-main,.workspace-topbar {padding:1.5rem;}
 .topbar-actions {gap:.5rem;}
 .setup-steps {grid-template-columns:1fr;}
 .setup-step.secondary {grid-template-columns:auto 1fr auto;}
 .setup-step>span:first-child {grid-row:auto;}
}
@media(max-width:800px) {
 .app-shell {display:flex;flex-direction:column;}
 .app-sidebar {position:static;height:auto;padding:1rem;gap:1rem;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;}
 .app-sidebar>.workspace-label {display:none;}
 .app-sidebar .tabs {grid-column:1/-1;flex-direction:row;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));order:3;gap:.25rem;}
 .app-sidebar .tabs button {flex-direction:column;gap:.35rem;padding:.65rem .25rem;font-size:.8rem;text-align:center;line-height:1.25;min-width:0;overflow-wrap:anywhere;}
 .sidebar-bottom {margin:0;}
 .sidebar-bottom p {display:none;}
 .sidebar-bottom button {margin:0;min-height:40px;}
 .workspace-topbar {padding:1rem;flex-wrap:wrap;}
 .topbar-actions {width:100%;justify-content:space-between;flex-wrap:wrap;}
 .workspace-main {padding:1rem;}
 .page-heading {align-items:flex-start;margin:.75rem 0 1.5rem;}
 .workspace .card,.setup-panel {padding:1rem;}
 .workspace .queue-card {padding:0;}
 .booking-queue li {padding:1rem;}
 .workspace .actions {width:100%;}
 .workspace .hours-row {grid-template-columns:1fr 80px 1fr 1fr;}
 .auth-page .topbar {padding:1rem;}
 .auth-page .narrow {margin:1.5rem auto;}
}
@media(max-width:480px) {
 .workspace .hours-row {grid-template-columns:1fr 1fr;}
 .workspace .hours-row strong {font-size:.9rem;}
 .setup-step.secondary {grid-template-columns:auto 1fr;}
 .setup-step>span:first-child {grid-row:span 2;}
 .page-heading>button {padding:.5rem;font-size:.8rem;}
 .filters {gap:.25rem;}
 .filters button {padding:.4rem .5rem;font-size:.78rem;}
 .app-sidebar .tabs button {font-size:.72rem;padding:.55rem .1rem;}
 .assign {max-width:none;}
 .auth-page .auth-card {padding:1.5rem;}
 .auth-page .topbar .lang-toggle {width:100%;justify-content:flex-end;}
 .auth-page h1 {font-size:1.8rem;}
}
@media(prefers-reduced-motion:no-preference) { .workspace button,.auth-page button {transition:background-color .15s,border-color .15s;} }
