/* Shared typography and controls. Text uses semantic tokens in every view. */
html.flozo-interface body { background: var(--color-background); color: var(--color-text); color-scheme: inherit; font-size: 14px; }
html.flozo-interface :is(h1,h2,h3,h4,strong) { color: inherit; }
html.flozo-interface :is(.page-heading,.settings-title) h1 { font-size: 30px !important; line-height: 1.2; }
html.flozo-interface :is(.page-heading,.settings-title) p { font-size: 13px !important; color: var(--color-secondary) !important; }
html.flozo-interface :is(.eyebrow,.desk-kicker,.workspace-label) { font-size: 10px !important; letter-spacing: .1em !important; color: var(--color-muted) !important; }
html.flozo-interface :is(.card,.cp6-panel,.settings-section) { box-shadow: var(--surface-shadow) !important; border-radius: 16px !important; }
html.flozo-interface :is(.card-head h2,.cp6-panel-head h2) { font-size: 18px !important; }
html.flozo-interface .btn { min-height: 40px; border-radius: 10px !important; font-size: 13px !important; }
html.flozo-interface .btn.primary { background: var(--color-primary) !important; border-color: var(--color-primary) !important; color: var(--color-on-primary) !important; }
html.flozo-interface .btn.primary:hover { background: var(--color-primary-hover) !important; border-color: var(--color-primary-hover) !important; }
html.flozo-interface .btn.primary svg { color: var(--color-on-primary) !important; }
html.flozo-interface :is(.field label,.definition-grid dt,.metric-pair dt,.check-label) { color: var(--color-secondary) !important; font-size: 12px !important; }
html.flozo-interface .field :is(input,select,textarea) { font-size: 14px !important; }
html.flozo-interface :is(.field .help,.help,.footnote) { color: var(--color-muted) !important; font-size: 12px !important; }
html.flozo-interface .field :is(input,select,textarea):focus { border-color: var(--color-primary) !important; box-shadow: 0 0 0 3px var(--color-primary-soft) !important; }
html.flozo-interface :is(.icon-btn,.cp6-panel-link) { color: var(--color-secondary) !important; }
html.flozo-interface :focus-visible { outline: 2px solid var(--color-primary); outline-offset: 3px; }
html.flozo-interface :is(.badge.green,.sync-chip.green) { color: var(--color-success) !important; background: var(--color-success-soft) !important; }
html.flozo-interface .badge.orange { color: var(--color-warning) !important; background: var(--color-warning-soft) !important; }
html.flozo-interface .badge.red { color: var(--color-danger) !important; background: var(--color-danger-soft) !important; }
html.flozo-interface :is(.empty p,.definition-grid dd,.task-meta,.customer-mini p,.focus-row p,.follow-row p) { color: var(--color-secondary) !important; }
html.flozo-interface :is(.modal-card,.modal,.rc2-command-box) { background: var(--color-surface) !important; color: var(--color-text) !important; box-shadow: var(--deep-shadow) !important; }
html.flozo-interface :is(.modal-header,.modal-head,.modal-footer) { background: var(--color-surface) !important; border-color: var(--color-border) !important; }
html.flozo-interface :is(.modal-backdrop,.rc2-command-backdrop) { background: var(--overlay) !important; }
html.flozo-interface .settings-title h2 { font-size: 24px !important; }
html.flozo-interface .setting-toggle { font-size: 13px !important; }
html.flozo-interface .setting-toggle small { color: var(--color-secondary) !important; font-size: 12px !important; }
html.flozo-interface .setting-toggle input:checked { background: var(--color-primary); }
html.flozo-interface .settings-nav button.active { background: var(--color-primary-soft) !important; color: var(--color-primary) !important; }
html.flozo-interface .settings-icon { background: var(--color-primary-soft) !important; color: var(--color-primary) !important; }

