/*
 * EmlogStudio light-mode foundation
 *
 * This is deliberately a layout and type system, not a collection of colour
 * substitutions.  It sits after day-mode.css and gives every view the same
 * paper surface, readable editorial hierarchy and spacing rhythm.
 */

html[data-theme="light"] {
  color-scheme: light;
  --day-page: #f3f7f7;
  --day-paper: #ffffff;
  --day-raised: #fcfefe;
  --day-soft: #eef5f5;
  --day-soft-blue: #eaf3f7;
  --day-soft-mint: #eaf6f2;
  --day-line: #d9e5e5;
  --day-line-soft: #e7eeee;
  --day-ink: #193945;
  --day-body: #34535e;
  --day-muted: #647d86;
  --day-faint: #82979e;
  --day-accent: #087a70;
  --day-accent-strong: #075f59;
  --day-blue: #216f9e;
  --day-gold: #a66a17;
  --day-danger: #be5554;
  --day-shadow-xs: 0 2px 5px rgba(25, 74, 84, .035);
  --day-shadow-sm: 0 7px 18px rgba(25, 74, 84, .065);
  --day-shadow-md: 0 14px 34px rgba(25, 74, 84, .09);
  --day-radius-sm: 10px;
  --day-radius-md: 14px;
  --day-radius-lg: 18px;
  --day-space-1: 4px;
  --day-space-2: 8px;
  --day-space-3: 12px;
  --day-space-4: 16px;
  --day-space-5: 24px;
  --day-space-6: 32px;
  --day-space-7: 48px;
  --bg: var(--day-page);
  --panel: var(--day-paper);
  --panel-strong: var(--day-paper);
  --panel-soft: var(--day-soft);
  --line: var(--day-line);
  --line-strong: #cbdcdd;
  --text: var(--day-ink);
  --muted: var(--day-muted);
  --subtle: var(--day-faint);
  --green: var(--day-accent);
  --green-bright: #119687;
  --green-dark: var(--day-soft-mint);
  --blue: var(--day-blue);
  --amber: var(--day-gold);
  --red: var(--day-danger);
  --accent-rgb: 8, 122, 112;
  --shadow: var(--day-shadow-md);
  --font-xs: 12px;
  --font-sm: 13px;
  --font-md: 15px;
}

html[data-theme="light"],
html[data-theme="light"] body {
  min-height: 100%;
  background: var(--day-page);
}

html[data-theme="light"] body {
  color: var(--day-body);
  font-size: var(--font-md);
  line-height: 1.62;
  letter-spacing: .005em;
  background:
    radial-gradient(52rem 28rem at 100% -12rem, rgba(111, 183, 211, .15), transparent 62%),
    radial-gradient(42rem 26rem at -14rem 110%, rgba(75, 177, 150, .10), transparent 64%),
    linear-gradient(135deg, #f8fbfb 0%, var(--day-page) 52%, #eff6f6 100%);
}

html[data-theme="light"] :is(button, input, textarea, select) {
  font-size: inherit;
}

html[data-theme="light"] :is(h1, h2, h3, h4, h5, h6) {
  color: var(--day-ink);
  letter-spacing: .005em;
}

html[data-theme="light"] :is(p, li, dd, td, th, label, input, textarea, select) {
  color: var(--day-body);
}

html[data-theme="light"] :is(small, time, .muted, .meta, .meta-text) {
  color: var(--day-muted);
}

html[data-theme="light"] ::selection {
  color: #123640;
  background: rgba(69, 170, 160, .22);
}

html[data-theme="light"] :is(a, button, input, textarea, select):focus-visible {
  outline: 3px solid rgba(33, 111, 158, .23);
  outline-offset: 2px;
}

html[data-theme="light"] .skip-link:focus {
  color: #fff;
  background: var(--day-accent-strong);
}

/* App frame ------------------------------------------------------------------------- */
html[data-theme="light"] .app-shell {
  gap: 20px;
}

html[data-theme="light"] .glass {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(248, 252, 252, .92) 65%, rgba(236, 246, 246, .94));
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 rgba(255, 255, 255, .96);
}

