/* Responsive shell, written mobile first. One breakpoint owns navigation and
   safe-area clearance; the Flutter host still owns its embedded editor chrome. */
:root{--workspace-width:232px;--workspace-ink:#282039;--workspace-highlight:#c8bbff}
.skip-link{position:fixed;top:8px;left:8px;z-index:10001;transform:translateY(-160%);padding:12px 18px;border-radius:12px;background:var(--brand-primary);color:#fff}.skip-link:focus{transform:none}
.app-page{background:radial-gradient(ellipse at 80% 0%,rgba(var(--brand-rgb),.055),transparent 55%),var(--bg);--dock-clearance:calc(var(--sa-tab-height) + env(safe-area-inset-bottom,0px));--topbar-h:68px;padding:0 0 var(--dock-clearance)}
.topbar{position:sticky;top:0;z-index:90;min-height:var(--topbar-h);background:color-mix(in srgb,var(--card) 94%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.topbar-inner{display:flex;align-items:center;gap:16px;max-width:1440px;min-height:var(--topbar-h);margin:auto;padding:10px max(20px,env(safe-area-inset-right)) 10px max(20px,env(safe-area-inset-left))}
.brand{display:flex;align-items:center;gap:10px;min-width:0;color:var(--text);font-weight:750;text-decoration:none}.brand:hover{text-decoration:none}.brand-logo{display:block;width:152px;height:auto;max-height:40px;object-fit:contain;object-position:left center}
.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.credit-chip{display:none;align-items:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--text);font-size:.875rem;font-weight:650}.topbar-help{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--text-muted)}.topbar-help:hover{background:var(--hover);text-decoration:none}.topbar-help .bx{font-size:24px}.topbar-help span{display:none}
.user-menu{position:relative}.avatar{list-style:none;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;color:var(--brand-darker);background:var(--sa-accent-soft);font-size:.8125rem;font-weight:750}.avatar::-webkit-details-marker{display:none}.user-menu-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:120;width:min(310px,calc(100vw - 32px));padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow-lg)}.user-menu-head{padding:12px;overflow-wrap:anywhere;border-bottom:1px solid var(--line);margin-bottom:6px}.user-menu-head strong,.user-menu-head span{display:block}.user-menu-head strong{font-size:.9375rem}.user-menu-head span{font-size:.8125rem;color:var(--text-muted);margin-top:3px}.user-menu-popover a,.user-menu-popover button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px;border:0;border-radius:10px;color:var(--text);background:transparent;font-size:.9375rem;text-align:left;text-decoration:none}.user-menu-popover a:hover,.user-menu-popover button:hover{background:var(--hover)}.user-menu-popover form{margin:0}
.workspace-sidebar,.workspace-context{display:none}.shell{width:100%;max-width:1360px;margin:0 auto;padding:24px max(16px,env(safe-area-inset-right)) 28px max(16px,env(safe-area-inset-left));min-width:0}
.page-head{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin:0 0 24px}.page-head>div{min-width:0}.page-head h1{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:500;letter-spacing:-.055em;line-height:1.2;color:var(--text)}.page-head .sub{margin-top:8px;max-width:60ch;font-size:.9375rem;line-height:1.6;color:var(--text-muted)}.eyebrow{display:block;margin-bottom:8px;font-size:.75rem;line-height:1.4;letter-spacing:.07em;font-weight:650;color:var(--text-muted);text-transform:uppercase}.head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.head-actions .btn{flex:1}.back-link{display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:.875rem;font-weight:650;margin-bottom:8px}
.footer{display:flex;flex-direction:column;gap:16px;max-width:1360px;margin:0 auto;padding:20px 20px 28px;border-top:1px solid var(--line);color:var(--text-muted);font-size:.75rem}.footer-owner{display:flex;align-items:center;gap:10px}.footer-owner img{width:38px;max-height:22px}.footer nav{display:flex;flex-wrap:wrap;gap:2px 16px}.footer nav a{display:inline-flex;align-items:center;min-height:40px;color:var(--text-muted)}
.mobile-tabs{position:fixed;inset:auto 0 0;z-index:100;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;width:100%;height:var(--dock-clearance);padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left));background:var(--card);border-top:1px solid var(--line);box-shadow:0 -4px 20px rgb(39 34 55 / .035)}
.mobile-tabs>a,.mobile-tabs>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:56px;margin:0;padding:6px 2px;border:0;border-radius:12px;background:transparent;color:var(--text-muted);font:600 .75rem/1.2 var(--font);text-decoration:none}.mobile-tabs .bx{font-size:23px}.mobile-tabs>.active,.mobile-tabs>[aria-expanded=true]{color:var(--brand-darker);background:var(--sa-accent-soft)}
.workspace-menu{inset:auto 0 0;width:100%;max-width:560px;max-height:calc(100dvh - 24px);margin:0 auto;padding:0;border-radius:24px 24px 0 0;border-bottom:0;overscroll-behavior:contain}.workspace-menu-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 20px 14px;border-bottom:1px solid var(--line)}.workspace-menu-head h2{font-size:1.125rem;font-weight:650}.workspace-menu nav{display:grid;padding:8px 12px calc(20px + env(safe-area-inset-bottom,0px))}.workspace-menu nav>a{display:flex;align-items:center;gap:14px;min-height:60px;padding:12px;border-radius:12px;color:var(--text);font-size:.9375rem;text-decoration:none}.workspace-menu nav>a:hover,.workspace-menu nav>a.active{background:var(--sa-accent-soft);color:var(--brand-darker)}.workspace-menu nav>a>.bx{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;color:var(--brand-primary);background:var(--card)}
.demo-ribbon{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:24px;padding:10px 14px;background:var(--bg-sunken);border:1px dashed var(--line-strong);border-radius:12px;color:var(--text-muted);font-size:.75rem}.demo-ribbon>span{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--text-secondary)}.demo-ribbon>p{flex:1;min-width:160px;font-size:.75rem}.demo-ribbon form{margin-left:auto}.demo-ribbon button{padding:8px 10px;border:0;background:transparent;color:var(--brand-darker);font-size:.75rem;text-decoration:underline}
/* Home: readable summary tiles and a single-column action hierarchy on phones. */
.workspace-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}.workspace-metric{position:relative;transition:border-color var(--dur),box-shadow var(--dur),transform var(--dur);display:flex;flex-direction:column;gap:8px;min-width:0;padding:16px 12px;border:1px solid var(--line);border-radius:var(--card-radius);background:var(--card);box-shadow:var(--shadow-sm);color:var(--text);text-decoration:none}.workspace-metric:hover{border-color:color-mix(in srgb,var(--brand-primary) 35%,var(--line));box-shadow:var(--shadow-md);transform:translateY(-2px);text-decoration:none}.workspace-metric>span{font-size:.75rem;font-weight:600;line-height:1.4;color:var(--text-muted)}.workspace-metric>strong{font-size:clamp(1.25rem,5vw,1.8rem);font-weight:650;line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}.workspace-metric>.bx{display:inline-grid;place-items:center;order:-1;width:32px;height:32px;border-radius:10px;background:var(--sa-accent-soft);color:var(--brand-primary);font-size:18px}.workspace-metric>small{display:none}
.home-secondary-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.workspace-shortcuts{padding:20px}.workspace-shortcuts>h2{font-size:1.125rem;font-weight:650}.workspace-shortcuts>p{margin-top:8px;color:var(--text-muted);font-size:.875rem;line-height:1.6}.workspace-shortcuts>a{display:flex;align-items:center;gap:12px;min-height:76px;padding:16px 0;border-bottom:1px solid var(--line-soft);color:var(--text);text-decoration:none}.workspace-shortcuts>a:last-child{border-bottom:0;padding-bottom:0}.workspace-shortcuts>a>.bx:first-child{color:var(--brand-primary);font-size:22px}.workspace-shortcuts>a>.bx:last-child{margin-left:auto;color:var(--text-muted)}.workspace-shortcuts>a>span{display:grid;gap:3px;min-width:0}.workspace-shortcuts strong{font-size:.9375rem;font-weight:650}.workspace-shortcuts small{font-size:.8125rem;color:var(--text-muted)}
/* Home page-specific layout wins once, instead of inheriting past theme passes. */
.app-page .business-line-card{padding:0;margin-bottom:20px;border:1px solid var(--line);border-radius:var(--card-radius);background:var(--card);box-shadow:var(--shadow-sm);color:var(--text)}
.app-page .business-line-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:20px;border-bottom:1px solid var(--line-soft)}.app-page .business-line-head h2{font-size:1.6rem;font-weight:650;letter-spacing:-.04em;color:var(--text)}.app-page .business-line-head .line-kicker{display:block;margin-bottom:5px;font:600 .8125rem/1.5 var(--font);text-transform:none;color:var(--text-muted)}.app-page .line-state-pill{max-width:100%;font-size:.75rem;white-space:normal}
.app-page .home-call-outcome{display:flex;align-items:flex-start;gap:14px;padding:20px;margin:0}.app-page .home-call-mark{flex:0 0 40px;width:40px;height:40px;border:0;border-radius:12px;color:var(--brand-primary);background:var(--sa-accent-soft)}.app-page .home-call-outcome h3{font-size:1.0625rem;font-weight:650}.app-page .home-call-outcome p{font-size:.9375rem;line-height:1.5;color:var(--text-muted);margin-top:5px}.app-page .account-kicker{font-size:.75rem;color:var(--text-muted);text-transform:none;letter-spacing:0}
.app-page .home-plan-details{margin:0;border-top:1px solid var(--line-soft);border-radius:0}.app-page .home-plan-details>summary{min-height:52px;padding:14px 20px;font-size:.875rem}.app-page .call-outcome-flow{padding:20px;gap:20px}.app-page .business-line-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:16px 20px 20px;background:transparent;border-top:1px solid var(--line-soft);border-radius:0}.app-page .business-line-actions>.btn{width:100%}.app-page .today-override{width:100%}.app-page .today-override>summary{width:100%}.app-page .today-override>form{width:min(340px,calc(100vw - 72px));max-width:100%}
.app-page .assistant-discovery{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;padding:20px;margin-bottom:20px;border:1px solid var(--line);border-radius:var(--card-radius);background:var(--card);box-shadow:var(--shadow-sm)}.app-page .assistant-discovery-mark{width:44px;height:44px;border:0;border-radius:14px;color:var(--brand-primary);background:var(--sa-accent-soft)}.app-page .assistant-discovery .eyebrow{margin-bottom:5px;font-size:.6875rem}.app-page .assistant-discovery h2{font-size:1.125rem;font-weight:650}.app-page .assistant-discovery p{margin-top:7px;font-size:.875rem;line-height:1.6;color:var(--text-muted)}.app-page .assistant-discovery-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;grid-column:1/-1;width:100%;margin:0}.app-page .assistant-discovery-actions>.btn{width:100%;font-size:.9375rem}
.app-page .trial-strip{padding:16px;margin:0 0 12px;gap:14px;border-radius:16px}.app-page .trial-strip>div>span{font-size:.8125rem}.app-page .autopay-prompt{padding:14px 16px;margin-bottom:20px;border-radius:14px;font-size:.8125rem}
.workspace-progress{position:fixed;inset:0 0 auto;z-index:10000;height:3px;background:var(--brand-primary);transform:scaleX(0);transform-origin:left;opacity:0;transition:transform .25s ease,opacity .2s;pointer-events:none}html.workspace-navigating .workspace-progress{transform:scaleX(.72);opacity:1}
@media(min-width:600px){.shell{padding:32px}.topbar-inner{padding-inline:32px}.credit-chip{display:inline-flex}.page-head{flex-direction:row;align-items:center;justify-content:space-between}.head-actions .btn{flex:initial}.workspace-metrics{gap:16px;margin-bottom:24px}.workspace-metric{position:relative;padding:22px}.workspace-metric>span{font-size:.875rem}.workspace-metric>strong{font-size:2rem}.workspace-metric>small{display:block;font-size:.8125rem;color:var(--text-muted)}.app-page .business-line-actions{display:flex;flex-wrap:wrap}.app-page .business-line-actions>.btn,.app-page .today-override{width:auto}.app-page .assistant-discovery{grid-template-columns:48px minmax(0,1fr)}.app-page .assistant-discovery-actions{display:flex;flex-wrap:wrap;grid-column:2}.app-page .assistant-discovery-actions>.btn{width:auto}}
@media(min-width:1000px){.app-page{--dock-clearance:0px;--topbar-h:76px;padding:0 0 0 var(--workspace-width)}.workspace-sidebar{position:fixed;inset:12px auto 12px 12px;z-index:110;display:flex;flex-direction:column;width:calc(var(--workspace-width) - 24px);padding:24px 12px 16px;overflow-y:auto;border:1px solid var(--line);border-radius:24px;background:var(--card);color:var(--text);box-shadow:var(--shadow-sm)}.sidebar-brand{margin:0 10px 40px}.sidebar-brand .brand-logo{width:168px}.workspace-label{margin:0 12px 10px;font-size:.6875rem;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}.workspace-sidebar nav{display:grid;gap:5px;margin-bottom:30px}.workspace-sidebar nav a{display:flex;align-items:center;gap:12px;min-height:46px;padding:12px;border-radius:12px;color:var(--text-secondary);font-size:.875rem;font-weight:550;text-decoration:none}.workspace-sidebar nav a:hover{background:var(--hover);color:var(--text)}.workspace-sidebar nav a.active{background:var(--sa-accent-soft);color:var(--brand-darker);font-weight:700}.workspace-sidebar nav a.active .bx{color:var(--brand-primary)}.sidebar-bottom{margin-top:auto}.sidebar-support{display:flex;align-items:center;gap:10px;padding:18px 10px;border-top:1px solid var(--line);color:var(--text);text-decoration:none}.sidebar-support span{display:grid;gap:4px}.sidebar-support strong{font-size:.8125rem}.sidebar-support small{font-size:.75rem;color:var(--text-muted)}.sidebar-support>.bx:last-child{margin-left:auto}.sidebar-signoff{display:block;padding:8px 10px;color:var(--text-muted);font-size:.75rem;line-height:1.6}.topbar .brand{display:none}.workspace-context{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.8125rem}.workspace-context strong{color:var(--text);font-weight:650}.topbar-help{width:auto;padding-inline:12px;display:flex;gap:7px;border-radius:999px}.topbar-help span{display:inline;font-size:.875rem}.shell{padding:36px 40px 40px}.topbar-inner{padding-inline:40px}.footer{flex-direction:row;justify-content:space-between;padding:20px 40px 32px}.mobile-tabs{display:none}.home-secondary-grid.calls-only{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}.workspace-metric>.bx{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--sa-accent-soft);color:var(--brand-primary)}.workspace-metric>span{padding-right:40px}}
@media(max-width:360px){.shell{padding-inline:12px}.topbar-inner{padding-inline:12px}.brand-logo{width:138px}.workspace-metrics{gap:6px}.workspace-metric{padding:14px 10px}.workspace-metric>strong{font-size:1.25rem}.mobile-tabs>a,.mobile-tabs>button{font-size:.6875rem}}
/* Existing Flutter editor bridge expects no duplicate web navigation. */
body.native-app{--dock-clearance:0px;padding:0}body.native-app .workspace-sidebar,body.native-app .workspace-context,body.native-app .mobile-tabs,body.native-app .footer{display:none}body.native-app .topbar .brand{display:flex}body.native-app .shell{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}