/* App chrome: one place each for capture, search, hints and Flozo. */
html.flozo-interface .flozo-sidebar { width: 224px !important; padding: calc(24px + env(safe-area-inset-top)) 14px calc(12px + env(safe-area-inset-bottom)) !important; background: var(--color-sidebar) !important; border-right: 1px solid var(--color-border) !important; }
html.flozo-interface .main-shell { margin-left: 224px !important; }
html.flozo-interface .flozo-sidebar .brand { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; padding: 4px 14px 26px !important; width: 100%; }
html.flozo-interface .flozo-sidebar .brand .flozo-wordmark { display: block !important; width: 139px !important; height: auto; filter: none !important; opacity: 1 !important; }
html.flozo-interface[data-flozo-mode="dark"] .flozo-sidebar .brand .flozo-wordmark { filter: brightness(0) invert(1) !important; }
html.flozo-interface .flozo-brand-caption { color: var(--color-muted); font-size: 11px; letter-spacing: .015em; }
html.flozo-interface .flozo-sidebar .workspace-label { padding: 13px 14px 7px !important; font-weight: 600; }
html.flozo-interface .flozo-sidebar .nav-group { gap: 3px; }
html.flozo-interface .flozo-sidebar .nav-link { display: flex; justify-content: flex-start; gap: 12px; padding: 10px 14px !important; min-height: 42px; border-radius: 10px !important; font-size: 13px !important; color: var(--color-secondary) !important; }
html.flozo-interface .flozo-sidebar .nav-label { display: inline !important; }
html.flozo-interface .flozo-sidebar .nav-link svg { width: 19px; height: 19px; color: inherit !important; }
html.flozo-interface .flozo-sidebar .nav-link.active { background: var(--color-primary-soft) !important; color: var(--color-primary) !important; box-shadow: none !important; font-weight: 650; }
html.flozo-interface .flozo-sidebar .nav-link:hover { background: var(--color-surface-strong) !important; }
html.flozo-interface .flozo-sidebar .sidebar-bottom { margin-top: auto; padding-top: 14px; }
html.flozo-interface .flozo-sidebar .sidebar-ask { display: flex; align-items: center; gap: 12px; background: transparent !important; box-shadow: none !important; border: 1px solid var(--color-border) !important; color: var(--color-text) !important; border-radius: 12px; padding: 11px 12px; margin-bottom: 8px; }
html.flozo-interface .flozo-sidebar .sidebar-ask>svg { color: var(--color-warm) !important; width: 20px; height: 20px; }
html.flozo-interface .sidebar-ask strong { font-size: 12px; }
html.flozo-interface .sidebar-ask small { font-size: 10px; color: var(--color-secondary) !important; }
html.flozo-interface .flozo-sidebar .profile { padding: 15px 5px 4px; display: flex; gap: 9px; border-color: var(--color-border) !important; }
html.flozo-interface .flozo-sidebar .profile-info { display: flex !important; min-width: 0; flex-direction: column; line-height: 1.5; }
html.flozo-interface .flozo-sidebar .profile-info strong { font-size: 12px; color: var(--color-text); }
html.flozo-interface .flozo-sidebar .profile-info small { font-size: 10px; color: var(--color-secondary); }
html.flozo-interface .avatar { background: var(--color-warm-soft) !important; color: var(--color-warm) !important; }
html.flozo-interface .flozo-topbar { height: calc(72px + env(safe-area-inset-top)) !important; min-height: calc(72px + env(safe-area-inset-top)); padding: env(safe-area-inset-top) 30px 0 !important; background: var(--color-sidebar) !important; border-bottom: 1px solid var(--color-border) !important; box-shadow: none !important; }
html.flozo-interface .flozo-topbar .breadcrumb strong { font-size: 17px; color: var(--color-text); }
html.flozo-interface .flozo-topbar .topbar-right { gap: 10px; }
html.flozo-interface .flozo-topbar :is(.quick-top,.search-trigger,.focus-chip) { min-height: 36px; font-size: 12px !important; padding: 8px 11px; border-radius: 9px; box-shadow: none !important; background: var(--color-surface) !important; color: var(--color-secondary) !important; border-color: var(--color-border) !important; }
html.flozo-interface .flozo-topbar .quick-top span { display: inline; }
html.flozo-interface .flozo-topbar .search-trigger { width: auto !important; gap: 9px; }
html.flozo-interface .flozo-topbar .key { font-family: inherit; font-size: 10px; background: var(--color-surface-soft) !important; color: var(--color-muted) !important; border-color: var(--color-border) !important; }
html.flozo-interface .flozo-topbar .sync-chip { display: inline-flex; padding: 0 4px; background: transparent !important; border: 0 !important; font-size: 10px !important; gap: 6px; }
html.flozo-interface .flozo-topbar .sync-chip::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--color-success); }
html.flozo-interface .flozo-topbar .sync-chip.red { color: var(--color-danger) !important; }
html.flozo-interface .flozo-topbar .sync-chip.red::before { background: var(--color-danger); }
html.flozo-interface .flozo-notifications { position: relative; display: inline-flex; }
html.flozo-interface .flozo-notifications b { position: absolute; right: -3px; top: -3px; border-radius: 50%; background: var(--color-warning-soft); color: var(--color-warning); min-width: 16px; height: 16px; display: grid; place-items: center; font-size: 9px; pointer-events: none; }
html.flozo-interface .flozo-main { width: 100%; max-width: 1380px !important; padding: 30px 32px 36px !important; margin: 0 auto; min-width: 0; }
html.flozo-interface .bottom-note { border: 0; color: var(--color-muted); }

