*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#050b15;color:#e9f3ff;font-family:Inter,"Segoe UI",Arial,sans-serif}
body{background:radial-gradient(ellipse at 50% 0,rgba(39,157,214,.14),transparent 42%),#050b15}
.community-wrap{width:min(1160px,calc(100% - 36px));margin:0 auto;padding:62px 0 40px}
.community-hero{text-align:center;padding:12px 0 42px}
.eyebrow{display:inline-block;color:#58d8ff;font-size:11px;font-weight:800;letter-spacing:.18em}
h1{margin:14px 0;font-size:clamp(36px,6vw,68px);line-height:1.04;letter-spacing:-.045em}
h1 span{color:#59d8ff}
.community-hero>p{max-width:620px;margin:0 auto;color:#a6b7ca;font-size:16px;line-height:1.7}
.community-stats{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:26px;flex-wrap:wrap}
.community-stats div{display:grid;gap:3px;min-width:100px}
.community-stats strong{font-size:25px;color:#fff}
.community-stats span,.community-stats small{font-size:12px;color:#8fa2b8}
.community-stats small{flex-basis:100%}
.community-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:18px;align-items:start}
.side-column{display:grid;gap:18px}
.panel{border:1px solid rgba(104,170,214,.18);border-radius:16px;background:linear-gradient(150deg,rgba(16,29,46,.96),rgba(8,16,28,.97));box-shadow:0 18px 45px rgba(0,0,0,.22);padding:22px}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
h2{margin:6px 0 0;font-size:21px}
.live-dot{display:flex;align-items:center;gap:7px;color:#86edb4;font-size:10px;font-weight:800;letter-spacing:.12em}
.live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#6be29a;box-shadow:0 0 12px #6be29a}
.chat-messages{height:390px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:4px 3px 16px}
.chat-message{max-width:92%;align-self:flex-start;border:1px solid rgba(124,164,196,.12);border-radius:5px 13px 13px 13px;background:rgba(255,255,255,.035);padding:10px 12px}
.chat-meta{display:flex;gap:9px;align-items:center;margin-bottom:5px}
.chat-meta b{color:#68dcff;font-size:12px}
.chat-meta time{color:#71839a;font-size:10px}
.chat-message p{margin:0;color:#e0e9f3;font-size:13px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}
.chat-message.admin-public-reply{align-self:flex-end;border-color:rgba(72,203,237,.3);background:rgba(36,138,184,.12)}
.empty-chat{margin:auto;color:#7f93aa;font-size:13px;text-align:center}
.compose{border-top:1px solid rgba(137,172,204,.12);padding-top:14px}
textarea,input{width:100%;border:1px solid rgba(121,161,194,.2);border-radius:9px;background:#07111e;color:#eff8ff;font:inherit;outline:none}
textarea{resize:vertical;min-height:70px;padding:12px;font-size:13px;line-height:1.5}
textarea:focus,input:focus{border-color:#48cbed;box-shadow:0 0 0 3px rgba(72,203,237,.1)}
.compose-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}
.compose-footer span{color:#8297ac;font-size:11px}
button,.guide-panel>a{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:8px;padding:11px 14px;background:linear-gradient(135deg,#44c9ed,#248ab8);color:#04121b;font-size:10px;font-weight:900;letter-spacing:.08em;cursor:pointer;text-decoration:none}
button:hover,.guide-panel>a:hover{filter:brightness(1.1)}
button:disabled{opacity:.55;cursor:wait}
.private-panel>p,.guide-panel>p{color:#9bacc0;font-size:13px;line-height:1.65}
.private-panel form{display:grid;gap:10px}
.private-panel form button{justify-self:start}
.name-form{margin:14px 0;padding:12px;border:1px solid rgba(121,161,194,.14);border-radius:10px;background:rgba(2,9,17,.25)}
.name-form label{display:block;margin-bottom:8px;color:#b6c7d9;font-size:11px}
.name-form>div{display:flex;gap:7px}
.name-form input{min-width:0;padding:10px;font-size:12px}
.name-form button{flex:none}
.name-form small{margin-top:7px}
.private-thread{display:grid;gap:8px;max-height:270px;overflow:auto;margin:12px 0;padding:3px}
.thread-message{max-width:94%;padding:9px 11px;border:1px solid rgba(122,160,191,.17);border-radius:10px;background:rgba(2,9,17,.45)}
.thread-message.from-admin{justify-self:end;border-color:rgba(72,203,237,.3);background:rgba(36,138,184,.12)}
.admin-delete-message{flex:none;padding:4px 7px!important;color:#f2a1a1!important;font-size:8px!important}
.admin-answer header .admin-delete-message{margin-left:auto}
.thread-message .chat-meta .admin-delete-message{margin-left:auto}
.thread-message p{margin:0;color:#d5e3ef;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.empty-thread{color:#8498ad;font-size:11px;line-height:1.5}
.reply-form{display:grid;gap:8px;margin-top:12px}
.reply-form button{justify-self:start}
.private-panel small{display:block;margin-top:13px;color:#798da3;font-size:10px;line-height:1.6}
.guide-panel>a{margin-top:5px}
.notice{min-height:16px;margin:7px 0 0;color:#93e5b3;font-size:11px}
.notice.error{color:#ff9c9c}
.admin-area{margin-top:18px}
.admin-toggle,.quiet-button{background:transparent;border:1px solid rgba(130,166,196,.25);color:#9fb4c9;font-size:10px;letter-spacing:0}
.admin-panel{margin-top:10px}
.admin-login{display:flex;align-items:center;gap:10px;max-width:540px}
.admin-login label{font-size:12px;white-space:nowrap}
.admin-login input{padding:10px;max-width:260px}
.admin-login .remember-admin{display:flex;align-items:center;gap:7px;color:#9fb4c9;font-size:11px}
.admin-login .remember-admin input{width:auto;margin:0;accent-color:#48cbed}
.admin-list{display:grid;gap:10px}
.admin-item{padding:12px;border:1px solid rgba(122,160,191,.17);border-radius:10px;background:rgba(2,9,17,.4)}
.admin-public-entry.waiting{border-color:rgba(236,190,91,.42);background:rgba(74,51,13,.14)}
.admin-public-entry.answered{border-color:rgba(94,212,154,.34);background:rgba(12,62,43,.16)}
.admin-public-entry.admin-public-reply{margin-left:28px;border-color:rgba(72,203,237,.3);background:rgba(36,138,184,.12)}
#adminPublicMessages{gap:7px}
.admin-question-card{padding:0;overflow:hidden}
.admin-question-summary{display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:42px;padding:7px 11px;cursor:pointer;list-style:none}
.admin-question-summary::-webkit-details-marker{display:none}
.admin-question-summary:before{content:"＋";grid-column:1;grid-row:1;color:#71d9f4;font-size:12px}
.admin-question-summary b{grid-column:1;grid-row:1;padding-left:18px;color:#a9dcf2;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-question-preview{min-width:0;color:#d5e3ef;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-question-summary time{color:#8297ac;font-size:10px;white-space:nowrap}
.admin-question-summary .question-status{margin:0}
.admin-question-card[open] .admin-question-summary{border-bottom:1px solid rgba(137,172,204,.12);background:rgba(255,255,255,.025)}
.admin-question-card[open] .admin-question-summary:before{content:"−"}
.admin-question-detail{padding:10px 12px}
.admin-question-body{margin:0 0 9px;padding:9px 11px;border-left:2px solid rgba(236,190,91,.65);border-radius:0 7px 7px 0;background:rgba(2,9,17,.35);white-space:pre-wrap;overflow-wrap:anywhere;color:#e1eaf3;font-size:12px;line-height:1.5}
.admin-answer{margin:6px 0 0 auto;padding:8px 10px;max-width:92%;border:1px solid rgba(72,203,237,.24);border-radius:8px;background:rgba(36,138,184,.1)}
.admin-answer header{display:flex;justify-content:space-between;gap:10px;margin:0 0 4px;color:#72d7f3;font-size:10px}
.admin-answer header time{color:#8297ac}
.admin-answer p{margin:0;color:#d5e3ef;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.admin-question-detail .admin-message-actions{align-items:center;margin-top:8px}
.admin-question-detail .public-reply-form{flex-basis:100%;grid-template-columns:minmax(0,1fr) auto}
.admin-question-detail .public-reply-form textarea{min-height:42px;max-height:90px;resize:vertical}
.admin-question-detail .public-reply-form button,.admin-question-detail .quiet-button{padding:8px 10px;font-size:9px}
.admin-question-detail .public-reply-form .notice{margin:0}
.question-status{margin-left:auto;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap}
.question-status.waiting{color:#ffd889;background:rgba(155,105,18,.22)}
.question-status.answered{color:#89edb7;background:rgba(32,126,79,.22)}
.admin-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}
.admin-question-filter{width:auto;max-width:100%;margin:0 0 12px;padding:9px 12px;border:1px solid rgba(121,161,194,.2);border-radius:9px;background:#07111e;color:#eff8ff;font:inherit;font-size:12px}
.admin-item header{display:flex;justify-content:space-between;color:#72d7f3;font-size:11px;margin-bottom:7px}
.admin-item p{white-space:pre-wrap;overflow-wrap:anywhere;color:#d5e3ef;font-size:13px;line-height:1.5}
.admin-message-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.public-reply-form{flex:1 1 420px;grid-template-columns:minmax(0,1fr) auto;align-items:start;margin:4px 0 0}
.public-reply-form textarea{grid-column:1/-1;min-height:54px}
.public-reply-form .notice{grid-column:1/-1}
.admin-public-help{margin:4px 0 12px;color:#8fa2b8;font-size:12px}
.privacy-note{max-width:900px;margin:24px auto 0;color:#74889f;text-align:center;font-size:11px;line-height:1.6}
.privacy-note a{color:#61cce9}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.trap-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
#inboxLength,#chatLength{font-size:10px;color:#758ba2}
[hidden]{display:none!important}
@media(max-width:800px){.community-wrap{padding-top:36px}.community-grid{grid-template-columns:1fr}.chat-messages{height:340px}.panel{padding:17px}}
@media(max-width:480px){.community-wrap{width:calc(100% - 22px)}.community-stats{gap:18px}.compose-footer{align-items:flex-start;flex-direction:column}.compose-footer button{width:100%}.admin-login{align-items:stretch;flex-direction:column}.admin-login input{max-width:none}}
@media(max-width:640px){.admin-question-summary{grid-template-columns:minmax(0,1fr) auto;gap:5px 8px}.admin-question-summary b{grid-column:1;grid-row:1}.admin-question-preview{grid-column:1;grid-row:2}.admin-question-summary time{grid-column:2;grid-row:1}.admin-question-summary .question-status{grid-column:2;grid-row:2}.admin-answer{max-width:100%}.admin-question-detail .public-reply-form{grid-template-columns:1fr}.admin-question-detail .public-reply-form button{justify-self:start}}

/* Keep the conversation visible near the top of the community page. */
.community-wrap{padding-top:14px}
.community-hero{padding:0 0 10px}
.community-hero>.eyebrow,.community-hero>p,.community-stats{display:none}
.community-hero h1{margin:0;font-size:clamp(22px,2.8vw,30px);line-height:1.12;letter-spacing:-.02em}
.community-hero h1 br{display:none}
.community-grid{gap:14px}
.chat-panel>.panel-heading{margin-bottom:8px}
.chat-panel>.panel-heading h2{font-size:17px}
.chat-messages{height:min(390px,calc(100svh - 350px));min-height:240px}
@media(max-width:800px){.community-wrap{padding-top:10px}.community-hero{padding-bottom:7px}.community-hero h1{font-size:23px}.community-grid{gap:12px}.chat-messages{height:min(330px,calc(100svh - 330px));min-height:220px}}
