/* Shared workspace foundation; forms keep their existing controllers and semantics. */
.consistent-app { --green:var(--theme-accent,#315d9e); --accent:var(--theme-accent,#315d9e); --accent-soft:var(--theme-soft,#e5eefb); --ink:var(--theme-ink,#172b48); --muted:var(--theme-muted,#61728e); --border:var(--theme-border,#d7e2f2); background:var(--theme-page,#f3f6fb); color:var(--ink); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.consistent-app [hidden] { display:none!important; }
.consistent-app h1 { font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.7px;margin:0 0 12px; }
.consistent-app h2 { font-size:21px;line-height:1.35;letter-spacing:-.3px; }
.consistent-app .intro { font-size:16px;line-height:1.6;margin:8px 0 24px;max-width:780px; }
.consistent-app main:not(.schedule-main):not(.management-home) { width:min(1440px,calc(100% - 48px));margin:0 auto;padding:28px 0 48px; }
.consistent-app .panel { background:var(--theme-card,#fff);border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:0 2px 8px #17314d04; }
.consistent-app :is(input,select,textarea) { border-radius:9px;border-color:var(--border);font-family:inherit; }
.consistent-app :is(button,.outline-link,.team-link) { border-radius:9px;font-family:inherit; }
.consistent-app :is(button,a,input,select,textarea):focus-visible { outline:3px solid var(--theme-accent,#315d9e);outline-offset:3px; }
.consistent-app > header:not(.management-header):not(.setup-topbar) { min-height:64px;padding:12px 28px;background:var(--theme-header,#d3e3fd);color:var(--theme-header-ink,#172b48);border-bottom:1px solid var(--border); }
.consistent-app > header .brand { font-size:18px; }
.consistent-app > header .brand-mark { width:36px;height:36px;font-size:25px;border-radius:9px; }
.consistent-app .appearance-header { height:auto!important;min-height:64px;padding:12px 28px!important; }
.consistent-app .appearance-header nav a { font-size:14px;border-radius:8px;padding:11px 14px; }
.consistent-app .appearance-header nav a[aria-current] { background:var(--accent-soft); }
.consistent-app .appearance-main .eyebrow { margin-top:0; }
.consistent-app .join-panel { max-width:640px;margin:24px auto; }
.consistent-app .security-main { max-width:1000px; }
.consistent-app .search-panel { margin-top:20px; }
/* Admin remains authenticated through platform APIs, with company-scoped links. */
.consistent-app.setup-shell .setup-sidebar { position:relative;inset:auto;width:100%;padding:12px 28px;min-height:64px;display:flex;flex-direction:row;align-items:center;gap:16px;background:var(--theme-header,#d3e3fd);border:0;border-bottom:1px solid var(--border); }
.consistent-app.setup-shell .setup-wordmark { font-size:20px;letter-spacing:-.5px; }
.consistent-app.setup-shell .setup-area-label { margin:0;align-self:center;font-size:11px;padding:6px 9px; }
.consistent-app.setup-shell .setup-sidebar nav { display:flex;flex:1;justify-content:center;gap:6px; }
.consistent-app.setup-shell .setup-sidebar nav a { min-height:40px;padding:8px 12px;font-size:14px; }
.consistent-app.setup-shell .setup-sidebar nav svg { width:18px;height:18px; }
.consistent-app.setup-shell .setup-account { margin:0;padding:0;border:0;font-size:12px; }
.consistent-app.setup-shell .setup-account small { font-size:11px; }
.consistent-app.setup-shell .setup-switch { margin:0;padding:0;border:0; }
.consistent-app.setup-shell .setup-switch small { display:none; }
.consistent-app.setup-shell .setup-switch a { font-size:12px; }
.consistent-app.setup-shell .setup-topbar { margin:0;min-height:52px;padding:10px 28px;border-bottom:1px solid var(--border);background:var(--theme-card,#fff); }
.consistent-app.setup-shell main { margin:0 auto; }
.consistent-app.setup-shell .setup-breadcrumb .mobile-area { display:none; }
.consistent-app .skip-link:not(:focus) { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
@media(max-width:760px) {
 .consistent-app main:not(.schedule-main):not(.management-home) { width:calc(100% - 28px);padding-top:20px; }
 .consistent-app .panel { padding:18px; }
 .consistent-app.setup-shell .setup-sidebar { flex-wrap:wrap;gap:10px;padding:12px 14px; }
 .consistent-app.setup-shell .setup-sidebar nav { order:4;flex-basis:100%;justify-content:flex-start;overflow-x:auto; }
 .consistent-app.setup-shell .setup-sidebar nav a { white-space:nowrap; }
 .consistent-app.setup-shell .setup-account { margin-left:auto; }
 .consistent-app.setup-shell .setup-account small { display:none; }
 .consistent-app.setup-shell .setup-switch { display:none; }
 .consistent-app.setup-shell .setup-topbar { padding:10px 14px; }
 .consistent-app > header:not(.management-header):not(.setup-topbar) { padding:12px 14px!important;flex-wrap:wrap;gap:12px; }
}

:root[data-workspace-theme="soft-blue"] { --theme-header: #d3e3fd; }
.consistent-app { min-height: 100vh; }
.consistent-app > .management-header { height:auto; }
.consistent-app .appearance-header nav { overflow-x:auto; }
.consistent-app .appearance-header .brand { min-width:0;max-width:32%; }
.consistent-app .appearance-header #business-name { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
@media(max-width:760px) {
 .consistent-app .appearance-header .brand { max-width:68%; }
 .consistent-app .appearance-header nav { order:3;flex-basis:100%; }
}
