@layer layout, design-system;
@layer design-system {
/* BOLT · Royal navy. Ant Design-inspired tokens and component skin.
   Load after style.css, which owns application geometry and responsive layout. */
:root {
  color-scheme: light;
  --navy: #001d66;
  --avatar-default: #bae0ff;
  --project-color-default: #91caff;
  --bg-disabled: #edf0f5;
  --font-size-small: 12px;
  --font-size-body: 14px;
  --font-size-large: 16px;
  --font-size-title: 30px;
  --navy-hover: #002c8c;
  --navy-active: #001141;
  --blue: #1677ff;
  --blue-hover: #4096ff;
  --blue-active: #0958d9;
  --blue-bg: #e6f4ff;
  --blue-border: #91caff;
  --text: #14213d;
  --text-secondary: #52627a;
  --text-tertiary: #64748b;
  --text-disabled: #8793a5;
  --bg-layout: #f5f7fb;
  --bg-container: #ffffff;
  --bg-subtle: #fafbfe;
  --border-default: #d9e0eb;
  --border-subtle: #e8edf5;
  --success: #237804;
  --success-bg: #f6ffed;
  --success-border: #b7eb8f;
  --warning: #874d00;
  --warning-bg: #fffbe6;
  --warning-border: #ffe58f;
  --error: #a8071a;
  --error-bg: #fff1f0;
  --error-border: #ffa39e;
  --purple: #531dab;
  --purple-bg: #f9f0ff;
  --purple-border: #d3adf7;
  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --shadow-sm: 0 2px 4px #001d6606;
  --shadow-card: 0 6px 20px #001d6610;
  --shadow-popup: 0 16px 48px #00114129;
  --focus-ring: 0 0 0 3px #1677ff26;
  --duration: 160ms;
  --ink: var(--text);
  --muted: var(--text-tertiary);
  --green: var(--navy);
  --lime: var(--blue-bg);
  --border: var(--border-default);
  --surface: var(--bg-container);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  font-size: var(--font-size-body);
  line-height: 1.5715;
  color: var(--text);
  background: var(--bg-layout);
}
::selection { background: var(--blue-border); color: var(--navy); }
h1,h2,h3 { color: var(--navy); font-weight: 600; letter-spacing: -.025em; }
h1 { font-size: var(--font-size-title); line-height: 1.3; }
h2 { font-size: 20px; line-height: 1.4; }
h3 { font-size: 18px; line-height: 1.4; }
small,.small,.hint { font-size: var(--font-size-small); color: var(--text-tertiary); }
.eyebrow { font-size: 11px; color: var(--text-secondary); letter-spacing: 1.3px; }
.page-heading p,.section-heading p { font-size: var(--font-size-body); color: var(--text-secondary); }
.page-heading h1 { font-size: var(--font-size-title); }
.greeting-mark { color: var(--blue); }
button,a,input,select,textarea { transition: background-color var(--duration), border-color var(--duration), color var(--duration), box-shadow var(--duration); }
button:focus-visible,a:focus-visible,[role='button']:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
button:disabled,button:disabled:hover { cursor: not-allowed; opacity: 1; color: var(--text-disabled); background: var(--bg-disabled); border-color: var(--border-default); box-shadow: none; transform: none; }
body .btn.btn,body .btn.compact,body .text-btn.text-btn,body .pill.pill { border-radius: var(--radius); font-size: var(--font-size-body); font-weight: 500; }
.btn:hover,.project-card:hover { transform: none; }
.btn.primary { background: var(--navy); border-color: var(--navy); color: white; box-shadow: var(--shadow-sm); }
.btn.primary:hover { background: var(--navy-hover); border-color: var(--navy-hover); }
.btn.primary:active { background: var(--navy-active); }
.btn.secondary { background: var(--bg-container); border-color: var(--border-default); color: var(--text); }
.btn.secondary:hover { background: var(--bg-container); border-color: var(--blue); color: var(--blue-active); }
.text-btn { color: var(--blue-active); }
.text-btn:hover { color: var(--blue); background: var(--blue-bg); }
.icon-btn { color: var(--text-secondary); border-radius: var(--radius); }
.icon-btn:hover { background: var(--blue-bg); color: var(--blue-active); }
.danger-text { color: var(--error)!important; }
.danger-text:hover { background: var(--error-bg); }
.pill { color: var(--text-secondary); }
.pill.selected { background: var(--blue-bg); border-color: var(--blue-border); color: var(--navy); box-shadow: none; }
.pill:hover { background: var(--blue-bg); color: var(--blue-active); }
/* Application shell */
.sidebar { background: var(--navy); border-right: 0; color: white; }
.sidebar .brand,.sidebar .brand-symbol { color: white; }
.sidebar .workspace,.sidebar .profile { border-color: #ffffff26; }
.sidebar .workspace { color: white; font-size: 13px; }
.sidebar .workspace small,.sidebar .profile small { color: #adc6ed; font-size: 11px; }
.workspace-symbol { background: #ffffff14; color: white; border-color: #ffffff40; border-radius: var(--radius); }
.nav-label { color: #adc6ed; font-size: 10px; }
.nav-item { color: #d6e4ff; font-size: var(--font-size-body); border-radius: var(--radius); min-height: 36px; padding: 6px 10px; }
.nav-item.active { background: var(--blue); color: white; font-weight: 500; }
.nav-item:hover:not(.active),.side-project:hover,.side-project.current { background: #ffffff14; color: white; }
.nav-count { background: #ffffff26; color: white; font-size: var(--font-size-small); }
.side-project { color: #d6e4ff; font-size: 13px; min-height: 32px; padding: 6px 10px; border-radius: var(--radius); }
.sidebar .muted { color: #adc6ed; }
.small-note { background: #ffffff0a; border-color: #ffffff26; color: #adc6ed; font-size: var(--font-size-small); border-radius: var(--radius); }
.small-note strong,.small-note span { color: #e6f4ff; }
.profile strong { font-size: 13px; color: white; }
.sidebar .icon-btn { color: #d6e4ff; }
.sidebar .icon-btn:hover { background: #ffffff14; color: white; }
.avatar { color: var(--navy); font-size: var(--font-size-small); }
.small-avatar { font-size: 10px; }
.tiny-avatar { font-size: 9px; }
.large-avatar { font-size: 20px; }
.topbar { background: var(--bg-container); height: 56px; justify-content: flex-start; gap: 12px; }
.topbar-right { margin-left: auto; flex-shrink: 0; }
.breadcrumb { min-width: 0; gap: 8px; flex-wrap: nowrap; }
.breadcrumb a { flex-shrink: 0; }
.breadcrumb a:hover { color: var(--navy); }
.breadcrumb span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.breadcrumb,.today-label { font-size: var(--font-size-small); color: var(--text-secondary); }
.breadcrumb span { color: var(--navy); }
footer,footer>span { font-size: var(--font-size-small); color: var(--text-tertiary); }
.footer-right i { background: var(--success); }
/* Cards, lists and data */
.stat,.panel,.project-card { background: var(--bg-container); border-color: var(--border-default); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.project-card:hover { border-color: var(--blue-border); box-shadow: var(--shadow-card); }
.stat-top { font-size: 13px; color: var(--text-secondary); }
.stat-top>span { background: var(--blue-bg); color: var(--blue-active); border-radius: var(--radius); }
.stat>strong { color: var(--navy); font-size: 32px; font-weight: 600; }
.stat em { color: var(--text-tertiary); }
.stat p { font-size: var(--font-size-small); color: var(--text-tertiary); }
.number-chip,.soft-label { background: var(--blue-bg); color: var(--navy); border-color: var(--blue-border); border-radius: var(--radius-sm); font-size: var(--font-size-small); }
.view-switch { font-size: var(--font-size-small); color: var(--text-secondary); border-radius: var(--radius); }
.project-card h3 { font-size: 18px; }
.project-card>p { font-size: var(--font-size-body); color: var(--text-secondary); height: 44px; line-height: 22px; }
.project-icon { color: var(--navy); border-radius: var(--radius); }
.progress-label,.card-meta,.card-bottom>span { font-size: var(--font-size-small); color: var(--text-secondary); }
.progress-label strong { color: var(--navy); }
.progress-track { height: 6px; background: var(--border-subtle); }
.card-bottom,.list-row,.activity-row { border-color: var(--border-subtle); }
.panel-head h2 { font-size: 18px; }
.list-row strong,.activity-row p { font-size: var(--font-size-body); color: var(--text); }
.list-row small,.activity-row small { font-size: var(--font-size-small); color: var(--text-tertiary); }
.activity-dot { background: var(--blue); }
.quiet-empty,.empty p { font-size: var(--font-size-body); color: var(--text-secondary); }
.empty>.icon { color: var(--blue); }
.project-tabs { border-color: var(--border-default); }
.project-tabs button { font-size: var(--font-size-body); color: var(--text-secondary); }
.project-tabs button.selected { border-color: var(--blue); color: var(--blue-active); font-weight: 500; }
.project-tabs button:hover { color: var(--blue); }
.mini-road strong { font-size: var(--font-size-body); }
.mini-road small,.availability { font-size: var(--font-size-small); color: var(--text-secondary); }
.road-dot { background: var(--blue); }
th { background: var(--bg-subtle); color: var(--text-secondary); font-size: var(--font-size-small); font-weight: 600; }
td { color: var(--text-secondary); border-color: var(--border-subtle); font-size: var(--font-size-body); }
tbody tr:hover { background: var(--bg-subtle); }
.task-title strong,.owner-cell strong { font-size: var(--font-size-body); color: var(--text); }
.task-title small,.owner-cell small,.priority,.date-cell { font-size: var(--font-size-small); color: var(--text-secondary); }
.priority.high i { background: var(--error); }
.priority.medium i { background: #d48806; }
.priority.low i { background: var(--blue); }
/* Semantic status remains recognizable by text as well as color. */
.badge,.project-card .badge { font-size: var(--font-size-small); font-weight: 400; padding: 2px 8px; border: 1px solid var(--border-default); border-radius: var(--radius-sm); color: var(--text-secondary); background: var(--bg-subtle); }
.badge i { width: 6px; height: 6px; }
.badge[data-tone="info"] { color: var(--blue-active); background: var(--blue-bg); border-color: var(--blue-border); }
.badge[data-tone="planning"] { color: var(--purple); background: var(--purple-bg); border-color: var(--purple-border); }
.badge[data-tone="success"] { color: var(--success); background: var(--success-bg); border-color: var(--success-border); }
.badge[data-tone="warning"] { color: var(--warning); background: var(--warning-bg); border-color: var(--warning-border); }
.badge[data-tone="error"] { color: var(--error); background: var(--error-bg); border-color: var(--error-border); }
/* Inputs and dialogs */
.field { color: var(--text); font-size: var(--font-size-body); font-weight: 500; }
.field input,.field select,.field textarea,input[type='month'],.gantt-controls select,.secret { font-size: var(--font-size-body); font-weight: 400; color: var(--text); border-color: var(--border-default); background: var(--bg-container); border-radius: var(--radius); }
.field input::placeholder,.field textarea::placeholder,.search input::placeholder { color: var(--text-tertiary); }
.field input:hover,.field select:hover,.field textarea:hover,input[type='month']:hover,.search:hover,.gantt-controls select:hover { border-color: var(--blue-hover); }
input:focus,select:focus,textarea:focus { outline: 0; border-color: var(--blue)!important; box-shadow: var(--focus-ring); }
input[type='checkbox'] { accent-color: var(--blue); width: 16px; height: 16px; flex-shrink: 0; }
input[type='checkbox']:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.search { border-radius: var(--radius); color: var(--text-tertiary); }
.search input { font-size: var(--font-size-body); box-shadow: none; }
.search:focus-within { border-color: var(--blue); box-shadow: var(--focus-ring); }
.search input:focus { box-shadow: none; }
.checkbox-inline,.gantt-controls>.checkbox-inline,.member-picker label,.dependency-picker label { font-size: 13px; color: var(--text-secondary); }
.member-picker label,.dependency-picker label { background: var(--bg-subtle); border-color: var(--border-default); border-radius: var(--radius); }
.member-picker label:has(:checked),.dependency-picker label:has(:checked) { background: var(--blue-bg); border-color: var(--blue-border); color: var(--navy); }
.field :disabled { background: var(--bg-disabled); color: var(--text-disabled); cursor: not-allowed; }
[aria-invalid='true'] { border-color: var(--error)!important; }
dialog { border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); box-shadow: var(--shadow-popup); }
dialog::backdrop { background: #00114166; backdrop-filter: blur(2px); }
.modal-head h2 { font-size: 22px; }
.modal-head .eyebrow { font-size: 11px; }
.modal-body>p,.read-note { font-size: var(--font-size-body); color: var(--text-secondary); }
.modal-footer { background: var(--bg-subtle); }
.form-error { font-size: 13px; color: var(--error); }
.schedule-preview { border: 1px solid var(--blue-border); border-radius: var(--radius); background: var(--blue-bg); }
.schedule-preview>div,.schedule-preview span { font-size: 13px; color: var(--navy); border-color: var(--blue-border); }
#toast { background: var(--navy); font-size: var(--font-size-body); border-radius: var(--radius); box-shadow: var(--shadow-popup); }
#toast.error { background: var(--error); }
/* Timeline and calendar */
.gantt-toolbar { border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
.gantt-scroll { border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
.gantt-header,.gantt-header>.gantt-label,.calendar-week { background: var(--bg-subtle); color: var(--text-secondary); }
.gantt-header>.gantt-label,.gantt-label>button,.gantt-group>.gantt-label { font-size: var(--font-size-small); }
.gantt-date small,.gantt-group>.gantt-label span { font-size: 11px; color: var(--text-tertiary); }
.gantt-date strong { font-size: var(--font-size-small); color: var(--text-secondary); }
.gantt-date.is-today strong,.today-number { background: var(--blue); color: white; }
.gantt-bar { background: var(--blue-bg); border-color: var(--blue-border); color: var(--navy); font-size: 11px; border-radius: var(--radius-sm); }
.gantt-bar.todo { background: var(--purple-bg); border-color: var(--purple-border); color: var(--purple); }
.gantt-bar.done { background: var(--success-bg); border-color: var(--success-border); color: var(--success); }
.gantt-bar.review { background: var(--warning-bg); border-color: var(--warning-border); color: var(--warning); }
.gantt-bar.milestone-bar { background: none; color: var(--blue-active); }
.status-circle.done { background: var(--success); border-color: var(--success); }
.status-circle.in_progress { border-color: var(--blue); }
.today-line { border-color: var(--blue); }
.gantt-legend,.legend-note { font-size: var(--font-size-small); color: var(--text-secondary); }
.legend-progress { background: var(--blue-border); }
.calendar-week>div,.day-number { font-size: var(--font-size-small); color: var(--text-secondary); }
.calendar-event { color: var(--navy); background: var(--blue-bg); border-radius: var(--radius-sm); font-size: var(--font-size-small); }
.calendar-event:hover { background: #bae0ff; }
.calendar-event.holiday { color: var(--warning); background: var(--warning-bg); }
.calendar-event.holiday:hover { background: var(--warning-border); }
/* People, knowledge and integrations */
.note-type,.person-meta { font-size: var(--font-size-small); color: var(--text-secondary); }
.note-card h3,.person-card h3 { font-size: 18px; }
.note-card>p,.person-card p { font-size: var(--font-size-body); color: var(--text-secondary); }
.note-footer { gap: 12px; flex-wrap: wrap; }
.integration-hero { background: var(--blue-bg); border-color: var(--blue-border); border-radius: var(--radius-lg); }
.integration-hero p,.setup-steps li,.setup-steps p,.integration-note { font-size: var(--font-size-body); color: var(--text-secondary); }
.setup-steps strong { color: var(--navy); }
.setup-steps code { font-size: var(--font-size-small); color: var(--navy); background: var(--bg-subtle); border-color: var(--border-default); }
.integration-bolt { color: var(--navy); }
.token-icon { color: var(--blue-active); background: var(--blue-bg); border-radius: var(--radius); }
/* Authentication */
.boot { color: var(--navy); }
.boot span { color: var(--text-secondary); }
.auth-story { background: var(--navy); }
.auth-story .brand,.auth-story .brand-symbol,.auth-story h1 { color: white; }
.auth-story h1 span { font-family: inherit; font-style: normal; font-weight: 600; color: #91caff; }
.auth-story p,.auth-story .eyebrow,.auth-story>small { color: #adc6ed; }
.auth-story p { font-size: var(--font-size-large); }
.auth-story .eyebrow,.auth-story>small { font-size: var(--font-size-small); }
.auth-orbit,.auth-orbit:before { border-color: #ffffff26; }
.auth-orbit span { color: #ffffff26; }
.auth-orbit i { background: var(--blue); }
.auth-form-area { background: var(--bg-container); }
.auth-form-area form { max-width: 400px; }
.auth-form-area h2 { font-weight: 600; color: var(--navy); }
.auth-form-area form>p,.auth-form-area form>.hint { color: var(--text-secondary); font-size: var(--font-size-body); }
.auth-form-area form>.form-error { color: var(--error); }
.auth-footnote { color: var(--text-tertiary); font-size: var(--font-size-small); }
@media(max-width:1150px) and (min-width:641px) { :root { --sidebar: 224px; } }
@media(max-width:850px) { .stats.three { grid-template-columns: repeat(2,minmax(0,1fr)); } .stats.three>.stat:last-child { grid-column: 1/-1; } }
@media(max-width:640px) {
  .page-heading h1 { font-size: 26px; }
  .topbar { height: 52px; gap: 8px; }
  .breadcrumb { min-width: 0; flex-wrap: nowrap; gap: 6px; }
  .breadcrumb span { white-space: nowrap; }
  .field input,.field select,.field textarea,input[type='month'],.search input { font-size: var(--font-size-large); }
  .calendar-title h2 { font-size: 18px; }
  .auth-story p { font-size: var(--font-size-body); }
  .auth-story .eyebrow { font-size: 11px; }
  .schedule-preview>div { flex-direction: column; gap: 4px; }
  .mini-road { grid-template-columns: 1fr 1fr; }
  .person-card .btn.btn { min-width: 0; width: 100%; }
  .modal-head h2 { font-size: 20px; }
  .gantt-legend,.gantt-legend .legend-note { font-size: var(--font-size-small); }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { transition: none!important; } }
/* Long account actions remain readable inside their cards. */
body .person-card .btn.btn { width: 100%; min-width: 0; white-space: nowrap; }
.gantt-overlay g { stroke: var(--text-tertiary); }
.gantt-overlay marker path { fill: var(--text-tertiary); }

/* Calendar uses the same status, selection and typography tokens as the hub. */
.gc-navigation h2 { font-size: 20px; font-weight: 600; }
.gc-meta,.gc-weekdays>div,.gc-overflow button { font-size: var(--font-size-small); color: var(--text-secondary); }
.gc-weekdays { background: var(--bg-container); }
.gc-week-row,.gc-day { border-color: var(--border-default); }
.gc-outside { background: var(--bg-subtle); }
.gc-outside .gc-date { color: var(--text-tertiary); }
.gc-date { color: var(--text); }
.gc-date:hover,.gc-overflow button:hover { background: var(--blue-bg); color: var(--blue-active); }
.gc-today .gc-date { background: var(--blue); color: white; }
.gc-key-leave { background: var(--blue); }
.gc-key-holiday { background: var(--warning); }
.gc-event { font-size: var(--font-size-small); border-radius: var(--radius-sm); }
.gc-event small { font-size: 11px; opacity: 1; }
.gc-leave { background: var(--blue-bg); color: var(--navy); border-left-color: var(--blue); }
.gc-holiday { background: var(--warning-bg); color: var(--warning); border-left-color: var(--warning-border); }
.gc-event:hover,.gc-agenda-event:hover { filter: none; box-shadow: inset 0 0 0 1px currentColor; }
.gc-event.continues-before { border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.gc-event.continues-after { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.gc-agenda-event { border-radius: var(--radius); }
.gc-agenda-event strong { font-size: var(--font-size-body); }
.gc-view-switch { color: var(--text-tertiary); }
.gc-view-switch button { color: var(--text-secondary); font-size: var(--font-size-body); border-radius: var(--radius-sm); }
.gc-view-switch button[aria-pressed="true"] { color: var(--blue-active); font-weight: 600; }
.gc-view-switch button:hover { color: var(--blue-active); }
/* State selectors outrank variant and hover styles. */
body button:disabled,body button:disabled:hover,body button:disabled:active {
  color: var(--text-disabled); background: var(--bg-disabled); border-color: var(--border-default);
  cursor: not-allowed; opacity: 1; box-shadow: none; transform: none;
}
.avatar { --avatar: var(--avatar-default); }
@media(max-width:640px) { .gc-navigation h2 { font-size: 18px; } }
}

/* Shared geometry is last in the cascade: never size individual controls locally. */
@layer controls {
  :root { --control-height: 32px; --control-padding-inline: 10px; }
  @media (max-width: 640px) { :root { --control-height: 36px; } }

  .btn, .text-btn, .pill, .icon-btn, .side-project, .gc-view-switch button,
  select, input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="file"]),
  .search, .checkbox-inline {
    box-sizing: border-box;
    height: var(--control-height);
    min-height: var(--control-height);
    max-height: var(--control-height);
    padding-block: 0;
    line-height: 1.2;
  }
  .btn, .text-btn, .pill, select,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="file"]):not([type="color"]), .search {
    padding-inline: var(--control-padding-inline);
  }
  .btn, .text-btn, .pill, .icon-btn, .checkbox-inline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
  }
  .icon-btn { width: var(--control-height); min-width: var(--control-height); max-width: var(--control-height); flex: 0 0 var(--control-height); padding: 0; }
  .search input { height: 100%; min-height: 0; max-height: 100%; padding: 0; }
  input[type="color"] { padding: 3px; }
  .checkbox-inline { justify-content: flex-start; }
  .checkbox-inline input { margin: 0; }
  .heading-actions, .gantt-toolbar, .gantt-controls, .calendar-title, .toolbar, .row-actions { align-items: center; }
}

@layer controls {
  /* Shared icon sizing must never reveal the mobile-only navigation toggle. */
  .mobile-menu { display: none; }
  @media (max-width: 640px) { .mobile-menu { display: inline-flex; margin-right: 0; flex-shrink: 0; } }
}

@layer design-system {
 .assignee-picker { border: 0; padding: 0; margin: 0 0 20px; min-width: 0; }
 .assignee-picker legend { font-weight: 500; margin-bottom: 8px; }
 .assignee-picker .member-picker { margin-bottom: 8px; }
 .owner-cell { flex-wrap: wrap; gap: 8px; }
 .task-assignee { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
 .task-avatars { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 2px; max-width: 100px; flex-shrink: 0; }
 .task-avatars .avatar { width: 20px; height: 20px; font-size: 9px; }
 .gantt-grid, .gantt-overlay { overflow: hidden; }
}

@layer design-system {
 .task-detail { padding: var(--panel-padding); }
 .task-detail-properties { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 24px 0; }
 .task-detail-properties dt { color: var(--text-secondary); font-size: 12px; margin-bottom: 6px; }
 .task-detail-properties dd { margin: 0; }
 .task-detail-properties>div:last-child { grid-column: 1 / -1; }
 .task-detail h3 { font-size: 14px; margin: 24px 0 8px; }
 .task-detail a { color: var(--blue-active); text-decoration: underline; }
 .task-detail .read-note { overflow-wrap: anywhere; }
}

@layer design-system {
 .parent-task-link { display: inline-block; margin-bottom: 20px; }
 .subtask-heading { margin-top: 28px; }
 .subtask-heading h3 { margin: 0; }
 .subtask-pages { list-style: none; padding: 0; margin: 12px 0; }
 .subtask-pages li { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--border-default); }
 .subtask-pages a { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; text-decoration: none; }
 .subtask-pages strong { overflow-wrap: anywhere; font-weight: 500; }
 .stopwatch-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: var(--panel-padding); margin-bottom: 24px; flex-wrap: wrap; }
 .stopwatch-panel p { color: var(--text-secondary); margin-top: 8px; }
 .stopwatch-time { display: block; font-size: 32px; font-variant-numeric: tabular-nums; margin: 16px 0; }
 .stopwatch-indicator { font-variant-numeric: tabular-nums; }
 .tracked-summary { margin-bottom: 20px; }
}

@layer design-system {
 .gantt-continuous-scroll .gantt { width: calc(var(--label) + var(--grid)); }
 .gantt-continuous-scroll .gantt-label { width: var(--label); }
 .gantt-continuous-scroll { overscroll-behavior-x: contain; }
 @media(max-width:640px) {
  .gantt-continuous-scroll .gantt-label { padding: 0 8px; }
  .gantt-continuous-scroll .task-avatars { display:none; }
  .gantt-continuous-scroll .gantt-date strong { min-width:0; width:auto; padding:2px; }
 }
}

@layer design-system {
 [data-phase-color="blue"] { --phase-bg:var(--blue-bg); --phase-border:var(--blue-border); --phase-ink:var(--blue-active); }
 [data-phase-color="purple"] { --phase-bg:var(--purple-bg); --phase-border:var(--purple-border); --phase-ink:var(--purple); }
 [data-phase-color="amber"] { --phase-bg:var(--warning-bg); --phase-border:var(--warning-border); --phase-ink:var(--warning); }
 [data-phase-color="green"] { --phase-bg:var(--success-bg); --phase-border:var(--success-border); --phase-ink:var(--success); }
 [data-phase-color="rose"] { --phase-bg:#fff1f0; --phase-border:#ffa39e; --phase-ink:#a8071a; }
 [data-phase-color="cyan"] { --phase-bg:#e6fffb; --phase-border:#87e8de; --phase-ink:#006d75; }
 [data-phase-color="slate"] { --phase-bg:#f1f5f9; --phase-border:#cbd5e1; --phase-ink:#475569; }
 .gantt-bar[data-phase-color] { background:var(--phase-bg); border-color:var(--phase-border); color:var(--phase-ink); }
 .gantt-bar.milestone-bar[data-phase-color] { background:transparent; color:var(--phase-ink); }
 .phase-key[data-phase-color] { background:var(--phase-ink); }
 .gantt-label .status-circle,.gantt-legend .status-circle { width:8px; height:8px; border:0; border-radius:50%; }
 .status-circle.todo { background:var(--text-tertiary); }
 .status-circle.in_progress { background:var(--blue); }
 .status-circle.review { background:var(--warning); }
 .status-circle.done { background:var(--success); }
}

@layer design-system {
 .gantt-continuous-scroll .gantt-date { overflow:hidden; }
 .gantt-continuous-scroll .gantt-date strong { min-width:0; max-width:100%; }
}

@layer design-system {
 .gantt-continuous-scroll .gantt-date.sparse-date { overflow:visible; position:relative; }
 .gantt-continuous-scroll .sparse-date small { display:none; }
 .gantt-continuous-scroll .sparse-date strong { z-index:1; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:max-content; max-width:none; padding:0 1px; font-size:10px; }
 .gantt-continuous-scroll .sparse-date strong:empty { display:none; }
}

@layer design-system {
 .gantt-header { display:block; height:97px; }
 .gantt-month-row { position:sticky; left:0; display:flex; height:32px; width:var(--viewport); background:var(--bg-subtle); border-bottom:1px solid var(--border-default); z-index:5; }
 .gantt-month-row>.gantt-label { background:var(--bg-subtle); }
 .gantt-month-axis { position:relative; flex:1; min-width:0; overflow:hidden; }
 .gantt-month-band { position:absolute; height:100%; display:flex; align-items:center; justify-content:center; border-right:1px solid var(--border-default); color:var(--text); font-size:12px; font-weight:600; white-space:nowrap; overflow:hidden; }
 .gantt-day-row { display:flex; height:65px; }
 .gantt-day-row>.gantt-label { background:var(--bg-subtle); color:var(--text-secondary); font-size:var(--font-size-small); letter-spacing:.8px; }
 @media(max-width:640px) { .gantt-month-band { font-size:11px; } }
}

@layer design-system {
 .tree-spacer { display:inline-block; width:var(--control-height); flex:0 0 var(--control-height); }
 .gantt-label>.tree-toggle { flex:0 0 var(--control-height); justify-content:center; padding:0; }
 .task-name-cell>.tree-toggle,.subtask-pages .tree-toggle { flex-shrink:0; }
 .subtask-heading h3 { display:flex; align-items:center; gap:8px; }
 .gantt-phase-summary { position:absolute; top:14px; height:20px; border:1px solid var(--phase-border); border-bottom:3px solid var(--phase-ink); background:var(--phase-bg); color:var(--phase-ink); border-radius:3px; overflow:hidden; font-size:11px; white-space:nowrap; }
 .gantt-phase-summary span { padding:0 6px; }
 .gantt-group .gantt-label>button { font-weight:600; }
 .gantt-group .gantt-label>button>span:first-of-type { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 @media(max-width:640px){ .gantt-row .task-avatars { display:none; } .subtask-pages li { flex-wrap:wrap; gap:8px; } }
}
@layer design-system {
 .gantt-group .gantt-label>button>span { font-size:12px; color:var(--text-secondary); }
}
@layer design-system {
 .task-date-range { display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; }
 .task-date-input { width:142px; border:1px solid var(--border-default); border-radius:var(--radius); background:var(--bg-container); color:var(--text); font:inherit; font-size:12px; padding-inline:var(--control-padding-inline); }
 .task-date-input:focus { outline:2px solid var(--blue-border); outline-offset:1px; }
 .task-date-input:disabled { opacity:.6; cursor:wait; }
 .subtask-pages .task-date-range { flex-shrink:0; }
 .overview-task-tree .list-row { flex-wrap:wrap; }
 @media(max-width:640px){ .task-date-input { font-size:16px; width:154px; } .subtask-pages .task-date-range { width:100%; } }
}
@layer design-system {
 @media(max-width:640px){ .subtask-pages .task-date-range { flex-direction:column; align-items:flex-start; } .subtask-pages .task-date-range>[aria-hidden] { display:none; } }
}

@layer design-system {
 table[data-resizable] { table-layout:fixed; min-width:0; }
 table[data-resizable] th { position:relative; padding-right:16px; }
 table[data-resizable] td { overflow:hidden; overflow-wrap:anywhere; }
 table[data-resizable] .task-title { min-width:0; max-width:100%; }
 table[data-resizable] .task-title>span { min-width:0; }
 table[data-resizable] .task-title strong { overflow-wrap:anywhere; }
 .column-resizer { position:absolute; top:0; bottom:0; right:0; width:8px; cursor:col-resize; touch-action:none; user-select:none; z-index:2; }
 .column-resizer::after { content:''; position:absolute; top:8px; bottom:8px; right:3px; width:1px; background:var(--border-default); }
 .column-resizer:hover::after,.column-resizer:focus-visible::after,.column-resizer.resizing::after { width:2px; background:var(--blue); }
 .column-resizer:focus-visible { outline:2px solid var(--blue-border); outline-offset:-2px; }
}
@layer design-system {
 .task-color-swatch { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--border-default); background:var(--bg-container); border-radius:var(--radius); width:var(--control-height); height:var(--control-height); flex:0 0 var(--control-height); padding:0; }
 .task-color-swatch i { display:block; width:14px; height:14px; border-radius:4px; background:var(--task-color,var(--phase-ink)); border:1px solid var(--border-default); }
 button.task-color-swatch { cursor:pointer; }
 button.task-color-swatch:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
}
@layer design-system {
 .task-color-control { display:inline-flex; align-items:center; gap:4px; flex-shrink:0; }
 input.task-color-picker { width:var(--control-height); min-width:var(--control-height); border:1px solid var(--border-default); border-radius:var(--radius); background:var(--bg-container); cursor:pointer; }
 input.task-color-picker::-webkit-color-swatch-wrapper { padding:4px 0; }
 input.task-color-picker::-webkit-color-swatch { border:0; border-radius:0; }
 input.task-color-picker::-moz-color-swatch { border:0; border-radius:0; }
}
@layer controls { input.task-color-picker { padding-inline:4px; } }

@layer design-system { input.task-color-picker,.task-color-swatch,.task-color-swatch i { border-radius:0; } }
@layer design-system {
 input.task-color-picker,.task-color-swatch { border:0; background:transparent; }
 input.task-color-picker::-webkit-color-swatch-wrapper { padding-block:calc((var(--control-height) - 12px)/2); }
 input.task-color-picker::-moz-color-swatch { width:12px; height:12px; margin:auto; }
 .task-color-swatch i { width:12px; height:12px; }
}
@layer controls { input.task-color-picker { padding-inline:calc((var(--control-height) - 12px)/2); } }
@layer controls {
 .ba-checks label,.ba-inline-check {height:var(--control-height);box-sizing:border-box;white-space:nowrap;}
}

@layer design-system {
  .side-project.side-desk { margin-left: 18px; width: calc(100% - 18px); display: flex; align-items: center; gap: 8px; }
  .side-desk svg { width: 16px; height: 16px; flex-shrink: 0; }
}

@layer design-system {
 .ba-workspace-toolbar {display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px;}
 .ba-workspace-nav,.ba-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
 .ba-page-content {min-width:0;}
 .ba-surface {background:var(--bg-container);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:20px;margin-block:16px;min-width:0;}
 .ba-surface h3 {margin:0 0 12px;}
 .ba-search-row {display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:16px 0;}
 .ba-search-row .field {flex:1;min-width:180px;max-width:420px;margin:0;}
 .ba-record-list td:first-child {min-width:200px;}
 .ba-record-list a {display:block;color:var(--text);text-decoration:none;}
 .ba-record-list a:hover strong {color:var(--blue-active);text-decoration:underline;}
 .ba-record-list a small,.ba-record-list a strong {display:block;}
 .ba-record-list a small {color:var(--text-secondary);font-weight:400;}
 .ba-record-list a strong {font-weight:600;white-space:normal;}
 .ba-review-note {display:block;color:var(--warning);font-size:12px;}
 .ba-state {display:inline-block;border:1px solid var(--border-default);border-radius:6px;padding:2px 6px;font-size:12px;}
 .ba-story-cards {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;}
 .ba-story-card {display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:20px;border:1px solid var(--border-default);background:var(--bg-container);border-radius:var(--radius-xl);text-decoration:none;color:var(--text);}
 .ba-story-card:hover {border-color:var(--blue);}
 .ba-story-card small {color:var(--text-secondary);}
 .ba-story-page {display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:20px;align-items:start;}
 .ba-story-properties dl {margin:0 0 16px;}
 .ba-story-properties dt {color:var(--text-secondary);font-size:12px;margin-top:12px;}
 .ba-story-properties dd {margin:4px 0 12px;overflow-wrap:anywhere;}
 .ba-story-properties .ba-actions {align-items:flex-start;}
 .ba-criterion-detail {border-top:1px solid var(--border-default);padding:16px 0;}
 .ba-more {margin:20px 0;}
 .ba-more summary,.ba-settings summary {cursor:pointer;color:var(--text-secondary);}
 .ba-settings[open] .ba-actions {margin-top:12px;}
 .ba-checks label {display:flex;align-items:center;gap:8px;min-width:0;}
 .ba-checks label span {overflow:hidden;text-overflow:ellipsis;}
 .ba-form-body fieldset {min-width:0;}
 @media(max-width:900px){.ba-story-page {grid-template-columns:1fr;}}
 @media(max-width:640px){.ba-surface {padding:16px;}.ba-workspace-toolbar {gap:12px;}}
}

@layer design-system { .ba-desk {padding:0;} .ba-workspace-toolbar .ba-actions,.section-heading .ba-actions {margin:0;} }

@layer design-system {
 .ba-desk .table-wrap {border:1px solid var(--border-default);border-radius:var(--radius-xl);overflow:auto;background:var(--bg-container);}
 .ba-desk .list-row {border:1px solid var(--border-default);border-radius:var(--radius-xl);background:var(--bg-container);margin-block:12px;}
 dialog:has(.ba-form) {border-radius:var(--radius-xl);}
}

@layer design-system {
 .ba-project-view {max-width:1280px;}
 .ba-project-view>.page-heading {margin-bottom:16px;}
 .ba-project-view .ba-primary-tabs {margin-top:0;margin-bottom:20px;}
 .ba-project-view .ba-workspace-toolbar {gap:12px;margin-bottom:20px;}
 .ba-workspace-toolbar>.ba-actions {margin-left:auto;flex-shrink:0;}
 .ba-settings {position:relative;}
 .ba-settings summary {list-style:none;color:var(--text);}
 .ba-settings summary::-webkit-details-marker {display:none;}
 .ba-settings-menu {position:absolute;right:0;top:calc(100% + 8px);z-index:15;display:grid;gap:8px;padding:12px;min-width:200px;background:var(--bg-container);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-popup);}
 .ba-settings-menu .btn {justify-content:flex-start;}
 .ba-attention {margin:0;padding:24px;}
 .ba-attention .section-heading {margin-bottom:16px;}
 .ba-attention-scope {margin:0;padding-bottom:20px;border-bottom:1px solid var(--border-default);}
 .ba-attention-items {padding-top:8px;}
 .ba-empty-state {display:flex;align-items:center;gap:16px;padding:32px 0;}
 .ba-empty-state h3 {margin:0 0 4px;font-weight:600;}
 .ba-empty-state p {color:var(--text-secondary);margin:0;max-width:560px;}
 .ba-empty-check {display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--success-bg);color:var(--success);font-size:20px;}
 .ba-desk .section-heading {gap:12px;}
 @media(max-width:640px){
  .ba-attention {padding:16px;}
  .ba-workspace-toolbar>.ba-actions {margin-left:0;}
  .ba-settings-menu {right:auto;left:0;}
  .ba-empty-state {align-items:flex-start;gap:12px;padding:24px 0;}
  .ba-project-view .section-heading {align-items:flex-start;}
 }
}

@layer design-system {
 .ba-attachment-actions {display:inline-flex;align-items:center;gap:8px;max-width:100%;}
 .ba-attachment-actions>.btn:first-child {overflow:hidden;text-overflow:ellipsis;}
 dialog:has(.ba-diagram-preview) {width:min(1100px,calc(100vw - 32px));max-width:1100px;}
 .ba-diagram-preview {overflow:auto;border:1px solid var(--border-default);border-radius:var(--radius-xl);background:var(--bg-container);}
 .ba-diagram-preview iframe {display:block;width:100%;height:65vh;min-height:360px;border:0;}
 .ba-diagram-preview img {display:block;max-width:100%;height:auto;margin:auto;}
}

@layer design-system {
 .ba-source-diagram {margin:16px 0;border:1px solid var(--border-default);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-container);}
 .ba-source-diagram iframe {display:block;width:100%;height:65vh;min-height:420px;border:0;}
 .ba-flow-empty {padding:20px;border:1px solid var(--border-default);border-radius:var(--radius-xl);margin:16px 0;}
 @media(max-width:640px){.ba-source-diagram iframe {min-height:360px;height:60vh;}}
}

@layer design-system {
 .action-group { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
 .action-group>.btn { margin:0; flex-shrink:0; }
 .heading-actions,.row-actions { flex-wrap:wrap; gap:8px; }
 .heading-actions { min-width:0; max-width:100%; }
 .page-heading,.section-heading,.panel-head { flex-wrap:wrap; }
 .page-heading>div,.section-heading>div,.panel-head>div { min-width:0; }
 .integration-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:32px; padding:32px; }
 .integration-hero>div { min-width:0; }
 .integration-hero h2 { line-height:1.35; }
 .integration-actions { margin-top:20px; }
 .setup-steps code { white-space:normal; overflow-wrap:anywhere; }
 @media(max-width:760px){
  .integration-hero { grid-template-columns:minmax(0,1fr); gap:24px; padding:24px; }
  .integration-art { justify-content:flex-start; }
 }
 @media(max-width:640px){
  .integration-hero { padding:20px; }
  .integration-actions { align-items:stretch; }
  .integration-actions>.btn { justify-content:center; width:100%; }
  .heading-actions { flex-shrink:1; }
 }
}

@layer design-system {
 #delivery-requirements { margin:24px 0; min-width:0; }
 #delivery-requirements .ba-surface { margin:16px 0; padding:20px; }
 #delivery-requirements [data-link-requirement] { align-items:flex-end; }
 #delivery-requirements [data-link-requirement] .field { margin:0; min-width:0; max-width:100%; }
 #delivery-requirements .read-note { overflow-wrap:anywhere; white-space:pre-wrap; }
}

@layer design-system {
 #modal .modal-head > :first-child {min-width:0;margin-right:auto;}
 .modal-head .dialog-expand {flex-shrink:0;}
 dialog.dialog-expanded {
  position:fixed;inset:0;margin:0;width:100vw;max-width:100vw;
  height:100dvh;max-height:100dvh;box-sizing:border-box;border-radius:0;
  overflow:auto;
 }
 dialog.dialog-expanded[open] {display:flex;flex-direction:column;}
 dialog.dialog-expanded > .modal-head {flex-shrink:0;}
 dialog.dialog-expanded > form {flex:1;min-height:0;display:flex;flex-direction:column;}
 dialog.dialog-expanded .ba-form {width:100%;max-width:none;box-sizing:border-box;}
 dialog.dialog-expanded .ba-form > .modal-head,
 dialog.dialog-expanded .modal-footer,
 dialog.dialog-expanded .modal-actions {flex-shrink:0;}
 dialog.dialog-expanded .modal-body,
 dialog.dialog-expanded .ba-form-body {flex:1;min-height:0;max-height:none;overflow:auto;}
 dialog.dialog-expanded .ba-form-body {align-content:start;}
 dialog.dialog-expanded .ba-diagram-preview {flex:1;min-height:0;}
 dialog.dialog-expanded .ba-diagram-preview iframe {height:100%;min-height:60vh;}
}

@layer design-system {
 .ba-navigation-row {display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--border-default);margin-bottom:20px;min-width:0;}
 .ba-project-view .ba-navigation-row .ba-primary-tabs {flex:1;min-width:0;margin:0;border-bottom:0;}
 .ba-project-view .ba-navigation-row .ba-workspace-toolbar {flex-shrink:0;margin:0;}
 .ba-page-content > .btn:first-child {margin-bottom:12px;}
 .ba-page-content > .section-heading {margin-bottom:20px;}
 .ba-page-content > .section-heading .eyebrow {margin:0 0 4px;}
 .ba-page-content > .section-heading h2 {margin:0;}
 .ba-page-content > .section-heading p:not(.eyebrow) {margin:4px 0 0;}
 @media(max-width:1000px){
  .ba-navigation-row {flex-wrap:wrap;gap:8px;padding-bottom:12px;}
  .ba-project-view .ba-navigation-row .ba-primary-tabs {flex-basis:100%;}
  .ba-project-view .ba-navigation-row .ba-workspace-toolbar {margin-left:auto;}
 }
}

@layer design-system {
 .note-editor {position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-default);border-radius:var(--radius-xl);background:var(--bg-container);color:var(--text);font-weight:400;overflow:clip;}
 .note-toolbar,.note-table-actions {display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:8px;border-bottom:1px solid var(--border-default);background:var(--bg-container);}
 .note-toolbar button[aria-pressed=true],.note-menu .active {color:var(--blue-active);background:var(--blue-bg);}
 .note-canvas {min-width:0;overflow:auto;}
 .note-content {padding:20px;min-height:160px;outline:none;white-space:normal!important;overflow-wrap:anywhere;font-size:14px;font-weight:400;line-height:1.7;}
 .note-content:focus {box-shadow:none;}
 .note-editor:focus-within {border-color:var(--blue-border);}
 .note-content p {margin:0 0 8px;font-size:inherit;line-height:inherit;white-space:pre-wrap;}
 .note-content h1 {font-size:26px;margin:16px 0 8px;}
 .note-content h2 {font-size:22px;margin:16px 0 8px;}
 .note-content h3 {font-size:18px;margin:12px 0 8px;}
 .note-content ul,.note-content ol {padding-left:24px;margin:8px 0;}
 .note-content blockquote {margin:12px 0;padding-left:16px;border-left:3px solid var(--blue-border);color:var(--text-secondary);}
 .note-content pre {white-space:pre-wrap;background:var(--bg-layout);padding:12px;border-radius:var(--radius-lg);}
 .note-content code {background:var(--bg-layout);padding:2px 4px;border-radius:4px;}
 .note-content hr {border:0;border-top:1px solid var(--border-default);margin:20px 0;}
 .note-content img {max-width:100%;height:auto;display:block;border-radius:var(--radius-lg);}
 .note-content table {width:100%;table-layout:fixed;border-collapse:collapse;min-width:0;}
 .note-content td,.note-content th {border:1px solid var(--border-default);padding:8px;min-width:48px;vertical-align:top;position:relative;}
 .note-content .selectedCell {background:var(--blue-bg);}
 .note-content ul[data-type=taskList] {list-style:none;padding:0;}
 .note-content li[data-checked] {display:flex;align-items:flex-start;gap:8px;}
 .note-content li[data-checked]>label {flex:0 0 auto;margin:0;display:flex;align-items:center;justify-content:center;width:var(--control-height);height:var(--control-height);}
 .note-content li[data-checked]>div {padding-top:4px;}
 .note-content li[data-checked]>div {flex:1;min-width:0;}
 .note-content .ProseMirror-selectednode {outline:2px solid var(--blue-border);}
 .note-content figure {margin:12px 0;}
 .note-content iframe {width:100%;height:420px;max-height:65vh;border:1px solid var(--border-default);border-radius:var(--radius-lg);}
 .note-content figcaption {font-size:12px;color:var(--text-secondary);}
 .note-reader {min-height:0;padding:0;}
 .note-status {font-size:12px;color:var(--text-secondary);padding:8px 12px;margin:0;border-top:1px solid var(--border-default);}
 .note-menu {display:flex;gap:4px;flex-wrap:wrap;padding:8px;background:var(--blue-bg);border-bottom:1px solid var(--border-default);max-height:220px;overflow:auto;}
 .note-insert-panel {padding:12px;background:var(--bg-layout);display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
 .note-insert-panel .field {flex:1 1 220px;margin:0;}
 .note-error {color:var(--error);flex-basis:100%;margin:0;}
 .note-recovery {padding:12px;background:var(--blue-bg);display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
 .note-recovery span {flex-basis:100%;font-size:13px;}
 .note-fullscreen-dialog {position:fixed;inset:0;margin:0;padding:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;}
 .note-fullscreen-dialog .note-editor {height:100%;border:0;border-radius:0;}
 .note-fullscreen-dialog .note-canvas {flex:1;min-height:0;}
 .note-fullscreen-dialog .note-content {max-width:960px;margin:0 auto;min-height:100%;box-sizing:border-box;padding:32px;}
 .note-fullscreen-dialog .note-toolbar,.note-fullscreen-dialog .note-status {flex-shrink:0;}
 .note-editor [hidden] {display:none!important;}
 .ba-page-editor-properties {border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:12px;}
 .ba-page-editor-properties>summary {cursor:pointer;font-weight:600;}
 .ba-page-editor-properties>div {display:grid;gap:16px;margin-top:16px;}
 @media(max-width:640px){.note-content {padding:16px;}.note-fullscreen-dialog .note-content {padding:16px;}.note-content iframe {height:300px;}}
}
@layer design-system {
 .note-content .note-drop-before {box-shadow:0 -2px 0 var(--blue);}
 .note-content .note-drop-after {box-shadow:0 2px 0 var(--blue);}
}

@layer design-system {
.inline-page-title { width:100%; min-width:160px; font-size:22px; font-weight:700; color:var(--navy); border-color:transparent; background:transparent; }
.inline-page-title:hover { border-color:var(--border-default); }
.inline-page { margin-block:16px; }
.inline-page-save { display:flex; align-items:center; gap:8px; color:var(--text-muted); font-size:12px; margin-bottom:8px; }
.inline-page .note-editor { background:var(--bg-surface,white); }
.inline-page .tiptap { min-height:240px; }
.section-heading:has(.inline-page-title)>div:first-child { flex:1; min-width:0; }
}

@layer design-system { [data-page-save-retry][hidden] { display:none!important; } }
@layer design-system {
 @media(max-width:640px) {
  .section-heading:has(.inline-page-title) { flex-wrap:wrap; }
  .section-heading:has(.inline-page-title)>div:first-child { flex-basis:100%; }
 }
}

@layer design-system {
 .note-toolbar {flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;}
 .note-toolbar::-webkit-scrollbar {display:none;}
 .note-toolbar>button {flex-shrink:0;}
 .note-toolbar .note-table-actions {flex:0 0 auto;flex-wrap:nowrap;padding:0 0 0 8px;margin-left:4px;border-bottom:0;border-left:1px solid var(--border-default);}
}

@layer design-system {
 .gc-event.gc-client,.gc-agenda-event.gc-client {background:#fff1f0;color:#a8071a;border-color:#ffa39e;}
 .gc-key-client {background:#ff7875;}
 .client-availability-warning {color:#a8071a;background:#fff1f0;border-radius:var(--radius);padding:12px;margin-block:8px;}
 .client-availability-warning[hidden],.client-availability-warning:empty {display:none!important;}
}

@layer design-system {
.scope-pillar,.scope-tree,.scope-properties,.scope-search-results,.scope-unassigned{background:var(--bg-container);border:1px solid var(--border-default);border-radius:var(--radius-xl)}
.scope-number{background:var(--blue-bg);color:var(--navy);border-radius:var(--radius);font-weight:600}
.scope-pillar>header{border-bottom:1px solid var(--border-default)}.scope-pillar header p,.scope-epic-heading>span,.scope-epic summary,.scope-search-results p,.scope-help,.scope-properties small{color:var(--text-secondary)}
.scope-epic+.scope-epic,.scope-search-results article+article{border-top:1px solid var(--border-subtle)}
.scope-children,.scope-tree-children{border-left:1px solid var(--border-default)}
.scope-epic a,.scope-children a,.scope-related-card a,.scope-tree-link{color:var(--text);text-decoration:none}.scope-epic a:hover,.scope-children a:hover,.scope-related-card a:hover{color:var(--blue-active);text-decoration:underline}
.scope-tree-link{border-radius:var(--radius-sm)}.scope-tree-link.selected{background:var(--blue-bg);color:var(--navy)}.scope-tree-link:hover{background:var(--bg-layout)}
.scope-related-card{background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.scope-empty{border:1px dashed var(--border-default);border-radius:var(--radius-xl)}
}