html[data-theme="light"] .sidebar {
  padding: 22px 14px 16px;
  background:
    radial-gradient(16rem 16rem at -30% 23%, rgba(66, 167, 153, .11), transparent 66%),
    linear-gradient(165deg, #ffffff, #f5faf9 78%, #eff7f6);
  border-radius: 22px;
}

html[data-theme="light"] .sidebar::after {
  opacity: .6;
  background: radial-gradient(circle, rgba(73, 162, 193, .13), transparent 70%);
}

html[data-theme="light"] .brand {
  gap: 10px;
  min-height: 48px;
  padding: 0 8px 15px;
  color: var(--day-ink);
}

html[data-theme="light"] .brand-mark {
  color: var(--day-accent-strong);
  text-shadow: none;
}

html[data-theme="light"] .brand-name {
  color: var(--day-body);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .04em;
}

html[data-theme="light"] .nav-list {
  gap: 5px;
  margin-top: 19px;
}

html[data-theme="light"] .nav-item {
  min-height: 45px;
  gap: 11px;
  padding-inline: 12px 10px;
  color: #54717b;
  border-radius: 11px;
  font-size: 14px;
}

html[data-theme="light"] .nav-item .nav-icon {
  color: #5c7b84;
}

html[data-theme="light"] .nav-item:hover {
  color: var(--day-accent-strong);
  background: #eff8f6;
  transform: translateX(1px);
}

html[data-theme="light"] .nav-item:hover .nav-icon {
  color: var(--day-accent);
}

html[data-theme="light"] .nav-item.active {
  color: var(--day-accent-strong);
  background: #e6f5f1;
  border-color: rgba(8, 122, 112, .20);
  box-shadow: inset 3px 0 0 var(--day-accent), var(--day-shadow-xs);
}

html[data-theme="light"] .nav-item.active .nav-icon,
html[data-theme="light"] .nav-item.active .nav-arrow {
  color: var(--day-accent);
}

html[data-theme="light"] .nav-text {
  font-size: 13px;
  font-weight: 600;
}

html[data-theme="light"] .workspace-switcher {
  padding: 14px 7px 15px;
  border-color: var(--day-line-soft);
}

html[data-theme="light"] .switcher-label {
  margin-bottom: 8px;
  color: var(--day-faint);
  font-size: 11px;
  letter-spacing: .05em;
}

html[data-theme="light"] .switcher {
  min-height: 39px;
  color: var(--day-body);
  background: rgba(237, 246, 245, .82);
  border-color: rgba(31, 113, 110, .13);
  border-radius: 10px;
}

html[data-theme="light"] .switcher:hover {
  color: var(--day-accent-strong);
  background: #edf8f5;
  border-color: rgba(8, 122, 112, .25);
}

html[data-theme="light"] .profile {
  gap: 9px;
  padding: 15px 5px 4px;
  color: var(--day-body);
  border-radius: 12px;
}

html[data-theme="light"] .profile:hover {
  color: var(--day-accent-strong);
  background: rgba(8, 122, 112, .055);
}

html[data-theme="light"] .avatar {
  color: var(--day-accent-strong);
  background: linear-gradient(145deg, #dff1ec, #e6f2f6);
  border-color: #c4dedb;
}

html[data-theme="light"] .avatar::after {
  border-color: #f5fbfa;
  box-shadow: none;
}

html[data-theme="light"] .profile-name {
  color: var(--day-ink);
  font-size: 12px;
  font-weight: 650;
}

html[data-theme="light"] .profile-role {
  color: var(--day-muted);
  font-size: 11px;
}

html[data-theme="light"] .workspace {
  padding-top: 5px;
}

html[data-theme="light"] .topbar {
  min-height: 76px;
  gap: 18px;
  padding: 0 3px 14px;
  border-bottom: 1px solid rgba(119, 151, 156, .16);
}

html[data-theme="light"] .page-title h1 {
  margin-bottom: 4px;
  color: var(--day-ink);
  font-size: clamp(22px, 1.45vw, 26px);
  font-weight: 680;
  letter-spacing: .01em;
}

html[data-theme="light"] .page-title p {
  color: var(--day-muted);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .035em;
}

html[data-theme="light"] .search-box input {
  height: 42px;
  color: var(--day-ink);
  background: rgba(255, 255, 255, .80);
  border-color: #d8e5e6;
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .92);
}

html[data-theme="light"] .search-box input:hover {
  border-color: #bdd4d8;
}

html[data-theme="light"] .search-box input:focus {
  background: #fff;
  border-color: rgba(8, 122, 112, .45);
  box-shadow: 0 0 0 3px rgba(8, 122, 112, .10), inset 0 1px 0 #fff;
}

html[data-theme="light"] .search-box input::placeholder {
  color: #82989e;
}

html[data-theme="light"] .search-box .icon,
html[data-theme="light"] .shortcut {
  color: #5b7b85;
}

html[data-theme="light"] .shortcut {
  background: #edf4f5;
  border-color: #dce9ea;
}

html[data-theme="light"] .top-actions {
  gap: 9px;
}

html[data-theme="light"] :is(.icon-button, .mobile-menu, .round-button, .dialog-close) {
  color: #4a6974;
  background: rgba(255, 255, 255, .86);
  border-color: #d6e3e4;
  box-shadow: var(--day-shadow-xs), inset 0 1px 0 #fff;
}

html[data-theme="light"] :is(.icon-button:hover, .mobile-menu:hover, .round-button:hover, .dialog-close:hover) {
  color: var(--day-accent-strong);
  background: #eff8f6;
  border-color: rgba(8, 122, 112, .28);
  box-shadow: var(--day-shadow-sm);
}

html[data-theme="light"] .primary-button {
  min-height: 40px;
  color: #fff;
  background: linear-gradient(135deg, #087f74, #287fae);
  border-color: rgba(5, 101, 94, .4);
  box-shadow: 0 7px 16px rgba(26, 109, 120, .17), inset 0 1px 0 rgba(255, 255, 255, .20);
}

html[data-theme="light"] .primary-button:hover {
  color: #fff;
  background: linear-gradient(135deg, #076e66, #1f709b);
  transform: translateY(-1px);
}

/* Shared surfaces, controls and content rhythm -------------------------------------- */
html[data-theme="light"] :is(.content-panel, .content-card, .post-table, .post-table-wrap, .category-group, .archive-card, .moments-card, .about-card, .friend-card, .comment-form-card, .comment-list, .profile-dashboard, .profile-dashboard-card, .profile-recent-card, .profile-page-card, .login-shell, .error-card) {
  background: var(--day-paper);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 rgba(255, 255, 255, .96);
}

html[data-theme="light"] :is(.content-heading, .panel-heading, .detail-header) {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(.content-heading h2, .content-heading h3, .panel-heading h3, .detail-header h2) {
  color: var(--day-ink);
  font-size: 18px;
  font-weight: 680;
}

html[data-theme="light"] :is(.content-heading p, .panel-heading p, .detail-description, .detail-id) {
  color: var(--day-muted);
  font-size: 13px;
  line-height: 1.65;
}

html[data-theme="light"] :is(.post-table-row, .comment-item, .profile-recent-card li) {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(.post-table-row:hover, .comment-item:hover, .profile-recent-card li:hover) {
  background: linear-gradient(90deg, rgba(236, 248, 246, .85), rgba(240, 247, 250, .66));
}

html[data-theme="light"] :is(.post-title, .post-title a, .comment-author, .detail-title-line h3, .detail-row dd, .ai-card h4) {
  color: var(--day-ink);
}

html[data-theme="light"] :is(.post-title a:hover, .comment-author:hover) {
  color: var(--day-accent-strong);
}

html[data-theme="light"] :is(.post-table-head, .table-metric, .post-table-row time, .article-meta, .article-summary, .comment-meta, .site-footer-copy, .detail-row dt, .ai-card ul) {
  color: var(--day-muted);
}

html[data-theme="light"] :is(.form-field input, .form-field textarea, .field input, .field textarea, .comment-form-card input, .comment-form-card textarea, .dialog input, .dialog textarea, .account-form input, .account-form textarea, .link-apply input) {
  color: var(--day-ink);
  background: #fff;
  border-color: #d3e1e2;
  border-radius: 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95);
}

html[data-theme="light"] :is(.form-field input, .form-field textarea, .field input, .field textarea, .comment-form-card input, .comment-form-card textarea, .dialog input, .dialog textarea, .account-form input, .account-form textarea, .link-apply input):focus {
  border-color: rgba(8, 122, 112, .45);
  box-shadow: 0 0 0 3px rgba(8, 122, 112, .10);
}

html[data-theme="light"] :is(input, textarea)::placeholder {
  color: #8ba0a6;
  opacity: 1;
}

html[data-theme="light"] :is(.detail-button, .pagination a, .pagination span, .pagination button, .category-filter button, .timeline-switch, .profile-dashboard-nav button, .about-actions a, .about-actions button) {
  color: #4c6d78;
  background: #fff;
  border-color: #d7e4e5;
  box-shadow: var(--day-shadow-xs);
}

html[data-theme="light"] :is(.detail-button:hover, .pagination a:hover, .pagination button:hover, .category-filter button:hover, .timeline-switch:hover, .profile-dashboard-nav button:hover, .about-actions a:hover, .about-actions button:hover) {
  color: var(--day-accent-strong);
  background: #eff8f6;
  border-color: rgba(8, 122, 112, .28);
}

html[data-theme="light"] :is(.pagination .current, .pagination > span, .pagination [aria-current="page"], .pagination button.active, .pagination a.active, .category-filter button.active, .timeline-switch.active, .profile-dashboard-nav button.active) {
  color: var(--day-accent-strong);
  background: linear-gradient(135deg, #e1f3ef, #e8f3f7);
  border-color: rgba(8, 122, 112, .27);
  box-shadow: inset 0 1px 0 #fff;
}

html[data-theme="light"] .content-page {
  padding: 20px 0 32px;
}

html[data-theme="light"] .eyebrow {
  margin-bottom: 7px;
  color: var(--day-accent);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .10em;
}

html[data-theme="light"] .page-toolbar-card {
  min-height: 104px;
  gap: var(--day-space-5);
  padding: 21px 24px;
  background:
    radial-gradient(17rem 9rem at 100% 0, rgba(73, 166, 193, .12), transparent 68%),
    linear-gradient(135deg, #fff, #f1f8f8);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] .page-toolbar-card h2 {
  color: var(--day-ink);
  font-size: 24px;
  font-weight: 680;
}

html[data-theme="light"] :is(.page-toolbar-card p, .archive-hero p, .tags-hero > p) {
  color: var(--day-muted);
  font-size: 13px;
  line-height: 1.62;
}

html[data-theme="light"] .page-filter-pills {
  gap: 7px;
}

html[data-theme="light"] :is(.page-filter-pills button, .page-filter-pills a) {
  min-height: 32px;
  padding-inline: 12px;
  color: #496a74;
  background: rgba(255, 255, 255, .82);
  border-color: #d8e5e6;
  font-size: 12px;
  font-weight: 600;
}

html[data-theme="light"] :is(.page-filter-pills button:hover, .page-filter-pills a:hover, .page-filter-pills button.active, .page-filter-pills a.active) {
  color: var(--day-accent-strong);
  background: #eaf6f3;
  border-color: #bcded5;
}

html[data-theme="light"] .post-library {
  margin-top: 16px;
  padding: 10px;
  background: rgba(255, 255, 255, .74);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] .post-table-head {
  min-height: 40px;
  color: var(--day-faint);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
}

html[data-theme="light"] .post-table-row {
  min-height: 86px;
  padding-block: 11px;
}

html[data-theme="light"] .post-table-row.has-post-media {
  min-height: 106px;
}

html[data-theme="light"] .post-cell-main h3 {
  color: var(--day-ink);
  font-size: 15px;
  font-weight: 680;
}

html[data-theme="light"] .post-cell-main p {
  margin-top: 5px;
  color: var(--day-muted);
  font-size: 12px;
}

html[data-theme="light"] :is(.post-index, .table-metric, .post-table-row time) {
  color: var(--day-muted);
  font-size: 12px;
}

html[data-theme="light"] .post-media {
  background: #eaf3f4;
  background-image: linear-gradient(135deg, rgba(8, 122, 112, .10), transparent 48%);
  border-color: #ccdddd;
  box-shadow: 0 7px 16px rgba(25, 74, 84, .10);
}

html[data-theme="light"] .post-media-item {
  background: #e8f0f1;
}

html[data-theme="light"] .post-media::after {
  background: linear-gradient(180deg, transparent 56%, rgba(18, 52, 61, .12));
  border-color: rgba(255, 255, 255, .48);
}

html[data-theme="light"] .post-table-row:hover .post-media {
  background-image: linear-gradient(135deg, rgba(8, 122, 112, .16), transparent 48%);
  border-color: #a7d1c8;
}

html[data-theme="light"] .row-action {
  color: #5a7881;
  background: #fff;
  border-color: #d7e4e5;
}

html[data-theme="light"] .row-action:hover {
  color: var(--day-accent-strong);
  background: #eaf6f3;
  border-color: #bdddd5;
}

html[data-theme="light"] .empty-state {
  padding: 52px 20px;
  color: var(--day-muted);
}

html[data-theme="light"] .empty-state h3 {
  color: var(--day-ink);
  font-size: 16px;
}

html[data-theme="light"] .pagination {
  gap: 7px;
  padding: 18px 0 8px;
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(.pagination button, .pagination a, .pagination span) {
  min-width: 34px;
  height: 34px;
  padding-inline: 10px;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 650;
}

html[data-theme="light"] .pagination em {
  height: 34px;
  color: var(--day-faint);
}

html[data-theme="light"] .category-grid {
  gap: 14px;
}

html[data-theme="light"] .category-card {
  min-height: 184px;
  padding: 18px 18px 40px;
  color: var(--day-body);
  background:
    radial-gradient(ellipse at 8% 0%, var(--category-accent-soft, rgba(8, 122, 112, .12)), transparent 46%),
    radial-gradient(ellipse at 92% 106%, rgba(86, 161, 188, .10), transparent 52%),
    linear-gradient(145deg, #fff, #f1f8f8 78%, #edf6f5);
  border-color: rgba(86, 130, 138, .18);
  box-shadow: 0 9px 22px rgba(24, 71, 82, .075), inset 0 1px 0 rgba(255, 255, 255, .62);
}

@supports (background: color-mix(in srgb, #000 25%, #fff)) {
  html[data-theme="light"] .category-card {
    background:
      radial-gradient(ellipse at 8% 0%, color-mix(in srgb, var(--category-accent, #087a70) 18%, transparent), transparent 48%),
      radial-gradient(ellipse at 92% 106%, color-mix(in srgb, var(--category-accent, #087a70) 10%, transparent), transparent 52%),
      linear-gradient(145deg, #fff, color-mix(in srgb, var(--category-accent, #087a70) 9%, #f8fbfb) 78%, #edf6f5);
  }
}

html[data-theme="light"] .category-card::before {
  background:
    radial-gradient(ellipse at 42% 52%, transparent 0 35%, rgba(61, 117, 132, .10) 35.5% 36.2%, transparent 36.8% 45%, rgba(61, 117, 132, .055) 45.5% 46.1%, transparent 46.7%),
    radial-gradient(ellipse at 66% 44%, transparent 0 25%, var(--category-accent-faint, rgba(8, 122, 112, .12)) 25.5% 26.5%, transparent 27% 39%, rgba(255, 255, 255, .60) 39.5% 40.2%, transparent 40.8%);
}

html[data-theme="light"] .category-card::after {
  background: radial-gradient(ellipse, var(--category-accent-hover, rgba(8, 122, 112, .16)), transparent 68%);
  opacity: .46;
}

html[data-theme="light"] .category-card:hover,
html[data-theme="light"] .category-card:focus-visible {
  background-color: #fff;
  border-color: var(--category-accent-strong-border, rgba(8, 122, 112, .42));
  box-shadow: 0 14px 28px rgba(24, 71, 82, .11), inset 0 1px 0 #fff;
}

html[data-theme="light"] .category-card > .icon {
  margin-top: 15px;
  color: var(--category-accent-ink, var(--day-accent));
}

html[data-theme="light"] .category-number {
  color: #5b7881;
  background: rgba(255, 255, 255, .68);
  border-color: rgba(91, 132, 140, .17);
}

html[data-theme="light"] .category-card h3 {
  color: var(--day-ink);
  font-size: 18px;
  font-weight: 680;
}

html[data-theme="light"] .category-card p {
  color: var(--day-muted);
  font-size: 13px;
  line-height: 1.58;
}

html[data-theme="light"] .category-card footer {
  color: var(--day-muted);
  border-color: rgba(85, 126, 135, .14);
  font-size: 12px;
}

html[data-theme="light"] .category-card footer b {
  color: var(--category-accent-ink, var(--day-accent-strong));
}

html[data-theme="light"] :is(.moment-composer, .moment-item, .moment-aside, .tags-hero, .tags-panel) {
  background: linear-gradient(145deg, #fff, #f4faf9);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] .composer-main h2,
html[data-theme="light"] .moment-aside h3,
html[data-theme="light"] .moment-item header {
  color: var(--day-ink);
}

html[data-theme="light"] .composer-main textarea {
  color: var(--day-body);
  border-color: var(--day-line-soft);
}

html[data-theme="light"] .composer-main footer,
html[data-theme="light"] .moment-item header time,
html[data-theme="light"] .moment-item p,
html[data-theme="light"] .mini-stat-list span,
html[data-theme="light"] .moment-aside p {
  color: var(--day-muted);
}

html[data-theme="light"] .composer-main footer button {
  color: #fff;
  background: linear-gradient(135deg, #087f74, #287fae);
  border-color: #087369;
}

html[data-theme="light"] .moment-item footer button {
  color: #4e6e78;
  background: #f7fbfb;
  border-color: #dae7e7;
  font-size: 12px;
}

html[data-theme="light"] .mini-stat-list div {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] .mini-stat-list strong {
  color: var(--day-ink);
}

html[data-theme="light"] .tag-cloud {
  gap: 9px;
}

html[data-theme="light"] :is(.tag-cloud button, .tag-cloud a, .tag-marquee a) {
  color: #385d69;
  background: rgba(255, 255, 255, .84);
  border-color: #d7e5e6;
  box-shadow: var(--day-shadow-xs);
  font-size: 13px;
}

html[data-theme="light"] :is(.tag-cloud button:hover, .tag-cloud a:hover, .tag-marquee a:hover, .tag-marquee a:focus-visible) {
  color: var(--day-accent-strong);
  background: #eaf6f3;
  border-color: #b9dcd3;
}

html[data-theme="light"] .tag-marquee::before,
html[data-theme="light"] .tag-marquee::after {
  opacity: .72;
}

html[data-theme="light"] .archive-hero {
  background:
    radial-gradient(18rem 12rem at 92% 0, rgba(71, 166, 191, .14), transparent 68%),
    linear-gradient(135deg, #fff, #eef7f7);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] .archive-hero::after {
  border-color: rgba(44, 125, 139, .18);
  box-shadow: 0 -15px 42px rgba(8, 122, 112, .07);
}

html[data-theme="light"] .archive-hero h2,
html[data-theme="light"] .archive-total strong,
html[data-theme="light"] .archive-month > header strong,
html[data-theme="light"] .archive-month h3 {
  color: var(--day-ink);
}

html[data-theme="light"] :is(.archive-total span, .year-switcher span, .archive-month header p, .archive-posts time, .archive-posts b) {
  color: var(--day-muted);
}

html[data-theme="light"] :is(.year-switcher, .archive-stream) {
  background: #fff;
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] :is(.year-switcher button, .year-switcher a) {
  color: #4f707a;
}

html[data-theme="light"] :is(.year-switcher button:hover, .year-switcher a:hover, .year-switcher button.active, .year-switcher a.active) {
  color: var(--day-accent-strong);
  background: #eaf6f3;
  border-color: #c6e1db;
}

html[data-theme="light"] .archive-month {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(.archive-posts button, .archive-posts a) {
  color: var(--day-body);
  border-color: var(--day-line-soft);
  font-size: 13px;
}

html[data-theme="light"] :is(.archive-posts button:hover, .archive-posts a:hover) {
  color: var(--day-accent-strong);
  background: #f1f8f7;
}

html[data-theme="light"] .tag {
  color: #4b6b75;
  background: #f3f8f8;
  border-color: #dbe8e8;
}

html[data-theme="light"] :is(dialog, .dialog, .dialog-surface, .comment-image-dialog, .announcement-detail-dialog, .announcement-link-dialog) {
  color: var(--day-body);
  background:
    radial-gradient(24rem 15rem at 100% 0, rgba(104, 188, 204, .14), transparent 68%),
    #fff;
  border-color: #d1e0e2;
  box-shadow: 0 26px 72px rgba(24, 66, 78, .22), inset 0 1px 0 #fff;
}

html[data-theme="light"] :is(.dialog-head, .announcement-detail-header, .announcement-link-dialog header) {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(dialog, .announcement-detail-dialog, .announcement-link-dialog)::backdrop,
html[data-theme="light"] .dialog-backdrop {
  background: rgba(22, 52, 61, .34);
}

/* Right rail and popovers ------------------------------------------------------------- */
html[data-theme="light"] .detail-panel {
  color: var(--day-body);
  background:
    radial-gradient(16rem 14rem at 112% -6%, rgba(86, 176, 194, .13), transparent 68%),
    linear-gradient(165deg, #fff, #f6fbfa);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
  scrollbar-color: #b8cbce transparent;
}

html[data-theme="light"] .detail-panel::before {
  opacity: .55;
}

html[data-theme="light"] .detail-header h2 .icon,
html[data-theme="light"] .detail-row .icon {
  color: var(--day-accent);
}

html[data-theme="light"] .high-badge {
  color: var(--day-accent-strong);
  background: #e7f5f1;
  border-color: #c8e5dd;
}

html[data-theme="light"] .mini-avatar {
  color: var(--day-accent-strong);
  background: #e2f0ee;
}

html[data-theme="light"] .mini-avatar::after {
  border-color: #fff;
}

html[data-theme="light"] .ai-card {
  background: linear-gradient(145deg, #f5fbfa, #edf5f7);
  border-color: #dbe8e8;
  box-shadow: inset 0 1px 0 #fff;
}

html[data-theme="light"] .suggestion-button {
  color: #456770;
  background: #fff;
  border-color: #d5e3e4;
}

html[data-theme="light"] .suggestion-button:hover {
  color: var(--day-accent-strong);
  background: #edf8f5;
  border-color: #bcded5;
}

html[data-theme="light"] .announcement-popover {
  color: var(--day-body);
  background: #fff;
  border-color: #d3e1e2;
  box-shadow: 0 18px 45px rgba(25, 69, 81, .18);
}

html[data-theme="light"] :is(.announcement-popover > header, .announcement-popover > footer, .announcement-popover-item, .announcement-detail-meta, .announcement-detail-footer) {
  border-color: var(--day-line-soft);
}

html[data-theme="light"] :is(.announcement-popover h2, .announcement-popover-item h3, .announcement-detail-header h2, .announcement-detail-content h2, .announcement-detail-content h3, .announcement-detail-content h4) {
  color: var(--day-ink);
}

html[data-theme="light"] :is(.announcement-popover-count, .announcement-popover-item p, .announcement-popover-item time, .announcement-detail-kicker, .announcement-detail-meta, .announcement-detail-content) {
  color: var(--day-muted);
}

html[data-theme="light"] .announcement-popover-item-open:hover h3 {
  color: var(--day-accent-strong);
}

html[data-theme="light"] .announcement-popover-item-open:hover p {
  color: var(--day-body);
}

html[data-theme="light"] :is(.announcement-detail-content a, .announcement-popover > footer a) {
  color: var(--day-accent-strong);
}

html[data-theme="light"] .announcement-detail-content :is(pre, code) {
  color: #21414d;
  background: #f1f6f6;
}

html[data-theme="light"] .announcement-detail-content :is(th, td) {
  border-color: #d7e4e5;
}

html[data-theme="light"] .announcement-detail-content th {
  color: var(--day-ink);
  background: #eff6f6;
}

/* Generic static pages and personal centre ------------------------------------------ */
html[data-theme="light"] :is(.about-hero, .about-grid article, .site-timeline, .friend-card, .link-apply) {
  background: linear-gradient(145deg, #fff, #f6fbfb);
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] :is(.about-hero h2, .about-grid h3, .site-timeline h3, .friend-card h3, .link-apply h3) {
  color: var(--day-ink);
}

html[data-theme="light"] :is(.about-hero p, .about-grid p, .site-timeline p, .friend-card p, .link-apply label, .account-form > label, .account-form .field-row label) {
  color: var(--day-muted);
}

html[data-theme="light"] .about-monogram {
  color: var(--day-accent-strong);
  background: linear-gradient(145deg, #e5f4ef, #e8f3f8);
  border-color: #c8e2df;
  box-shadow: 10px 14px 28px rgba(35, 102, 112, .11), inset 0 1px 0 #fff;
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard {
  --profile-surface: #fff;
  --profile-surface-soft: #f0f7f7;
  --profile-line: #d9e5e5;
  --profile-muted: #637c85;
  --profile-subtle: #81979e;
  color: var(--day-body);
  background: transparent;
}

html[data-theme="light"] body.emstudio-view-profile :is(.profile-dashboard-card, .profile-recent-card, .profile-page-card) {
  background: #fff;
  border-color: var(--day-line);
  box-shadow: var(--day-shadow-sm), inset 0 1px 0 #fff;
}

html[data-theme="light"] body.emstudio-view-profile :is(.profile-dashboard h1, .profile-dashboard h2, .profile-dashboard h3, .profile-dashboard h4, .profile-recent-card h3, .profile-dashboard-content .panel-heading h3) {
  color: var(--day-ink);
}

html[data-theme="light"] body.emstudio-view-profile :is(.profile-dashboard p, .profile-dashboard small, .profile-user-handle, .profile-user-bio, .profile-nav-caption, .profile-activity-meta) {
  color: var(--day-muted);
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard-hero {
  background:
    radial-gradient(24rem 12rem at 100% 0, rgba(78, 173, 192, .13), transparent 66%),
    linear-gradient(135deg, #fff, #f0f8f7);
  border-color: var(--day-line);
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard-stat-grid > article {
  background: linear-gradient(145deg, #fff, #f2f8f8);
  border-color: #dce8e8;
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard-stat-grid > article:hover {
  border-color: #bfddd5;
  box-shadow: var(--day-shadow-sm);
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard-stat-grid strong {
  color: var(--day-ink);
}

html[data-theme="light"] body.emstudio-view-profile .profile-dashboard-stat-grid span:not(.profile-stat-icon) {
  color: var(--day-muted);
}

/* Footer and floating controls -------------------------------------------------------- */
html[data-theme="light"] .site-footer {
  color: var(--day-muted);
  background: transparent;
  border-color: var(--day-line-soft);
  box-shadow: none;
}

html[data-theme="light"] .site-footer a {
  color: #456a75;
}

html[data-theme="light"] .site-footer a:hover {
  color: var(--day-accent-strong);
}

html[data-theme="light"] .feedback-float-nav {
  background: rgba(255, 255, 255, .88);
  border-color: #d6e3e4;
  box-shadow: var(--day-shadow-md), inset 0 1px 0 #fff;
}

html[data-theme="light"] .feedback-float-nav::before {
  background: linear-gradient(180deg, rgba(8, 122, 112, .14), transparent);
}

html[data-theme="light"] .feedback-float-button {
  color: #4b6c76;
  background: #fff;
  border-color: #d8e4e5;
  box-shadow: var(--day-shadow-xs);
}

html[data-theme="light"] .feedback-float-button:hover,
html[data-theme="light"] .feedback-float-button:focus-visible,
html[data-theme="light"] .feedback-float-button[aria-expanded="true"] {
  color: var(--day-accent-strong);
  background: #edf8f5;
  border-color: #b8dcd3;
}

html[data-theme="light"] .feedback-float-button-primary {
  color: #fff;
  background: linear-gradient(135deg, #087f74, #287fae);
  border-color: #087369;
}

/* Responsive rhythm ------------------------------------------------------------------ */
@media (max-width: 1080px) {
  html[data-theme="light"] .app-shell { gap: 14px; }
  html[data-theme="light"] .topbar { gap: 13px; }
}

@media (max-width: 820px) {
  html[data-theme="light"] .workspace { padding-top: 0; }
  html[data-theme="light"] .topbar {
    min-height: 66px;
    padding: 4px 0 12px;
  }
  html[data-theme="light"] .page-title h1 { font-size: 21px; }
  html[data-theme="light"] .page-title p { font-size: 11px; }
  html[data-theme="light"] .search-box input { height: 40px; }
  html[data-theme="light"] .content-heading h2,
  html[data-theme="light"] .content-heading h3,
  html[data-theme="light"] .panel-heading h3 { font-size: 17px; }
}

@media (max-width: 560px) {
  html[data-theme="light"] body { font-size: 14px; line-height: 1.58; }
  html[data-theme="light"] .topbar { gap: 9px; }
  html[data-theme="light"] .page-title h1 { font-size: 20px; }
  html[data-theme="light"] .page-title p { letter-spacing: .015em; }
  html[data-theme="light"] .primary-button { min-height: 38px; }
}

@media (prefers-reduced-motion: reduce) {
  html[data-theme="light"] *,
  html[data-theme="light"] *::before,
  html[data-theme="light"] *::after {
    scroll-behavior: auto;
  }
}
