
    :root {
      color-scheme: dark;
      --void: #050713;
      --deep: #090d22;
      --ink: #111936;
      --glass: rgba(18, 25, 58, 0.58);
      --glass-strong: rgba(26, 36, 78, 0.72);
      --stroke: rgba(171, 201, 255, 0.18);
      --stroke-bright: rgba(143, 225, 255, 0.42);
      --text: #eef6ff;
      --muted: #9fb0d8;
      --faint: #64729b;
      --cyan: #62e7ff;
      --teal: #46ffd0;
      --violet: #9d7cff;
      --purple: #c65cff;
      --magenta: #ff5fd2;
      --amber: #ffd36a;
      --green: #7bffb3;
      --danger: #ff7aa5;
      --shadow: 0 24px 80px rgba(0, 0, 0, 0.46);
      --glow-cyan: 0 0 22px rgba(98, 231, 255, 0.35), 0 0 52px rgba(98, 231, 255, 0.12);
      --glow-violet: 0 0 28px rgba(157, 124, 255, 0.33), 0 0 74px rgba(198, 92, 255, 0.16);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 16px;
      --radius-sm: 12px;
      --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      --display: "Space Grotesk", Inter, ui-sans-serif, system-ui, sans-serif;
    }

    * { box-sizing: border-box; }

    html, body { min-height: 100%; }

    body {
      margin: 0;
      overflow-x: hidden;
      font-family: var(--font);
      color: var(--text);
      background:
        radial-gradient(circle at 12% 16%, rgba(98, 231, 255, 0.16) 0 11%, transparent 24%),
        radial-gradient(circle at 78% 6%, rgba(255, 95, 210, 0.20) 0 9%, transparent 25%),
        radial-gradient(circle at 55% 70%, rgba(157, 124, 255, 0.18) 0 15%, transparent 34%),
        linear-gradient(135deg, #040512 0%, #0b1028 38%, #130b2b 72%, #050713 100%);
    }

    body::before,
    body::after {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: -2;
    }

    body::before {
      background-image:
        radial-gradient(circle, rgba(255,255,255,0.95) 0 1px, transparent 1.8px),
        radial-gradient(circle, rgba(126,231,255,0.65) 0 1px, transparent 1.9px),
        radial-gradient(circle, rgba(255,122,218,0.55) 0 1.2px, transparent 2.1px),
        radial-gradient(circle, rgba(255,255,255,0.38) 0 0.9px, transparent 1.7px);
      background-size: 190px 190px, 260px 260px, 330px 330px, 120px 120px;
      background-position: 20px 40px, 110px 10px, 35px 130px, 90px 70px;
      opacity: 0.72;
      animation: starTwinkle 7s ease-in-out infinite alternate;
    }

    body::after {
      z-index: -1;
      background:
        radial-gradient(ellipse at 24% 88%, rgba(70, 255, 208, 0.13), transparent 32%),
        radial-gradient(ellipse at 80% 50%, rgba(198, 92, 255, 0.15), transparent 35%),
        linear-gradient(110deg, transparent 0 18%, rgba(98, 231, 255, 0.08) 32%, rgba(255, 95, 210, 0.10) 48%, transparent 66% 100%);
      filter: blur(1px);
      mix-blend-mode: screen;
      animation: nebulaDrift 24s ease-in-out infinite alternate;
    }

    @keyframes starTwinkle {
      0% { opacity: 0.42; transform: translate3d(0, 0, 0) scale(1); }
      55% { opacity: 0.78; }
      100% { opacity: 0.58; transform: translate3d(-18px, 9px, 0) scale(1.015); }
    }

    @keyframes nebulaDrift {
      from { transform: translate3d(-1.2%, -0.8%, 0) rotate(-1deg) scale(1.02); opacity: 0.78; }
      to { transform: translate3d(1.6%, 1.1%, 0) rotate(1.5deg) scale(1.06); opacity: 0.98; }
    }

    @keyframes glowPulse {
      0%, 100% { box-shadow: 0 0 0 1px rgba(98, 231, 255, 0.18), 0 0 26px rgba(98, 231, 255, 0.14); }
      50% { box-shadow: 0 0 0 1px rgba(98, 231, 255, 0.44), 0 0 42px rgba(198, 92, 255, 0.24); }
    }

    @keyframes auroraSlide {
      0% { transform: translateX(-55%) skewX(-13deg); opacity: 0.25; }
      48% { opacity: 0.62; }
      100% { transform: translateX(115%) skewX(-13deg); opacity: 0.22; }
    }

    .app-shell {
      min-height: 100vh;
      padding: 24px 24px 112px;
      position: relative;
    }

    .app-shell::before {
      content: "";
      position: fixed;
      left: 7vw;
      right: 7vw;
      top: -170px;
      height: 310px;
      border-radius: 999px;
      background: linear-gradient(90deg, transparent, rgba(98, 231, 255, 0.18), rgba(255, 95, 210, 0.22), rgba(70, 255, 208, 0.16), transparent);
      filter: blur(32px);
      transform: rotate(-4deg);
      pointer-events: none;
    }

    .topbar {
      position: sticky;
      top: 16px;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 16px 18px;
      border: 1px solid var(--stroke);
      border-radius: var(--radius-xl);
      background: linear-gradient(135deg, rgba(14, 20, 48, 0.78), rgba(21, 25, 60, 0.52));
      box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,0.08);
      backdrop-filter: blur(22px) saturate(135%);
      overflow: hidden;
    }

    .topbar::after {
      content: "";
      position: absolute;
      inset: 0;
      width: 42%;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
      animation: auroraSlide 9s ease-in-out infinite;
      pointer-events: none;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 14px;
      min-width: 250px;
      position: relative;
      z-index: 1;
    }

    .brand-mark {
      width: 48px;
      height: 48px;
      border-radius: 17px;
      display: grid;
      place-items: center;
      color: white;
      font-size: 25px;
      background:
        radial-gradient(circle at 35% 26%, #fff 0 6%, transparent 7%),
        radial-gradient(circle at 58% 62%, rgba(98,231,255,0.95), rgba(157,124,255,0.72) 35%, rgba(255,95,210,0.62) 72%, rgba(16,22,52,0.9));
      box-shadow: var(--glow-violet), inset 0 0 22px rgba(255,255,255,0.10);
    }

    .brand h1 {
      margin: 0;
      font-family: var(--display);
      font-size: clamp(1.35rem, 2vw, 2rem);
      letter-spacing: -0.04em;
      line-height: 1;
    }

    .brand p {
      margin: 4px 0 0;
      color: var(--muted);
      font-size: 0.82rem;
    }

    .top-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      position: relative;
      z-index: 1;
    }

    .user-chip,
    .icon-button,
    .signout {
      border: 1px solid rgba(171, 201, 255, 0.18);
      background: rgba(255,255,255,0.07);
      color: var(--text);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
      backdrop-filter: blur(12px);
    }

    .user-chip {
      display: flex;
      align-items: center;
      gap: 9px;
      border-radius: 999px;
      padding: 8px 12px 8px 8px;
      font-weight: 700;
    }

    .avatar {
      width: 30px;
      height: 30px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      background: linear-gradient(135deg, var(--cyan), var(--purple));
      color: #050713;
      box-shadow: 0 0 18px rgba(98, 231, 255, 0.42);
      font-size: 0.8rem;
    }

    .icon-button,
    .signout {
      height: 42px;
      border-radius: 999px;
      display: inline-grid;
      place-items: center;
      font-weight: 700;
    }

    .icon-button { width: 42px; font-size: 1.1rem; }
    .signout { padding: 0 15px; font-size: 0.88rem; }

    .board-header {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 20px;
      margin: 28px 2px 18px;
    }

    .board-title h2 {
      margin: 0;
      font-family: var(--display);
      font-size: clamp(2rem, 4vw, 4.2rem);
      line-height: 0.92;
      letter-spacing: -0.075em;
      text-shadow: 0 0 35px rgba(98, 231, 255, 0.28);
    }

    .board-title p {
      max-width: 760px;
      margin: 12px 0 0;
      color: var(--muted);
      line-height: 1.55;
    }

    .status-ribbon {
      flex: none;
      min-width: 260px;
      border: 1px solid rgba(98, 231, 255, 0.28);
      border-radius: 999px;
      padding: 12px 16px;
      color: #dffbff;
      background: linear-gradient(90deg, rgba(98, 231, 255, 0.12), rgba(198, 92, 255, 0.12));
      box-shadow: var(--glow-cyan);
      font-size: 0.9rem;
      text-align: center;
    }

    .board-scroll {
      overflow-x: auto;
      overflow-y: visible;
      padding: 5px 5px 24px;
      scrollbar-color: rgba(98,231,255,0.42) rgba(255,255,255,0.06);
      scrollbar-width: thin;
    }

    .board-scroll::-webkit-scrollbar { height: 12px; }
    .board-scroll::-webkit-scrollbar-track { background: rgba(255,255,255,0.05); border-radius: 999px; }
    .board-scroll::-webkit-scrollbar-thumb {
      background: linear-gradient(90deg, var(--cyan), var(--purple));
      border-radius: 999px;
      border: 3px solid rgba(6, 9, 24, 0.88);
    }

    .board {
      display: grid;
      grid-template-columns: repeat(5, minmax(280px, 1fr));
      grid-template-rows: auto auto;
      gap: 18px;
      min-width: 1500px;
      align-items: start;
    }

    .board > .column { grid-row: 1; }
    .board > .column:nth-of-type(1) { grid-column: 1; }
    .board > .column:nth-of-type(2) { grid-column: 2; }
    .board > .column:nth-of-type(3) { grid-column: 3; }
    .board > .column:nth-of-type(4) { grid-column: 4; }
    .board > .column:nth-of-type(5) { grid-column: 5; }

    .column {
      position: relative;
      border: 1px solid var(--stroke);
      border-radius: var(--radius-xl);
      background: linear-gradient(160deg, rgba(17, 26, 61, 0.70), rgba(11, 15, 36, 0.48));
      box-shadow: 0 18px 54px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.08);
      backdrop-filter: blur(20px) saturate(140%);
      padding: 15px;
      overflow: hidden;
    }

    .column::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 24% 0%, rgba(98,231,255,0.12), transparent 36%),
        radial-gradient(circle at 100% 22%, rgba(255,95,210,0.10), transparent 38%);
      pointer-events: none;
    }

    .column.my-day {
      border-color: rgba(255, 211, 106, 0.40);
      box-shadow: 0 20px 80px rgba(255, 211, 106, 0.10), 0 0 0 1px rgba(255, 211, 106, 0.08), inset 0 1px 0 rgba(255,255,255,0.10);
    }

    .column.my-day::after {
      content: "";
      position: absolute;
      inset: 9px;
      border: 1.5px dashed rgba(255, 211, 106, 0.42);
      border-radius: 23px;
      pointer-events: none;
      animation: glowPulse 3.8s ease-in-out infinite;
    }

    .column-header {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 3px 3px 13px;
      border-bottom: 1px solid rgba(171, 201, 255, 0.10);
      margin-bottom: 12px;
    }

    .column-title {
      display: flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
    }

    .column-icon {
      width: 34px;
      height: 34px;
      flex: none;
      display: grid;
      place-items: center;
      border-radius: 13px;
      background: rgba(255,255,255,0.08);
      border: 1px solid rgba(255,255,255,0.10);
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.09);
    }

    .column.my-day .column-icon {
      background: radial-gradient(circle at 30% 22%, #fff3b7, var(--amber) 38%, rgba(255, 125, 79, 0.88) 100%);
      color: #260f00;
      box-shadow: 0 0 24px rgba(255, 211, 106, 0.35);
    }

    .column h3 {
      margin: 0;
      font-family: var(--display);
      font-size: 1.08rem;
      letter-spacing: -0.02em;
    }

    .column small {
      color: var(--muted);
      display: block;
      margin-top: 2px;
      font-size: 0.75rem;
    }

    .count-pill {
      border: 1px solid rgba(255,255,255,0.11);
      border-radius: 999px;
      color: #cde8ff;
      background: rgba(255,255,255,0.07);
      padding: 5px 9px;
      font-size: 0.76rem;
      font-weight: 800;
    }

    .drop-hint {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      gap: 8px;
      margin: 0 2px 12px;
      border: 1px dashed rgba(255, 211, 106, 0.48);
      border-radius: 15px;
      padding: 10px 11px;
      color: #fff0bd;
      background: linear-gradient(90deg, rgba(255, 211, 106, 0.12), rgba(255, 95, 210, 0.08));
      font-size: 0.78rem;
      box-shadow: inset 0 0 24px rgba(255, 211, 106, 0.06);
    }

    .cards {
      position: relative;
      z-index: 1;
      display: grid;
      gap: 11px;
    }

    .card {
      position: relative;
      display: grid;
      grid-template-columns: auto 1fr auto;
      gap: 10px;
      border: 1px solid rgba(171, 201, 255, 0.14);
      border-radius: var(--radius-lg);
      padding: 12px 10px 12px 12px;
      min-height: 86px;
      background:
        linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035)),
        rgba(7, 11, 28, 0.54);
      box-shadow: 0 10px 28px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.06);
      transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
    }

    .card:hover {
      transform: translateY(-3px);
      border-color: rgba(98, 231, 255, 0.36);
      box-shadow: 0 16px 40px rgba(0,0,0,0.36), var(--glow-cyan);
      background:
        linear-gradient(180deg, rgba(98,231,255,0.10), rgba(255,255,255,0.035)),
        rgba(8, 13, 32, 0.68);
    }

    .card.selected {
      border-color: rgba(98, 231, 255, 0.82);
      background:
        radial-gradient(circle at 12% 8%, rgba(98,231,255,0.22), transparent 36%),
        linear-gradient(180deg, rgba(157,124,255,0.14), rgba(255,255,255,0.045)),
        rgba(8, 13, 33, 0.78);
      box-shadow: 0 18px 48px rgba(0,0,0,0.40), 0 0 0 1px rgba(98, 231, 255, 0.28), 0 0 34px rgba(98, 231, 255, 0.30), 0 0 72px rgba(198, 92, 255, 0.12);
    }

    .card.completed { opacity: 0.73; }

    .checkbox {
      width: 21px;
      height: 21px;
      margin-top: 2px;
      border: 2px solid rgba(159, 176, 216, 0.74);
      border-radius: 8px;
      display: grid;
      place-items: center;
      color: #06101a;
      font-size: 0.82rem;
      font-weight: 900;
      flex: none;
      background: rgba(255,255,255,0.04);
    }

    .card.completed .checkbox {
      border-color: rgba(123, 255, 179, 0.95);
      background: linear-gradient(135deg, var(--green), var(--teal));
      box-shadow: 0 0 18px rgba(70,255,208,0.32);
    }

    .card-main { min-width: 0; }

    .card-title {
      margin: 0;
      font-weight: 750;
      line-height: 1.28;
      letter-spacing: -0.015em;
    }

    .card.completed .card-title {
      text-decoration: line-through;
      text-decoration-color: rgba(159, 176, 216, 0.75);
      color: var(--muted);
    }

    .card-meta {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 6px;
      margin-top: 10px;
    }

    .chip {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      border: 1px solid rgba(255,255,255,0.11);
      border-radius: 999px;
      padding: 4px 8px;
      color: #dbe8ff;
      background: rgba(255,255,255,0.07);
      font-size: 0.70rem;
      font-weight: 750;
      white-space: nowrap;
    }

    .chip.due { color: #dffbff; border-color: rgba(98,231,255,0.22); background: rgba(98,231,255,0.10); }
    .chip.today { color: #140b00; border-color: rgba(255,211,106,0.8); background: linear-gradient(135deg, #ffe59b, #ffba5f); }
    .chip.home-list { color: #efe8ff; border-color: rgba(198,92,255,0.28); background: rgba(198,92,255,0.13); }

    .star {
      color: var(--amber);
      text-shadow: 0 0 16px rgba(255, 211, 106, 0.45);
      font-size: 0.94rem;
    }

    .card-actions {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      color: var(--faint);
      font-weight: 800;
      padding-left: 2px;
    }

    .grab {
      letter-spacing: -2px;
      color: rgba(159, 176, 216, 0.55);
      transform: rotate(90deg);
      font-size: 1rem;
      line-height: 1;
    }

    .overflow { color: rgba(219, 232, 255, 0.62); font-size: 1.2rem; line-height: 1; }

    .move-hint {
      grid-column: 2 / 4;
      grid-row: 2;
      align-self: center;
      justify-self: center;
      margin-top: -4px;
      width: min(520px, 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 9px;
      border: 1px solid rgba(98, 231, 255, 0.24);
      border-radius: 999px;
      padding: 10px 16px;
      color: #dffbff;
      background: linear-gradient(90deg, rgba(98,231,255,0.08), rgba(198,92,255,0.11), rgba(98,231,255,0.08));
      box-shadow: 0 0 24px rgba(98, 231, 255, 0.12);
      font-size: 0.82rem;
    }

    .move-hint .arrow { color: var(--cyan); font-weight: 900; text-shadow: 0 0 12px rgba(98,231,255,0.6); }

    .quick-add {
      position: fixed;
      left: 24px;
      right: 24px;
      bottom: 20px;
      z-index: 20;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 13px;
      max-width: 980px;
      margin: 0 auto;
      border: 1px solid rgba(98, 231, 255, 0.28);
      border-radius: 28px;
      padding: 12px;
      background: linear-gradient(135deg, rgba(17, 25, 57, 0.82), rgba(24, 18, 55, 0.72));
      box-shadow: 0 24px 80px rgba(0,0,0,0.52), var(--glow-cyan), inset 0 1px 0 rgba(255,255,255,0.10);
      backdrop-filter: blur(24px) saturate(145%);
    }

    .quick-add-icon {
      width: 42px;
      height: 42px;
      border-radius: 16px;
      display: grid;
      place-items: center;
      background: radial-gradient(circle at 30% 25%, #fff, var(--cyan) 28%, var(--violet) 76%);
      color: #07101d;
      box-shadow: 0 0 26px rgba(98,231,255,0.46);
      font-weight: 900;
    }

    .input-mock {
      min-height: 46px;
      display: flex;
      align-items: center;
      padding: 0 16px;
      border: 1px solid rgba(171, 201, 255, 0.16);
      border-radius: 18px;
      background: rgba(1, 5, 18, 0.34);
      color: #c9d7fa;
      box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
    }

    .add-button {
      width: 48px;
      height: 48px;
      border: 0;
      border-radius: 18px;
      display: grid;
      place-items: center;
      color: #050713;
      background: linear-gradient(135deg, var(--teal), var(--cyan) 50%, #b8a2ff);
      box-shadow: 0 0 24px rgba(70,255,208,0.34), inset 0 1px 0 rgba(255,255,255,0.52);
      font-size: 1.7rem;
      font-weight: 900;
    }

    @media (max-width: 900px) {
      .app-shell { padding: 16px 14px 112px; }
      .topbar { align-items: flex-start; flex-direction: column; }
      .top-actions { width: 100%; justify-content: space-between; }
      .board-header { align-items: flex-start; flex-direction: column; }
      .status-ribbon { width: 100%; min-width: 0; }
      .board { min-width: 1420px; }
      .quick-add { left: 12px; right: 12px; bottom: 12px; grid-template-columns: auto 1fr auto; }
      .signout { padding: 0 12px; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
    }

    /* --- Blazor board: dynamic column count + interaction states --- */
    .board {
      display: flex;
      grid-template-columns: none;
      grid-template-rows: none;
      min-width: 0;
      align-items: flex-start;
    }
    .board > .column { flex: 0 0 320px; max-width: 340px; }
    .move-hint.static {
      position: static;
      grid-column: auto;
      grid-row: auto;
      margin: 10px auto 2px;
    }
    .card, .checkbox, .star, .overflow, .icon-button, .signout, .user-chip { cursor: pointer; }
    .card { color: var(--text); }
    .card-title { color: var(--text); }
    .card.selected { outline: none; }
    .column.drag-over {
      border-color: var(--stroke-bright);
      box-shadow: 0 0 0 2px var(--stroke-bright), var(--glow-cyan);
    }
    .column.my-day.drag-over { border-color: rgba(255, 211, 106, 0.92); box-shadow: 0 0 0 2px rgba(255,211,106,0.6), 0 20px 80px rgba(255,211,106,0.16); }
    .card.dragging { opacity: 0.45; }
    .empty-state { color: var(--faint); font-size: 0.8rem; padding: 16px 6px; text-align: center; }
    .input-mock.editable { padding: 0; }
    .quick-add-input {
      width: 100%;
      min-height: 46px;
      border: 0;
      outline: none;
      background: transparent;
      color: var(--text);
      font-family: var(--font);
      font-size: 0.98rem;
      padding: 0 16px;
    }
    .quick-add-input::placeholder { color: #8092bf; }
    .add-button { cursor: pointer; }
    .add-button:disabled { opacity: 0.5; cursor: default; }
    .spinner {
      width: 16px; height: 16px; border-radius: 50%;
      border: 2px solid rgba(255,255,255,0.25); border-top-color: var(--cyan);
      display: inline-block; animation: spin 0.7s linear infinite;
    }
    @keyframes spin { to { transform: rotate(360deg); } }
    .board-error {
      margin: 12px 2px; padding: 14px 16px; border-radius: 16px;
      border: 1px solid rgba(255, 122, 165, 0.4);
      background: rgba(255, 122, 165, 0.1); color: #ffd7e3;
    }

    /* --- Card overflow menu (tap/accessibility fallback for drag & drop) --- */
    .card { position: relative; }
    .overflow-btn {
      background: transparent; border: 0; color: rgba(219, 232, 255, 0.62);
      font-size: 1.2rem; line-height: 1; cursor: pointer; padding: 0;
    }
    .card-menu {
      position: absolute; top: 40px; right: 8px; z-index: 40;
      min-width: 190px; padding: 6px;
      border: 1px solid var(--stroke-bright); border-radius: 14px;
      background: rgba(12, 17, 40, 0.96);
      box-shadow: var(--shadow), var(--glow-violet);
      backdrop-filter: blur(18px);
    }
    .card-menu .menu-label {
      font-size: 0.66rem; text-transform: uppercase; letter-spacing: 0.08em;
      color: var(--faint); padding: 6px 10px 3px;
    }
    .card-menu button {
      display: block; width: 100%; text-align: left;
      background: transparent; border: 0; border-radius: 9px;
      color: var(--text); font-size: 0.82rem; padding: 8px 10px; cursor: pointer;
    }
    .card-menu button:hover { background: rgba(98, 231, 255, 0.14); }
    .card-menu .today-action { color: var(--amber); }
    .move-fallback-hint { display: none; }

    /* --- 3-slot layout: list picker dropdown + active-list highlight --- */
    .board > .column { flex: 0 0 340px; max-width: 380px; }
    .column-select {
      appearance: none;
      -webkit-appearance: none;
      background: rgba(255, 255, 255, 0.06);
      color: var(--text);
      border: 1px solid var(--stroke);
      border-radius: 11px;
      padding: 7px 30px 7px 12px;
      font-family: var(--display);
      font-size: 1.02rem;
      font-weight: 700;
      letter-spacing: -0.02em;
      cursor: pointer;
      max-width: 210px;
      background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239fb0d8' stroke-width='3'><path d='M6 9l6 6 6-6'/></svg>");
      background-repeat: no-repeat;
      background-position: right 10px center;
    }
    .column-select:hover { border-color: var(--stroke-bright); }
    .column-select option { background: #0b1028; color: var(--text); }
    .column-fixed-title {
      margin: 0;
      font-family: var(--display);
      font-size: 1.08rem;
      font-weight: 700;
      letter-spacing: -0.02em;
    }
    .column.active-list {
      border-color: var(--stroke-bright);
      box-shadow: 0 0 0 2px rgba(98, 231, 255, 0.55), var(--glow-cyan), inset 0 1px 0 rgba(255,255,255,0.08);
    }
    .column.active-list.my-day {
      border-color: rgba(255, 211, 106, 0.9);
      box-shadow: 0 0 0 2px rgba(255, 211, 106, 0.6), 0 20px 80px rgba(255, 211, 106, 0.16);
    }
    .active-badge {
      display: inline-flex; align-items: center; gap: 5px;
      margin-left: 8px; padding: 3px 9px; border-radius: 999px;
      font-family: var(--font); font-size: 0.64rem; font-weight: 800;
      text-transform: uppercase; letter-spacing: 0.06em;
      color: #06101a; background: linear-gradient(135deg, var(--teal), var(--cyan));
      box-shadow: 0 0 14px rgba(98, 231, 255, 0.4);
    }
    .column.my-day.active-list .active-badge { background: linear-gradient(135deg, #ffe59b, #ffba5f); }

    /* Completed-today virtual column */
    .column.completed-col {
      border-color: rgba(123, 255, 179, 0.38);
      box-shadow: 0 20px 80px rgba(123, 255, 179, 0.08), inset 0 1px 0 rgba(255,255,255,0.08);
    }
    .column.completed-col .column-icon {
      background: radial-gradient(circle at 30% 22%, #d6ffe8, var(--green) 45%, var(--teal) 100%);
      color: #05231a;
      box-shadow: 0 0 22px rgba(123, 255, 179, 0.3);
    }
    .drop-hint.completed-hint {
      border-color: rgba(123, 255, 179, 0.48);
      color: #d6ffe8;
      background: linear-gradient(90deg, rgba(123, 255, 179, 0.12), rgba(70, 255, 208, 0.08));
    }
    .column.completed-col.drag-over { border-color: rgba(123,255,179,0.9); box-shadow: 0 0 0 2px rgba(123,255,179,0.6), 0 20px 80px rgba(123,255,179,0.16); }
    .column.completed-col.active-list { border-color: rgba(123,255,179,0.9); box-shadow: 0 0 0 2px rgba(123,255,179,0.6), 0 20px 80px rgba(123,255,179,0.14); }
  
