/*
 * EasyDash product redesign — 2026
 *
 * This is the authoritative presentation layer for the live EasyDash product.
 * The legacy stylesheet remains loaded for structural compatibility; this file
 * deliberately owns tokens, hierarchy, interaction sizes, and responsive rules.
 */

:root {
  --ink: #142a28;
  --muted: #637572;
  --muted-2: #6f807c;
  --canvas: #f4f6f4;
  --card: #ffffff;
  --surface-subtle: #f8faf8;
  --surface-strong: #eef4f1;
  --line: #dbe5e0;
  --line-strong: #cbd9d3;
  --deep: #123c3b;
  --deep-2: #1b514c;
  --teal: #28796b;
  --teal-strong: #1f675b;
  --mint: #d7eee6;
  --mint-2: #eaf6f1;
  --coral: #d96755;
  --coral-soft: #fff0ec;
  --gold: #d99a32;
  --gold-soft: #fff5de;
  --blue: #5c7fba;
  --blue-soft: #edf2fb;
  --purple: #7b69ad;
  --purple-soft: #f1eef9;
  --radius-xs: 8px;
  --radius-sm: 10px;
  --radius-md: 12px;
  --radius-lg: 15px;
  --radius-xl: 20px;
  --shadow-xs: 0 1px 2px rgba(18, 49, 44, .035);
  --shadow-sm: 0 5px 18px rgba(18, 49, 44, .055);
  --shadow: 0 15px 42px rgba(18, 49, 44, .08);
  --shadow-lg: 0 30px 90px rgba(8, 31, 29, .22);
  --sidebar-width: 240px;
  --topbar-height: 64px;
}

