:root {
  --bg: #080d14;
  --text: #edf4fb;
  --muted: #a5b2c2;
  --dim: #7e8ca0;
  --line: rgba(169, 193, 220, .12);
  --blue: #62baff;
  --data-blue: #62baff;
  --data-teal: #49d8c2;
  --data-green: #67d29a;
  --data-amber: #ffc16a;
  --data-violet: #b59cff;
  --data-coral: #ff897f;
  --surface: #0e1621;
  --surface-raised: #131e2b;
  --chart-grid: rgba(169, 193, 220, .13);
}

body {
  background:
    radial-gradient(ellipse at 13% 0%, rgba(29, 104, 148, .16), transparent 34%),
    radial-gradient(ellipse at 88% 10%, rgba(28, 127, 114, .12), transparent 29%),
    #080d14;
}

.ambient-one { background: radial-gradient(circle, #287bb0, #173956 52%, transparent 72%); }
.ambient-two { background: radial-gradient(circle, #1e8d85, #173c45 48%, transparent 72%); }
.ambient-three { background: radial-gradient(circle, #6654a7, #352d5d 50%, transparent 72%); }
.topbar { border-bottom-color: var(--line); }
.brand-dot { color: var(--data-teal); }
.brand-mark { border-color: rgba(105, 191, 240, .32); background: linear-gradient(145deg, rgba(50, 145, 196, .22), rgba(29, 65, 93, .12)); }
.brand-mark i { background: linear-gradient(180deg, #b1edff, var(--data-blue)); }
.live-indicator i { background: var(--data-green); box-shadow: 0 0 10px rgba(103, 210, 154, .5); }
.avatar { border-color: rgba(146, 202, 237, .24); background: radial-gradient(circle at 30% 20%, #527f9b, #263b4d 70%); }

.glass-panel {
  border-color: rgba(150, 187, 219, .15);
  background: linear-gradient(145deg, rgba(20, 31, 44, .82), rgba(11, 17, 26, .88) 72%);
  box-shadow: 0 16px 46px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(211, 237, 255, .06);
}
.content-card {
  border-color: rgba(151, 182, 210, .13);
  background: linear-gradient(145deg, rgba(20, 31, 44, .76), rgba(12, 19, 28, .83));
  box-shadow: inset 0 1px 0 rgba(217, 237, 255, .045), 0 8px 24px rgba(0, 0, 0, .09);
}
.main-content { color: var(--text); }
.view-heading h1 { color: #f3f8fd; }
.view-kicker, .card-eyebrow { color: #93a5b8; letter-spacing: .14em; }
.view-subtitle, .section-note { color: #a0adbc; }
.view-index { color: var(--data-teal); }
.view-index i { color: #8190a1; }
.section-row h2, .section-row.compact h2, .chart-title-row strong, .chart-title-row h2 { color: #e5eef6; }
.data-source-note, .data-source-note.small { color: #8796a8; }

.menu-link { color: #a4b2c2; }
.menu-link:hover { color: #f1f7fc; background: rgba(98, 186, 255, .07); }
.menu-link.active {
  color: #eff8ff;
  border-color: rgba(98, 186, 255, .18);
  background: linear-gradient(100deg, rgba(36, 124, 174, .2), rgba(44, 105, 132, .07));
  box-shadow: inset 2px 0 0 var(--data-blue), inset 0 1px 0 rgba(255, 255, 255, .05);
}
.menu-link.active .menu-icon { color: var(--data-blue); }
.menu-icon { color: #8296aa; }
.side-heading { color: #8898a9; }
.side-heading-line { background: var(--data-blue); }
.sidebar-bottom { border-top-color: var(--line); }
.sidebar-orb { border-color: rgba(73, 216, 194, .24); background: radial-gradient(circle at 40% 35%, rgba(73, 216, 194, .2), rgba(29, 64, 72, .13)); }
.sidebar-orb span { border-color: var(--data-teal); box-shadow: 0 0 12px rgba(73, 216, 194, .36); }
.sidebar-bottom-title { color: #c4d0dc; }
.sidebar-bottom-copy { color: #8795a6; }

.welcome-card { border: 1px solid rgba(98, 186, 255, .18); background: linear-gradient(120deg, rgba(18, 43, 63, .95), rgba(17, 30, 47, .9) 52%, rgba(17, 26, 42, .92)); }
.welcome-card::before { background: radial-gradient(ellipse, rgba(73, 216, 194, .2), transparent 70%); }
.welcome-card h2, .review-intro h2 { color: #f1f8fd; }
.welcome-card-content > p:last-child, .review-intro > p:last-of-type { color: #a7b6c5; }
.visual-orbit { border-color: rgba(126, 205, 238, .2); }
.orbit-b { border-color: rgba(73, 216, 194, .3); }
.visual-core { border-color: rgba(141, 220, 245, .34); background: radial-gradient(circle at 33% 27%, rgba(139, 224, 247, .44), rgba(41, 121, 153, .24) 44%, rgba(14, 29, 43, .48)); box-shadow: 0 0 55px rgba(73, 216, 194, .17), inset 0 1px 9px rgba(255, 255, 255, .18); }
.visual-star { color: #a7e8e4; }
.star-c { color: #c2a9ff; }

.metric-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(158, 190, 220, .15);
  background: linear-gradient(145deg, rgba(24, 39, 55, .88), rgba(13, 21, 31, .94));
}
.metric-card::before { position: absolute; top: 0; left: 15px; width: 42px; height: 2px; border-radius: 99px; content: ""; background: currentColor; opacity: .82; }
.metric-label, .metric-note { color: #9aabbd; font-size: 9px; }
.metric-value { color: #f1f7fc; font-size: clamp(17px, 1.8vw, 23px); }
.metric-blue { color: var(--data-blue); background: linear-gradient(145deg, rgba(32, 88, 123, .32), rgba(13, 21, 31, .94)); }
.metric-green { color: var(--data-teal); background: linear-gradient(145deg, rgba(29, 104, 91, .27), rgba(13, 21, 31, .94)); }
.metric-violet { color: var(--data-violet); background: linear-gradient(145deg, rgba(83, 62, 132, .26), rgba(13, 21, 31, .94)); }
.metric-amber { color: var(--data-amber); background: linear-gradient(145deg, rgba(125, 86, 34, .24), rgba(13, 21, 31, .94)); }
.metric-card .metric-value { color: #f1f7fc; }

.tile-symbol, .update-icon, .intro-icon, .assistant-mark, .welcome-sparkle, .calendar-mark { border-color: rgba(134, 191, 222, .19); }
.symbol-blue, .tool-icon, .quiet-link { color: var(--data-blue); }
.symbol-green { color: var(--data-teal); }
.symbol-violet { color: var(--data-violet); }
.symbol-amber { color: var(--data-amber); }
.home-task-row.done > i { border-color: var(--data-green); background: var(--data-green); }
.task-progress-track span { background: linear-gradient(90deg, var(--data-blue), var(--data-teal)); }
.assistant-panel { border-color: rgba(101, 185, 226, .2); background: linear-gradient(160deg, rgba(17, 31, 44, .94), rgba(10, 17, 26, .96)); }
.assistant-mark, .calendar-mark { color: var(--data-teal); background: linear-gradient(145deg, rgba(73, 216, 194, .12), rgba(39, 74, 87, .08)); }
.assistant-status { color: #9db9aa; }
.assistant-status span { background: var(--data-green); }
.assistant-composer { border-color: rgba(110, 184, 217, .2); background: rgba(7, 19, 28, .56); }
.assistant-composer:focus-within { border-color: rgba(73, 216, 194, .42); box-shadow: 0 0 0 3px rgba(73, 216, 194, .07); }
.assistant-composer button { border-color: rgba(73, 216, 194, .2); color: var(--data-teal); background: rgba(73, 216, 194, .1); }
.assistant-message.user { border-color: rgba(98, 186, 255, .2); background: rgba(50, 126, 177, .16); }

.chart-title-row { color: #dce8f3; }
.chart-title-row > span { color: #96a6b7; font-size: 9px; }
.chart-grid-line { stroke: var(--chart-grid); }
.chart-tick, .chart-axis-label { fill: #91a1b3; }
.chart-empty { color: #92a1b2; }
.chart-legend { color: #a5b2c0; }
.legend-income { background: var(--data-blue); }
.legend-expense { background: var(--data-coral); }
.data-source-note { color: #8796a8; }
.chart-line { stroke: var(--data-teal); }
.chart-area { fill: rgba(73, 216, 194, .13); }
.chart-point { stroke: var(--data-teal); }
.category-name { color: #a8b6c5; font-size: 9px; }
.category-row strong { color: #e1ecf5; font-size: 9px; }
.chart-card, .table-card, .finance-widget { border-color: rgba(151, 182, 210, .15); }
.finance-table thead th { color: #9aabbd; }
.finance-table tbody td { color: #d1dce7; }
.finance-table tbody tr:hover { background: rgba(98, 186, 255, .055); }
.finance-table tbody tr + tr { border-top-color: rgba(151, 182, 210, .09); }

.primary-button, .primary-link { border-color: rgba(73, 216, 194, .24); color: #e7fffb; background: linear-gradient(130deg, rgba(31, 140, 130, .28), rgba(46, 105, 127, .18)); }
.secondary-button { border-color: rgba(98, 186, 255, .19); color: #cce8fa; background: rgba(50, 126, 177, .1); }
.primary-button:hover, .primary-link:hover { border-color: rgba(73, 216, 194, .42); background: linear-gradient(130deg, rgba(31, 140, 130, .37), rgba(46, 105, 127, .25)); }
.secondary-button:hover { border-color: rgba(98, 186, 255, .36); background: rgba(50, 126, 177, .18); }
.filter-chip.active, .period-switch button.active { border-color: rgba(73, 216, 194, .25); color: #dcfffa; background: rgba(38, 151, 137, .14); }
.filter-chip, .period-switch button { color: #9aa9b9; border-color: rgba(151, 182, 210, .13); background: rgba(255, 255, 255, .025); }
.news-category { color: #8de5de; background: rgba(73, 216, 194, .1); }
.news-title { color: #e3edf5; }
.news-card > p { color: #a1afbd; }
.news-sources a { color: #78c8ff; }
.record-kind { color: var(--data-blue); }
.record-meta, .record-row > strong { color: #a4b2c0; }
.bill-record-amount.income { color: var(--data-teal); }
.bill-record-amount.expense { color: var(--data-coral); }
.bill-edit-button, .bill-delete-button { min-height: 32px; border-color: rgba(151, 182, 210, .14); color: #b1bfcd; font-size: 9px; }
.bill-delete-button:hover, .employee-delete:hover { border-color: rgba(255, 137, 127, .32); color: #ffb2a9; background: rgba(255, 137, 127, .1); }
.review-entry, .employee-card, .news-card, .plan-template-card { border-color: rgba(151, 182, 210, .12); }
.review-entry:hover, .employee-card:hover, .plan-template-card:hover { border-color: rgba(98, 186, 255, .22); }
.owner-largest-expense { border-color: rgba(255, 137, 127, .15); background: rgba(255, 137, 127, .045); }
.owner-largest-expense > span { color: #b7a299; }
.owner-largest-expense strong { color: #ffe1d9; }
.owner-mini-metrics > div { border-color: rgba(151, 182, 210, .1); background: rgba(255, 255, 255, .025); }
.season-folder { border-color: rgba(151, 182, 210, .14); background: rgba(15, 25, 36, .62); }
.season-folder[open] > .season-folder-summary { background: rgba(73, 216, 194, .045); }
.season-folder-summary strong { color: #e2edf5; }
.bill-owner-folder { border-color: rgba(151, 182, 210, .1); background: rgba(255, 255, 255, .025); }
.bill-source-file { border-color: rgba(151, 182, 210, .09); background: rgba(3, 10, 17, .2); }
.plan-template-group-heading { border-bottom-color: rgba(151, 182, 210, .12); }
.plan-template-card { background: rgba(255, 255, 255, .025); }
.data-form input, .data-form select, .review-form input, .review-form textarea, .search-input-wrap input,
.plan-template-form input, .plan-template-form select, .plan-template-form textarea,
.bill-toolbar select, .bill-edit-form input, .bill-edit-form select {
  border-color: rgba(151, 182, 210, .16);
  color: #e6f0f7;
  background-color: rgba(5, 15, 24, .72);
}
.data-form input:focus, .data-form select:focus, .review-form input:focus, .review-form textarea:focus,
.plan-template-form input:focus, .plan-template-form select:focus, .plan-template-form textarea:focus,
.bill-edit-form input:focus, .bill-edit-form select:focus {
  border-color: rgba(73, 216, 194, .45);
  box-shadow: 0 0 0 3px rgba(73, 216, 194, .07);
}
.data-form input::placeholder, .review-form textarea::placeholder, .search-input-wrap input::placeholder { color: #8291a2; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 2px solid rgba(73, 216, 194, .72);
  outline-offset: 2px;
}
.page-footer { color: #718094; }
.footer-mark i { background: var(--data-teal); }

@media (max-width: 880px) {
  .mobile-menu { border-color: rgba(98, 186, 255, .16); background: rgba(12, 25, 36, .88); }
  .mobile-menu .menu-link.active { box-shadow: inset 0 0 0 1px rgba(73, 216, 194, .16); }
}

@media (max-width: 620px) {
  .view-content { gap: 14px; }
  .view-kicker, .card-eyebrow { font-size: 9px; letter-spacing: .12em; }
  .view-subtitle { font-size: 11px; line-height: 1.6; }
  .section-row.compact h2, .section-row h2 { font-size: 14px; }
  .section-note, .chart-title-row > span, .data-source-note { font-size: 9px; }
  .metric-card { min-height: 94px; padding: 12px; gap: 7px; }
  .metric-label, .metric-note { font-size: 9px; line-height: 1.45; }
  .metric-value { font-size: clamp(17px, 5vw, 21px); }
  .tile-label { font-size: 10px; }
  .tile-card p, .update-copy span, .update-row > small, .home-task-row small { font-size: 9px; line-height: 1.5; }
  .home-task-row > span, .update-copy strong { font-size: 10px; }
  .chart-title-row { flex-wrap: wrap; }
  .chart-title-row > span { white-space: normal; text-align: right; }
  .chart-title-row strong, .chart-title-row h2 { font-size: 11px; }
  .chart-tick, .chart-axis-label { font-size: 10px; }
  .category-name, .category-row strong { font-size: 10px; }
  .chart-legend { font-size: 10px; }
  .data-form label, .review-form label, .bill-edit-form label, .plan-template-form label { font-size: 10px; }
  .data-form input, .data-form select, .review-form input, .review-form textarea, .search-input-wrap input,
  .plan-template-form input, .plan-template-form select, .bill-edit-form input, .bill-edit-form select { min-height: 40px; font-size: 14px; }
  .primary-button, .secondary-button, .primary-link { min-height: 38px; font-size: 10px; }
  .news-category, .news-meta, .news-footer, .news-card > p { font-size: 9px; }
  .news-title { font-size: 11px; }
  .topic-name, .topic-card p, .movement-copy > p:not(.card-eyebrow) { font-size: 10px; }
  .record-kind, .record-meta, .bill-record-copy .record-meta, .bill-archive-note { font-size: 9px; }
  .bill-record-copy > strong, .bill-record-amount { font-size: 10px; }
  .bill-edit-button, .bill-delete-button { min-height: 34px; font-size: 9px; }
  .owner-record-count, .owner-mini-metrics span, .owner-largest-expense > span, .owner-largest-expense small { font-size: 9px; }
  .owner-mini-metrics strong { font-size: 11px; }
  .season-folder-summary strong { font-size: 11px; }
  .season-folder-summary > span, .season-folder-summary small, .bill-month-heading strong, .bill-month-heading span,
  .bill-month-empty, .bill-owner-folder > summary, .bill-owner-folder > summary span, .bill-source-heading { font-size: 9px; }
  .bill-owner-folder > summary { min-height: 38px; }
  .plan-template-group-heading h3 { font-size: 11px; }
  .plan-template-count, .plan-template-card > p, .plan-template-card-heading strong, .plan-template-delete { font-size: 9px; }
  .employee-delete, .employee-menu, .employee-photo-action { font-size: 9px; }
  .journal-person { font-size: 9px; }
  .prompt-card h3 { font-size: 10px; }
  .mobile-menu .menu-link { font-size: 10px; }
  .page-footer { font-size: 8px; }
}

/* Readable analytics type and meaning-based color accents across every view. */
.metric-coral {
  color: var(--data-coral);
  background: linear-gradient(145deg, rgba(126, 54, 54, .27), rgba(13, 21, 31, .94));
}
.view-kicker, .card-eyebrow { font-size: 9px; }
.section-note, .data-source-note, .metric-label, .metric-note,
.chart-title-row > span, .chart-legend, .category-name, .category-row strong { font-size: 10px; }
.chart-title-row strong { font-size: 12px; }
.chart-title-row h2 { font-size: 14px; }
.chart-tick, .chart-axis-label { font-size: 10px; }
.tile-card p, .home-task-row small, .home-task-summary, .update-copy strong,
.update-copy span, .update-row > small, .home-personal-note, .home-review-count { font-size: 9px; }
.home-task-row > span, .news-title, .employee-identity h3 { font-size: 11px; }
.news-meta, .news-footer, .news-category, .news-card > p, .news-sources,
.record-kind, .record-meta, .bill-record-copy > strong, .bill-record-amount,
.owner-record-count, .owner-mini-metrics span, .owner-largest-expense > span,
.owner-largest-expense small, .season-folder-summary > span, .season-folder-summary small,
.bill-month-heading strong, .bill-month-heading span, .bill-month-empty,
.bill-owner-folder > summary, .bill-owner-folder > summary span, .bill-source-heading,
.employee-identity span, .employee-menu, .employee-stats small, .employee-stats strong,
.employee-progress > span, .employee-enrollment, .folder-heading, .folder-item > span:nth-child(2),
.folder-item small, .review-date span, .review-entry > p, .review-empty,
.assistant-message, .assistant-status, .assistant-welcome p, .assistant-composer input,
.composer-caption, .task-entry input, .task-entry button, .task-list-heading,
.task-empty > span:last-child, .search-card > label, .search-count { font-size: 10px; }
.finance-table { font-size: 10px; }
.finance-table th { font-size: 9px; }
.employee-photo-action, .employee-delete, .bill-edit-button, .bill-delete-button,
.plan-template-count, .plan-template-card > p, .plan-template-delete { font-size: 9px; }
.assistant-title-wrap p, .assistant-date small, .assistant-hint, .assistant-welcome h3 { font-size: 10px; }
.primary-button, .secondary-button, .primary-link, .filter-chip, .period-switch button { font-size: 9px; }
.data-form label, .review-form label, .bill-edit-form label, .plan-template-form label,
.employee-add-form label, .search-card > label, .bill-toolbar label { font-size: 10px; }
.data-form input, .data-form select, .review-form input, .review-form textarea,
.bill-edit-form input, .bill-edit-form select, .plan-template-form input,
.plan-template-form select, .plan-template-form textarea, .employee-add-form input,
.employee-add-form select { min-height: 40px; font-size: 11px; }
.bill-toolbar select { min-height: 36px; font-size: 10px; }

.finance-table td:nth-child(2), .year-card > span:nth-of-type(1) { color: var(--data-blue); }
.finance-table td:nth-child(3), .year-card > span:nth-of-type(2) { color: var(--data-coral); }
.finance-table td:nth-child(4), .year-card > span:nth-of-type(3) { color: var(--data-green); }
.home-personal-value:nth-child(1) strong { color: var(--data-blue); }
.home-personal-value:nth-child(2) strong { color: var(--data-coral); }
.home-personal-value:nth-child(3) strong { color: var(--data-green); }
.review-date strong, .review-date span { color: var(--data-violet); }
.movement-card .hero-glyph, .movement-rings b { color: var(--data-teal); }
.movement-ring { border-color: rgba(73, 216, 194, .2); }
.ring-mid { border-color: rgba(73, 216, 194, .3); }
.ring-inner { border-color: rgba(73, 216, 194, .38); background: radial-gradient(circle, rgba(73, 216, 194, .13), transparent 72%); }
.week-dots i { border-color: rgba(73, 216, 194, .4); background: rgba(73, 216, 194, .08); }
.week-dots i:nth-child(4) { border-color: rgba(73, 216, 194, .75); background: rgba(73, 216, 194, .24); }
.folder-item > span:first-child, .employee-progress-track i { color: var(--data-blue); }
.employee-progress-track i { background: linear-gradient(90deg, var(--data-blue), var(--data-teal)); }

@media (max-width: 620px) {
  .section-note, .data-source-note, .metric-label, .metric-note,
  .chart-title-row > span, .chart-legend, .category-name, .category-row strong { font-size: 10px; }
  .metric-label, .metric-note { line-height: 1.5; }
  .chart-title-row strong { font-size: 12px; }
  .chart-title-row h2 { font-size: 14px; }
  .tile-card p, .home-task-row small, .home-task-summary, .update-copy strong,
  .update-copy span, .update-row > small, .home-personal-note, .home-review-count,
  .news-meta, .news-footer, .news-category, .news-card > p, .news-sources,
  .record-kind, .record-meta, .bill-record-copy > strong, .bill-record-amount,
  .owner-record-count, .owner-mini-metrics span, .owner-largest-expense > span,
  .owner-largest-expense small, .season-folder-summary > span, .season-folder-summary small,
  .bill-month-heading strong, .bill-month-heading span, .bill-month-empty,
  .bill-owner-folder > summary, .bill-owner-folder > summary span, .bill-source-heading,
  .employee-identity span, .employee-menu, .employee-stats small, .employee-stats strong,
  .employee-progress > span, .employee-enrollment, .folder-heading, .folder-item > span:nth-child(2),
  .folder-item small, .review-date span, .review-entry > p, .review-empty,
  .assistant-message, .assistant-status, .assistant-welcome p, .assistant-composer input,
  .composer-caption, .task-entry input, .task-entry button, .task-list-heading,
  .task-empty > span:last-child, .search-card > label, .search-count { font-size: 10px; }
  .finance-table { font-size: 10px; }
  .finance-table th { font-size: 9px; }
  .employee-photo-action, .employee-delete, .bill-edit-button, .bill-delete-button,
  .plan-template-count, .plan-template-card > p, .plan-template-delete { font-size: 9px; }
  .primary-button, .secondary-button, .primary-link, .filter-chip, .period-switch button { font-size: 10px; }
  .data-form input, .data-form select, .review-form input, .review-form textarea,
  .bill-edit-form input, .bill-edit-form select, .plan-template-form input,
  .plan-template-form select, .plan-template-form textarea, .employee-add-form input,
  .employee-add-form select, .bill-toolbar select,
  .assistant-composer input, .task-entry input { min-height: 40px; font-size: 14px; }
  .assistant-composer input, .task-entry input { min-height: 0; }
  .mobile-menu .menu-link { font-size: 11px; }
  .journal-layout { grid-template-columns: minmax(0, 1fr); }
  .journal-list, .journal-entry { min-height: 0; }
  .page-footer { flex-wrap: wrap; justify-content: center; gap: 8px 14px; }
}

@media (max-width: 360px) {
  .section-row { align-items: flex-start; flex-direction: column; gap: 7px; }
  .section-row.compact { align-items: flex-start; }
  .home-personal-summary { grid-template-columns: minmax(0, 1fr); }
  .owner-mini-metrics { grid-template-columns: minmax(0, 1fr); }
  .owner-mini-metrics > div { flex-direction: row; align-items: center; justify-content: space-between; }
}

.home-welcome-row { display: flex; align-items: center; gap: 11px; margin-top: 10px; }
.home-hero .home-welcome-title { margin: 0; color: #f1f8fd; font-size: clamp(18px, 2.2vw, 27px); font-weight: 500; line-height: 1.35; letter-spacing: -.035em; }
.home-date { margin: 10px 0 0; color: #b6c9d8; font-size: 12px; }
.home-hero-note { margin: 7px 0 0; color: #a7b6c5; font-size: 10px; line-height: 1.65; }

.home-hero .welcome-card-content { max-width: 72%; }
.home-welcome-row { align-items: center; }
.home-avatar-picker {
  width: 54px;
  height: 54px;
  position: relative;
  flex: 0 0 54px;
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px solid rgba(116, 210, 223, .44);
  border-radius: 50%;
  color: #e8fbff;
  background: radial-gradient(circle at 32% 24%, #4a8498, #193b4c 68%, #132634);
  box-shadow: 0 0 24px rgba(73, 216, 194, .16), inset 0 1px 0 rgba(255, 255, 255, .2);
  cursor: pointer;
  font-size: 21px;
  font-weight: 600;
}
.home-avatar-picker > img { width: 100%; height: 100%; object-fit: cover; }
.home-avatar-picker > span#home-avatar-initial { line-height: 1; }
.home-avatar-picker input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.home-avatar-edit { position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; padding: 3px 0; color: #f0fbff; background: rgba(4, 14, 22, .72); font-size: 9px; font-weight: 500; text-align: center; pointer-events: none; }
.home-greeting-copy { min-width: 0; }
.home-welcome-title { overflow-wrap: anywhere; }
.home-date { display: block; margin-top: 6px; color: #b6c9d8; font-size: 11px; line-height: 1.5; font-variant-numeric: tabular-nums; }
.home-hero-task-progress { display: inline-flex; margin-top: 6px; padding: 4px 8px; border: 1px solid rgba(73, 216, 194, .17); border-radius: 99px; color: #a8e8dc; background: rgba(73, 216, 194, .07); font-size: 9px; line-height: 1.3; font-variant-numeric: tabular-nums; }
.home-weather-row { max-width: 420px; display: flex; align-items: center; gap: 10px; margin-top: 15px; padding: 9px 11px; border: 1px solid rgba(151, 192, 215, .16); border-radius: 13px; background: rgba(4, 15, 23, .3); }
.home-weather-icon { width: 28px; flex: 0 0 28px; color: var(--data-amber); font-size: 22px; text-align: center; }
.home-weather-copy { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 2px; }
.home-weather-copy strong { color: #eaf4fb; font-size: 12px; font-weight: 500; }
.home-weather-copy small, .home-weather-source { color: #a0afbd; font-size: 9px; line-height: 1.4; }
.home-weather-source { color: #82c9ed; text-decoration: underline; text-underline-offset: 2px; }
.home-weather-button { min-height: 34px; flex: 0 0 auto; padding: 0 10px; border: 1px solid rgba(73, 216, 194, .23); border-radius: 9px; color: #d9fbf4; background: rgba(73, 216, 194, .1); font-size: 10px; cursor: pointer; }
.home-weather-button:disabled { opacity: .65; cursor: wait; }
.home-profile-status { min-height: 0; margin: 5px 0 0; color: #9caebe; font-size: 9px; line-height: 1.4; }
.home-profile-status:empty { display: none; }
.home-hero .welcome-visual { pointer-events: none; }
.home-company-card .metric-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 13px 0; }
.home-company-card .metric-card { min-height: 88px; padding: 12px; }
.home-personal-card { padding: 16px; }
@media (max-width: 1160px) {
  .home-company-card .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.home-review-preview { grid-template-columns: minmax(130px, .45fr) minmax(0, 1fr) auto; }
.home-review-task-summary { grid-column: 1 / -1; margin: 0; padding: 10px 12px; border: 1px solid rgba(73, 216, 194, .15); border-radius: 10px; color: #bbd8d4; background: rgba(73, 216, 194, .045); font-size: 10px; line-height: 1.55; }
.home-review-preview > .home-review-empty { grid-column: 1 / -1; }
.review-entry { grid-template-columns: 72px minmax(0, 1fr); }
.review-entry-content { min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.review-manual-entry { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 10px; }
.review-manual-entry > p { min-width: 0; margin: 1px 0; color: #d1dce7; font-size: 11px; line-height: 1.75; white-space: pre-wrap; overflow-wrap: anywhere; }
.review-task-summary { padding: 10px 12px; border: 1px solid rgba(73, 216, 194, .16); border-radius: 11px; background: rgba(73, 216, 194, .045); }
.review-task-summary-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.review-task-summary-heading strong { color: #9ce5d8; font-size: 10px; font-weight: 600; }
.review-task-summary-heading span { color: #c5d7df; font-size: 10px; line-height: 1.5; text-align: right; }
.review-task-summary-detail { margin: 7px 0 0; color: #a6b6c2; font-size: 10px; line-height: 1.65; overflow-wrap: anywhere; }
@media (max-width: 880px) {
  .home-hero .welcome-card-content { max-width: 82%; }
}
@media (max-width: 620px) {
  .home-hero { min-height: 205px; }
  .home-hero .welcome-card-content { max-width: 100%; }
  .home-hero .welcome-visual { right: -13%; opacity: .42; transform: translateY(-50%) scale(.74); }
  .home-avatar-picker { width: 46px; height: 46px; flex-basis: 46px; font-size: 18px; }
  .home-welcome-row { max-width: 100%; }
  .home-weather-row { max-width: 100%; gap: 7px; padding: 8px; }
  .home-weather-icon { width: 24px; flex-basis: 24px; font-size: 19px; }
  .home-weather-copy strong { font-size: 11px; }
  .home-weather-copy small, .home-weather-source { font-size: 9px; }
  .home-weather-button { min-height: 38px; padding-inline: 8px; }
  .home-company-card .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-review-preview { grid-template-columns: minmax(0, 1fr) auto; }
  .home-review-task-summary { grid-column: 1 / -1; }
  .review-entry { grid-template-columns: 52px minmax(0, 1fr); gap: 9px; }
  .review-date { padding-right: 7px; }
  .review-task-summary-heading { flex-direction: column; gap: 4px; }
  .review-task-summary-heading span { text-align: left; }
}
@media (max-width: 360px) {
  .home-hero { padding-inline: 14px; }
  .home-avatar-picker { width: 42px; height: 42px; flex-basis: 42px; }
  .home-welcome-row { gap: 8px; }
  .home-welcome-title { font-size: 17px; }
  .home-weather-row { flex-wrap: wrap; }
  .home-weather-copy { flex-basis: calc(100% - 40px); }
  .home-weather-button { margin-left: 31px; }
  .review-entry { grid-template-columns: 1fr; }
  .review-date { flex-direction: row; align-items: baseline; gap: 8px; padding: 0 0 6px; border: 0; }
  .review-date strong { font-size: 16px; }
}
