* {
        box-sizing: border-box;
        margin: 0;
      }
      :root,
      [data-theme="dark"] {
        --bg: #13161c;
        --surface: #1e2128;
        --border: #2e323a;
        --border-h: #3a3f4a;
        --text: #cdd1d8;
        --text2: #8b919c;
        --text3: #5c6270;
        --link: #7fb8ff;
        --accent: #a78bfa;
        --success: #6ee7b7;
        --warn: #fbbf24;
        --danger: #fb7185;
        --pause: #8b919c;
        --shadow: rgba(0, 0, 0, 0.4);
        --lightbox-bg: rgba(0, 0, 0, 0.85);
        --thumb-bg: #10131a;
      }
      [data-theme="light"] {
        --bg: #f5f6f8;
        --surface: #ffffff;
        --border: #d8dce3;
        --border-h: #c4c9d2;
        --text: #1a1d24;
        --text2: #5c6270;
        --text3: #8b919c;
        --link: #2563eb;
        --accent: #7c3aed;
        --success: #059669;
        --warn: #d97706;
        --danger: #e11d48;
        --pause: #8b919c;
        --shadow: rgba(0, 0, 0, 0.1);
        --lightbox-bg: rgba(0, 0, 0, 0.6);
        --thumb-bg: #eef0f4;
      }
      body {
        font:
          14px/1.6 "Inter",
          "Segoe UI Variable",
          "Segoe UI",
          -apple-system,
          sans-serif;
        background: var(--bg);
        color: var(--text);
        -webkit-font-smoothing: antialiased;
      }
      a {
        color: var(--link);
        text-decoration: none;
      }
      a:hover {
        text-decoration: underline;
      }
      .board {
        max-width: 740px;
        margin: 0 auto;
        padding: 16px 12px 32px;
      }
      .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 18px 0 12px;
        border-bottom: 1px solid var(--border);
        margin-bottom: 20px;
      }
      .header h1 {
        font-size: 20px;
        font-weight: 700;
        letter-spacing: -0.02em;
        color: var(--text);
        margin: 0;
      }
      .header .date {
        font-size: 12px;
        color: var(--text2);
        margin-top: 2px;
      }
      .report-notice {
        align-items: flex-start;
        background: var(--surface);
        border: 1px solid var(--border);
        border-left: 3px solid var(--link);
        border-radius: 8px;
        color: var(--text2);
        display: flex;
        font-size: 12px;
        gap: 8px;
        line-height: 1.5;
        margin: 0 0 14px;
        padding: 9px 11px;
      }
      .report-notice-icon {
        color: var(--link);
        flex: 0 0 auto;
      }
      .week-picker {
        position: relative;
        min-width: 252px;
      }
      .week-picker-trigger {
        align-items: center;
        display: flex;
        justify-content: space-between;
        width: 100%;
        padding: 6px 10px;
        border: 1px solid var(--border);
        border-radius: 6px;
        background: var(--surface);
        color: var(--text);
        font:
          13px/1.35 "Inter",
          "Segoe UI Variable",
          "Segoe UI",
          sans-serif;
        cursor: pointer;
        outline: none;
        height: 32px;
        text-align: left;
      }
      .week-picker-trigger:hover {
        border-color: var(--border-h);
      }
      .week-picker-trigger:focus-visible {
        border-color: var(--link);
        box-shadow: 0 0 0 1px var(--link);
      }
      .week-picker-trigger::after {
        border-bottom: 1.5px solid currentColor;
        border-right: 1.5px solid currentColor;
        content: "";
        flex: 0 0 auto;
        height: 6px;
        margin: -3px 2px 0 12px;
        transform: rotate(45deg);
        width: 6px;
      }
      .week-picker-trigger[aria-expanded="true"]::after {
        margin-top: 3px;
        transform: rotate(225deg);
      }
      .week-picker-label {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      .week-picker-menu {
        position: absolute;
        top: calc(100% + 4px);
        right: 0;
        z-index: 100;
        width: min(320px, calc(100vw - 24px));
        min-width: 100%;
        max-height: min(360px, calc(100vh - 80px));
        padding: 4px;
        overflow-y: auto;
        border: 1px solid var(--border);
        border-radius: 6px;
        background: var(--surface);
        box-shadow: 0 12px 32px var(--shadow);
      }
      .week-picker-menu[hidden] {
        display: none;
      }
      .week-option {
        display: block;
        width: 100%;
        padding: 8px 10px;
        border: 0;
        border-radius: 4px;
        background: transparent;
        color: var(--text2);
        font:
          13px/1.35 "Inter",
          "Segoe UI Variable",
          "Segoe UI",
          sans-serif;
        cursor: pointer;
        outline: none;
        text-align: left;
        white-space: nowrap;
      }
      .week-option:hover,
      .week-option.is-active,
      .week-option:focus-visible {
        background: var(--border);
        color: var(--text);
      }
      .week-option[aria-selected="true"] {
        color: var(--link);
        font-weight: 600;
      }
      .week-option[aria-disabled="true"] {
        color: var(--text3);
        cursor: default;
        opacity: 0.7;
      }
      .section {
        margin-bottom: 40px;
      }
      .section-disclosure > summary.section-head {
        cursor: pointer;
        list-style: none;
        padding: 10px 12px;
      }
      .section-disclosure > summary.section-head::-webkit-details-marker {
        display: none;
      }
      .section-disclosure > summary.section-head::after {
        content: "›";
        margin-left: auto;
        color: var(--text2);
        transform: rotate(0deg);
        transition: transform 120ms ease;
      }
      .section-disclosure[open] > summary.section-head::after {
        transform: rotate(90deg);
      }
      .section-disclosure[open] > .card {
        margin-left: 12px;
        margin-right: 12px;
      }
      .section-disclosure:not([open]) > summary.section-head {
        margin-bottom: 0;
      }
      .section-disclosure > summary.section-head:focus-visible {
        border-radius: 2px;
        outline: 2px solid var(--link);
        outline-offset: 4px;
      }
      .section-head {
        font-size: 15px;
        font-weight: 700;
        color: var(--text);
        padding: 0 0 8px;
        margin-bottom: 10px;
        border-bottom: 1px solid var(--border);
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .section-head .emoji {
        font-size: 14px;
      }
      .card {
        background: var(--surface);
        border: 1px solid var(--border);
        border-radius: 10px;
        padding: 12px 14px;
        margin-bottom: 8px;
      }
      .card:hover {
        border-color: var(--border-h);
      }
      .card.paste-target {
        border-color: var(--link);
        box-shadow: 0 0 0 1px var(--link);
      }
      .card.drop-card-target {
        border-color: var(--link);
        background: rgba(127, 184, 255, 0.03);
      }
      .card-head {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 8px;
        flex-wrap: wrap;
      }
      .card-title {
        font-size: 14px;
        font-weight: 600;
        color: var(--text);
      }
      .card-title-note {
        color: var(--text3);
        font-size: 11px;
        font-weight: 400;
        margin-left: 6px;
        white-space: nowrap;
      }
      .card-dev {
        font-size: 11px;
        color: var(--text2);
        opacity: 0.7;
        margin-top: 2px;
        margin-bottom: 2px;
      }
      .dev-jaeyong {
        color: #1a73e8;
        font-weight: 600;
      }
      .card-links {
        display: flex;
        gap: 8px;
        font-size: 12px;
        color: var(--text2);
        flex-shrink: 0;
        flex-wrap: wrap;
        align-items: center;
      }
      .card-links a {
        color: var(--link);
        font-size: 12px;
        cursor: pointer;
      }
      .card-links a.placeholder {
        color: var(--text3);
        border-bottom: 1px dashed var(--text3);
      }
      .card-links .edit-link {
        background: none;
        border: none;
        color: var(--text3);
        font-size: 11px;
        cursor: pointer;
        padding: 0 2px;
        vertical-align: middle;
      }
      .card-links .edit-link:hover {
        color: var(--link);
      }
      .card-links .add-link {
        width: 18px;
        height: 18px;
        border-radius: 50%;
        border: 1px dashed var(--text3);
        background: transparent;
        color: var(--text3);
        font-size: 13px;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        flex-shrink: 0;
        position: relative;
      }
      .card-links .add-link:hover {
        border-color: var(--link);
        color: var(--link);
      }
      .add-menu {
        position: absolute;
        top: 100%;
        right: 0;
        margin-top: 4px;
        background: var(--surface);
        border: 1px solid var(--border-h);
        border-radius: 6px;
        padding: 4px 0;
        z-index: 50;
        min-width: 140px;
        box-shadow: 0 4px 12px var(--shadow);
      }
      .add-menu button {
        display: block;
        width: 100%;
        text-align: left;
        padding: 6px 12px;
        border: none;
        background: none;
        color: var(--text);
        font-size: 12px;
        cursor: pointer;
      }
      .add-menu button:hover {
        background: rgba(127, 184, 255, 0.1);
      }
      .link-edit-overlay {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--lightbox-bg);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 100;
      }
      .link-edit-box {
        background: var(--surface);
        border: 1px solid var(--border-h);
        border-radius: 10px;
        padding: 16px;
        width: 360px;
        max-width: 90vw;
      }
      .link-edit-box h3 {
        font-size: 14px;
        font-weight: 600;
        color: var(--text);
        margin-bottom: 12px;
      }
      .link-edit-box label {
        display: block;
        font-size: 12px;
        color: var(--text2);
        margin-bottom: 4px;
      }
      .link-edit-box input {
        width: 100%;
        padding: 8px 10px;
        border: 1px solid var(--border);
        border-radius: 6px;
        background: var(--bg);
        color: var(--text);
        font-size: 13px;
        margin-bottom: 10px;
        outline: none;
      }
      .link-edit-box input:focus {
        border-color: var(--link);
      }
      .link-edit-actions {
        display: flex;
        gap: 8px;
        justify-content: flex-end;
        margin-top: 4px;
      }
      .link-edit-actions button {
        padding: 6px 14px;
        border-radius: 6px;
        border: 1px solid var(--border);
        background: var(--surface);
        color: var(--text);
        font-size: 12px;
        cursor: pointer;
      }
      .link-edit-actions button.primary {
        background: var(--link);
        color: #fff;
        border-color: var(--link);
      }
      [data-theme="dark"] .link-edit-actions button.primary {
        color: #13161c;
      }
      .link-edit-actions button.danger {
        color: var(--danger);
        border-color: var(--danger);
      }
      .status-line {
        font-size: 13px;
        color: var(--text2);
        margin-top: 4px;
      }
      .status-tag {
        display: inline-block;
        font-size: 10px;
        font-weight: 500;
        letter-spacing: 0.03em;
        padding: 2px 6px;
        border-radius: 3px;
        margin-right: 6px;
        vertical-align: 1px;
        opacity: 0.7;
      }
      .status-tag.progress {
        background: transparent;
        color: var(--text2);
        border: 1px solid var(--border);
      }
      .status-tag.done {
        background: transparent;
        color: var(--text2);
        border: 1px solid var(--border);
      }
      .status-tag.pause {
        background: transparent;
        color: var(--text2);
        border: 1px solid var(--border);
      }
      .status-tag.warn {
        background: transparent;
        color: var(--text2);
        border: 1px solid var(--border);
      }
      .status-tag.kickoff {
        background: transparent;
        color: var(--text2);
        border: 1px solid var(--border);
      }
      .card-body {
        margin-top: 8px;
        font-size: 13px;
        color: var(--text2);
      }
      .card-body ul {
        padding-left: 18px;
        margin: 4px 0 0;
      }
      .card-body li {
        margin-bottom: 3px;
      }
      .card-body strong {
        color: var(--text);
        font-weight: 600;
      }
      .field-row {
        margin-top: 6px;
        font-size: 13px;
        color: var(--text2);
        line-height: 1.5;
        padding: 2px 0;
      }
      .field-row.highlight {
        background: color-mix(in srgb, var(--link) 6%, transparent);
        border-left: 2px solid color-mix(in srgb, var(--link) 40%, transparent);
        padding: 4px 8px;
        border-radius: 0 4px 4px 0;
      }
      .field-row ul {
        margin: 4px 0 0 0;
        padding-left: 16px;
      }
      .field-row li {
        margin-bottom: 2px;
      }
      .field-label {
        color: var(--text2);
        font-weight: 600;
      }
      .card-details {
        margin-top: 8px;
        font-size: 12px;
        color: var(--text3);
        padding-left: 8px;
      }
      .card-details summary {
        cursor: pointer;
        font-weight: 500;
        padding: 2px 0;
        user-select: none;
        list-style: none;
        display: flex;
        align-items: center;
        gap: 4px;
        color: var(--text3);
      }
      .card-details summary::-webkit-details-marker {
        display: none;
      }
      .card-details summary::before {
        content: "▸";
        font-size: 11px;
        transition: transform 0.15s;
      }
      .card-details[open] summary::before {
        transform: rotate(90deg);
      }
      .card-details ul {
        margin: 4px 0 0 0;
        padding-left: 16px;
        line-height: 1.5;
      }
      .card-details li {
        margin-bottom: 3px;
      }
      .card-details a {
        color: var(--link);
        text-decoration: none;
      }
      .card-details a:hover {
        text-decoration: underline;
      }
      .commitment-block {
        margin-top: 8px;
        color: var(--text3);
        font-size: 12px;
      }
      .backlog-card {
        margin-bottom: 12px;
        border-left: 3px solid
          color-mix(in srgb, var(--warn) 50%, transparent);
      }
      .commitments-card {
        border-left: 3px solid
          color-mix(in srgb, var(--accent) 50%, transparent);
      }
      .backlog-card:hover {
        border-left-color: color-mix(
          in srgb,
          var(--warn) 50%,
          transparent
        );
      }
      .commitments-card:hover {
        border-left-color: color-mix(
          in srgb,
          var(--accent) 50%,
          transparent
        );
      }
      .backlog-heading,
      .commitment-heading {
        margin-bottom: 6px;
        color: var(--text2);
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 0.04em;
        text-transform: uppercase;
      }
      .commitment-content {
        padding-left: 8px;
      }
      .latest-card {
        padding: 12px 14px;
      }
      .latest-card .card-head {
        align-items: flex-start;
        flex-wrap: nowrap;
        gap: 12px;
      }
      .latest-card-header-copy {
        min-width: 0;
      }
      .latest-card-header-links {
        align-items: center;
        display: flex;
        flex: 0 0 auto;
        gap: 10px;
      }
      .latest-card .card-title {
        display: inline-block;
        font-size: 14px;
        line-height: 1.4;
      }
      .latest-card .card-dev {
        margin: 2px 0;
        opacity: 1;
      }
      .latest-card-issue {
        align-items: center;
        color: var(--link);
        display: inline-flex;
        flex: 0 0 auto;
        font-size: 12px;
        font-weight: 600;
        gap: 5px;
        min-height: 22px;
        white-space: nowrap;
      }
      .latest-card-flow {
        display: grid;
        grid-template-columns: 96px minmax(0, 1fr);
        margin-top: 12px;
      }
      .latest-card-rail-label,
      .latest-card-rail-content {
        padding-bottom: 12px;
      }
      .latest-card-rail-label {
        color: var(--text2);
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0;
        position: relative;
        text-transform: uppercase;
      }
      .latest-card-rail-label::before {
        background: var(--link);
        border: 2px solid var(--surface);
        border-radius: 50%;
        box-shadow: 0 0 0 1px var(--link);
        content: "";
        height: 8px;
        position: absolute;
        right: 19px;
        top: 3px;
        width: 8px;
      }
      .latest-card-rail-label:first-child::after {
        background: var(--border);
        bottom: -3px;
        content: "";
        position: absolute;
        right: 23px;
        top: 14px;
        width: 1px;
      }
      .latest-card-rail-label.next,
      .latest-card-rail-content.next {
        padding-bottom: 0;
      }
      .latest-card-summary,
      .latest-card-next-copy {
        margin: 0;
      }
      .latest-card-summary {
        color: var(--text);
        font-size: 13px;
        line-height: 1.5;
      }
      .latest-card-summary-only {
        margin-top: 12px;
      }
      .latest-card-next-copy {
        color: var(--text);
        font-size: 13px;
        line-height: 1.5;
      }
      .latest-card-details {
        border: 0;
        border-radius: 0;
        border-top: 1px solid var(--border);
        margin: 8px 0 0;
        overflow: visible;
      }
      .latest-card-details summary {
        align-items: center;
        background: transparent;
        color: var(--text3);
        display: flex;
        font-size: 12px;
        font-weight: 400;
        gap: 6px;
        justify-content: flex-start;
        min-height: 28px;
        padding: 0;
      }
      .latest-card-details summary::after {
        color: var(--text3);
        content: "▾";
        font-size: 11px;
      }
      .latest-card-details[open] summary::after {
        content: "▴";
      }
      .latest-card-detail-count {
        color: var(--text3);
        font-weight: 400;
      }
      .latest-card-detail-list {
        color: var(--text2);
        font-size: 12px;
        line-height: 1.5;
        margin: 0;
        padding: 2px 0 3px 19px;
      }
      .latest-card-detail-list li + li {
        margin-top: 3px;
      }
      .latest-card-artifacts {
        align-items: center;
        border-top: 1px solid var(--border);
        color: var(--text2);
        display: flex;
        font-size: 12px;
        gap: 12px;
        justify-content: flex-start;
        margin-top: 10px;
        padding-top: 8px;
      }
      .latest-card-artifact-links {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: 8px 18px;
        justify-content: flex-start;
      }
      .latest-card-artifact-links a {
        color: var(--link);
        font-size: 12px;
        white-space: nowrap;
      }
      .latest-card > .gallery {
        margin-top: 10px;
        padding: 4px 0;
      }
      .gallery {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        margin-top: 10px;
        position: relative;
        padding: 4px;
      }
      .gallery.drag-over-gallery {
        background: rgba(127, 184, 255, 0.05);
        border: 1px dashed var(--link);
        border-radius: 8px;
      }
      .gallery .thumb {
        width: 160px;
        height: 107px;
        border-radius: 6px;
        overflow: visible;
        position: relative;
        border: 1px solid var(--border);
        background: var(--thumb-bg);
        cursor: default;
        flex-shrink: 0;
      }
      .gallery .thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        border-radius: 6px;
        cursor: pointer;
      }
      .gallery[data-gallery="Agent inspector improvement"] .thumb img {
        object-position: top;
      }
      .gallery[data-gallery^="Create agent page redesign"] .thumb {
        height: 96.26px;
      }
      .lightbox {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--lightbox-bg);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 200;
        cursor: zoom-out;
      }
      .lightbox img {
        max-width: 90vw;
        max-height: 90vh;
        border-radius: 8px;
        box-shadow: 0 8px 40px rgba(0, 0, 0, 0.6);
      }
      .lightbox-nav {
        position: fixed;
        top: 50%;
        width: 44px;
        height: 44px;
        transform: translateY(-50%);
        border: 1px solid rgba(255, 255, 255, 0.24);
        border-radius: 50%;
        background: rgba(20, 20, 20, 0.72);
        color: #fff;
        font-size: 30px;
        line-height: 1;
        cursor: pointer;
        z-index: 1;
      }
      .lightbox-nav:hover,
      .lightbox-nav:focus-visible {
        background: rgba(45, 45, 45, 0.92);
        border-color: rgba(255, 255, 255, 0.5);
        outline: none;
      }
      .lightbox-nav.prev {
        left: 18px;
      }
      .lightbox-nav.next {
        right: 18px;
      }
      .theme-toggle {
        width: 32px;
        height: 32px;
        border-radius: 6px;
        border: 1px solid var(--border);
        background: var(--surface);
        color: var(--text2);
        font-size: 16px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        transition: border-color 0.15s;
      }
      .theme-toggle:hover {
        border-color: var(--border-h);
        color: var(--text);
      }
      .gallery .thumb .remove {
        position: absolute;
        top: -6px;
        right: -6px;
        width: 18px;
        height: 18px;
        border-radius: 50%;
        background: var(--text3);
        color: #fff;
        font-size: 11px;
        line-height: 18px;
        text-align: center;
        cursor: pointer;
        display: none;
        z-index: 2;
      }
      .gallery .thumb:hover .remove {
        display: block;
      }
      .gallery .thumb.dragging {
        opacity: 0.4;
      }
      .gallery .thumb.drag-over {
        border-color: var(--link);
        box-shadow: 0 0 0 2px var(--link);
      }
      .gallery .thumb .resize-handle {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 14px;
        height: 14px;
        cursor: nwse-resize;
        z-index: 2;
        opacity: 0;
      }
      .gallery .thumb:hover .resize-handle {
        opacity: 1;
      }
      .gallery .thumb .resize-handle::after {
        content: "";
        position: absolute;
        bottom: 2px;
        right: 2px;
        width: 8px;
        height: 8px;
        border-right: 2px solid rgba(255, 255, 255, 0.5);
        border-bottom: 2px solid rgba(255, 255, 255, 0.5);
      }
      .gallery .add-btn {
        width: 120px;
        height: 80px;
        border-radius: 6px;
        border: 1px dashed var(--border);
        background: transparent;
        color: var(--text3);
        font-size: 22px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
      }
      .gallery .add-btn:hover {
        border-color: var(--border-h);
        color: var(--text2);
      }
      .gallery .close-gallery {
        position: relative;
        width: 20px;
        height: 20px;
        border-radius: 50%;
        background: var(--text3);
        color: #fff;
        font-size: 12px;
        line-height: 20px;
        text-align: center;
        cursor: pointer;
        display: none;
        border: none;
        padding: 0;
        flex-shrink: 0;
        align-self: center;
      }
      .gallery:hover .close-gallery {
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .gallery .add-btn[hidden],
      .gallery .close-gallery[hidden] {
        display: none;
      }
      details {
        border: 1px solid var(--border);
        border-radius: 8px;
        margin-bottom: 6px;
        overflow: hidden;
      }
      summary {
        padding: 10px 12px;
        font-size: 13px;
        font-weight: 600;
        color: var(--text);
        background: var(--surface);
        cursor: pointer;
        list-style: none;
      }
      summary::-webkit-details-marker {
        display: none;
      }
      .prototype-embed {
        border-color: var(--accent);
      }
      .prototype-embed summary {
        color: var(--accent);
        font-size: 12px;
        padding: 8px 12px;
      }
      .prototype-embed summary::before {
        content: "▶ ";
        font-size: 10px;
      }
      .prototype-embed[open] summary::before {
        content: "▼ ";
      }
      .prototype-frame {
        padding: 0;
        background: var(--surface);
      }
      .prototype-frame iframe {
        width: 100%;
        height: 500px;
        border: none;
        border-top: 1px solid var(--border);
      }
      pre {
        padding: 12px;
        font:
          12px/1.5 "SF Mono",
          Consolas,
          monospace;
        color: var(--text2);
        white-space: pre-wrap;
        background: var(--bg);
        margin: 0;
      }
      .backlog-list {
        font-size: 13px;
        color: var(--text2);
        padding-left: 18px;
      }
      .backlog-list li {
        margin-bottom: 3px;
      }
      .status-tag.completed {
        background: #e6f4ea;
        color: #1e7e34;
      }
      .completed-section .card {
      }
      .completed-section .card:hover {
      }
      .collapsed-notes {
        margin-top: 6px;
      }
      .collapsed-notes summary {
        padding: 4px 8px;
        font-size: 11px;
        font-weight: 500;
        color: var(--text2);
        background: transparent;
        cursor: pointer;
        list-style: none;
      }
      .collapsed-notes summary::-webkit-details-marker {
        display: none;
      }
      .collapsed-notes summary::before {
        content: "▸ ";
      }
      .collapsed-notes[open] summary::before {
        content: "▾ ";
      }
      .collapsed-notes .notes-body {
        padding: 4px 8px;
        font-size: 12px;
        color: var(--text2);
      }
      .collapsed-notes .notes-body ul {
        margin: 0;
        padding-left: 16px;
      }
      .collapsed-notes .notes-body li {
        margin-bottom: 2px;
      }
      .video-link {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: 12px;
        margin-top: 4px;
      }
      .video-link::before {
        content: "🎬";
      }
      .resource-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 6px;
      }
      .resource-chips a {
        font-size: 11px;
        color: var(--link);
        text-decoration: none;
      }
      .resource-chips a:hover {
        text-decoration: underline;
      }
      .resource-chips a::before {
        content: "→ ";
        opacity: 0.5;
      }
      .hover-tip {
        position: relative;
        cursor: help;
        border-bottom: 1px dashed var(--link);
        color: var(--link);
        font-size: 12px;
      }
      .hover-tip .hover-tip-text {
        visibility: hidden;
        opacity: 0;
        position: absolute;
        bottom: 120%;
        left: 0;
        min-width: 280px;
        max-width: 360px;
        background: var(--bg);
        border: 1px solid var(--border);
        padding: 8px 10px;
        border-radius: 6px;
        font-size: 12px;
        color: var(--text2);
        line-height: 1.4;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        z-index: 100;
        transition: opacity 0.15s;
        white-space: normal;
      }
      .hover-tip:hover .hover-tip-text {
        visibility: visible;
        opacity: 1;
      }
      .hover-tip .hover-tip-text a {
        color: var(--link);
        text-decoration: none;
      }
      .hover-tip .hover-tip-text a:hover {
        text-decoration: underline;
      }

      #export-btn,
      .report-error button {
        height: 32px;
        padding: 0 12px;
        border-radius: 6px;
        border: 1px solid var(--border);
        background: var(--surface);
        color: var(--text2);
        font-size: 12px;
        cursor: pointer;
        white-space: nowrap;
      }
      .report-error {
        margin-top: 64px;
        padding: 24px;
        border: 1px solid var(--danger);
        border-radius: 10px;
        background: var(--surface);
      }
      .report-error h1 {
        margin-bottom: 8px;
        font-size: 20px;
      }
      .report-error p {
        margin-bottom: 16px;
        color: var(--text2);
      }
      .gallery:focus-visible {
        border-radius: 8px;
        outline: 2px solid var(--link);
        outline-offset: 2px;
      }
      .gallery-save-status {
        align-self: center;
        color: var(--success);
        font-size: 11px;
      }
      .gallery-save-status.error {
        color: var(--danger);
      }
      /* Floating anchor nav */
      .anchor-nav {
        position: fixed;
        left: max(8px, calc((100vw - 740px) / 2 - 160px));
        top: 120px;
        display: flex;
        flex-direction: column;
        gap: 2px;
        z-index: 50;
      }
      .anchor-nav a {
        font-size: 11px;
        color: var(--text2);
        text-decoration: none;
        padding: 5px 10px;
        border-radius: 4px;
        border-left: 2px solid transparent;
        transition: all 0.15s;
        max-width: 150px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      .anchor-nav a:hover {
        color: var(--text);
        background: var(--surface);
        text-decoration: none;
      }
      .anchor-nav a.active {
        color: var(--link);
        border-left-color: var(--link);
        text-shadow: 0 0 0.5px currentColor;
      }
      @media (min-width: 821px) and (max-width: 1080px) {
        .board {
          max-width: none;
          margin-left: 168px;
          margin-right: 12px;
        }
        .anchor-nav {
          left: 12px;
        }
      }
      @media (max-width: 820px) {
        .anchor-nav {
          display: none;
        }
      }
      @media (max-width: 480px) {
        .header {
          align-items: stretch;
          flex-direction: column;
          gap: 12px;
        }
        .header > div {
          width: 100%;
        }
        .week-picker {
          min-width: 0;
          flex: 1;
        }
        .week-picker-menu {
          right: auto;
          left: 0;
        }
        .latest-card {
          padding: 16px;
        }
        .latest-card-flow {
          grid-template-columns: 96px minmax(0, 1fr);
        }
        .latest-card-artifacts {
          align-items: flex-start;
          flex-direction: column;
        }
        .latest-card-artifact-links {
          justify-content: flex-start;
        }
      }
    