:root {
  color-scheme: dark;
  --background: 240 10% 3.9%;
  --foreground: 0 0% 98%;
  --card: 240 10% 3.9%;
  --card-foreground: 0 0% 98%;
  --popover: 240 10% 3.9%;
  --primary: 0 0% 98%;
  --primary-foreground: 240 5.9% 10%;
  --secondary: 240 3.7% 15.9%;
  --secondary-foreground: 0 0% 98%;
  --muted: 240 3.7% 15.9%;
  --muted-foreground: 240 5% 64.9%;
  --accent: 240 3.7% 15.9%;
  --accent-foreground: 0 0% 98%;
  --destructive: 0 62.8% 30.6%;
  --destructive-foreground: 0 0% 98%;
  --border: 240 3.7% 15.9%;
  --input: 240 3.7% 15.9%;
  --ring: 240 4.9% 83.9%;
  --success: 142 70% 45%;
  --warning: 38 92% 50%;
  --radius: 0.5rem;
  font-family: Geist, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { background: hsl(var(--background)); scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: hsl(var(--background)); color: hsl(var(--foreground)); line-height: 1.5; }
.sr-only { border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; }
::selection { background: hsl(var(--ring) / .28); color: hsl(var(--foreground)); }
a { color: inherit; text-decoration: none; }
button, textarea, input { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .5; }
:focus-visible { outline: 2px solid hsl(var(--ring)); outline-offset: 2px; }

.app-shell { display: grid; grid-template-columns: 240px minmax(0, 1fr); min-height: 100vh; }
.sidebar { background: hsl(240 5.9% 10%); border-right: 1px solid hsl(var(--border)); display: flex; flex-direction: column; justify-content: space-between; padding: 1rem .75rem .75rem; }
.sidebar-top { min-width: 0; }
.brand { align-items: center; display: flex; gap: .65rem; padding: .35rem .5rem 1rem; }
.brand-mark { align-items: center; background: hsl(var(--foreground)); border-radius: .35rem; color: hsl(var(--primary-foreground)); display: inline-flex; font-size: .9rem; font-weight: 800; height: 1.9rem; justify-content: center; width: 1.9rem; }
.brand-copy strong, .brand-copy small { display: block; }
.brand-copy strong { font-size: .9rem; letter-spacing: -.01em; }
.brand-copy small { color: hsl(var(--muted-foreground)); font-size: .58rem; letter-spacing: .1em; margin-top: .1rem; }
.sidebar-divider { background: hsl(var(--border)); height: 1px; margin: 0 .5rem 1rem; }
.nav-list { display: grid; gap: .2rem; }
.nav-item { align-items: center; border-radius: .375rem; color: hsl(var(--muted-foreground)); display: flex; font-size: .84rem; gap: .65rem; padding: .55rem .65rem; transition: background .15s ease, color .15s ease; }
.nav-item:hover { background: hsl(var(--accent)); color: hsl(var(--accent-foreground)); }
.nav-item.active { background: hsl(var(--secondary)); color: hsl(var(--secondary-foreground)); }
.nav-icon { color: hsl(var(--muted-foreground)); height: 1rem; line-height: 1; width: 1rem; }
.nav-item.active .nav-icon { color: hsl(var(--foreground)); }
.sidebar-section-heading { align-items: center; color: hsl(var(--muted-foreground)); display: flex; font-size: .66rem; font-weight: 600; justify-content: space-between; letter-spacing: .08em; margin: 1.8rem .65rem .55rem; text-transform: uppercase; }
.count-badge { border: 1px solid hsl(var(--border)); border-radius: 999px; font-size: .52rem; padding: .1rem .3rem; }
.project-list { display: grid; gap: .25rem; }
.project-row { align-items: flex-start; border-radius: .375rem; display: flex; gap: .5rem; justify-content: space-between; padding: .55rem .65rem; }
.project-row:hover { background: hsl(var(--accent)); }
.project-row strong, .project-path, .availability { display: block; }
.project-row strong { font-size: .78rem; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.project-path { color: hsl(var(--muted-foreground)); font-size: .65rem; margin-top: .12rem; max-width: 135px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.availability { color: hsl(var(--muted-foreground)); font-size: .53rem; letter-spacing: .06em; white-space: nowrap; }
.available { color: hsl(var(--success)); }
.unavailable { color: hsl(var(--warning)); }
.sidebar-bottom { display: grid; gap: .7rem; }
.local-status { align-items: center; background: hsl(var(--background) / .55); border: 1px solid hsl(var(--border)); border-radius: .375rem; display: flex; gap: .55rem; padding: .65rem; }
.local-status strong, .local-status small { display: block; }
.local-status strong { font-size: .72rem; font-weight: 500; }
.local-status small { color: hsl(var(--muted-foreground)); font-size: .64rem; margin-top: .1rem; }
.sidebar-note { color: hsl(var(--muted-foreground)); font-size: .65rem; line-height: 1.45; padding: 0 .4rem; }
.status-dot { background: hsl(var(--success)); border-radius: 999px; box-shadow: 0 0 0 3px hsl(var(--success) / .12); display: inline-block; flex: 0 0 auto; height: .45rem; width: .45rem; }

.main-content { min-width: 0; }
.topbar { align-items: center; border-bottom: 1px solid hsl(var(--border)); display: flex; justify-content: space-between; min-height: 3.75rem; padding: 0 2rem; }
.breadcrumbs { align-items: center; color: hsl(var(--muted-foreground)); display: flex; font-size: .78rem; gap: .55rem; }
.breadcrumbs strong { color: hsl(var(--foreground)); font-weight: 500; }
.breadcrumb-slash { color: hsl(var(--border)); }
.topbar-actions { align-items: center; display: flex; gap: .6rem; }
.service-badge, .secure-badge { align-items: center; color: hsl(var(--muted-foreground)); display: inline-flex; font-size: .7rem; gap: .45rem; }
.secure-badge { border: 1px solid hsl(var(--border)); border-radius: 999px; padding: .35rem .55rem; }
.secure-badge span { color: hsl(var(--success)); font-size: .55rem; }

.page-content { margin: 0 auto; max-width: 1320px; padding: 2.25rem 2rem 3rem; }
.page-heading { align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: 1.5rem; }
h1, h2, h3, p { margin: 0; }
h1 { font-size: 1.85rem; font-weight: 650; letter-spacing: -.04em; line-height: 1.15; }
h2 { font-size: 1rem; font-weight: 600; letter-spacing: -.015em; }
h3 { font-size: .9rem; font-weight: 600; }
.page-heading p { color: hsl(var(--muted-foreground)); font-size: .85rem; margin-top: .45rem; }
.card-kicker { color: hsl(var(--muted-foreground)); font-size: .63rem; font-weight: 600; letter-spacing: .1em; margin-bottom: .3rem; text-transform: uppercase; }
.text-muted { color: hsl(var(--muted-foreground)); font-size: .72rem; }

.command-layout { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr) 280px; }
.lower-grid { display: grid; gap: 1rem; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); margin-top: 1rem; }
.ui-card { background: hsl(var(--card)); border: 1px solid hsl(var(--border)); border-radius: var(--radius); box-shadow: 0 1px 2px hsl(0 0% 0% / .18); }
.ui-subcard { background: hsl(var(--muted) / .42); border: 1px solid hsl(var(--border)); border-radius: var(--radius); }
.card-header { align-items: flex-start; display: flex; justify-content: space-between; }
.compact-header { align-items: center; }
.composer-card { min-width: 0; padding: 1.25rem; }
.composer-header { margin-bottom: 1.25rem; }
.orb-card { padding: 1.25rem; }

.ui-badge { align-items: center; border: 1px solid transparent; border-radius: 999px; display: inline-flex; font-size: .62rem; font-weight: 600; gap: .3rem; line-height: 1; padding: .34rem .55rem; white-space: nowrap; }
.ui-badge-muted { background: hsl(var(--secondary)); border-color: hsl(var(--border)); color: hsl(var(--muted-foreground)); }
.ui-badge-success { background: hsl(var(--success) / .12); border-color: hsl(var(--success) / .25); color: hsl(142 70% 65%); }
.ui-badge-warning { background: hsl(var(--warning) / .12); border-color: hsl(var(--warning) / .25); color: hsl(38 92% 65%); }
.ui-badge[data-state="attention"] { background: hsl(0 72% 50% / .12); border-color: hsl(0 72% 60% / .25); color: hsl(0 72% 72%); }
.ui-badge[data-state="responding"], .ui-badge[data-state="processing"] { background: hsl(221 83% 53% / .14); border-color: hsl(221 83% 65% / .25); color: hsl(217 92% 76%); }
.ui-badge[data-state="preview"] { background: hsl(270 80% 60% / .14); border-color: hsl(270 80% 70% / .25); color: hsl(270 95% 80%); }
.ui-badge[data-state="success"] { background: hsl(var(--success) / .12); border-color: hsl(var(--success) / .25); color: hsl(142 70% 65%); }

.ui-label { color: hsl(var(--foreground)); display: block; font-size: .76rem; font-weight: 500; margin-bottom: .5rem; }
.ui-textarea { background: hsl(var(--background)); border: 1px solid hsl(var(--input)); border-radius: calc(var(--radius) - 2px); color: hsl(var(--foreground)); display: block; min-height: 8.5rem; outline: none; padding: .8rem .85rem; resize: vertical; width: 100%; }
.ui-textarea::placeholder { color: hsl(var(--muted-foreground)); }
.ui-textarea:focus { border-color: hsl(var(--ring)); box-shadow: 0 0 0 2px hsl(var(--ring) / .18); }
.composer-footer { align-items: center; display: flex; gap: 1rem; justify-content: space-between; margin-top: .75rem; }
.form-hint { align-items: center; color: hsl(var(--muted-foreground)); display: inline-flex; font-size: .7rem; gap: .45rem; }
.hint-dot { border: 1px solid hsl(var(--muted-foreground)); border-radius: 999px; height: .42rem; width: .42rem; }
.ui-button { align-items: center; border: 1px solid transparent; border-radius: calc(var(--radius) - 2px); display: inline-flex; font-size: .75rem; font-weight: 500; gap: .45rem; justify-content: center; line-height: 1; min-height: 2.25rem; padding: .55rem .8rem; transition: background .15s ease, border-color .15s ease, color .15s ease; white-space: nowrap; }
.icon { height: .9rem; width: .9rem; }
.ui-button-primary { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }
.ui-button-primary:hover:not(:disabled) { background: hsl(var(--primary) / .88); }
.ui-button-ghost { background: transparent; color: hsl(var(--muted-foreground)); }
.ui-button-ghost:hover:not(:disabled) { background: hsl(var(--accent)); color: hsl(var(--accent-foreground)); }
.ui-button-sm { min-height: 2rem; padding: .45rem .65rem; }
.ui-message { color: hsl(var(--muted-foreground)); font-size: .75rem; min-height: 1.35rem; padding-top: .65rem; }
.ui-message[data-state="error"] { color: hsl(0 72% 72%); }

.preview-panel { margin-top: 1rem; padding: 1rem; }
.preview-heading { align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: .85rem; }
.detail-grid { display: grid; gap: .65rem 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 0 1rem; }
.detail-grid div { min-width: 0; }
dt { color: hsl(var(--muted-foreground)); font-size: .62rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
dd { font-size: .76rem; margin: .15rem 0 0; overflow-wrap: anywhere; }
.ui-checkbox-row { align-items: flex-start; color: hsl(var(--muted-foreground)); display: flex; font-size: .72rem; gap: .5rem; margin: 0 0 .9rem; }
.ui-checkbox-row input { accent-color: hsl(var(--foreground)); margin: .15rem 0 0; }

.orb-wrap { align-items: center; display: flex; justify-content: center; min-height: 205px; }
.orb { color: hsl(142 70% 58%); font-family: "Cascadia Code", Consolas, monospace; font-size: .72rem; line-height: 1.3; margin: 0; text-shadow: 0 0 18px hsl(142 70% 45% / .2); white-space: pre; }
.orb-caption { color: hsl(var(--muted-foreground)); font-size: .72rem; line-height: 1.45; min-height: 2.2rem; }
.orb-meta { align-items: center; border-top: 1px solid hsl(var(--border)); color: hsl(var(--muted-foreground)); display: flex; font-size: .66rem; gap: .5rem; margin-top: 1rem; padding-top: .75rem; }

.task-card, .timeline-card, .readiness-card-section { padding: 1.25rem; }
.selected-task { margin-top: 1.25rem; }
.empty-state { color: hsl(var(--muted-foreground)); font-size: .75rem; line-height: 1.5; }
.selected-task strong, .selected-task .task-status, .selected-task .muted { display: block; }
.selected-task strong { color: hsl(var(--foreground)); font-family: "Cascadia Code", Consolas, monospace; font-size: .7rem; overflow-wrap: anywhere; }
.selected-task .task-status { color: hsl(142 70% 65%); font-size: .85rem; font-weight: 600; margin: .4rem 0 .2rem; text-transform: capitalize; }
.selected-task .muted { color: hsl(var(--muted-foreground)); font-size: .7rem; }
.timeline { margin-top: 1.25rem; }
.timeline-event { display: grid; gap: .7rem; grid-template-columns: .75rem 1fr; padding: 0 0 1rem; position: relative; }
.timeline-event:not(:last-child)::after { background: hsl(var(--border)); content: ""; height: calc(100% - .65rem); left: .28rem; position: absolute; top: .65rem; width: 1px; }
.timeline-dot { background: hsl(var(--foreground)); border-radius: 999px; height: .4rem; margin-top: .3rem; position: relative; width: .4rem; z-index: 1; }
.timeline-meta { align-items: baseline; display: flex; gap: .75rem; justify-content: space-between; }
.timeline-meta strong { font-size: .75rem; font-weight: 500; text-transform: capitalize; }
.timeline-meta time { color: hsl(var(--muted-foreground)); font-size: .65rem; white-space: nowrap; }
.timeline-event p { color: hsl(var(--muted-foreground)); font-size: .7rem; margin-top: .15rem; }

.readiness-card-section { margin-top: 1rem; }
.readiness-list { display: grid; gap: .75rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1.1rem; }
.readiness-card { background: hsl(var(--background)); border: 1px solid hsl(var(--border)); border-radius: calc(var(--radius) - 2px); padding: .9rem; }
.readiness-card-heading { align-items: flex-start; display: flex; justify-content: space-between; }
.readiness-card-heading strong, .readiness-card-heading .muted { display: block; }
.readiness-card-heading strong { font-size: .78rem; font-weight: 600; text-transform: capitalize; }
.readiness-card-heading .muted { color: hsl(var(--muted-foreground)); font-size: .65rem; margin-top: .15rem; }
.readiness-status { border: 0; font-size: .6rem; font-weight: 600; letter-spacing: .04em; }
.readiness-status.ready { color: hsl(142 70% 65%); }
.readiness-status.needs_attention { color: hsl(38 92% 65%); }
.readiness-status.unavailable { color: hsl(0 70% 70%); }
.readiness-details { display: grid; gap: .55rem 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: .85rem 0; }
.readiness-details div { min-width: 0; }
.readiness-details dd { font-size: .7rem; overflow-wrap: anywhere; }
.remediation { border-top: 1px solid hsl(var(--border)); color: hsl(38 92% 65%); font-size: .7rem; margin: .75rem 0 .5rem; padding-top: .65rem; }
.observed { color: hsl(var(--muted-foreground)); display: block; font-size: .64rem; }
.settings-strip { align-items: center; border-bottom: 1px solid hsl(var(--border)); border-top: 1px solid hsl(var(--border)); display: flex; justify-content: space-between; margin-top: 1rem; padding: 1rem .25rem; }
.settings-strip strong { display: block; font-size: .78rem; font-weight: 500; }
.page-footer { color: hsl(var(--muted-foreground)); font-size: .65rem; padding: 0 2rem 1.5rem; text-align: center; }
.page-footer span { color: hsl(var(--border)); padding: 0 .3rem; }

@media (max-width: 900px) {
  .app-shell { grid-template-columns: 195px minmax(0, 1fr); }
  .command-layout { grid-template-columns: minmax(0, 1fr) 235px; }
  .page-content { padding-left: 1.25rem; padding-right: 1.25rem; }
  .topbar { padding: 0 1.25rem; }
}
@media (max-width: 720px) {
  .app-shell { display: block; }
  .sidebar { border-bottom: 1px solid hsl(var(--border)); border-right: 0; display: block; padding: .6rem .75rem; }
  .sidebar-top { display: block; }
  .brand { padding: .25rem 0; }
  .sidebar-divider { display: none; }
  .nav-list { display: grid; gap: .25rem; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: .55rem; }
  .nav-item, .nav-item.active { font-size: .72rem; justify-content: center; min-height: 2.75rem; padding: .45rem .35rem; }
  .nav-item .nav-icon { display: none; }
  .topbar { min-height: 3.25rem; padding: 0 .9rem; }
  .breadcrumbs span:first-child, .breadcrumb-slash { display: none; }
  .service-badge { display: none; }
  .page-content { padding: 1.4rem .9rem 2rem; }
  .page-heading { gap: .75rem; }
  h1 { font-size: 1.55rem; }
  .secure-badge { font-size: .62rem; }
  .command-layout, .lower-grid { grid-template-columns: 1fr; }
  .orb-card { order: -1; }
  .orb-wrap { min-height: 150px; }
  .composer-footer, .settings-strip { align-items: flex-start; flex-direction: column; }
  .ui-button { min-height: 2.75rem; }
  .ui-button-primary { width: 100%; }
  .detail-grid, .readiness-list, .readiness-details { grid-template-columns: 1fr; }
  .timeline-meta { align-items: flex-start; flex-direction: column; gap: .15rem; }
  .page-footer { padding: 0 .9rem 1rem; }
}

.status-dot[data-state="loading"] { background: hsl(var(--warning)); box-shadow: 0 0 0 3px hsl(var(--warning) / .12); }
.status-dot[data-state="error"] { background: hsl(0 70% 65%); box-shadow: 0 0 0 3px hsl(0 70% 65% / .12); }
.sidebar-form { border-top: 1px solid hsl(var(--border)); display: grid; gap: .45rem; margin-top: 1rem; padding: .9rem .4rem 0; }
.sidebar-form .ui-label { font-size: .66rem; line-height: 1.3; margin-bottom: .1rem; }
.ui-input, .ui-select { background: hsl(var(--background)); border: 1px solid hsl(var(--input)); border-radius: calc(var(--radius) - 2px); color: hsl(var(--foreground)); min-height: 2.15rem; outline: none; padding: .45rem .6rem; width: 100%; }
.ui-input { font-size: .7rem; }
.ui-select { appearance: auto; font-size: .72rem; }
.ui-input::placeholder { color: hsl(var(--muted-foreground)); }
.ui-input:focus, .ui-select:focus { border-color: hsl(var(--ring)); box-shadow: 0 0 0 2px hsl(var(--ring) / .18); }
.project-row-copy { min-width: 0; }
.project-row-actions { align-items: flex-end; display: grid; gap: .25rem; justify-items: end; }
.text-button { background: none; border: 0; color: hsl(var(--warning)); cursor: pointer; font-size: .58rem; padding: 0; }
.preference-grid { display: grid; gap: .65rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: .9rem; }
.preference-grid .ui-label { margin: 0; }
.preference-grid .ui-select { display: block; margin-top: .35rem; }
.assistant-reply { border-left: 1px solid hsl(var(--ring) / .45); color: hsl(var(--foreground)); font-size: .78rem; line-height: 1.55; margin: .8rem 0 0; min-height: 2.4rem; padding-left: .75rem; }
.orb[data-state="processing"] { color: hsl(217 92% 76%); text-shadow: 0 0 18px hsl(221 83% 53% / .25); }
.orb[data-state="responding"] { color: hsl(270 95% 80%); text-shadow: 0 0 22px hsl(270 80% 60% / .3); }
.orb[data-state="running"] { color: hsl(38 92% 65%); text-shadow: 0 0 18px hsl(38 92% 50% / .25); }
.orb[data-state="approval"] { color: hsl(38 92% 65%); text-shadow: 0 0 22px hsl(38 92% 50% / .3); }
.orb[data-state="success"] { color: hsl(142 70% 65%); text-shadow: 0 0 22px hsl(142 70% 45% / .3); }
.orb[data-state="error"] { color: hsl(0 70% 70%); text-shadow: 0 0 22px hsl(0 70% 50% / .3); }
.work-grid { display: grid; gap: 1rem; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); margin-top: 1rem; }
.task-list { display: grid; gap: .3rem; margin-top: 1rem; }
.task-row { align-items: center; background: transparent; border: 1px solid transparent; border-radius: calc(var(--radius) - 2px); color: inherit; display: grid; gap: .55rem; grid-template-columns: .45rem minmax(0, 1fr) auto; padding: .65rem .55rem; text-align: left; width: 100%; }
.task-row:hover, .task-row.selected { background: hsl(var(--accent)); border-color: hsl(var(--border)); }
.task-row-content { min-width: 0; }
.task-row-content strong, .task-row-content small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.task-row-content strong { font-size: .75rem; font-weight: 500; }
.task-row-content small, .task-row time { color: hsl(var(--muted-foreground)); font-size: .63rem; margin-top: .15rem; }
.task-row time { white-space: nowrap; }
.task-row-status { background: hsl(var(--muted-foreground)); border-radius: 999px; height: .4rem; width: .4rem; }
.status-queued, .status-acknowledged, .status-running, .status-testing { background: hsl(217 92% 76%); box-shadow: 0 0 0 3px hsl(217 92% 76% / .12); }
.status-waiting_for_approval { background: hsl(var(--warning)); box-shadow: 0 0 0 3px hsl(var(--warning) / .12); }
.status-completed { background: hsl(var(--success)); }
.status-failed, .status-interrupted { background: hsl(0 70% 70%); }
.selected-task { border-top: 1px solid hsl(var(--border)); margin-top: 1rem; padding-top: 1rem; }
.selected-task-heading { align-items: flex-start; display: flex; justify-content: space-between; gap: .75rem; }
.selected-task-actions { display: flex; gap: .5rem; margin-top: .9rem; }
.status-text-completed { color: hsl(142 70% 65%) !important; }
.status-text-failed, .status-text-interrupted { color: hsl(0 70% 70%) !important; }
.status-text-waiting_for_approval { color: hsl(var(--warning)) !important; }
.diagnostics-details, .readiness-card { border-top: 1px solid hsl(var(--border)); }
.diagnostics-details { color: hsl(var(--muted-foreground)); font-size: .67rem; margin-top: .9rem; padding-top: .65rem; }
.diagnostics-details summary, .readiness-card summary { cursor: pointer; }
.diagnostics-details p { margin-top: .55rem; }
.section-actions { align-items: center; display: flex; gap: .7rem; }
.readiness-card-section { margin-top: 1rem; }
.readiness-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.readiness-card { background: hsl(var(--background)); border: 1px solid hsl(var(--border)); border-radius: calc(var(--radius) - 2px); padding: .9rem; }
.readiness-card::marker { color: hsl(var(--muted-foreground)); }
.readiness-card-heading { list-style: none; }
.readiness-card-heading::-webkit-details-marker { display: none; }
.readiness-card-heading::after { color: hsl(var(--muted-foreground)); content: "+"; font-size: .8rem; margin-left: .5rem; }
.readiness-card[open] .readiness-card-heading::after { content: "-"; }
.settings-card { margin-top: 1rem; padding: 1.25rem; }
.settings-card .card-header { margin-bottom: 1rem; }
.settings-form { align-items: end; display: grid; gap: 1rem; grid-template-columns: minmax(180px, .5fr) minmax(220px, 1fr) auto; }
.settings-checkbox { margin: 0; }
.settings-form .ui-label { margin: 0; }

@media (max-width: 900px) {
  .preference-grid, .settings-form { grid-template-columns: 1fr; }
  .section-actions { align-items: flex-end; flex-direction: column; gap: .35rem; }
}
@media (max-width: 720px) {
  .sidebar-section-heading, .project-list, .sidebar-bottom, .sidebar-form { display: grid; }
  .work-grid, .readiness-list { grid-template-columns: 1fr; }
  .preference-grid { grid-template-columns: 1fr; }
  .section-actions { align-items: flex-start; flex-direction: row; }
  .settings-form { grid-template-columns: 1fr; }
  .task-row time { display: none; }
  .text-button { min-height: 2.75rem; padding: .4rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .orb { text-shadow: none !important; }
}
