/* Janani Patch 40: Neural Pulse Homepage UI + ChatGPT-style response panel.
   Safe frontend layer only. Does not remove existing glyph thinking screen. */

.janani-v6 {
    --janani40-ink: #050505;
    --janani40-paper: rgba(255,255,255,.94);
    --janani40-soft: rgba(5,5,5,.055);
    --janani40-gold: #c79a3b;
    --janani40-gold-soft: rgba(199,154,59,.18);
    --janani40-line: rgba(5,5,5,.16);
}

.janani-neural-pulse-panel {
    width: min(920px, 96%);
    margin: clamp(18px, 2.8vw, 30px) auto 0;
    border: 1.6px solid var(--janani40-ink);
    border-radius: 30px;
    background:
        radial-gradient(circle at 14% 18%, rgba(199,154,59,.18), transparent 22%),
        radial-gradient(circle at 86% 0%, rgba(5,5,5,.07), transparent 26%),
        linear-gradient(180deg, rgba(255,255,255,.97), rgba(255,255,255,.86));
    box-shadow: 0 22px 48px rgba(0,0,0,.075);
    padding: clamp(16px, 2.5vw, 24px);
    overflow: hidden;
    position: relative;
}

.janani-neural-pulse-panel::before {
    content: "";
    position: absolute;
    inset: -1px;
    pointer-events: none;
    background: linear-gradient(110deg, transparent 0%, rgba(199,154,59,.22) 45%, transparent 72%);
    transform: translateX(-120%);
    animation: janani40PanelScan 7s ease-in-out infinite;
}

@keyframes janani40PanelScan {
    0%, 36% { transform: translateX(-125%); opacity: .2; }
    52% { opacity: .72; }
    84%, 100% { transform: translateX(125%); opacity: .2; }
}

.janani-pulse-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 118px 1fr;
    gap: 18px;
    align-items: center;
}

.janani-pulse-orb-wrap {
    width: 118px;
    height: 118px;
    display: grid;
    place-items: center;
    position: relative;
}

.janani-pulse-orb,
.janani-pulse-orb::before,
.janani-pulse-orb::after {
    border-radius: 999px;
    position: absolute;
}