/* Home combines a welcoming desk with visible, deliberately weighted cards. */
.flozo-home { max-width:1160px; margin:auto; }
.flozo-kicker { display:block; font-size:10px; font-weight:600; color:var(--color-muted); letter-spacing:.055em; line-height:1.5; }
.flozo-home-hero { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:18px; margin-bottom:18px; align-items:stretch; }
.flozo-welcome { padding:25px 26px; border:1px solid var(--color-border); border-radius:17px; background:radial-gradient(ellipse at 90% 100%,var(--color-warm-soft),transparent 63%),linear-gradient(120deg,var(--color-surface),var(--color-primary-soft)); }
.flozo-welcome h1 { font-size:clamp(27px,2.8vw,36px); letter-spacing:-.035em; font-weight:650; margin:10px 0 12px; line-height:1.2; color:var(--color-text); overflow-wrap:anywhere; }
.flozo-welcome p { margin:0; font-size:13px; color:var(--color-secondary); line-height:1.7; max-width:500px; }
.flozo-next { display:grid; grid-template-columns:34px minmax(0,1fr); align-items:start; gap:12px; padding:23px; margin:0; border:1px solid var(--color-border); border-left:3px solid var(--color-primary); background:var(--color-surface); border-radius:17px; box-shadow:var(--surface-shadow); }
.flozo-next-icon { width:34px; height:34px; border-radius:10px; display:grid; place-items:center; color:var(--color-primary); background:var(--color-primary-soft); }
.flozo-next-icon svg { width:20px; height:20px; }
.flozo-next .grow { min-width:0; }
.flozo-next h2 { font-size:19px; line-height:1.4; margin:5px 0 7px; overflow-wrap:anywhere; }
.flozo-next p { color:var(--color-secondary); font-size:12px; margin:0; line-height:1.65; }
.flozo-next>.btn { grid-column:2; justify-self:start; padding:10px 14px; max-width:100%; white-space:normal; }
.flozo-next.is-important { border-left-color:var(--color-warning); }
.flozo-next.is-important .flozo-next-icon { color:var(--color-warning); background:var(--color-warning-soft); }
.flozo-timer { grid-column:2; font-size:23px; font-variant-numeric:tabular-nums; font-weight:650; color:var(--color-primary); }
.flozo-home-body { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr); gap:18px; align-items:start; }
.flozo-home-stream { display:flex; flex-direction:column; gap:18px; min-width:0; }
.flozo-panel,.flozo-priorities { background:var(--color-surface); border:1px solid var(--color-border); border-radius:16px; min-width:0; }
.flozo-panel { padding:20px; }
.flozo-section-head { display:flex; align-items:start; justify-content:space-between; gap:12px; }
.flozo-section-head>div { min-width:0; }
.flozo-section-head h2 { font-size:17px; margin:3px 0 5px; line-height:1.4; }
.flozo-section-head p { font-size:12px; color:var(--color-secondary); line-height:1.6; margin:0; }
html.flozo-interface .flozo-text-button { display:inline-flex; align-items:center; gap:4px; background:transparent; border:0; color:var(--color-primary); font-size:12px; font-weight:550; padding:5px 0; cursor:pointer; flex-shrink:0; }
.flozo-text-button svg { width:15px; height:15px; }
.flozo-priorities>.flozo-section-head { padding:20px 20px 14px; }
.flozo-task-list { list-style:none; padding:0 20px; margin:0; }
.flozo-task-list li { display:flex; align-items:center; gap:11px; padding:15px 0; border-top:1px solid var(--color-border); }
.flozo-task-list .check-box { width:24px; height:24px; flex-shrink:0; border-radius:7px; border:1.5px solid var(--color-border); background:transparent; }
.flozo-task-list .check-box svg { opacity:0; width:13px; height:13px; }
.flozo-task-list .check-box:hover { border-color:var(--color-primary); background:var(--color-primary-soft); }
.flozo-task-list .check-box:hover svg { opacity:1; color:var(--color-primary); }
.flozo-task-title { flex:1; min-width:0; border:0; background:transparent; text-align:left; color:var(--color-text); cursor:pointer; padding:3px 0; }
.flozo-task-title strong { display:block; font-size:13px; font-weight:600; overflow-wrap:anywhere; line-height:1.5; }
.flozo-task-title small { display:block; color:var(--color-secondary); font-size:11px; margin-top:4px; }
.flozo-due { font-size:11px; color:var(--color-muted); max-width:110px; text-align:right; flex-shrink:0; }
.flozo-due.overdue { color:var(--color-warning); }
.flozo-priorities-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px 20px; border-top:1px solid var(--color-border); }
.flozo-priorities-footer>span { font-size:11px; color:var(--color-muted); }
.flozo-empty { padding:20px 20px 25px; }
.flozo-empty>span { display:flex; color:var(--color-muted); margin-bottom:12px; }
.flozo-empty>span svg { width:22px; height:22px; }
.flozo-empty strong { font-size:14px; font-weight:550; }
.flozo-empty p { font-size:12px; color:var(--color-secondary); margin-top:7px; line-height:1.7; }
.flozo-numbers { border:1px solid var(--color-border); border-radius:13px; background:var(--color-surface); margin:0 0 18px; padding:14px 6px; }
.flozo-numbers h2 { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.flozo-numbers dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; }
.flozo-numbers dl>div { display:flex; flex-direction:column-reverse; gap:5px; padding:0 18px; border-right:1px solid var(--color-border); }
.flozo-numbers dl>div:last-child { border:0; }
.flozo-numbers dt { font-size:11px; color:var(--color-secondary); line-height:1.5; }
.flozo-numbers dd { margin:0; font-size:22px; color:var(--color-text); font-weight:600; font-variant-numeric:tabular-nums; }
.flozo-week-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; padding:0 3px; }
.flozo-week-summary>div { display:flex; align-items:center; gap:11px; padding:3px 0; }
.flozo-week-summary svg { width:21px; height:21px; color:var(--color-primary); flex-shrink:0; }
.flozo-week-summary strong { display:block; font-size:14px; font-weight:600; }
.flozo-week-summary small { display:block; font-size:10px; color:var(--color-secondary); margin-top:4px; line-height:1.5; }
html.flozo-interface .flozo-note { font-size:12px; color:var(--color-secondary); line-height:1.7; margin:12px 0; }
.flozo-workspace-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:15px; }
.flozo-workspace-links button { display:flex; align-items:center; gap:10px; padding:12px; min-width:0; background:var(--color-surface-soft); border:1px solid var(--color-border); border-radius:11px; text-align:left; color:var(--color-text); }
.flozo-workspace-links button>span { flex:1; min-width:0; }
.flozo-workspace-links strong { display:block; font-size:17px; font-weight:600; }
.flozo-workspace-links small { display:block; font-size:10px; color:var(--color-secondary); line-height:1.4; margin-top:3px; }
.flozo-workspace-links svg { width:18px; height:18px; flex-shrink:0; color:var(--color-primary); }
.flozo-workspace-links button>svg:last-child { width:13px; color:var(--color-muted); }
.flozo-recent-label { font-size:11px; color:var(--color-secondary); margin:19px 0 2px; font-weight:550; }
.flozo-recent-pages { padding:0; margin:0; list-style:none; }
.flozo-recent-pages button { width:100%; display:flex; gap:10px; align-items:center; background:transparent; border:0; border-top:1px solid var(--color-border); padding:11px 0; color:var(--color-text); font-size:12px; text-align:left; cursor:pointer; }
.flozo-recent-pages button>span { flex:1; min-width:0; overflow-wrap:anywhere; }
.flozo-recent-pages svg { width:15px; height:15px; color:var(--color-muted); flex-shrink:0; }
.flozo-personal-metrics { display:grid; grid-template-columns:1fr 1fr 1.35fr; gap:9px; margin:16px 0; }
.flozo-personal-metrics>div { min-width:0; }
.flozo-personal-metrics dt { font-size:10px; color:var(--color-secondary); line-height:1.5; }
.flozo-personal-metrics dd { font-size:12px; font-weight:600; margin:6px 0 0; }
.flozo-panel-actions { display:flex; flex-wrap:wrap; gap:8px; }
.flozo-panel-actions .btn { flex:1; }
.flozo-audio { margin:0; }
html.flozo-interface .flozo-audio .spotify-card { margin:0; box-shadow:none; border-radius:16px; }
html.flozo-interface .flozo-audio .card-head { padding:18px 18px 14px; flex-wrap:wrap; }
html.flozo-interface .flozo-audio .card-head h2 { font-size:17px !important; }
html.flozo-interface .flozo-audio .card-pad { padding:0 18px 18px; }
html.flozo-interface .flozo-audio .spotify-empty p { font-size:12px; line-height:1.6; }
html.flozo-interface .flozo-audio .spotify-empty { gap:10px; margin-bottom:15px; }
html.flozo-interface .flozo-audio .spotify-live { padding:0 18px 18px; }
.flozo-build-progress { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px; margin-top:14px; }
.flozo-build-progress strong { font-size:23px; font-weight:600; }
.flozo-build-progress span { font-size:11px; color:var(--color-secondary); }
.flozo-progress { height:5px; background:var(--color-surface-strong); border-radius:3px; margin:13px 0; overflow:hidden; }
.flozo-progress i { display:block; height:100%; background:var(--color-primary); border-radius:3px; }

