/* KUINVIT_CHAT_UI_MODERNIZATION_STAGE1_R1 */
.modern-member-chat-shell,.modern-support-grid{--chat-accent:var(--primary-2,#4f46e5);--chat-accent-soft:color-mix(in srgb,var(--primary,#5b5bd6) 13%,var(--card-strong,#fff));--chat-panel:var(--card-strong,#fff);--chat-canvas:color-mix(in srgb,var(--input,#f1f3f7) 58%,var(--card-strong,#fff));--chat-line:var(--border,#d7dce5);--chat-muted:var(--muted,#626d7d);--chat-text:var(--fg,#1d2027)}
.modern-member-chat-shell{max-width:1080px;padding-top:22px;padding-bottom:28px}
.modern-chat-panel{min-width:0;overflow:hidden;border:1px solid var(--chat-line);border-radius:22px;background:var(--chat-panel);box-shadow:0 18px 54px rgba(15,23,42,.07)}
.modern-member-chat-panel{height:min(760px,calc(100svh - 132px));min-height:590px;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.modern-chat-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-bottom:1px solid var(--chat-line);background:color-mix(in srgb,var(--chat-panel) 94%,var(--chat-accent) 6%)}
.modern-chat-peer{min-width:0;display:flex;align-items:center;gap:11px}.modern-chat-avatar{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--primary-soft,#e3e6fb),color-mix(in srgb,var(--primary,#5b5bd6) 20%,var(--card-strong,#fff)));color:var(--primary,#5b5bd6);font-size:12px;font-weight:900;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary,#5b5bd6) 13%,transparent)}.modern-chat-avatar-support{background:var(--primary-soft,#e3e6fb)}
.modern-chat-peer-copy{min-width:0}.modern-chat-title-row{display:flex;align-items:center;gap:8px;min-width:0}.modern-chat-title-row h1,.modern-chat-title-row h2{margin:0;font-size:14px;line-height:1.2;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-chat-peer-copy p{margin:3px 0 0;color:var(--chat-muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modern-chat-role-pill{flex:none;display:inline-flex;align-items:center;min-height:21px;padding:0 7px;border-radius:999px;background:var(--primary-soft,#e3e6fb);color:var(--primary,#5b5bd6);font-size:8px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.modern-chat-stream{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--chat-muted) 30%,transparent) transparent;padding:18px 18px 14px;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--primary,#5b5bd6) 4%,transparent),transparent 24%),radial-gradient(circle at 88% 78%,color-mix(in srgb,var(--primary,#5b5bd6) 3%,transparent),transparent 22%),var(--chat-canvas)}
.modern-chat-stream::-webkit-scrollbar{width:7px}.modern-chat-stream::-webkit-scrollbar-thumb{border-radius:99px;background:color-mix(in srgb,var(--chat-muted) 25%,transparent)}.modern-chat-stream-inner{min-height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;max-width:980px;margin:0 auto}
.modern-chat-message{width:100%;display:flex}.modern-chat-message.mine{justify-content:flex-end}.modern-chat-message.theirs{justify-content:flex-start}.modern-chat-bubble{position:relative;max-width:min(72%,590px);padding:9px 11px 7px;border:1px solid color-mix(in srgb,var(--chat-line) 88%,transparent);border-radius:16px 16px 16px 5px;background:var(--chat-panel);color:var(--chat-text);box-shadow:0 5px 18px rgba(15,23,42,.045)}.modern-chat-message.mine .modern-chat-bubble{border-radius:16px 16px 5px 16px;border-color:color-mix(in srgb,var(--primary,#5b5bd6) 23%,var(--chat-line));background:color-mix(in srgb,var(--primary,#5b5bd6) 15%,var(--chat-panel))}
.modern-chat-bubble p{margin:0;color:inherit;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.5}.modern-chat-message-meta{min-height:14px;margin-top:4px;display:flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--chat-muted);font-size:8px;line-height:1}.modern-chat-message-state{display:inline-flex;align-items:center;gap:3px}.modern-chat-message-state.is-read{color:var(--primary,#5b5bd6)}
.modern-chat-date-separator{display:flex;align-items:center;justify-content:center;margin:9px 0 7px}.modern-chat-date-separator span{display:inline-flex;align-items:center;min-height:23px;padding:0 9px;border:1px solid color-mix(in srgb,var(--chat-line) 82%,transparent);border-radius:999px;background:color-mix(in srgb,var(--chat-panel) 88%,transparent);color:var(--chat-muted);font-size:8px;font-weight:800;box-shadow:0 3px 10px rgba(15,23,42,.035)}
.modern-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;padding:10px 12px;border-top:1px solid var(--chat-line);background:var(--chat-panel)}.modern-chat-compose-main{min-width:0;position:relative;display:grid}.modern-chat-compose textarea{width:100%;min-height:44px;max-height:120px;resize:vertical;border:1px solid var(--chat-line);border-radius:14px;outline:0;padding:11px 13px 18px;background:color-mix(in srgb,var(--input,#f1f3f7) 78%,var(--chat-panel));color:var(--chat-text);font:inherit;font-size:12px;line-height:1.45;transition:border-color .16s,box-shadow .16s,background .16s}.modern-chat-compose textarea:focus{border-color:color-mix(in srgb,var(--primary,#5b5bd6) 48%,var(--chat-line));background:var(--chat-panel);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#5b5bd6) 10%,transparent)}.modern-chat-compose textarea::placeholder{color:color-mix(in srgb,var(--chat-muted) 78%,transparent)}.modern-chat-compose-hint{position:absolute;right:11px;bottom:5px;color:color-mix(in srgb,var(--chat-muted) 72%,transparent);font-size:7px;pointer-events:none}.modern-chat-form-error{margin:5px 2px 0;color:var(--danger,#be123c);font-size:9px;font-weight:700}
.modern-chat-send{min-width:88px;height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:14px;background:var(--chat-accent);color:#fff;font-size:10px;font-weight:900;cursor:pointer;box-shadow:0 9px 24px color-mix(in srgb,var(--chat-accent) 24%,transparent);transition:transform .16s,filter .16s;opacity:1}.modern-chat-send:hover{filter:brightness(1.06);transform:translateY(-1px)}.modern-chat-send:active{transform:translateY(0)}.modern-chat-send:focus-visible{outline:3px solid color-mix(in srgb,var(--chat-accent) 28%,transparent);outline-offset:2px}
.modern-chat-empty{min-height:100%;display:grid;place-items:center;align-content:center;text-align:center;padding:28px}.modern-chat-empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:var(--primary-soft,#e3e6fb);color:var(--primary,#5b5bd6)}.modern-chat-empty-icon-large{width:58px;height:58px;border-radius:19px}.modern-chat-empty strong{margin-top:10px;font-size:13px}.modern-chat-empty p{max-width:360px;margin:4px auto 0;color:var(--chat-muted);font-size:10px;line-height:1.6}
.modern-support-grid{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:12px;height:min(790px,calc(100svh - 116px));min-height:610px}.modern-support-grid>.modern-chat-panel{min-height:0;display:grid}.support-inbox-panel{grid-template-rows:auto minmax(0,1fr)}.support-inbox-header{min-height:72px;display:flex;align-items:center;padding:12px 14px;border-bottom:1px solid var(--chat-line);background:color-mix(in srgb,var(--chat-panel) 96%,var(--primary,#5b5bd6) 4%)}.modern-chat-kicker{margin:0 0 3px;color:var(--primary,#5b5bd6);font-size:8px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.support-inbox-title-row{display:flex;align-items:center;gap:8px}.support-inbox-title-row h2{margin:0;font-size:14px;letter-spacing:-.025em}.support-inbox-title-row>span{display:inline-flex;min-height:21px;align-items:center;padding:0 7px;border-radius:999px;background:var(--input,#f1f3f7);color:var(--chat-muted);font-size:8px;font-weight:850}
.modern-support-thread-list{min-height:0;overflow:auto;overscroll-behavior:contain;padding:8px;display:flex;flex-direction:column;gap:3px;background:color-mix(in srgb,var(--chat-canvas) 42%,var(--chat-panel))}.modern-support-thread{position:relative;min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:70px;padding:9px;border:1px solid transparent;border-radius:14px;color:var(--chat-text);text-decoration:none;transition:background .15s,border-color .15s,transform .15s}.modern-support-thread:hover{background:color-mix(in srgb,var(--primary,#5b5bd6) 6%,var(--chat-panel));border-color:color-mix(in srgb,var(--primary,#5b5bd6) 10%,transparent)}.modern-support-thread.active{background:color-mix(in srgb,var(--primary,#5b5bd6) 12%,var(--chat-panel));border-color:color-mix(in srgb,var(--primary,#5b5bd6) 20%,var(--chat-line))}.modern-support-thread.has-unread:not(.active){background:color-mix(in srgb,var(--primary,#5b5bd6) 5%,var(--chat-panel))}.support-thread-avatar{width:40px;height:40px}.support-thread-body{min-width:0;display:grid;gap:2px}.support-thread-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.support-thread-topline strong{min-width:0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-thread-topline time{flex:none;color:var(--chat-muted);font-size:7px}.support-thread-preview,.support-thread-email{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-thread-preview{color:var(--chat-muted);font-size:9px}.support-thread-email{color:color-mix(in srgb,var(--chat-muted) 76%,transparent);font-size:7px}.support-thread-unread{min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:var(--chat-accent);color:#fff;font-size:8px;font-weight:900}.support-inbox-empty{min-height:220px}
.support-conversation-panel{grid-template-rows:auto minmax(0,1fr) auto}.support-conversation-panel:has(.support-conversation-empty){grid-template-rows:minmax(0,1fr)}.support-conversation-empty{min-height:0;display:grid;background:var(--chat-canvas)}.support-mobile-back{display:none;width:34px;height:34px;flex:none;place-items:center;border:1px solid var(--chat-line);border-radius:11px;color:var(--chat-muted);background:var(--chat-panel)}.admin-modern-chat-stream{padding-left:20px;padding-right:20px}
@media(max-width:1180px){.modern-support-grid{grid-template-columns:280px minmax(0,1fr)}.modern-chat-bubble{max-width:min(78%,560px)}}
@media(max-width:760px){.modern-member-chat-shell{width:100%;max-width:none;padding:0!important}.portal-main:has(.modern-member-chat-shell){padding-bottom:0}.modern-member-chat-panel{height:calc(100svh - 54px - 63px - env(safe-area-inset-bottom));min-height:0;border-left:0;border-right:0;border-radius:0;box-shadow:none}.modern-chat-header{min-height:62px;padding:9px 12px}.modern-chat-avatar{width:36px;height:36px}.modern-chat-role-pill{display:none}.modern-chat-stream{padding:12px 10px 10px}.modern-chat-bubble{max-width:86%;padding:8px 10px 6px}.modern-chat-bubble p{font-size:11px}.modern-chat-compose{gap:7px;padding:8px 9px}.modern-chat-compose textarea{min-height:42px;padding:10px 11px 17px;border-radius:13px}.modern-chat-send{width:42px;min-width:42px;height:42px;border-radius:13px;padding:0}.modern-chat-send span{display:none}.modern-support-grid{display:block;height:auto;min-height:calc(100svh - 150px)}.modern-support-grid>.modern-chat-panel{min-height:calc(100svh - 170px);border-radius:16px}.modern-support-grid.has-selection .support-inbox-panel{display:none}.modern-support-grid.no-selection .support-conversation-panel{display:none}.support-mobile-back{display:grid}.support-conversation-header{gap:9px}.support-inbox-header{min-height:62px}.modern-support-thread-list{padding:6px}.modern-support-thread{min-height:66px}.admin-modern-chat-stream{padding-left:10px;padding-right:10px}}
@media(max-width:420px){.modern-chat-peer-copy p{max-width:230px}.modern-chat-message-meta{font-size:7px}.modern-support-grid>.modern-chat-panel{border-radius:14px}}
@media(prefers-reduced-motion:reduce){.modern-chat-send,.modern-support-thread{transition:none}}

/* KUINVIT_CHAT_UI_MODERNIZATION_STAGE2_R1
   Interaction + responsive polish layered on the accepted Stage 1 visual core. */
.modern-chat-stream-wrap{
    position:relative;
    min-width:0;
    min-height:0;
    overflow:hidden;
    display:grid;
}
.modern-chat-stream-wrap>.modern-chat-stream{height:100%}
.modern-chat-jump-bottom{
    position:absolute;
    right:18px;
    bottom:14px;
    z-index:4;
    min-height:30px;
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:0 10px;
    border:1px solid color-mix(in srgb,var(--primary,#5b5bd6) 22%,var(--chat-line));
    border-radius:999px;
    background:color-mix(in srgb,var(--chat-panel) 94%,var(--primary,#5b5bd6) 6%);
    color:var(--chat-text);
    box-shadow:0 8px 24px rgba(15,23,42,.14);
    font-size:8px;
    font-weight:900;
    cursor:pointer;
    backdrop-filter:blur(12px);
}
.modern-chat-jump-bottom[hidden]{display:none!important}
.modern-chat-jump-bottom:hover{border-color:color-mix(in srgb,var(--primary,#5b5bd6) 38%,var(--chat-line));color:var(--primary,#5b5bd6)}
.modern-chat-jump-bottom:focus-visible,
.modern-support-thread:focus-visible,
.support-mobile-back:focus-visible,
.support-inbox-search:focus-within{
    outline:3px solid color-mix(in srgb,var(--primary,#5b5bd6) 18%,transparent);
    outline-offset:2px;
}
.modern-chat-compose textarea{
    resize:none;
    overflow-y:hidden;
}
.modern-chat-send:disabled{
    cursor:not-allowed;
    opacity:.45;
    box-shadow:none;
    filter:none;
    transform:none;
}
.modern-chat-compose[data-submitting="1"] .modern-chat-send{opacity:.55}
.modern-chat-message.mine + .modern-chat-message.mine,
.modern-chat-message.theirs + .modern-chat-message.theirs{margin-top:-2px}
.modern-chat-message.mine + .modern-chat-message.mine .modern-chat-bubble{border-top-right-radius:8px}
.modern-chat-message.theirs + .modern-chat-message.theirs .modern-chat-bubble{border-top-left-radius:8px}

.support-inbox-header{
    align-items:stretch;
    flex-direction:column;
    justify-content:center;
    gap:9px;
    padding-top:11px;
    padding-bottom:11px;
}
.support-inbox-heading{min-width:0}
.support-inbox-title-row>span b{font:inherit}
.support-inbox-search{
    min-height:36px;
    display:flex;
    align-items:center;
    gap:7px;
    padding:0 10px;
    border:1px solid var(--chat-line);
    border-radius:11px;
    background:color-mix(in srgb,var(--input,#f1f3f7) 76%,var(--chat-panel));
    color:var(--chat-muted);
    transition:border-color .16s,background .16s,box-shadow .16s;
}
.support-inbox-search:focus-within{
    border-color:color-mix(in srgb,var(--primary,#5b5bd6) 42%,var(--chat-line));
    background:var(--chat-panel);
}
.support-inbox-search input{
    min-width:0;
    width:100%;
    border:0;
    outline:0;
    background:transparent;
    color:var(--chat-text);
    font:inherit;
    font-size:9px;
}
.support-inbox-search input::placeholder{color:color-mix(in srgb,var(--chat-muted) 78%,transparent)}
.support-search-empty{min-height:220px}
.support-thread-list [hidden]{display:none!important}

.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;
}

@media(max-width:760px){
    .modern-chat-jump-bottom{right:10px;bottom:10px}
    .modern-chat-compose-hint{
        max-width:calc(100% - 18px);
        overflow:hidden;
        white-space:nowrap;
        text-overflow:ellipsis;
    }
    .modern-support-grid.has-selection .support-conversation-panel{
        height:calc(100svh - 170px);
        min-height:520px;
    }
    .support-inbox-panel .support-inbox-header{position:sticky;top:0;z-index:3}
}

@media(max-width:420px){
    .support-inbox-search{min-height:34px}
    .modern-support-grid.has-selection .support-conversation-panel{
        height:calc(100svh - 164px);
        min-height:500px;
    }
}

