/* CRM archive navigation keeps mobile and keyboard targets comfortably actionable. */
.crm-view-switch.crm-view-switch a{min-height:44px}.crm-deal-open-link,.crm-quote-reference,.crm-back-link,.breadcrumb a{min-height:44px}.crm-deal-open-link,.crm-back-link,.breadcrumb a{display:inline-flex;align-items:center}.crm-quote-reference{justify-content:center}.crm-view-switch a:focus-visible,.crm-deal-open-link:focus-visible,.crm-quote-reference:focus-visible,.crm-back-link:focus-visible,.breadcrumb a:focus-visible{outline:3px solid #2d78c8;outline-offset:2px}
/* CRM navigation and Thumbtack onboarding remain touch-safe on mobile. */
.nav-list .nav-submenu a{display:flex;align-items:center;min-height:44px}.tt-capture-steps .button{min-height:44px}

:root {
  --navy: #111c43;
  --navy-soft: #1b2854;
  --primary: #845adf;
  --primary-dark: #7147cd;
  --surface: #ffffff;
  --canvas: #f0f1f7;
  --border: #e8eaf0;
  --text: #20253a;
  --muted: #7b8191;
  --success: #26bf94;
  --warning: #f5b849;
  --danger: #e6533c;
  --shadow: 0 8px 28px rgba(24, 35, 70, .07);
}

/* Follow-up dashboard v2: one readable record per card, mobile-first actions. */
.crm-followup-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.crm-followup-row-main{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;min-width:0;flex:1}.crm-followup-copy strong{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.crm-followup-copy small{display:flex;flex-wrap:wrap;overflow:visible;white-space:normal}.crm-followup-copy small b,.crm-followup-copy small a{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal}.crm-followup-row.is-focused{outline:3px solid #86bce9;outline-offset:-3px;background:#f0f8ff}.crm-commitment-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.crm-followup-open{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:1px solid #a9cce9;border-radius:10px;color:#135f9f;background:#f1f8ff;font-size:11px;font-weight:850;text-decoration:none}.crm-followup-open:hover{border-color:#4b97d1;background:#e8f5ff}.crm-followup-open:focus-visible,.crm-followup-menu>summary:focus-visible{outline:3px solid #7752ae;outline-offset:2px}.crm-followup-menu{position:relative}.crm-followup-menu>summary{display:inline-flex;min-height:44px;padding:0 11px;align-items:center;justify-content:center;gap:7px;border:1px solid #b8c9da;border-radius:10px;color:#3a5874;background:#fff;font-size:11px;font-weight:850;letter-spacing:0;cursor:pointer;list-style:none}.crm-followup-menu>summary::-webkit-details-marker{display:none}.crm-followup-menu[open]>summary{color:#1f6eb9;border-color:#7eb7e5;background:#edf6ff}.crm-followup-menu-panel{position:absolute;z-index:20;top:51px;right:0;display:grid;gap:8px;width:245px;padding:10px;border:1px solid #d8e3ef;border-radius:13px;background:#fff;box-shadow:0 16px 35px rgba(28,52,82,.2)}.crm-followup-menu-panel form{margin:0}.crm-followup-menu-panel .crm-followup-done,.crm-followup-menu-panel .crm-commitment-cancel{width:100%;min-height:44px;border-radius:9px;font-size:11px;text-align:left}.crm-followup-menu-panel .crm-followup-done{padding:9px 11px}.crm-followup-menu-panel .crm-commitment-cancel{padding:9px 11px;color:#a54841;background:#fff0ee}.crm-followup-menu-panel .crm-commitment-reschedule{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end;padding:9px;border:1px solid #e2e8ef;border-radius:9px;background:#fafcff}.crm-followup-menu-panel .crm-commitment-reschedule label{display:grid;gap:4px;color:#718096;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.crm-followup-menu-panel .crm-commitment-reschedule input{width:100%;height:44px;padding:5px 7px;border:1px solid #d7e1ec;border-radius:7px;background:#fff;font:inherit;font-size:10px}.crm-followup-menu-panel .crm-commitment-reschedule .button{min-height:44px;margin:0;padding:6px 9px;font-size:10px}.crm-followup-due{width:44px;height:46px}.crm-followup-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:620px){.crm-followup-hero{margin-bottom:12px;padding:19px;border-radius:18px}.crm-followup-hero h1{font-size:31px}.crm-followup-hero p:not(.eyebrow){font-size:11px}.crm-followup-hero-signal{display:none}.crm-followup-metrics{gap:8px;margin-bottom:12px}.crm-followup-metric{display:grid;grid-template-columns:1fr;gap:5px;padding:11px 10px;border-radius:13px}.crm-followup-metric .metric-icon{width:29px;height:29px;font-size:14px}.crm-followup-metric small{font-size:8px;line-height:1.2}.crm-followup-metric strong{font-size:22px}.crm-followup-workspace{gap:12px}.crm-followup-sidebar{gap:12px}.crm-followup-panel{border-radius:14px}.crm-followup-panel>header{padding:15px 16px}.crm-followup-panel>header h2{font-size:17px}.crm-followup-panel>header small{font-size:9px}.crm-followup-row{align-items:flex-start;padding:14px 15px}.crm-followup-row-main{grid-template-columns:38px minmax(0,1fr);gap:10px}.crm-followup-due{width:38px;height:42px;border-radius:10px}.crm-followup-due b{font-size:14px}.crm-followup-copy{gap:6px;padding-top:1px}.crm-followup-copy-top{gap:5px}.crm-followup-copy .status-chip,.crm-followup-viewed{padding:3px 6px;font-size:7px}.crm-followup-copy strong{font-size:12px;line-height:1.35}.crm-followup-copy small{gap:4px;font-size:9px;line-height:1.35}.crm-commitment-actions{gap:5px;padding:0}.crm-followup-open{min-height:30px;padding:0 8px;font-size:9px}.crm-followup-menu>summary{width:30px;height:30px;border-radius:8px}.crm-followup-menu-panel{position:fixed;top:auto;right:15px;bottom:18px;width:calc(100vw - 30px);max-width:340px;padding:12px;border-radius:14px;box-shadow:0 17px 44px rgba(23,42,67,.28)}.crm-followup-menu-panel .crm-commitment-reschedule{grid-template-columns:minmax(0,1fr) auto}.crm-followup-empty{padding:32px 16px}.crm-followup-empty span{font-size:9px}}
.lead-inbox-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(310px,1fr)); gap:18px; align-items:start; }.lead-inbox-card { display:grid; gap:14px; padding:18px; border:1px solid #e1e8f1; border-top:4px solid #4d83d2; border-radius:16px; box-shadow:0 10px 28px rgba(27,48,80,.07); overflow:hidden; }.lead-inbox-card.lead-status-qualifying { border-top-color:#e4a642; }.lead-inbox-card.lead-status-declined { border-top-color:#b4bdca; opacity:.82; }.lead-card-meta { display:flex; gap:7px; align-items:center; min-width:0; }.lead-card-meta time { margin-left:auto; color:#8793a5; font-size:10px; font-weight:700; white-space:nowrap; }.lead-source { display:inline-flex; min-width:0; align-items:center; gap:5px; color:#627187; font-size:10px; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.lead-source i { display:grid; width:18px; height:18px; flex:0 0 18px; place-items:center; border-radius:6px; color:#406ca9; background:#e8f1ff; font-style:normal; }.lead-card-body h2 { margin:0; color:#212b3e; font-size:19px; line-height:1.2; letter-spacing:-.25px; }.lead-card-body p { display:-webkit-box; margin:7px 0 0; overflow:hidden; color:#68778b; font-size:12px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.lead-client-link { display:flex; align-items:center; gap:10px; padding:10px; border:1px solid #dfe8f2; border-radius:11px; background:#f8fbff; color:#314157; }.lead-client-link > span:nth-child(2) { display:grid; min-width:0; gap:1px; }.lead-client-link strong { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.lead-client-link small { overflow:hidden; color:#7d8a9d; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.lead-client-avatar { display:grid; width:29px; height:29px; flex:0 0 29px; place-items:center; border-radius:50%; color:#3565aa; background:#dceaff; font-size:11px; font-weight:850; }.lead-client-link b { margin-left:auto; color:#8996a9; font-size:22px; font-weight:400; }.lead-card-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.lead-card-actions form,.lead-card-actions button { width:100%; }.lead-card-actions .button { min-height:38px; padding:7px; font-size:11px; }.lead-dismiss { min-height:38px; border:1px solid #f0d8d2; border-radius:8px; color:#a65f55; background:#fffafa; font-weight:750; cursor:pointer; }.lead-convert { border:1px solid #d9e5f4; border-radius:11px; background:#f8fbff; }.lead-convert summary { display:flex; align-items:center; gap:6px; padding:11px; color:#3264a9; font-size:12px; font-weight:850; cursor:pointer; list-style:none; }.lead-convert summary::-webkit-details-marker { display:none; }.lead-convert summary span { display:grid; width:21px; height:21px; place-items:center; border-radius:7px; color:#fff; background:#3b73c5; font-size:16px; }.lead-convert[open] summary { border-bottom:1px solid #d9e5f4; }.lead-convert form { display:grid; gap:9px; padding:11px; }.lead-convert label { display:grid; gap:5px; color:#627187; font-size:10px; font-weight:800; }.lead-convert select { min-height:36px; border:1px solid #ceddec; border-radius:8px; padding:7px; background:#fff; color:#344156; }.lead-converted { display:flex; align-items:center; gap:9px; padding:10px; border:1px solid #cde7d8; border-radius:11px; background:#f3fbf6; }.lead-converted > span { display:grid; width:25px; height:25px; flex:0 0 25px; place-items:center; border-radius:50%; color:#24815b; background:#d9f3e4; font-weight:850; }.lead-converted div { display:grid; min-width:0; }.lead-converted strong { color:#2a6852; font-size:11px; }.lead-converted small { overflow:hidden; color:#6b8c7e; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.lead-converted a { margin-left:auto; color:#26805d; font-size:10px; font-weight:850; }.lead-closed-note { margin:0; color:#718095; font-size:11px; }
@media (max-width:620px) { .lead-inbox-hero { padding:27px 24px; }.lead-inbox-hero h1 { font-size:29px; }.lead-inbox-grid { grid-template-columns:1fr; gap:12px; }.lead-inbox-card { gap:12px; padding:15px; border-radius:14px; }.lead-card-meta { flex-wrap:wrap; row-gap:6px; }.lead-card-meta time { margin-left:0; }.lead-card-body h2 { font-size:21px; }.lead-card-body p { -webkit-line-clamp:2; }.lead-card-actions .button,.lead-dismiss { min-height:40px; }.lead-convert summary { padding:12px; }.lead-convert form { padding:12px; } }

* { box-sizing: border-box; }
html { min-height: 100%; overflow-x: hidden; background: var(--canvas); }
body { margin: 0; min-height: 100vh; overflow-x: hidden; color: var(--text); background: var(--canvas); font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.nav-toggle { position: fixed; width: 44px; height: 44px; opacity: 0; pointer-events: none; }
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 30; display: flex; width: 252px; flex-direction: column; color: #c6cce3; background: var(--navy); box-shadow: 8px 0 24px rgba(17, 28, 67, .12); }
.brand { display: flex; align-items: center; min-height: 72px; gap: 12px; padding: 14px 24px; color: #fff; }
.brand-mark { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(135deg, #9a74ed, var(--primary)); font-size: 20px; font-weight: 800; box-shadow: 0 8px 18px rgba(132, 90, 223, .28); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 17px; letter-spacing: .2px; }
.brand small { margin-top: -3px; color: #9fa8ca; font-size: 11px; letter-spacing: 1.7px; text-transform: uppercase; }
.nav-list { flex: 1; padding: 14px 12px; overflow-y: auto; }
.nav-label { margin: 20px 13px 8px; color: #7f8ab5; font-size: 10px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.nav-list a { display: flex; align-items: center; min-height: 46px; gap: 12px; margin: 3px 0; padding: 10px 13px; border-radius: 8px; transition: .18s ease; }
.nav-list a:hover { color: #fff; background: rgba(255,255,255,.06); }
.nav-list a.active { color: #fff; background: var(--primary); box-shadow: 0 8px 18px rgba(0,0,0,.13); }
.nav-list a b { margin-left: auto; min-width: 22px; padding: 1px 7px; border-radius: 12px; color: #d9cff4; background: rgba(255,255,255,.1); font-size: 11px; text-align: center; }
.nav-icon { width: 22px; font-size: 19px; text-align: center; }
.nav-group { position:relative; margin:3px 0; }.nav-list .nav-group-parent { display:flex; min-height:46px; align-items:center; gap:12px; margin:0; padding:10px 53px 10px 13px; border-radius:8px; }.nav-list .nav-group-parent.active { color:#fff; background:var(--primary); box-shadow:0 8px 18px rgba(0,0,0,.13); }.nav-group-toggle { position:static; display:block; }.nav-group-toggle summary { position:absolute; top:1px; right:1px; display:grid; width:44px; height:44px; place-items:center; border-radius:7px; color:#9fa8ca; cursor:pointer; list-style:none; }.nav-group-toggle summary::-webkit-details-marker { display:none; }.nav-group-toggle summary:hover { color:#fff; background:rgba(255,255,255,.1); }.nav-group-toggle summary i { font-size:15px; font-style:normal; transition:transform .18s ease; }.nav-group-toggle[open] summary i { transform:rotate(180deg); }.nav-submenu { display:grid; gap:2px; margin:4px 5px 8px 41px; padding:5px 0 5px 10px; border-left:2px solid rgba(159,168,202,.3); background:linear-gradient(90deg,rgba(255,255,255,.045),transparent); }.nav-list .nav-submenu a { min-height:44px; margin:0; padding:7px 10px; border-radius:7px; color:#aeb7d4; font-size:12px; font-weight:700; }.nav-list .nav-submenu a:hover { color:#fff; background:rgba(255,255,255,.06); }.nav-list .nav-submenu a.active { color:#fff; background:rgba(132,90,223,.72); box-shadow:none; }
.sidebar-foot { display: flex; align-items: center; gap: 10px; margin: 12px; padding: 13px; border: 1px solid rgba(255,255,255,.08); border-radius: 10px; background: rgba(255,255,255,.035); }
.sidebar-foot strong, .sidebar-foot small { display: block; }
.sidebar-foot strong { color: #f2f4ff; font-size: 12px; }
.sidebar-foot small { color: #8994bb; font-size: 10px; }
.service-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 5px rgba(38,191,148,.12); }
.nav-backdrop { display: none; }
.app-shell { min-height: 100vh; margin-left: 252px; }
.topbar { position: sticky; top: 0; z-index: 20; display: flex; min-height: 72px; align-items: center; padding: 10px 28px; border-bottom: 1px solid var(--border); background: rgba(255,255,255,.95); backdrop-filter: blur(12px); }
.menu-button { display: none; margin-right: 14px; font-size: 24px; cursor: pointer; }
.topbar-title small, .topbar-title strong { display: block; }
.topbar-title small { color: var(--muted); font-size: 11px; }
.topbar-title strong { font-size: 16px; }
.account { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.account-menu { position: relative; }
.account-menu summary { display: grid; width: 44px; min-height: 44px; place-items: center; cursor: pointer; list-style: none; }
.account-menu summary::-webkit-details-marker { display: none; }
.account-menu summary:focus-visible { outline: 3px solid rgba(76, 128, 225, .35); outline-offset: 3px; border-radius: 50%; }
.account-menu-panel { position: absolute; top: calc(100% + 11px); right: 0; z-index: 45; display: grid; width: min(300px, calc(100vw - 32px)); gap: 14px; padding: 15px; border: 1px solid #dce5ef; border-radius: 16px; background: rgba(255,255,255,.98); box-shadow: 0 18px 42px rgba(20,37,66,.20); }
.account-menu-identity { display: flex; align-items: center; gap: 11px; min-width: 0; padding-bottom: 13px; border-bottom: 1px solid #edf1f5; }
.account-menu-identity > span:last-child { display: grid; min-width: 0; gap: 3px; }
.account-menu-identity strong { overflow: hidden; color: #273448; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.account-menu-identity small { overflow: hidden; color: #718096; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.account-menu-avatar { width: 35px; height: 35px; flex: 0 0 auto; font-size: 13px; }
.account-logout-button { width: 100%; min-height: 44px; border: 1px solid #f0d4d0; border-radius: 11px; color: #a64942; background: #fff9f8; font-size: 12px; font-weight: 850; cursor: pointer; }
.account-logout-button:hover { border-color: #dfaaa3; background: #fff2f0; }
.avatar { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: #fff; background: var(--primary); font-weight: 700; }
.account-copy strong, .account-copy small { display: block; }
.account-copy strong { font-size: 13px; }
.account-copy small { color: var(--muted); font-size: 10px; }
.quiet-button { padding: 7px 11px; border: 1px solid var(--border); border-radius: 7px; color: var(--muted); background: #fff; cursor: pointer; }
.quiet-button:hover { color: var(--danger); border-color: #f0c7c1; }
.content-shell { max-width: 1550px; margin: 0 auto; padding: 30px; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.page-heading h1 { margin: 1px 0 4px; font-size: clamp(24px, 3vw, 34px); line-height: 1.18; letter-spacing: -.6px; }
.page-heading p { margin: 0; color: var(--muted); }
.eyebrow { color: var(--primary) !important; font-size: 10px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; }
.heading-actions { display: flex; gap: 9px; }
.button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 9px 16px; border: 0; border-radius: 8px; color: #fff; background: var(--primary); font-weight: 650; cursor: pointer; box-shadow: 0 6px 16px rgba(132, 90, 223, .18); }
.button:hover { background: var(--primary-dark); }
.button-secondary { color: var(--text); border: 1px solid var(--border); background: #fff; box-shadow: none; }
.button-secondary:hover { background: #f8f7fb; }
.button-block { width: 100%; }
.metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 18px; }
.metric { display: flex; min-height: 126px; align-items: center; gap: 16px; padding: 22px; border: 1px solid var(--border); border-radius: 11px; background: var(--surface); box-shadow: var(--shadow); }
.metric-icon { display: grid; width: 48px; height: 48px; flex: 0 0 auto; place-items: center; border-radius: 12px; color: #fff; background: var(--primary); font-size: 22px; }
.metric-icon.violet { color: var(--primary); background: #eee8fb; }
.metric-icon.orange { color: #d99214; background: #fff4df; }
.metric-icon.green { color: #149f78; background: #dff7f0; }
.metric small, .metric strong, .metric p { display: block; margin: 0; }
.metric small { color: var(--muted); font-size: 11px; }
.metric strong { margin: 1px 0; font-size: 27px; line-height: 1; }
.metric p { color: #9aa0ae; font-size: 10px; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, .8fr); gap: 18px; }
.panel { border: 1px solid var(--border); border-radius: 11px; background: var(--surface); box-shadow: var(--shadow); }
.panel-wide { min-width: 0; }
.panel-header { display: flex; min-height: 70px; align-items: center; justify-content: space-between; gap: 15px; padding: 16px 20px; border-bottom: 1px solid var(--border); }
.panel-header h2, .panel-header p { margin: 0; }
.panel-header h2 { font-size: 16px; }
.panel-header a { display: inline-flex; align-items: center; min-height: 44px; color: var(--primary); font-size: 12px; font-weight: 700; }
.dashboard-work-note { max-width: 510px; margin: 4px 0 0; color: #536276; font-size: 12px; line-height: 1.45; }
.autonomous-run { overflow: hidden; border-color: #d9c9f6; background: linear-gradient(145deg, #fff, #fcfaff); }
.autonomous-run .panel-header { border-bottom-color: #e9e0f9; }
.autonomous-run-status { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid #ccebdc; border-radius: 999px; color: #17724f; background: #edfbf4; font-size: 11px; font-weight: 800; white-space: nowrap; }
.autonomous-run-status i { width: 7px; height: 7px; border-radius: 50%; background: #29b87a; box-shadow: 0 0 0 4px rgba(41,184,122,.12); }
.autonomous-run-status--neutral { color: #71678c; border-color: #ddd7e9; background: #f7f5fa; }
.autonomous-run-status--neutral i { background: #8c849d; box-shadow: 0 0 0 4px rgba(140,132,157,.12); }
.autonomous-current { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 8px 12px; align-items: center; margin: 17px 20px 9px; padding: 15px 16px; border: 1px solid #d8c7f6; border-radius: 12px; color: var(--text); background: linear-gradient(115deg, #f4efff, #fff); text-decoration: none; }
.autonomous-current:hover { border-color: #a984f4; box-shadow: 0 8px 20px rgba(101,55,167,.1); }
.autonomous-current > span { grid-row: 1 / span 2; align-self: stretch; display: grid; place-items: center; border-radius: 8px; color: #fff; background: var(--primary); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.autonomous-current-copy { display: grid; min-width: 0; gap: 4px; }
.autonomous-current-copy strong { min-width: 0; font-size: 14px; }
.autonomous-current-copy small { color: #71678c; font-size: 11px; line-height: 1.4; }
.autonomous-current b { grid-column: 3; grid-row: 1 / span 2; color: var(--primary); font-size: 11px; white-space: nowrap; }
.autonomous-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 16px; margin: 0; padding: 12px 20px 20px; list-style: none; }
.autonomous-step { display: flex; min-width: 0; gap: 9px; align-items: flex-start; padding: 9px 0; border-top: 1px solid #eee8f8; }
.autonomous-step-marker { display: grid; width: 19px; height: 19px; flex: 0 0 19px; place-items: center; margin-top: 1px; border-radius: 50%; color: #746a86; background: #eeebf3; font-size: 11px; font-weight: 900; }
.autonomous-step a { display: grid; min-height: 44px; min-width: 0; align-content: center; gap: 2px; color: var(--text); text-decoration: none; }
.autonomous-step a:hover strong { color: var(--primary); }
.autonomous-step strong { display: block; font-size: 12px; line-height: 1.3; }
.autonomous-step small { color: #8c849d; font-size: 10px; line-height: 1.35; }
.autonomous-step--in_progress .autonomous-step-marker { color: #fff; background: var(--primary); box-shadow: 0 0 0 4px #eee7fb; }
.autonomous-step--completed .autonomous-step-marker { color: #167650; background: #ddf6ea; }
.autonomous-step--blocked .autonomous-step-marker { color: #a26615; background: #fff0d6; }
.login-divider { display: flex; align-items: center; gap: 10px; margin: 17px 0 12px; color: var(--muted); font-size: 11px; }
.login-divider::before, .login-divider::after { content: ""; height: 1px; flex: 1; background: var(--border); }
.button-google { color: #26324b; background: #fff; border: 1px solid #d6dbe7; box-shadow: none; }
.button-google:hover, .button-google:focus-visible { color: #1c58ad; border-color: #a9c8f6; background: #f7faff; }
.item-list { padding: 5px 20px; }
.list-item { display: flex; align-items: center; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--border); }
.list-item:last-child { border-bottom: 0; }
.list-item:hover .list-copy h3, .list-item:focus-visible .list-copy h3 { color: var(--primary); }
.list-item:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.type-mark { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; border-radius: 10px; color: var(--primary); background: #eee8fb; font-size: 11px; font-weight: 800; }
.type-task { color: #147c9c; background: #e0f4fa; }
.type-operation { color: #188366; background: #e0f7ef; }
.list-copy { min-width: 0; flex: 1; }
.list-copy h3, .list-copy p { margin: 0; }
.list-copy h3 { font-size: 13px; }
.list-copy p { margin-top: 2px; color: var(--muted); font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.list-copy small { display: block; margin-top: 5px; color: #9297a7; font-size: 10px; font-weight: 650; }
.item-arrow { color: #a9adba; font-size: 17px; transition: transform .18s ease; }
.list-item:hover .item-arrow { color: var(--primary); transform: translateX(3px); }
.status { display: inline-flex; padding: 4px 9px; border-radius: 14px; color: #9b6d16; background: #fff2d7; font-size: 10px; font-weight: 750; text-transform: lowercase; }
.status-completed, .status-captured { color: #14815f; background: #ddf6ee; }
.status-in-progress, .status-in_progress { color: #6942ba; background: #eee7fb; }
.focus-panel { padding-bottom: 20px; text-align: center; }
.focus-panel .panel-header { text-align: left; }
.focus-orb { display: grid; width: 134px; height: 134px; align-content: center; margin: 25px auto 17px; border-radius: 50%; color: #fff; background: radial-gradient(circle at 35% 25%, #a984f4, var(--primary) 60%, #6138ba); box-shadow: 0 18px 30px rgba(132,90,223,.25); }
.focus-orb span, .focus-orb small { display: block; }
.focus-orb span { font-size: 48px; font-weight: 800; line-height: .9; }
.focus-orb small { margin-top: 7px; font-size: 10px; }
.focus-panel > p { padding: 0 24px; color: var(--muted); font-size: 12px; }
.focus-panel .button { width: calc(100% - 40px); margin: 8px 20px 0; }
.idea-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 20px; }
.idea-card { padding: 15px; border: 1px solid var(--border); border-radius: 9px; background: #fafafe; }
.idea-card span, .area-pill { color: var(--primary); font-size: 9px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; }
.idea-card h3 { margin: 6px 0 3px; font-size: 13px; }
.idea-card p { margin: 0; color: var(--muted); font-size: 11px; }
.check-list { margin: 0; padding: 10px 20px 17px; list-style: none; }
.check-list li { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--border); }
.check-list li:last-child { border: 0; }
.check-list span { color: var(--muted); }
.check-list b { color: var(--success); font-size: 11px; }
.compact-heading { align-items: center; }
.table-panel { overflow: hidden; }
.responsive-table { width: 100%; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 15px 18px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: middle; }
th { color: var(--muted); background: #fafafe; font-size: 10px; letter-spacing: .7px; text-transform: uppercase; }
td { font-size: 12px; }
td small { display: block; max-width: 650px; margin-top: 3px; color: var(--muted); }
.table-title { font-size: 13px; font-weight: 700; }
.table-card-link { display: block; min-width: 260px; }
.table-card-link:hover .table-title { color: var(--primary); }
.card-id-link { color: var(--primary); font-size: 11px; font-weight: 800; letter-spacing: .4px; }
.row-arrow { display: inline-grid; width: 28px; height: 28px; margin-left: 12px; place-items: center; border-radius: 7px; color: var(--primary); background: #eee8fb; font-size: 15px; }
.table-date { white-space: nowrap; }
.breadcrumb { display: flex; align-items: center; gap: 9px; margin-bottom: 18px; color: var(--muted); font-size: 12px; }
.breadcrumb a:hover { color: var(--primary); }
.breadcrumb strong { color: var(--text); }
.card-document { overflow: hidden; border: 1px solid var(--border); border-radius: 13px; background: #fff; box-shadow: var(--shadow); }
.document-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: clamp(24px, 4vw, 45px); border-bottom: 1px solid var(--border); background: linear-gradient(135deg, #fff 0%, #fbf9ff 100%); }
.document-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 15px; }
.type-pill { display: inline-flex; padding: 4px 9px; border-radius: 14px; color: #536079; background: #edf0f5; font-size: 10px; font-weight: 750; }
.document-header h1 { max-width: 920px; margin: 0; font-size: clamp(27px, 4vw, 42px); line-height: 1.12; letter-spacing: -1px; }
.document-intro { max-width: 900px; margin: 18px 0 0; color: #646b7e; font-size: 15px; line-height: 1.75; white-space: pre-wrap; }
.document-meta { min-width: 100px; padding: 11px 14px; border: 1px solid var(--border); border-radius: 9px; background: #fff; text-align: right; }
.document-meta small, .document-meta strong { display: block; }
.document-meta small { color: var(--muted); font-size: 9px; letter-spacing: .7px; text-transform: uppercase; }
.document-meta strong { margin-top: 2px; font-size: 12px; }
.document-body { width: min(100%, 1040px); padding: 8px clamp(24px, 4vw, 45px) 30px; }
.document-section { padding: 28px 0; border-bottom: 1px solid var(--border); }
.document-section:last-child { border-bottom: 0; }
.document-section h2 { margin: 0 0 13px; font-size: 19px; }
.section-copy { color: #4f566a; font-size: 14px; line-height: 1.75; white-space: pre-wrap; overflow-wrap: anywhere; }
.document-footer { padding: 20px clamp(24px, 4vw, 45px); border-top: 1px solid var(--border); background: #fafafe; }
.content-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.content-card { display: flex; min-height: 230px; flex-direction: column; padding: 21px; border: 1px solid var(--border); border-radius: 11px; background: #fff; box-shadow: var(--shadow); }
.content-card-top, .content-card footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.content-card-top small { color: var(--muted); }
.content-card h2 { margin: 16px 0 8px; font-size: 17px; }
.content-card > p { flex: 1; margin: 0 0 20px; color: var(--muted); }
.content-card footer { padding-top: 14px; border-top: 1px solid var(--border); }
.content-card footer strong { color: #a0a5b2; font-size: 10px; }
.empty-state { padding: 35px; color: var(--muted); text-align: center; }
.message-stack { margin-bottom: 18px; }
.thumbtack-e2e-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(260px, .85fr); gap: 18px; }
.thumbtack-e2e-main, .thumbtack-e2e-boundary { min-width: 0; padding: clamp(20px, 3vw, 32px); }
.thumbtack-e2e-main h2, .thumbtack-e2e-boundary h2 { margin: 0 0 14px; font-size: 21px; }
.thumbtack-e2e-steps { display: grid; gap: 10px; margin: 0; padding-left: 22px; color: var(--text); line-height: 1.55; }
.thumbtack-e2e-note, .thumbtack-e2e-boundary li, .thumbtack-e2e-state { overflow-wrap: anywhere; color: var(--muted); line-height: 1.55; }
.thumbtack-e2e-main .thumbtack-e2e-note { color: #637286; font-weight: 700; }
.thumbtack-e2e-diagnostic .thumbtack-e2e-note { color: #637286; font-weight: 700; }
.thumbtack-e2e-note.thumbtack-e2e-no-retry { color: #637286; font-weight: 700; }
.thumbtack-e2e-boundary ul { display: grid; gap: 10px; margin: 0; padding-left: 20px; }
.thumbtack-e2e-state { margin: 20px 0 0; padding-top: 14px; border-top: 1px solid var(--border); font-weight: 700; }
@media (max-width: 700px) { .thumbtack-e2e-layout { grid-template-columns: 1fr; } }
.message { padding: 12px 15px; border: 1px solid #bce9dc; border-radius: 8px; color: #147657; background: #e8f8f3; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin: 28px 0 14px; }
.section-heading h2, .section-heading p { margin: 0; }
.section-heading h2 { font-size: 21px; }
.section-heading > div > p:last-child { color: var(--muted); font-size: 12px; }
.section-heading > a { color: var(--primary); font-size: 12px; font-weight: 750; }
.department-strip { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 20px; }
.mini-department { display: flex; min-width: 0; align-items: center; gap: 10px; padding: 14px; border: 1px solid var(--border); border-radius: 10px; background: #fff; box-shadow: var(--shadow); }
.mini-department:hover { border-color: #d8c9f4; transform: translateY(-1px); }
.mini-department > div { min-width: 0; flex: 1; }
.mini-department strong, .mini-department small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mini-department strong { font-size: 12px; }
.mini-department small { color: var(--muted); font-size: 9px; }
.department-symbol { display: grid; width: 40px; height: 40px; flex: 0 0 auto; place-items: center; border-radius: 11px; color: #7147cd; background: #eee8fb; font-size: 18px; font-weight: 800; }
.department-blue { color: #2876bd; background: #e4f1fc; }.department-purple,.department-violet { color: #7147cd; background: #eee8fb; }.department-green { color: #14815f; background: #ddf6ee; }.department-orange { color: #c27b12; background: #fff0d4; }.department-teal { color: #137a78; background: #dcf4f3; }.department-cyan { color: #167a9d; background: #ddf2f8; }.department-red { color: #b64b3c; background: #fbe7e3; }.department-indigo { color: #4754aa; background: #e7e9fa; }.department-slate { color: #576176; background: #e9ecf1; }
.department-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.department-card { display: flex; min-height: 260px; flex-direction: column; padding: 22px; border: 1px solid var(--border); border-radius: 12px; background: #fff; box-shadow: var(--shadow); transition: .18s ease; }
.department-card:hover { border-color: #d7c8f4; transform: translateY(-2px); box-shadow: 0 14px 34px rgba(24,35,70,.11); }
.department-card header, .department-card footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.department-card h2 { margin: 21px 0 8px; font-size: 18px; }
.department-card > p { flex: 1; margin: 0 0 20px; color: var(--muted); font-size: 12px; }
.department-card footer { padding-top: 15px; border-top: 1px solid var(--border); color: var(--muted); font-size: 10px; }
.department-card footer strong { color: var(--primary); }
.department-status { display: inline-flex; padding: 4px 9px; border-radius: 15px; color: #6b7283; background: #eceef2; font-size: 9px; font-weight: 800; }
.department-status-active { color: #147657; background: #ddf6ee; }.department-status-building { color: #7147cd; background: #eee8fb; }.department-status-existing { color: #4660a8; background: #e7ebfa; }
.department-hero { display: flex; align-items: center; gap: 22px; padding: clamp(25px, 4vw, 42px); border: 1px solid #e0d6f5; border-radius: 13px; background: linear-gradient(135deg, #fff, #f7f2ff); box-shadow: var(--shadow); }
.department-hero-icon { display: grid; width: 76px; height: 76px; flex: 0 0 auto; place-items: center; border-radius: 20px; color: #fff; background: var(--primary); font-size: 34px; box-shadow: 0 15px 25px rgba(132,90,223,.22); }
.department-hero-copy { flex: 1; }
.department-hero h1 { margin: 0 0 8px; font-size: clamp(27px, 4vw, 42px); }
.department-hero p { max-width: 820px; margin: 0; color: #646b7e; }
.department-detail-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); gap: 18px; margin-top: 18px; }
.department-focus { padding: 28px; }
.department-focus h2 { margin: 6px 0 28px; font-size: 23px; line-height: 1.35; }
.next-action { padding: 18px; border-left: 4px solid var(--primary); border-radius: 0 9px 9px 0; background: #f7f3ff; }
.next-action small, .next-action strong { display: block; }.next-action small { color: var(--primary); font-size: 9px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }.next-action strong { margin-top: 5px; font-size: 13px; }
.capability-list { margin: 0; padding: 14px 20px 20px; list-style: none; }
.capability-list li { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--border); }.capability-list li:last-child { border: 0; }.capability-list span { color: var(--success); font-weight: 900; }
.related-cards { margin-top: 18px; overflow: hidden; }.related-cards > div { display: flex; flex-wrap: wrap; gap: 10px; padding: 20px; }.related-cards a { display: flex; gap: 18px; padding: 10px 13px; border: 1px solid var(--border); border-radius: 8px; color: var(--primary); font-size: 11px; font-weight: 800; }.related-cards a:hover { border-color: #ccb9ef; background: #fbf9ff; }
.calendar-hero { display: flex; overflow: hidden; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; padding: 26px 30px; border: 1px solid #e6e8f0; border-radius: 18px; background: radial-gradient(circle at 0 0, #f3eeff 0, #fff 42%); box-shadow: 0 10px 30px rgba(20,26,50,.05); }
.calendar-hero-copy h1 { margin: 0; font-size: clamp(30px,4vw,44px); letter-spacing: -.8px; }.calendar-hero-copy > p:last-child { max-width: 680px; margin: 8px 0 0; color: var(--muted); font-size: 13px; }.calendar-title-line { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }.source-status { display: inline-flex; max-width: 100%; align-items: center; gap: 7px; padding: 6px 10px; border: 1px solid #e1e4eb; border-radius: 99px; color: #73798a; background: #fff; font-size: 9px; font-weight: 800; line-height: 1.35; text-transform: uppercase; white-space: normal; }.source-status i { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: #b9bec9; }.source-status-connected { color: #177158; border-color: #c8ecdf; background: #f0fbf7; }.source-status-connected i { background: #22a477; box-shadow: 0 0 0 4px rgba(34,164,119,.12); }
.calendar-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }.calendar-view-switch { display: flex; padding: 3px; border-radius: 10px; background: #eff1f5; }.calendar-view-switch a { padding: 8px 13px; border-radius: 8px; color: #777d8e; font-size: 10px; font-weight: 800; }.calendar-view-switch a.active { color: #252b3d; background: #fff; box-shadow: 0 2px 8px rgba(20,26,50,.09); }.month-navigation { display: flex; align-items: center; gap: 5px; }.month-navigation a { display: grid; min-width: 38px; height: 38px; place-items: center; padding: 0 11px; border: 1px solid var(--border); border-radius: 9px; background: #fff; font-size: 11px; font-weight: 800; }
.calendar-shell { display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 18px; align-items: start; }.calendar-main { min-width: 0; }.calendar-sidebar { display: grid; gap: 14px; position: sticky; top: 82px; }
.calendar-month-view { overflow: hidden; border-radius: 15px; }.calendar-weekdays,.calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }.calendar-weekdays { border-bottom: 1px solid var(--border); background: #f8f9fc; }.calendar-weekdays span { padding: 13px; color: #8b91a1; font-size: 9px; font-weight: 850; text-align: center; text-transform: uppercase; }.calendar-day { min-width: 0; min-height: 132px; padding: 10px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); background: #fff; }.calendar-day:nth-child(7n) { border-right: 0; }.calendar-day-number { display: flex; align-items: center; justify-content: space-between; }.calendar-day-number strong { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; color: #454b5b; font-size: 11px; }.calendar-day-number small { color: var(--primary); font-size: 7px; font-weight: 850; text-transform: uppercase; }.calendar-day.today { background: #fcfaff; }.calendar-day.today .calendar-day-number strong { color: #fff; background: var(--primary); box-shadow: 0 5px 12px rgba(132,90,223,.28); }.calendar-day.outside-month { background: #fafbfc; }.calendar-day.outside-month .calendar-day-number { opacity: .35; }
.day-items { display: grid; gap: 5px; margin-top: 8px; }.calendar-item { display: block; overflow: hidden; padding: 6px 7px; border-left: 3px solid #845adf; border-radius: 6px; color: #51368c; background: #f0ebfb; }.calendar-item-time,.calendar-item-title { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.calendar-item-time { margin-bottom: 2px; opacity: .72; font-size: 7px; font-weight: 800; }.calendar-item-title { font-size: 9px; font-weight: 750; }.calendar-item-google { color: #85463f; border-color: #d6837a; background: #fbecea; }.calendar-item-task { color: #147657; border-color: #28a77b; background: #e4f7f0; }.calendar-item-reminder { color: #94600f; border-color: #eba52f; background: #fff3dc; }.calendar-more { padding: 2px 7px; color: #898f9f; font-size: 8px; font-weight: 750; }
.calendar-agenda { display: grid; gap: 12px; }.calendar-view-hidden { display: none; }.calendar-view-hidden-desktop { display: none; }.agenda-day { display: grid; grid-template-columns: 92px minmax(0,1fr); overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: #fff; box-shadow: var(--shadow); }.agenda-day > header { display: flex; align-items: center; gap: 10px; padding: 18px; border-right: 1px solid var(--border); background: #fafafe; }.agenda-day > header > strong { font-size: 26px; }.agenda-day > header span,.agenda-day > header small { display: block; }.agenda-day > header span { font-size: 10px; font-weight: 800; text-transform: capitalize; }.agenda-day > header small { margin-top: 2px; color: var(--muted); font-size: 8px; }.agenda-day.today > header { color: #fff; background: var(--primary); }.agenda-day.today > header small { color: #e6dcfb; }.agenda-items { min-width: 0; }.agenda-item { display: grid; grid-template-columns: 62px 8px minmax(0,1fr) 14px; align-items: center; gap: 12px; min-height: 62px; padding: 11px 16px; border-bottom: 1px solid var(--border); }.agenda-item:last-child { border: 0; }.agenda-item:hover { background: #faf9fd; }.agenda-item time { color: #555c6d; font-size: 10px; font-weight: 800; }.agenda-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--primary); }.agenda-dot-google { background: #d6837a; }.agenda-item strong,.agenda-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.agenda-item strong { color: #252b3d; font-size: 12px; }.agenda-item small { margin-top: 3px; color: var(--muted); font-size: 9px; }.agenda-item b { color: #b1b5c0; font-size: 20px; }
.calendar-empty { padding: 70px 25px; border: 1px dashed #daddE5; border-radius: 15px; text-align: center; background: #fff; }.calendar-empty > span { display: grid; width: 48px; height: 48px; margin: 0 auto 12px; place-items: center; border-radius: 50%; color: var(--primary); background: #f1ecfc; font-size: 28px; }.calendar-empty h2 { margin: 0; font-size: 19px; }.calendar-empty p { color: var(--muted); }
.google-calendar-card { position: relative; padding: 20px; border-radius: 15px; background: linear-gradient(145deg,#fff,#faf8ff); }.google-mark { display: grid; width: 38px; height: 38px; margin-bottom: 16px; place-items: center; border-radius: 10px; color: #fff; background: linear-gradient(135deg,#4285f4,#34a853); font-size: 17px; font-weight: 900; }.google-card-copy h2 { margin: 2px 0 12px; font-size: 21px; }.google-calendar-card > p { color: var(--muted); font-size: 11px; }.connection-badge { position: absolute; top: 20px; right: 20px; padding: 5px 8px; border-radius: 99px; color: #177158; background: #e4f7f0; font-size: 8px; font-weight: 850; text-transform: uppercase; }.connection-badge-waiting { color: #8b651a; background: #fff2d9; }.sync-facts { margin: 15px 0; }.sync-facts div { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--border); }.sync-facts dt,.sync-facts dd { margin: 0; font-size: 9px; }.sync-facts dt { color: var(--muted); }.sync-facts dd { font-weight: 800; }.button-soft { color: var(--primary); border: 1px solid #d9ccf2; background: #f5f1fc; }
.quick-add-panel { overflow: hidden; }.quick-add-panel summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 18px; cursor: pointer; list-style: none; }.quick-add-panel summary::-webkit-details-marker { display: none; }.quick-add-panel summary span small,.quick-add-panel summary span strong { display: block; }.quick-add-panel summary small { margin-bottom: 3px; color: var(--muted); font-size: 8px; text-transform: uppercase; }.quick-add-panel summary strong { font-size: 11px; }.quick-add-panel summary b { color: var(--primary); font-size: 22px; }.quick-add-panel[open] summary { border-bottom: 1px solid var(--border); }.workspace-form { padding: 18px; }.workspace-form label { display: block; margin: 12px 0 5px; font-size: 10px; font-weight: 750; }.workspace-form input,.workspace-form select,.workspace-form textarea { width: 100%; min-height: 41px; padding: 9px 10px; border: 1px solid #dfe2e9; border-radius: 7px; background: #fbfbfd; font: inherit; }.workspace-form textarea { resize: vertical; }.workspace-form .button { margin-top: 17px; }
.calendar-legend { display: flex; flex-wrap: wrap; gap: 11px; padding: 4px 6px; color: var(--muted); font-size: 9px; }.calendar-legend span { display: flex; align-items: center; gap: 6px; }.calendar-legend i { width: 7px; height: 7px; border-radius: 50%; }.legend-google { background: #d6837a; }.legend-task { background: #28a77b; }.legend-reminder { background: #eba52f; }
.calendar-detail-wrap { max-width: 820px; margin: 0 auto; }.calendar-detail-card { overflow: hidden; border-radius: 16px; }.calendar-detail-card > header { padding: 34px; border-bottom: 1px solid var(--border); background: linear-gradient(145deg,#fff,#faf8ff); }.calendar-detail-card h1 { margin: 10px 0 7px; font-size: clamp(28px,4vw,42px); }.calendar-detail-card header p { margin: 0; color: var(--muted); }.detail-source { display: inline-flex; padding: 5px 9px; border-radius: 99px; color: #6543ad; background: #eee8fb; font-size: 8px; font-weight: 850; text-transform: uppercase; }.detail-source-google { color: #85463f; background: #fbecea; }.calendar-detail-notes { padding: 28px 34px; }.calendar-detail-notes h2 { margin: 0 0 10px; font-size: 15px; }.calendar-detail-notes p { margin: 0; color: #4f5667; line-height: 1.75; }.calendar-detail-card footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 34px; border-top: 1px solid var(--border); color: var(--muted); font-size: 9px; }.back-link { display: inline-flex; margin-bottom: 15px; color: var(--primary); font-size: 11px; font-weight: 800; }
.commitments-hero { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:14px; align-items:center; margin-bottom:18px; padding:28px 30px; border:1px solid #d8e6fb; border-radius:18px; background:radial-gradient(circle at 0 0,#eaf3ff 0,rgba(255,255,255,.96) 46%),#fff; box-shadow:0 10px 30px rgba(20,26,50,.05); }.commitments-hero h1 { margin:3px 0 7px; color:#24304b; font-size:clamp(30px,4vw,43px); letter-spacing:-.8px; }.commitments-hero p:not(.eyebrow) { max-width:640px; margin:0; color:#697286; font-size:13px; line-height:1.55; }.commitment-metric { display:flex; align-items:center; gap:10px; min-width:122px; padding:13px 16px; border:1px solid #d9e7f7; border-radius:13px; background:#fff; }.commitment-metric b { color:#1967d2; font-size:25px; }.commitment-metric span { color:#6d7788; font-size:9px; font-weight:750; line-height:1.35; text-transform:uppercase; }.commitments-layout { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:18px; align-items:start; }.commitment-list { display:grid; gap:12px; }.commitment-card { display:grid; grid-template-columns:44px minmax(0,1fr) 177px; gap:15px; align-items:center; padding:18px; }.commitment-icon { display:grid; width:42px; height:42px; place-items:center; border-radius:13px; color:#1967d2; background:#dbeafe; font-size:20px; }.commitment-label { display:block; color:#7a8595; font-size:9px; font-weight:800; letter-spacing:.45px; text-transform:uppercase; }.commitment-copy h2 { margin:5px 0 4px; color:#2a3241; font-size:16px; }.commitment-copy p { margin:0; color:#717b8d; font-size:11px; }.planned-task-link { display:inline-block; margin-top:10px; color:#177158; font-size:10px; font-weight:800; }.commitment-action { min-width:0; }.promise-plan-form { display:grid; gap:6px; }.promise-plan-form label { color:#778194; font-size:9px; font-weight:800; text-transform:uppercase; }.promise-plan-form input { width:100%; min-height:37px; padding:7px 8px; border:1px solid #d7e0eb; border-radius:8px; color:#344055; background:#fff; font:inherit; font-size:11px; }.promise-plan-form .button { min-height:37px; padding:7px 10px; font-size:10px; }.status-chip { display:inline-flex; padding:6px 8px; border-radius:99px; font-size:9px; font-weight:850; white-space:nowrap; }.status-chip-planned { color:#177158; background:#e6f6ee; }.commitments-guide { padding:20px; }.commitments-guide ol { display:grid; gap:12px; margin:14px 0 20px; padding-left:20px; color:#596477; font-size:11px; line-height:1.45; }.commitments-empty { padding:55px 25px; text-align:center; }.commitments-empty>span { display:grid; width:48px; height:48px; margin:0 auto 11px; place-items:center; border-radius:50%; color:#1967d2; background:#dbeafe; font-size:24px; }.commitments-empty h2 { margin:0; color:#2c3545; font-size:19px; }.commitments-empty p { max-width:520px; margin:10px auto 0; color:#697286; font-size:12px; line-height:1.6; }
@media (max-width:760px) { .commitments-hero { grid-template-columns:1fr 1fr; padding:22px; }.commitments-hero>div:first-child { grid-column:1 / -1; }.commitment-metric { min-width:0; }.commitments-layout { grid-template-columns:1fr; }.commitments-guide { order:-1; }.commitment-card { grid-template-columns:38px minmax(0,1fr); padding:15px; }.commitment-icon { width:38px; height:38px; }.commitment-action { grid-column:1 / -1; }.promise-plan-form { grid-template-columns:1fr 1.15fr; align-items:end; }.promise-plan-form label { grid-column:1 / -1; }.promise-plan-form .button { margin:0; } }
.crm-hero { display:grid; grid-template-columns:minmax(0,1fr) repeat(3,auto); gap:12px; align-items:center; margin-bottom:18px; padding:28px 30px; border:1px solid #d4edf0; border-radius:18px; background:radial-gradient(circle at 0 0,#e5f7f7 0,rgba(255,255,255,.96) 45%),#fff; box-shadow:0 10px 30px rgba(20,26,50,.05); }.crm-hero h1 { margin:3px 0 7px; color:#24304b; font-size:clamp(30px,4vw,43px); letter-spacing:-.8px; }.crm-hero p:not(.eyebrow) { max-width:620px; margin:0; color:#687286; font-size:13px; line-height:1.55; }.crm-metric { min-width:92px; padding:12px 15px; border:1px solid #d8ebee; border-radius:13px; background:#fff; text-align:center; }.crm-metric b,.crm-metric span { display:block; }.crm-metric b { color:#137a78; font-size:23px; }.crm-metric span { margin-top:2px; color:#707b8d; font-size:8px; font-weight:800; line-height:1.35; text-transform:uppercase; }.crm-layout { display:grid; grid-template-columns:minmax(0,1fr) 315px; gap:18px; align-items:start; }.crm-client-list { display:grid; gap:11px; }.crm-client-list .section-heading { margin:0 0 1px; }.crm-client-card { display:grid; grid-template-columns:42px minmax(0,1fr) 15px; gap:13px; align-items:center; padding:15px 17px; color:inherit; text-decoration:none; }.crm-client-card:hover { border-color:#8dc5c6; box-shadow:0 8px 18px rgba(20,100,100,.10); transform:translateY(-1px); }.crm-avatar { display:grid; width:40px; height:40px; place-items:center; border-radius:13px; color:#137a78; background:#d9f2f1; font-size:16px; font-weight:850; }.crm-client-card small,.crm-client-card p { display:block; color:#7a8494; font-size:9px; }.crm-client-card h2 { margin:3px 0; color:#303a49; font-size:14px; }.crm-client-card p { margin:0; }.crm-client-card>b { color:#a7b0bb; }.crm-create { overflow:hidden; }.crm-create>p,.crm-create>h2 { margin:0; padding:0 20px; }.crm-create>p { padding-top:20px; }.crm-create>h2 { margin-top:3px; font-size:20px; }.crm-empty { padding:55px 25px; text-align:center; }.crm-empty>span { display:grid; width:48px; height:48px; margin:0 auto 11px; place-items:center; border-radius:50%; color:#137a78; background:#d9f2f1; font-size:23px; }.crm-empty h2 { margin:0; color:#2b3544; font-size:18px; }.crm-empty p { max-width:430px; margin:9px auto 0; color:#6d7787; font-size:12px; line-height:1.55; }.crm-client-hero { display:flex; align-items:center; gap:17px; margin-bottom:18px; padding:25px 28px; border:1px solid #d4edf0; border-radius:17px; background:linear-gradient(135deg,#fff,#f5fcfc); }.crm-avatar-large { width:62px; height:62px; flex:0 0 auto; border-radius:18px; font-size:25px; }.crm-client-hero h1 { margin:3px 0 5px; color:#273343; font-size:31px; }.crm-client-hero p { margin:0; color:#687486; font-size:12px; }.crm-client-hero small { display:block; margin-top:8px; color:#778293; font-size:11px; }.crm-detail-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:18px; align-items:start; }.crm-detail-grid>div { display:grid; gap:15px; }.crm-record-panel { overflow:hidden; }.crm-record { display:flex; gap:12px; align-items:flex-start; padding:14px 18px; border-bottom:1px solid var(--border); }.crm-record:last-child { border-bottom:0; }.crm-record>div { min-width:0; }.crm-record strong,.crm-record small { display:block; }.crm-record strong { color:#323b4b; font-size:12px; }.crm-record small { margin-top:4px; color:#748092; font-size:10px; }.crm-actions { display:grid; gap:14px; }.status-chip-new { color:#1967d2; background:#dbeafe; }.status-chip-qualifying,.status-chip-estimate { color:#8b651a; background:#fff2d9; }.status-chip-scheduled { color:#7147cd; background:#eee8fb; }.status-chip-completed,.status-chip-done { color:#177158; background:#e6f6ee; }.status-chip-declined,.status-chip-cancelled { color:#8d4b43; background:#fbe8e5; }
@media (max-width:760px) { .crm-hero { grid-template-columns:repeat(3,1fr); padding:22px; }.crm-hero>div:first-child { grid-column:1 / -1; }.crm-metric { min-width:0; padding:11px 7px; }.crm-layout,.crm-detail-grid { grid-template-columns:1fr; }.crm-create { order:-1; }.crm-detail-grid .crm-actions { order:-1; }.crm-client-hero { align-items:flex-start; padding:20px; }.crm-avatar-large { width:50px; height:50px; font-size:21px; }.crm-client-hero h1 { font-size:25px; } }
.login-page { background: var(--navy); }
.login-layout { display: grid; min-height: 100vh; grid-template-columns: minmax(360px, 1fr) minmax(440px, .8fr); }
.login-brand-panel { display: flex; min-height: 100vh; flex-direction: column; padding: 40px clamp(35px, 6vw, 90px); color: #fff; background: radial-gradient(circle at 18% 20%, #263664 0, var(--navy) 42%, #0b1331 100%); }
.brand-light { padding: 0; }
.login-message { max-width: 610px; margin: auto 0; }
.login-message h1 { max-width: 520px; margin: 8px 0 20px; font-size: clamp(42px, 6vw, 76px); line-height: 1.02; letter-spacing: -2px; }
.login-message > p:last-child { max-width: 580px; color: #aeb7d6; font-size: 17px; }
.login-proof { color: #aeb7d6; font-size: 12px; }
.login-proof span { color: var(--success); }
.login-form-panel { display: grid; place-items: center; padding: 30px; background: #f7f7fb; }
.login-card { width: min(100%, 420px); padding: 40px; border: 1px solid var(--border); border-radius: 15px; background: #fff; box-shadow: 0 25px 60px rgba(20,26,50,.12); }
.mobile-login-brand { display: none; }
.login-card h2 { margin: 5px 0 4px; font-size: 28px; }
.login-intro { margin: 0 0 25px; color: var(--muted); }
.login-card label { display: block; margin: 15px 0 6px; font-size: 11px; font-weight: 750; }
.login-card input { width: 100%; min-height: 47px; padding: 10px 13px; border: 1px solid #dfe2e9; border-radius: 8px; outline: none; background: #fbfbfd; }
.login-card input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(132,90,223,.11); }
.login-submit { margin-top: 22px; }
.security-note { display: block; margin-top: 15px; color: #9da2af; text-align: center; }
.form-error { margin: 15px 0; padding: 10px 12px; border-radius: 7px; color: #a23d2d; background: #fff0ed; font-size: 12px; }
.field-error { margin-top: 5px; color: #a23d2d; font-size: 11px; }
@media (max-width: 1100px) {
  .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .department-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .department-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .calendar-shell { grid-template-columns: 1fr; }
  .calendar-sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .calendar-legend { grid-column: 1 / -1; }
}
@media (max-width: 840px) {
  .nav-toggle { top: 14px; left: 18px; z-index: 22; pointer-events: auto; }
  .nav-toggle:focus-visible ~ .app-shell .menu-button { outline: 3px solid #2d78c8; outline-offset: 3px; border-radius: 8px; }
  .sidebar { transform: translateX(-102%); transition: transform .22s ease; }
  .nav-toggle:checked ~ .sidebar { transform: translateX(0); }
  .nav-backdrop { position: fixed; inset: 0; z-index: 25; background: rgba(8,14,36,.5); }
  .nav-toggle:checked ~ .nav-backdrop { display: block; }
  .app-shell { margin-left: 0; }
  .menu-button { display: grid; width: 44px; height: 44px; place-items: center; margin-right: 14px; border-radius: 8px; }
  .content-shell { padding: 22px 18px; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .department-detail-grid { grid-template-columns: 1fr; }
  .login-layout { grid-template-columns: 1fr; }
  .login-brand-panel { display: none; }
  .mobile-login-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 30px; }
}
@media (max-width: 620px) {
  .sidebar { width:min(86vw, 320px); padding-top:env(safe-area-inset-top); }
  .brand { min-height:66px; padding:12px 20px; }
  .nav-list { padding:10px 11px 18px; overscroll-behavior:contain; }
  .nav-label { margin-top:17px; }
  .nav-list a,.nav-list .nav-group-parent { min-height:44px; }
  .nav-submenu { margin-left:39px; }
  .sidebar-foot { margin:9px 11px max(11px, env(safe-area-inset-bottom)); padding:11px; }
  .topbar { min-height: 64px; padding: 8px 16px; }
  .topbar-title small, .account-copy, .account-desktop-logout { display: none; }
  .page-heading { align-items: stretch; flex-direction: column; }
  .heading-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .metrics, .content-cards, .idea-grid { grid-template-columns: 1fr; }
  .department-strip, .department-board { grid-template-columns: 1fr; }
  .department-hero { align-items: flex-start; flex-direction: column; }
  .calendar-hero { align-items: stretch; flex-direction: column; padding: 21px 18px; border-radius: 14px; }
  .calendar-title-line { align-items: flex-start; flex-direction: column; gap: 9px; }
  .calendar-actions { align-items: stretch; justify-content: space-between; }
  .calendar-view-switch { display: none; }
  .month-navigation { width: 100%; justify-content: space-between; }
  .month-navigation a:nth-child(2) { flex: 1; }
  .calendar-month-view { display: none !important; }
  .calendar-agenda { display: grid !important; }
  .calendar-sidebar { grid-template-columns: 1fr; }
  .agenda-day { grid-template-columns: 1fr; }
  .agenda-day > header { padding: 12px 15px; border-right: 0; border-bottom: 1px solid var(--border); }
  .agenda-day > header > strong { font-size: 22px; }
  .agenda-item { grid-template-columns: 52px 7px minmax(0,1fr) 10px; gap: 9px; padding: 11px 13px; }
  .calendar-detail-card > header,.calendar-detail-notes { padding: 24px 20px; }
  .calendar-detail-card footer { align-items: stretch; flex-direction: column; padding: 16px 20px; }
  .metric { min-height: 108px; }
  .list-item { align-items: flex-start; }
  .list-item .status { display: none; }
  .document-header { flex-direction: column; }
  .document-meta { text-align: left; }
  .login-form-panel { padding: 16px; }
  .login-card { padding: 28px 22px; }
}

/* Keep Compass card state colour on the status dot, never on the whole card. */
.mindmap-card-node.card-state-in-progress,.mindmap-card-node.card-state-queued,.mindmap-card-node.card-state-planned,.mindmap-card-node.card-state-proposed,.mindmap-card-node.card-state-completed { background:#fff; }
.mindmap-card-node.card-state-in-progress .mindmap-card-state { background:#1a73e8; }
.mindmap-card-node.card-state-queued .mindmap-card-state,.mindmap-card-node.card-state-planned .mindmap-card-state { background:#f9ab00; }
.mindmap-card-node.card-state-proposed .mindmap-card-state { background:#a142f4; }
.mindmap-card-node.card-state-completed .mindmap-card-state { background:#188038; }

/* A blocked project is visible but clearly distinct from active, planned and done. */
.mindmap-card-node.card-state-blocked { background:#fff; }
.mindmap-card-node.card-state-blocked .mindmap-card-state,
.cloud-map-card.card-state-blocked .cloud-map-card-state,
.graph-card-node.card-state-blocked .relationship-card-state,
.card-state-blocked .mindmap-card-state,
.direction-card-links .card-state-blocked { background:#d56b00; }

/* Relationship graph: stable goal → direction → card layout with direct edges. */
.relationship-graph-topbar { display:flex; align-items:end; justify-content:space-between; gap:18px; margin:6px 0 18px; }.relationship-graph-topbar h1 { margin:4px 0 6px; color:#202124; font-size:27px; }.relationship-graph-topbar p:not(.eyebrow) { max-width:630px; margin:0; color:#5f6368; }.relationship-graph-controls { display:flex; gap:6px; flex:0 0 auto; }.relationship-graph-controls button { min-height:34px; padding:7px 10px; border:1px solid #cbd8ea; border-radius:9px; color:#174ea6; background:#fff; font:inherit; font-size:11px; font-weight:800; cursor:pointer; }.relationship-graph-controls button:hover { background:#f4f8ff; }.relationship-graph-viewport { position:relative; min-height:650px; overflow:hidden; border:1px solid #dbe5f3; border-radius:20px; background:radial-gradient(circle at 10% 50%,rgba(66,133,244,.12),transparent 20%),radial-gradient(circle at 82% 20%,rgba(161,66,244,.08),transparent 24%),linear-gradient(rgba(220,229,240,.52) 1px,transparent 1px),linear-gradient(90deg,rgba(220,229,240,.52) 1px,transparent 1px),#fbfdff; background-size:auto,auto,24px 24px,24px 24px,auto; cursor:grab; touch-action:none; }.relationship-graph-viewport.is-panning { cursor:grabbing; }.relationship-graph-stage { position:relative; width:1180px; transform-origin:top left; transition:transform .14s ease-out; }.relationship-graph-viewport.is-panning .relationship-graph-stage { transition:none; }.relationship-graph-edges { position:absolute; inset:0; overflow:visible; pointer-events:none; }.relationship-graph-edges path { fill:none; stroke:#9db4d2; stroke-width:2; }.relationship-graph-node { position:absolute; z-index:1; box-sizing:border-box; color:inherit; text-decoration:none; }.graph-root-node { left:38px; display:grid; width:220px; min-height:150px; place-content:center; padding:20px; border:2px solid #315dcc; border-radius:20px; color:#fff; background:linear-gradient(145deg,#183e88,#6f3dc2); box-shadow:0 14px 30px rgba(51,73,145,.24); text-align:center; }.graph-root-node small { color:#d8e5ff; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.6px; }.graph-root-node strong { margin-top:9px; font-size:13px; line-height:1.45; }.graph-root-node span { position:absolute; right:-12px; bottom:-12px; display:grid; width:36px; height:36px; place-items:center; border:3px solid #fff; border-radius:12px; color:#234a98; background:#d8e6ff; }.relationship-graph-lane { position:absolute; top:calc(26px + var(--graph-row) * 148px); left:335px; width:805px; min-height:116px; }.graph-direction-node { display:grid; grid-template-columns:38px minmax(0,1fr); gap:10px; align-items:center; width:245px; min-height:72px; padding:12px; border:1px solid #cbd8ea; border-radius:14px; background:#fff; box-shadow:0 4px 13px rgba(60,64,67,.10); }.graph-direction-node:hover { border-color:#7da7e4; box-shadow:0 8px 18px rgba(60,64,67,.16); transform:translateY(-1px); }.graph-direction-node.is-focus { border:2px solid #1a73e8; box-shadow:0 0 0 4px rgba(26,115,232,.12); }.graph-direction-node i { display:grid; width:36px; height:36px; place-items:center; border-radius:11px; color:#174ea6; background:#d2e3fc; font-style:normal; font-size:17px; }.graph-direction-node small,.graph-direction-node strong,.graph-card-node small,.graph-card-node strong { display:block; }.graph-direction-node small { color:#717b8d; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.55px; }.graph-direction-node strong { overflow:hidden; margin-top:4px; color:#303846; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.relationship-graph-card-stack { display:grid; gap:7px; margin-left:335px; }.graph-card-node { position:relative; display:grid; grid-template-columns:8px minmax(0,1fr); gap:9px; align-items:center; width:390px; min-height:38px; padding:6px 10px; border:1px solid #d9e2ee; border-radius:10px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.07); }.graph-card-node:hover { border-color:#7da7e4; background:#f6f9ff; box-shadow:0 5px 12px rgba(60,64,67,.12); transform:translateX(2px); }.relationship-card-state { width:7px; height:7px; border-radius:50%; background:#9aa0a6; }.graph-card-node.card-state-in-progress .relationship-card-state { background:#1a73e8; }.graph-card-node.card-state-queued .relationship-card-state,.graph-card-node.card-state-planned .relationship-card-state { background:#f9ab00; }.graph-card-node.card-state-proposed .relationship-card-state { background:#a142f4; }.graph-card-node.card-state-completed .relationship-card-state { background:#188038; }.graph-card-node small { color:#7a8390; font-size:8px; font-weight:800; letter-spacing:.25px; }.graph-card-node strong { overflow:hidden; margin-top:2px; color:#303846; font-size:10px; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }.graph-card-empty { border-style:dashed; color:#1967d2; }.graph-card-empty>span:first-child { font-weight:800; }.relationship-card-more { padding:1px 2px; color:#1967d2; font-size:9px; font-weight:800; text-decoration:none; }.relationship-card-more:hover { text-decoration:underline; }.relationship-graph-hint { margin:10px 0 0; color:#6a7280; font-size:10px; text-align:center; }
@media (max-width: 620px) { .relationship-graph-topbar { display:block; }.relationship-graph-controls { margin-top:14px; }.relationship-graph-viewport { min-height:590px; border-radius:15px; }.relationship-graph-hint { text-align:left; }.relationship-graph-stage { width:1180px; } }

/* A graph must remain readable on a phone: use the same linked nodes, but lay
   them out as a large vertical graph rather than shrinking a desktop canvas. */
@media (max-width: 620px) {
  .relationship-graph-viewport { min-height:0; }
  .relationship-graph-stage { width:100%!important; height:auto!important; padding:18px 14px 26px; box-sizing:border-box; }
  .relationship-graph-node { position:relative; }
  .graph-root-node { left:auto; width:auto; min-height:116px; margin:0 0 27px; padding:16px 18px; }
  .relationship-graph-lane { position:relative; top:auto; left:auto; width:auto; min-height:0; margin:0 0 19px; padding:0 0 0 24px; }
  .relationship-graph-lane:before { position:absolute; top:-27px; left:10px; width:2px; height:39px; background:#9db4d2; content:""; }
  .relationship-graph-lane:after { position:absolute; top:11px; left:10px; width:14px; border-top:2px solid #9db4d2; content:""; }
  .graph-direction-node { width:100%; min-height:64px; }
  .relationship-graph-card-stack { margin:10px 0 0 20px; padding-left:15px; border-left:2px solid #c7d5e8; }
  .graph-card-node { width:100%; min-height:42px; }
  .relationship-graph-edges { opacity:0; }
  .relationship-card-more { padding:4px 1px; }
  .relationship-graph-controls { width:100%; }
  .relationship-graph-controls button { flex:1; }
  .relationship-graph-hint { margin-top:12px; }
}

/* Cloud map: a calm, readable alternative to the detailed Mind Map. */
.cloud-map-topbar { margin:6px 0 18px; }.cloud-map-topbar h1 { margin:4px 0 6px; color:#202124; font-size:27px; }.cloud-map-topbar p:not(.eyebrow) { max-width:620px; margin:0; color:#5f6368; }.cloud-map { display:grid; grid-template-columns:minmax(200px,.54fr) 60px minmax(0,1.46fr); min-height:560px; overflow:hidden; padding:28px; border:1px solid #dbe5f3; border-radius:22px; background:radial-gradient(circle at 13% 47%,rgba(66,133,244,.12),transparent 22%),radial-gradient(circle at 84% 8%,rgba(161,66,244,.08),transparent 20%),linear-gradient(rgba(220,229,240,.44) 1px,transparent 1px),linear-gradient(90deg,rgba(220,229,240,.44) 1px,transparent 1px),#fbfdff; background-size:auto,auto,26px 26px,26px 26px,auto; }.cloud-map-root-wrap { display:grid; place-items:center; }.cloud-map-root { position:relative; display:grid; width:184px; min-height:184px; place-content:center; padding:25px; border:2px solid #315dcc; border-radius:47% 53% 50% 50% / 53% 47% 53% 47%; color:#fff; background:linear-gradient(145deg,#183e88,#6f3dc2); box-shadow:0 16px 35px rgba(51,73,145,.25); text-align:center; }.cloud-map-root:after { position:absolute; top:50%; right:-60px; width:60px; border-top:2px solid #91a9cb; content:""; }.cloud-map-root small,.cloud-map-root strong { position:relative; z-index:1; display:block; }.cloud-map-root small { color:#d8e5ff; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.6px; }.cloud-map-root strong { margin-top:8px; font-size:13px; line-height:1.45; }.cloud-map-root span { position:absolute; right:-12px; bottom:-12px; display:grid; width:38px; height:38px; place-items:center; border:4px solid #fff; border-radius:14px; color:#234a98; background:#d8e6ff; }.cloud-map-trunk { align-self:stretch; width:2px; margin:auto; background:#91a9cb; }.cloud-map-branches { display:grid; align-content:center; gap:18px; }.cloud-map-lane { display:grid; grid-template-columns:30px 162px minmax(210px,1fr); align-items:center; min-height:125px; }.cloud-map-branch-line { height:2px; background:#91a9cb; }.cloud-map-direction { display:grid; width:150px; min-height:124px; place-content:center; justify-self:start; padding:17px; border:1px solid #cbd8ea; border-radius:46% 54% 48% 52% / 54% 46% 54% 46%; background:#fff; box-shadow:0 4px 13px rgba(60,64,67,.10); color:inherit; text-align:center; text-decoration:none; transition:transform .16s ease,box-shadow .16s ease; }.cloud-map-direction:hover { box-shadow:0 9px 20px rgba(60,64,67,.15); transform:translateY(-2px); }.cloud-map-lane.is-focus .cloud-map-direction { border:2px solid #1a73e8; box-shadow:0 0 0 4px rgba(26,115,232,.12); }.cloud-map-direction i { display:grid; width:34px; height:34px; margin:0 auto 7px; place-items:center; border-radius:12px; color:#174ea6; background:#d2e3fc; font-style:normal; font-size:16px; }.cloud-map-direction small,.cloud-map-direction strong { display:block; }.cloud-map-direction small { color:#6a7280; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.5px; }.cloud-map-direction strong { margin-top:4px; color:#303846; font-size:11px; line-height:1.25; }.cloud-map-card-list { display:grid; gap:7px; margin-left:18px; padding-left:19px; border-left:2px solid #c7d5e8; }.cloud-map-card { display:grid; grid-template-columns:8px minmax(0,1fr) 11px; gap:8px; align-items:center; min-height:39px; padding:6px 9px; border:1px solid #dbe3ee; border-radius:11px; color:#4e5868; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.06); text-decoration:none; transition:transform .15s ease,border-color .15s ease; }.cloud-map-card:hover { border-color:#8eb6f2; background:#f5f9ff; transform:translateX(2px); }.cloud-map-card-state { width:7px; height:7px; border-radius:50%; background:#9aa0a6; }.cloud-map-card.card-state-in-progress .cloud-map-card-state { background:#1a73e8; }.cloud-map-card.card-state-queued .cloud-map-card-state,.cloud-map-card.card-state-planned .cloud-map-card-state { background:#f9ab00; }.cloud-map-card.card-state-proposed .cloud-map-card-state { background:#a142f4; }.cloud-map-card.card-state-completed .cloud-map-card-state { background:#188038; }.cloud-map-card small,.cloud-map-card strong { display:block; }.cloud-map-card small { overflow:hidden; color:#7a8390; font-size:8px; font-weight:800; letter-spacing:.22px; text-overflow:ellipsis; white-space:nowrap; }.cloud-map-card strong { overflow:hidden; margin-top:2px; color:#303846; font-size:10px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }.cloud-map-card b { color:#93a0b4; font-size:10px; }.cloud-map-card-empty { border-style:dashed; color:#1967d2; }.cloud-map-more { padding:1px 3px; color:#1967d2; font-size:9px; font-weight:800; text-decoration:none; }.cloud-map-more:hover { text-decoration:underline; }.cloud-map-hint { margin:10px 0 0; color:#6a7280; font-size:10px; text-align:center; }
@media (max-width: 620px) { .cloud-map-topbar h1 { font-size:26px; }.cloud-map { display:block; min-height:0; padding:22px 16px 25px; border-radius:18px; }.cloud-map-root-wrap { display:block; }.cloud-map-root { width:188px; min-height:188px; margin:0 auto 30px; }.cloud-map-root:after,.cloud-map-trunk { display:none; }.cloud-map-branches { gap:22px; }.cloud-map-lane { position:relative; display:block; min-height:0; padding:0 0 0 28px; }.cloud-map-lane:before { position:absolute; top:-30px; left:11px; width:2px; height:48px; background:#91a9cb; content:""; }.cloud-map-lane:after { position:absolute; top:17px; left:11px; width:17px; border-top:2px solid #91a9cb; content:""; }.cloud-map-branch-line { display:none; }.cloud-map-direction { width:150px; min-height:126px; }.cloud-map-card-list { margin:12px 0 0 30px; padding-left:16px; }.cloud-map-card { min-height:44px; }.cloud-map-card small { font-size:8px; }.cloud-map-card strong { font-size:10px; }.cloud-map-hint { text-align:left; } }

/* Pipeline: a practical daily queue driven by card status and Compass priority. */
.pipeline-topbar { display:flex; align-items:end; justify-content:space-between; gap:18px; margin:6px 0 18px; }.pipeline-topbar h1 { margin:4px 0 6px; color:#202124; font-size:28px; }.pipeline-topbar p:not(.eyebrow) { max-width:650px; margin:0; color:#5f6368; }.pipeline-board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:start; }.pipeline-column { overflow:hidden; border:1px solid #dbe3ee; border-top:4px solid #7b8798; border-radius:16px; background:#f8faff; }.pipeline-column-in-progress { border-top-color:#1a73e8; background:#f4f8ff; }.pipeline-column-next { border-top-color:#a142f4; background:#fbf8ff; }.pipeline-column-completed { border-top-color:#188038; background:#f6fbf7; }.pipeline-column>header { display:grid; grid-template-columns:34px minmax(0,1fr); gap:10px; align-items:center; padding:15px 15px 13px; border-bottom:1px solid #e2e8f1; background:rgba(255,255,255,.7); }.pipeline-column>header>span { display:grid; width:31px; height:31px; place-items:center; border-radius:10px; color:#174ea6; background:#dbeafe; font-size:13px; font-weight:800; }.pipeline-column-next>header>span { color:#7627bb; background:#f0e1ff; }.pipeline-column-completed>header>span { color:#137333; background:#d9f0df; }.pipeline-column header small { display:block; overflow:hidden; color:#717b8d; font-size:9px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.pipeline-column h2 { margin:2px 0 0; color:#303846; font-size:17px; }.pipeline-items { display:grid; gap:9px; min-height:136px; padding:11px; }.pipeline-card { display:block; padding:12px; border:1px solid #d7e0eb; border-radius:12px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.06); color:inherit; text-decoration:none; transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease; }.pipeline-card:hover { border-color:#8eb6f2; box-shadow:0 6px 14px rgba(60,64,67,.12); transform:translateY(-1px); }.pipeline-card.is-focus { border:2px solid #1a73e8; box-shadow:0 0 0 3px rgba(26,115,232,.10); }.pipeline-card-meta { display:flex; align-items:center; gap:6px; min-width:0; margin-bottom:8px; color:#6a7280; font-size:9px; font-weight:800; }.pipeline-direction-icon { display:grid; width:22px; height:22px; flex:0 0 auto; place-items:center; border-radius:7px; color:#174ea6; background:#d2e3fc; font-style:normal; }.pipeline-card-meta>span:nth-child(2) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.pipeline-card-meta b { margin-left:auto; padding:3px 5px; border-radius:999px; color:#5f6368; background:#f1f3f4; font-size:8px; white-space:nowrap; }.pipeline-card.is-focus .pipeline-card-meta b { color:#174ea6; background:#dbeafe; }.pipeline-card>strong { display:block; color:#303846; font-size:12px; line-height:1.35; }.pipeline-card>small { display:block; margin-top:6px; color:#7a8390; font-size:9px; font-weight:700; }.pipeline-empty { margin:6px; padding:16px 8px; color:#7a8390; font-size:11px; text-align:center; }.pipeline-hint { margin:10px 0 0; color:#6a7280; font-size:10px; text-align:center; }
@media (max-width: 760px) { .pipeline-topbar { display:block; }.pipeline-topbar .button { display:inline-block; margin-top:14px; }.pipeline-board { grid-template-columns:1fr; }.pipeline-column { border-radius:14px; }.pipeline-items { min-height:0; }.pipeline-hint { text-align:left; } }

/* Pipeline interaction and card-detail workflow control. */
.pipeline-board { align-items:stretch; }.pipeline-column { display:flex; min-height:100%; flex-direction:column; }.pipeline-items { flex:1; align-content:start; grid-auto-rows:max-content; }.pipeline-card { box-sizing:border-box; height:98px; min-height:98px; overflow:hidden; padding:10px; }.pipeline-card-meta { margin-bottom:5px; }.pipeline-card>strong { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.pipeline-card>small { margin-top:4px; }
.pipeline-card,.pipeline-card * { -webkit-user-select:none; user-select:none; -webkit-touch-callout:none; }.pipeline-card { cursor:grab; touch-action:none; }.pipeline-card.is-dragging { opacity:.48; cursor:grabbing; transform:scale(.98); }.pipeline-column { transition:background .15s ease,box-shadow .15s ease; }.pipeline-column.is-drop-target { box-shadow:0 0 0 3px rgba(26,115,232,.24); background:#eef5ff; }.pipeline-status-form { display:none; }.pipeline-status-badge { padding:4px 7px; border-radius:999px; color:#174ea6; background:#dbeafe; font-size:9px; font-weight:800; }.pipeline-status-control { display:flex; align-items:end; justify-content:space-between; gap:18px; margin:0 0 20px; padding:16px 18px; border:1px solid #d2e3fc; border-radius:14px; background:#f8fbff; }.pipeline-status-control p { margin:3px 0 0; color:#5f6368; font-size:11px; }.pipeline-status-control h2 { margin:2px 0 0; color:#174ea6; font-size:16px; }.pipeline-status-control form { display:flex; align-items:end; gap:8px; }.pipeline-status-control label { display:block; color:#5f6368; font-size:10px; font-weight:800; }.pipeline-status-control select { display:block; min-height:36px; margin-top:3px; padding:7px 9px; border:1px solid #cbd8ea; border-radius:8px; color:#303846; background:#fff; font:inherit; font-size:12px; }.pipeline-status-control .button { min-height:36px; white-space:nowrap; }
@media (max-width: 620px) { .pipeline-status-control { display:block; padding:15px; }.pipeline-status-control form { display:grid; grid-template-columns:1fr auto; margin-top:13px; }.pipeline-status-control label { grid-column:1 / -1; }.pipeline-status-control select { width:100%; }.pipeline-card { min-height:66px; } }

/* Touch and desktop reordering for the Mind Map direction nodes. */
.mindmap-direction-node,.mindmap-direction-node * { -webkit-user-select:none; user-select:none; -webkit-touch-callout:none; }
.mindmap-direction-node { width:100%; cursor:grab; touch-action:none; appearance:none; font:inherit; text-align:left; }
.mindmap-direction-node:active,.mindmap-direction-node.is-dragging { cursor:grabbing; opacity:.56; transform:scale(.98); }
.mindmap-lane.is-drop-target .mindmap-direction-node { border-color:#1a73e8; box-shadow:0 0 0 4px rgba(26,115,232,.18); }
.mindmap-lane.is-drop-target .mindmap-branch-line { background:#1a73e8; }
.mindmap-reorder-form { display:none; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* Google Calendar-inspired workspace. Kept page-scoped so the rest of the admin stays unchanged. */
.content-shell:has(.gcal-toolbar) { max-width: 1680px; padding: 20px 24px 32px; }
.gcal-toolbar {
  display: flex;
  min-height: 68px;
  align-items: center;
  gap: 22px;
  margin-bottom: 10px;
  padding: 8px 4px;
  color: #3c4043;
}
.gcal-brand { display: flex; min-width: 250px; align-items: center; gap: 13px; }
.gcal-brand > div > small { display: block; color: #5f6368; font-size: 11px; }
.gcal-brand h1 { margin: -1px 0 0; color: #3c4043; font-size: 23px; font-weight: 500; letter-spacing: -.25px; }
.gcal-icon {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  grid-template-rows: 15px 1fr;
  overflow: hidden;
  border: 1px solid #dadce0;
  border-radius: 7px;
  color: #1a73e8;
  background: #fff;
  box-shadow: 0 1px 2px rgba(60,64,67,.12);
  text-align: center;
}
.gcal-icon small { display: grid; place-items: center; color: #fff; background: #1a73e8; font-size: 7px; font-weight: 700; text-transform: uppercase; }
.gcal-icon b { display: grid; place-items: center; font-size: 17px; font-weight: 500; }
.month-navigation { display: flex; align-items: center; gap: 5px; }
.month-navigation a { box-shadow: none; }
.today-button {
  display: grid;
  min-width: 78px;
  height: 38px;
  place-items: center;
  margin-right: 4px;
  padding: 0 15px;
  border: 1px solid #dadce0;
  border-radius: 5px;
  color: #3c4043;
  background: #fff;
  font-size: 12px;
  font-weight: 600;
}
.today-button:hover { background: #f8fafd; box-shadow: 0 1px 2px rgba(60,64,67,.14); }
.circle-button {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border: 0 !important;
  border-radius: 50% !important;
  color: #5f6368;
  background: transparent !important;
  font-size: 25px !important;
  font-weight: 400 !important;
}
.circle-button:hover { background: #f1f3f4 !important; }
.gcal-toolbar-end { display: flex; align-items: center; gap: 14px; margin-left: auto; }
.source-status {
  gap: 7px;
  padding: 6px 10px;
  border-color: #dadce0;
  color: #5f6368;
  background: #fff;
  font-size: 9px;
  letter-spacing: .35px;
}
.source-status-connected { color: #137333; border-color: #ceead6; background: #e6f4ea; }
.source-status-connected i { background: #1e8e3e; box-shadow: none; }
.calendar-view-switch { display: flex; overflow: hidden; padding: 0; border: 1px solid #dadce0; border-radius: 5px; background: #fff; }
.calendar-view-switch a { padding: 9px 13px; border-radius: 0; color: #5f6368; font-size: 10px; font-weight: 650; }
.calendar-view-switch a + a { border-left: 1px solid #dadce0; }
.calendar-view-switch a:hover { background: #f8fafd; }
.calendar-view-switch a.active { color: #1967d2; background: #e8f0fe; box-shadow: none; }
.calendar-context { margin: -5px 0 14px 59px; color: #80868b; font-size: 11px; }
.calendar-context span { padding: 0 6px; color: #bdc1c6; }
.calendar-shell { grid-template-columns: minmax(0,1fr) 286px; gap: 16px; }
.calendar-sidebar { gap: 12px; top: 86px; }
.calendar-month-view {
  overflow: hidden;
  border: 1px solid #dadce0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(60,64,67,.08);
}
.calendar-weekdays { height: 42px; border-bottom: 1px solid #dadce0; background: #fff; }
.calendar-weekdays span { display: grid; place-items: center; padding: 0; color: #70757a; font-size: 9px; font-weight: 600; letter-spacing: .6px; }
.calendar-day {
  min-height: 142px;
  padding: 5px 5px 7px;
  border-color: #dadce0;
  background: #fff;
}
.calendar-day:hover { background: #fcfdff; }
.calendar-day.outside-month { background: #f8f9fa; }
.calendar-day.outside-month .calendar-day-number { opacity: .45; }
.calendar-day.today { background: #fff; }
.calendar-day-number { min-height: 30px; justify-content: center; }
.calendar-day-number strong { width: 26px; height: 26px; color: #3c4043; font-size: 11px; font-weight: 500; }
.calendar-day-number small { position: absolute; overflow: hidden; width: 1px; height: 1px; clip: rect(0 0 0 0); }
.calendar-day.today .calendar-day-number strong { color: #fff; background: #1a73e8; box-shadow: none; }
.day-items { gap: 3px; margin-top: 1px; }
.calendar-item {
  display: flex;
  min-height: 21px;
  align-items: center;
  gap: 5px;
  padding: 3px 6px;
  border: 0;
  border-radius: 4px;
  color: #174ea6;
  background: #d2e3fc;
  line-height: 1.25;
}
.calendar-item:hover { filter: brightness(.97); box-shadow: 0 1px 2px rgba(60,64,67,.18); }
.calendar-item-time,.calendar-item-title { display: inline; min-width: 0; margin: 0; font-size: 9px; }
.calendar-item-time { flex: 0 0 auto; opacity: .82; font-weight: 650; }
.calendar-item-title { font-weight: 600; }
.calendar-item-handyman { color: #174ea6; background: #d2e3fc; }
.calendar-item-assistant { color: #681da8; background: #e9d7fe; }
.calendar-item-internal { color: #0d652d; background: #ceead6; }
.calendar-item-reminder { color: #b06000; background: #feefc3; }
.calendar-more { padding: 2px 6px; color: #5f6368; font-size: 8px; font-weight: 600; }
.calendar-agenda { gap: 10px; }
.agenda-day { grid-template-columns: 90px minmax(0,1fr); border-color: #dadce0; border-radius: 10px; box-shadow: 0 1px 2px rgba(60,64,67,.06); }
.agenda-day > header { border-color: #dadce0; background: #f8f9fa; }
.agenda-day.today > header { color: #fff; background: #1a73e8; }
.agenda-item { border-color: #eceff1; }
.agenda-item > div { min-width: 0; }
.agenda-item:hover { background: #f8fafd; }
.agenda-dot-handyman { background: #1a73e8; }
.agenda-dot-assistant { background: #a142f4; }
.agenda-dot-internal { background: #34a853; }
.google-calendar-card { padding: 18px; border-color: #dadce0; border-radius: 12px; background: #fff; box-shadow: 0 1px 3px rgba(60,64,67,.08); }
.calendar-list-header { display: flex; align-items: center; gap: 11px; margin-bottom: 15px; }
.calendar-list-header p,.calendar-list-header h2 { margin: 0; }
.calendar-list-header p { color: #80868b; font-size: 9px; }
.calendar-list-header h2 { color: #3c4043; font-size: 15px; font-weight: 600; }
.google-mark { width: 34px; height: 34px; margin: 0; border-radius: 7px; font-size: 14px; }
.connection-badge { top: 18px; right: 18px; color: #137333; background: #e6f4ea; }
.calendar-source-list { display: grid; gap: 3px; padding: 4px 0 12px; }
.calendar-source-list > div { display: grid; grid-template-columns: 12px minmax(0,1fr) 14px; align-items: center; gap: 9px; padding: 7px 5px; border-radius: 6px; }
.calendar-source-list > div:hover { background: #f8f9fa; }
.calendar-source-list span,.calendar-source-list strong,.calendar-source-list small { display: block; min-width: 0; }
.calendar-source-list strong { color: #3c4043; font-size: 11px; font-weight: 600; }
.calendar-source-list small { color: #80868b; font-size: 8px; }
.calendar-source-list b { color: #5f6368; font-size: 10px; }
.calendar-color { width: 10px; height: 10px; border-radius: 3px; }
.calendar-color-timstruck { background: #1a73e8; }
.calendar-color-assistant { background: #a142f4; }
.sync-facts { margin: 4px 0 13px; }
.sync-facts div { border-color: #eceff1; }
.button-soft { color: #1967d2; border-color: #d2e3fc; background: #e8f0fe; box-shadow: none; }
.button-soft:hover { color: #174ea6; background: #d2e3fc; }
.quick-add-panel { border-color: #dadce0; border-radius: 12px; box-shadow: 0 1px 3px rgba(60,64,67,.08); }
.quick-add-panel summary { padding: 15px 17px; }
.quick-add-panel summary small { color: #1a73e8; }
.quick-add-panel summary b { color: #1a73e8; }
.workspace-form input,.workspace-form select,.workspace-form textarea { border-color: #dadce0; border-radius: 5px; background: #fff; }
.workspace-form input:focus,.workspace-form select:focus,.workspace-form textarea:focus { outline: 0; border-color: #1a73e8; box-shadow: 0 0 0 2px rgba(26,115,232,.12); }

/* Estimate / quote workspace: internal drafts only, no delivery action lives here. */
.crm-record-link { color:inherit; text-decoration:none; }.crm-record-link:hover { background:#f7fbfb; }.status-chip-draft { color:#7650c5; background:#f0e9ff; }.status-chip-approved { color:#1c6a93; background:#e0f2fe; }.status-chip-sent { color:#9b6412; background:#fff3d6; }.status-chip-accepted { color:#177158; background:#e6f6ee; }.status-chip-expired { color:#6c7280; background:#eef0f3; }.estimate-hero { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; padding:27px 30px; border:1px solid #dddbf9; border-radius:18px; background:radial-gradient(circle at 94% 4%,#eee8ff 0,rgba(255,255,255,.97) 40%),#fff; }.estimate-hero h1 { margin:3px 0 6px; color:#2d3546; font-size:34px; }.estimate-hero p:not(.eyebrow) { margin:0; color:#707b8c; font-size:13px; }.estimate-total { min-width:145px; padding:13px 17px; border:1px solid #dcd8f5; border-radius:13px; background:#fff; text-align:right; }.estimate-total small,.estimate-total b,.estimate-total span { display:block; }.estimate-total small,.estimate-total span { color:#778094; font-size:9px; font-weight:750; }.estimate-total b { margin:2px 0 4px; color:#6842bb; font-size:25px; }.estimate-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:18px; align-items:start; }.estimate-layout>main { display:grid; gap:15px; }.estimate-lines { overflow:hidden; }.estimate-line { display:flex; justify-content:space-between; gap:15px; padding:15px 18px; border-bottom:1px solid var(--border); }.estimate-line strong,.estimate-line small { display:block; }.estimate-line strong { color:#343d4b; font-size:13px; }.estimate-line small { margin-top:4px; color:#778294; font-size:10px; }.estimate-line>b { color:#34415a; font-size:13px; white-space:nowrap; }.estimate-grand-total { display:flex; justify-content:space-between; padding:17px 18px; color:#3a3450; background:#faf9ff; font-size:14px; }.estimate-grand-total>b { color:#6842bb; font-size:18px; }.estimate-safety { margin:0; padding:0 18px 19px; color:#727d8f; font-size:10px; line-height:1.5; }.estimate-line-form { display:grid; grid-template-columns:minmax(0,1fr) 105px 125px auto; gap:10px; align-items:end; }.estimate-line-form label { margin:0 0 5px; }.estimate-line-form .button { margin:0; white-space:nowrap; }
@media (max-width:760px) { .estimate-layout { grid-template-columns:1fr; }.estimate-hero { align-items:flex-start; padding:21px; }.estimate-hero h1 { font-size:28px; }.estimate-total { text-align:left; }.estimate-line-form { grid-template-columns:1fr; }.estimate-line-form .button { width:100%; } }

/* Handyman CRM deal pipeline. */
.crm-tabs { display:flex; gap:8px; margin:0 0 16px; }.crm-tabs a { padding:9px 14px; border:1px solid #d9e0e9; border-radius:999px; color:#687385; background:#fff; font-size:11px; font-weight:800; text-decoration:none; }.crm-tabs a.is-active { color:#fff; border-color:#137a78; background:#137a78; box-shadow:0 5px 12px rgba(19,122,120,.18); }.crm-pipeline-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; padding:28px 30px; border:1px solid #d4edf0; border-radius:18px; background:radial-gradient(circle at 93% 5%,#e2f6f1 0,rgba(255,255,255,.97) 42%),#fff; }.crm-pipeline-hero h1 { margin:3px 0 7px; color:#273343; font-size:clamp(30px,4vw,42px); letter-spacing:-.7px; }.crm-pipeline-hero p:not(.eyebrow) { max-width:680px; margin:0; color:#687486; font-size:13px; line-height:1.55; }.crm-pipeline-board { display:grid; grid-template-columns:repeat(10,minmax(210px,1fr)); gap:13px; overflow-x:auto; padding:3px 2px 15px; scroll-snap-type:x proximity; }.crm-pipeline-column { min-height:330px; border:1px solid #dfe5ee; border-top:4px solid #8aa3bd; border-radius:15px; background:#f8fafc; overflow:hidden; scroll-snap-align:start; transition:box-shadow .16s,border-color .16s,transform .16s; }.crm-pipeline-column>header { display:flex; gap:9px; align-items:center; min-height:72px; padding:12px; background:#fff; border-bottom:1px solid #e4e8ef; }.crm-pipeline-column>header>span { display:grid; width:28px; height:28px; place-items:center; border-radius:9px; color:#3b556f; background:#e7eef6; font-size:12px; font-weight:850; }.crm-pipeline-column header small { display:block; color:#8491a1; font-size:8px; font-weight:750; line-height:1.25; }.crm-pipeline-column header h2 { margin:3px 0 0; color:#354052; font-size:13px; line-height:1.15; }.crm-pipeline-items { display:grid; align-content:start; gap:9px; min-height:245px; padding:10px; }.crm-pipeline-card { display:block; padding:12px; border:1px solid #dde4ed; border-radius:11px; color:inherit; background:#fff; box-shadow:0 2px 5px rgba(40,55,75,.04); text-decoration:none; touch-action:none; user-select:none; cursor:grab; }.crm-pipeline-card:hover { border-color:#9bc9c8; box-shadow:0 7px 16px rgba(22,100,98,.11); }.crm-pipeline-card.is-dragging { opacity:.68; transform:rotate(1.5deg) scale(.98); cursor:grabbing; }.crm-pipeline-card>div { display:flex; justify-content:space-between; gap:7px; color:#788596; font-size:9px; font-weight:800; }.crm-pipeline-card>div small { color:#9aa4b2; font-size:8px; text-transform:uppercase; }.crm-pipeline-card strong { display:block; margin-top:7px; color:#303a4a; font-size:12px; line-height:1.3; }.crm-pipeline-card p { margin:5px 0 0; color:#788595; font-size:9px; line-height:1.3; }.crm-pipeline-empty { margin:0; padding:18px 4px; color:#96a0ad; font-size:10px; text-align:center; }.crm-pipeline-column.is-drop-target { border-color:#137a78; box-shadow:0 0 0 3px rgba(19,122,120,.16); transform:translateY(-2px); }.crm-pipeline-blue { border-top-color:#2c7be5; }.crm-pipeline-violet { border-top-color:#7650c5; }.crm-pipeline-amber { border-top-color:#d18b19; }.crm-pipeline-teal { border-top-color:#0f988f; }.crm-pipeline-purple { border-top-color:#894cc4; }.crm-pipeline-indigo { border-top-color:#5267cd; }.crm-pipeline-orange { border-top-color:#dc7a25; }.crm-pipeline-green { border-top-color:#2d9a65; }.crm-pipeline-slate { border-top-color:#718096; }.crm-pipeline-red { border-top-color:#ce5b54; }.crm-pipeline-hint { margin:0; color:#7d8897; font-size:10px; line-height:1.5; }
@media (max-width:760px) { .crm-pipeline-hero { align-items:flex-start; flex-direction:column; padding:21px; }.crm-pipeline-hero h1 { font-size:29px; }.crm-pipeline-board { grid-template-columns:repeat(10,82vw); margin-right:-10px; }.crm-pipeline-column { min-height:300px; } }

/* Refined deal funnel: six readable steps rather than a ten-column text list. */
.crm-tabs { display:inline-flex; gap:4px; padding:4px; border:1px solid #dce4ed; border-radius:13px; background:#f5f8fb; }.crm-tabs a { display:inline-flex; align-items:center; gap:7px; padding:10px 15px; border:0; border-radius:9px; color:#657286; background:transparent; font-size:11px; box-shadow:none; }.crm-tabs a span { display:grid; width:18px; height:18px; place-items:center; color:currentColor; font-size:15px; }.crm-tabs a.is-active { color:#fff; background:linear-gradient(135deg,#146fd0,#1a86e7); box-shadow:0 6px 13px rgba(25,113,212,.24); }.crm-pipeline-hero { align-items:flex-end; border:0; border-radius:22px; background:linear-gradient(130deg,#111c43 0%,#1c4e9e 64%,#298dd3 100%); box-shadow:0 16px 34px rgba(21,53,109,.2); }.crm-pipeline-hero .eyebrow,.crm-pipeline-hero h1,.crm-pipeline-hero p:not(.eyebrow) { color:#fff; }.crm-pipeline-hero .eyebrow { opacity:.7; }.crm-pipeline-hero p:not(.eyebrow) { max-width:670px; opacity:.8; }.crm-pipeline-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.crm-pipeline-legend span { display:inline-flex; align-items:center; gap:5px; padding:7px 9px; border:1px solid rgba(255,255,255,.16); border-radius:999px; color:#edf5ff; background:rgba(255,255,255,.11); font-size:9px; font-weight:800; }.legend-dot { width:7px; height:7px; border-radius:50%; background:#79b7ff; }.legend-green { background:#69d39b; }.legend-slate { background:#cbd4e0; }.crm-pipeline-flow { display:grid; grid-template-columns:repeat(6,minmax(155px,1fr)); gap:0; margin:19px 0 12px; overflow-x:auto; }.crm-flow-step { position:relative; display:grid; grid-template-columns:28px minmax(0,1fr); gap:8px; align-items:center; min-height:48px; padding:0 18px; border-top:1px solid #dae2ec; border-bottom:1px solid #dae2ec; background:#fff; }.crm-flow-step:first-child { border-left:1px solid #dae2ec; border-radius:12px 0 0 12px; }.crm-flow-step:last-child { border-right:1px solid #dae2ec; border-radius:0 12px 12px 0; }.crm-flow-step>span { display:grid; width:25px; height:25px; place-items:center; border-radius:8px; color:#3171b3; background:#e4f0ff; font-size:9px; font-weight:900; }.crm-flow-step strong { color:#495566; font-size:10px; line-height:1.2; }.crm-flow-step i { position:absolute; right:-7px; z-index:1; width:15px; color:#b7c1cd; background:#fff; font-style:normal; text-align:center; }.crm-pipeline-board { grid-template-columns:repeat(6,minmax(245px,1fr)); gap:15px; padding:3px 2px 17px; }.crm-pipeline-column { min-height:355px; border:1px solid #dce4ec; border-top:5px solid #7da8d3; border-radius:16px; background:#f7f9fc; box-shadow:0 7px 16px rgba(35,53,75,.045); }.crm-pipeline-column>header { justify-content:space-between; min-height:67px; padding:11px 13px; border-bottom:1px solid #e5e9ef; background:rgba(255,255,255,.8); }.crm-pipeline-column>header>span { width:29px; height:29px; color:#576f89; background:#e8eef6; font-size:11px; }.crm-pipeline-column header h2 { font-size:12px; }.crm-pipeline-column header small { font-size:8px; }.crm-pipeline-items { gap:10px; min-height:276px; padding:10px; }.crm-pipeline-card { padding:11px; border-radius:12px; border-color:#dbe3ec; box-shadow:0 3px 7px rgba(39,60,86,.05); }.crm-pipeline-card:hover { border-color:#68a7e3; box-shadow:0 9px 19px rgba(28,101,179,.13); }.crm-pipeline-card-top { display:flex; align-items:center; justify-content:space-between; gap:7px; }.crm-pipeline-avatar { display:grid; width:25px; height:25px; place-items:center; border-radius:8px; color:#2b6aac; background:#e4f1ff; font-size:10px; font-weight:900; }.crm-stage-chip { max-width:142px; overflow:hidden; color:#627184; font-size:8px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.crm-stage-new,.crm-stage-contact { color:#2167b0; }.crm-stage-qualifying,.crm-stage-meeting { color:#a46d13; }.crm-stage-estimate { color:#7644b8; }.crm-stage-estimate_sent,.crm-stage-follow_up { color:#4d5fbe; }.crm-stage-scheduled { color:#187d58; }.crm-stage-completed { color:#516071; }.crm-stage-declined { color:#b3534a; }.crm-pipeline-card strong { min-height:31px; margin-top:9px; font-size:12px; }.crm-pipeline-client { margin:4px 0 0; color:#657386; font-size:10px; font-weight:750; }.crm-pipeline-next { min-height:22px; margin:5px 0 0; color:#8793a1; font-size:9px; }.crm-pipeline-card footer { display:flex; justify-content:space-between; gap:8px; margin-top:9px; padding-top:8px; border-top:1px solid #edf0f4; color:#8173ae; font-size:9px; }.crm-pipeline-card footer b { color:#5f45a4; }.crm-pipeline-blue { border-top-color:#2c7be5; }.crm-pipeline-amber { border-top-color:#e3a32f; }.crm-pipeline-purple { border-top-color:#9852cf; }.crm-pipeline-indigo { border-top-color:#5f70d6; }.crm-pipeline-green { border-top-color:#31a66e; }.crm-pipeline-slate { border-top-color:#8593a5; }.crm-pipeline-hint { margin-top:2px; padding:10px 13px; border-radius:10px; color:#738095; background:#f4f7fa; }
@media (max-width:760px) { .crm-tabs { display:flex; width:100%; }.crm-tabs a { flex:1; justify-content:center; }.crm-pipeline-hero { padding:22px; }.crm-pipeline-legend { justify-content:flex-start; }.crm-pipeline-flow { grid-template-columns:repeat(6,155px); margin-right:-10px; }.crm-flow-step { padding:0 12px; }.crm-pipeline-board { grid-template-columns:repeat(6,82vw); margin-right:-10px; }.crm-pipeline-card { min-height:130px; } }
.crm-pipeline-board,.crm-pipeline-card { -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; }.crm-pipeline-board.is-dragging-board { scroll-snap-type:none; }.crm-pipeline-card { -webkit-user-drag:none; touch-action:none; }.crm-pipeline-card.is-dragging { opacity:.48; transform:scale(.98); }.crm-pipeline-card.is-dragging * { pointer-events:none; }
.crm-overview-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:17px;padding:29px 30px;border-radius:22px;color:#fff;background:radial-gradient(circle at 87% 8%,rgba(117,212,255,.33),transparent 23%),linear-gradient(125deg,#101b41,#19549d 62%,#258bd0);box-shadow:0 16px 34px rgba(20,61,121,.2)}.crm-overview-hero h1{margin:4px 0 8px;font-size:clamp(30px,4vw,42px);letter-spacing:-.045em}.crm-overview-hero .eyebrow{color:#d8e9ff;opacity:.78}.crm-overview-hero p:not(.eyebrow){max-width:650px;margin:0;color:#e0efff;font-size:13px;line-height:1.55}.crm-overview-actions{display:flex;gap:9px;align-self:flex-end}.crm-overview-actions .button-secondary{border-color:rgba(255,255,255,.23);color:#fff;background:rgba(255,255,255,.1)}.crm-overview-actions .button-secondary:hover{background:rgba(255,255,255,.19)}.crm-overview-actions .button{white-space:nowrap}.crm-overview-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:13px;margin-bottom:16px}.crm-overview-metric{display:grid;grid-template-columns:38px minmax(0,1fr) 12px;gap:11px;align-items:center;min-height:112px;padding:16px;border:1px solid #dce6f0;border-radius:16px;background:#fff;box-shadow:0 5px 13px rgba(36,58,86,.045);color:inherit;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s}.crm-overview-metric:hover{border-color:#77aee3;box-shadow:0 12px 24px rgba(31,85,150,.12);transform:translateY(-2px)}.crm-overview-metric>span{display:grid;width:37px;height:37px;place-items:center;border-radius:12px;color:#286eb8;background:#e5f1ff;font-size:18px;font-weight:900}.crm-overview-metric small,.crm-overview-metric strong,.crm-overview-metric p{display:block}.crm-overview-metric small{color:#738195;font-size:9px;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.crm-overview-metric strong{margin:2px 0;color:#2e3e54;font-size:26px;line-height:1}.crm-overview-metric p{margin:5px 0 0;color:#8794a4;font-size:10px;line-height:1.25}.crm-overview-metric>b{color:#74a1d2}.metric-estimates>span{color:#7143b6;background:#eee6ff}.metric-promises>span{color:#b14d45;background:#fde9e7}.metric-replies>span{color:#1a6eaa;background:#e1f4ff}.metric-visits>span{color:#1a805d;background:#e0f6eb}.crm-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.crm-overview-panel{min-height:259px;overflow:hidden}.crm-overview-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #e8edf3}.crm-overview-panel header h2{margin:3px 0 0;color:#2e3d51;font-size:17px}.crm-overview-panel header>a{color:#176bc1;font-size:10px;font-weight:850;text-decoration:none}.crm-overview-row{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid #edf1f5;color:inherit;text-decoration:none}.crm-overview-row:hover{background:#f8fbff}.crm-overview-row>div{min-width:0;flex:1}.crm-overview-row strong,.crm-overview-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-overview-row strong{color:#37465a;font-size:12px}.crm-overview-row small{margin-top:3px;color:#7b899b;font-size:10px}.crm-overview-row>b{color:#3878bd;font-size:13px}.crm-overview-row em{flex:0 0 auto;font-style:normal}.crm-overview-row-icon{display:grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border-radius:9px;color:#286eb8;background:#e7f1ff;font-size:10px;font-weight:900}.crm-overview-row-icon.promise{color:#a74740;background:#fce8e5}.crm-overview-row-icon.estimate{color:#7042b4;background:#eee6ff;font-size:15px}.crm-overview-row-icon.reply{color:#1b6ba6;background:#e1f3ff}.crm-overview-row-icon.visit{color:#187a59;background:#e0f6eb}.crm-overview-empty{margin:0;padding:22px 20px;color:#7c899a;font-size:11px;line-height:1.5}.crm-overview-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:15px}.crm-overview-stage{display:grid;grid-template-columns:28px minmax(0,1fr) 8px;gap:8px;align-items:center;min-height:58px;padding:10px;border:1px solid #e0e7ef;border-radius:12px;color:inherit;background:#fbfcfe;text-decoration:none}.crm-overview-stage:hover{border-color:#94bee9;background:#f6faff}.crm-overview-stage>span{display:grid;width:27px;height:27px;place-items:center;border-radius:9px;color:#256eb8;background:#e5f1ff;font-size:11px;font-weight:900}.crm-overview-stage strong,.crm-overview-stage small{display:block}.crm-overview-stage strong{color:#3b4a5e;font-size:10px;line-height:1.25}.crm-overview-stage small{margin-top:2px;color:#8894a3;font-size:8px;line-height:1.25}.crm-overview-stage i{color:#80a4c8;font-style:normal}.crm-overview-stage.stage-amber>span{color:#a66e14;background:#fff0d4}.crm-overview-stage.stage-purple>span{color:#7744b8;background:#eee6ff}.crm-overview-stage.stage-indigo>span{color:#465eb9;background:#e7ebff}.crm-overview-stage.stage-green>span{color:#167e59;background:#e0f6eb}.crm-overview-stage.stage-red>span{color:#af4b43;background:#fde9e7}
.crm-deal-timeline{overflow:hidden}.crm-deal-timeline>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px;border-bottom:1px solid #e8edf3}.crm-deal-timeline header h2{margin:3px 0 0;color:#2d3a4e;font-size:17px}.crm-deal-timeline>header>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;color:#286db5;background:#e6f1ff;font-size:11px;font-weight:900}.crm-timeline-list{padding:6px 20px 14px}.crm-timeline-item{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px 0;border-bottom:1px solid #eef2f6}.crm-timeline-item:last-child{border-bottom:0}.crm-timeline-item>i{position:relative;display:grid;width:26px;height:26px;place-items:center;border-radius:9px;background:#e7f1ff}.crm-timeline-item>i:after{content:'•';color:#276db5;font-size:18px}.crm-timeline-item.timeline-lead>i{background:#e9f0ff}.crm-timeline-item.timeline-lead>i:after{color:#326bc3;content:'⌁'}.crm-timeline-item.timeline-estimate>i{background:#eee6ff}.crm-timeline-item.timeline-estimate>i:after{color:#7549b4;content:'$'}.crm-timeline-item.timeline-share>i{background:#e2f7ee}.crm-timeline-item.timeline-share>i:after{color:#17805d;content:'↗'}.crm-timeline-item.timeline-commitment>i{background:#fff1d9}.crm-timeline-item.timeline-commitment>i:after{color:#a66d15;content:'✓'}.crm-timeline-item.timeline-stage_changed>i{background:#e6f1ff}.crm-timeline-item.timeline-stage_changed>i:after{color:#216cb8;content:'→'}.crm-timeline-item.timeline-email_draft>i{background:#f0e7ff}.crm-timeline-item.timeline-email_draft>i:after{color:#7546ba;content:'✉'}.crm-timeline-item>div{min-width:0}.crm-timeline-item strong,.crm-timeline-item small{display:block}.crm-timeline-item strong{color:#354357;font-size:12px}.crm-timeline-item small{margin-top:3px;color:#7b8999;font-size:10px;line-height:1.35}.crm-timeline-item time{padding-top:2px;color:#8b97a6;font-size:9px;white-space:nowrap}.estimate-email-draft{margin-top:16px;overflow:hidden}.estimate-email-meta{display:flex;justify-content:space-between;gap:12px;padding:12px 19px;border-bottom:1px solid #e9eef3;color:#65748a;font-size:11px;background:#f8fbff}.estimate-email-meta b{color:#354458}.estimate-email-form{padding:18px}.estimate-email-form textarea{min-height:190px;resize:vertical}.estimate-email-link{margin:0;color:#718096;font-size:10px}.estimate-email-link a{color:#176bc1;font-weight:800;text-decoration:none}.estimate-email-empty{display:grid;gap:12px;padding:19px}.estimate-email-empty p{max-width:620px;margin:0;color:#718095;font-size:12px;line-height:1.55}.estimate-email-empty .button{justify-self:start}
.crm-pipeline-close-reason { color:#9b5d22 !important; font-weight:800; }.crm-close-dialog { width:min(420px,calc(100vw - 28px)); padding:0; border:0; border-radius:18px; box-shadow:0 26px 70px rgba(18,30,55,.32); }.crm-close-dialog::backdrop { background:rgba(20,30,50,.48); }.crm-close-dialog form { display:grid; gap:11px; padding:24px; }.crm-close-dialog h2 { margin:-4px 0 0; color:#263246; font-size:23px; }.crm-close-dialog p:not(.eyebrow) { margin:-5px 0 4px; color:#6d798b; font-size:11px; line-height:1.45; }.crm-close-dialog label { display:grid; gap:5px; color:#59677a; font-size:10px; font-weight:850; }.crm-close-dialog select,.crm-close-dialog textarea { width:100%; padding:9px 10px; border:1px solid #d7e0eb; border-radius:9px; color:#303b4b; background:#fff; font:inherit; font-size:12px; }.crm-close-dialog textarea { resize:vertical; }.crm-close-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:4px; }.crm-close-actions .quiet-button { border:1px solid #d7e0eb; border-radius:9px; padding:9px 11px; color:#59677a; background:#fff; font:inherit; font-size:11px; font-weight:800; }

/* CRM records: profile first, related work second, forms only on demand. */
.crm-index-hero,.crm-deal-hero,.crm-client-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:17px;padding:27px 30px;border-radius:22px;background:linear-gradient(125deg,#111c43,#1f5eae 67%,#3296d8);box-shadow:0 16px 34px rgba(22,55,116,.18);color:#fff}.crm-index-hero h1,.crm-deal-hero h1,.crm-client-hero h1{margin:4px 0 8px;font-size:clamp(30px,4vw,42px);letter-spacing:-.045em}.crm-index-hero p:not(.eyebrow),.crm-deal-hero p:not(.eyebrow),.crm-client-hero p:not(.eyebrow){max-width:690px;margin:0;color:#deedff;font-size:13px;line-height:1.55}.crm-index-hero .eyebrow,.crm-deal-hero .eyebrow,.crm-client-hero .eyebrow{color:#d8e9ff;opacity:.78}.crm-index-stat{display:grid;min-width:102px;gap:3px;padding:13px;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:rgba(255,255,255,.12);text-align:center}.crm-index-stat b{font-size:29px}.crm-index-stat span{font-size:10px;line-height:1.25}.crm-record-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.crm-record-card{display:grid;min-height:205px;padding:17px;border:1px solid #dce5ef;border-radius:17px;background:#fff;box-shadow:0 6px 16px rgba(39,57,80,.05);color:inherit;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s}.crm-record-card:hover{border-color:#71a9e1;box-shadow:0 14px 28px rgba(33,86,151,.12);transform:translateY(-2px)}.crm-record-card-top{display:flex;justify-content:space-between;align-items:center;color:#8795a7;font-size:12px}.crm-record-card h2{margin:14px 0 4px;color:#273448;font-size:17px;line-height:1.25}.crm-record-owner{margin:0;color:#3d608b;font-size:12px;font-weight:800}.crm-record-meta{margin:9px 0 0;color:#758295;font-size:11px;line-height:1.4}.crm-record-card footer{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:auto;padding-top:13px;border-top:1px solid #edf1f5;color:#7c8998;font-size:10px}.crm-record-card footer b{color:#1f65b2;font-size:16px}.crm-empty-state{display:grid;justify-items:start;gap:9px;min-height:205px;padding:22px;border:1px dashed #cbd7e4;border-radius:17px;background:#f9fbfd}.crm-empty-state>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#2677c9;background:#e7f1ff;font-size:18px}.crm-empty-state h2{margin:0;color:#334258;font-size:18px}.crm-empty-state p{margin:0;color:#758397;font-size:12px;line-height:1.5}.crm-back-link{display:inline-block;margin-bottom:10px;color:inherit;font-size:11px;font-weight:800;text-decoration:none;opacity:.82}.crm-deal-actions{display:flex;gap:9px;align-self:flex-start}.crm-deal-actions .button{white-space:nowrap}.crm-deal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.38fr);gap:16px;align-items:start}.crm-deal-main{display:grid;gap:16px}.crm-deal-info{padding:20px}.crm-deal-info header h2,.crm-deal-estimates h2{margin:2px 0 0;color:#2e3b50;font-size:18px}.crm-deal-info dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:20px 0 0}.crm-deal-info dl div{padding-top:10px;border-top:1px solid #eaf0f5}.crm-deal-info dt{color:#8794a5;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.crm-deal-info dd{margin:5px 0 0;color:#39475b;font-size:12px;line-height:1.4}.crm-deal-info dd a{color:#146fd0;font-weight:800;text-decoration:none}.crm-deal-estimates{padding:0;overflow:hidden}.crm-deal-estimates header,.crm-related-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px;border-bottom:1px solid #e8edf3}.crm-deal-estimates header h2,.crm-related-panel header h2{margin:3px 0 0;color:#2d3a4e;font-size:17px}.crm-deal-estimates header>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;color:#286db5;background:#e6f1ff;font-size:11px;font-weight:900}.crm-deal-estimate-row,.crm-related-row{display:flex;align-items:center;gap:11px;padding:14px 20px;border-bottom:1px solid #eff2f6;color:inherit;text-decoration:none}.crm-deal-estimate-row:last-child,.crm-related-row:last-child{border-bottom:0}.crm-deal-estimate-row>div,.crm-related-row>div{min-width:0;flex:1}.crm-deal-estimate-row strong,.crm-related-row strong{display:block;overflow:hidden;color:#344156;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.crm-deal-estimate-row small,.crm-related-row small{display:block;overflow:hidden;margin-top:4px;color:#7b8899;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.crm-deal-estimate-row>b,.crm-related-row>b{color:#216abe;font-size:13px}.crm-deal-estimate-row>a,.crm-related-row>a{color:#7b8899}.crm-empty-inline{padding:18px 20px;color:#7e8b9b;font-size:11px;line-height:1.5}.crm-deal-create{position:sticky;top:18px;padding:21px}.crm-deal-create h2{margin:3px 0 7px;color:#2d3a4f;font-size:20px}.crm-deal-create>p:not(.eyebrow){margin:0 0 15px;color:#738095;font-size:11px;line-height:1.5}.crm-client-hero{align-items:flex-start}.crm-client-identity{display:flex;align-items:center;gap:15px}.crm-client-avatar{display:grid;flex:0 0 auto;place-items:center;width:58px;height:58px;border:2px solid rgba(255,255,255,.2);border-radius:20px;background:rgba(255,255,255,.13);font-size:25px;font-weight:900}.crm-client-contact{display:grid;gap:4px;min-width:145px;padding:11px 13px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.11);font-size:10px}.crm-client-contact strong{font-size:13px}.crm-client-contact a{color:#fff;font-size:11px;text-decoration:none}.crm-client-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.crm-client-summary a{display:grid;gap:4px;padding:14px;border:1px solid #dce5ef;border-radius:14px;background:#fff;color:#667487;text-align:center;text-decoration:none}.crm-client-summary b{color:#246dbb;font-size:22px}.crm-client-summary span{font-size:10px;font-weight:800}.crm-client-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(285px,.38fr);gap:16px;align-items:start}.crm-client-related{display:grid;gap:16px}.crm-related-panel{padding:0;overflow:hidden}.crm-related-panel header>a{color:#176bc1;font-size:10px;font-weight:850;text-decoration:none}.crm-client-actions{display:grid;gap:10px;position:sticky;top:18px}.crm-action-drawer{padding:0;overflow:hidden}.crm-action-drawer summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px;cursor:pointer;list-style:none}.crm-action-drawer summary::-webkit-details-marker{display:none}.crm-action-drawer summary>span{display:grid;grid-template-columns:29px 1fr;column-gap:10px;align-items:center}.crm-action-drawer summary i{display:grid;grid-row:span 2;place-items:center;width:29px;height:29px;border-radius:9px;color:#2870bd;background:#e7f1ff;font-style:normal;font-size:14px}.crm-action-drawer summary strong{color:#354258;font-size:12px}.crm-action-drawer summary small{color:#8190a1;font-size:9px}.crm-action-drawer summary>b{color:#6f7e8e;transition:transform .15s}.crm-action-drawer[open] summary{border-bottom:1px solid #e9eef3}.crm-action-drawer[open] summary>b{transform:rotate(180deg)}.crm-action-drawer form{padding:15px}.crm-estimates-hero{background:linear-gradient(125deg,#291847,#6540a4 62%,#9a64d0)}
.crm-index-hero h1,.crm-deal-hero h1,.crm-client-hero h1{color:#fff}.crm-index-hero .crm-back-link,.crm-deal-hero .crm-back-link,.crm-client-hero .crm-back-link{color:#f4f8ff;opacity:.94}.crm-client-contact,.crm-client-contact strong{color:#fff}.crm-client-contact>span{color:#dcecff;font-weight:700}.crm-client-contact a{color:#fff;text-decoration-thickness:1px;text-underline-offset:3px}.crm-client-contact a:hover{color:#fff;text-decoration:underline}.crm-client-hero h1{overflow-wrap:anywhere}
@media(max-width:760px){.crm-index-hero,.crm-deal-hero,.crm-client-hero{align-items:flex-start;flex-direction:column;padding:21px}.crm-index-hero .button,.crm-deal-actions{align-self:stretch}.crm-deal-actions .button{flex:1;text-align:center}.crm-index-stat{grid-template-columns:auto 1fr;align-items:center;width:100%;text-align:left}.crm-index-stat span{font-size:11px}.crm-record-grid{grid-template-columns:1fr}.crm-deal-layout,.crm-client-layout{grid-template-columns:1fr}.crm-deal-create,.crm-client-actions{position:static}.crm-deal-info dl{grid-template-columns:1fr}.crm-client-identity{align-items:flex-start}.crm-client-summary{grid-template-columns:repeat(2,1fr)}.crm-related-row,.crm-deal-estimate-row{padding:13px}.crm-client-contact{width:100%}}
@media (max-width:620px) { .crm-close-dialog form { padding:20px; }.crm-close-actions { display:grid; grid-template-columns:1fr 1fr; }.crm-close-actions .button,.crm-close-actions .quiet-button { width:100%; } }
/* Separate terminal outcomes keep won work and lost opportunities visible. */
.crm-pipeline-flow { grid-template-columns:repeat(7,minmax(155px,1fr)); }.crm-pipeline-board { grid-template-columns:repeat(7,minmax(245px,1fr)); }.crm-pipeline-red { border-top-color:#d75b55; background:#fff9f8; }.crm-pipeline-red>header>span { color:#a9433d; background:#fde8e6; }.crm-stage-completed { color:#177158; }
@media (max-width:760px) { .crm-pipeline-flow { grid-template-columns:repeat(7,155px); }.crm-pipeline-board { grid-template-columns:repeat(7,82vw); } }
@media(max-width:760px){.crm-overview-hero{align-items:flex-start;flex-direction:column;padding:22px}.crm-overview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;width:100%}.crm-overview-actions .button{min-width:0;padding:9px;text-align:center;white-space:normal}.crm-overview-actions .button:last-child{grid-column:1/-1}.crm-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crm-overview-metric{grid-template-columns:32px minmax(0,1fr);gap:8px;min-height:101px;padding:13px}.crm-overview-metric>span{width:31px;height:31px;border-radius:10px;font-size:15px}.crm-overview-metric>b{display:none}.crm-overview-metric strong{font-size:23px}.crm-overview-grid{grid-template-columns:1fr;gap:13px}.crm-overview-panel{min-height:0}.crm-overview-panel>header{padding:16px}.crm-overview-row{padding:12px 15px}.crm-overview-stages{grid-template-columns:1fr;padding:12px}.crm-overview-stage{min-height:54px}}
@media(max-width:620px){.crm-timeline-list{padding:6px 14px 12px}.crm-timeline-item{grid-template-columns:26px minmax(0,1fr);gap:9px}.crm-timeline-item time{grid-column:2;padding-top:0}.estimate-email-meta{display:grid;gap:5px}.estimate-email-form{padding:14px}.estimate-email-empty{padding:16px}.estimate-email-empty .button{width:100%}}
.crm-source-autosave{display:inline-flex;align-items:center;gap:7px;margin:0}.crm-source-autosave .crm-source-select{appearance:none;min-height:30px;padding:5px 26px 5px 10px;border:1px solid #c8dcef;border-radius:999px;background:#f4f8fe url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%233f6e9f' stroke-linecap='round' stroke-width='1.6'/%3E%3C/svg%3E") right 9px center/10px no-repeat;color:#2866a6;font:inherit;font-size:11px;font-weight:850;cursor:pointer;transition:border-color .16s,background-color .16s,box-shadow .16s}.crm-source-autosave .crm-source-select:hover,.crm-source-autosave .crm-source-select:focus{border-color:#76a7da;outline:0;background-color:#fff;box-shadow:0 0 0 3px rgba(57,126,206,.12)}.crm-source-autosave .crm-source-select:disabled{opacity:.65;cursor:wait}.crm-source-autosave button[hidden]{display:none}.crm-source-state{min-width:0;color:#6180a1;font-size:9px;font-weight:800;white-space:nowrap}.crm-client-source-line{display:flex;align-items:center;gap:7px}.crm-source-autosave--hero .crm-source-select{border-color:rgba(255,255,255,.28);background-color:rgba(255,255,255,.14);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='white' stroke-linecap='round' stroke-width='1.6'/%3E%3C/svg%3E");color:#fff}.crm-source-autosave--hero .crm-source-select:hover,.crm-source-autosave--hero .crm-source-select:focus{border-color:rgba(255,255,255,.72);background-color:rgba(255,255,255,.22);box-shadow:none}.crm-source-autosave--hero .crm-source-select option{color:#33445c;background:#fff}.crm-source-autosave--hero .crm-source-state{color:#e7f2ff}.crm-timeline-dialog-link{display:block;padding:2px 5px;margin:-2px -5px;border-radius:8px;color:inherit;text-decoration:none}.crm-timeline-dialog-link:hover{background:#f1f7ff}.crm-timeline-dialog-link em{display:inline-block;margin-top:5px;color:#216dbc;font-size:9px;font-style:normal;font-weight:850}
/* Quote creation: one clear manual path plus a pre-bound deal path. */
.quote-create-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}.quote-create-form{padding:0;overflow:hidden}.quote-create-form header{padding:21px 22px 17px;border-bottom:1px solid #e8edf3}.quote-create-form header h2{margin:3px 0 7px;color:#2e3b50;font-size:20px}.quote-create-form header p:not(.eyebrow){margin:0;color:#758296;font-size:11px;line-height:1.5}.quote-create-field{display:grid;gap:6px;padding:0 22px;margin-top:15px}.quote-create-field label{color:#4e5c70;font-size:10px;font-weight:850}.quote-create-field small{color:#8793a2;font-size:9px}.quote-create-form footer{display:flex;justify-content:flex-end;gap:9px;margin-top:21px;padding:17px 22px;border-top:1px solid #e8edf3;background:#fbfcfe}.quote-create-guide{position:sticky;top:18px;padding:21px}.quote-create-guide>span{display:grid;width:36px;height:36px;place-items:center;border-radius:12px;color:#7245b3;background:#eee5ff;font-size:19px;font-weight:900}.quote-create-guide h2{margin:14px 0 8px;color:#334158;font-size:17px}.quote-create-guide ol{display:grid;gap:9px;margin:0;padding-left:18px;color:#627087;font-size:11px;line-height:1.45}.quote-create-guide p{margin:16px 0 0;padding-top:14px;border-top:1px solid #edf0f4;color:#7b8797;font-size:10px;line-height:1.5}.crm-inline-create{color:#1d6fc5;font-size:10px;font-weight:850;text-decoration:none}.crm-deal-estimates header>a.crm-inline-create{display:inline;color:#1d6fc5;background:transparent}.quote-create-hero{align-items:flex-end}.quote-create-hero .crm-back-link{color:#fff;opacity:.8}@media(max-width:760px){.quote-create-layout{grid-template-columns:1fr}.quote-create-guide{position:static;order:-1}.quote-create-form footer{display:grid;grid-template-columns:1fr 1.25fr}.quote-create-form footer .button{width:100%;text-align:center}.quote-create-field{padding:0 16px}.quote-create-form header{padding:18px 16px}.quote-create-form footer{padding:15px 16px}.quote-create-hero{align-items:flex-start}}
.calendar-legend { padding: 4px 5px; font-size: 9px; }
.gmail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.gmail-connection-card,.gmail-safety-card{padding:24px}.gmail-status-icon{display:grid;width:43px;height:43px;place-items:center;border-radius:14px;color:#7446b7;background:#eee6ff;font-size:21px;font-weight:900}.gmail-status-icon.is-connected{color:#157b58;background:#e2f6eb}.gmail-status-icon.is-pending{color:#9a6819;background:#fff1d8}.gmail-connection-card h2,.gmail-safety-card h2{margin:13px 0 8px;color:#304057;font-size:21px}.gmail-connection-card p:not(.eyebrow),.gmail-safety-card p{max-width:630px;margin:0 0 18px;color:#718095;font-size:12px;line-height:1.55}.gmail-safety-card ol{display:grid;gap:10px;margin:14px 0 18px;padding-left:19px;color:#5f6f84;font-size:11px;line-height:1.45}.gmail-connection-card code{display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:3px 5px;border-radius:5px;background:#f0f4f8;color:#41526a;font-size:10px}.gmail-send-panel{display:grid;gap:13px;margin-top:16px;padding:19px}.gmail-send-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.gmail-send-panel h2{margin:3px 0 0;color:#304056;font-size:17px}.gmail-send-panel>p{margin:0;color:#69788d;font-size:11px;line-height:1.55}.gmail-send-form{display:grid;gap:11px;padding-top:3px}.gmail-send-form label{display:flex;gap:8px;align-items:flex-start;color:#56667c;font-size:11px;line-height:1.45}.gmail-send-form input{margin-top:2px}.gmail-send-form .button{justify-self:start}@media(max-width:760px){.gmail-layout{grid-template-columns:1fr}.gmail-connection-card,.gmail-safety-card{padding:19px}.gmail-send-panel{padding:16px}.gmail-send-form .button{width:100%}}
.crm-timeline-item.timeline-email_sent>i{background:#e1f6eb}.crm-timeline-item.timeline-email_sent>i:after{color:#157c59;content:'✓'}
.crm-followup-hero{background:linear-gradient(125deg,#133f6e,#1d78b8 58%,#55b9dd)}.crm-followup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.crm-followup-panel{padding:0;overflow:hidden}.crm-followup-panel>header{display:flex;align-items:center;justify-content:space-between;padding:18px 19px;border-bottom:1px solid #e8edf3}.crm-followup-panel h2{margin:3px 0 0;color:#2f3d52;font-size:17px}.crm-followup-panel>header>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:9px;color:#236db4;background:#e6f1ff;font-size:11px;font-weight:900}.crm-followup-panel.is-overdue{border-top:4px solid #d8675d}.crm-followup-panel.is-overdue>header>span{color:#a7463d;background:#fce9e7}.crm-followup-row{padding:15px 17px;border-bottom:1px solid #edf1f5}.crm-followup-row:last-child{border-bottom:0}.crm-followup-copy{display:grid;gap:6px;min-width:0}.crm-followup-copy strong{color:#344156;font-size:13px}.crm-followup-copy small{color:#788698;font-size:10px;line-height:1.45}.crm-followup-copy small a{color:#1e6fc0;font-weight:800;text-decoration:none}.crm-overview-row-overdue{background:#fff9f8}.crm-overview-row-overdue .crm-overview-row-icon{color:#a74740;background:#fce8e5}.crm-deal-commitment-row{padding:0;border-bottom:1px solid #eff2f6}.crm-deal-commitment-row:last-child{border-bottom:0}.crm-deal-commitment-row .crm-deal-estimate-row{border-bottom:0}.crm-commitment-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:end;padding:0 17px 15px}.crm-commitment-actions form{margin:0}.crm-commitment-actions .button,.crm-commitment-cancel{min-height:34px;padding:7px 9px;font-size:10px}.crm-commitment-reschedule{display:flex;gap:6px;align-items:end}.crm-commitment-reschedule label{display:grid;gap:3px;color:#7a8797;font-size:8px;font-weight:800;text-transform:uppercase}.crm-commitment-reschedule input{height:34px;padding:5px 7px;border:1px solid #dce4ed;border-radius:7px;color:#4a586c;background:#fff;font:inherit;font-size:10px}.crm-commitment-cancel{border:0;border-radius:8px;color:#a64c43;background:#fff0ee;font:inherit;font-weight:800;cursor:pointer}.crm-commitment-cancel:hover{background:#fce0dc}@media(max-width:900px){.crm-followup-grid{grid-template-columns:1fr}}@media(max-width:620px){.crm-followup-row{padding:14px}.crm-commitment-actions{padding:0 14px 14px}.crm-commitment-actions form:not(.crm-commitment-reschedule){flex:1}.crm-commitment-actions form:not(.crm-commitment-reschedule) button{width:100%}.crm-commitment-reschedule{display:grid;grid-template-columns:minmax(0,1fr) auto;flex-basis:100%;width:100%}.crm-commitment-reschedule label{min-width:0}.crm-commitment-reschedule .button{width:100%}}
.metric-deals>span,.crm-overview-row-icon.deal{color:#5d49b3;background:#ece8ff}.crm-overview-row-reply{background:linear-gradient(90deg,#f4fbff,#fff)}.crm-overview-new-deals{border-top:4px solid #8462d8}.crm-overview-new-deals>header{background:linear-gradient(120deg,#faf8ff,#fff)}
/* CRM overview uses one ordered, canonical work queue at every viewport. */
.crm-overview-grid{grid-template-columns:1fr}.crm-overview-panel{min-height:0;scroll-margin-top:18px}.crm-overview-panel:focus{outline:3px solid rgba(35,114,197,.34);outline-offset:3px}.crm-overview-panel>header{min-height:64px}.crm-overview-panel>header>span{color:#718096;font-size:10px;font-weight:800}.crm-overview-panel>header>a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px}.crm-overview-row{min-height:56px}.crm-overview-row strong,.crm-overview-row small{overflow-wrap:anywhere;white-space:normal}.crm-overview-row>b{flex:0 0 auto}.crm-overview-metric:focus-visible,.crm-overview-panel>header>a:focus-visible,.crm-overview-row:focus-visible{outline:3px solid #1e73c4;outline-offset:2px}
.crm-analytics-today{margin:0 0 16px;overflow:hidden}.crm-analytics-today>header{padding:19px 20px;border-bottom:1px solid #e8edf3;background:linear-gradient(120deg,#f8fbff,#fff)}.crm-analytics-today .eyebrow{margin:0 0 4px;color:#3974aa}.crm-analytics-today h2{margin:0;color:#2e3d51;font-size:18px}.crm-analytics-today header p:not(.eyebrow){max-width:650px;margin:6px 0 0;color:#718095;font-size:11px;line-height:1.45}.crm-analytics-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-bottom:1px solid #e8edf3}.crm-analytics-metrics>div{min-width:0;padding:16px 18px;border-right:1px solid #edf1f5}.crm-analytics-metrics>div:last-child{border-right:0}.crm-analytics-metrics small,.crm-analytics-metrics strong{display:block}.crm-analytics-metrics small{overflow-wrap:anywhere;color:#788698;font-size:9px;font-weight:850;letter-spacing:.04em;line-height:1.35;text-transform:uppercase}.crm-analytics-metrics strong{margin-top:6px;color:#314157;font-size:22px;line-height:1}.crm-analytics-connectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}.crm-analytics-connectors li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:13px 18px;border-right:1px solid #edf1f5;border-bottom:1px solid #edf1f5}.crm-analytics-connectors li:nth-child(2n){border-right:0}.crm-analytics-connectors li:nth-last-child(-n+1){border-bottom:0}.crm-analytics-connectors li>div{min-width:0}.crm-analytics-connectors strong,.crm-analytics-connectors small{display:block}.crm-analytics-connectors strong{color:#38475b;font-size:11px}.crm-analytics-connectors small{margin-top:3px;color:#7f8d9f;font-size:10px;line-height:1.35}.crm-analytics-connectors span{flex:0 0 auto;padding:5px 8px;border-radius:999px;color:#65758a;background:#eff3f7;font-size:9px;font-weight:850;white-space:nowrap}.crm-analytics-connectors .is-ready span{color:#18795a;background:#e2f6eb}
@media(max-width:760px){.crm-overview-metric{min-height:108px}.crm-overview-panel>header{align-items:flex-start;min-height:0}.crm-overview-panel>header>a{min-height:44px;text-align:right}.crm-overview-row{min-height:61px}.crm-overview-row strong,.crm-overview-row small{overflow-wrap:anywhere;white-space:normal}}
@media(max-width:760px){.crm-analytics-today>header{padding:16px}.crm-analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-analytics-metrics>div:nth-child(2n){border-right:0}.crm-analytics-metrics>div:nth-child(-n+4){border-bottom:1px solid #edf1f5}.crm-analytics-connectors{grid-template-columns:1fr}.crm-analytics-connectors li,.crm-analytics-connectors li:nth-child(2n){border-right:0}.crm-analytics-connectors li:last-child{border-bottom:0}.crm-analytics-connectors li{align-items:flex-start;padding:13px 15px}.crm-analytics-connectors span{margin-top:1px;max-width:45%;overflow-wrap:anywhere;text-align:right;white-space:normal}}
.crm-followup-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:238px;margin-bottom:16px;padding:30px 32px;overflow:hidden;border:0;border-radius:23px;background:radial-gradient(circle at 82% 2%,rgba(130,213,255,.68),transparent 27%),linear-gradient(125deg,#0e1d44 0%,#174d8c 56%,#247fbd 100%);box-shadow:0 17px 35px rgba(20,65,120,.2)}.crm-followup-hero:after{position:absolute;right:-48px;bottom:-75px;width:260px;height:260px;border:1px solid rgba(255,255,255,.16);border-radius:50%;content:''}.crm-followup-hero-copy{position:relative;z-index:1;max-width:660px}.crm-followup-hero .crm-back-link{color:#dbeaff;opacity:.88}.crm-followup-hero .eyebrow,.crm-followup-hero h1,.crm-followup-hero p:not(.eyebrow){color:#fff}.crm-followup-hero .eyebrow{opacity:.68}.crm-followup-hero h1{margin:7px 0 8px;font-size:clamp(34px,4vw,48px);letter-spacing:-1px}.crm-followup-hero p:not(.eyebrow){margin:0;max-width:570px;font-size:13px;line-height:1.6;opacity:.83}.crm-followup-hero-signal{position:relative;z-index:1;display:grid;gap:6px;min-width:155px;padding:18px 20px;border:1px solid rgba(255,255,255,.2);border-radius:17px;color:#fff;background:rgba(9,28,74,.2);backdrop-filter:blur(8px)}.crm-followup-hero-signal span,.crm-followup-hero-signal small{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.crm-followup-hero-signal span{opacity:.65}.crm-followup-hero-signal strong{font-size:19px}.crm-followup-hero-signal small{opacity:.72}.crm-followup-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:16px}.crm-followup-metric{display:flex;align-items:center;gap:13px;padding:16px 18px;border:1px solid #dce7f2;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(38,60,85,.045)}.metric-icon{display:grid;flex:0 0 auto;width:37px;height:37px;place-items:center;border-radius:12px;font-size:17px;font-weight:900}.metric-blue{color:#176bc1;background:#e5f1ff}.metric-red{color:#ae4b43;background:#fce9e7}.metric-amber{color:#a8701e;background:#fff3db}.crm-followup-metric small,.crm-followup-metric strong,.crm-followup-metric p{display:block}.crm-followup-metric small{color:#7c8999;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.crm-followup-metric strong{margin:1px 0;color:#2e3a50;font-size:24px;line-height:1}.crm-followup-metric p{margin:4px 0 0;color:#8290a1;font-size:10px}.crm-followup-metric.metric-alert{border-color:#f1d9d6}.crm-followup-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:16px;align-items:start}.crm-followup-sidebar{display:grid;gap:16px}.crm-followup-panel{border:1px solid #dce6ef;border-radius:18px;background:#fff;box-shadow:0 9px 25px rgba(37,57,82,.05)}.crm-followup-panel>header{align-items:flex-start;padding:19px 20px}.crm-followup-panel>header h2{font-size:18px}.crm-followup-panel>header small{display:block;max-width:500px;margin-top:7px;color:#7b8899;font-size:10px;line-height:1.45}.crm-followup-primary>header>span{min-width:31px;height:31px;border-radius:10px}.crm-followup-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 17px;transition:background .16s}.crm-followup-row:hover{background:#fbfdff}.crm-followup-due{display:grid;width:42px;height:44px;place-content:center;border-radius:12px;color:#306ea8;background:#e9f3ff;text-align:center}.crm-followup-due b{font-size:15px;line-height:1}.crm-followup-due span{margin-top:3px;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.crm-followup-due.is-overdue{color:#a94c44;background:#fce8e5}.crm-followup-copy{gap:5px}.crm-followup-copy-top{display:flex;align-items:center;gap:6px;min-width:0}.crm-followup-copy .status-chip{padding:4px 7px;font-size:8px}.crm-followup-viewed{padding:4px 7px;border-radius:99px;color:#177158;background:#e6f6ee;font-size:8px;font-weight:850}.crm-followup-copy strong{overflow:hidden;color:#314056;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.crm-followup-copy small{display:flex;gap:6px;overflow:hidden;align-items:center;white-space:nowrap}.crm-followup-copy small b{overflow:hidden;color:#637286;text-overflow:ellipsis}.crm-followup-copy small a{overflow:hidden;text-overflow:ellipsis}.crm-commitment-actions{flex-wrap:nowrap;align-items:center;padding:0}.crm-followup-done{min-height:32px;padding:7px 10px;border:0;border-radius:8px;color:#177158;background:#e6f6ee;font:inherit;font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer}.crm-followup-done:hover{background:#d5f1e1}.crm-followup-more{position:relative}.crm-followup-more>summary{padding:7px 4px;color:#236dbc;font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer;list-style:none}.crm-followup-more>summary::-webkit-details-marker{display:none}.crm-followup-more[open]>summary{display:none}.crm-followup-more .crm-commitment-reschedule{position:absolute;z-index:5;top:-8px;right:-3px;display:grid;grid-template-columns:1fr auto;gap:7px;min-width:220px;padding:10px;border:1px solid #d9e4ef;border-radius:11px;background:#fff;box-shadow:0 12px 28px rgba(31,52,80,.17)}.crm-followup-more .crm-commitment-reschedule label{font-size:8px}.crm-followup-more .crm-commitment-reschedule input{width:100%;height:32px}.crm-followup-more .crm-commitment-reschedule .button{min-height:32px;margin-top:12px;padding:5px 7px;font-size:9px}.crm-commitment-cancel{display:grid;width:28px;min-height:28px;padding:0;place-items:center;border-radius:8px;font-size:16px;line-height:1}.crm-followup-empty{display:grid;justify-items:center;gap:7px;padding:48px 22px;color:#7b8899;text-align:center}.crm-followup-empty i{display:grid;width:38px;height:38px;place-items:center;border-radius:13px;color:#2d75b8;background:#e8f2ff;font-size:18px;font-style:normal}.crm-followup-empty strong{color:#3c4a60;font-size:13px}.crm-followup-empty span{max-width:260px;font-size:10px;line-height:1.5}.crm-followup-empty.compact{padding:28px 15px}.crm-followup-empty.compact i{width:32px;height:32px;border-radius:11px;font-size:15px}@media(max-width:900px){.crm-followup-workspace{grid-template-columns:1fr}.crm-followup-sidebar{grid-template-columns:1fr 1fr}}@media(max-width:620px){.crm-followup-hero{align-items:flex-start;min-height:0;padding:24px}.crm-followup-hero-signal{width:100%;min-width:0}.crm-followup-metrics{gap:9px}.crm-followup-metric{display:grid;gap:7px;padding:12px}.crm-followup-metric .metric-icon{width:31px;height:31px;border-radius:10px}.crm-followup-metric strong{font-size:21px}.crm-followup-metric p{display:none}.crm-followup-workspace,.crm-followup-sidebar{grid-template-columns:1fr}.crm-followup-panel>header{padding:16px}.crm-followup-row{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px}.crm-followup-due{width:38px;height:40px;border-radius:11px}.crm-followup-row .crm-commitment-actions{grid-column:1/-1;justify-content:flex-start;padding-left:48px}.crm-followup-more .crm-commitment-reschedule{right:auto;left:0}.crm-followup-copy strong{font-size:12px}.crm-followup-copy small{font-size:9px}}
.legend-google { background: #1a73e8; }
.legend-task { background: #a142f4; }
.legend-reminder { background: #f9ab00; }

/* Operating compass */
.compass-hero { display:flex; align-items:center; justify-content:space-between; gap:30px; min-height:210px; padding:34px 38px; border-radius:18px; color:#fff; background:radial-gradient(circle at 85% 20%,#a142f4 0,transparent 28%),linear-gradient(130deg,#182b62,#35206e); box-shadow:0 12px 30px rgba(30,43,91,.2); }
.compass-hero .eyebrow { color:#c9dcff; }.compass-hero h1 { margin:4px 0 10px; font-size:32px; }.compass-hero p:not(.eyebrow) { max-width:640px; margin:0; color:#eef3ff; font-size:15px; line-height:1.55; }
.compass-north { display:grid; width:122px; height:122px; flex:0 0 auto; place-content:center; border:1px solid rgba(255,255,255,.32); border-radius:50%; background:rgba(255,255,255,.1); text-align:center; }.compass-north span { font-size:38px; font-weight:800; }.compass-north small { color:#d9e7ff; font-size:10px; text-transform:uppercase; letter-spacing:.8px; }
.compass-anchor { display:flex; align-items:center; gap:14px; margin:18px 0; padding:15px 19px; border:1px solid #d2e3fc; border-radius:12px; background:#eef5ff; color:#174ea6; }.compass-anchor>span { color:#1a73e8; font-size:22px; }.compass-anchor small,.compass-anchor strong { display:block; }.compass-anchor small { font-size:10px; text-transform:uppercase; letter-spacing:.5px; }.compass-anchor strong { margin-top:3px; color:#303846; font-size:13px; }
.compass-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.compass-phase { overflow:hidden; border:1px solid #dadce0; border-radius:14px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.08); }.compass-phase header { display:flex; align-items:center; gap:11px; padding:17px; border-bottom:1px solid #e8eaed; }.compass-phase header>span { display:grid; width:29px; height:29px; place-items:center; border-radius:50%; font-size:10px; font-weight:800; }.compass-phase header small { color:#70757a; font-size:9px; text-transform:uppercase; letter-spacing:.7px; }.compass-phase h2 { margin:2px 0 0; color:#3c4043; font-size:16px; }.compass-phase a { display:grid; grid-template-columns:29px minmax(0,1fr) 12px; align-items:center; gap:9px; padding:13px 15px; color:inherit; text-decoration:none; }.compass-phase a+a { border-top:1px solid #f0f1f2; }.compass-phase a:hover { background:#f8faff; }.compass-phase i { display:grid; width:26px; height:26px; place-items:center; border-radius:7px; font-style:normal; font-size:14px; }.compass-phase strong,.compass-phase small { display:block; }.compass-phase strong { color:#303846; font-size:12px; }.compass-phase small { overflow:hidden; margin-top:2px; color:#80868b; font-size:9px; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }.compass-phase b { color:#9aa0a6; }.compass-phase-now header>span,.compass-phase-now i { color:#174ea6; background:#d2e3fc; }.compass-phase-next header>span,.compass-phase-next i { color:#7b1fa2; background:#f3e8fd; }.compass-phase-later header>span,.compass-phase-later i { color:#5f6368; background:#f1f3f4; }.compass-rule { margin-top:18px; padding:24px 28px; border-left:4px solid #a142f4; border-radius:0 12px 12px 0; background:#fff; }.compass-rule h2 { max-width:820px; margin:7px 0 17px; color:#3c4043; font-size:17px; line-height:1.5; }

/* Compass dashboard: decisions at a glance, rather than a second text plan. */
.compass-dashboard-hero { display:flex; align-items:stretch; justify-content:space-between; gap:24px; padding:32px 36px; border-radius:18px; color:#fff; background:radial-gradient(circle at 87% 12%,#a142f4 0,transparent 28%),linear-gradient(135deg,#142957,#30206d); box-shadow:0 12px 30px rgba(30,43,91,.2); }.compass-dashboard-hero .eyebrow { color:#c9dcff; }.compass-dashboard-hero h1 { margin:5px 0 9px; font-size:32px; letter-spacing:-.6px; }.compass-dashboard-hero p:not(.eyebrow) { max-width:610px; margin:0 0 20px; color:#eef3ff; line-height:1.55; }.compass-dashboard-hero .button { color:#174ea6; background:#fff; box-shadow:none; }.compass-hero-metrics { display:grid; grid-template-columns:repeat(2,minmax(96px,1fr)); align-self:center; gap:10px; }.compass-hero-metrics span,.compass-hero-metrics a { display:grid; min-height:93px; place-content:center; padding:10px; border:1px solid rgba(255,255,255,.25); border-radius:13px; background:rgba(255,255,255,.1); color:inherit; text-align:center; text-decoration:none; }.compass-hero-metrics a:hover { border-color:rgba(255,255,255,.6); background:rgba(255,255,255,.18); transform:translateY(-1px); }.compass-hero-metrics b { font-size:29px; line-height:1; }.compass-hero-metrics small { margin-top:7px; color:#dce7ff; font-size:9px; text-transform:uppercase; letter-spacing:.55px; }
.compass-action-card { display:flex; align-items:center; justify-content:space-between; gap:22px; margin:18px 0 25px; padding:20px 24px; border:1px solid #d2e3fc; border-radius:14px; background:linear-gradient(100deg,#eef5ff,#fbfdff); }.compass-action-card h2 { margin:4px 0 5px; color:#174ea6; font-size:20px; }.compass-action-card p:not(.eyebrow) { margin:0; color:#5f6368; font-size:12px; }.compass-action-card .button { flex:0 0 auto; }
.compass-section-heading { display:flex; align-items:end; justify-content:space-between; gap:16px; margin:0 0 12px; }.compass-section-heading h2 { margin:4px 0 0; color:#303846; font-size:20px; }.compass-section-heading>span { padding:7px 10px; border-radius:999px; color:#174ea6; background:#d2e3fc; font-size:11px; font-weight:800; }.compass-focus-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.compass-focus-card { display:grid; grid-template-columns:37px minmax(0,1fr) 12px; gap:12px; align-items:start; min-height:142px; padding:18px; border:1px solid #dadce0; border-top:4px solid #1a73e8; border-radius:14px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.08); color:inherit; text-decoration:none; transition:transform .15s ease,box-shadow .15s ease; }.compass-focus-card:hover { transform:translateY(-2px); box-shadow:0 7px 18px rgba(60,64,67,.14); }.compass-focus-card i { display:grid; width:36px; height:36px; place-items:center; border-radius:10px; font-style:normal; font-size:18px; }.compass-focus-card small { color:#70757a; font-size:9px; text-transform:uppercase; letter-spacing:.55px; }.compass-focus-card h3 { margin:4px 0 7px; color:#303846; font-size:16px; }.compass-focus-card p { margin:0; color:#5f6368; font-size:12px; line-height:1.45; }.compass-focus-card>b { align-self:center; color:#9aa0a6; }.compass-focus-blue { border-top-color:#1a73e8; }.compass-focus-blue i { color:#174ea6; background:#d2e3fc; }.compass-focus-purple { border-top-color:#a142f4; }.compass-focus-purple i { color:#7627bb; background:#f3e8fd; }.compass-focus-green { border-top-color:#188038; }.compass-focus-green i { color:#137333; background:#ceead6; }
.compass-lower-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:16px; margin-top:18px; }.compass-lower-grid article { overflow:hidden; border:1px solid #dadce0; border-radius:14px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.08); }.compass-lower-grid header { padding:17px 18px 12px; border-bottom:1px solid #edf0f2; }.compass-lower-grid h2 { margin:4px 0 0; color:#303846; font-size:17px; }.compass-blockers>div { display:grid; grid-template-columns:25px minmax(0,1fr); gap:10px; padding:12px 17px; }.compass-blockers>div+div { border-top:1px solid #f0f1f2; }.compass-blockers>div>span { display:grid; width:22px; height:22px; place-items:center; border-radius:50%; color:#b06000; background:#feefc3; font-weight:800; }.compass-blockers p { margin:0; color:#5f6368; font-size:11px; line-height:1.45; }.compass-blockers strong { display:block; margin-bottom:2px; color:#3c4043; font-size:12px; }.compass-queue a { display:grid; grid-template-columns:27px minmax(0,1fr) 12px; gap:9px; align-items:center; padding:12px 17px; color:inherit; text-decoration:none; }.compass-queue a+a { border-top:1px solid #f0f1f2; }.compass-queue a:hover { background:#f8faff; }.compass-queue i { display:grid; width:25px; height:25px; place-items:center; border-radius:7px; color:#5f6368; background:#f1f3f4; font-style:normal; font-size:13px; }.compass-queue span { overflow:hidden; color:#3c4043; font-size:12px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }.compass-queue b { color:#9aa0a6; }

.compass-tabs { display:flex; gap:7px; margin:0 0 16px; }.compass-tabs a { padding:8px 13px; border:1px solid #dadce0; border-radius:999px; color:#5f6368; background:#fff; font-size:12px; font-weight:700; text-decoration:none; }.compass-tabs a:hover { background:#f8faff; }.compass-tabs a.is-active { border-color:#1a73e8; color:#fff; background:#1a73e8; }.compass-dashboard-hero { margin-top:0; }.compass-hero-metrics { grid-template-columns:repeat(3,minmax(84px,1fr)); }.compass-empty { padding:28px; border:1px dashed #9bbcff; border-radius:14px; background:#f8fbff; }.compass-empty h2 { margin:0 0 7px; color:#174ea6; }.compass-empty p { margin:0 0 17px; color:#5f6368; }.compass-clear>span { color:#137333!important; background:#ceead6!important; }
.mind-map-intro,.compass-manage-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:8px 0 22px; }.mind-map-intro h1,.compass-manage-heading h1 { margin:4px 0 8px; color:#303846; font-size:28px; }.mind-map-intro p,.compass-manage-heading p { max-width:680px; margin:0; color:#5f6368; }.mind-map { padding:28px; border:1px solid #d2e3fc; border-radius:18px; background:radial-gradient(circle at center,#f4f8ff 0,transparent 36%),#fff; }.mind-map-goal { max-width:430px; margin:0 auto 30px; padding:19px 24px; border-radius:15px; color:#fff; background:linear-gradient(135deg,#142957,#43238a); box-shadow:0 8px 19px rgba(30,43,91,.18); text-align:center; }.mind-map-goal small,.mind-map-goal strong { display:block; }.mind-map-goal small { margin-bottom:5px; color:#cfe0ff; font-size:10px; text-transform:uppercase; letter-spacing:.7px; }.mind-map-goal strong { font-size:15px; line-height:1.4; }.mind-map-branches { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }.mind-map-branch { position:relative; padding-top:16px; }.mind-map-branch:before { position:absolute; top:0; left:50%; width:1px; height:16px; background:#bac8de; content:""; }.mind-map-node { display:grid; grid-template-columns:33px minmax(0,1fr) 12px; gap:9px; align-items:center; padding:13px; border:1px solid #dadce0; border-radius:13px; background:#fff; color:inherit; text-decoration:none; box-shadow:0 1px 3px rgba(60,64,67,.08); }.mind-map-branch.is-focus .mind-map-node { border:2px solid #1a73e8; }.mind-map-node i { display:grid; width:32px; height:32px; place-items:center; border-radius:9px; font-style:normal; background:#f1f3f4; }.mind-map-node small,.mind-map-node strong { display:block; }.mind-map-node small { color:#70757a; font-size:9px; text-transform:uppercase; letter-spacing:.5px; }.mind-map-node strong { overflow:hidden; margin-top:2px; color:#303846; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }.mind-map-node b { color:#9aa0a6; }.mind-map-projects { display:grid; gap:6px; margin:11px 0 0 17px; padding-left:15px; border-left:1px solid #c9d5e8; }.mind-map-projects a { overflow:hidden; color:#5f6368; font-size:11px; line-height:1.35; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }.mind-map-projects a:hover { color:#174ea6; }.mind-map-empty { color:#1a73e8!important; }.mind-map-project-dot { display:inline-block; width:8px; height:8px; margin-right:6px; border-radius:50%; background:#9aa0a6; }.mind-map-project-active { background:#1a73e8; }.mind-map-project-blocked { background:#f9ab00; }.mind-map-project-done { background:#188038; }
.focus-counter { padding:8px 12px; border-radius:999px; color:#174ea6; background:#d2e3fc; font-size:11px; font-weight:800; }.compass-manage-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:17px; }.compass-manage-row { display:grid; grid-template-columns:31px minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:13px 0; }.compass-manage-row+.compass-manage-row { border-top:1px solid #edf0f2; }.compass-manage-row i { display:grid; width:30px; height:30px; place-items:center; border-radius:8px; background:#f1f3f4; font-style:normal; }.compass-manage-row strong,.compass-manage-row small { display:block; }.compass-manage-row strong { color:#303846; font-size:13px; }.compass-manage-row small { margin-top:2px; color:#80868b; font-size:10px; }.focus-toggle { padding:7px 9px; border:1px solid #dadce0; border-radius:999px; color:#5f6368; background:#fff; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }.focus-toggle.is-active { border-color:#1a73e8; color:#fff; background:#1a73e8; }.direction-workspace-hero { display:flex; align-items:center; gap:18px; padding:26px; border:1px solid #d2e3fc; border-radius:16px; background:#f8fbff; }.direction-workspace-hero>i { display:grid; width:58px; height:58px; place-items:center; border-radius:15px; color:#174ea6; background:#d2e3fc; font-style:normal; font-size:27px; }.direction-workspace-hero>div { flex:1; }.direction-workspace-hero h1 { margin:4px 0 7px; color:#303846; font-size:27px; }.direction-workspace-hero p:not(.eyebrow) { margin:0; color:#5f6368; }.direction-project-list>div { display:grid; grid-template-columns:10px minmax(0,1fr); gap:9px; padding:12px 0; }.direction-project-list>div+div { border-top:1px solid #edf0f2; }.direction-project-list p { margin:0; }.direction-project-list strong,.direction-project-list small { display:block; }.direction-project-list strong { color:#303846; font-size:13px; }.direction-project-list small,.empty-copy { color:#70757a; font-size:11px; }.direction-edit { margin-top:17px; }

/* Visual graph: root goal → direction cubes → project cubes. */
.mindmap-topbar { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:6px 0 18px; }.mindmap-topbar h1 { margin:4px 0 0; color:#202124; font-size:26px; letter-spacing:-.35px; }.mindmap-canvas { position:relative; display:grid; grid-template-columns:minmax(220px,.72fr) 92px minmax(0,1.5fr); min-height:560px; overflow:hidden; padding:32px; border:1px solid #dbe5f3; border-radius:20px; background:radial-gradient(circle at 17% 50%,rgba(66,133,244,.10),transparent 24%),linear-gradient(rgba(220,229,240,.52) 1px,transparent 1px),linear-gradient(90deg,rgba(220,229,240,.52) 1px,transparent 1px),#fbfdff; background-size:auto,24px 24px,24px 24px,auto; }.mindmap-root-wrap { display:grid; place-items:center; }.mindmap-root { position:relative; display:grid; width:190px; min-height:190px; place-content:center; padding:22px; border:2px solid #315dcc; border-radius:24px; color:#fff; background:linear-gradient(145deg,#183e88,#6f3dc2); box-shadow:0 16px 36px rgba(51,73,145,.26); text-align:center; }.mindmap-root:after { position:absolute; top:50%; right:-92px; width:92px; border-top:2px solid #8ba4ce; content:""; }.mindmap-root small,.mindmap-root strong { position:relative; z-index:1; display:block; }.mindmap-root small { color:#d8e5ff; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.65px; }.mindmap-root strong { margin-top:8px; font-size:14px; line-height:1.45; }.mindmap-root em { position:absolute; right:-13px; bottom:-13px; display:grid; width:40px; height:40px; place-items:center; border:4px solid #fff; border-radius:14px; color:#234a98; background:#d8e6ff; font-size:21px; font-style:normal; }.mindmap-root-orbit { position:absolute; border:1px solid rgba(255,255,255,.26); border-radius:50%; }.orbit-one { inset:12px; }.orbit-two { inset:26px; }.mindmap-trunk { align-self:stretch; width:2px; margin:auto; background:#8ba4ce; }.mindmap-tree { display:grid; align-content:center; gap:11px; }.mindmap-lane { display:grid; grid-template-columns:35px minmax(170px,.8fr) minmax(165px,1fr); align-items:center; gap:0; min-height:65px; }.mindmap-branch-line { height:2px; background:#8ba4ce; }.mindmap-direction-node { display:grid; grid-template-columns:36px minmax(0,1fr) 13px; gap:10px; align-items:center; min-height:64px; padding:11px; border:1px solid #cbd8ea; border-radius:13px; background:#fff; box-shadow:0 3px 10px rgba(60,64,67,.08); color:inherit; text-decoration:none; transition:transform .16s ease,box-shadow .16s ease; }.mindmap-direction-node:hover { transform:translateX(3px); box-shadow:0 8px 18px rgba(60,64,67,.15); }.mindmap-lane.is-focus .mindmap-direction-node { border:2px solid #1a73e8; box-shadow:0 0 0 4px rgba(26,115,232,.12); }.mindmap-direction-node i { display:grid; width:34px; height:34px; place-items:center; border-radius:10px; color:#174ea6; background:#d2e3fc; font-style:normal; font-size:16px; }.mindmap-direction-node small,.mindmap-direction-node strong { display:block; }.mindmap-direction-node small { color:#6a7280; font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.55px; }.mindmap-direction-node strong { overflow:hidden; margin-top:3px; color:#303846; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.mindmap-direction-node b { color:#6e86ae; }.mindmap-card-stack { display:grid; gap:6px; margin-left:24px; padding-left:22px; border-left:2px solid #c7d5e8; }.mindmap-card-node { display:grid; grid-template-columns:8px minmax(0,1fr) 11px; gap:8px; align-items:center; min-height:42px; padding:6px 8px; border:1px solid #dbe3ee; border-radius:9px; color:#4e5868; background:#fff; box-shadow:0 1px 2px rgba(60,64,67,.05); text-decoration:none; transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease; }.mindmap-card-node:hover { border-color:#8eb6f2; background:#f5f9ff; box-shadow:0 4px 10px rgba(60,64,67,.10); transform:translateX(2px); }.mindmap-card-state { width:7px; height:7px; border-radius:999px; background:#9aa0a6; }.mindmap-card-copy { min-width:0; }.mindmap-card-copy small { overflow:hidden; color:#7a8390; font-size:8px; font-weight:800; letter-spacing:.25px; text-overflow:ellipsis; white-space:nowrap; }.mindmap-card-copy strong { overflow:hidden; margin-top:2px; color:#303846; font-size:10px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }.mindmap-card-node b { color:#93a0b4; font-size:10px; }.card-state-in-progress .mindmap-card-state,.card-state-in-progress { background-color:#1a73e8; }.card-state-queued .mindmap-card-state,.card-state-planned .mindmap-card-state { background:#f9ab00; }.card-state-proposed .mindmap-card-state { background:#a142f4; }.card-state-completed .mindmap-card-state { background:#188038; }.mindmap-card-empty { border-style:dashed; color:#1a73e8; }.mindmap-card-empty>span:first-child { color:#1a73e8; font-weight:800; }.mindmap-card-more { padding:1px 3px; color:#1967d2; font-size:9px; font-weight:800; text-decoration:none; }.mindmap-card-more:hover { text-decoration:underline; }.direction-card-links { margin-top:17px; }.direction-card-link { color:inherit; text-decoration:none; }.direction-card-link:hover strong { color:#1967d2; }.direction-card-links .card-state-in-progress,.direction-card-links .card-state-queued,.direction-card-links .card-state-planned,.direction-card-links .card-state-proposed,.direction-card-links .card-state-completed { background-color:inherit; }.direction-card-links .card-state-in-progress { background:#1a73e8; }.direction-card-links .card-state-queued,.direction-card-links .card-state-planned { background:#f9ab00; }.direction-card-links .card-state-proposed { background:#a142f4; }.direction-card-links .card-state-completed { background:#188038; }.mindmap-hint { margin:10px 0 0; color:#6a7280; font-size:10px; text-align:center; }
.calendar-visual-strip { display:grid; grid-template-columns:1fr 1fr auto; gap:10px; margin:0 0 15px; }.calendar-stream { display:flex; align-items:center; gap:10px; min-height:58px; padding:10px 13px; border:1px solid #dbe4f0; border-radius:12px; background:#fff; box-shadow:0 1px 3px rgba(60,64,67,.07); }.calendar-stream-icon { display:grid; width:32px; height:32px; flex:0 0 auto; place-items:center; border-radius:10px; font-size:16px; }.calendar-stream small,.calendar-stream strong { display:block; }.calendar-stream small { color:#717b8d; font-size:9px; font-weight:750; text-transform:uppercase; letter-spacing:.45px; }.calendar-stream strong { margin-top:3px; color:#303846; font-size:12px; }.calendar-stream i { width:7px; height:7px; margin-left:auto; border-radius:50%; }.calendar-stream-handyman .calendar-stream-icon { color:#174ea6; background:#d2e3fc; }.calendar-stream-handyman i { background:#1a73e8; }.calendar-stream-assistant .calendar-stream-icon { color:#681da8; background:#ead8ff; }.calendar-stream-assistant i { background:#a142f4; }.calendar-add-shortcut { display:grid; min-width:112px; place-items:center; border:1px dashed #a9bfdc; border-radius:12px; color:#1967d2; background:#f8fbff; font-size:11px; font-weight:800; text-decoration:none; }.calendar-add-shortcut:hover { border-style:solid; background:#eaf2ff; }

@media (max-width: 1100px) {
  .calendar-shell { grid-template-columns: 1fr; }
  .calendar-sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .content-shell:has(.gcal-toolbar) { padding: 14px 14px 26px; }
  .gcal-toolbar { flex-wrap: wrap; gap: 10px 14px; padding: 2px 0; }
  .gcal-brand { min-width: 0; flex: 1; }
  .gcal-brand h1 { font-size: 20px; }
  .gcal-toolbar-end { order: 3; width: 100%; margin-left: 0; justify-content: space-between; }
  .calendar-context { margin: 4px 0 12px; }
  .calendar-day { min-height: 112px; }
  .compass-hero { min-height:0; padding:25px; }.compass-hero h1 { font-size:26px; }.compass-north { width:92px; height:92px; }.compass-north span { font-size:30px; }.compass-flow { grid-template-columns:1fr; }.compass-dashboard-hero { padding:25px; }.compass-dashboard-hero h1 { font-size:26px; }.compass-focus-grid,.compass-lower-grid,.compass-manage-grid { grid-template-columns:1fr; }.compass-hero-metrics { min-width:205px; }.mind-map-branches { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .gcal-toolbar { display: grid; grid-template-columns: 1fr auto; }
  .gcal-brand { grid-column: 1 / -1; }
  .month-navigation { justify-content: flex-start; }
  .today-button { flex: 0 0 auto !important; }
  .gcal-toolbar-end { display: flex; width: auto; order: initial; justify-content: flex-end; }
  .gcal-toolbar-end .source-status { display: none; }
  .calendar-view-switch { display: none; }
  .calendar-context { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
  .calendar-month-view { display: none !important; }
  .calendar-agenda { display: grid !important; }
  .calendar-sidebar { grid-template-columns: 1fr; }
  .agenda-day { grid-template-columns: 1fr; border-radius: 9px; }
  .agenda-day > header { padding: 10px 13px; border-right: 0; border-bottom: 1px solid #dadce0; }
  .agenda-item { grid-template-columns: 48px 7px minmax(0,1fr) 10px; gap: 8px; padding: 11px 12px; }
  .compass-dashboard-hero { display:block; }.compass-hero-metrics { margin-top:21px; min-width:0; }.compass-action-card { display:block; padding:18px; }.compass-action-card .button { margin-top:15px; }.compass-section-heading h2 { font-size:18px; }.compass-focus-card { min-height:0; }.compass-anchor { align-items:flex-start; }.mind-map-intro,.compass-manage-heading { display:block; }.mind-map-intro .button { margin-top:15px; }.mind-map { padding:17px; }.mind-map-branches { grid-template-columns:1fr; }.compass-manage-heading .focus-counter { display:inline-block; margin-top:14px; }.compass-manage-row { grid-template-columns:31px minmax(0,1fr) auto; }.compass-manage-row form { grid-column:2 / -1; }.direction-workspace-hero { display:block; }.direction-workspace-hero>i { margin-bottom:12px; }.direction-workspace-hero .button { display:inline-block; margin-top:15px; }.mindmap-topbar { display:block; }.mindmap-topbar .button { display:inline-block; margin-top:14px; }.mindmap-canvas { display:block; min-height:0; padding:22px 16px; }.mindmap-root { width:auto; min-height:142px; margin:0 auto 24px; }.mindmap-root:after,.mindmap-trunk { display:none; }.mindmap-tree { gap:16px; }.mindmap-lane { grid-template-columns:1fr; gap:8px; }.mindmap-branch-line { width:2px; height:15px; margin-left:28px; }.mindmap-project-stack { margin-left:28px; }.calendar-visual-strip { grid-template-columns:1fr; }.calendar-add-shortcut { min-height:42px; }
}

/* Follow-up dashboard v2 final cascade — Safari must use these mobile rules. */
.crm-followup-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.crm-followup-row-main{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;min-width:0;flex:1}.crm-followup-copy strong{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.crm-followup-copy small{display:flex;flex-wrap:wrap;overflow:visible;white-space:normal}.crm-followup-copy small b,.crm-followup-copy small a{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal}.crm-commitment-actions{display:flex;flex:0 0 auto;align-items:center;gap:7px}.crm-followup-open{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid #cfe0f0;border-radius:9px;color:#216fba;background:#f6faff;font-size:10px;font-weight:850;text-decoration:none}.crm-followup-menu{position:relative}.crm-followup-menu>summary{display:grid;width:32px;height:32px;place-items:center;border:1px solid #d7e1ec;border-radius:9px;color:#617289;background:#fff;font-size:11px;font-weight:900;letter-spacing:1px;cursor:pointer;list-style:none}.crm-followup-menu>summary::-webkit-details-marker{display:none}.crm-followup-menu[open]>summary{color:#1f6eb9;border-color:#9ec8ef;background:#edf6ff}.crm-followup-menu-panel{position:absolute;z-index:20;top:39px;right:0;display:grid;gap:8px;width:245px;padding:10px;border:1px solid #d8e3ef;border-radius:13px;background:#fff;box-shadow:0 16px 35px rgba(28,52,82,.2)}.crm-followup-menu-panel form{margin:0}.crm-followup-menu-panel .crm-followup-done,.crm-followup-menu-panel .crm-commitment-cancel{width:100%;min-height:37px;border-radius:9px;font-size:10px;text-align:left}.crm-followup-menu-panel .crm-followup-done{padding:9px 11px}.crm-followup-menu-panel .crm-commitment-cancel{padding:9px 11px;color:#a54841;background:#fff0ee}.crm-followup-menu-panel .crm-commitment-reschedule{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end;padding:9px;border:1px solid #e2e8ef;border-radius:9px;background:#fafcff}.crm-followup-menu-panel .crm-commitment-reschedule label{display:grid;gap:4px;color:#718096;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.crm-followup-menu-panel .crm-commitment-reschedule input{width:100%;height:34px;padding:5px 7px;border:1px solid #d7e1ec;border-radius:7px;background:#fff;font:inherit;font-size:10px}.crm-followup-menu-panel .crm-commitment-reschedule .button{min-height:34px;margin:0;padding:6px 9px;font-size:9px}.crm-followup-due{width:44px;height:46px}.crm-followup-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:620px){.crm-followup-hero{margin-bottom:12px;padding:19px;border-radius:18px}.crm-followup-hero h1{font-size:31px}.crm-followup-hero p:not(.eyebrow){font-size:11px}.crm-followup-hero-signal{display:none}.crm-followup-metrics{gap:8px;margin-bottom:12px}.crm-followup-metric{display:grid;grid-template-columns:1fr;gap:5px;padding:11px 10px;border-radius:13px}.crm-followup-metric .metric-icon{width:29px;height:29px;font-size:14px}.crm-followup-metric small{font-size:8px;line-height:1.2}.crm-followup-metric strong{font-size:22px}.crm-followup-workspace{gap:12px}.crm-followup-sidebar{gap:12px}.crm-followup-panel{border-radius:14px}.crm-followup-panel>header{padding:15px 16px}.crm-followup-panel>header h2{font-size:17px}.crm-followup-panel>header small{font-size:9px}.crm-followup-row{align-items:flex-start;padding:14px 15px}.crm-followup-row-main{grid-template-columns:38px minmax(0,1fr);gap:10px}.crm-followup-due{width:38px;height:42px;border-radius:10px}.crm-followup-due b{font-size:14px}.crm-followup-copy{gap:6px;padding-top:1px}.crm-followup-copy-top{gap:5px}.crm-followup-copy .status-chip,.crm-followup-viewed{padding:3px 6px;font-size:7px}.crm-followup-copy strong{font-size:12px;line-height:1.35}.crm-followup-copy small{gap:4px;font-size:9px;line-height:1.35}.crm-commitment-actions{gap:5px;padding:0}.crm-followup-open{min-height:30px;padding:0 8px;font-size:9px}.crm-followup-menu>summary{width:30px;height:30px;border-radius:8px}.crm-followup-menu-panel{position:fixed;top:auto;right:15px;bottom:18px;width:calc(100vw - 30px);max-width:340px;padding:12px;border-radius:14px;box-shadow:0 17px 44px rgba(23,42,67,.28)}.crm-followup-menu-panel .crm-commitment-reschedule{grid-template-columns:minmax(0,1fr) auto}.crm-followup-empty{padding:32px 16px}.crm-followup-empty span{font-size:9px}}
/* CRM filters: one compact bar shared by clients, leads, deals, quotes and follow-up. */
.crm-filter-bar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 16px;padding:13px 14px;border:1px solid #e0e8f1;border-radius:15px;background:#fff;box-shadow:0 7px 18px rgba(36,55,82,.045)}.crm-filter-fields{display:flex;flex:1;flex-wrap:wrap;gap:9px}.crm-filter-field{display:grid;gap:4px;min-width:110px;color:#778598;font-size:9px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}.crm-filter-field:first-child{min-width:min(260px,100%);flex:1}.crm-filter-control{width:100%;min-height:36px;border:1px solid #d7e1eb;border-radius:9px;padding:7px 9px;color:#35445b;background:#fbfdff;font:inherit;font-size:12px;letter-spacing:normal;text-transform:none}.crm-filter-control:focus{outline:0;border-color:#6c9ee0;box-shadow:0 0 0 3px rgba(63,129,221,.12)}.crm-filter-actions{display:flex;align-items:center;gap:10px}.crm-filter-submit{min-height:36px;padding:8px 12px;font-size:11px}.crm-filter-reset{color:#64758c;font-size:10px;font-weight:850;text-decoration:none}.crm-filter-reset:hover{color:#236dbc;text-decoration:underline}@media(max-width:620px){.crm-filter-bar{display:grid;gap:10px;margin-bottom:12px;padding:12px;border-radius:13px}.crm-filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.crm-filter-field:first-child{grid-column:1/-1;min-width:0}.crm-filter-field{min-width:0}.crm-filter-actions{justify-content:space-between}.crm-filter-submit{flex:1}}

/* Deals index: compact table first, the board remains a separate focused view. */
.crm-deals-index-hero{margin-bottom:12px}.crm-view-switch{display:inline-flex;gap:5px;margin:0 0 15px;padding:4px;border:1px solid #dce6f0;border-radius:12px;background:#f7faff}.crm-view-switch a{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border-radius:8px;color:#65758b;font-size:11px;font-weight:850;text-decoration:none}.crm-view-switch a span{font-size:14px}.crm-view-switch a.is-active{color:#fff;background:#236fbe;box-shadow:0 5px 12px rgba(35,111,190,.22)}.crm-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 10px}.crm-list-toolbar .eyebrow{margin:0 0 3px}.crm-list-toolbar strong{color:#344257;font-size:13px}.crm-column-picker{position:relative}.crm-column-picker>summary{display:inline-flex;align-items:center;gap:8px;min-height:35px;padding:0 12px;border:1px solid #d5e1ed;border-radius:9px;color:#49627d;background:#fff;font-size:10px;font-weight:850;cursor:pointer;list-style:none}.crm-column-picker>summary::-webkit-details-marker{display:none}.crm-column-picker[open]>summary{border-color:#8eb9e2;background:#f3f8fe}.crm-column-picker-panel{position:absolute;z-index:30;right:0;display:grid;gap:8px;width:248px;margin-top:6px;padding:13px;border:1px solid #d6e1ed;border-radius:13px;background:#fff;box-shadow:0 18px 35px rgba(30,55,84,.18)}.crm-column-picker-panel p{margin:0 0 3px;color:#778598;font-size:10px;line-height:1.45}.crm-column-picker-panel label{display:flex;align-items:center;gap:7px;color:#46566d;font-size:11px;font-weight:750}.crm-deals-table-shell{overflow:auto;border:1px solid #dce5ef;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(39,57,80,.05)}.crm-deals-table{width:100%;min-width:1010px;border-collapse:collapse;text-align:left}.crm-deals-table th{padding:12px 13px;border-bottom:1px solid #dfe7f0;color:#7c899b;background:#f8fbfe;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.crm-deals-table td{padding:12px 13px;border-bottom:1px solid #edf1f5;color:#5f6e81;font-size:11px;vertical-align:middle}.crm-deals-table tr:last-child td{border-bottom:0}.crm-deals-table tr:hover td{background:#fbfdff}.crm-deal-cell-main{min-width:205px}.crm-deal-cell-main a{display:grid;gap:5px;color:inherit;text-decoration:none}.crm-deal-cell-main strong{color:#2c3b51;font-size:13px;line-height:1.3}.crm-deal-cell-main small,.crm-deals-table td small{display:block;overflow:hidden;max-width:205px;color:#8794a4;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.crm-deal-client-link{display:block;color:#316baf;font-weight:850;text-decoration:none}.crm-inline-control{width:100%;min-width:108px;min-height:34px;padding:7px 8px;border:1px solid #d8e2ed;border-radius:8px;color:#3c4d63;background:#fff;font:inherit;font-size:10px}.crm-inline-control:focus{outline:0;border-color:#65a0da;box-shadow:0 0 0 3px rgba(53,122,194,.12)}.crm-address-edit{display:block;margin-top:6px}.crm-address-edit .crm-inline-control{min-width:155px}.crm-visit-summary{display:block;color:#207659;font-size:10px;font-weight:850}.crm-visit-missing,.crm-quote-empty{color:#98a4b3;font-size:10px}.crm-quote-reference{display:grid;gap:3px;color:#5c3ca4;font-size:10px;font-weight:850;text-decoration:none}.crm-quote-reference b{color:#1e6eb9;font-size:12px}.crm-deals-table time{color:#8390a0;font-size:9px;white-space:nowrap}.crm-row-save{min-height:32px;padding:7px 9px;border:1px solid #bed5ec;border-radius:8px;color:#236db8;background:#f3f8fe;font:inherit;font-size:9px;font-weight:850;cursor:pointer}.crm-row-save:hover{border-color:#5f9ed8;background:#e9f4ff}.crm-row-open{display:inline-grid;place-items:center;width:31px;height:31px;margin-left:6px;border-radius:8px;color:#60758d;background:#f1f5f9;font-size:15px;font-weight:900;text-decoration:none}.crm-deals-footnote{margin:10px 2px 0;color:#8290a0;font-size:10px;line-height:1.45}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.crm-deals-index-hero{padding:21px}.crm-view-switch{display:flex;width:100%;margin-bottom:12px}.crm-view-switch a{flex:1;justify-content:center}.crm-list-toolbar{align-items:flex-start}.crm-column-picker>summary{white-space:nowrap}.crm-column-picker-panel{position:fixed;right:14px;top:auto;width:min(300px,calc(100vw - 28px))}.crm-deals-table-shell{margin-right:-2px;border-radius:13px}.crm-deals-table{min-width:850px}.crm-deals-table th,.crm-deals-table td{padding:10px}.crm-deals-footnote{padding:0 2px}.crm-row-open{display:none}}

/* CRM Inbox: conversations started by Assistant, never the owner's whole mailbox. */
.crm-email-hero{margin-bottom:14px;background:linear-gradient(125deg,#173d72,#216fbc 58%,#56b9dc)}.crm-email-layout{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:16px;align-items:stretch}.crm-email-layout.is-list-only{grid-template-columns:minmax(0,1fr)}.crm-email-thread-list{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;min-height:680px;padding:0;overflow:hidden}.crm-email-thread-list.is-list-only{min-height:0}.crm-email-thread-list>header,.crm-email-thread-list>footer{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid #e7edf4}.crm-email-thread-list>footer{border-top:1px solid #e7edf4;border-bottom:0}.crm-email-thread-list h2{margin:3px 0 0;color:#304057;font-size:17px}.crm-email-thread-list header>span{display:grid;min-width:28px;height:28px;place-items:center;border-radius:9px;color:#236db4;background:#e6f1ff;font-size:11px;font-weight:900}.crm-email-thread-list footer a{color:#2c70b5;font-size:11px;font-weight:850;text-decoration:none}.crm-email-thread-scroll{overflow:auto}.crm-email-thread-list.is-list-only .crm-email-thread-scroll{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.crm-email-thread{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;column-gap:10px;align-items:start;padding:13px 14px;border-bottom:1px solid #edf1f5;color:inherit;text-decoration:none;transition:background .16s ease}.crm-email-thread-list.is-list-only .crm-email-thread:nth-child(odd){border-right:1px solid #edf1f5}.crm-email-thread:hover{background:#f7fbff}.crm-email-thread.is-active{background:#eaf4ff;box-shadow:inset 3px 0 #2f80ed}.crm-email-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#1d69b1;background:#dceeff;font-size:12px;font-weight:900}.crm-email-thread-copy{display:grid;gap:3px;min-width:0}.crm-email-thread-copy strong{overflow:hidden;color:#334258;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.crm-email-thread-copy b{overflow:hidden;color:#5f6d7f;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.crm-email-thread-copy small{overflow:hidden;color:#8995a4;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.crm-email-thread-status{display:grid;justify-items:end;gap:7px;min-width:37px}.crm-email-thread time{color:#8a96a5;font-size:9px;white-space:nowrap}.crm-email-needs-reply{display:grid;width:15px;height:15px;place-items:center;border-radius:50%;color:#fff;background:#e1584d;font-size:10px;font-style:normal;font-weight:900}.crm-email-empty-list{padding:30px 18px;color:#7c8999;text-align:center}.crm-email-empty-list strong{color:#4f5e73;font-size:13px}.crm-email-empty-list p{margin:7px 0 0;font-size:11px;line-height:1.5}.crm-email-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px 13px;border-top:1px solid #edf1f5;background:#fbfdff;color:#76869a;font-size:10px;font-weight:850}.crm-email-pagination a{color:#2871b8;text-decoration:none}.crm-email-pagination a:last-child{text-align:right}.crm-email-pagination b{color:#55667b;font-size:10px;white-space:nowrap}.crm-email-conversation{min-width:0;padding:0;overflow:hidden}.crm-email-conversation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:21px 23px;border-bottom:1px solid #e7edf4;background:linear-gradient(135deg,#fff 0%,#f6faff 100%)}.crm-email-conversation-header>div{min-width:0}.crm-email-conversation-header h2{margin:3px 0 6px;color:#2c3c52;font-size:20px;letter-spacing:-.35px;overflow-wrap:anywhere}.crm-email-conversation-header p{margin:0;color:#7b8899;font-size:11px}.crm-email-conversation-header a{color:#286fb5;font-weight:800;text-decoration:none}.crm-email-task-chip{display:inline-flex;align-items:center;justify-content:center;min-height:29px;padding:0 10px;border-radius:99px;color:#9f453c;background:#fff0ed;font-size:10px;font-weight:900;white-space:nowrap}.crm-email-task-chip.is-done{color:#20755a;background:#e5f6ed}.crm-email-messages{display:grid;min-width:0;max-width:100%;gap:12px;overflow:hidden;padding:21px 23px;background:#f8fafc}.crm-email-message{width:100%;min-width:0;max-width:min(86%,680px);padding:14px 16px;border:1px solid #e1e9f1;border-radius:15px;background:#fff;box-shadow:0 4px 12px rgba(35,54,80,.045)}.crm-email-message.is-inbound{justify-self:start;border-top-left-radius:4px}.crm-email-message.is-sent{justify-self:end;border-color:#cfe4f8;border-top-right-radius:4px;background:#edf7ff}.crm-email-message-meta{display:flex;min-width:0;max-width:100%;align-items:center;justify-content:space-between;gap:14px;margin-bottom:7px;color:#7e8c9e;font-size:9px;font-weight:800}.crm-email-message-meta span{min-width:0;overflow-wrap:anywhere}.crm-email-message-meta time{flex:0 0 auto;white-space:nowrap}.crm-email-message strong{display:block;min-width:0;max-width:100%;margin-bottom:7px;color:#35445a;font-size:12px;overflow-wrap:anywhere;word-break:break-word}.crm-email-message p{min-width:0;max-width:100%;margin:0;color:#58687d;font-size:12px;line-height:1.55;overflow-wrap:anywhere;word-break:break-word}.crm-email-compose{padding:20px 23px;border-top:1px solid #e7edf4;background:#fff}.crm-email-compose>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.crm-email-compose h3{margin:3px 0 0;color:#324257;font-size:17px}.crm-email-compose>header>span{padding:6px 8px;border-radius:8px;color:#34755f;background:#e7f6ed;font-size:9px;font-weight:850}.crm-email-compose-note{margin:0 0 13px;color:#68788d;font-size:11px;line-height:1.55}.crm-email-compose-form{display:grid;gap:8px}.crm-email-compose-form textarea{min-height:145px;resize:vertical}.crm-email-compose-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.crm-email-compose-form>p{margin:1px 0 0;color:#8a97a6;font-size:10px;line-height:1.45}.crm-email-selection-hint{display:flex;align-items:center;gap:13px;margin-top:16px;padding:15px 18px;color:#738196}.crm-email-selection-hint>span{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:11px;color:#417db7;background:#e8f3ff;font-size:16px}.crm-email-selection-hint strong{color:#344359;font-size:12px}.crm-email-selection-hint p{margin:3px 0 0;font-size:10px;line-height:1.5}.crm-email-empty-state{display:grid;justify-items:center;max-width:410px;margin:30px auto;padding:24px;color:#758399;text-align:center}.crm-email-empty-state>span{display:grid;width:54px;height:54px;place-items:center;border-radius:17px;color:#4a88c8;background:#e8f3ff;font-size:24px}.crm-email-empty-state h2{margin:15px 0 8px;color:#344359;font-size:20px}.crm-email-empty-state p{margin:0 0 18px;font-size:12px;line-height:1.6}
@media(max-width:820px){.crm-email-layout{grid-template-columns:1fr}.crm-email-thread-list{min-height:0}.crm-email-thread-scroll,.crm-email-thread-list.is-list-only .crm-email-thread-scroll{display:grid;grid-template-columns:1fr;overflow:visible}.crm-email-thread,.crm-email-thread-list.is-list-only .crm-email-thread{border-right:0;border-bottom:1px solid #edf1f5}.crm-email-thread-list>footer{display:none}.crm-email-conversation-header,.crm-email-messages,.crm-email-compose{padding-left:18px;padding-right:18px}.crm-email-message{max-width:94%}}
@media(max-width:540px){.crm-email-hero{padding:20px}.crm-email-conversation-header{display:grid;gap:11px}.crm-email-task-chip{justify-self:start}.crm-email-messages{padding-top:15px;padding-bottom:15px}.crm-email-message{max-width:100%;padding:13px}.crm-email-compose-actions{display:grid;grid-template-columns:1fr}.crm-email-compose-actions .button{width:100%;text-align:center}.crm-email-thread{flex-basis:81vw}}
.crm-lifecycle-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:13px;overflow-x:auto;padding-bottom:8px}.crm-lifecycle-column{min-height:260px;border:1px solid #dce5ef;border-radius:17px;background:#f8fbff}.crm-lifecycle-column header{display:flex;align-items:center;justify-content:space-between;padding:14px 15px;border-bottom:1px solid #e5edf5;color:#394b63;font-size:12px;font-weight:850}.crm-lifecycle-column header b{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;color:#246dbb;background:#e6f1ff}.crm-lifecycle-column>div{display:grid;gap:9px;padding:10px}.crm-lifecycle-card{display:grid;gap:10px;padding:12px;border:1px solid #dfe8f1;border-radius:13px;background:#fff;box-shadow:0 4px 10px rgba(39,57,80,.04)}.crm-lifecycle-card a{min-width:0;color:inherit;text-decoration:none}.crm-lifecycle-card strong,.crm-lifecycle-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-lifecycle-card strong{color:#33435a;font-size:12px}.crm-lifecycle-card small{margin-top:4px;color:#7a899b;font-size:10px}.crm-lifecycle-card select{width:100%;min-height:33px;border:1px solid #d7e2ee;border-radius:8px;padding:5px 7px;color:#45566d;background:#fbfdff;font-size:11px}.crm-board-empty{margin:10px;color:#8997a8;font-size:11px;text-align:center}.crm-board-limit{margin:2px 3px 5px;color:#76879b;font-size:10px;line-height:1.45;text-align:center}.crm-list-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:10px;padding:10px 13px;border:1px solid #dce5ef;border-radius:12px;background:#fbfdff;color:#738398;font-size:10px;font-weight:850}.crm-list-pagination a{color:#2a70b5;text-decoration:none}.crm-list-pagination a:last-child{text-align:right}.crm-list-pagination b{color:#506177;font-size:10px;white-space:nowrap}@media(max-width:760px){.crm-lifecycle-board{grid-template-columns:repeat(5,minmax(255px,1fr));margin-right:-8px}}
.crm-deals-table-shell{min-width:0;max-width:100%}
/* Keep visually-hidden table labels inside the scrolling table on mobile. */
.crm-deals-table th{position:relative}

/* Sales core: local forecast only, visually distinct from Revenue/payments. */
.crm-sales-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px;padding:28px 30px;border-radius:22px;background:linear-gradient(125deg,#17284f,#2a549a 56%,#7656b9);box-shadow:0 17px 38px rgba(33,56,111,.18);color:#fff}.crm-sales-hero h1{margin:4px 0 8px;color:#fff;font-size:clamp(29px,4vw,42px);letter-spacing:-.045em}.crm-sales-hero .eyebrow{color:#d9ddff}.crm-sales-hero p:not(.eyebrow){max-width:630px;margin:0;color:#e2e9ff;font-size:13px;line-height:1.55}.crm-sales-hero .button{white-space:nowrap}.crm-sales-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.crm-sales-metrics article{display:grid;grid-template-columns:35px minmax(0,1fr);column-gap:10px;align-items:center;min-height:116px;padding:16px;border:1px solid #dfe7f1;border-radius:17px;background:#fff;box-shadow:0 7px 17px rgba(38,55,82,.045)}.crm-sales-metric-icon{display:grid;grid-row:span 3;place-items:center;width:35px;height:35px;border-radius:11px;background:#e7f1ff;color:#2d70ba;font-size:16px;font-weight:900}.crm-sales-metric-icon.is-violet{background:#f0e8ff;color:#7445bd}.crm-sales-metric-icon.is-green{background:#e6f7ee;color:#227656}.crm-sales-metric-icon.is-red{background:#ffece9;color:#b14d45}.crm-sales-metrics small{color:#7e8b9c;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.crm-sales-metrics strong{margin-top:3px;color:#2d3c52;font-size:22px;letter-spacing:-.03em}.crm-sales-metrics p{grid-column:2;margin:3px 0 0;color:#8c98a7;font-size:9px;line-height:1.35}.crm-sales-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.38fr);gap:16px;align-items:start}.crm-sales-priority{padding:0;overflow:hidden}.crm-sales-priority>header{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:20px 21px 14px;border-bottom:1px solid #e7edf4}.crm-sales-priority h2,.crm-sales-guide h2{margin:3px 0 0;color:#304058;font-size:20px}.crm-sales-priority>header>span{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:10px;color:#6f46b2;background:#eee7ff;font-size:11px;font-weight:900}.crm-sales-priority-note{margin:0;padding:12px 21px;color:#718096;background:#fafbfe;font-size:11px;line-height:1.5}.crm-sales-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px 20px;border-top:1px solid #edf1f5;color:inherit;text-decoration:none}.crm-sales-list>a:hover{background:#f8fbff}.crm-sales-list>a>div{min-width:0}.crm-sales-list strong,.crm-sales-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-sales-list strong{color:#35455b;font-size:12px}.crm-sales-list small{margin-top:4px;color:#8190a1;font-size:10px}.crm-sales-list i{color:#7290b0;font-size:17px;font-style:normal}.crm-sales-empty{display:grid;justify-items:start;gap:7px;padding:25px 21px}.crm-sales-empty>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#257757;background:#e5f6ec;font-size:16px;font-weight:900}.crm-sales-empty strong{color:#35455b;font-size:13px}.crm-sales-empty p{max-width:390px;margin:0;color:#7e8c9d;font-size:11px;line-height:1.5}.crm-sales-guide{position:sticky;top:18px;padding:21px}.crm-sales-guide>span{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;color:#7045b6;background:#eee6ff;font-size:19px;font-weight:900}.crm-sales-guide h2{margin-top:14px}.crm-sales-guide dl{display:grid;gap:11px;margin:17px 0}.crm-sales-guide dl div{padding-top:11px;border-top:1px solid #e9eef4}.crm-sales-guide dt{color:#53647b;font-size:11px;font-weight:900}.crm-sales-guide dd{margin:4px 0 0;color:#7c899a;font-size:10px;line-height:1.45}.crm-sales-guide>p:last-child{margin:0;color:#778598;font-size:10px;line-height:1.5}.crm-deal-sidebar{display:grid;gap:16px;position:sticky;top:18px}.crm-deal-sidebar .crm-deal-create{position:static}.crm-deal-forecast{padding:20px}.crm-deal-forecast h2{margin:3px 0 7px;color:#304057;font-size:19px}.crm-deal-forecast>p:not(.eyebrow){margin:0;color:#748196;font-size:11px;line-height:1.5}.crm-deal-forecast-form{display:grid;gap:10px;margin-top:16px}.crm-deal-forecast-form label{display:grid;gap:5px;color:#5d6b7e;font-size:10px;font-weight:850}.crm-deal-forecast-form input,.crm-deal-forecast-form select{width:100%;min-height:37px;padding:8px 9px;border:1px solid #d6e1ec;border-radius:9px;color:#35455c;background:#fbfdff;font:inherit;font-size:11px}.crm-deal-forecast-form small{color:#8a97a7;font-size:9px;font-weight:650;line-height:1.35}.crm-deal-forecast-result{display:grid;gap:3px;margin-top:15px;padding:12px;border:1px solid #dfd7f7;border-radius:11px;background:#f8f5ff}.crm-deal-forecast-result span{color:#7c66a8;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.crm-deal-forecast-result strong{color:#6541aa;font-size:20px}.crm-deal-forecast-result small{color:#897aa5;font-size:9px;line-height:1.35}
@media(max-width:900px){.crm-sales-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-sales-layout{grid-template-columns:1fr}.crm-sales-guide,.crm-deal-sidebar{position:static}}@media(max-width:620px){.crm-sales-hero{align-items:flex-start;flex-direction:column;padding:21px}.crm-sales-hero .button{width:100%;text-align:center}.crm-sales-metrics{gap:8px}.crm-sales-metrics article{min-height:108px;padding:12px;grid-template-columns:30px minmax(0,1fr);column-gap:8px}.crm-sales-metric-icon{width:30px;height:30px;border-radius:10px;font-size:13px}.crm-sales-metrics small{font-size:8px}.crm-sales-metrics strong{font-size:18px}.crm-sales-metrics p{font-size:8px}.crm-sales-priority>header{padding:17px}.crm-sales-priority-note{padding:11px 17px}.crm-sales-list>a{padding:13px 15px}.crm-sales-list strong{font-size:11px}.crm-sales-list small{font-size:9px}.crm-sales-guide{padding:18px}.crm-deal-forecast{padding:18px}}

/* Content capture stays deliberately small: capture, outline, record. */
.content-capture-panel{margin-bottom:16px;overflow:hidden}.content-capture-panel .workspace-form{display:grid;grid-template-columns:1fr 1.35fr .6fr auto;gap:10px;align-items:end;padding:15px 17px}.content-capture-panel .workspace-form label{margin:0}.content-capture-panel .workspace-form .button{min-height:41px;margin:0;white-space:nowrap}.content-card footer{align-items:center}.content-status-form{min-width:0}.content-status-form select{min-height:31px;max-width:145px;padding:5px 8px;border:1px solid #d9e3ee;border-radius:8px;color:#46566d;background:#f9fbfd;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.content-status-form select:focus{outline:0;border-color:#65a0da;box-shadow:0 0 0 3px rgba(53,122,194,.12)}
@media(max-width:820px){.content-capture-panel .workspace-form{grid-template-columns:1fr 1fr}.content-capture-panel .workspace-form label:first-of-type{grid-column:1/-1}.content-capture-panel .workspace-form .button{grid-column:1/-1}}
@media(max-width:540px){.content-capture-panel .workspace-form{grid-template-columns:1fr;padding:14px}.content-capture-panel .workspace-form label:first-of-type,.content-capture-panel .workspace-form .button{grid-column:auto}.content-status-form select{max-width:130px}}

/* CRM response text library: full templates and short safe inserts. */
.crm-template-studio{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.crm-template-editor{overflow:hidden}.crm-template-editor>header{padding:20px 22px 0}.crm-template-editor h2,.crm-template-library h2{margin:3px 0 6px;color:#304057;font-size:20px;letter-spacing:-.3px}.crm-template-editor header>p:last-child{margin:0;color:#738196;font-size:11px;line-height:1.55}.crm-template-library{grid-column:1/-1;overflow:hidden}.crm-template-library>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 22px;border-bottom:1px solid #e7edf4}.crm-template-library>header>span{padding:6px 9px;border-radius:999px;color:#536b89;background:#edf3fb;font-size:10px;font-weight:850;white-space:nowrap}.crm-template-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.crm-template-library-grid>section+section{border-left:1px solid #e7edf4}.crm-template-library-grid h3{margin:0;padding:14px 18px;color:#627089;background:#f7f9fc;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.crm-template-library-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 18px;border-top:1px solid #edf1f5}.crm-template-library-item>div{display:grid;gap:3px;min-width:0}.crm-template-library-item strong{color:#34445b;font-size:12px}.crm-template-library-item b{color:#65758a;font-size:10px}.crm-template-library-item small{overflow:hidden;color:#8895a5;font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.crm-template-library-item em{color:#8a97a6;font-size:10px;font-style:normal}.crm-template-library-item .button{flex:0 0 auto;margin:0;padding:7px 9px;font-size:10px}.crm-email-template-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:7px 10px;align-items:end;margin:0 0 14px;padding:12px;border:1px solid #e1eaf4;border-radius:12px;background:#f8fbff}.crm-email-template-picker label{margin:0;color:#607188;font-size:10px;font-weight:850}.crm-email-template-picker select{width:100%;min-height:37px;padding:7px 8px;border:1px solid #d8e3ef;border-radius:8px;background:#fff;color:#35455c;font:inherit;font-size:11px}.crm-email-template-picker a{align-self:end;padding:10px 0;color:#2d70b8;font-size:10px;font-weight:850;text-decoration:none;white-space:nowrap}
@media(max-width:820px){.crm-template-studio{grid-template-columns:1fr}.crm-template-library{grid-column:auto}.crm-template-library-grid{grid-template-columns:1fr}.crm-template-library-grid>section+section{border-top:1px solid #e7edf4;border-left:0}}
@media(max-width:540px){.crm-email-template-picker{grid-template-columns:1fr}.crm-email-template-picker a{align-self:start;padding:1px 0}.crm-template-editor>header{padding:18px 18px 0}.crm-template-library>header{padding:17px 18px}.crm-template-library-grid h3,.crm-template-library-item{padding-left:14px;padding-right:14px}}
.crm-email-thread-copy>span{overflow:hidden;color:#3472ae;font-size:9px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.crm-email-thread-copy b{margin-top:1px}.crm-email-context-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.crm-email-context-links a{display:inline-flex;align-items:center;min-height:27px;padding:0 8px;border:1px solid #dce8f4;border-radius:8px;color:#2c70b5;background:#fff;font-size:10px;font-weight:850;text-decoration:none}.crm-email-context-links a:hover{border-color:#99c2ea;background:#f5faff}.crm-email-tools{margin:0 0 12px;border:1px solid #e1eaf4;border-radius:12px;background:#f8fbff}.crm-email-tools summary{padding:11px 12px;color:#316eac;font-size:11px;font-weight:850;cursor:pointer}.crm-email-tools[open] summary{border-bottom:1px solid #e1eaf4}.crm-email-tools .crm-email-template-picker{margin:0;border:0;border-radius:0;background:transparent}.crm-email-compose-actions{justify-content:flex-end}.crm-email-compose-actions .button{min-width:168px}.crm-email-compose-form>p{max-width:590px}.crm-email-compose>header>span{white-space:nowrap}@media(max-width:540px){.crm-email-context-links{gap:5px}.crm-email-context-links a{min-height:30px;font-size:9px}.crm-email-tools summary{padding:12px}.crm-email-tools .crm-email-template-picker{padding:12px}.crm-email-compose-actions{display:block}.crm-email-compose-actions .button{width:100%;min-height:43px}.crm-email-thread-copy>span{font-size:9px}}

/* CARD-0039 CRM Inbox actions: local draft is visually secondary and never sends. */
.crm-email-thread-copy small{color:#526277}.crm-email-thread time{color:#526277}.crm-email-selection-hint p{color:#596a80}.crm-email-inbox-filters .crm-filter-control,.crm-email-inbox-filters .crm-filter-submit,.crm-email-inbox-filters .crm-filter-reset{min-height:44px}.crm-email-compose-actions .button{min-height:44px}.crm-email-compose-actions .crm-email-save-draft{border:1px solid #9fb4ca;color:#334f70;background:#f5f8fb;box-shadow:none}.crm-email-compose-actions .crm-email-save-draft:hover{border-color:#718ba7;background:#eaf0f6}.crm-email-compose-form>.crm-email-draft-safety{color:#4d6076;font-weight:750}@media(max-width:540px){.crm-email-inbox-filters .crm-filter-reset{display:inline-flex;align-items:center;padding:0 6px}.crm-email-context-links a{min-height:44px}.crm-email-tools summary{min-height:44px}.crm-email-tools .crm-email-template-picker select,.crm-email-tools .crm-email-template-picker a{min-height:44px}.crm-email-tools .crm-email-template-picker a{display:inline-flex;align-items:center}.crm-email-compose-actions{display:grid;grid-template-columns:1fr}.crm-email-compose-actions .button{width:100%;min-height:46px;text-align:center}.crm-email-thread{min-width:0}}

/* CRM name search: owner-only server suggestions, shared by every list filter. */
.crm-autocomplete-shell{position:relative;display:block}.crm-autocomplete-menu{position:absolute;z-index:40;top:calc(100% + 6px);right:0;left:0;max-height:270px;overflow:auto;border:1px solid #cbd9ea;border-radius:11px;background:#fff;box-shadow:0 16px 34px rgba(25,47,78,.18)}.crm-autocomplete-option{display:grid;gap:3px;width:100%;padding:10px 11px;border:0;border-bottom:1px solid #edf2f7;background:#fff;color:#293a54;text-align:left;cursor:pointer}.crm-autocomplete-option:last-child{border-bottom:0}.crm-autocomplete-option:hover,.crm-autocomplete-option.is-active{background:#eef6ff}.crm-autocomplete-option strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.crm-autocomplete-option small{overflow:hidden;color:#718097;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.crm-autocomplete-empty{display:block;padding:11px;color:#718097;font-size:11px;text-align:center}@media(max-width:620px){.crm-autocomplete-menu{max-height:238px}.crm-autocomplete-option{padding:11px}.crm-autocomplete-option strong{font-size:13px}.crm-autocomplete-option small{font-size:10px}}
@media(max-width:700px){.autonomous-run .panel-header{align-items:flex-start;flex-direction:column}.autonomous-current{grid-template-columns:48px minmax(0,1fr);margin:14px 14px 6px;padding:13px}.autonomous-current > span{grid-row:1/span 2}.autonomous-current-copy{grid-column:2}.autonomous-current b{grid-column:2;grid-row:auto;margin-top:4px}.autonomous-steps{grid-template-columns:1fr;padding:10px 14px 15px}.autonomous-step{padding:10px 0}}

/* Deal communication center: one channel-neutral, read-only entry point. */
.crm-deal-communications{padding:0;overflow:hidden}.crm-deal-communications>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #e8edf3}.crm-deal-communications h2{margin:3px 0 0;color:#2d3a4e;font-size:18px}.crm-deal-communications>header>span{display:grid;place-items:center;min-width:29px;height:29px;padding:0 8px;border-radius:9px;color:#286db5;background:#e6f1ff;font-size:11px;font-weight:900}.crm-deal-communications-note{margin:0;padding:11px 20px;color:#53657b;background:#f8fbff;font-size:11px;line-height:1.5}.crm-deal-communications-list{display:grid}.crm-deal-communication-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"channel copy time" "channel copy action";gap:4px 12px;align-items:center;min-height:76px;padding:13px 20px;border-top:1px solid #edf1f5;color:inherit;text-decoration:none}.crm-deal-communication-row:hover{background:#f8fbff}.crm-deal-communication-row:focus-visible{outline:3px solid #2d78c8;outline-offset:-3px}.crm-deal-channel{grid-area:channel;display:grid;place-items:center;min-width:78px;min-height:32px;padding:0 10px;border-radius:10px;color:#2f659f;background:#e8f2fc;font-size:10px;font-weight:900}.crm-deal-channel.is-email{color:#6b469c;background:#f0e9fb}.crm-deal-communication-copy{grid-area:copy;display:grid;min-width:0;gap:3px}.crm-deal-communication-copy strong,.crm-deal-communication-copy small,.crm-deal-communication-copy em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-deal-communication-copy strong{color:#304057;font-size:13px}.crm-deal-communication-copy small{color:#5a6c82;font-size:11px}.crm-deal-communication-copy em{color:#76869a;font-size:9px;font-style:normal}.crm-deal-communication-action{grid-area:action;color:#1f6ebd;font-size:10px;font-weight:900;white-space:nowrap}.crm-deal-communication-row time{grid-area:time;justify-self:end;color:#748397;font-size:9px;white-space:nowrap}@media(max-width:620px){.crm-deal-communications>header,.crm-deal-communications-note{padding-right:15px;padding-left:15px}.crm-deal-communication-row{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"channel time" "copy copy" "action action";min-height:132px;padding:13px 15px}.crm-deal-channel{justify-self:start}.crm-deal-communication-copy strong,.crm-deal-communication-copy small,.crm-deal-communication-copy em{overflow:visible;white-space:normal}.crm-deal-communication-copy small{overflow-wrap:anywhere}.crm-deal-communication-action{display:flex;align-items:center;min-height:44px}.crm-deal-communication-row time{align-self:center}}

/* Deal messages stay readable at every width, including long unbroken provider text. */
.crm-deal-communication-copy strong,.crm-deal-communication-copy small,.crm-deal-communication-copy em{overflow:visible;text-overflow:clip;overflow-wrap:anywhere;white-space:normal}

/* Thumbtack OAuth: consent is the deliberate external-action boundary. */
.thumbtack-oauth-consent{display:grid;gap:13px;margin-top:18px}.thumbtack-oauth-consent-label{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px;border:1px solid #d8e4f1;border-radius:10px;color:#465873;background:#f8fbff;font-size:11px;font-weight:750;line-height:1.45;cursor:pointer}.thumbtack-oauth-consent-label input{width:20px;height:20px;flex:0 0 20px;accent-color:#7656c9}.thumbtack-oauth-consent-label:focus-within{outline:3px solid rgba(88,125,218,.35);outline-offset:3px}.thumbtack-oauth-consent .button{min-height:44px}.thumbtack-oauth-consent .button:focus-visible{outline:3px solid rgba(88,125,218,.45);outline-offset:3px}@media(max-width:540px){.thumbtack-oauth-consent .button{width:100%}}

/* Thumbtack OAuth has a deliberately readable consent boundary at narrow widths. */
.thumbtack-oauth-hero,.thumbtack-oauth-layout,.thumbtack-oauth-layout>*{min-width:0}.thumbtack-oauth-status-card,.thumbtack-oauth-boundary-card{overflow:hidden}.thumbtack-oauth-layout p,.thumbtack-oauth-layout li,.thumbtack-oauth-consent-label{overflow-wrap:anywhere;word-break:normal}.thumbtack-oauth-boundary-card code{display:inline;max-width:100%;padding:3px 5px;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.thumbtack-oauth-consent .button{max-width:100%;white-space:normal;text-align:center}@media(max-width:540px){.thumbtack-oauth-hero{padding:20px 18px}.thumbtack-oauth-status-card,.thumbtack-oauth-boundary-card{padding:17px}.thumbtack-oauth-consent-label{align-items:flex-start}.thumbtack-oauth-consent-label input{margin-top:2px}.thumbtack-oauth-consent .button{padding-right:12px;padding-left:12px}}

/* Owner-only sales rules: readable on desktop and one column on mobile. */
.crm-playbook-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:16px;padding:29px 31px;border-radius:22px;background:linear-gradient(125deg,#1f2850,#4a3a91 58%,#8d55ca);box-shadow:0 17px 38px rgba(47,38,107,.2);color:#fff}.crm-playbook-hero h1{margin:5px 0 8px;color:#fff;font-size:clamp(29px,4vw,42px);letter-spacing:-.045em}.crm-playbook-hero .eyebrow,.crm-playbook-hero .crm-back-link{color:#ded7ff}.crm-playbook-hero p:not(.eyebrow){max-width:700px;margin:0;color:#ece9ff;font-size:13px;line-height:1.58}.crm-playbook-guard{display:grid;flex:0 0 190px;gap:5px;justify-items:center;padding:18px 16px;border:1px solid rgba(255,255,255,.24);border-radius:17px;background:rgba(255,255,255,.12);text-align:center}.crm-playbook-guard span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;color:#245b49;background:#adf0c8;font-weight:950}.crm-playbook-guard strong{font-size:13px}.crm-playbook-guard small{color:#e5e0ff;font-size:10px}.crm-playbook-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.36fr);gap:16px;align-items:start}.crm-playbook-form{overflow:hidden}.crm-playbook-form>header{padding:22px 23px 11px}.crm-playbook-form h2,.crm-playbook-guide h2{margin:3px 0 7px;color:#304057;font-size:21px;letter-spacing:-.35px}.crm-playbook-form header>p:last-child{max-width:680px;margin:0;color:#738196;font-size:11px;line-height:1.55}.crm-playbook-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:17px 23px 22px}.crm-playbook-fields label{display:grid;gap:6px;color:#55657a;font-size:10px;font-weight:850}.crm-playbook-fields label:first-child,.crm-playbook-fields label:nth-child(2),.crm-playbook-fields label:last-child{grid-column:1/-1}.crm-playbook-fields textarea{width:100%;min-height:76px;padding:10px 11px;border:1px solid #d9e3ee;border-radius:10px;background:#fbfdff;color:#35455c;font:inherit;font-size:11px;line-height:1.5;resize:vertical}.crm-playbook-fields textarea:focus{outline:0;border-color:#8964d4;box-shadow:0 0 0 3px rgba(126,85,200,.13)}.crm-playbook-form>footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 23px;border-top:1px solid #e7edf4;background:#fafbfe}.crm-playbook-form>footer p{max-width:520px;margin:0;color:#7c899a;font-size:10px;line-height:1.45}.crm-playbook-form>footer .button{flex:0 0 auto;white-space:nowrap}.crm-playbook-guide{position:sticky;top:18px;padding:22px}.crm-playbook-guide-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#7145b5;background:#eee7ff;font-size:19px;font-weight:900}.crm-playbook-guide h2{margin-top:14px}.crm-playbook-guide ol{display:grid;gap:13px;margin:18px 0;padding:0;list-style:none}.crm-playbook-guide li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:start;padding-top:12px;border-top:1px solid #e8edf4;color:#718095;font-size:10px;line-height:1.5}.crm-playbook-guide li b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;color:#6540a8;background:#eee6ff;font-size:10px}.crm-playbook-boundary{display:grid;gap:5px;padding:13px;border:1px solid #f1dfb8;border-radius:11px;background:#fffaf0}.crm-playbook-boundary strong{color:#81612a;font-size:10px}.crm-playbook-boundary span{color:#987b4b;font-size:9px;line-height:1.45}@media(max-width:860px){.crm-playbook-layout{grid-template-columns:1fr}.crm-playbook-guide{position:static}}@media(max-width:620px){.crm-playbook-hero{align-items:flex-start;flex-direction:column;padding:21px}.crm-playbook-guard{width:100%;grid-template-columns:auto 1fr;justify-items:start;text-align:left}.crm-playbook-guard span{grid-row:span 2}.crm-playbook-fields{grid-template-columns:1fr;padding:15px}.crm-playbook-fields label,.crm-playbook-fields label:first-child,.crm-playbook-fields label:nth-child(2),.crm-playbook-fields label:last-child{grid-column:auto}.crm-playbook-form>header{padding:19px 18px 8px}.crm-playbook-form>footer{display:grid;padding:14px 18px}.crm-playbook-form>footer .button{width:100%;text-align:center}.crm-playbook-guide{padding:19px}}

/* Conversation/deal repair: precise follow-up actions and readable client-first header. */
.crm-deal-estimates{overflow:visible}.crm-deal-client-title-link,.crm-deal-status-link{color:#fff;text-decoration-color:rgba(255,255,255,.72);text-decoration-thickness:2px;text-underline-offset:5px}.crm-deal-client-title-link:hover,.crm-deal-client-title-link:focus-visible,.crm-deal-status-link:hover,.crm-deal-status-link:focus-visible{color:#fff;text-decoration-color:#fff}.crm-deal-status{color:#fff}.crm-deal-service{margin-bottom:2px!important;color:#fff!important;font-size:15px!important;font-weight:850}.crm-followup-open{min-height:44px;padding:0 12px;font-size:11px}.crm-followup-menu>summary{display:inline-flex;width:auto;height:auto;min-height:44px;padding:0 11px;align-items:center;justify-content:center;gap:7px;border-radius:10px;letter-spacing:0}.crm-followup-menu-panel{top:51px}.crm-followup-menu-panel .crm-followup-done,.crm-followup-menu-panel .crm-commitment-cancel{min-height:44px}
@media(max-width:620px){.crm-deal-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%}.crm-deal-actions .button{width:100%;min-height:44px;white-space:normal}.crm-followup-open{min-height:44px;padding:0 10px;font-size:10px}.crm-followup-menu>summary{width:auto;height:auto;min-height:44px;padding:0 10px;border-radius:10px}.crm-followup-menu-panel{top:auto}.crm-followup-menu-panel .crm-followup-done,.crm-followup-menu-panel .crm-commitment-cancel{min-height:44px}.crm-followup-menu-panel .crm-commitment-reschedule input,.crm-followup-menu-panel .crm-commitment-reschedule .button{height:auto;min-height:44px}}

/* CRM deal hotfix: mobile follow-up actions never share a collision-prone row. */
.crm-deal-followups .crm-commitment-actions{align-items:center;gap:8px;padding:0 20px 18px}.crm-deal-followups .crm-followup-open,.crm-deal-followups .crm-followup-menu>summary{min-height:44px}.crm-deal-followups .crm-followup-menu>summary:focus-visible{outline:3px solid #7752ae;outline-offset:2px}
@media(max-width:620px){.crm-deal-followups .crm-deal-estimate-row{padding:14px 16px 10px}.crm-deal-followups .crm-commitment-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%;padding:0 16px 16px}.crm-deal-followups .crm-followup-open,.crm-deal-followups .crm-followup-menu,.crm-deal-followups .crm-followup-menu>summary{box-sizing:border-box;width:100%}.crm-deal-followups .crm-followup-menu>summary{display:flex;min-height:44px;padding:0 12px}.crm-deal-followups .crm-followup-menu-panel{top:auto;right:16px;bottom:18px;width:calc(100vw - 32px);max-width:358px}}