.janani-pulse-orb {
    width: 76px;
    height: 76px;
    border: 2px solid #050505;
    background:
        radial-gradient(circle at 35% 32%, #fff5cf 0%, #d7aa55 25%, #0d0b07 70%);
    box-shadow: 0 0 0 12px rgba(199,154,59,.11), 0 16px 28px rgba(0,0,0,.16);
    animation: janani40OrbPulse 2.2s ease-in-out infinite;
}

.janani-pulse-orb::before {
    content: "";
    inset: -18px;
    border: 1px dashed rgba(5,5,5,.38);
    animation: janani40Orbit 9s linear infinite;
}

.janani-pulse-orb::after {
    content: "";
    inset: 21px;
    background: rgba(255,255,255,.74);
    filter: blur(.4px);
    animation: janani40InnerBlink 1.4s ease-in-out infinite;
}

.janani-pulse-node {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 99px;
    background: #050505;
    box-shadow: 0 0 0 6px rgba(199,154,59,.13);
}
.janani-pulse-node.n1 { top: 10px; left: 54px; animation: janani40Node 1.8s ease-in-out infinite; }
.janani-pulse-node.n2 { right: 14px; top: 58px; animation: janani40Node 2.1s ease-in-out infinite .2s; }
.janani-pulse-node.n3 { bottom: 14px; left: 32px; animation: janani40Node 2.4s ease-in-out infinite .5s; }

@keyframes janani40OrbPulse {
    0%, 100% { transform: scale(1); filter: saturate(1); }
    50% { transform: scale(1.055); filter: saturate(1.22); }
}
@keyframes janani40Orbit { to { transform: rotate(360deg); } }
@keyframes janani40InnerBlink { 0%,100% { opacity:.5; } 50% { opacity:.92; } }
@keyframes janani40Node { 0%,100% { opacity:.45; transform:scale(.85); } 50% { opacity:1; transform:scale(1.22); } }

.janani-pulse-main { min-width: 0; }
.janani-pulse-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(5,5,5,.18);
    border-radius: 999px;
    padding: 6px 11px;
    background: rgba(255,255,255,.68);
    font: 700 12px/1.2 Arial, sans-serif;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.janani-pulse-dot {
    width: 8px;
    height: 8px;
    border-radius: 99px;
    background: #0f7a39;
    box-shadow: 0 0 0 0 rgba(15,122,57,.38);
    animation: janani40LiveDot 1.4s ease-in-out infinite;
}
@keyframes janani40LiveDot { 0%,100%{box-shadow:0 0 0 0 rgba(15,122,57,.28)} 50%{box-shadow:0 0 0 8px rgba(15,122,57,0)} }

.janani-pulse-statement {
    margin: 12px 0 12px;
    font-size: clamp(17px, 1.7vw, 22px);
    line-height: 1.45;
    color: #111;
}

.janani-pulse-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.janani-pulse-chip {
    border: 1px solid rgba(5,5,5,.16);
    background: rgba(255,255,255,.72);
    border-radius: 999px;
    padding: 7px 10px;
    font: 12px/1.2 Arial, sans-serif;
    color: #2f2f2f;
}
.janani-pulse-chip b { color:#050505; }

.janani-pulse-stream {
    position: relative;
    z-index: 2;
    margin-top: 15px;
    border-top: 1px solid rgba(5,5,5,.12);
    padding-top: 12px;
    height: 42px;
    overflow: hidden;
    color: rgba(5,5,5,.44);
    font-family: "Noto Sans Devanagari", "Noto Sans Tamil", Georgia, serif;
    letter-spacing: .14em;
    white-space: nowrap;
    user-select: none;
}
.janani-pulse-stream span {
    display: inline-block;
    min-width: 100%;
    animation: janani40GlyphMove 13s linear infinite;
}
@keyframes janani40GlyphMove { from { transform: translateX(0); } to { transform: translateX(-48%); } }

.janani-pulse-events {
    position: relative;
    z-index: 2;
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.janani-pulse-event {
    min-height: 54px;
    border: 1px solid rgba(5,5,5,.12);
    border-radius: 16px;
    background: rgba(255,255,255,.58);
    padding: 9px 10px;
    font-family: Arial, sans-serif;
    overflow: hidden;
}
.janani-pulse-event small {
    display: block;
    color: #75571d;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 10px;
    margin-bottom: 4px;
}
.janani-pulse-event span {
    display: block;
    color: #1d1d1d;
    font-size: 12px;
    line-height: 1.28;
}

/* ChatGPT-style composer without removing original form/buttons. */
.search-section { width: min(900px, 96%); }
.search-form.voice-search-form {
    min-height: 72px;
    border-width: 1.7px;
    border-radius: 28px;
    grid-template-columns: 1fr 58px 58px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 16px 38px rgba(0,0,0,.075);
    overflow: visible;
    padding: 8px;
}
.search-form.voice-search-form textarea {
    min-height: 54px;
    max-height: 220px;
    padding: 16px 15px 12px;
    font-family: Arial, sans-serif;
    font-size: clamp(16px, 1.35vw, 18px);
    line-height: 1.45;
}
.search-form.voice-search-form button {
    width: 48px;
    height: 48px;
    margin: 4px;
    border-radius: 999px;
    border: 1px solid rgba(5,5,5,.13);
    background: #fff;
    box-shadow: 0 5px 14px rgba(0,0,0,.045);
}
.search-form.voice-search-form button:hover { background:#050505; color:#fff; }
.search-form.voice-search-form #sendBtn {
    background:#050505;
    color:#fff;
}
.search-form.voice-search-form .search-icon {
    border: 0;
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
}
.search-form.voice-search-form .search-icon::before {
    content: "➤";
    font: 700 17px/1 Arial, sans-serif;
    transform: translateX(1px) rotate(-8deg);
}
.search-form.voice-search-form .search-icon::after { display:none; }

/* ChatGPT-style scrollable answer area. */
.answer-box.janani-chat-response-box {
    width: min(900px, 96%);
    margin-top: 24px;
    border: 1px solid rgba(5,5,5,.15);
    border-radius: 24px;
    padding: 0;
    background: rgba(255,255,255,.86);
    box-shadow: 0 18px 48px rgba(0,0,0,.07);
    font-family: Arial, sans-serif;
    line-height: 1.55;
    white-space: normal;
    overflow: hidden;
}
.answer-box.janani-chat-response-box.show {
    display: flex;
    flex-direction: column;
}
.janani-chat-panel-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    padding: 13px 16px;
    border-bottom: 1px solid rgba(5,5,5,.10);
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,247,244,.90));
}
.janani-chat-panel-header strong {
    font: 800 13px/1.2 Arial, sans-serif;
    letter-spacing: .02em;
}
.janani-chat-panel-header span {
    color: #666;
    font: 12px/1.3 Arial, sans-serif;
}
.janani-chat-list {
    max-height: min(620px, 62vh);
    overflow-y: auto;
    padding: 18px;
    scroll-behavior: smooth;
}
.janani-chat-list::-webkit-scrollbar { width: 10px; }
.janani-chat-list::-webkit-scrollbar-thumb { background: rgba(0,0,0,.22); border-radius: 99px; border: 3px solid rgba(255,255,255,.84); }

