.text-editor:focus { border-color:rgba(var(--cyan-rgb),.48); box-shadow:0 0 0 3px rgba(var(--cyan-rgb),.08); }
    .text-editor::placeholder { color:var(--muted-2); }
    .text-actions { display:grid; grid-template-columns:1fr auto; gap:8px; padding-top:10px; }
    .primary-button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid rgba(var(--cyan-rgb),.55); border-radius:15px; background:linear-gradient(135deg, rgba(var(--cyan-rgb),.23), rgba(var(--blue-rgb),.14)); color:#dff8ff; font-size:11px; font-weight:780; cursor:pointer; box-shadow:0 0 26px rgba(var(--cyan-rgb),.09); }
    .primary-button:hover { background:linear-gradient(135deg, rgba(var(--cyan-rgb),.31), rgba(var(--blue-rgb),.18)); }

    .mode-grid { display:grid; gap:8px; }
    .mode-card { width:100%; display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:11px; border:1px solid var(--line); border-radius:18px; background:rgba(15,22,32,.72); padding:11px; text-align:left; }
    .mode-card:hover { border-color:rgba(var(--cyan-rgb),.35); background:rgba(18,27,39,.9); }
    .mode-preview { width:48px; height:48px; display:grid; place-items:center; border:1px solid var(--line); border-radius:14px; background:#050912; color:var(--cyan); }
    .mode-card strong { display:block; font-size:11px; }
    .mode-card small { display:block; margin-top:4px; color:var(--muted-2); font-size:8px; line-height:1.3; }
    .mode-orientation { color:var(--cyan); font-size:7px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }

    .empty-state { border:1px dashed var(--line-strong); border-radius:18px; padding:26px 16px; color:var(--muted); text-align:center; font-size:10px; line-height:1.5; }

    .kerrigan-screen { background:radial-gradient(circle at 80% 4%, rgba(var(--violet-rgb),.12), transparent 32%), var(--phone); }
    .presence-orb { width:10px; height:10px; margin-right:13px; border-radius:50%; background:var(--muted-2); box-shadow:0 0 0 5px rgba(255,255,255,.025); }
    .presence-orb.online { background:var(--green); box-shadow:0 0 13px rgba(var(--green-rgb),.7), 0 0 0 5px rgba(var(--green-rgb),.08); }
    .presence-orb.waiting { background:var(--amber); box-shadow:0 0 12px rgba(var(--amber-rgb),.55), 0 0 0 5px rgba(var(--amber-rgb),.07); }
    .presence-orb.locked { background:var(--violet); box-shadow:0 0 11px rgba(var(--violet-rgb),.45), 0 0 0 5px rgba(var(--violet-rgb),.06); }
    .presence-orb.checking { animation:pulse-dot 1s ease-in-out infinite alternate; }
    .kerrigan-record { flex:1; min-height:0; overflow-y:auto; scrollbar-width:none; padding:8px 16px 15px; }
    .kerrigan-record::-webkit-scrollbar { display:none; }
    .kerrigan-intro { display:grid; grid-template-columns:42px minmax(0,1fr); gap:12px; align-items:start; margin:10px 0 18px; padding:14px; border:1px solid rgba(var(--violet-rgb),.22); border-radius:18px; background:rgba(var(--violet-rgb),.055); }
    .kerrigan-sigil { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(var(--violet-rgb),.42); border-radius:50%; color:#ead9ff; background:rgba(var(--violet-rgb),.12); box-shadow:0 0 22px rgba(var(--violet-rgb),.14); font:700 15px/1 ui-serif,Georgia,serif; }
    .kerrigan-intro strong { display:block; margin-top:2px; font:600 14px/1.2 ui-serif,Georgia,serif; }
    .kerrigan-intro p { margin:5px 0 0; color:var(--muted); font-size:9px; line-height:1.5; }
    .kerrigan-turn { margin:0 0 12px; padding:0 3px 12px; border-bottom:1px solid var(--line); animation:screen-in .26s var(--ease) both; }
    .kerrigan-turn.assistant { border-bottom-color:rgba(var(--violet-rgb),.17); }
    .kerrigan-turn-label { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:5px; color:var(--muted-2); font-size:8px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
    .kerrigan-turn.assistant .kerrigan-turn-label span { color:var(--violet); }
    .kerrigan-turn-label i { font-style:normal; font-weight:650; letter-spacing:0; text-transform:none; }
    .kerrigan-turn p { margin:0; color:var(--text); font-size:14px; line-height:1.5; white-space:pre-wrap; }
    .kerrigan-turn.user p { color:#d9e4f2; }
    .kerrigan-turn.error p { color:var(--danger); }
    .thinking-dots { display:flex; gap:5px; min-height:21px; align-items:center; }
    .thinking-dots i { width:6px; height:6px; border-radius:50%; background:var(--violet); opacity:.3; animation:kerrigan-thinking .9s ease-in-out infinite alternate; }
    .thinking-dots i:nth-child(2) { animation-delay:.16s; }
    .thinking-dots i:nth-child(3) { animation-delay:.32s; }
    @keyframes kerrigan-thinking { to { opacity:1; transform:translateY(-3px); } }
    .kerrigan-composer { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; gap:8px; align-items:end; padding:10px 12px calc(13px + env(safe-area-inset-bottom)); border-top:1px solid var(--line); background:rgba(5,9,15,.9); backdrop-filter:blur(18px); }
    .kerrigan-composer[hidden], .kerrigan-pair-panel[hidden] { display:none; }
    .kerrigan-composer textarea { width:100%; min-height:44px; max-height:112px; resize:none; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.04); color:var(--text); padding:11px 12px; outline:none; font-size:12px; line-height:1.4; }
    .kerrigan-composer textarea:focus { border-color:rgba(var(--violet-rgb),.45); box-shadow:0 0 0 3px rgba(var(--violet-rgb),.08); }
    .kerrigan-dictate, .kerrigan-send { width:44px; height:44px; display:grid; place-items:center; border:1px solid rgba(var(--violet-rgb),.5); border-radius:14px; background:linear-gradient(145deg,rgba(var(--violet-rgb),.28),rgba(var(--blue-rgb),.16)); color:#f3eaff; }
    .kerrigan-dictate { border-color:var(--line-strong); background:rgba(255,255,255,.035); color:var(--muted); }
    .kerrigan-dictate[aria-pressed="true"] { border-color:rgba(var(--violet-rgb),.72); color:#f3eaff; background:rgba(var(--violet-rgb),.2); box-shadow:0 0 0 5px rgba(var(--violet-rgb),.07),0 0 20px rgba(var(--violet-rgb),.2); }
    .kerrigan-dictate:disabled, .kerrigan-send:disabled { opacity:.42; cursor:not-allowed; }
    .kerrigan-pair-panel { flex:1; min-height:0; display:flex; flex-direction:column; justify-content:center; padding:26px; text-align:center; }
    .private-line-mark { width:66px; height:66px; display:grid; place-items:center; margin:0 auto 17px; border:1px solid rgba(var(--violet-rgb),.42); border-radius:22px; color:var(--violet); background:rgba(var(--violet-rgb),.09); box-shadow:0 18px 48px rgba(var(--violet-rgb),.1); }
    .private-line-mark .icon { width:26px; height:26px; }
    .kerrigan-pair-panel h2 { margin:0; font:600 23px/1.1 ui-serif,Georgia,serif; }
    .kerrigan-pair-panel > p { max-width:270px; margin:9px auto 20px; color:var(--muted); font-size:10px; line-height:1.55; }
    .pair-form { display:grid; gap:9px; text-align:left; }
    .pair-input { width:100%; min-height:48px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.04); color:var(--text); padding:0 14px; outline:none; text-align:center; font-size:14px; font-weight:760; letter-spacing:.12em; text-transform:uppercase; }
    .pair-input:focus { border-color:rgba(var(--violet-rgb),.48); box-shadow:0 0 0 3px rgba(var(--violet-rgb),.08); }
    .pair-error { min-height:16px; margin:0; color:var(--danger); text-align:center; font-size:9px; line-height:1.35; }

    .toast {
      position:absolute; z-index:100; left:50%; bottom:20px;
      max-width:calc(100% - 30px);
      display:flex; align-items:center; gap:8px;
      border:1px solid rgba(var(--cyan-rgb),.32); border-radius:999px;
      background:rgba(11,17,26,.94); color:var(--text);
      padding:9px 13px;
      box-shadow:0 16px 40px rgba(0,0,0,.45), 0 0 24px rgba(var(--cyan-rgb),.08);
      backdrop-filter:blur(14px);
      font-size:9px; font-weight:700;
      opacity:0; transform:translate(-50%, 12px) scale(.96); pointer-events:none;
      transition:opacity .22s ease, transform .28s var(--ease);
    }
    .toast.show { opacity:1; transform:translate(-50%,0) scale(1); }
    .toast-dot { width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 10px rgba(var(--cyan-rgb),.8); }

    @keyframes fade-in { from { opacity:0; } to { opacity:1; } }



    .sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
    .rail-tools { display:grid; gap:9px; margin-top:12px; padding:12px 8px 0; border-top:1px solid rgba(255,255,255,.07); }
    .rail-label { display:grid; gap:6px; color:var(--muted-2); font-size:8px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
    .rail-select, .compact-select, .history-search { width:100%; min-height:36px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.045); color:var(--text); padding:0 10px; outline:none; font-size:10px; font-weight:650; }
    .rail-select:focus, .compact-select:focus, .history-search:focus { border-color:rgba(var(--cyan-rgb),.5); box-shadow:0 0 0 3px rgba(var(--cyan-rgb),.08); }
    .rail-actions { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
    .rail-tool-button { min-height:34px; display:flex; align-items:center; justify-content:center; gap:6px; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.035); color:var(--muted); cursor:pointer; font-size:9px; font-weight:700; }
    .rail-tool-button:hover { color:var(--text); background:rgba(255,255,255,.07); }
    .rail-tool-button:disabled { cursor:wait; opacity:.58; }
    .rail-tool-button[hidden] { display:none; }
    .theme-toggle { min-height:38px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:8px; border:1px solid var(--line); border-radius:12px; padding:0 10px; background:var(--control); color:var(--muted); cursor:pointer; text-align:left; font-size:10px; font-weight:720; }
    .theme-toggle:hover { color:var(--text); background:var(--control-hover); }
    .theme-toggle[aria-pressed="true"] { color:var(--cyan); border-color:rgba(var(--cyan-rgb),.38); background:rgba(var(--cyan-rgb),.09); }
    .theme-toggle-icon { font-size:14px; line-height:1; }
    .theme-toggle-state { color:var(--muted-2); font-size:8px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
    .rail-hint { color:var(--muted-2); font-size:8px; line-height:1.45; text-align:center; }
    .rail-status { display:flex; align-items:center; justify-content:center; gap:6px; color:var(--muted-2); font-size:8px; }
    .rail-status i { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 9px rgba(var(--green-rgb),.65); }

    .pipeline-strip { grid-template-areas:"status partial"; }
    .pipeline-status { grid-area:status; }
    .pipeline-transcript { grid-area:partial; min-width:0; display:flex; align-items:center; gap:7px; overflow:hidden; color:#d9f7ff; font-size:9px; line-height:1.3; white-space:nowrap; text-overflow:ellipsis; opacity:0; max-height:0; transition:opacity .2s ease,max-height .24s var(--ease); }
    .pipeline-transcript.visible { opacity:1; max-height:24px; }
    .pipeline-transcript::before { content:""; flex:none; width:6px; height:6px; border-radius:50%; background:var(--cyan); box-shadow:0 0 10px rgba(var(--cyan-rgb),.8); animation:pulse-dot 1s ease-in-out infinite alternate; }
    @keyframes pulse-dot { to { opacity:.35; transform:scale(.72); } }

    .card-actions { display:flex; flex-direction:column; gap:6px; }
    .copy-button { width:30px; height:30px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.025); color:var(--muted-2); cursor:pointer; }
    .copy-button:hover { color:var(--text); border-color:var(--line-strong); background:rgba(255,255,255,.06); }

    .drawer-section { margin-top:14px; padding-top:12px; border-top:1px solid var(--line); }
    .drawer-section-label { margin:0 8px 8px; color:var(--muted-2); font-size:8px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
    .drawer-action-grid { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
    .drawer-action { min-height:40px; display:flex; align-items:center; justify-content:center; gap:7px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.035); color:var(--muted); cursor:pointer; font-size:9px; font-weight:700; }
    .drawer-action:hover { color:var(--text); background:rgba(255,255,255,.07); }
    .drawer-action[hidden] { display:none; }
    .drawer .rail-select { margin:0 0 4px; }

    .history-search-wrap { position:relative; margin:0 0 10px; }
    .history-search-wrap .icon { position:absolute; left:10px; top:50%; transform:translateY(-50%); width:13px; height:13px; color:var(--muted-2); pointer-events:none; }
    .history-search { padding-left:31px; }
    .detail-actions { display:flex; flex-wrap:wrap; gap:6px; margin:0 0 10px; }

    .text-meta-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:7px; margin-bottom:9px; }
    .field-label { display:grid; gap:5px; color:var(--muted-2); font-size:8px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
    .sample-phrases { display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; padding:0 0 9px; }
    .sample-phrases::-webkit-scrollbar { display:none; }
    .sample-chip { flex:0 0 auto; min-height:30px; border:1px solid var(--line); border-radius:999px; padding:0 10px; background:rgba(255,255,255,.035); color:var(--muted); cursor:pointer; font-size:9px; font-weight:700; }
    .sample-chip:hover { color:var(--text); border-color:rgba(var(--cyan-rgb),.3); }
    .text-editor { flex:0 0 min(184px,29vh); }
    .text-preview { display:grid; gap:5px; margin-top:9px; min-height:0; overflow:auto; scrollbar-width:none; }
    .text-preview::-webkit-scrollbar { display:none; }
    .preview-row { display:grid; grid-template-columns:62px minmax(0,1fr); gap:8px; align-items:start; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); padding:8px 9px; }
    .preview-row strong { font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
    .preview-row p { margin:0; color:var(--muted); font-size:10px; line-height:1.35; }

    .capability-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:7px; margin-bottom:12px; }
    .capability-card { border:1px solid var(--line); border-radius:14px; background:rgba(15,22,32,.7); padding:10px; }
    .capability-card strong { display:block; font-size:9px; }
    .capability-card span { display:flex; align-items:center; gap:6px; margin-top:5px; color:var(--muted-2); font-size:8px; }
    .capability-card span::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--danger); box-shadow:0 0 8px rgba(255,107,122,.45); }
    .capability-card.available span::before { background:var(--green); box-shadow:0 0 8px rgba(var(--green-rgb),.55); }
    .setting-row.unsupported { opacity:.42; }
    .setting-row.unsupported .toggle { cursor:not-allowed; }
    .data-actions { display:grid; grid-template-columns:repeat(2,1fr); gap:7px; }
    .data-action-button { min-height:40px; display:flex; align-items:center; justify-content:center; gap:7px; border:1px solid var(--line); border-radius:13px; background:rgba(15,22,32,.7); color:var(--muted); cursor:pointer; font-size:9px; font-weight:720; }
    .data-action-button:hover { color:var(--text); border-color:var(--line-strong); }

    .reduced-motion *, .reduced-motion *::before, .reduced-motion *::after { animation-duration:.001ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.001ms!important; }
    :fullscreen .prototype-shell { grid-template-columns:1fr; }
    :fullscreen .prototype-rail { display:none; }
    :fullscreen .stage { padding:4px; }

    @media (max-width: 900px) {
      body { overflow:hidden; }
      .prototype-shell { display:block; }
      .prototype-rail {
        position:fixed; z-index:200; left:0; right:0; bottom:0; height:68px;
        display:block; border-right:0; border-top:1px solid rgba(255,255,255,.09);
        padding:7px 9px calc(7px + env(safe-area-inset-bottom));
        background:rgba(3,6,11,.94);
      }
      .rail-brand, .rail-footer { display:none; }
      .rail-nav { display:flex; gap:5px; overflow-x:auto; overflow-y:hidden; }
      .rail-link { flex:0 0 auto; min-height:44px; width:auto; padding:0 12px; }
      .rail-link .route-number { display:none; }
      .stage { height:calc(100dvh - 68px); padding:4px; }
      .device { box-shadow:none; }
    }

    @media (max-width: 520px) {
      .device { border-width:0; border-radius:0; box-shadow:none; }
      .device::before { display:none; }
      .stage { padding:0; }
    }

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

    /* Theme palette: neutral surfaces are semantic; language and status accents stay intentional. */
    :root[data-theme="light"] {
      color-scheme: light;
      --canvas:#e9eef5;
      --canvas-soft:#f4f7fb;
      --phone:#f8fafc;
      --surface:rgba(255,255,255,.84);
      --surface-strong:rgba(255,255,255,.97);
      --surface-soft:rgba(15,23,42,.045);
      --line:rgba(15,23,42,.14);
      --line-strong:rgba(15,23,42,.23);
      --text:#111827;
      --muted:#526174;
      --muted-2:#5f6f82;
      --cyan:#007b9b;
      --cyan-rgb:0,123,155;
      --amber:#a75700;
      --amber-rgb:167,87,0;
      --blue:#275fc0;
      --blue-rgb:39,95,192;
      --green:#08784e;
      --green-rgb:8,120,78;
      --violet:#7541a8;
      --violet-rgb:117,65,168;
      --danger:#c32d45;
      --shadow:0 32px 90px rgba(43,55,72,.28);
      --rail-bg:rgba(249,251,253,.9);
      --screen-start:#fbfcfe;
      --screen-end:#f2f6fa;
      --status-start:rgba(251,252,254,.98);
      --status-end:rgba(251,252,254,.75);
      --panel:rgba(255,255,255,.78);
      --panel-strong:rgba(255,255,255,.96);
      --panel-hover:rgba(255,255,255,.98);
      --control:rgba(15,23,42,.05);
      --control-hover:rgba(15,23,42,.085);
      --card-start:rgba(255,255,255,.96);
      --card-end:rgba(244,247,251,.94);
      --dock-start:rgba(248,250,252,.76);
      --dock-end:rgba(248,250,252,.99);
      --orb:#f7fafc;
      --scrim:rgba(38,48,63,.36);
      --accent-copy:#07556d;
      --violet-copy:#562785;
      --user-copy:#24354a;
    }

    :root[data-theme="light"] body {
      background:
        radial-gradient(circle at 50% 0%, rgba(var(--cyan-rgb),.09), transparent 34%),
        radial-gradient(circle at 14% 84%, rgba(var(--violet-rgb),.06), transparent 28%),
        var(--canvas);
    }
    :root[data-theme="light"] .prototype-rail { border-color:var(--line); }
    :root[data-theme="light"] .rail-link:hover,
    :root[data-theme="light"] .rail-reset:hover,
    :root[data-theme="light"] .drawer-nav a:hover { background:var(--control-hover); }
    :root[data-theme="light"] .rail-footer,
    :root[data-theme="light"] .rail-tools { border-color:var(--line); }
    :root[data-theme="light"] .device { border-color:#161a20; box-shadow:var(--shadow),0 0 0 1px rgba(15,23,42,.12); }
    :root[data-theme="light"] .device::before { background:#161a20; box-shadow:none; }
    :root[data-theme="light"] .status-icons { color:var(--text); }
    :root[data-theme="light"] .icon-button,
    :root[data-theme="light"] .pill-button,
    :root[data-theme="light"] .bottom-tabs a,
    :root[data-theme="light"] .bottom-tabs button,
    :root[data-theme="light"] .pane-action,
    :root[data-theme="light"] .slot-button,
    :root[data-theme="light"] .toggle,
    :root[data-theme="light"] .rail-select,
    :root[data-theme="light"] .compact-select,
    :root[data-theme="light"] .history-search,
    :root[data-theme="light"] .rail-tool-button,
    :root[data-theme="light"] .copy-button,
    :root[data-theme="light"] .drawer-action,
    :root[data-theme="light"] .sample-chip,
    :root[data-theme="light"] .preview-row,
    :root[data-theme="light"] .kerrigan-composer textarea,
    :root[data-theme="light"] .kerrigan-dictate,
    :root[data-theme="light"] .pair-input { background:var(--control); }
    :root[data-theme="light"] .icon-button:hover,
    :root[data-theme="light"] .pill-button:hover,
    :root[data-theme="light"] .bottom-tabs a:hover,
    :root[data-theme="light"] .bottom-tabs button:hover,
    :root[data-theme="light"] .rail-tool-button:hover,
    :root[data-theme="light"] .copy-button:hover,
    :root[data-theme="light"] .drawer-action:hover { background:var(--control-hover); }
    :root[data-theme="light"] .pipeline-strip,
    :root[data-theme="light"] .history-card,
    :root[data-theme="light"] .transcript-line,
    :root[data-theme="light"] .language-button,
    :root[data-theme="light"] .person-profile,
    :root[data-theme="light"] .flag-toggle,
    :root[data-theme="light"] .setting-row,
    :root[data-theme="light"] .range-card,
    :root[data-theme="light"] .mode-card,
    :root[data-theme="light"] .capability-card,
    :root[data-theme="light"] .data-action-button { background:var(--panel); }
    :root[data-theme="light"] .history-card:hover,
    :root[data-theme="light"] .language-button:hover,
    :root[data-theme="light"] .mode-card:hover { background:var(--panel-hover); }
    :root[data-theme="light"] .translation-card { background:linear-gradient(145deg,var(--card-start),var(--card-end)); }
    :root[data-theme="light"] .avatar,
    :root[data-theme="light"] .source-badge { background:var(--control-hover); }
    :root[data-theme="light"] .live-dock { border-color:var(--line); background:linear-gradient(180deg,var(--dock-start),var(--dock-end) 28%); }
    :root[data-theme="light"] .drawer-overlay { background:var(--scrim); }
    :root[data-theme="light"] .drawer { background:var(--panel-strong); box-shadow:24px 0 60px rgba(43,55,72,.2); }
    :root[data-theme="light"] .focus-screen,
    :root[data-theme="light"] .landscape-screen { background:var(--screen-end); }
    :root[data-theme="light"] .focus-screen .screen-header { background:linear-gradient(180deg,rgba(248,250,252,.94),transparent); }
    :root[data-theme="light"] .mic-orb,
    :root[data-theme="light"] .paused .mic-orb,
    :root[data-theme="light"] .manual-mic-orb,
    :root[data-theme="light"] .manual-mic.listening .manual-mic-orb,
    :root[data-theme="light"] .central-band .mic-orb,
    :root[data-theme="light"] .landscape-center .mic-orb,
    :root[data-theme="light"] .face-divider .mic-orb { background:radial-gradient(circle at 40% 30%,rgba(var(--cyan-rgb),.1),var(--orb) 62%); }
    :root[data-theme="light"] .central-band::before,
    :root[data-theme="light"] .landscape-center::before { filter:saturate(.9); }
    :root[data-theme="light"] .text-editor { background:var(--panel); }
    :root[data-theme="light"] .primary-button { color:var(--accent-copy); background:linear-gradient(135deg,rgba(var(--cyan-rgb),.17),rgba(var(--blue-rgb),.1)); }
    :root[data-theme="light"] .mode-preview { background:var(--control); }
    :root[data-theme="light"] .kerrigan-composer { background:rgba(248,250,252,.92); }
    :root[data-theme="light"] .kerrigan-sigil,
    :root[data-theme="light"] .kerrigan-dictate,
    :root[data-theme="light"] .kerrigan-send { color:var(--violet-copy); }
    :root[data-theme="light"] .kerrigan-turn.user p { color:var(--user-copy); }
    :root[data-theme="light"] .toast { background:var(--panel-strong); box-shadow:0 16px 40px rgba(43,55,72,.22),0 0 24px rgba(var(--cyan-rgb),.08); }
    :root[data-theme="light"] .pipeline-transcript { color:var(--accent-copy); }

    @media (max-width:900px) {
      :root[data-theme="light"] .prototype-rail { border-color:var(--line); background:rgba(249,251,253,.96); }
    }
