/* Kyte identity. Business names, logos, and access stay workspace-specific. */
:root{--bg:#f7f5fc;--card:#fff;--ink:#26074a;--muted:#746b85;--line:#e7e1ef;--blue:#6500ff;--soft:#eee7ff;--wall:#fcfbff;--turquoise:#00d9c0}
body.dark{--bg:#151020;--card:#21182f;--ink:#f6f2ff;--muted:#b4a8c6;--line:#3c2e50;--blue:#b58aff;--soft:#392252;--wall:#191223;--turquoise:#00d9c0}
.kyte-wordmark{display:block;width:112px;height:40px;object-fit:contain;flex-shrink:0}.workspace-brand{display:none;align-items:center;gap:8px;margin-left:18px;padding-left:18px;border-left:1px solid var(--line)}.is-workspace .workspace-brand{display:flex}.brand .mark{background:var(--soft);color:var(--blue)}.dark .kyte-wordmark{background:white;border-radius:8px;padding:4px}.live-avatar,.member-avatar,.live-leader .live-avatar,.profile-big-avatar{background:var(--soft);color:var(--blue)}.company-avatar{background:#d6faf4;color:#087a6d}.dark .company-avatar{background:#143d39;color:#67e8d5}.live-bubble{background:#efecf5}.live-message.mine .live-bubble{background:#e9ddff;color:#26074a}.dark .live-bubble{background:#2d243b}.dark .live-message.mine .live-bubble{background:#47256c;color:#f6f2ff}.message-reactions>button[aria-pressed=true]{background:var(--soft);border-color:var(--blue)}.profile-cover{background:linear-gradient(120deg,#6500ff,#482082)}.dark .profile-cover{background:linear-gradient(120deg,#42206e,#21182f)}.primary,#live-send{background:#6500ff;color:#fff}.primary:hover,#live-send:hover{background:#5200d4}.unread-dot{background:#008b7b}.live-conversation.unread{border-left:3px solid var(--turquoise)}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.auth-card{border-top:3px solid #6500ff}.intro .eyebrow{color:var(--blue)}.intro h1{color:var(--ink)}.intro .feature>span{background:var(--soft);color:var(--blue)}.header-note{color:var(--muted)}
@media(max-width:750px){.kyte-wordmark{width:80px;height:29px}.is-workspace .brand{gap:7px;flex-wrap:nowrap}.workspace-brand{margin-left:0;padding-left:8px;gap:5px;min-width:0}.workspace-brand>span:last-child{min-width:0}.brand .workspace-brand b{font-size:10px;max-width:110px;display:block}.brand .workspace-brand .mark{width:22px;height:22px;flex-shrink:0}.header-note{display:none}.is-workspace .header-profile{margin-right:5px}.is-workspace #crew-compose{margin-left:5px}}
@media(max-width:360px){.brand .workspace-brand b{max-width:75px}.kyte-wordmark{width:66px}}

#search-chat{color:var(--blue);padding:7px;flex-shrink:0}#search-chat svg{width:19px;height:19px}#chat-search-dialog{background:var(--card);color:var(--ink);width:min(560px,94vw);max-height:85dvh;border:1px solid var(--line);border-radius:18px;padding:24px;overflow:auto}#chat-search-dialog::backdrop{background:#26074a80}#chat-search-close{font-size:25px}#chat-search-dialog h2{margin:0;font-size:21px}.chat-search-input{display:flex;gap:8px;align-items:center}.chat-search-input input{min-width:0;margin:0}.chat-search-result{padding:16px 0;border-bottom:1px solid var(--line)}.chat-search-result b{font-size:13px}.chat-search-result time{display:block;color:var(--muted);font-size:11px;margin-top:4px}.chat-search-result p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.5}.chat-search-result mark{background:#d6faf4;color:#075f55;border-radius:3px}.chat-search-result small,#chat-search-status{font-size:12px;color:var(--muted)}#chat-search-more{margin-top:18px}@media(max-width:750px){.live-chat-heading{gap:6px}.live-chat-heading .chat-heading-copy{min-width:0}.live-chat-heading h2{overflow-wrap:anywhere}.live-chat-heading #delete-chat,.live-chat-heading #chat-team-button{padding:5px}}

/* Compact inbox and accessible navigation polish. */
.live-conversation{min-height:68px;padding:10px 16px;transition:background .15s ease;position:relative}
.live-conversation.selected{background:var(--soft);box-shadow:inset 3px 0 var(--blue)}
.live-conversation small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.live-conversation b{font-size:14px;max-width:none}
.conversation-title{min-width:0;gap:8px}.conversation-title b{min-width:0;flex:1}.conversation-title time{flex-shrink:0;font-size:10px}
.live-toolbar nav button{border-radius:12px;min-height:52px;font-size:10px}
.live-toolbar nav .selected{background:var(--soft);color:var(--blue)}
.inbox-search{border:1px solid transparent;border-radius:12px}.inbox-search:focus-within{border-color:var(--blue)}
.inbox-search input:focus{outline:none}
.live-chat-heading{align-items:center}.live-chat-heading h2{font-size:15px}.live-chat-heading p{font-size:11px}
.live-bubble{line-height:1.5}.message-author{font-size:11px}.message-meta{font-size:10px}
.message-reactions>button{min-height:28px;padding:3px 8px}
#live-message-form:focus-within{border-color:var(--blue)}
button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(hover:hover){.live-conversation:not(.selected):hover{background:var(--bg)}.live-toolbar nav button:not(.selected):hover{background:var(--bg);color:var(--ink)}}
@media(max-width:750px){
.live-conversation{min-height:70px;padding:11px 15px;gap:12px}
.live-conversation .live-avatar{width:42px;height:42px}
.live-toolbar nav button{min-height:50px;border-radius:12px;font-size:10px}
.live-toolbar nav .selected{background:var(--soft)}
.live-chat-heading #search-chat,.live-chat-heading #delete-chat,.live-chat-heading #chat-team-button,#live-back{min-width:40px;min-height:44px;display:grid;place-items:center}
#live-send,#emoji-toggle,#photo-add{min-width:42px;min-height:42px}
.live-chat-heading{padding:7px 8px;gap:4px}
.live-chat-heading .chat-heading-copy{flex:1}
}
@media(prefers-reduced-motion:reduce){.live-conversation,.is-online{transition:none}}

/* Intentional in-progress states without shifting the chat layout. */
.draft-label{color:var(--blue);font-weight:650}
.composer-status{margin:4px 8px;font-size:11px;line-height:1.4;color:var(--muted)}
#live-send{position:relative}
#live-send.is-sending{opacity:.7;cursor:wait}
#live-send.is-sending svg{visibility:hidden}
#live-send.is-sending::after{content:"";position:absolute;width:16px;height:16px;left:calc(50% - 8px);top:calc(50% - 8px);border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;box-sizing:border-box;animation:kyte-spin .8s linear infinite}
#live-chat-title:focus{outline:none}
#live-chat-title:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:3px}
#schedule-retry{margin:0 0 14px}
.schedule-loading{opacity:.55;pointer-events:none}
@keyframes kyte-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#live-send.is-sending::after{animation:none}}

/* Team prizes use the same recognition language without confusing custom ranges. */
.prize-card{border:1px solid var(--line);border-radius:22px;background:var(--card);padding:26px;margin:24px 0;overflow:hidden}
.prize-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.prize-top h2{font-size:24px;letter-spacing:-.5px;margin:6px 0 0}.prize-top .eyebrow{font-size:9px;letter-spacing:1.5px}
.prize-periods{display:flex;background:var(--bg);padding:4px;border-radius:12px;gap:3px;flex-shrink:0}.prize-periods button{padding:9px 13px;font-size:12px;color:var(--muted);min-height:40px}.prize-periods button[aria-pressed=true]{background:var(--soft);color:var(--blue);border-radius:9px}
.prize-reward{display:flex;gap:18px;align-items:center;padding:22px 0}.prize-symbol{font-size:33px;display:grid;place-items:center;flex-shrink:0;width:70px;height:70px;border-radius:20px;background:#fff3ce}.dark .prize-symbol{background:#40351f}.prize-reward h3{font-size:26px;letter-spacing:-.5px;line-height:1.2;margin:0;overflow-wrap:anywhere}.prize-reward p{font-size:12px;color:var(--muted);margin:9px 0 0;line-height:1.6}
.prize-leading{border-radius:14px;background:var(--soft);padding:18px 20px}.prize-leading .eyebrow{font-size:9px;color:var(--blue)}.prize-leading p{font-size:19px;font-weight:650;line-height:1.5;margin:5px 0;overflow-wrap:anywhere}.prize-leading strong{white-space:nowrap;color:var(--blue);font-size:13px;margin-left:9px}.prize-leading small{font-size:11px;color:var(--muted)}
.prize-standings{margin-top:14px}.prize-standing{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.prize-standing b{flex:1;overflow-wrap:anywhere;min-width:0}.prize-standing>span:last-child{white-space:nowrap;font-weight:650}.prize-rank{width:15px;color:var(--muted);font-size:11px}.prize-standing .live-avatar{width:32px;height:32px;font-size:10px}
.prize-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.prize-actions button{min-height:42px}#prize-status:empty{display:none}#prize-rules{font-size:10px;line-height:1.7;margin:16px 0 0;max-width:730px}.range-leader{font-size:12px;font-weight:600;color:var(--blue);line-height:1.6}
#prize-dialog{background:var(--card);color:var(--ink);width:min(490px,94vw);max-height:85dvh;border:1px solid var(--line);border-radius:20px;padding:25px;overflow:auto}#prize-dialog::backdrop{background:#26074a80}#prize-dialog h2{font-size:21px;margin:0}#prize-close{font-size:26px;min-width:42px;min-height:42px}#prize-dialog label{display:block;margin-top:22px}#prize-dialog .dialog-actions{gap:12px;margin-top:22px}#prize-dialog .fine{line-height:1.6}#prize-reload{margin:6px 0}
@media(max-width:750px){.prize-card{padding:20px;margin:20px 0}.prize-top{align-items:flex-start;flex-direction:column;gap:14px}.prize-top h2{font-size:23px}.prize-periods{width:100%}.prize-periods button{flex:1}.prize-reward{gap:13px;padding:18px 0}.prize-symbol{width:52px;height:52px;border-radius:16px;font-size:27px}.prize-reward h3{font-size:22px}.prize-leading{padding:16px}.prize-leading p{font-size:17px}.prize-leading strong{display:block;margin:4px 0 0}.prize-standing{gap:9px}.prize-actions .primary{flex:1}}

.prize-previous{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.prize-previous .eyebrow{font-size:9px;color:var(--muted)}.prize-previous h3{font-size:17px;margin:9px 0 5px;overflow-wrap:anywhere}.prize-previous>p:last-child{font-size:12px;line-height:1.7;overflow-wrap:anywhere}

/* Compact actual message bubbles; conversation list retains its original spacing. */
#live-messages .live-message{margin-block:4px;gap:6px}
#live-messages .live-message>.live-avatar{margin-top:3px}
#live-messages .live-bubble{min-width:0;min-height:32px;padding:5px 9px;border-radius:10px;font-size:13px;line-height:1.35}
#live-messages .message-author{font-size:11px;line-height:1.2;margin-bottom:2px}
#live-messages .message-text{display:inline;white-space:pre-wrap;overflow-wrap:anywhere}
#live-messages .message-meta{display:inline-flex;vertical-align:baseline;line-height:1.2;font-size:10px;white-space:nowrap;margin:0 0 0 7px;gap:3px}
#live-messages .message-meta svg{width:11px;height:11px}