/* Page hierarchy and ambient detail shared by every customer workspace. */
.ui-page-header{position:relative;isolation:isolate;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:28px}
.ui-page-header::after{content:'';position:absolute;bottom:-1px;left:0;width:64px;height:3px;border-radius:4px;background:var(--brand-primary)}
.home-welcome{position:relative;isolation:isolate;overflow:hidden;padding:26px;border:1px solid color-mix(in srgb,var(--brand-primary) 16%,var(--line));border-radius:var(--radius-xl);background:linear-gradient(120deg,var(--card) 30%,var(--sa-accent-soft));box-shadow:var(--shadow-sm);margin-bottom:24px}
.home-welcome .ui-eyebrow{color:var(--brand-darker)}
.home-welcome .sub{max-width:48ch}
.home-signal{display:flex;align-items:center;justify-content:center;gap:7px;position:absolute;right:28px;bottom:0;height:100%;z-index:-1;opacity:.08;transform:rotate(-12deg);pointer-events:none}
.home-signal i{display:block;width:18px;height:48px;border-radius:999px;background:var(--brand-primary)}
.home-signal i:nth-child(2),.home-signal i:nth-child(6){height:96px}.home-signal i:nth-child(3),.home-signal i:nth-child(5){height:142px}.home-signal i:nth-child(4){height:190px}
.home-essentials{display:grid;gap:20px;min-width:0;margin-bottom:24px}
.home-essentials>:is(.assistant-discovery,.business-line-card,.empty-line-card){margin-bottom:0}
.home-essentials .assistant-discovery{background:linear-gradient(150deg,var(--sa-accent-soft),var(--card) 65%);border-color:color-mix(in srgb,var(--brand-primary) 18%,var(--line))}
.workspace-shortcuts>a>.bx:first-child{display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid var(--line);border-radius:13px;background:var(--sa-accent-soft)}
.workspace-shortcuts>a:hover strong{color:var(--brand-darker)}
.activity-list>a{transition:background var(--dur)}.activity-list>a:hover{background:var(--sa-accent-soft)}
.mobile-tabs>a,.mobile-tabs>button{position:relative;transition:color var(--dur),background var(--dur)}
.mobile-tabs>.active::before{content:'';position:absolute;top:2px;width:16px;height:3px;border-radius:999px;background:var(--brand-primary)}
.workspace-menu nav>a>span{display:grid;gap:4px}.workspace-menu nav small{font-size:.75rem;font-weight:400;color:var(--text-muted)}
.workspace-navigation-preview{display:none;position:fixed;top:calc(var(--topbar-h) + 32px);left:32px;right:32px;pointer-events:none;z-index:85;gap:18px}
.workspace-navigation-preview>i{display:block;height:88px;border-radius:20px;background:linear-gradient(90deg,var(--line-soft),var(--card),var(--line-soft));background-size:200% 100%;animation:ui-skeleton 1.5s linear infinite}
.workspace-navigation-preview>i:first-child{width:55%;height:28px}.workspace-navigation-preview>i:nth-child(2){width:75%;height:14px}
html.workspace-navigating-delayed .workspace-navigation-preview{display:grid}html.workspace-navigating-delayed body:not(.native-app) .shell{opacity:.18}
@keyframes ui-skeleton{to{background-position:-200% 0}}
@view-transition{navigation:auto}
@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:ui-page-out 100ms ease-out both}::view-transition-new(root){animation:ui-page-in 200ms ease-out both}@keyframes ui-page-out{to{opacity:0}}@keyframes ui-page-in{from{opacity:0;transform:translateY(5px)}}.topbar{view-transition-name:retail-topbar}.workspace-sidebar{view-transition-name:retail-sidebar}.mobile-tabs{view-transition-name:retail-mobile-tabs}}
@media(min-width:1000px){.home-essentials{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:stretch}.home-essentials .assistant-discovery{align-content:start;gap:18px;padding:26px}.home-essentials .assistant-discovery-actions{grid-column:1/-1;margin-top:8px}.workspace-navigation-preview{left:calc(var(--workspace-width) + 40px);right:40px}.workspace-sidebar nav a{position:relative}.workspace-sidebar nav a.active::after{content:'';position:absolute;right:10px;width:5px;height:5px;border-radius:50%;background:var(--brand-primary)}.workspace-sidebar nav a>span{padding-right:8px}}
@media(max-width:600px){.home-welcome{padding:22px 20px}.home-welcome h1{font-size:1.875rem}.home-signal{right:-28px;opacity:.05}.home-essentials{gap:16px;margin-bottom:20px}.ui-page-header{padding-bottom:20px;margin-bottom:24px}.workspace-metric{gap:7px}.workspace-navigation-preview{left:16px;right:16px}.home-welcome .head-actions>.btn{flex:initial;min-height:44px}.activity-list time{font-size:.75rem}}
body.native-app .workspace-navigation-preview{display:none}
/* Public pages share the kit without duplicating signed-in navigation. */
.auth-page{background:radial-gradient(ellipse at 20% 0%,rgba(var(--brand-rgb),.12),transparent 50%),radial-gradient(ellipse at 100% 100%,rgba(var(--brand-rgb),.065),transparent 60%),var(--bg)}
.auth-page .auth-card{border-color:color-mix(in srgb,var(--brand-primary) 13%,var(--line));box-shadow:0 20px 80px -36px rgba(var(--brand-rgb),.3);border-radius:28px}
.auth-page .auth-brand{padding-bottom:24px;border-bottom:1px solid var(--line-soft);margin-bottom:24px}
.auth-page .signin-heading h1,.auth-page .signup-heading h1,.auth-page .auth-task-heading h1{font-weight:500;letter-spacing:-.05em}
.public-content-page .auth-card{border-radius:28px;box-shadow:var(--shadow-sm)}
@media(prefers-reduced-motion:reduce){::view-transition-old(*),::view-transition-new(*){animation:none!important}.workspace-navigation-preview>i{animation:none}}

.workspace-menu nav strong{font-size:.9375rem;font-weight:650}
.home-essentials>:only-child{grid-column:1/-1}