/* Concrete business records appear before the supporting workspace cards. */
.flozo-home-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:16px; margin-bottom:16px; }
.flozo-welcome { padding:18px 22px; }
.flozo-welcome h1 { font-size:clamp(25px,2.3vw,31px); margin:7px 0 8px; }
.flozo-next { padding:18px 20px; gap:10px; }
.flozo-next h2 { font-size:16px; margin:4px 0; }
.flozo-next>.btn { padding:8px 12px; }
.flozo-numbers { margin-bottom:16px; padding:11px 6px; }
.flozo-numbers dd { font-size:20px; }
.flozo-business-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr); gap:18px; align-items:start; margin-bottom:18px; }
.flozo-business-grid>* { min-width:0; }
.flozo-business-grid>:only-child { grid-column:1/-1; }
.flozo-business-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:14px 0 10px; padding:11px 0; border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); }
.flozo-business-metrics.is-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.flozo-business-metrics>div { display:flex; flex-direction:column-reverse; gap:4px; min-width:0; }
.flozo-business-metrics dt { font-size:10px; color:var(--color-secondary); line-height:1.5; }
.flozo-business-metrics dd { margin:0; font-size:20px; font-weight:600; font-variant-numeric:tabular-nums; }
.flozo-case-list,.flozo-contact-list,.flozo-hint-list { list-style:none; margin:0; padding:0; }
.flozo-case-list>li+li,.flozo-contact-list>li+li,.flozo-hint-list>li+li { border-top:1px solid var(--color-border); }
.flozo-case-row { display:flex; flex-direction:column; gap:6px; width:100%; padding:13px 0; border:0; background:transparent; color:var(--color-text); text-align:left; cursor:pointer; }
.flozo-case-head { display:flex; align-items:center; gap:8px; min-width:0; }
.flozo-case-head>strong { flex:1; min-width:0; font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.flozo-case-head>svg { flex-shrink:0; width:14px; height:14px; color:var(--color-muted); }
.flozo-status { font-size:10px; padding:3px 7px; border-radius:5px; background:var(--color-surface-strong); color:var(--color-secondary); }
.flozo-status.is-warning { background:var(--color-warning-soft); color:var(--color-warning); }
.flozo-case-meta { color:var(--color-secondary); font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.flozo-case-step { display:flex; align-items:baseline; justify-content:space-between; gap:9px; font-size:12px; line-height:1.6; }
.flozo-case-step>span { min-width:0; overflow-wrap:anywhere; }
.flozo-case-step>small { flex-shrink:0; font-size:10px; color:var(--color-secondary); }
.flozo-case-foot { display:flex; flex-wrap:wrap; justify-content:space-between; gap:3px 8px; color:var(--color-secondary); font-size:10px; line-height:1.6; }
.flozo-case-foot>span { min-width:0; overflow-wrap:anywhere; }
.flozo-card-description { font-size:11px; color:var(--color-secondary); line-height:1.6; margin:10px 0; }
.flozo-card-more { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; border:0; border-top:1px solid var(--color-border); padding:13px 0 0; background:transparent; color:var(--color-primary); font-size:11px; text-align:left; cursor:pointer; }
.flozo-card-more>svg { width:14px; height:14px; flex-shrink:0; }
.flozo-business-empty p { margin:14px 0; font-size:12px; color:var(--color-secondary); line-height:1.7; }
.flozo-contact-list button { display:flex; align-items:center; gap:9px; width:100%; padding:12px 0; background:transparent; border:0; color:var(--color-text); text-align:left; cursor:pointer; }
.flozo-contact-list button>span { flex:1; min-width:0; }
.flozo-contact-list strong { display:block; font-size:13px; font-weight:600; overflow-wrap:anywhere; }
.flozo-contact-list small { display:block; font-size:10px; color:var(--color-secondary); margin-top:5px; line-height:1.5; }
.flozo-contact-step { display:block; font-size:12px; line-height:1.6; margin-top:7px; overflow-wrap:anywhere; }
.flozo-contact-list svg,.flozo-hint-list button>svg { flex-shrink:0; width:14px; height:14px; color:var(--color-muted); }
.flozo-hint-count { font-size:12px; font-weight:600; border-radius:6px; padding:4px 7px; background:var(--color-primary-soft); color:var(--color-primary); font-variant-numeric:tabular-nums; }
.flozo-hint-list button { display:flex; align-items:start; gap:9px; width:100%; padding:13px 0; border:0; background:transparent; color:var(--color-text); text-align:left; cursor:pointer; }
.flozo-hint-list .grow { min-width:0; }
.flozo-hint-list small { display:block; font-size:10px; color:var(--color-secondary); line-height:1.5; }
.flozo-hint-list strong { display:block; font-size:13px; line-height:1.5; margin:5px 0; font-weight:600; overflow-wrap:anywhere; }
.flozo-hint-list .grow>span { display:block; font-size:11px; line-height:1.6; color:var(--color-secondary); overflow-wrap:anywhere; }
.flozo-hint-dot { width:6px; height:6px; border-radius:50%; margin-top:5px; flex:0 0 6px; background:var(--color-primary); }
.flozo-hint-dot.high { background:var(--color-danger); }
.flozo-hint-dot.warn { background:var(--color-warning); }
.flozo-hint-group+section { margin-top:20px; }
.flozo-hint-group h3 { font-size:13px; font-weight:600; margin:0; }
.flozo-case-step>small.is-warning,.flozo-contact-list small.is-warning { color:var(--color-warning); }
.flozo-case-row:hover,.flozo-contact-list button:hover,.flozo-hint-list button:hover { background:var(--color-surface-soft); }
.flozo-case-row:focus-visible,.flozo-contact-list button:focus-visible,.flozo-hint-list button:focus-visible,.flozo-card-more:focus-visible { outline:2px solid var(--color-primary); outline-offset:3px; border-radius:6px; }

/* Login belongs to the same light/dark system. */
html.flozo-interface .auth-shell { background: var(--color-background); }
html.flozo-interface .auth-card { background: var(--color-surface); color: var(--color-text); border-color: var(--color-border); box-shadow: var(--deep-shadow); }
html.flozo-interface .auth-card::after { display: none; }
html.flozo-interface .auth-card h1 { color: var(--color-text); }
html.flozo-interface :is(.auth-copy,.auth-kicker,.auth-note) { color: var(--color-secondary); }
html.flozo-interface .auth-google { color: var(--color-text); background: var(--color-surface); border-color: var(--color-border); }
html.flozo-interface[data-flozo-mode="dark"] .auth-logo { filter: brightness(0) invert(1); }


/* Width comes from the viewport; children may shrink and wrap inside their own area. */
html.flozo-interface .flozo-brand-line { display:flex; align-items:center; gap:10px; }
html.flozo-interface .flozo-sidebar .flozo-wordmark { width:127px !important; max-width:127px; height:auto; }
html.flozo-interface .flozo-brand-mark { width:30px; height:30px; flex:0 0 30px; border-radius:9px; background:var(--color-warm); box-shadow:none; overflow:hidden; }
html.flozo-interface .flozo-sidebar .flozo-brand-mark img { display:block; width:23px !important; max-width:23px; height:auto; filter:none !important; }
html.flozo-interface .main-shell { min-width:0; }
html.flozo-interface .flozo-main>*,html.flozo-interface .flozo-home-hero>* { min-width:0; }
html.flozo-interface .flozo-sidebar { overflow-y:auto; overscroll-behavior:contain; }
html.flozo-interface .flozo-topbar .breadcrumb { min-width:0; }
html.flozo-interface .flozo-topbar .topbar-right { flex-shrink:0; }
html.flozo-interface .segmented-tabs button { display:inline-flex; align-items:center; gap:8px; min-height:38px; font-size:12px; padding:8px 12px; }
html.flozo-interface .segmented-tabs button>span { margin:0; }
html.flozo-interface .segmented-tabs .flozo-filter-label { color:inherit; background:transparent; font-size:inherit; padding:0; }
html.flozo-interface .segmented-tabs .flozo-filter-count { display:inline-grid; place-items:center; min-width:19px; padding:1px 4px; border-radius:5px; color:var(--color-secondary); background:var(--color-surface-strong); font-size:10px; }
html.flozo-interface .cp4-client-command { grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:18px; padding:22px; }
html.flozo-interface .cp4-attention-client { grid-column:1/-1; min-width:0; }
html.flozo-interface .cp4-command-copy h2 { font-size:23px; line-height:1.35; overflow-wrap:anywhere; }
html.flozo-interface .cp4-command-copy p { font-size:13px; line-height:1.65; }
html.flozo-interface .cp4-command-stats>div { min-width:0; padding:12px 14px; }
html.flozo-interface .cp4-command-stats strong { font-size:23px; }
html.flozo-interface .cp4-command-stats span { font-size:10px; letter-spacing:.025em; text-transform:none; line-height:1.5; }
html.flozo-interface :is(.cp4-client-grid,.cp4-partner-grid,.workspace-grid,.form-grid)>* { min-width:0; }
html.flozo-interface :is(.task-row h3,.cp4-partner-service,.cp4-command-copy,.workspace-body,.reading-text) { overflow-wrap:anywhere; }
html.flozo-interface .cp4-client-toolbar { flex-wrap:wrap; }
html.flozo-interface :is(.search-field,.search-field input) { min-width:0; max-width:100%; }
@media (min-width:821px) and (max-width:1150px) {
  html.flozo-interface .flozo-sidebar { width:200px !important; padding-left:10px !important; padding-right:10px !important; }
  html.flozo-interface .main-shell { margin-left:200px !important; }
  html.flozo-interface .flozo-sidebar .flozo-wordmark { width:113px !important; max-width:113px; }
  html.flozo-interface .flozo-main { padding:24px !important; }
  html.flozo-interface .flozo-topbar { padding:env(safe-area-inset-top) 22px 0 !important; }
  html.flozo-interface .flozo-topbar .sync-chip { display:none; }
  .flozo-welcome { padding:18px; }
  .flozo-next { padding:17px; }
  .flozo-panel { padding:18px; }
  .flozo-numbers dl>div { padding:0 13px; }
}
@media (max-width:1020px) {
  .flozo-home-hero { grid-template-columns:1fr; gap:14px; }
  .flozo-next { grid-template-columns:34px minmax(0,1fr) auto; align-items:center; }
  .flozo-next>.btn { grid-column:3; grid-row:1; align-self:center; }
  .flozo-next:has(.flozo-timer)>.btn { grid-row:2; }
  .flozo-home-body { grid-template-columns:1fr; }
  .flozo-business-grid { grid-template-columns:1fr; }
  .flozo-home-body>aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  html.flozo-interface .flozo-topbar .focus-chip { display:none; }
}
@media (max-width:820px) {
  html.flozo-interface .flozo-sidebar { width:242px !important; transform:translateX(-100%); padding-top:calc(25px + env(safe-area-inset-top)) !important; }
  html.flozo-interface .flozo-sidebar.open,html.flozo-interface body.menu-open .flozo-sidebar { transform:translateX(0); }
  html.flozo-interface .main-shell { margin-left:0 !important; }
  html.flozo-interface .flozo-topbar { height:calc(62px + env(safe-area-inset-top)) !important; min-height:calc(62px + env(safe-area-inset-top)); padding:env(safe-area-inset-top) 20px 0 !important; }
  html.flozo-interface .flozo-topbar .mobile-menu { display:inline-flex !important; }
  html.flozo-interface .flozo-topbar :is(.sync-chip,.flozo-capture) { display:none !important; }
  html.flozo-interface .flozo-main { padding:22px 24px calc(100px + env(safe-area-inset-bottom)) !important; }
  html.flozo-interface .mobile-tabbar { background:var(--color-surface) !important; border-color:var(--color-border) !important; }
  html.flozo-interface .mobile-tabbar :is(a,button) { color:var(--color-secondary) !important; }
  html.flozo-interface .mobile-tabbar a.active { color:var(--color-primary) !important; }
  html.flozo-interface .mobile-tabbar .tab-quick { background:var(--color-primary) !important; color:var(--color-on-primary) !important; }
}
/* Prevent iOS from zooming the page automatically when a small form input receives focus. */
@media (hover:none) and (pointer:coarse) {
  html.flozo-interface :is(input:not([type=checkbox]):not([type=radio]),select,textarea),
  html.flozo-interface .field :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-size:16px !important; }
}
@media (max-width:560px) {
  html.flozo-interface .flozo-main { padding:18px 16px calc(100px + env(safe-area-inset-bottom)) !important; }
  html.flozo-interface .flozo-topbar { padding:env(safe-area-inset-top) 12px 0 !important; }
  html.flozo-interface .flozo-topbar .breadcrumb strong { font-size:15px; }
  html.flozo-interface .flozo-topbar .search-trigger { width:34px !important; padding:7px; min-height:34px; }
  html.flozo-interface .flozo-topbar .search-trigger :is(span,kbd) { display:none; }
  .flozo-welcome { padding:17px 18px; }
  .flozo-welcome h1 { font-size:26px; }
  .flozo-next { grid-template-columns:30px minmax(0,1fr); gap:10px; padding:18px; align-items:start; }
  .flozo-next>.btn { grid-column:2; grid-row:auto; margin-top:3px; }
  .flozo-next:has(.flozo-timer)>.btn { grid-row:auto; }
  .flozo-next h2 { font-size:18px; }
  .flozo-next-icon { width:30px; height:30px; }
  .flozo-numbers { padding:12px 4px; }
  .flozo-numbers dl { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 0; }
  .flozo-numbers dl>div { padding:0 13px; }
  .flozo-numbers dl>div:nth-child(2) { border:0; }
  .flozo-numbers dt { font-size:10px; }
  .flozo-numbers dd { font-size:20px; }
  .flozo-home-body>aside { display:flex; }
  .flozo-priorities>.flozo-section-head { padding:18px 16px 12px; }
  .flozo-section-head h2 { font-size:16px; }
  .flozo-task-list { padding:0 16px; }
  .flozo-task-list li { flex-wrap:wrap; gap:9px; }
  .flozo-task-title { flex-basis:calc(100% - 33px); }
  .flozo-due { max-width:none; margin-left:33px; font-size:10px; }
  .flozo-priorities-footer { padding:13px 16px; }
  .flozo-priorities-footer>span { display:none; }
  .flozo-priorities-footer>.flozo-text-button { margin-left:auto; }
  .flozo-workspace-links { gap:8px; }
  .flozo-case-step { flex-wrap:wrap; gap:3px 8px; }
  .flozo-case-step>small { flex-shrink:1; }
  .flozo-workspace-links button { padding:10px; gap:7px; }
  .flozo-workspace-links button>svg:last-child { display:none; }
  html.flozo-interface .cp4-client-command { grid-template-columns:1fr; padding:18px; }
  html.flozo-interface .cp4-command-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html.flozo-interface .segmented-tabs { width:100%; flex-wrap:wrap; overflow:visible; }
  html.flozo-interface .settings-shell { grid-template-columns:1fr !important; }
}
@media (max-height:780px) and (min-width:821px) {
  html.flozo-interface .flozo-sidebar { padding-top:calc(17px + env(safe-area-inset-top)) !important; }
  html.flozo-interface .flozo-sidebar .brand { padding-bottom:13px !important; }
  html.flozo-interface .flozo-sidebar .workspace-label { padding-top:10px !important; }
  html.flozo-interface .flozo-sidebar .nav-link { min-height:36px; padding-top:7px !important; padding-bottom:7px !important; }
}
html.flozo-interface[data-flozo-density=compact] .flozo-task-list li { padding-top:11px; padding-bottom:11px; }
html.flozo-interface[data-flozo-density=compact] .flozo-welcome { padding-top:18px; padding-bottom:18px; }
@media print {
  html.flozo-interface .main-shell { margin:0 !important; }
  html.flozo-interface .flozo-main { padding:0 !important; }
}

html.flozo-interface[data-flozo-topbar=compact] .flozo-topbar { height:calc(62px + env(safe-area-inset-top)) !important; min-height:calc(62px + env(safe-area-inset-top)); }

/* Restore the personal welcome and compact live music strip. */
.flozo-home-hero { grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr); }
.flozo-welcome-picture { --flozo-welcome-image:url('assets/home-coast.png'); background-color:var(--color-surface); background-image:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.94) 58%,rgba(255,255,255,.7) 78%,rgba(255,255,255,.18)),var(--flozo-welcome-image); background-size:cover; background-position:center; min-height:190px; padding:22px 24px; }
.flozo-welcome-picture :is(.flozo-kicker,h1,.flozo-personality-line) { color:var(--color-text); }
.flozo-welcome-picture .flozo-kicker { max-width:75%; }
.flozo-welcome-picture h1 { font-size:clamp(27px,2.7vw,35px); max-width:90%; margin:10px 0; }
.flozo-welcome-picture .flozo-personality-line { max-width:68%; line-height:1.7; min-height:44px; font-size:13px; }
.flozo-welcome-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:17px; }
.flozo-welcome-actions .btn { font-size:12px; padding:9px 12px; }
.flozo-welcome-actions .btn:not(.primary) { background:var(--color-surface); }
html.flozo-interface[data-flozo-mode=dark] .flozo-welcome-picture { background-image:linear-gradient(90deg,rgba(21,27,35,.99),rgba(21,27,35,.94) 64%,rgba(21,27,35,.76) 82%,rgba(21,27,35,.4)),var(--flozo-welcome-image); }
.flozo-numbers dl { grid-template-columns:repeat(var(--flozo-metric-count,6),minmax(0,1fr)); }
.flozo-numbers dl>div { padding:0 14px; }
.flozo-numbers dd { font-size:19px; overflow-wrap:anywhere; }
.flozo-numbers dt { font-size:10px; }
.flozo-week-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
.flozo-customer-modes { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.flozo-customer-modes button { padding:7px 10px; font-size:11px; border-radius:7px; border:1px solid var(--color-border); background:var(--color-surface-soft); color:var(--color-secondary); cursor:pointer; }
.flozo-customer-modes button[aria-pressed=true] { background:var(--color-primary-soft); color:var(--color-primary); border-color:var(--color-primary); }
.flozo-case-agenda { display:block; padding:6px 8px; background:var(--color-primary-soft); color:var(--color-primary); font-size:10px; line-height:1.6; border-radius:6px; overflow-wrap:anywhere; }
.flozo-fee-card .flozo-business-metrics dd { font-size:18px; overflow-wrap:anywhere; }
html.flozo-interface .flozo-audio-banner { margin:0 0 16px; }
html.flozo-interface .flozo-audio-banner .spotify-card { display:grid; grid-template-columns:170px minmax(0,1fr); border-radius:13px; overflow:hidden; }
html.flozo-interface .flozo-audio-banner .card-head { display:flex; flex-wrap:wrap; align-content:center; align-items:center; gap:6px; padding:13px 15px; border-right:1px solid var(--color-border); }
html.flozo-interface .flozo-audio-banner .card-head h2 { font-size:14px !important; }
html.flozo-interface .flozo-audio-banner .card-head .subtitle { font-size:10px; line-height:1.5; }
html.flozo-interface .flozo-audio-banner .card-head>.flex:last-child { margin-left:0; }
html.flozo-interface .flozo-audio-banner .spotify-mark { width:25px; height:25px; }
html.flozo-interface .flozo-audio-banner .card-head .btn { font-size:10px; padding:3px 0; }
html.flozo-interface .flozo-audio-banner .card-pad { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:13px 16px !important; }
html.flozo-interface .flozo-audio-banner .spotify-empty { flex:1; min-width:180px; margin:0; }
html.flozo-interface .flozo-audio-banner .spotify-empty>svg { display:none; }
html.flozo-interface .flozo-audio-banner .spotify-empty strong { font-size:12px; }
html.flozo-interface .flozo-audio-banner .spotify-empty p { font-size:11px; margin:4px 0 0; }
html.flozo-interface .flozo-audio-banner .card-pad>.btn { padding:8px 11px; font-size:11px; }
html.flozo-interface .flozo-audio-banner .spotify-live { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 15px; padding:13px 16px; }
html.flozo-interface .flozo-audio-banner .spotify-now { grid-column:1; grid-row:1; min-width:0; margin:0; gap:10px; }
html.flozo-interface .flozo-audio-banner .spotify-cover { width:39px; height:39px; border-radius:7px; }
html.flozo-interface .flozo-audio-banner .spotify-meta { min-width:0; }
html.flozo-interface .flozo-audio-banner .spotify-meta strong { font-size:12px; }
html.flozo-interface .flozo-audio-banner .spotify-meta span { font-size:11px; }
html.flozo-interface .flozo-audio-banner .spotify-meta small { font-size:9px; }
html.flozo-interface .flozo-audio-banner .spotify-controls { grid-column:2; grid-row:1; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; margin:0; }
html.flozo-interface .flozo-audio-banner .spotify-controls .icon-btn { width:31px; height:31px; }
html.flozo-interface .flozo-audio-banner .spotify-progress { grid-column:1/-1; margin:5px 0 0; }
html.flozo-interface .flozo-audio-banner .spotify-times { grid-column:1/-1; margin:0; font-size:9px; }
html.flozo-interface .flozo-audio-banner .spotify-connected-empty { align-items:center; }
html.flozo-interface .flozo-audio-banner .spotify-connected-empty p { font-size:11px; }
html.flozo-interface .flozo-audio-banner .spotify-frame-wrap { padding:12px 16px; }
html.flozo-interface .flozo-audio-banner .spotify-frame-wrap iframe { height:152px; }
html.flozo-interface .flozo-audio-banner .spotify-connect-strip { grid-column:1/-1; padding:7px 16px; font-size:10px; }
html.flozo-interface .flozo-audio-banner .spotify-error { grid-column:1/-1; }
@media(max-width:1100px) {
  .flozo-numbers dl { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:14px; }
  .flozo-numbers dl>div:nth-child(3n) { border-right:0; }
  .flozo-welcome-picture .flozo-personality-line { max-width:78%; }
}
@media(max-width:1020px) {
  .flozo-home-hero { grid-template-columns:1fr; }
  .flozo-welcome-picture { min-height:185px; }
}
@media(max-width:700px) {
  html.flozo-interface .flozo-audio-banner .spotify-card { grid-template-columns:1fr; }
  html.flozo-interface .flozo-audio-banner .card-head { border-right:0; padding:10px 14px; justify-content:space-between; }
  html.flozo-interface .flozo-audio-banner .card-head .subtitle { display:none; }
  html.flozo-interface .flozo-audio-banner .card-pad { padding:10px 14px !important; }
  html.flozo-interface .flozo-audio-banner .spotify-live { padding:9px 14px 12px; }
}
@media(max-width:560px) {
  .flozo-welcome-picture { min-height:190px; padding:18px; }
  .flozo-welcome-picture h1 { font-size:28px; }
  .flozo-welcome-picture .flozo-personality-line { max-width:78%; font-size:12px; }
  .flozo-welcome-actions .btn { font-size:11px; padding:8px 10px; }
  .flozo-numbers dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .flozo-numbers dl>div { border-right:0; }
  .flozo-numbers dl>div:nth-child(odd) { border-right:1px solid var(--color-border); }
  .flozo-week-summary { grid-template-columns:1fr; gap:8px; }
  html.flozo-interface .flozo-audio-banner .spotify-live { grid-template-columns:1fr; }
  html.flozo-interface .flozo-audio-banner .spotify-controls { grid-column:1; grid-row:2; justify-content:flex-start; margin-top:5px; }
}

/* A personal desk and tools, in the same quiet palette as the company overview. */
html.flozo-interface .flozo-tool-trigger { width:auto; display:inline-flex; gap:7px; padding:8px 10px; color:var(--color-primary) !important; font-size:13px; white-space:nowrap; }
.flozo-desk-card { margin:0 0 22px; }
.flozo-desk-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:28px; }
.flozo-desk-grid>div { min-width:0; }
.flozo-desk-grid>div+div { border-left:1px solid var(--color-border); padding-left:28px; }
.flozo-desk-grid h3,.flozo-tool-group h3 { font-size:14px; line-height:1.5; margin:0 0 10px; }
.flozo-desk-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; margin:0 0 10px; }
.flozo-desk-heading h3 { margin:0; }
.flozo-favorite-tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:22px; }
.flozo-favorite-tools>button { display:flex; align-items:center; gap:9px; padding:11px 12px; border:1px solid var(--color-border); border-radius:12px; background:var(--color-surface); color:var(--color-text); text-align:left; font-size:13px; font-weight:600; min-width:0; min-height:44px; }
.flozo-favorite-tools>button:hover,.flozo-tool:hover,.flozo-day-loop>button:hover { border-color:var(--color-primary); background:var(--color-primary-soft); }
.flozo-favorite-tools svg { width:18px; height:18px; flex-shrink:0; color:var(--color-primary); }
.flozo-favorite-tools span { overflow-wrap:anywhere; }
.flozo-pin-list { list-style:none; margin:0; padding:0; }
.flozo-pin-list>li { display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--color-border); }
.flozo-pin-list>li:last-child { border-bottom:0; }
.flozo-pin-list>li>button:first-child { flex:1; display:flex; align-items:center; gap:10px; min-width:0; padding:10px 0; background:transparent; border:0; color:var(--color-text); text-align:left; }
.flozo-pin-list>li>button:first-child>span { flex:1; min-width:0; }
.flozo-pin-list strong,.flozo-resume strong { display:block; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.flozo-pin-list small,.flozo-resume small { display:block; font-size:11px; line-height:1.5; color:var(--color-secondary); }
.flozo-pin-list svg,.flozo-resume>svg { width:18px; height:18px; flex-shrink:0; color:var(--color-primary); }
html.flozo-interface .flozo-pin-button { flex-shrink:0; width:36px; height:40px; }
html.flozo-interface .flozo-pin-button[aria-pressed=true] { color:var(--color-primary) !important; background:var(--color-primary-soft) !important; }
.flozo-case-list>li { position:relative; padding-right:38px; }
.flozo-case-list>li>.flozo-pin-button { position:absolute; top:8px; right:0; }
.flozo-task-list>li { display:grid; grid-template-columns:30px minmax(0,1fr) auto 36px; }
.flozo-day-loop { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-bottom:14px; }
.flozo-day-loop>button { display:flex; flex-direction:column; align-items:center; gap:6px; border:1px solid var(--color-border); border-radius:12px; background:var(--color-surface); color:var(--color-text); padding:14px 5px; text-align:center; min-width:0; }
.flozo-day-loop strong { font-size:12px; }.flozo-day-loop small { font-size:11px; color:var(--color-secondary); }
.flozo-day-loop svg { width:18px; height:18px; color:var(--color-primary); }
.flozo-day-loop>button.is-done { background:var(--color-primary-soft); border-color:var(--color-border); }
.flozo-plan-note { display:flex; flex-direction:column; gap:4px; padding:12px; border-radius:10px; background:var(--color-primary-soft); font-size:12px; line-height:1.6; overflow-wrap:anywhere; margin-bottom:12px; }
.flozo-plan-note span { color:var(--color-secondary); }
.flozo-resume { display:flex; align-items:center; gap:10px; width:100%; padding:12px 0; text-align:left; border:0; border-bottom:1px solid var(--color-border); background:transparent; color:var(--color-text); margin-bottom:10px; }
.flozo-resume>span { flex:1; min-width:0; }
.flozo-tool-group { margin:0 0 24px; }.flozo-tool-group:last-child { margin-bottom:0; }
.flozo-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.flozo-tool { display:flex; align-items:center; gap:10px; width:100%; min-width:0; padding:14px 12px; border:1px solid var(--color-border); border-radius:12px; color:var(--color-text); background:var(--color-surface); text-align:left; }
.flozo-tool>span:first-child { display:flex; align-items:center; justify-content:center; flex-shrink:0; width:34px; height:34px; border-radius:9px; background:var(--color-primary-soft); color:var(--color-primary); }
.flozo-tool>span:nth-child(2) { flex:1; min-width:0; }
.flozo-tool svg { width:18px; height:18px; flex-shrink:0; }
.flozo-tool strong { display:block; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.flozo-tool small { display:block; font-size:11px; line-height:1.6; margin-top:3px; color:var(--color-secondary); overflow-wrap:anywhere; }
.flozo-brief-summary { display:flex; flex-direction:column; gap:4px; background:var(--color-primary-soft); color:var(--color-text); border-radius:14px; padding:16px; margin-bottom:22px; }
.flozo-brief-summary span { font-size:13px; color:var(--color-secondary); }
@media(max-width:1100px) { .flozo-tool-trigger span { display:none; } }
@media(max-width:820px) { .flozo-desk-grid { grid-template-columns:1fr; gap:20px; }.flozo-desk-grid>div+div { border-left:0; border-top:1px solid var(--color-border); padding:20px 0 0; } }
@media(max-width:560px) {
  html.flozo-interface .flozo-tool-trigger { width:34px; padding:7px; min-height:34px; }
  .flozo-tool-grid { grid-template-columns:1fr; }.flozo-desk-card { margin-bottom:18px; }
  .flozo-task-list>li { grid-template-columns:28px minmax(0,1fr) 36px; }.flozo-task-list .flozo-due { grid-column:2; grid-row:2; }.flozo-task-list .flozo-pin-button { grid-column:3; grid-row:1 / span 2; }
}

.flozo-desk-card>.flozo-section-head { margin-bottom:18px; }

/* Everyday workflows share the existing Flozo palette. */
.flozo-workflow-inline { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 16px; margin:0 0 18px; border:1px solid var(--color-border); border-radius:13px; background:var(--color-surface); }
.flozo-workflow-inline>span { color:var(--color-secondary); font-size:12px; }
.flozo-workflow-inline>div { display:flex; gap:8px; flex-wrap:wrap; }
.flozo-agenda-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:7px; margin-bottom:24px; }
.flozo-agenda-days>button { display:flex; flex-direction:column; gap:5px; align-items:center; min-width:0; min-height:90px; padding:12px 4px; border:1px solid var(--color-border); border-radius:12px; color:var(--color-text); background:var(--color-surface); }
.flozo-agenda-days strong { font-size:12px; }.flozo-agenda-days span { font-size:19px; font-weight:600; }.flozo-agenda-days small { font-size:10px; color:var(--color-secondary); }
.flozo-agenda-days>button[aria-pressed=true] { border-color:var(--color-primary); background:var(--color-primary-soft); }
.flozo-private-week { margin-bottom:22px; }.flozo-private-week>.flozo-section-head { margin-bottom:15px; }
.flozo-private-week .flozo-plan-note { margin-bottom:15px; }
@media(max-width:680px) { .flozo-workflow-inline { align-items:flex-start; flex-direction:column; }.flozo-agenda-days { grid-template-columns:repeat(4,minmax(0,1fr)); } }