* { scrollbar-color: #b9c8c2 transparent; }
html { background: var(--canvas); }
body {
  color: var(--ink);
  background:
    radial-gradient(circle at 92% -8%, rgba(102, 162, 145, .09), transparent 26rem),
    linear-gradient(180deg, #f8f9f7 0, var(--canvas) 280px);
  font: 500 14px/1.5 "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -.006em;
}
::selection { color: #fff; background: var(--teal); }
h1, h2, h3, h4, .brand, .stat-main strong { font-family: "Manrope", "DM Sans", sans-serif; }
h1 { margin: 0; font-size: clamp(28px, 2.4vw, 34px); line-height: 1.1; letter-spacing: -1.2px; }
h2 { font-size: 19px; line-height: 1.24; letter-spacing: -.48px; }
h3 { font-size: 15px; line-height: 1.35; letter-spacing: -.26px; }
p { line-height: 1.58; }
svg { width: 17px; height: 17px; stroke-width: 1.85; }

button, a, input, select, textarea, summary { transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease; }
button:focus-visible, a:focus-visible, summary:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid #28796b;
  outline-offset: 2px;
}
input:focus, select:focus, textarea:focus {
  border-color: #28796b;
  box-shadow: 0 0 0 3px rgba(40, 121, 107, .16);
}
input::placeholder, textarea::placeholder { color: #758581; opacity: 1; }

/* Product shell */
.sidebar {
  width: var(--sidebar-width);
  padding: 16px 12px 13px;
  color: #d9e7e3;
  background:
    radial-gradient(circle at 20% 0, rgba(124, 192, 171, .13), transparent 22rem),
    linear-gradient(180deg, #123e3d 0%, #113735 58%, #0f322f 100%);
  border-right: 1px solid rgba(255,255,255,.055);
  box-shadow: 8px 0 35px rgba(10, 38, 35, .05);
}
.brand-wrap { min-height: 42px; padding: 0 7px 12px; }
.brand { gap: 9px; font-size: 19px; letter-spacing: -.7px; }
.brand-mark { width: 26px; height: 26px; border-radius: 8px; box-shadow: 0 5px 15px rgba(239, 180, 84, .18); }
.workspace-switcher {
  grid-template-columns: 34px 1fr auto;
  gap: 9px;
  min-height: 54px;
  padding: 8px 9px;
  border-color: rgba(219, 239, 232, .14);
  border-radius: var(--radius-md);
  background: rgba(255,255,255,.06);
  box-shadow: inset 0 1px rgba(255,255,255,.035);
}
.workspace-switcher:hover { border-color: rgba(219, 239, 232, .26); background: rgba(255,255,255,.085); }
.workspace-logo { width: 34px; height: 34px; border-radius: 10px; font-size: 13px; }
.workspace-switcher small { color: #91aaa5; font-size: 10px; }
.workspace-switcher strong { margin-top: 1px; font-size: 13px; }
.primary-nav { margin-top: 7px; padding-top: 4px; }
.nav-label { margin: 7px 10px 5px; color: #9bb4af; font-size: 8px; letter-spacing: 1.35px; }
.nav-label-spaced { margin-top: 14px; }
.nav-item {
  min-height: 38px;
  gap: 10px;
  margin: 2px 0;
  padding: 0 10px;
  color: #b6c9c4;
  border: 1px solid transparent;
  border-radius: 11px;
  font-size: 13px;
  font-weight: 600;
}
.nav-item svg { width: 18px; height: 18px; color: #92aaa5; }
.nav-item:hover { color: #fff; border-color: rgba(255,255,255,.045); background: rgba(255,255,255,.055); }
.nav-item.active {
  color: #fff;
  border-color: rgba(156, 217, 198, .18);
  background: linear-gradient(90deg, rgba(105, 180, 158, .22), rgba(105, 180, 158, .1));
  box-shadow: inset 3px 0 #82c6b2, 0 5px 14px rgba(5, 28, 25, .09);
}
.nav-item.active svg { color: #a7ddcd; }
.nav-count { min-width: 24px; padding: 3px 7px; color: #e5f3ef; background: rgba(255,255,255,.1); font-size: 10px; }
.sidebar-group { margin-top: 12px; padding-top: 9px; border-color: rgba(255,255,255,.075); }
.sidebar-group summary { min-height: 36px; padding: 0 10px; color: #9bb2ad; font-size: 11px; }
.sidebar-group-items { padding: 4px 0 1px 8px; }
.sidebar-group-items .nav-item { min-height: 36px; font-size: 12px; }
.sidebar-group-count { font-size: 10px; }
.sidebar-add-project { min-height: 38px; font-size: 12px; }
.sidebar-footer { padding-top: 12px; }

.main-area { margin-left: var(--sidebar-width); }
.topbar {
  height: var(--topbar-height);
  padding: 0 28px;
  border-color: rgba(207, 219, 214, .78);
  background: rgba(250, 251, 249, .88);
  box-shadow: 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter: blur(18px) saturate(1.15);
}
.search-trigger {
  width: min(420px, 43vw);
  min-height: 40px;
  gap: 10px;
  padding: 0 11px 0 13px;
  color: #667773;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
  font-size: 14px;
}
.search-trigger:hover { color: var(--ink); border-color: var(--line); background: #fff; box-shadow: var(--shadow-xs); }
.search-trigger kbd { margin-left: auto; padding: 4px 8px; color: #778682; border: 1px solid var(--line); border-radius: 7px; background: #fff; font-size: 10px; box-shadow: 0 1px 2px rgba(20,45,40,.05); }
.topbar-actions { gap: 10px; }
.topbar .icon-button { width: 38px; height: 38px; }
.profile-button { min-height: 42px; gap: 9px; padding: 4px 7px; border: 1px solid transparent; border-radius: 11px; }
.profile-button:hover { border-color: var(--line); background: #fff; }
.profile-button .avatar { width: 34px; height: 34px; border-radius: 10px; }
.profile-copy strong { font-size: 13px; }
.profile-copy small { margin-top: 1px; font-size: 11px; }

.content { width: 100%; max-width: 1540px; padding: 28px 30px 56px; }
.content:focus { outline: 0; }
.page-enter { animation: pageReveal .22s cubic-bezier(.2,.75,.25,1) both; }
@keyframes pageReveal { from { opacity: 0; transform: translateY(5px); } }
.page-head { align-items: flex-end; gap: 20px; margin-bottom: 22px; }
.page-head > div { min-width: 0; }
.page-head h1 { color: #102b29; }
.page-head p { max-width: 760px; margin-top: 5px; color: var(--muted); font-size: 13px; }
.eyebrow { margin-bottom: 5px; color: var(--teal); font-size: 9px; font-weight: 800; letter-spacing: 1.55px; }

/* Shared surfaces and controls */
.panel, .stat-card, .project-card, .person-card {
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.96);
  box-shadow: var(--shadow-xs);
}
.panel { overflow: hidden; }
.panel:hover { border-color: #d2dfd9; }
.panel-head {
  min-height: 64px;
  padding: 14px 18px;
  border-color: #e7ece9;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,252,250,.96));
}
.panel-head h2 { margin: 0; color: #19312e; font-size: 16px; }
.panel-head p { margin-top: 4px; color: var(--muted); font-size: 12px; }
.button {
  min-height: 40px;
  gap: 8px;
  padding: 0 15px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 750;
}
.button:hover { transform: translateY(-1px); }
.button.primary { color: #fff; background: linear-gradient(180deg, #174a48, #123c3b); box-shadow: 0 8px 20px rgba(18,60,59,.15); }
.button.primary:hover { background: linear-gradient(180deg, #1a5551, #154542); box-shadow: 0 10px 24px rgba(18,60,59,.2); }
.button.secondary { color: #234440; border-color: var(--line-strong); background: #fff; }
.button.secondary:hover { border-color: #aebfb8; background: #fbfdfc; }
.button.ghost { color: #566a66; background: transparent; }
.button.danger { color: #fff; background: #ba5546; }
.button.small { min-height: 34px; padding-inline: 12px; font-size: 11px; }
.icon-button { width: 38px; height: 38px; border-radius: 10px; }
.icon-button:hover { color: var(--deep); background: #edf3f0; }
.text-button { min-height: 34px; padding: 6px 9px; border-radius: 8px; color: var(--teal-strong); font-size: 11px; font-weight: 750; }
.text-button:hover { background: var(--mint-2); }

label { gap: 8px; color: #50645f; font-size: 12px; font-weight: 750; }
input, select, textarea {
  color: var(--ink);
  border: 1px solid #d3ded9;
  border-radius: 10px;
  background-color: #fff;
  font-size: 14px;
}
input, select { min-height: 40px; height: 40px; padding-inline: 11px; }
textarea { min-height: 84px; padding: 10px 12px; line-height: 1.5; }
input::placeholder, textarea::placeholder { color: #98a4a1; }
.field-hint, .form-help, .planning-help { color: var(--muted); font-size: 11px !important; }
.form-row, .form-grid { gap: 12px; }

.stats-grid { gap: 12px; margin-bottom: 16px; }
.stat-card { min-height: 108px; padding: 14px 16px; }
.stat-card:hover { border-color: #cddbd5; box-shadow: var(--shadow-sm); transform: translateY(-1px); }
.stat-top { margin-bottom: 11px; color: #5d706c; font-size: 11px; font-weight: 700; }
.stat-icon { width: 34px; height: 34px; border-radius: 10px; }
.stat-main strong { color: #16322f; font-size: 26px; letter-spacing: -1px; }
.stat-card > small { margin-top: 5px; color: var(--muted-2); font-size: 10px; }
.trend { min-height: 24px; padding: 4px 8px; border-radius: 999px; color: #397468; background: #eaf5f1; font-size: 10px; }
.trend.alert { color: #a94d3e; background: var(--coral-soft); }

.empty-state { padding: 56px 24px; }
.empty-state span { width: 54px; height: 54px; margin-bottom: 15px; border-radius: 16px; background: var(--mint-2); }
.empty-state h3 { margin: 0 0 6px; font-size: 17px; }
.empty-state p, .empty-inline { color: var(--muted); font-size: 12px; }
.empty-inline { padding: 22px; }

/* Overview */
.daily-briefing-grid { grid-template-columns: minmax(0,1.12fr) minmax(0,.88fr); gap: 18px; margin-bottom: 18px; }
.overview-focus-card { min-height: 248px; padding: 20px; border: 0; border-radius: 16px; background:
  radial-gradient(circle at 100% 0, rgba(241, 185, 91, .16), transparent 17rem),
  linear-gradient(145deg, #164846 0%, #103735 100%); box-shadow: 0 18px 44px rgba(15,57,53,.17); }
.focus-head h2 { font-size: 19px; }
.focus-head > span { width: 38px; height: 38px; border-radius: 11px; }
.overview-focus-card .focus-task { padding: 0; border: 0; background: transparent; }
.overview-focus-card .focus-task > small { color: #a5c0ba; font-size: 11px; }
.overview-focus-card .focus-task > strong { margin: 6px 0 12px; font-size: clamp(18px, 1.8vw, 22px); line-height: 1.27; }
.focus-meta { color: #c9ddd7; font-size: 11px; }
.focus-status { display: flex; justify-content: space-between; gap: 12px; margin-top: 18px; padding: 12px 0 0; border-top: 1px solid rgba(255,255,255,.11); color: #bad0ca; font-size: 11px; }
.focus-status span { display: inline-flex; align-items: center; gap: 6px; }
.overview-focus-actions { gap: 9px; }
.overview-focus-actions .button { width: auto; min-width: 132px; }
.overview-focus-actions .button:first-child { color: var(--deep); background: #fff; }
.overview-focus-actions .button:last-child { color: #d9ece7; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.07); }
.overview-meeting-card { min-height: 248px; padding: 20px; }
.overview-meeting-card header strong { font-size: 12px; }
.overview-meeting-card h2 { font-size: 19px; }
.overview-meeting-card p { color: var(--muted); font-size: 13px; }
.overview-meeting-meta { gap: 9px; }
.overview-meeting-meta span { min-height: 34px; padding: 7px 9px; border-radius: 9px; background: var(--surface-subtle); font-size: 11px; }
.overview-grid { grid-template-columns: minmax(0,1.5fr) minmax(300px,.72fr); gap: 14px; }
.stack { gap: 18px; }
.overview-activity-card .panel-head { min-height: 62px; padding: 13px 17px; }
.overview-activity-card .panel-head h2 { font-size: 17px; }
.overview-activity-card .panel-head p { font-size: 11px; }
.overview-activity-list { padding: 4px 11px 8px; }
.overview-activity-person { grid-template-columns: 34px minmax(0,1fr) 15px; gap: 9px; min-height: 48px; padding: 6px; }
.overview-activity-avatar, .overview-activity-avatar .avatar { width: 34px; height: 34px; }
.overview-activity-avatar .presence-dot { left: 26px; }
.overview-activity-person strong { font-size: 12px; }
.overview-activity-person small { font-size: 10px; }
.schedule-list { padding: 8px 20px 15px; }
.schedule-item { grid-template-columns: 72px 3px minmax(0,1fr) auto; gap: 13px; min-height: 66px; padding: 4px 0; border-bottom: 1px solid #eef2f0; }
.schedule-item:last-child { border-bottom: 0; }
.schedule-item:hover { background: linear-gradient(90deg, transparent, #f8fbf9); }
.schedule-item time { color: #5f716d; font-size: 11px; font-weight: 700; }
.schedule-item strong { font-size: 13px; }
.schedule-item small { color: var(--muted); font-size: 10px; }
.metric-list { padding: 6px 20px 15px; }
.metric-row { min-height: 52px; padding: 13px 0; }
.metric-row span { font-size: 12px; }
.metric-row strong { font-size: 14px; }

/* Tasks */
.task-workspace { border-radius: 18px; overflow: visible; }
.table-toolbar {
  display: grid;
  grid-template-columns: auto minmax(260px,1fr) auto;
  align-items: center;
  gap: 11px;
  min-height: 58px;
  padding: 9px 12px;
  border-bottom: 1px solid var(--line);
  border-radius: 18px 18px 0 0;
  background: rgba(255,255,255,.96);
}
.filter-group { gap: 5px; padding: 3px; border: 1px solid var(--line); border-radius: 11px; background: #f5f8f6; }
.filter-button { min-height: 34px; padding: 7px 11px; color: #667773; border-radius: 8px; font-size: 12px; }
.filter-button.active { color: #17463f; background: #fff; box-shadow: 0 2px 6px rgba(20,54,49,.08); }
.task-discovery { justify-content: flex-end; gap: 9px; }
.task-search-control { width: min(360px,100%); min-height: 38px; padding: 0 10px; border-radius: 9px; }
.task-search-control input { font-size: 12px; }
.task-sort-control { gap: 7px; font-size: 11px; }
.task-sort-control select { min-height: 38px; font-size: 12px; }
.view-toggle { padding: 3px; border-radius: 10px; }
.view-toggle button { min-height: 32px; padding: 6px 11px; font-size: 11px; }
.task-list { padding: 6px 8px 9px; }
.task-row {
  grid-template-columns: 10px minmax(240px,1.8fr) minmax(125px,.8fr) 76px 64px 34px;
  gap: 8px;
  min-height: 58px;
  margin: 3px 0;
  padding: 6px 9px 6px 5px;
  border: 1px solid #e0e8e4;
  border-left-width: 3px;
  border-radius: 10px;
  background: #fff;
  box-shadow: none;
}
.task-row.to-do { border-color: #d4e3dd; border-left-color: #4b8d7e; background: linear-gradient(90deg,#f1f8f5 0,#fff 23%); }
.task-row.in-progress { border-color: #ead9b5; border-left-color: #cf8d24; background: linear-gradient(90deg,#fff8e9 0,#fff 23%); }
.task-row.completed { border-color: #d4e3dd; border-left-color: #2f7866; background: linear-gradient(90deg,#eef7f3 0,#fff 23%); }
.task-row:hover { border-color: #a9c6bc; box-shadow: 0 8px 20px rgba(21,63,56,.075); transform: translateY(-1px); }
.task-row-status-marker { width: 3px; height: 28px; box-shadow: none !important; }
.task-title > strong { margin-top: 2px; font-size: 13px; line-height: 1.25; }
.task-title small, .task-meta, .task-created-meta { font-size: 9px !important; }
.task-row-subline { gap: 5px; margin-top: 2px; }
.task-title-foot { display: flex; min-width: 0; align-items: center; gap: 6px; margin-top: 2px; }
.task-title-foot .task-row-subline { flex: 0 1 auto; margin-top: 0; }
.task-title-foot .task-created-meta { min-width: 0; flex: 1; margin-top: 0; }
.task-title-foot .task-row-subline + .task-created-meta::before { content: "·"; margin-right: 6px; color: #9aa8a4; }
.task-status-copy { color: #6b7c78; }
.task-id-chip { min-height: 19px; padding: 2px 6px; font-size: 8px; }
.project-pill, .priority-pill { padding: 3px 6px; border-radius: 6px; font-size: 9px; }
.task-card-signals > span { font-size: 9px; }

.task-board { gap: 10px; padding: 10px; border-radius: 0 0 15px 15px; background: #f4f7f5; }
.board-column { padding: 3px; }
.board-column-head { min-height: 34px; padding: 3px 4px 7px; font-size: 11px; }
.board-column-head strong { min-width: 26px; padding: 4px 7px; font-size: 10px; }
.board-stack { gap: 8px; }
.board-card.executive:not(.completed) {
  height: 144px;
  grid-template-columns: minmax(0,1fr) 76px;
  border: 1px solid #d8e4df;
  border-left: 3px solid #438778;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(20,55,49,.05);
}
.board-card.executive.in-progress { border-color: #e7d29f; border-left-color: #cc8a23; }
.board-card.executive:hover { border-color: #9fc0b5; box-shadow: 0 7px 18px rgba(20,55,49,.09); }
.board-card-main { padding: 8px 9px; }
.board-card.executive h3 { min-height: 34px; margin: 5px 0 2px; font-size: 14px; line-height: 1.2; }
.board-card-eyeline .project-pill, .board-card-eyeline .task-template-badge { font-size: 8px; }
.board-card-created { font-size: 9px !important; }
.board-field-summary { min-height: 0; max-height: 22px; margin-top: 4px; padding-top: 4px; overflow: hidden; }
.board-field-summary small { display: none; }
.board-field-summary span { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.board-field-summary span:nth-of-type(n+2) { display: none; }
.board-card-side { padding: 7px 6px; background: #f8fbf9; }
.board-side-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; }
.board-side-metrics > span:first-child { grid-column: 1 / -1; }
.board-side-metrics small { font-size: 8px; }
.board-side-metrics strong { font-size: 10px; }
.board-side-bottom { gap: 4px; margin-top: 5px; font-size: 8px; }
.board-card.executive.completed {
  height: 68px;
  grid-template-columns: minmax(0,1fr) 60px;
  border-color: #c7ddd5;
  border-left: 3px solid #2f7866;
  border-radius: 10px;
  background: #f8fbfa;
}
.board-card.executive.completed h3 { min-height: 0; margin: 4px 0 1px; overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.board-card.executive.completed .board-card-created { font-size: 8px !important; }
.board-card.executive.completed .board-card-side { padding: 5px 6px; }
.board-card.executive.completed .board-side-metrics small,
.board-card.executive.completed .board-side-bottom .assignee-group,
.board-card.executive.completed .board-side-bottom .task-avatar-stack { display: none; }
.board-card.executive.completed .board-side-bottom { gap: 2px; margin-top: 2px; }
.board-card.executive.completed .board-side-metrics strong { font-size: 10px !important; }
.board-card.executive.completed .board-side-bottom { font-size: 8px !important; }
.board-empty { min-height: 74px; display: grid; place-items: center; font-size: 11px; }
.board-column:not([data-drop-status="Completed"]) .board-stack.scrollable { max-height: 748px; overflow-y: auto; overscroll-behavior: contain; }
.board-column[data-drop-status="Completed"] .board-stack.scrollable { max-height: 372px; overflow-y: auto; overscroll-behavior: contain; }
.scope-banner, .completed-list-footer { font-size: 12px; }

/* Projects and operational queues */
.section-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.project-card { min-height: 214px; padding: 17px; overflow: visible; }
.project-card::before { inset: 16px auto 16px 0; width: 4px; border-radius: 0 8px 8px 0; }
.project-card:hover { border-color: #cadbd4; box-shadow: var(--shadow); transform: translateY(-3px); }
.project-icon { width: 38px; height: 38px; border-radius: 11px; }
.project-card h3 { margin: 12px 0 5px; font-size: 16px; }
.project-card p { height: 36px; margin-bottom: 14px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.project-access { margin-top: 13px; font-size: 10px; }
.progress-label, .due-label, .project-task-link { font-size: 11px; }
.bar { height: 6px; margin: 7px 0 13px; }
.project-task-link { min-height: 34px; padding: 0 8px; border-radius: 8px; }
.project-task-link:hover { background: var(--mint-2); }
.project-edit-button { top: 16px; right: 61px; width: 32px; height: 32px; border: 1px solid var(--line); background: #fff; }

.department-queue-controls { gap: 10px; margin-bottom: 13px; }
.department-queue-controls > label, .department-queue-identity, .department-queue-kpis { min-height: 68px; border-radius: 12px; box-shadow: var(--shadow-xs); }
.department-queue-controls > label { gap: 7px; padding: 11px 13px; }
.department-queue-controls > label span, .queue-template-select > span, .department-queue-identity small { font-size: 10px; }
.department-queue-controls select { min-height: 38px; font-size: 12px; }
.department-queue-identity { padding: 12px 15px; }
.department-queue-identity strong { font-size: 16px; }
.department-queue-kpis small { font-size: 9px; }
.department-queue-kpis strong { font-size: 18px; }
.department-queue-toolbar { gap: 9px; padding: 10px 13px; }
.department-queue-table th { padding: 9px 11px; font-size: 9px; }
.department-queue-table td { padding: 10px 11px; font-size: 11px; }
.queue-task-title { font-size: 13px; }
.queue-task-cell small, .department-file-stack > small { font-size: 10px; }
.queue-field-value, .department-queue-link { font-size: 11px; }
.department-file { min-height: 36px; }
.department-file strong, .queue-resolve { font-size: 10px; }
.department-file button { width: 32px; height: 32px; }
.queue-resolve { min-height: 38px; padding: 7px 12px; }
.department-queue-foot { padding: 12px 15px; font-size: 11px; }
.department-queue-mobile { display: none; }

/* File library */
.file-stats { gap: 11px; margin-bottom: 14px; }
.file-stats article { min-height: 68px; gap: 11px; padding: 11px 14px; border-radius: 12px; }
.file-stats article > span { width: 36px; height: 36px; border-radius: 10px; }
.file-stats strong { font-size: 18px; }
.file-stats small { font-size: 10px; }
.file-library-panel { border-radius: 18px; }
.file-toolbar { grid-template-columns: minmax(260px,1fr) 180px auto; gap: 9px; padding: 10px 12px; font-size: 10px; }
.file-search { min-height: 44px; padding-inline: 12px; }
.file-search input { font-size: 12px; }
.file-grid { gap: 11px; padding: 11px; background: #f5f8f6; }
.file-card { border-radius: 12px; }
.file-card:hover { border-color: #b9cec5; box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.file-card-preview { height: 104px; gap: 7px; }
.file-card-preview svg { width: 34px; height: 34px; }
.file-card-preview span { font-size: 9px; letter-spacing: 1px; }
.file-card-copy { padding: 12px; }
.file-category { margin-bottom: 8px; padding: 4px 7px; font-size: 8px; }
.file-card-copy strong { font-size: 14px; }
.file-card-copy p { height: 38px; margin: 6px 0 13px; font-size: 11px; }
.file-card-copy footer { padding-top: 11px; font-size: 10px; }
.file-card-actions { top: 10px; right: 10px; }
.file-card-actions .icon-button { width: 38px; height: 38px; }

/* Notes */
.notes-page-head { margin-bottom: 22px; }
.notes-workspace {
  min-height: 570px;
  height: calc(100dvh - 198px);
  grid-template-columns: 190px 290px minmax(360px,1fr);
  border-color: #d7dfda;
  border-radius: 20px;
  box-shadow: var(--shadow);
}
.notes-folder-pane { padding: 13px 9px 10px; background: #f0f1ed; }
.notes-pane-title { padding: 4px 9px 12px; }
.notes-pane-title strong { font-size: 15px; }
.notes-pane-title button, .note-editor-toolbar button, .note-folder-form button { width: 34px; height: 34px; border-radius: 9px; }
.note-folder-row { min-height: 36px; padding: 7px 9px; }
.note-folder-row > span { font-size: 12px; }
.note-folder-row small { font-size: 10px; }
.note-folder-divider { margin-top: 18px; font-size: 9px; }
.note-folder-hint, .notes-private-badge { font-size: 10px; }
.notes-list-head { padding: 11px; }
.notes-list-head label { min-height: 38px; padding-inline: 10px; border-radius: 9px; }
.notes-list-head input { min-height: 40px !important; font-size: 12px !important; }
.notes-list-head > span { margin-top: 9px; font-size: 9px; }
.note-list-row { min-height: 64px; padding: 11px 13px; }
.note-list-title strong { font-size: 13px; }
.note-list-preview, .note-list-preview small { font-size: 10px; }
.notes-compose-button { min-height: 42px; margin: 11px; font-size: 11px; }
.note-editor-toolbar { min-height: 52px; padding: 8px 12px; }
.note-format-tools button { width: 38px; font-size: 13px; }
.note-save-status { font-size: 9px; }
.note-editor-meta { padding: 14px 36px 2px; font-size: 10px; }
.note-editor-meta label { font-size: 10px !important; }
.note-editor-meta select { min-height: 32px !important; font-size: 10px !important; }
.note-editor-title { width: calc(100% - 72px) !important; margin: 10px 36px 0 !important; font-size: clamp(26px,2.4vw,32px) !important; }
.note-editor-content { width: calc(100% - 72px) !important; margin: 15px 36px 32px !important; color: #263a36 !important; font-size: 14px !important; line-height: 1.72 !important; }

/* People and activity */
.team-page .page-head { margin-bottom: 14px; }
.team-page-head { align-items: flex-end; }
.team-page-actions { display: flex; align-items: center; gap: 9px; }
.team-roster-count { min-height: 36px; display: inline-flex; align-items: center; gap: 7px; padding: 0 11px; border: 1px solid #dbe6e1; border-radius: 10px; color: #526b64; background: rgba(255,255,255,.78); font-size: 11px; font-weight: 750; white-space: nowrap; }
.team-roster-count svg { color: var(--teal); }
.activity-monitor-panel { margin-bottom: 14px; overflow: visible; border-radius: 16px; }
.activity-monitor-panel > .panel-head { min-height: 54px; padding: 10px 14px; }
.activity-monitor-panel > .panel-head h2 { font-size: 14px; }
.activity-monitor-panel > .panel-head p { margin-top: 2px; font-size: 10px; }
.activity-monitor-panel > .panel-head .button { min-height: 32px; padding-inline: 10px; font-size: 10px; }
.activity-overview { background: #f6f9f7; }
.activity-overview > span { position: relative; padding: 8px 13px; }
.activity-overview > span::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: #6eaa9a; opacity: .45; }
.activity-overview > span:nth-child(2)::before { background: #4d83b9; }
.activity-overview > span:nth-child(3)::before { background: #c96353; }
.activity-overview > span:nth-child(4)::before { background: #c89735; }
.activity-overview strong { font-size: 19px; }
.activity-overview small { font-size: 10px; }
.activity-details > summary { min-height: 40px; padding: 0 14px; }
.activity-details > summary span, .activity-details > summary small { font-size: 10px; }
.activity-member-row { min-height: 56px; gap: 12px; }
.activity-person .avatar { width: 34px; height: 34px; border-radius: 10px; }
.activity-person { grid-template-columns: 34px minmax(0,1fr); }
.activity-person strong, .activity-presence strong { font-size: 11px; }
.activity-person small, .activity-presence small, .activity-metrics small { font-size: 9px; }
.activity-person .presence-dot { left: 26px; }
.activity-metrics > span { padding: 7px 8px; }
.activity-privacy-note { padding: 8px 16px; font-size: 9px; }
.team-grid { grid-template-columns: repeat(auto-fill,minmax(250px,1fr)); gap: 12px; align-items: stretch; }
.person-card { position: relative; z-index: 1; min-width: 0; min-height: 0; display: grid; grid-template-rows: auto auto auto 1fr auto; gap: 10px; padding: 14px; border-radius: 15px; text-align: left; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.person-card:hover { z-index: 2; transform: translateY(-1px); border-color: #c4d9d1; box-shadow: 0 12px 28px rgba(25,55,48,.09); }
.person-card:has(.member-access-select[open]), .person-card:has(.person-card-menu[open]) { z-index: 30; }
.person-card-head { min-width: 0; display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 10px; }
.person-avatar-wrap { position: relative; width: 44px; height: 44px; }
.person-card .avatar { width: 44px; height: 44px; margin: 0; border-radius: 13px; font-size: 11px; }
.person-avatar-wrap .presence-dot { left: auto; right: -1px; bottom: -1px; }
.person-card-identity { min-width: 0; }
.person-card h3 { display: flex; align-items: center; gap: 6px; margin: 0; overflow: hidden; color: var(--deep); font-size: 14px; letter-spacing: -.2px; white-space: nowrap; }
.person-card h3 small { padding: 3px 5px; border-radius: 999px; color: #2d7668; background: #e7f4ef; font-size: 8px; font-weight: 800; letter-spacing: 0; }
.person-card .person-job-title { min-height: 0; margin: 3px 0 0 !important; overflow: hidden; color: #71817c; font-size: 10px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.person-presence-label { align-self: start; max-width: 86px; overflow: hidden; padding: 5px 7px; border-radius: 999px; color: #72817d; background: #f0f3f2; font-size: 8px; font-weight: 750; line-height: 1; text-overflow: ellipsis; white-space: nowrap; }
.person-presence-label.online { color: #21745a; background: #e3f4eb; }
.person-card-tags { min-width: 0; display: flex; align-items: center; gap: 6px; overflow: hidden; }
.person-card-tags > span { min-width: 0; display: inline-flex; align-items: center; gap: 5px; overflow: hidden; padding: 5px 7px; border: 1px solid #e2e9e6; border-radius: 7px; color: #536b65; background: #f8faf9; font-size: 9px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.person-card-tags > span:first-child { flex: 0 1 auto; color: #376d61; background: #edf6f2; }
.person-card-tags > span:last-child { flex: 1 1 auto; }
.member-access-select { margin: 0; }
.member-access-select summary { min-height: 32px; padding: 5px 8px; border-radius: 8px; }
.member-access-select summary > span { display: inline-flex; align-items: center; gap: 5px; font-size: 8px; }
.member-access-select summary > strong { font-size: 9px; }
.member-access-select summary > i { display: inline-flex; }
.member-access-select .role-multi-menu { left: auto; right: 0; width: min(290px,calc(100vw - 32px)); transform: none; }
.person-card-workload { grid-row: 4; align-self: end; padding: 9px 10px; border: 1px solid #e3ebe7; border-radius: 10px; background: #f8faf9; }
.person-card-workload .capacity-head { margin-bottom: 6px; color: #6e7e79; font-size: 10px !important; }
.person-card-workload .capacity-head strong { color: #2c4841; font-size: 10px; }
.person-card-workload .bar { height: 5px; margin: 0; background: #e5ece9; }
.person-card-workload .availability { margin-top: 7px; color: #60736d; font-size: 9px !important; }
.person-card-workload .availability::before { width: 5px; height: 5px; }
.person-card-actions { grid-row: 5; display: flex; align-items: center; gap: 7px; padding-top: 1px; }
.view-member-profile { min-height: 34px; flex: 1; margin: 0; padding: 7px 10px; border-radius: 9px; font-size: 10px; }
.person-card-menu { position: relative; flex: 0 0 auto; }
.person-card-menu > summary { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid #dce7e2; border-radius: 9px; color: #58726b; background: #fff; cursor: pointer; list-style: none; }
.person-card-menu > summary::-webkit-details-marker { display: none; }
.person-card-menu[open] > summary { border-color: #91bbae; color: var(--teal); background: #edf7f3; }
.person-card-menu > div { position: absolute; z-index: 40; right: 0; bottom: calc(100% + 7px); width: 205px; display: grid; gap: 3px; padding: 6px; border: 1px solid #d6e2dd; border-radius: 10px; background: #fff; box-shadow: 0 16px 34px rgba(20,48,43,.17); }
.person-card-menu .manage-team-button, .person-card-menu .remove-member { width: 100%; min-height: 34px; display: flex; align-items: center; justify-content: flex-start; gap: 7px; margin: 0; padding: 7px 8px; border: 0; border-radius: 7px; text-align: left; font-size: 9px; font-weight: 750; }
.person-card-menu .manage-team-button { color: #315f56; background: transparent; }
.person-card-menu .manage-team-button small { margin-left: auto; color: #81908c; font-size: 8px; }
.person-card-menu .remove-member { color: #aa4f42; background: transparent; }
.person-card-menu .manage-team-button:hover { background: #edf6f2; }
.person-card-menu .remove-member:hover { background: #fff2ef; }
.pending-panel { margin-top: 14px; }
.member-profile-hero { grid-template-columns: 86px minmax(0,1fr); gap: 20px; padding-bottom: 22px; }
.member-profile-hero .avatar { width: 86px; height: 86px; border-radius: 24px; }
.member-profile-hero span { font-size: 10px; }
.member-profile-hero h3 { font-size: 26px; }
.member-profile-hero p { font-size: 12px; }
.member-profile-facts > div { padding: 15px; }
.member-profile-facts small, .member-profile-skills > small { font-size: 9px; }
.member-profile-facts strong, .member-profile-facts a { font-size: 12px; }
.member-profile-skills span { padding: 7px 10px; font-size: 10px; }

/* Calendar */
.calendar-concept-layout { align-items: start; }
.calendar-concept-1.calendar-range-2 .calendar-concept-layout,
.calendar-concept-1.calendar-range-1 .calendar-concept-layout { grid-template-columns: minmax(0,1fr) 310px; gap: 14px; }
.calendar-panel { border-radius: 18px; }
.calendar-toolbar { min-height: 58px; gap: 12px; padding: 9px 12px; }
.calendar-nav, .calendar-toolbar-actions { gap: 8px; }
.calendar-toolbar-title h2 { font-size: 17px; }
.calendar-toolbar-title span { font-size: 10px; }
.calendar-holiday-picker summary { min-height: 38px; font-size: 11px; }
.calendar-legend { gap: 13px; padding: 7px 12px; }
.calendar-legend span { font-size: 10px; }
.calendar-months { gap: 10px; padding: 10px; background: #f5f8f6; }
.calendar-month { border-radius: 13px; }
.calendar-month > header { min-height: 40px; padding: 8px 10px; }
.calendar-month > header h3 { font-size: 13px !important; }
.calendar-month > header span { font-size: 10px; }
.calendar-weekdays span { padding: 6px 4px; font-size: 8px !important; }
.calendar-day { min-height: 64px; padding: 5px; }
.range-1 .calendar-day { min-height: 82px; }
.calendar-date { margin-bottom: 5px; font-size: 10px !important; }
.calendar-date small { width: 18px; height: 18px; font-size: 8px !important; }
.calendar-day.today .calendar-date > span { width: 22px; height: 22px; }
.calendar-events { gap: 4px; }
.calendar-event { min-height: 22px; padding: 4px 5px; border-left-width: 3px; border-radius: 6px; }
.calendar-event strong { font-size: 9px !important; }
.calendar-event span { font-size: 8px !important; }
.calendar-event.holiday-event { cursor: default; }
.calendar-more { display: inline-flex; min-height: 24px; align-items: center; padding: 0 4px; border: 0; color: var(--teal); background: transparent; font-size: 9px !important; font-weight: 800; cursor: pointer; }
.calendar-agenda { position: sticky; top: calc(var(--topbar-height) + 14px); display: block; border-radius: 15px; }
.calendar-agenda .panel-head { min-height: 68px; }
.calendar-side-summary { margin: 0 16px 4px; }
.calendar-side-summary > header { padding: 12px 14px; }
.calendar-side-summary > header span { font-size: 10px; }
.calendar-side-summary > header strong { font-size: 12px; }
.calendar-side-summary > div strong { font-size: 15px; }
.calendar-side-summary > div small { font-size: 9px; }
.calendar-agenda .schedule-list { max-height: 510px; overflow-y: auto; }
.calendar-agenda .schedule-item { grid-template-columns: 58px 3px minmax(0,1fr) auto; min-height: 54px; }
.agenda-holiday-icon, .agenda-birthday-icon, .agenda-meeting-icon, .agenda-task-icon { width: 34px; height: 34px; border-radius: 10px; }

/* Meetings and scheduling */
.meeting-head-actions { gap: 8px; margin: -61px 0 22px; }
.meeting-stats { gap: 11px; margin-bottom: 14px; }
.meeting-stats article { min-height: 68px; gap: 11px; padding: 11px 14px; border-radius: 12px; }
.meeting-stats article > span { width: 36px; height: 36px; border-radius: 10px; }
.meeting-stats strong { font-size: 18px; }
.meeting-stats small { font-size: 11px; }
.google-meet-banner, .scheduling-callout { grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; padding: 11px 14px; border-radius: 12px; }
.google-meet-banner > span, .scheduling-callout > span { width: 38px; height: 38px; border-radius: 11px; }
.google-meet-banner strong, .scheduling-callout strong { font-size: 13px; }
.google-meet-banner p, .scheduling-callout p { font-size: 12px; }
.meetings-layout, .scheduling-layout { gap: 14px; }
.meeting-list { gap: 0; padding: 4px 14px 12px; }
.meeting-card { min-height: 72px; gap: 11px; padding: 10px 2px; }
.meeting-date-block { width: 48px; min-height: 50px; border-radius: 10px; }
.meeting-card-copy strong { font-size: 14px; }
.meeting-card-copy small { font-size: 11px; }
.meeting-card-copy > div { gap: 7px; font-size: 11px; }
.meeting-card-copy h3 { margin: 4px 0 2px; font-size: 14px; line-height: 1.35; }
.meeting-card-copy p { font-size: 12px; line-height: 1.45; }
.meeting-card-copy footer { margin-top: 7px; font-size: 11px; }
.meeting-card-actions { gap: 7px; }
.schedule-owner-bar { min-height: 60px; padding: 10px 14px; border-radius: 12px; }
.schedule-owner-bar > div:first-child strong { font-size: 14px; }
.schedule-owner-bar > div:first-child span { font-size: 11px !important; }
.schedule-owner-select select { min-height: 40px; font-size: 12px; }
.booking-link-grid { gap: 10px; padding: 11px; }
.event-type-card { overflow: visible; border-radius: 15px; }
.booking-card-body { padding: 14px; }
.event-type-card h3 { margin-top: 10px; font-size: 16px; }
.event-type-card p { min-height: 44px; font-size: 12px; }
.event-date-window, .booking-window, .event-team-rule, .event-block-count { font-size: 11px; }
.booking-url { min-height: 38px; font-size: 11px; }
.booking-url button { width: 40px; height: 40px; margin: -5px -6px -5px 0; border-radius: 9px; }
.event-type-card footer { gap: 5px; padding-top: 11px; }
.event-type-card footer .text-button { min-height: 36px; font-size: 11px; }
.event-card-actions { position: relative; margin-left: auto; }
.event-card-actions > summary { list-style: none; cursor: pointer; }
.event-card-actions > summary::-webkit-details-marker { display: none; }
.event-card-actions > div { position: absolute; z-index: 12; right: 0; bottom: calc(100% + 7px); width: 164px; display: grid; gap: 3px; padding: 7px; border: 1px solid var(--line); border-radius: 11px; background: #fff; box-shadow: var(--shadow); }
.event-card-actions > div .text-button { width: 100%; justify-content: flex-start; }
.booking-row { min-height: 76px; gap: 12px; padding: 12px 16px; }
.booking-row strong { font-size: 13px; }
.booking-row small { font-size: 11px; }
.booking-row time strong { font-size: 12px; }
.booking-row time small { font-size: 11px; }

/* Inbox, services, and settings */
.inbox-list { padding: 5px 13px 13px; }
.inbox-item { grid-template-columns: 38px minmax(0,1fr) auto; gap: 11px; min-height: 64px; padding: 10px 8px; border-radius: 9px; }
.inbox-item:hover { background: #f5f9f7; }
.inbox-item.unread { background: #edf7f3; }
.inbox-item strong { font-size: 13px; }
.inbox-item small, .inbox-item time { font-size: 11px; }
.notice-icon { width: 38px; height: 38px; border-radius: 11px; }

.services-directory { gap: 11px; margin-bottom: 14px; }
.service-launch-card { grid-template-columns: 42px minmax(0,1fr) 18px; gap: 11px; min-height: 68px; padding: 12px; border-radius: 12px; }
.service-launch-card:hover, .service-launch-card.active { border-color: #78ad9e; box-shadow: var(--shadow-sm); }
.service-launch-card strong { font-size: 14px; }
.service-launch-card small { font-size: 11px; }
.service-hub { border-radius: 18px; }
.service-hub-intro { padding: 17px; }
.service-manager { padding: 18px; border-radius: 14px; }
.testimonial-layout { gap: 15px; }
.testimonial-form, .testimonial-queue, .testimonial-library { border-radius: 15px; }
.submission-card { padding: 15px; }
.submission-card-head h3 { font-size: 14px; }
.submission-card > p { font-size: 12px; }
.submission-meta, .submission-card-head time { font-size: 10px; }

.settings-layout { grid-template-columns: 220px minmax(0,1fr); gap: 16px; }
.settings-menu { position: sticky; top: calc(var(--topbar-height) + 18px); padding: 10px; border-radius: 16px; }
.settings-menu button { min-height: 44px; gap: 10px; padding: 10px 12px; border-radius: 10px; font-size: 12px; }
.settings-menu button.active { color: #16463f; background: #eaf5f1; box-shadow: inset 0 0 0 1px #d9e9e2; }
.settings-content { min-width: 0; }
.settings-stack { max-width: 1100px; gap: 16px; }
.settings-form { padding: 22px; }
.settings-form h2 { font-size: 19px; }
.settings-form > p, .settings-title p { font-size: 12px; }
.settings-title { margin-bottom: 19px; }
.rich-profile-title > div { gap: 16px; }
.profile-form-section { padding: 18px; border-radius: 12px; }
.profile-section-heading strong { font-size: 14px; }
.profile-section-heading small { font-size: 10px; }
.profile-visibility-toggle { min-height: 56px; padding: 11px; }
.profile-visibility-toggle strong { font-size: 12px; }
.profile-visibility-toggle small { font-size: 10px; }
.preference-grid { gap: 11px; }
.preference-grid label { min-height: 58px; padding: 11px; border-radius: 10px; }
.preference-grid input { width: 18px; height: 18px; }
.preference-grid strong { font-size: 12px; }
.preference-grid small { font-size: 10px; }
.service-settings-grid { gap: 15px; }
.service-settings-card { padding: 17px; border-radius: 13px; }
.service-settings-head strong { font-size: 14px; }
.service-settings-head small { font-size: 11px; }
.service-status-toggle { min-height: 38px; font-size: 11px; }
.service-credential-form { gap: 17px; padding: 16px; }
.service-credential-copy strong { font-size: 12px; }
.service-credential-copy small { font-size: 10px; }
.service-credential-form > label { font-size: 11px; }
.service-access-head strong { font-size: 13px; }
.service-access-head small { font-size: 10px; }
.service-access-mode strong, .service-member-option strong { font-size: 11px; }
.service-access-mode small, .service-member-option small { font-size: 10px; }
.service-member-option { min-height: 54px; }
.service-access-summary, .service-key-note span, .service-disabled-note { font-size: 10px; }

/* Task templates */
.template-page-note { margin-bottom: 15px; padding: 12px 14px; border-radius: 12px; }
.template-page-note strong { font-size: 13px; }
.template-page-note p { font-size: 11px; }
.workflow-editor-layout { grid-template-columns: minmax(370px,.92fr) minmax(410px,1.08fr); gap: 14px; }
.template-form-section { padding: 16px; }
.template-section-heading { gap: 12px; }
.template-section-heading > span { width: 32px; height: 32px; font-size: 12px; }
.template-section-heading strong { font-size: 15px; }
.template-section-heading small { font-size: 11px; }
.template-editor label, .workflow-builder label { font-size: 12px; }
.template-fields-builder { border-radius: 13px; }
.template-field-editor-row { padding: 12px; }
.template-field-name, .template-field-type, .template-field-options { font-size: 12px; }
.template-required-toggle { font-size: 11px; }
.template-upload-toggle { min-height: 60px; padding: 12px; }
.template-upload-toggle strong { font-size: 13px; }
.template-upload-toggle small { font-size: 10px; }
.workflow-form-actions { gap: 9px; }
.workflow-form-actions > span { font-size: 10px; }
.workflow-resource-grid { gap: 12px; padding: 5px 16px 16px; }
.workflow-resource-card { border-radius: 13px; }
.workflow-resource-card > div { padding: 15px 15px 13px 18px; }
.workflow-resource-card > div > span { font-size: 8px; }
.workflow-resource-card h3 { font-size: 14px; }
.workflow-resource-card p { min-height: 44px; font-size: 11px; }
.workflow-resource-card small { font-size: 9px; }
.workflow-resource-card footer { min-height: 52px; padding: 9px 12px 9px 17px; }
.workflow-resource-card footer .icon-button { width: 36px; height: 36px; }

/* Modals, popovers, feedback */
.modal, .search-modal {
  width: min(580px, calc(100% - 32px));
  max-height: min(860px, calc(100dvh - 32px));
  border: 1px solid #d2ded8;
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow-lg);
}
.modal::backdrop, .search-modal::backdrop { background: rgba(8, 29, 28, .53); backdrop-filter: blur(7px) saturate(.85); }
.modal > form { max-height: min(860px, calc(100dvh - 32px)); padding: 20px 22px; }
.modal-head { top: -20px; margin-bottom: 15px; padding: 18px 0 14px; }
.modal-head h2 { font-size: 20px; }
.modal-head p { font-size: 12px !important; }
.modal-head .icon-button { width: 34px; height: 34px; }
.modal label { font-size: 12px; }
.modal input, .modal select { min-height: 40px; height: 40px; font-size: 13px; }
.modal textarea { font-size: 14px; }
.modal-actions { bottom: -20px; gap: 8px; margin-top: 17px; padding: 12px 0 18px; }
.modal-alert, .form-alert { padding: 13px 14px; border-radius: 11px; font-size: 12px; }
.task-detail-modal { width: min(680px, calc(100% - 32px)); }
.task-detail-modal .task-essentials-bar { grid-template-columns: minmax(0, 1fr) minmax(190px, .42fr); }
.task-view-modal { width: min(760px, calc(100% - 32px)); border-radius: 16px; }
.task-view-head h2 { font-size: 23px; }
.task-view-status { min-height: 46px; }
.task-view-section { padding: 14px; border-radius: 12px; }
.task-view-section h3 { font-size: 16px; }
.task-view-grid > div { min-height: 72px; padding: 12px; }
.task-view-grid small { font-size: 10px; }
.task-view-grid strong { font-size: 14px; }
.task-view-template strong { font-size: 15px; }
.task-view-fields span { font-size: 13px; }
.task-view-conversation .comment-copy p { font-size: 13px; }
.comment-reply-button { min-height: 36px; font-size: 11px; }
.task-view-comment-form textarea { min-height: 92px; }
.member-picker { padding: 13px; }
.member-option { min-height: 50px; padding: 8px; }
.member-option strong { font-size: 12px; }
.member-option small { font-size: 10px; }
.meeting-modal { width: min(740px, calc(100% - 32px)); }
.event-editor-modal { width: min(1060px, calc(100% - 32px)); }
.event-form-section { padding: 16px; border-radius: 12px; }
.event-section-head strong { font-size: 15px; }
.event-section-head small { font-size: 11px; }
.event-range-trigger { min-height: 62px; padding: 10px 12px; }
.event-range-trigger small { font-size: 9px; }
.event-range-trigger strong { font-size: 12px; }
.event-range-calendar-jump select { min-height: 38px; font-size: 11px; }
.event-range-weekdays span { font-size: 9px; }
.event-range-grid button { min-height: 42px; font-size: 11px; }
.availability-days { padding: 13px; }
.availability-days-head > strong { font-size: 11px; }
.availability-days-grid label { min-height: 44px; font-size: 10px; }
.availability-hours > div strong { font-size: 11px; }
.availability-hours > div small { font-size: 9px; }
.event-live-preview { padding: 19px; }
.event-live-preview h3 { font-size: 19px; }
.event-live-preview > p, .event-live-preview li { font-size: 12px; }
.event-live-preview > small { font-size: 10px; }

.popover { top: 68px; right: 28px; width: 340px; padding: 9px; border-radius: 15px; box-shadow: 0 20px 55px rgba(13,43,40,.16); }
.popover-head { min-height: 44px; padding: 8px 10px; }
.popover-head strong { font-size: 13px; }
.popover-head button { min-height: 32px; font-size: 10px; }
.notice { gap: 10px; min-height: 62px; padding: 10px; }
.notice p { font-size: 11px; }
.notice p small { font-size: 9px; }
.profile-popover button { min-height: 44px; font-size: 12px; }
.toast-region { right: 22px; bottom: 22px; gap: 8px; }
.toast { min-width: 290px; max-width: 380px; gap: 10px; padding: 13px 15px; border-radius: 12px; }
.toast p { font-size: 11px; }
.toast strong { font-size: 12px; }
.coming-call-card { border-radius: 16px; }
.coming-call-copy strong { font-size: 14px; }
.coming-call-copy small { font-size: 11px; }

/* Authentication and public booking */
.auth-brand-panel { padding: 38px 46px; background:
  radial-gradient(circle at 100% 20%, rgba(132,202,181,.13), transparent 23rem),
  linear-gradient(145deg, #154744, #0e3331); }
.auth-story h1 { font-size: clamp(38px,4.2vw,54px); }
.auth-story > p { color: #bdd0cb; font-size: 16px; }
.auth-kicker { font-size: 11px; }
.auth-proof strong { font-size: 12px; }
.auth-proof small, .auth-quote { font-size: 10px; }
.auth-form-panel { background: #f5f7f4; }
.auth-card { width: min(430px,100%); padding: 32px; border-radius: 20px; box-shadow: 0 22px 64px rgba(18,58,55,.11); }
.auth-card h2 { font-size: 25px; }
.auth-card > p:not(.auth-switch) { font-size: 12px; }
.auth-switch { font-size: 11px; }
.auth-terms { font-size: 9px; }

.booking-shell { padding: 22px; }
.booking-brand { margin-bottom: 19px; font-size: 10px; }
.public-booking-card { width: min(980px,100%); min-height: 560px; grid-template-columns: minmax(280px,.74fr) minmax(0,1.26fr); border-radius: 18px; }
.public-booking-card > aside { padding: 32px; }
.booking-host-avatar { width: 54px; height: 54px; border-radius: 16px; font-size: 13px; }
.public-booking-card aside > small { font-size: 10px; }
.public-booking-card h1 { font-size: 26px; }
.public-booking-card aside p { font-size: 12px; }
.public-booking-card aside li { font-size: 11px; }
.public-booking-card > main { padding: 28px; }
.public-booking-step > span { width: 32px; height: 32px; font-size: 10px; }
.public-booking-step strong { font-size: 14px; }
.public-booking-step small { font-size: 10px; }
.public-calendar-day, .public-booking-slots button { min-height: 44px; font-size: 12px; }
.public-booking-card form label { font-size: 11px; }
.booking-no-slots, .public-booking-selected { font-size: 11px; }

/* Responsive design */
@media (max-width: 1320px) {
  .content { padding-inline: 32px; }
  .section-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .calendar-concept-1.calendar-range-2 .calendar-concept-layout { grid-template-columns: 1fr; }
  .calendar-concept-1.calendar-range-2 .calendar-agenda { position: static; }
  .team-grid { grid-template-columns: repeat(auto-fill,minmax(250px,1fr)); }
  .workflow-editor-layout { grid-template-columns: 1fr; }
}

@media (max-width: 1120px) {
  :root { --sidebar-width: 228px; }
  .content { padding: 24px 22px 50px; }
  .overview-grid, .daily-briefing-grid { grid-template-columns: 1fr; }
  .table-toolbar { grid-template-columns: 1fr auto; }
  .task-discovery { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; }
  .task-search-control { width: min(500px,100%); }
  .task-row { grid-template-columns: 18px minmax(220px,1.5fr) minmax(135px,.8fr) 90px 42px; }
  .task-row > :nth-child(5) { display: none; }
  .file-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .settings-layout { grid-template-columns: 220px minmax(0,1fr); }
  .event-editor-layout { grid-template-columns: 1fr 300px; }
}

@media (max-width: 860px) {
  :root { --topbar-height: 64px; }
  .sidebar { width: min(286px, calc(100vw - 48px)); padding: 15px 13px; }
  .main-area { margin-left: 0; }
  .topbar { height: var(--topbar-height); padding: 0 16px; }
  .search-trigger { flex: 1; width: auto; max-width: 360px; margin-left: 6px; }
  .content { padding: 22px 16px 64px; }
  .page-head { align-items: flex-start; }
  .settings-layout { grid-template-columns: 1fr; }
  .settings-menu { position: static; display: flex; gap: 4px; overflow-x: auto; padding: 6px; }
  .settings-menu button { min-width: max-content; }
  .calendar-concept-1.calendar-range-1 .calendar-concept-layout { grid-template-columns: 1fr; }
  .calendar-agenda { position: static; }
  .task-board { grid-template-columns: 1fr; }
  .board-stack { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .notes-workspace { grid-template-columns: 180px 290px minmax(340px,1fr); }
  .activity-member-row { grid-template-columns: minmax(170px,1fr) minmax(130px,.7fr); }
  .activity-metrics { grid-column: 1 / -1; }
  .services-directory { grid-template-columns: 1fr; }
}

@media (min-width: 621px) and (max-width: 800px) {
  .notes-workspace { grid-template-columns: 260px minmax(0, 1fr); }
  .notes-list-pane { grid-column: 1; }
  .notes-editor-pane { grid-column: 2; }
}

@media (max-width: 700px) {
  body { font-size: 14px; }
  h1 { font-size: 28px; }
  .content { padding: 20px 12px 76px; }
  .page-head { gap: 13px; margin-bottom: 18px; }
  .page-head p { font-size: 13px; }
  .page-head .button { flex: 0 0 auto; }
  .button, .icon-button, input, select, .button.small, .text-button, .service-status-toggle, .view-member-profile, .manage-team-button { min-height: 44px; }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .stat-card { min-height: 100px; padding: 13px; }
  .stat-main strong { font-size: 25px; }
  .stat-card > small { font-size: 10px; }
  .section-grid, .team-grid, .file-grid { grid-template-columns: 1fr; }
  .team-page-head { align-items: stretch; flex-direction: column; }
  .team-page-actions { width: 100%; }
  .team-roster-count { flex: 1; }
  .team-page-actions .button { min-width: 142px; justify-content: center; }
  .team-page-actions .button span { display: inline !important; }
  .activity-monitor-panel > .panel-head { min-height: 58px; }
  .activity-overview { grid-template-columns: 1fr 1fr; }
  .activity-overview > span:nth-child(2) { border-right: 0; }
  .activity-overview > span { min-height: 54px; display: flex; flex-direction: column; justify-content: center; }
  .activity-details > summary { min-height: 44px; }
  .person-card { gap: 9px; padding: 13px; }
  .person-card-head { grid-template-columns: 44px minmax(0,1fr); }
  .person-presence-label { grid-column: 2; justify-self: start; margin-top: -5px; }
  .person-card-menu > summary { width: 44px; height: 44px; }
  .view-member-profile { min-height: 44px; }
  .project-card { min-height: 210px; }
  .table-toolbar { display: flex; align-items: stretch; flex-direction: column; gap: 10px; }
  .task-discovery { display: grid; grid-template-columns: 1fr auto; }
  .task-sort-control { grid-template-columns: 1fr; }
  .task-sort-control > span { display: none; }
  .toolbar-actions { width: 100%; justify-content: flex-end; }
  .filter-group { width: 100%; overflow-x: auto; }
  .filter-button { flex: 1; white-space: nowrap; }
  .task-row { grid-template-columns: 7px minmax(0,1fr) 34px; min-height: 68px; padding: 7px 7px; }
  .task-row > :nth-child(3), .task-row > :nth-child(4), .task-row > :nth-child(5) { display: none; }
  .task-list { padding-inline: 7px; }
  .board-stack { grid-template-columns: 1fr; }
  .board-card.executive:not(.completed) { height: 142px; grid-template-columns:minmax(0,1fr) 74px; }
  .board-card.executive.completed { height: 68px; }
  .department-queue-controls { grid-template-columns: 1fr; }
  .department-queue-kpis { grid-column: auto; }
  .department-queue-toolbar { align-items: stretch; flex-direction: column; }
  .department-queue-toolbar .task-search-control, .queue-template-select, .department-queue-toolbar .task-sort-control { width: 100%; }
  .department-queue-toolbar .filter-group { order: 3; margin-left: 0; }
  .department-queue-table { min-width: 760px; }
  .department-queue-table th:first-child, .department-queue-table td:first-child { min-width: 205px; }
  .department-queue-table-wrap { display: none; }
  .department-queue-mobile { display: grid; gap: 10px; padding: 12px; }
  .department-mobile-card { overflow: hidden; border: 1px solid var(--line); border-left: 4px solid var(--teal); border-radius: 13px; background: #fff; box-shadow: var(--shadow-xs); }
  .department-mobile-card.resolved { border-left-color: #78928a; opacity: .78; }
  .department-mobile-card > header { padding: 13px 13px 11px; border-bottom: 1px solid #edf1ef; }
  .department-mobile-card > header > span { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  .department-mobile-card .queue-task-title { display: block; margin-top: 9px; font-size: 15px; }
  .department-mobile-card > header > small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
  .department-mobile-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); }
  .department-mobile-fields > div { min-width: 0; padding: 11px 13px; background: #fafcfb; }
  .department-mobile-fields > div > small { display: block; margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
  .department-mobile-fields .queue-field-value { max-width: none; font-size: 12px; white-space: normal; }
  .department-mobile-card > footer { min-height: 58px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 13px; }
  .department-mobile-card .queue-resolve { min-height: 40px; padding-inline: 13px; }
  .department-mobile-empty { display: grid; place-items: center; gap: 7px; min-height: 180px; padding: 24px; text-align: center; }
  .file-stats { grid-template-columns: 1fr 1fr; }
  .file-toolbar { grid-template-columns: 1fr; }
  .file-toolbar > span { text-align: right; }
  .file-card-actions { opacity: 1; }
  .activity-overview { grid-template-columns: 1fr 1fr; }
  .activity-member-row { grid-template-columns: 1fr; }
  .activity-metrics { grid-column: auto; }
  .meeting-head-actions { position: static; margin: -8px 0 20px; }
  .meeting-head-actions .button { flex: 1; }
  .meeting-stats { grid-template-columns: 1fr 1fr; gap: 10px; }
  .google-meet-banner, .scheduling-callout { grid-template-columns: 42px minmax(0,1fr); }
  .google-meet-banner .button, .scheduling-callout .button { grid-column: 1 / -1; width: 100%; }
  .meetings-layout, .scheduling-layout { grid-template-columns: 1fr; }
  .calendar-toolbar { display: flex; align-items: stretch; flex-direction: column; }
  .calendar-toolbar-title { order: -1; text-align: left; }
  .calendar-toolbar-actions { overflow-x: auto; padding-bottom: 2px; }
  .calendar-holiday-picker summary { width: auto; min-width: 44px; padding: 0 11px; font-size: 11px; }
  .calendar-toolbar-actions > .button { width: auto; min-width: 44px; min-height: 44px; padding-inline: 12px; font-size: 12px; }
  .calendar-range-toggle { display: none; }
  .calendar-months { grid-template-columns: 1fr; padding: 8px; }
  .calendar-concept.calendar-effective-range-1 .calendar-day { min-height: 74px !important; }
  .calendar-events { min-height: 10px; align-content: start; display: flex; flex-wrap: wrap; gap: 4px; }
  .calendar-event { width: 8px; min-width: 8px; min-height: 8px; height: 8px; padding: 0; overflow: visible; border: 0; border-radius: 50%; background: #4d8d7d; }
  .calendar-event.meeting-event { background: #2f8876; }
  .calendar-event.birthday-event { background: #b75f7b; }
  .calendar-event.holiday-event { background: #8467b4; }
  .calendar-event strong, .calendar-event span { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
  .calendar-more { display: none; }
  .calendar-agenda { margin-top: 14px; }
  .settings-form { padding: 17px; }
  .form-grid, .form-row, .preference-grid { grid-template-columns: 1fr; }
  .service-member-list { grid-template-columns: 1fr; }
  .service-credential-form { grid-template-columns: 1fr; }
  .testimonial-layout { grid-template-columns: 1fr; }
  .modal, .search-modal, .task-detail-modal, .task-view-modal, .meeting-modal, .event-editor-modal {
    width: calc(100% - 12px);
    max-height: calc(100dvh - 12px);
    border-radius: 18px;
  }
  .task-view-modal { width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; border-radius: 0; }
  .task-detail-modal .task-essentials-bar { grid-template-columns: 1fr; }
  .modal > form, .event-editor-modal form { max-height: calc(100dvh - 12px); padding: 15px; }
  .modal-head { top: -15px; padding-top: 15px; }
  .modal-actions { bottom: -15px; padding-bottom: 15px; }
  .event-editor-layout { grid-template-columns: 1fr; }
  .event-live-preview { position: static; order: initial; }
  .public-booking-card { grid-template-columns: 1fr; }
  .public-booking-card > aside, .public-booking-card > main { padding: 24px; }
  .public-booking-card aside ul { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .profile-copy, .profile-button > svg, .search-trigger kbd { display: none; }
  .search-trigger > span:nth-child(2) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .page-head .button span:not([data-icon]) { position: absolute; display: block; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
  .team-page-head .team-page-actions .button span:not([data-icon]) { position: static; width: auto; height: auto; overflow: visible; clip: auto; }
  .team-page-actions .button { min-width: 150px; }
  .daily-briefing-grid { gap: 14px; }
  .overview-focus-card, .overview-meeting-card { min-height: 238px; padding: 17px; }
  .overview-focus-actions { flex-direction: column; }
  .overview-focus-actions .button { width: 100%; }
  .overview-grid { grid-template-columns: 1fr; }
  .notes-page-head > button { display: inline-flex; }
  .notes-workspace { height: calc(100dvh - 154px); min-height: 500px; display: flex; flex-direction: column; border-radius: 14px; }
  .notes-workspace.show-list .notes-folder-pane { display: block; flex: 0 0 auto; padding: 8px; border: 0; border-bottom: 1px solid #dedfdc; }
  .notes-workspace:not(.show-list) .notes-folder-pane { display: none; }
  .notes-folder-pane .notes-pane-title, .notes-folder-pane .notes-private-badge, .notes-folder-pane .note-folder-hint, .notes-folder-pane .note-folder-actions, .notes-folder-pane .note-folder-form { display: none; }
  .notes-workspace.show-list .notes-folder-pane .notes-pane-title { display: flex; margin-bottom: 7px; }
  .notes-workspace.show-list .notes-folder-pane .note-folder-actions { display: flex; padding: 7px 2px 0; }
  .notes-workspace.show-list .notes-folder-pane .note-folder-form { display: grid; margin-top: 7px; }
  .notes-folder-pane nav { display: flex; gap: 6px; overflow-x: auto; }
  .notes-folder-pane .note-folder-divider { display: none; }
  .notes-folder-pane .note-folder-row { width: auto; min-width: max-content; min-height: 38px; padding: 7px 10px; border: 1px solid #dcdfda; background: #fff; }
  .notes-folder-pane .note-folder-row.active { border-color: #d5b54d; background: #fff4c7; }
  .notes-list-pane, .notes-editor-pane { min-height: 0; flex: 1; height: auto; }
  .note-save-status { display: inline-flex; }
  .note-editor-toolbar { padding: 8px; }
  .note-editor-meta { padding: 14px 20px 2px; }
  .note-editor-title, .note-editor-content { width: calc(100% - 40px) !important; margin-left: 20px !important; margin-right: 20px !important; }
  .note-editor-title { font-size: 24px !important; }
  .note-editor-content { font-size: 15px !important; }
  .note-format-tools { gap: 1px; }
  .note-format-tools button, .note-editor-actions button { width: 34px; height: 34px; }
  .popover { left: 10px; right: 10px; top: 62px; width: auto; }
  .toast-region { left: 12px; right: 12px; bottom: 12px; }
  .toast { width: 100%; min-width: 0; }
  .booking-shell { padding: 10px; }
  .public-booking-card { border-radius: 16px; }
  .public-booking-slots { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 420px) {
  .content { padding-inline: 12px; }
  .stats-grid, .file-stats, .meeting-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat-card { min-height: 96px; }
  .calendar-toolbar-actions .button { padding-inline: 12px; }
  .calendar-day { min-height: 68px; padding: 4px; }
  .calendar-event { padding-inline: 0; }
  .note-save-status { display: inline-flex; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Route headings receive programmatic focus after navigation without a visual
   focus ring; keyboard-operable controls retain the normal focus treatment. */
#appContent h1:focus { outline: 0; box-shadow: none; }
.settings-content h2[tabindex="-1"]:focus { outline: 0; box-shadow: none; }

/* Password and private credential visibility */
.secret-field { min-width: 0; }
.secret-field > label,
.service-credential-field > label {
  display: block;
  margin: 0 0 6px;
  color: #40534f;
  font-size: 11px;
  font-weight: 750;
}
.auth-card .auth-field { margin-top: 15px; }
.auth-card .auth-field > label { color: var(--deep); }
.secret-input-shell { position: relative; display: block; min-width: 0; }
.secret-input-shell > input {
  width: 100%;
  padding-right: 46px !important;
}
.secret-visibility-toggle {
  position: absolute;
  top: 50%;
  right: 4px;
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  color: #58706b;
  border: 0;
  border-radius: 9px;
  background: transparent;
  cursor: pointer;
  transform: translateY(-50%);
  transition: color .15s ease, background .15s ease, box-shadow .15s ease;
}
.secret-visibility-toggle:hover { color: #185b50; background: #edf6f2; }
.secret-visibility-toggle:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(42, 126, 107, .2);
}
.credential-input-row > .secret-input-shell { min-width: 0; }
.credential-input-row .secret-visibility-toggle { width: 30px; height: 30px; right: 2px; border-radius: 7px; }
.service-credential-field { min-width: 0; }
.workspace-service-scope {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 6px;
  padding: 4px 7px;
  color: #316b5f;
  border: 1px solid #cfe3dc;
  border-radius: 999px;
  background: #edf7f3;
  font-size: 9px;
  font-weight: 750;
}
.workspace-service-scope svg { flex: 0 0 auto; }

@media (max-width: 620px) {
  .secret-visibility-toggle { width: 42px; height: 42px; right: 2px; }
  .credential-input-row .secret-visibility-toggle { width: 34px; height: 34px; }
}

/* Resolve late legacy card declarations without reintroducing the old visual
   language or unreadably small operational labels. */
.board-card.executive:not(.completed) .board-card-main { padding: 8px 9px; background: #fff; }
.board-card.executive:not(.completed) .board-card-eyeline .project-pill,
.board-card.executive:not(.completed) .board-card-eyeline .task-template-badge { padding: 3px 6px; font-size: 8px; }
.board-card.executive:not(.completed) .board-card-eyeline .board-task-id { padding: 3px 5px; }
.board-card.executive:not(.completed) h3 { min-height: 34px; margin: 5px 0 2px; font-size: 14px; line-height: 1.2; }
.board-card.executive:not(.completed) .board-card-status { min-height: 16px; margin: 0 0 2px; }
.board-card.executive:not(.completed) .task-department { padding: 2px 5px; }
.board-card.executive:not(.completed) .board-card-created { font-size: 9px; line-height: 1.25; }
.board-card.executive:not(.completed) .board-field-summary { max-height: 22px; margin-top: 4px !important; padding-top: 4px !important; }
.board-card.executive:not(.completed) .board-side-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; margin-top: 5px; }
.board-card.executive:not(.completed) .board-side-metrics > span:first-child { grid-column: 1 / -1; }
.board-card.executive:not(.completed) .board-side-metrics small { font-size: 7px !important; letter-spacing: .035em; }
.board-card.executive:not(.completed) .board-side-metrics strong { margin-top: 1px; font-size: 10px; }
.board-card.executive:not(.completed) .task-responsible-you { padding: 3px 4px; font-size: 8px; }
.board-card.executive:not(.completed) .board-side-bottom { gap: 3px; margin-top: auto; font-size: 9px; }
.board-card.executive:not(.completed) .board-side-bottom .row-avatar { width: 22px; height: 22px; }

/* Personal calendar sync and timezone clarity */
.meeting-calendar-sync{display:flex;align-items:center;gap:12px;margin:12px 0 16px;padding:12px 14px;border:1px solid #d9e5e1;border-radius:16px;background:#f7faf9}.meeting-calendar-sync.connected{border-color:#b9d9cf;background:#eff8f5}.meeting-calendar-sync>.google-mark{flex:0 0 auto}.meeting-calendar-sync>div{display:grid;gap:2px;min-width:0;flex:1}.meeting-calendar-sync strong{font-size:14px;color:#173f3c}.meeting-calendar-sync small{font-size:12px;line-height:1.45;color:#657874}.meeting-calendar-sync .button{flex:0 0 auto}.meeting-timezone{display:inline-flex!important;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#eef4f2;color:#47635e!important;font-size:11px!important;font-weight:700}.meeting-attendee-option{position:relative}.meeting-attendee-option .attendee-calendar-status{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;width:24px;height:24px;border-radius:999px;color:#7b8c88;background:#edf2f0}.meeting-attendee-option.calendar-connected .attendee-calendar-status{color:#237562;background:#dff1ea}.meeting-attendee-option.calendar-missing small{color:#916a24}.settings-content>#profileGoogleIntegrationMount{display:block}.settings-content>#profileGoogleIntegrationMount:empty{display:none}

@media (max-width:700px){.meeting-calendar-sync{align-items:flex-start;flex-wrap:wrap}.meeting-calendar-sync .button{margin-left:44px}.meeting-attendee-option .attendee-calendar-status{display:none}}


/* Compact tabbed task editor */
.task-editor-modal{width:min(760px,calc(100vw - 32px));max-width:760px;height:min(680px,calc(100dvh - 32px));max-height:min(680px,calc(100dvh - 32px))}
.task-editor-form{display:flex;flex-direction:column;height:100%;max-height:none;padding:0;overflow:hidden}
.task-editor-head{flex:0 0 auto;margin:0;padding:20px 22px 14px;border-bottom:1px solid var(--line,#dce6e2);background:linear-gradient(135deg,#f7fbf9 0%,#fff 72%)}
.task-editor-head h2{margin:3px 0 0;font-size:clamp(1.35rem,2.2vw,1.75rem);line-height:1.12}
.task-editor-form>.form-alert{margin:12px 22px 0}
.task-editor-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.9fr);gap:12px;padding:14px 22px 12px}
.task-editor-intro label,.task-editor-panel label{gap:6px}
.task-editor-intro input,.task-editor-intro select,.task-editor-panel input,.task-editor-panel select,.task-editor-panel textarea{min-height:42px}
.task-editor-intro .task-template-picker{margin:0;padding:10px 12px;min-height:0}
.task-editor-intro .task-template-picker>div{align-items:center}
.task-editor-intro .task-template-picker p{display:none}
.task-editor-intro .task-template-picker select{min-width:0}
.task-title-field{align-self:end}
.task-editor-tabs{display:flex;gap:4px;padding:0 22px;border-bottom:1px solid var(--line,#dce6e2)}
.task-editor-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted,#667773);font:inherit;font-size:.86rem;font-weight:750;cursor:pointer}
.task-editor-tabs button:hover{color:var(--ink,#17322f);background:#f4f8f6}
.task-editor-tabs button.active{color:var(--brand,#267b70);border-bottom-color:var(--brand,#267b70)}
.task-editor-tabs svg{width:15px;height:15px}
.task-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 184px;gap:14px;min-height:0;flex:1;padding:16px 22px;overflow:hidden;background:#fbfcfb}
.task-editor-main{min-width:0;overflow:auto;scrollbar-gutter:stable}
.task-editor-panel{min-height:260px;padding:16px;border:1px solid var(--line,#dce6e2);border-radius:16px;background:#fff}
.task-editor-panel[hidden]{display:none!important}
.task-editor-panel>.section-heading:first-child{margin-bottom:14px}
.task-editor-panel .task-audience{margin:0;padding:0;border:0;background:transparent}
.task-editor-panel .task-audience .section-heading{margin-bottom:12px}
.task-editor-panel .responsibility-switch{margin:0 0 12px}
.task-editor-panel .task-people-select{margin:0}
.task-editor-panel .task-essentials-bar{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;margin:14px 0 0;padding:14px 0 0;border:0;border-top:1px solid var(--line,#dce6e2);background:transparent}
.task-editor-panel .task-structure{margin:0;padding:0;border:0;background:transparent}
.task-editor-panel .task-structure:empty:after{content:"Choose a template to add structured fields, or continue with a blank task.";display:block;padding:28px 18px;border:1px dashed #cbdad5;border-radius:13px;color:var(--muted,#667773);text-align:center}
.task-editor-panel .task-planning-section{display:grid;gap:12px}
.task-editor-panel .approval-toggle{margin:14px 0 0}
.task-editor-panel .task-collaboration{margin:0;padding:0;border:0;background:transparent}
.task-editor-summary{align-self:start;padding:16px;border:1px solid #cfe0da;border-radius:16px;background:linear-gradient(155deg,#eef7f4 0%,#fff 82%);box-shadow:0 12px 28px rgba(23,50,47,.06)}
.task-editor-summary h3{margin:7px 0 14px;font-size:1rem;line-height:1.3;overflow-wrap:anywhere}
.task-editor-summary dl{display:grid;gap:10px;margin:0 0 14px}
.task-editor-summary dl div{padding-top:9px;border-top:1px solid rgba(67,117,106,.14)}
.task-editor-summary dt{margin:0 0 2px;color:var(--muted,#667773);font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.task-editor-summary dd{margin:0;color:var(--ink,#17322f);font-size:.78rem;font-weight:720;line-height:1.35;overflow-wrap:anywhere}
.task-editor-summary .priority-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:#edf3f1;color:#395a54;font-size:.7rem;font-weight:800}
.task-editor-summary .priority-chip[data-priority="high"]{background:#fff0ed;color:#b94737}
.task-editor-summary .priority-chip[data-priority="low"]{background:#edf4ff;color:#49688c}
.task-editor-actions{flex:0 0 auto;margin:0;padding:12px 22px;border-top:1px solid var(--line,#dce6e2);background:#fff}
.task-editor-ready{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--muted,#667773);font-size:.76rem;font-weight:700}
.task-editor-ready svg{color:var(--brand,#267b70)}
.task-editor-actions .text-button{margin-left:0}
@media(max-width:700px){
  .task-editor-modal{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}
  .task-editor-form{height:100%;max-height:none}
  .task-editor-head{padding:16px 16px 12px}
  .task-editor-intro{grid-template-columns:1fr;padding:12px 16px 10px}
  .task-editor-tabs{padding:0 12px;overflow-x:auto}
  .task-editor-tabs button{flex:1;min-width:max-content;padding:0 10px}
  .task-editor-layout{display:block;padding:12px 16px;overflow:auto}
  .task-editor-main{overflow:visible}
  .task-editor-panel{min-height:0;padding:14px}
  .task-editor-summary{display:none}
  .task-editor-panel .task-essentials-bar{grid-template-columns:1fr}
  .task-editor-actions{padding:10px 16px}
  .task-editor-ready{display:none}
}


/* Compact task editor setup bar */
@media(min-width:701px){
  .task-editor-head{min-height:48px;padding:10px 18px 9px}
  .task-editor-head>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}
  .task-editor-head .eyebrow{display:inline-flex;flex:0 0 auto;margin:0;padding:4px 7px;border-radius:999px;background:#e8f5f1;font-size:.56rem;line-height:1;letter-spacing:.12em}
  .task-editor-head h2{margin:0;font-size:1.16rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .task-editor-head .icon-button{width:32px;height:32px;min-width:32px;border-radius:10px}
  .task-editor-intro{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:10px;padding:8px 18px}
  .task-editor-intro .task-template-picker{min-height:44px;padding:5px 8px;border-radius:12px}
  .task-editor-intro .task-template-picker>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px}
  .task-editor-intro .template-picker-icon{width:28px;height:28px;border-radius:9px}
  .task-editor-intro .task-template-picker label,.task-editor-intro .task-title-field{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:7px;width:100%;margin:0;color:#536762;font-size:.66rem;font-weight:800}
  .task-editor-intro input,.task-editor-intro select{height:34px;min-height:34px;padding:0 10px;border-radius:9px;font-size:.78rem}
  .task-editor-tabs{padding:0 18px}
  .task-editor-tabs button{min-height:33px;padding:0 11px;font-size:.76rem}
  .task-editor-tabs svg{width:14px;height:14px}
  .task-editor-layout{padding:11px 18px 14px}
}
@media(max-width:700px){
  .task-editor-head{padding-top:12px;padding-bottom:9px}
  .task-editor-intro{gap:8px}
  .task-editor-intro .task-template-picker label,.task-editor-intro .task-title-field{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:8px}
  .task-editor-intro input,.task-editor-intro select{min-height:38px}
  .task-editor-tabs button{min-height:35px}
}


/* Remove inherited modal spacing from the compact task editor */
#taskForm.task-editor-form{padding:0}
#taskModal .task-editor-head{margin:0;padding:10px 18px 9px}


/* Task template in header and title beside tabs */
#taskModal .task-editor-head{display:flex;align-items:center;gap:12px;padding:8px 14px}
#taskModal .task-editor-head>div:first-child{min-width:190px}
.task-editor-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;min-width:0}
#taskModal .task-editor-head .task-template-picker{width:min(300px,42vw);min-height:0;margin:0;padding:4px 6px;border-radius:10px;background:#f1f8f5}
#taskModal .task-editor-head .task-template-picker>div{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:5px}
#taskModal .task-editor-head .template-picker-icon{width:24px;height:24px;border-radius:7px}
#taskModal .task-editor-head .task-template-picker label{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:5px;width:100%;margin:0;color:#536762;font-size:.62rem;font-weight:800}
#taskModal .task-editor-head .task-template-picker select{height:30px;min-height:30px;padding:0 8px;border-radius:8px;font-size:.72rem}
#taskModal .task-editor-head .task-template-picker p{display:none}
#taskModal .task-editor-tabs{display:grid;grid-template-columns:max-content minmax(220px,1fr);align-items:center;gap:12px;min-height:44px;padding:3px 14px 0}
.task-editor-tab-list{display:flex;align-self:stretch;gap:3px;min-width:0}
#taskModal .task-editor-tab-list button{min-height:40px;padding:0 10px}
#taskModal .task-editor-tabs .task-title-field{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:7px;min-width:0;margin:0;color:#536762;font-size:.64rem;font-weight:800}
#taskModal .task-editor-tabs .task-title-field input{width:100%;height:32px;min-height:32px;padding:0 9px;border-radius:8px;font-size:.76rem}
@media(max-width:700px){
  #taskModal .task-editor-head{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px 8px}
  #taskModal .task-editor-head-actions{gap:6px}
  #taskModal .task-editor-head .task-template-picker{width:min(190px,52vw)}
  #taskModal .task-editor-head .task-template-picker>div{grid-template-columns:minmax(0,1fr)}
  #taskModal .task-editor-head .template-picker-icon,#taskModal .task-editor-head .task-template-picker label>span{display:none}
  #taskModal .task-editor-head .task-template-picker label{display:block}
  #taskModal .task-editor-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:5px 12px 0}
  #taskModal .task-editor-tabs .task-title-field{order:-1;grid-template-columns:62px minmax(0,1fr);width:100%}
  .task-editor-tab-list{width:100%;overflow-x:auto}
  #taskModal .task-editor-tab-list button{flex:1;min-width:max-content}
}


/* Professional color hierarchy for the task editor */
#taskModal .task-editor-head .task-template-picker{
  border:1px solid #ead9aa;
  background:linear-gradient(135deg,#fff7df 0%,#fffdf8 100%);
  box-shadow:0 5px 14px rgba(137,101,32,.07);
}
#taskModal .task-editor-head .template-picker-icon{background:#ffe7aa;color:#9b6a16}
#taskModal .task-editor-head .task-template-picker select{border-color:#e4d4ac;background:#fff;color:#493a21}
#taskModal .task-editor-head .task-template-picker:focus-within{border-color:#d1a341;box-shadow:0 0 0 3px rgba(209,163,65,.14)}

#taskModal .task-editor-tabs .task-title-field{
  grid-template-columns:auto minmax(0,1fr);
  gap:7px;
  min-height:38px;
  padding:3px 3px 3px 10px;
  border:1px solid #cbd9eb;
  border-radius:11px;
  background:linear-gradient(135deg,#edf4ff 0%,#f4f1ff 100%);
  box-shadow:0 5px 14px rgba(66,91,132,.07);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
#taskModal .task-editor-tabs .task-title-field>span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#47678e;
  font-size:.57rem;
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
  white-space:nowrap;
}
#taskModal .task-editor-tabs .task-title-field>span:before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:#6388b9;
  box-shadow:0 0 0 3px rgba(99,136,185,.13);
}
#taskModal .task-editor-tabs .task-title-field input{
  height:30px;
  min-height:30px;
  border:0!important;
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:0 1px 3px rgba(41,63,91,.08)!important;
  color:#22364d;
}
#taskModal .task-editor-tabs .task-title-field input:focus{outline:0}
#taskModal .task-editor-tabs .task-title-field:focus-within{
  border-color:#6488b6;
  box-shadow:0 0 0 3px rgba(100,136,182,.14),0 7px 18px rgba(66,91,132,.09);
}

#taskModal .task-editor-tab-list button{--task-tab-accent:#3c8275;--task-tab-tint:#eaf6f2;border-radius:9px 9px 0 0}
#taskModal .task-editor-tab-list button:nth-child(2){--task-tab-accent:#5479a8;--task-tab-tint:#edf3fb}
#taskModal .task-editor-tab-list button:nth-child(3){--task-tab-accent:#a87324;--task-tab-tint:#fff6e4}
#taskModal .task-editor-tab-list button:nth-child(4){--task-tab-accent:#775b99;--task-tab-tint:#f3eef9}
#taskModal .task-editor-tab-list button span{color:var(--task-tab-accent)}
#taskModal .task-editor-tab-list button:hover{color:var(--task-tab-accent);background:var(--task-tab-tint)}
#taskModal .task-editor-tab-list button.active{
  color:var(--task-tab-accent);
  border-bottom-color:var(--task-tab-accent);
  background:var(--task-tab-tint);
}

#taskModal .task-editor-panel{border-top-width:3px}
#taskModal .task-editor-panel[data-task-editor-panel="basics"]{border-top-color:#4c9a84;background:linear-gradient(180deg,#f4fbf8 0,#fff 72px)}
#taskModal .task-editor-panel[data-task-editor-panel="details"]{border-top-color:#6687b2;background:linear-gradient(180deg,#f5f8fd 0,#fff 72px)}
#taskModal .task-editor-panel[data-task-editor-panel="planning"]{border-top-color:#d09a43;background:linear-gradient(180deg,#fffaf0 0,#fff 72px)}
#taskModal .task-editor-panel[data-task-editor-panel="conversation"]{border-top-color:#8b70a8;background:linear-gradient(180deg,#faf7fd 0,#fff 72px)}
#taskModal .task-editor-panel[data-task-editor-panel="details"] .task-section-title strong{color:#405f86}
#taskModal .task-editor-panel[data-task-editor-panel="planning"] .task-section-title strong{color:#8b621e}
#taskModal .task-editor-panel[data-task-editor-panel="conversation"] .task-section-title strong{color:#674e83}


/* Reorderable task-template fields */
.template-field-editor-row{position:relative;padding-left:58px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}
.template-field-reorder{position:absolute;left:12px;top:13px;display:grid;justify-items:center;gap:5px;width:34px}
.template-field-drag-handle{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #c9d8d3;border-radius:9px;background:#f4f8f6;color:#55706a;font:800 1rem/1 system-ui;letter-spacing:-3px;cursor:grab;transition:.18s ease}
.template-field-drag-handle:hover{border-color:#78a99c;background:#eaf5f1;color:#287a6e;transform:translateY(-1px)}
.template-field-drag-handle:active{cursor:grabbing}
.template-field-position{display:grid;place-items:center;min-width:21px;height:18px;padding:0 5px;border-radius:999px;background:#e9f2ef;color:#42665e;font-size:.61rem;font-weight:850}
.template-field-move-buttons{display:grid;grid-template-columns:1fr 1fr;gap:3px}
.template-field-move-buttons button{display:grid;place-items:center;width:15px;height:19px;padding:0;border:0;border-radius:5px;background:#edf3f1;color:#49655f;font:800 .68rem/1 system-ui;cursor:pointer}
.template-field-move-buttons button:hover:not(:disabled){background:#dcece7;color:#216f63}
.template-field-move-buttons button:disabled{opacity:.28;cursor:not-allowed}
.template-field-editor-row.is-dragging{opacity:.46;border-color:#4f9685;box-shadow:0 14px 30px rgba(40,91,80,.14);transform:scale(.992)}
.template-field-editor-row.field-position-updated{border-color:#6ba494;box-shadow:0 0 0 3px rgba(82,150,133,.11)}
#templateFieldRows{display:grid;gap:10px}
@media(max-width:700px){
  .template-field-editor-row{padding-left:50px}
  .template-field-reorder{left:8px;top:11px}
  .template-field-drag-handle{display:none}
  .template-field-position{margin-bottom:2px}
  .template-field-move-buttons button{width:17px;height:22px}
}

/* Password recovery and workspace member account security */

.auth-forgot { margin: 8px 1px 0 !important; text-align: right; }
.auth-forgot button { padding: 3px 0; border: 0; color: #2f756c; background: transparent; font: inherit; font-size: 10px; font-weight: 780; cursor: pointer; }
.auth-forgot button:hover { color: #174c47; text-decoration: underline; text-underline-offset: 3px; }
.auth-forgot button:focus-visible { outline: 2px solid rgba(62,143,132,.32); outline-offset: 3px; border-radius: 4px; }
.auth-alert[data-kind="success"] { color: #225e51; border-color: #bcded3; background: #edf8f4; }
.auth-card:has(#resetConfirmField:not([hidden])) .auth-submit { margin-top: 22px; }
.person-card-menu .reset-password-button { width: 100%; min-height: 34px; display: flex; align-items: center; justify-content: flex-start; gap: 7px; margin: 0; padding: 7px 8px; border: 0; border-radius: 7px; color: #315f56; background: transparent; text-align: left; font-size: 9px; font-weight: 750; cursor: pointer; }
.person-card-menu .reset-password-button:hover { background: #edf6f2; }
.person-card-menu .reset-password-button svg { flex: 0 0 auto; }