.janani-chat-row {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 11px;
    margin-bottom: 16px;
    align-items: flex-start;
}
.janani-chat-row.user {
    grid-template-columns: minmax(0, 1fr) 38px;
}
.janani-chat-row.user .janani-chat-avatar { grid-column: 2; grid-row: 1; }
.janani-chat-row.user .janani-chat-bubble-wrap { grid-column: 1; grid-row: 1; justify-self: end; }

.janani-chat-avatar {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(5,5,5,.18);
    background: #fff;
    color: #111;
    font: 800 12px/1 Arial, sans-serif;
    box-shadow: 0 6px 14px rgba(0,0,0,.05);
}
.janani-chat-row.janani .janani-chat-avatar {
    background: radial-gradient(circle at 35% 28%, #fff3c8, #c79a3b 35%, #111 80%);
    color: #fff;
}
.janani-chat-bubble-wrap { max-width: min(680px, 100%); }
.janani-chat-name {
    margin: 0 0 5px;
    font: 700 12px/1.2 Arial, sans-serif;
    color: #5d5d5d;
}
.janani-chat-row.user .janani-chat-name { text-align: right; }
.janani-chat-bubble {
    border: 1px solid rgba(5,5,5,.10);
    border-radius: 19px;
    padding: 13px 15px;
    background: #fff;
    color: #121212;
    font-size: 15px;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
.janani-chat-row.user .janani-chat-bubble {
    background: #050505;
    color: #fff;
    border-color: #050505;
    border-top-right-radius: 7px;
}
.janani-chat-row.janani .janani-chat-bubble {
    border-top-left-radius: 7px;
    background: rgba(255,255,255,.95);
}
.janani-chat-row.system .janani-chat-bubble {
    background: rgba(199,154,59,.12);
    border-color: rgba(199,154,59,.25);
    color: #3b2a0b;
}
.janani-chat-thinking .janani-chat-bubble {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.janani-chat-dots {
    display: inline-flex;
    gap: 4px;
    align-items: center;
}
.janani-chat-dots i {
    width: 6px;
    height: 6px;
    border-radius: 99px;
    background: #c79a3b;
    display: block;
    animation: janani40Dots 1s ease-in-out infinite;
}
.janani-chat-dots i:nth-child(2){animation-delay:.16s}
.janani-chat-dots i:nth-child(3){animation-delay:.32s}
@keyframes janani40Dots { 0%,100%{opacity:.28; transform:translateY(0)} 50%{opacity:1; transform:translateY(-3px)} }

.answer-box .janani-citations {
    margin: 9px 0 0;
    font-size: 12px;
}
.answer-box .janani-feedback-controls {
    margin: 10px 0 0;
    padding-top: 10px;
}

@media (max-width: 800px) {
    .janani-neural-pulse-panel { width: min(100% - 20px, 96%); border-radius: 22px; padding: 14px; }
    .janani-pulse-grid { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: 10px; }
    .janani-pulse-orb-wrap { width: 88px; height: 88px; }
    .janani-pulse-orb { width: 60px; height: 60px; }
    .janani-pulse-events { grid-template-columns: 1fr; }
    .janani-pulse-event:nth-child(n+3) { display:none; }
    .janani-pulse-meta { justify-content:center; }
    .search-form.voice-search-form { grid-template-columns: 1fr 50px 50px; padding: 6px; }
    .search-form.voice-search-form button { width: 42px; height: 42px; }
    .answer-box.janani-chat-response-box { width: min(100% - 20px, 96%); border-radius: 20px; }
    .janani-chat-list { max-height: 58vh; padding: 14px 11px; }
    .janani-chat-row { grid-template-columns: 32px minmax(0,1fr); gap: 8px; }
    .janani-chat-row.user { grid-template-columns: minmax(0,1fr) 32px; }
    .janani-chat-avatar { width: 30px; height: 30px; font-size: 11px; }
    .janani-chat-bubble { font-size: 14px; padding: 12px 13px; }
}

/* Janani Patch 40A UI refinement: Matrix-style background, no horizontal tape, automatic child mode, input below response. */
.janani-v6 { position: relative; overflow-x: hidden; }
.home-shell, .top-links { position: relative; z-index: 2; }
.janani-matrix-rain {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    opacity: .16;
    mix-blend-mode: multiply;
}
.janani-matrix-col {
    position: absolute;
    top: -120vh;
    white-space: pre-line;
    font-family: "Noto Sans Devanagari", "Noto Sans Tamil", Consolas, monospace;
    font-size: clamp(12px, 1.25vw, 18px);
    line-height: 1.38;
    letter-spacing: .08em;
    color: rgba(0,0,0,.42);
    text-shadow: 0 0 10px rgba(199,154,59,.30);
    animation: janani40aMatrixFall linear infinite;
}
@keyframes janani40aMatrixFall {
    from { transform: translateY(0); opacity: .04; }
    10% { opacity: .55; }
    70% { opacity: .36; }
    to { transform: translateY(245vh); opacity: .03; }
}

/* Remove the extra Patch 40 horizontal glyph tape; original thinking glyph screen remains untouched. */
.janani-pulse-stream { display: none !important; }

/* Page order: identity → pulse → response → input → values. */
.identity-block { order: 1; }
.janani-neural-pulse-panel { order: 2; }
.answer-box.janani-chat-response-box { order: 3; margin-top: 20px; }
.search-section { order: 4; margin-top: 16px; }
.bottom-values { order: 5; }

/* Hide manual child selector; mode is automatic based on message. */
.mode-wrap { display: none !important; }
.janani-auto-mode-chip {
    width: fit-content;
    max-width: 100%;
    margin: 0 auto 10px;
    border: 1px solid rgba(5,5,5,.14);
    background: rgba(255,255,255,.82);
    border-radius: 999px;
    padding: 7px 12px;
    color: #38270b;
    font: 700 12px/1.25 Arial, sans-serif;
    letter-spacing: .02em;
    box-shadow: 0 8px 18px rgba(0,0,0,.035);
}
.janani-chat-row.janani-chat-empty .janani-chat-bubble {
    color: #4c4c4c;
    background: rgba(255,255,255,.72);
    border-style: dashed;
}
.janani-pulse-statement {
    font-family: Georgia, "Times New Roman", serif;
}
.janani-pulse-event span {
    font-size: 12.5px;
}
@media (max-width:800px) {
    .janani-matrix-rain { opacity: .10; }
    .janani-chat-panel-header { align-items: flex-start; flex-direction: column; gap: 4px; }
    .janani-auto-mode-chip { font-size: 11px; text-align: center; }
}

/* Janani Patch 40B UI corrections: hide homepage internal/debug status, fixed neural + response areas, always-on Matrix background. */
.janani-neural-pulse-panel {
    min-height: 210px;
    max-height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.janani-pulse-grid {
    flex: 1 1 auto;
    min-height: 150px;
}
.janani-pulse-main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 148px;
}
.janani-pulse-statement {
    height: 72px;
    max-height: 72px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    margin-bottom: 0;
}
/* Hide technical/backend status from public home UI. */
.janani-pulse-meta,
.janani-pulse-events,
.janani-pulse-stream {
    display: none !important;
}
/* Keep the response area fixed and scroll internally instead of growing the page. */
.answer-box.janani-chat-response-box {
    height: clamp(330px, 42vh, 500px);
    max-height: clamp(330px, 42vh, 500px);
    min-height: 330px;
}
.answer-box.janani-chat-response-box.show {
    display: flex !important;
    flex-direction: column;
}
.janani-chat-panel-header {
    flex: 0 0 auto;
}
.janani-chat-list {
    flex: 1 1 auto;
    height: auto;
    min-height: 0;
    max-height: none !important;
    overflow-y: auto;
}
/* Always-on Matrix field in the background, similar to the processing screen but lighter for readability. */
.janani-matrix-rain {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw;
    height: 100vh;
    z-index: 0 !important;
    opacity: .24;
    mix-blend-mode: multiply;
}
.janani-matrix-col {
    color: rgba(13, 100, 52, .48);
    text-shadow: 0 0 8px rgba(20, 160, 75, .32), 0 0 18px rgba(199,154,59,.16);
    font-weight: 700;
}
.home-shell,
.top-links,
.identity-block,
.janani-neural-pulse-panel,
.answer-box.janani-chat-response-box,
.search-section,
.bottom-values {
    position: relative;
    z-index: 2;
}
@media (max-width: 800px) {
    .janani-neural-pulse-panel {
        min-height: 220px;
        max-height: 220px;
    }
    .janani-pulse-grid,
    .janani-pulse-main {
        min-height: auto;
    }
    .janani-pulse-statement {
        height: 82px;
        max-height: 82px;
        -webkit-line-clamp: 4;
    }
    .answer-box.janani-chat-response-box {
        height: clamp(340px, 48vh, 520px);
        max-height: clamp(340px, 48vh, 520px);
    }
    .janani-matrix-rain { opacity: .14; }
}

/* Janani Patch 40C — Full UI/UX redesign layer.
   Frontend only: no training, no model claim, no backend execution. */
:root {
    --janani40c-green: #0b7a3b;
    --janani40c-green-soft: rgba(11,122,59,.12);
    --janani40c-gold: #c79a3b;
    --janani40c-ink: #060807;
    --janani40c-card: rgba(255,255,255,.88);
    --janani40c-card-strong: rgba(255,255,255,.96);
}
body {
    background:
        radial-gradient(circle at 50% 4%, rgba(199,154,59,.20), transparent 24%),
        radial-gradient(circle at 10% 40%, rgba(11,122,59,.12), transparent 28%),
        linear-gradient(180deg, #ffffff 0%, #f7faf7 56%, #ffffff 100%) !important;
}
.janani-v6::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        radial-gradient(circle at 50% 18%, rgba(255,255,255,.54), transparent 22%),
        linear-gradient(90deg, rgba(255,255,255,.72), rgba(255,255,255,.38), rgba(255,255,255,.72));
}
.top-links {
    padding-top: 14px !important;
}
.top-link {
    border: 1px solid rgba(5,5,5,.14);
    border-radius: 999px;
    padding: 8px 14px !important;
    background: rgba(255,255,255,.76);
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.045);
    backdrop-filter: blur(10px);
}
.home-shell {
    width: min(1120px, calc(100% - 28px)) !important;
    min-height: calc(100vh - 60px) !important;
    padding: clamp(20px, 4vh, 38px) 0 34px !important;
    gap: 14px;
}
.identity-block {
    border: 1px solid rgba(5,5,5,.08);
    border-radius: 32px;
    background: linear-gradient(180deg, rgba(255,255,255,.68), rgba(255,255,255,.34));
    box-shadow: 0 20px 54px rgba(0,0,0,.055);
    backdrop-filter: blur(11px);
    padding: clamp(12px, 2vw, 22px) clamp(10px, 2vw, 22px) clamp(14px, 2vw, 20px);
}
.identity-block .janani-svg-logo-wrap {
    width: min(640px, 84vw);
}
.tagline-row {
    margin-top: -8px;
}
.tagline-row p {
    font-size: clamp(15px, 1.45vw, 21px) !important;
    letter-spacing: .015em;
}
.janani-neural-pulse-panel {
    width: min(900px, 96%) !important;
    min-height: 190px !important;
    max-height: 190px !important;
    margin-top: 0 !important;
    border-radius: 28px !important;
    border: 1px solid rgba(6,8,7,.16) !important;
    background:
        radial-gradient(circle at 10% 18%, rgba(11,122,59,.16), transparent 28%),
        radial-gradient(circle at 92% 10%, rgba(199,154,59,.20), transparent 30%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,255,250,.84)) !important;
    box-shadow: 0 22px 58px rgba(0,0,0,.065), inset 0 0 0 1px rgba(255,255,255,.70);
    backdrop-filter: blur(12px);
}
.janani-pulse-orb-wrap {
    transform: scale(.88);
}
.janani-pulse-orb {
    background:
        radial-gradient(circle at 35% 30%, #fff7d8 0%, #e0b45f 24%, #0b7a3b 54%, #050505 86%) !important;
    box-shadow: 0 0 0 10px rgba(11,122,59,.08), 0 0 36px rgba(11,122,59,.18), 0 16px 28px rgba(0,0,0,.16) !important;
}
.janani-pulse-kicker {
    border-color: rgba(11,122,59,.24) !important;
    background: rgba(255,255,255,.76) !important;
    color: #072c18;
}
.janani-pulse-dot {
    background: var(--janani40c-green) !important;
}
.janani-pulse-statement {
    height: 78px !important;
    max-height: 78px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(18px, 1.7vw, 23px) !important;
    line-height: 1.38 !important;
    color: #07120c !important;
    letter-spacing: .006em;
}
.answer-box.janani-chat-response-box {
    width: min(900px, 96%) !important;
    height: clamp(380px, 46vh, 560px) !important;
    max-height: clamp(380px, 46vh, 560px) !important;
    min-height: 380px !important;
    margin-top: 2px !important;
    border: 1px solid rgba(5,5,5,.12) !important;
    border-radius: 30px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,255,251,.90)) !important;
    box-shadow: 0 24px 62px rgba(0,0,0,.075), inset 0 0 0 1px rgba(255,255,255,.66) !important;
    backdrop-filter: blur(12px);
}
.janani-chat-panel-header {
    padding: 14px 18px !important;
    background:
        linear-gradient(90deg, rgba(8,65,33,.06), rgba(199,154,59,.10), rgba(8,65,33,.04)) !important;
    position: sticky;
    top: 0;
    z-index: 3;
}
.janani-chat-panel-header strong::before {
    content: "●";
    color: var(--janani40c-green);
    margin-right: 8px;
    font-size: 12px;
}
.janani-chat-list {
    padding: 18px 18px 22px !important;
}
.janani-chat-row {
    margin-bottom: 14px !important;
}
.janani-chat-avatar {
    border-color: rgba(11,122,59,.18) !important;
}
.janani-chat-row.janani .janani-chat-avatar {
    background: radial-gradient(circle at 35% 25%, #fff3c8, #c79a3b 31%, #0b7a3b 62%, #050505 92%) !important;
}
.janani-chat-bubble {
    border-radius: 20px !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.035);
}
.janani-chat-row.janani .janani-chat-bubble {
    border-color: rgba(11,122,59,.13) !important;
    background: rgba(255,255,255,.97) !important;
}
.janani-chat-row.user .janani-chat-bubble {
    background: linear-gradient(135deg, #050505, #073d21) !important;
    border-color: #073d21 !important;
}
.search-section {
    width: min(900px, 96%) !important;
    margin-top: 0 !important;
}
.search-form.voice-search-form {
    min-height: 74px !important;
    border: 1px solid rgba(5,5,5,.16) !important;
    border-radius: 30px !important;
    background: rgba(255,255,255,.94) !important;
    box-shadow: 0 18px 50px rgba(0,0,0,.065) !important;
    backdrop-filter: blur(14px);
}
.search-form.voice-search-form textarea {
    font-size: clamp(15px, 1.25vw, 17px) !important;
    min-height: 54px !important;
}
.search-form.voice-search-form #sendBtn {
    background: linear-gradient(135deg, #050505, #0b7a3b) !important;
    box-shadow: 0 8px 18px rgba(11,122,59,.18) !important;
}
.voice-status-row {
    margin-top: 8px !important;
}
.bottom-values {
    margin-top: 0 !important;
    padding-top: 6px !important;
    opacity: .78;
}
.bottom-values p {
    font-size: 13px !important;
}
.ornament {
    margin-bottom: 8px !important;
}
.janani-auto-mode-chip {
    margin-bottom: 8px !important;
    background: rgba(255,255,255,.72) !important;
    border-color: rgba(11,122,59,.18) !important;
    color: #092d18 !important;
    backdrop-filter: blur(8px);
}
.janani-matrix-rain {
    opacity: .30 !important;
    mix-blend-mode: multiply !important;
}
.janani-matrix-col {
    color: rgba(0, 100, 47, .46) !important;
    text-shadow:
        0 0 8px rgba(0, 170, 80, .30),
        0 0 20px rgba(199,154,59,.12) !important;
    filter: drop-shadow(0 0 2px rgba(11,122,59,.18));
}
.janani-chat-row.janani-chat-empty .janani-chat-bubble::after {
    content: "\AExamples: audit this idea · explain the truth · guide my next step · protect me from risk";
    white-space: pre-wrap;
    display: block;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(5,5,5,.08);
    color: #5c6b60;
    font-size: 12px;
}
@media (max-width: 800px) {
    .home-shell {
        width: min(100% - 18px, 1120px) !important;
        padding-top: 18px !important;
        gap: 10px;
    }
    .identity-block {
        border-radius: 24px;
        padding: 10px 8px 12px;
    }
    .identity-block .janani-svg-logo-wrap {
        width: min(86vw, 460px);
    }
    .janani-neural-pulse-panel {
        min-height: 205px !important;
        max-height: 205px !important;
        border-radius: 24px !important;
    }
    .janani-pulse-orb-wrap {
        display: none !important;
    }
    .janani-pulse-grid {
        grid-template-columns: 1fr !important;
        text-align: left !important;
        justify-items: stretch !important;
    }
    .janani-pulse-statement {
        height: 94px !important;
        max-height: 94px !important;
        font-size: 17px !important;
        -webkit-line-clamp: 4 !important;
    }
    .answer-box.janani-chat-response-box {
        height: clamp(370px, 50vh, 560px) !important;
        max-height: clamp(370px, 50vh, 560px) !important;
        min-height: 370px !important;
        border-radius: 24px !important;
    }
    .search-form.voice-search-form {
        border-radius: 24px !important;
    }
    .janani-matrix-rain {
        opacity: .18 !important;
    }
}

/* Janani Patch 40D — performance correction for fast typing.
   Keeps the Matrix background visible, but reduces GPU/DOM load while the user types. */
.janani-matrix-rain {
    pointer-events: none !important;
    contain: strict;
    overflow: hidden !important;
    opacity: .18 !important;
}
.janani-matrix-col {
    will-change: transform;
    transform: translateZ(0);
    opacity: .72;
    font-size: clamp(10px, .82vw, 13px) !important;
    line-height: 1.38 !important;
    text-shadow: 0 0 5px rgba(0, 160, 80, .22) !important;
    filter: none !important;
}
body.janani-typing-active .janani-matrix-rain {
    opacity: .08 !important;
}
body.janani-typing-active .janani-matrix-col,
body.janani-typing-active .janani-pulse-orb,
body.janani-typing-active .janani-pulse-orb::before,
body.janani-typing-active .janani-pulse-orb::after,
body.janani-typing-active .janani-pulse-node,
body.janani-typing-active .janani-pulse-dot,
body.janani-typing-active .janani-neural-pulse-panel::before {
    animation-play-state: paused !important;
}
body.janani-typing-active .janani-neural-pulse-panel,
body.janani-typing-active .answer-box.janani-chat-response-box,
body.janani-typing-active .search-form.voice-search-form,
body.janani-typing-active .identity-block {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
@media (max-width: 800px) {
    .janani-matrix-rain { opacity: .10 !important; }
    .janani-matrix-col { font-size: 10px !important; line-height: 1.45 !important; }
}
@media (prefers-reduced-motion: reduce) {
    .janani-matrix-col,
    .janani-pulse-orb,
    .janani-pulse-orb::before,
    .janani-pulse-orb::after,
    .janani-pulse-node,
    .janani-pulse-dot,
    .janani-neural-pulse-panel::before {
        animation: none !important;
    }
    .janani-matrix-rain { opacity: .07 !important; }
}
