.comms-stage.auth-stage{display:block;place-items:normal;padding:1.25rem var(--content-gutter)}#comms{--color-canvas:transparent;--color-surface:color-mix(in srgb,var(--color-white) 9%,transparent);--color-surface-secondary:color-mix(in srgb,var(--color-white) 7%,transparent);--color-surface-tertiary:color-mix(in srgb,var(--color-white) 13%,transparent);--color-line:var(--auth-line);--color-line-strong:var(--auth-line-strong);--color-text:var(--color-white);--color-text-secondary:var(--auth-muted);--color-text-tertiary:#b8c9df;--color-accent:var(--auth-sky);--color-accent-hover:color-mix(in srgb,var(--auth-sky) 82%,var(--color-white));--color-accent-ink:var(--auth-deep);--color-accent-soft:color-mix(in srgb,var(--auth-sky) 18%,transparent);--color-accent-ring:color-mix(in srgb,var(--auth-sky) 38%,transparent);--color-danger-soft:color-mix(in srgb,var(--color-danger) 24%,transparent);--shadow-accent:0 0.5rem 1.5rem color-mix(in srgb,var(--auth-sky) 22%,transparent);--focus-ring:0 0 0 3px color-mix(in srgb,var(--auth-pink) 55%,transparent);--comms-reading:#102541;--comms-input:#1c3554;--comms-float:color-mix(in srgb,var(--auth-deep) 94%,var(--color-white));position:relative;display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1rem;height:calc(100dvh - var(--navigation-bar-height) - env(safe-area-inset-top) - 2.5rem);min-height:420px;margin:0 auto;color:var(--color-text);color-scheme:dark}#comms .comms-pane{min-height:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--color-white) 16%,transparent);border-radius:clamp(0.75rem,1vw,1rem);background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 11%,transparent),color-mix(in srgb,var(--color-white) 4%,transparent));box-shadow:0 1.75rem 5rem rgba(2,21,55,0.3),inset 0 1px color-mix(in srgb,var(--color-white) 8%,transparent);backdrop-filter:blur(1rem);-webkit-backdrop-filter:blur(1rem)}#comms:not(.is-empty) .comms-sidebar-scroll,#comms .comms-room{background:var(--comms-reading)}#comms.is-empty .comms-pane{border-style:dashed;border-color:var(--auth-line-strong);background:color-mix(in srgb,var(--color-white) 3%,transparent);box-shadow:none}#comms .comms-ghost{display:flex;flex-direction:column;gap:0.85rem;padding:1.15rem 1.1rem;opacity:0.5}#comms .comms-ghost .comms-large-title{margin-bottom:0}#comms .comms-ghost-search{height:2.4rem;border-radius:var(--radius-pill);background:var(--color-surface-secondary)}#comms .comms-ghost-row{display:grid;grid-template-columns:2.75rem minmax(0,1fr);align-items:center;gap:0.8rem;height:2.75rem}#comms .comms-ghost-row::before{content:"";height:100%;border-radius:50%;background:var(--color-surface-tertiary)}#comms .comms-ghost-row::after{content:"";width:70%;height:0.7rem;border-radius:var(--radius-pill);background:var(--color-surface-tertiary)}#comms .comms-ghost-row:nth-of-type(odd)::after{width:52%}#comms .comms-ghost-detail{display:flex;overflow-y:auto;overscroll-behavior:contain;padding:clamp(1rem,3vw,2.5rem)}#comms .comms-empty{flex:none;width:min(100%,36rem);margin:auto;background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 13%,transparent),color-mix(in srgb,var(--color-white) 6%,transparent))}#comms .comms-empty .auth-card-title{margin-bottom:0.65rem;font-size:clamp(1.6rem,1.2rem + 1.2vw,2.1rem)}#comms .comms-empty-lede{margin:0;color:var(--auth-muted);font-size:1rem;line-height:1.6;text-wrap:pretty}#comms .comms-empty-actions{margin:1.5rem 0 1.9rem}#comms .comms-empty-closed{margin:0.75rem 0 0;color:var(--auth-muted);font-size:0.95rem;line-height:1.55}#comms .comms-empty-closed a{color:var(--auth-sky);font-weight:600;text-underline-offset:3px}#comms .comms-empty-next{margin:0 0 0.75rem;color:var(--auth-muted);font-family:var(--font-ui);font-size:0.78rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}#comms .comms-empty-steps{gap:0.5rem}#comms .comms-empty-steps li{padding:0.65rem 0.85rem;line-height:1.45}#comms .comms-empty-steps li.is-done{opacity:0.72}#comms .comms-empty-steps li.is-done::before{content:"\2713";color:var(--auth-sky)}#comms label{margin:0}.comms-sidebar{display:flex;flex-direction:column}.comms-sidebar-head{flex:none;padding:1.15rem 1.1rem 0.75rem}.comms-large-title{margin:0 0 0.75rem 0.15rem;font-size:1.75rem;font-weight:800;letter-spacing:-0.03em;line-height:1.1}.comms-sidebar-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 0.6rem 1rem;scrollbar-gutter:stable}.comms-sidebar-scroll .notice{margin:0.2rem 0.4rem 0.9rem}.comms-section:not(.hidden) ~ .comms-section{margin-top:1.1rem}.comms-section-head{display:flex;align-items:center;justify-content:space-between;padding:0.35rem 0.65rem 0.4rem}.comms-section-head h3{font-family:var(--font-ui);font-size:1.08rem;letter-spacing:-0.015em}.comms-threads{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.comms-threads-empty{margin:0.2rem 0.5rem;padding:0.85rem 1rem;border-radius:var(--radius-medium);background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:0.85rem;line-height:1.45}.comms-thread{position:relative;display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:center;column-gap:0.8rem;padding:0.7rem 0.75rem;border-radius:12px;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast)}.comms-thread + .comms-thread::before{content:"";position:absolute;top:0;left:4.3rem;right:0.75rem;height:1px;background:var(--color-line)}.comms-thread:hover{background:var(--color-surface-secondary)}.comms-thread:active{background:var(--color-surface-tertiary)}.comms-thread:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.comms-thread.is-active,.comms-thread.is-active:hover{background:#23476a;box-shadow:inset 3px 0 var(--color-accent)}.comms-thread.is-active::before,.comms-thread.is-active + .comms-thread::before{opacity:0}.comms-thread.htmx-request{opacity:0.6}.comms-thread.is-filtered{display:none!important}.comms-thread-avatar{--sender-hue:210;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background:linear-gradient(160deg,hsl(var(--sender-hue) 70% 78%),hsl(var(--sender-hue) 60% 58%));color:#ffffff;font-size:1.05rem;font-weight:700;letter-spacing:0.01em;text-shadow:0 1px 1px rgba(0,0,0,0.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.35)}.comms-thread-meta{min-width:0;display:grid;gap:0.15rem}.comms-thread-title{font-weight:500;font-size:0.93rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-thread:has(.comms-unread:not(:empty)) .comms-thread-title{font-weight:700}.comms-thread:has(.comms-unread:not(:empty)) .comms-thread-sub{color:var(--color-text-secondary)}.comms-thread-sub{font-size:0.875rem;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-thread-side{display:grid;justify-items:end;gap:0.3rem;align-self:start;padding-top:0.1rem}.comms-thread-side time{font-size:0.8125rem;color:var(--color-text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums}.comms-unread:empty{display:none}.comms-unread{display:inline-flex;align-items:center;justify-content:center;min-width:1.3rem;height:1.3rem;padding:0 0.4rem;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font-size:0.7rem;font-weight:700;animation:pop-in var(--transition-slow)}.comms-detail{display:flex;flex-direction:column}.comms-detail-head{display:flex;align-items:center;gap:0.4rem;min-height:3.5rem;padding:0.5rem 0.75rem;border-bottom:1px solid var(--color-line);background:color-mix(in srgb,var(--color-white) 4%,transparent)}.comms-title{flex:1 1 auto;min-width:0;padding-left:0.35rem;font-family:var(--font-display);font-size:1.3rem;font-weight:800;letter-spacing:-0.025em;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-tools{display:flex;align-items:center;gap:0.25rem}.comms-back{display:none}.comms-bell.is-active{color:var(--color-accent);background:var(--color-accent-soft)}.comms-bell.is-active svg{animation:ring 600ms var(--ease-standard)}.comms-closed-tag{color:var(--color-text-tertiary);font-size:0.72rem;font-weight:600;letter-spacing:0.02em;text-transform:uppercase}.comms-closed-line{padding:0 0.5rem;color:var(--color-text-secondary);font-size:0.88rem;white-space:nowrap}.comms-title-link{color:inherit;text-decoration:none}.comms-title-link:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.comms-title-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}#comms-attachments-btn[disabled]{color:var(--color-text-tertiary);filter:grayscale(1)}.comms-detail-body{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.comms-detail-body.htmx-request::after{content:"";position:absolute;inset:0;z-index:5;background:rgba(2,21,55,0.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.comms-placeholder{flex:1 1 auto;display:grid;place-items:center;padding:2rem;background:var(--color-canvas)}.comms-placeholder-card{display:grid;justify-items:center;gap:0.75rem;max-width:22rem;padding:1.75rem 2rem;border:1px solid var(--color-line);border-radius:var(--radius-large);background:var(--color-surface);color:var(--color-text-secondary);text-align:center;font-size:0.95rem;line-height:1.5}.comms-placeholder-card svg{width:2rem;height:2rem;color:var(--color-text-tertiary)}.comms-room{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--color-canvas)}.comms-banner{position:absolute;top:0.6rem;left:50%;z-index:4;padding:0.45rem 0.9rem;border-radius:var(--radius-pill);background:rgba(29,29,31,0.92);color:#ffffff;font-size:0.82rem;font-weight:500;box-shadow:var(--shadow-2);transform:translateX(-50%);animation:drop-in var(--transition-slow)}.comms-banner.is-danger{background:var(--color-danger)}.comms-log{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1.25rem 2.25rem 1rem;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){.comms-log{scroll-behavior:auto}}.comms-log-top{display:flex;justify-content:center;min-height:2.5rem;padding:0.5rem;color:var(--color-text-tertiary);font-size:0.78rem}.comms-log-top.is-loading::before{content:"";width:1.1rem;height:1.1rem;border:2px solid var(--color-line-strong);border-top-color:var(--color-text-secondary);border-radius:50%;animation:spin 800ms linear infinite}.comms-messages{display:flex;flex-direction:column;gap:0.2rem}.comms-day{align-self:center;margin:0.9rem 0 0.5rem;padding:0.2rem 0.7rem;border-radius:var(--radius-pill);background:var(--color-surface-tertiary);color:var(--color-text-secondary);font-size:0.72rem;font-weight:600;letter-spacing:0.02em}.comms-empty-log{margin:auto;padding:1rem 1.5rem;border:1px dashed var(--color-line-strong);border-radius:var(--radius-medium);color:var(--color-text-secondary);font-size:0.9rem;text-align:center}.comms-msg{--sender-hue:210;position:relative;display:flex;flex-direction:column;align-items:flex-start;max-width:min(72%,640px);animation:rise-in var(--transition-slow)}.comms-msg.is-mine{align-self:flex-end;align-items:flex-end}.comms-msg.is-continued{margin-top:-0.05rem}.comms-msg.is-continued .comms-msg-meta{display:none}.comms-msg-meta{display:flex;align-items:baseline;gap:0.5rem;margin:0.5rem 0.6rem 0.2rem;font-size:0.8125rem;color:var(--color-text-tertiary)}.comms-msg-sender{font-weight:600;color:hsl(var(--sender-hue) 85% 80%)}.comms-msg.is-mine .comms-msg-sender{display:none}.comms-bubble{position:relative;padding:0.65rem 0.95rem;border:1px solid var(--color-line);border-radius:var(--radius-large);background:var(--color-surface);color:var(--color-text);font-size:0.97rem;line-height:1.55;overflow-wrap:anywhere;transition:opacity var(--transition-fast)}.comms-msg .comms-bubble{background:hsl(var(--sender-hue) 60% 70% / 0.16);border-color:hsl(var(--sender-hue) 70% 80% / 0.3)}.comms-msg.is-mine .comms-bubble{background:var(--color-accent);border-color:transparent;color:var(--color-accent-ink)}.comms-msg.is-continued .comms-bubble{border-top-left-radius:8px}.comms-msg.is-mine.is-continued .comms-bubble{border-top-left-radius:var(--radius-large);border-top-right-radius:8px}.comms-msg.is-sending .comms-bubble{opacity:0.6}.comms-msg.is-failed .comms-bubble{background:var(--color-danger-soft);border-color:var(--color-danger);color:var(--color-text)}.comms-bubble p{margin:0}.comms-bubble p + p{margin-top:0.4rem}.comms-bubble a{color:inherit;text-decoration:underline;text-underline-offset:2px}.comms-bubble ul,.comms-bubble ol{margin:0.3rem 0;padding-left:1.2rem}.comms-bubble a[data-email]{font-weight:600;text-decoration:none}.comms-msg-foot{display:flex;align-items:center;gap:0.5rem;margin:0.15rem 0.6rem 0;font-size:0.8125rem;color:var(--color-text-tertiary)}.comms-msg-foot:empty{display:none}.comms-msg.is-failed .comms-msg-foot{color:var(--auth-error)}.comms-msg-foot button{padding:0.1rem 0.45rem;border:0;border-radius:var(--radius-pill);background:var(--color-danger);color:#ffffff;font-size:0.7rem;font-weight:700;cursor:pointer}.comms-atts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0.35rem;width:min(100%,420px);margin-top:0.3rem}.comms-atts:has(>:only-child){grid-template-columns:1fr}.comms-atts:empty{display:none}.comms-att-list{display:grid;gap:0.35rem;width:min(100%,420px);margin-top:0.3rem}.comms-att{display:block;position:relative;border-radius:var(--radius-medium);overflow:hidden;background:var(--color-surface-tertiary);text-decoration:none;color:inherit}.comms-att:hover{text-decoration:none}.comms-att--image img,.comms-att--video video{display:block;width:100%;aspect-ratio:4 / 3;max-height:320px;object-fit:cover;cursor:zoom-in;transition:transform var(--transition-slow)}.comms-att--video video{object-fit:contain;background:#000000;cursor:default}.comms-att--image:hover img{transform:scale(1.02)}.comms-att--file{display:flex;align-items:center;gap:0.55rem;padding:0.55rem 0.7rem;border:1px solid var(--color-line);background:var(--color-surface);font-size:0.85rem;font-weight:500}.comms-att--file svg{width:1.1rem;height:1.1rem;color:var(--color-text-secondary)}.comms-att--file span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comms-jump{position:absolute;right:1rem;bottom:5.5rem;z-index:3;display:inline-flex;align-items:center;gap:0.4rem;padding:0.45rem 0.85rem 0.45rem 0.65rem;border:0;border-radius:var(--radius-pill);background:var(--comms-float);color:var(--color-accent);font-size:0.82rem;font-weight:600;box-shadow:var(--shadow-2);cursor:pointer;animation:pop-in var(--transition-slow)}.comms-jump svg{width:1rem;height:1rem}.comms-composer{flex:none;padding:0.75rem 1.5rem 1.1rem;border-top:1px solid var(--color-line-strong);background:var(--comms-reading)}.comms-composer-row{display:flex;align-items:flex-end;gap:0.65rem}.comms-attach{cursor:pointer}.comms-attach.is-busy{opacity:0.45;pointer-events:none}.comms-input-pill{flex:1 1 auto;min-width:0;display:flex;align-items:center;min-height:2.75rem;padding:0.55rem 1.1rem;border:1px solid #738ba8;border-radius:1.4rem;background:var(--comms-input);transition:background var(--transition-fast),border-color var(--transition-fast)}.comms-input-pill:focus-within{border-color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:2px}#comms .comms-input,#comms .comms-input:hover,#comms .comms-input:focus,#comms .comms-input:focus-visible,#comms .comms-input:active{display:block;width:100%;min-height:1.45em;max-height:9rem;margin:0;padding:0;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent;resize:none;color:var(--color-text);font:inherit;font-size:0.97rem;line-height:1.45;overflow-y:auto}#comms .comms-input::placeholder{color:var(--color-text-tertiary);opacity:1}.comms-send{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:var(--color-accent);color:var(--color-accent-ink);box-shadow:var(--shadow-accent);cursor:pointer;transition:transform var(--transition-fast),opacity var(--transition-fast),box-shadow var(--transition-fast)}.comms-send svg{width:1.2rem;height:1.2rem}.comms-send:hover:not([disabled]){transform:translateY(-1px)}.comms-send:active:not([disabled]){transform:scale(0.92)}.comms-send[disabled]{opacity:0.35;box-shadow:none;cursor:default}.comms-staged{display:flex;flex-wrap:wrap;gap:0.45rem;padding:0 0 0.5rem 3rem}.comms-staged:empty{display:none}.comms-pill{--progress:0;position:relative;display:inline-flex;align-items:center;gap:0.45rem;max-width:16rem;padding:0.3rem 0.4rem 0.3rem 0.3rem;border:1px solid var(--color-line);border-radius:var(--radius-small);background:var(--color-surface-secondary);font-size:0.8rem;animation:pop-in var(--transition-slow)}.comms-pill-thumb{width:2rem;height:2rem;border-radius:7px;object-fit:cover;background:var(--color-surface-tertiary);flex:none}.comms-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:7px;background:var(--color-surface-tertiary);color:var(--color-text-secondary);flex:none}.comms-pill-icon svg{width:1rem;height:1rem}.comms-pill-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.comms-pill-state{color:var(--color-text-tertiary);font-size:0.72rem;white-space:nowrap}.comms-pill.is-failed{background:var(--color-danger-soft);border-color:var(--color-danger)}.comms-pill.is-failed .comms-pill-state{color:var(--auth-error)}.comms-pill-bar{position:absolute;left:0.3rem;right:0.3rem;bottom:2px;height:2px;border-radius:2px;background:var(--color-accent);transform-origin:left;transform:scaleX(var(--progress,0));transition:transform 160ms linear}.comms-pill.is-ready .comms-pill-bar,.comms-pill.is-failed .comms-pill-bar{display:none}.comms-pill button{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border:0;border-radius:50%;background:transparent;color:var(--color-text-tertiary);cursor:pointer;flex:none}.comms-pill button:hover{background:var(--color-surface-tertiary);color:var(--color-text)}.comms-pill button svg{width:0.9rem;height:0.9rem}.comms-mentions{list-style:none;margin:0 0 0.5rem 3rem;padding:0.35rem;max-width:22rem;border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--comms-float);box-shadow:var(--shadow-2);animation:pop-in var(--transition-fast)}.comms-mentions li{display:grid;grid-template-columns:1.9rem minmax(0,1fr);grid-template-areas:"avatar name" "avatar email";column-gap:0.6rem;align-items:center;padding:0.4rem 0.55rem;border-radius:var(--radius-small);cursor:pointer}.comms-mentions li.is-active,.comms-mentions li:hover{background:var(--color-accent-soft)}.comms-mention-avatar{grid-area:avatar;display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:50%;background:hsl(var(--sender-hue) 70% 90%);color:hsl(var(--sender-hue) 55% 35%);font-size:0.8rem;font-weight:700}.comms-mention-name{grid-area:name;font-size:0.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-mention-email{grid-area:email;font-size:0.74rem;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-msg-body{display:flex;align-items:center;gap:0.45rem;max-width:100%}.comms-msg.is-mine .comms-msg-body{flex-direction:row-reverse}.comms-msg-content{display:flex;flex-direction:column;align-items:flex-start;flex:0 1 auto;min-width:0}.comms-msg.is-mine .comms-msg-content{align-items:flex-end}.comms-msg-more{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:1px solid var(--color-line-strong);border-radius:50%;background:var(--color-surface);color:var(--color-text-secondary);box-shadow:var(--shadow-1);cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.comms-msg-more svg{width:1.15rem;height:1.15rem;pointer-events:none}.comms-msg:hover .comms-msg-more{color:var(--color-text);border-color:var(--color-text-tertiary)}.comms-msg .comms-msg-more:hover,.comms-msg .comms-msg-more:focus-visible{background:color-mix(in srgb,var(--color-white) 26%,transparent);border-color:color-mix(in srgb,var(--color-white) 34%,transparent);color:#ffffff;outline:none}@media (hover:hover) and (pointer:fine){.comms-msg-more{opacity:0.75}.comms-msg:hover .comms-msg-more,.comms-msg.is-menu-open .comms-msg-more,.comms-msg-more:focus-visible{opacity:1}}.comms-msg-more:active{transform:scale(0.92)}.comms-msg[data-id=""] .comms-msg-more{visibility:hidden}.comms-msg-flags{display:inline-flex;gap:0.25rem;margin:0.2rem 0.6rem 0}.comms-msg-flags:empty{display:none}.comms-flag{display:inline-flex;align-items:center;gap:0.25rem;padding:0.15rem 0.45rem;border:0;border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);font-size:0.7rem;cursor:pointer}.comms-flag svg{width:0.85rem;height:0.85rem}.comms-msg.is-pinned .comms-bubble{box-shadow:0 0 0 2px var(--color-accent-soft)}.comms-msg.is-editing .comms-bubble{outline:2px dashed var(--color-accent);outline-offset:2px}.comms-msg.is-flash .comms-bubble,.comms-msg.is-flash .comms-atts{animation:comms-flash 1.4s ease}@keyframes comms-flash{0%,60%{box-shadow:0 0 0 4px var(--color-accent-soft)}100%{box-shadow:none}}.comms-edited{margin-left:0.4rem;font-size:0.72rem;font-style:normal;opacity:0.65;cursor:pointer}#comms .comms-quote{display:flex;align-items:center;gap:0.6rem;width:100%;max-width:100%;margin:0 0 0.55rem;padding:0.42rem 0.7rem 0.42rem 0.6rem;border:0;border-left:3px solid hsl(var(--sender-hue,215) 70% 70%);border-radius:8px;background:rgba(255,255,255,0.07);color:var(--color-text-secondary);font:400 0.82rem/1.35 var(--font-ui);text-align:left;cursor:pointer;box-shadow:none;transition:background var(--transition-fast)}#comms .comms-quote:hover{background:rgba(255,255,255,0.12)}#comms .comms-quote--static{cursor:default;margin:0 0 0.9rem}#comms .comms-quote>span{display:grid;gap:0.05rem;min-width:0;flex:1 1 auto}#comms .comms-quote b{font-size:0.74rem;font-weight:600;letter-spacing:0.01em;color:hsl(var(--sender-hue,215) 85% 80%)}#comms .comms-quote>span>span{font-size:0.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#comms .comms-quote img{width:2.2rem;height:2.2rem;border-radius:6px;object-fit:cover;flex:none}#comms .comms-msg.is-mine .comms-quote{background:rgba(2,21,55,0.1);border-left-color:var(--auth-deep);color:color-mix(in srgb,var(--auth-deep) 82%,transparent)}#comms .comms-msg.is-mine .comms-quote:hover{background:rgba(2,21,55,0.16)}#comms .comms-msg.is-mine .comms-quote b{color:var(--auth-deep)}#comms .comms-msg-text{min-width:0}.comms-linkcard{display:grid;grid-template-columns:minmax(0,1fr);margin-top:0.3rem;max-width:min(100%,420px);border:1px solid var(--color-line);border-radius:var(--radius-medium);overflow:hidden;background:var(--color-surface);color:var(--color-text);text-decoration:none;transition:box-shadow var(--transition-fast)}.comms-linkcard:hover{box-shadow:var(--shadow-1);text-decoration:none}.comms-linkcard img{width:100%;max-height:180px;object-fit:cover;display:block}.comms-linkcard-text{display:grid;gap:0.15rem;padding:0.55rem 0.75rem;min-width:0}.comms-linkcard small{font-size:0.72rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:0.04em}.comms-linkcard b{font-size:0.88rem;font-weight:600;line-height:1.3}.comms-linkcard-text>span{font-size:0.8rem;color:var(--color-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.comms-msg--system{align-self:center;max-width:92%;margin:0.35rem 0;animation:none}.comms-system{display:inline-flex;align-items:center;gap:0.45rem;padding:0.35rem 0.8rem;border-radius:var(--radius-pill);background:var(--color-surface-tertiary);color:var(--color-text-secondary);font-size:0.78rem;line-height:1.35}.comms-system svg{width:0.95rem;height:0.95rem;color:var(--color-text-tertiary)}.comms-system time{color:var(--color-text-tertiary);font-size:0.7rem}#comms .comms-pin{display:flex;align-items:center;gap:0.4rem;margin:0.55rem 0.9rem 0;padding:0.3rem 0.35rem 0.3rem 0.4rem;border:1px solid var(--color-line);border-radius:var(--radius-medium);background:linear-gradient(90deg,var(--color-accent-soft),var(--color-surface) 60%);box-shadow:var(--shadow-1)}#comms .comms-pin-body{display:flex;align-items:center;gap:0.65rem;flex:1 1 auto;min-width:0;margin:0;padding:0.2rem 0.3rem;border:0;border-radius:10px;background:transparent;color:var(--color-text);font:400 0.9rem/1.3 var(--font-ui);text-align:left;cursor:pointer;box-shadow:none;transition:background var(--transition-fast)}#comms .comms-pin-body:hover{background:rgba(255,255,255,0.08)}#comms .comms-pin-icon{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;flex:none;border-radius:50%;background:var(--color-accent);color:var(--color-accent-ink)}#comms .comms-pin-icon svg{width:1rem;height:1rem}#comms .comms-pin-meta{display:grid;gap:0.05rem;min-width:0}#comms .comms-pin-label{font-size:0.7rem;font-weight:600;letter-spacing:0.03em;text-transform:uppercase;color:var(--color-accent)}#comms .comms-pin-text{font-size:0.9rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#comms .comms-pin-clear{display:inline-flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;flex:none;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-text-tertiary);cursor:pointer;box-shadow:none;transition:background var(--transition-fast),color var(--transition-fast)}#comms .comms-pin-clear:hover{background:var(--color-surface-secondary);color:var(--color-text)}#comms .comms-pin-clear svg{width:0.85rem;height:0.85rem}#comms .comms-menu{position:fixed;z-index:900;min-width:13rem;margin:0;padding:0.4rem;border:1px solid var(--auth-line-strong);border-radius:var(--radius-medium);background:color-mix(in srgb,var(--comms-float) 90%,transparent);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 0 0 1px var(--color-line),var(--shadow-2);font-family:var(--font-ui);opacity:0;transform:scale(0.94) translateY(-6px);transform-origin:top left;transition:opacity 120ms ease,transform 180ms var(--ease-standard)}#comms .comms-menu.is-open{opacity:1;transform:none}#comms .comms-menu [hidden]{display:none!important}#comms .comms-menu button{display:flex;align-items:center;gap:0.7rem;width:100%;margin:0;padding:0.55rem 0.7rem;border:0;border-radius:9px;background:transparent;color:var(--color-text);font:400 0.9rem/1.2 var(--font-ui);text-align:left;white-space:nowrap;cursor:pointer;box-shadow:none;transition:background var(--transition-fast)}#comms .comms-menu button + button{margin-top:1px}#comms .comms-menu button svg{width:1.05rem;height:1.05rem;color:var(--color-text-secondary)}#comms .comms-menu button:hover,#comms .comms-menu button:focus-visible{background:var(--color-accent);color:var(--color-accent-ink);outline:none}#comms .comms-menu button:hover svg,#comms .comms-menu button:focus-visible svg{color:var(--color-accent-ink)}#comms .comms-menu button:active{transform:scale(0.98)}.comms-context{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0.5rem;margin:0 0 0.5rem 3rem;padding:0.4rem 0.4rem 0.4rem 0.7rem;border-left:3px solid var(--color-accent);border-radius:10px;background:var(--color-surface-secondary);font-size:0.82rem}.comms-context-label{color:var(--color-accent);font-weight:600;white-space:nowrap}.comms-context-excerpt{color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-context-close{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border:0;border-radius:50%;background:transparent;color:var(--color-text-tertiary);cursor:pointer}.comms-context-close:hover{background:var(--color-surface-tertiary);color:var(--color-text)}.comms-context-close svg{width:0.85rem;height:0.85rem}.comms-typing-line{display:flex;align-items:center;gap:0.45rem;padding:0.15rem 1.5rem 0.35rem;font-size:0.78rem;color:var(--color-text-tertiary);background:var(--color-canvas)}.comms-typing{display:inline-flex;gap:0.25rem;padding:0.2rem 0.1rem}.comms-typing i{width:0.45rem;height:0.45rem;border-radius:50%;background:var(--color-text-tertiary);animation:blink 1.2s infinite ease-in-out}.comms-typing i:nth-child(2){animation-delay:0.15s}.comms-typing i:nth-child(3){animation-delay:0.3s}.comms-mic{position:relative}.comms-mic.is-recording{color:#ffffff;background:var(--color-danger);animation:pulse-danger 1.2s ease-in-out infinite}.comms-mic.is-cancelling{background:var(--color-text-tertiary);animation:none}.comms-mic-timer{position:absolute;top:-1.6rem;left:50%;transform:translateX(-50%);font-size:0.72rem;font-variant-numeric:tabular-nums;color:var(--auth-error);white-space:nowrap}.comms-room.is-recording .comms-input-pill,.comms-room.is-recording .comms-attach{opacity:0.35;pointer-events:none}.comms-att--audio{display:grid;grid-template-columns:auto minmax(8rem,1fr) auto;align-items:center;gap:0.6rem;min-width:14rem;padding:0.5rem 0.75rem 0.5rem 0.5rem;border:1px solid var(--color-line);background:var(--color-surface)}.comms-audio-play{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border:0;border-radius:50%;background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer}.comms-audio-play svg{width:1.1rem;height:1.1rem}.comms-audio-track{position:relative;height:4px;border-radius:2px;background:var(--color-surface-tertiary);cursor:pointer}.comms-audio-bar{position:absolute;inset:0 auto 0 0;width:0;border-radius:2px;background:var(--color-accent);transition:width 120ms linear}.comms-audio-time{font-size:0.74rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}#comms .comms-transcript{grid-column:1 / -1;display:block;width:100%;margin:0.1rem 0 0;padding:0.45rem 0.15rem 0.05rem;border:0;border-top:1px solid var(--color-line);border-radius:0;background:transparent;box-shadow:none;color:var(--color-text-secondary);font:400 0.85rem/1.45 var(--font-ui);text-align:left;cursor:pointer}#comms .comms-transcript>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}#comms .comms-transcript.is-expanded>span{display:block;-webkit-line-clamp:unset}#comms .comms-transcript:hover{color:var(--color-text)}#comms .comms-transcript:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}#comms .comms-transcript.is-pending{color:var(--color-text-tertiary);font-style:italic;cursor:default}#comms .comms-transcript-switch{grid-column:1 / -1;justify-self:start;margin:0.1rem 0 0;padding:0.1rem 0.15rem;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--color-accent);font:600 0.72rem/1.3 var(--font-ui);cursor:pointer}#comms .comms-transcript-switch:hover{text-decoration:underline}#comms .comms-transcript-switch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}body.comms-sheet-open{overflow:hidden}.comms-sheet-wrap{position:fixed;inset:0;z-index:800;display:grid;place-items:end center;overscroll-behavior:contain;font-family:var(--font-ui)}.comms-sheet-wrap [hidden]{display:none!important}.comms-sheet-backdrop{position:absolute;inset:0;background:rgba(8,10,14,0.62);backdrop-filter:blur(6px) saturate(120%);-webkit-backdrop-filter:blur(6px) saturate(120%);opacity:0;transition:opacity 240ms ease}.comms-sheet{position:relative;display:flex;flex-direction:column;width:min(100%,34rem);max-height:86dvh;border:1px solid var(--auth-line);border-radius:var(--radius-xlarge) var(--radius-xlarge) 0 0;background:var(--comms-float);color:var(--color-text);box-shadow:0 -10px 40px rgba(0,0,0,0.18);transform:translateY(24px);opacity:0;transition:transform 260ms var(--ease-standard),opacity 200ms ease}.comms-sheet-wrap.is-open .comms-sheet-backdrop{opacity:1}.comms-sheet-wrap.is-open .comms-sheet{transform:none;opacity:1}.comms-sheet-wrap--wide .comms-sheet{width:min(100%,52rem)}@media (min-width:901px){.comms-sheet-wrap{place-items:center}.comms-sheet{border-radius:var(--radius-xlarge);max-height:80dvh}}.comms-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem 0.5rem 1.25rem}.comms-sheet-head h3{font-family:var(--font-display);font-size:1.3rem;font-weight:800;letter-spacing:-0.025em;line-height:1.3}.comms-sheet-close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-slow)}.comms-sheet-close svg{width:1.4rem;height:1.4rem}.comms-sheet-close:hover{background:var(--color-surface-secondary);color:var(--color-text);transform:rotate(90deg)}.comms-sheet-body{display:grid;gap:0.75rem;align-content:start;min-height:0;padding:0.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain}.comms-sheet-text{margin:0;font-size:0.95rem;line-height:1.5}.comms-chips{display:flex;flex-wrap:wrap;gap:0.45rem}.comms-chip{padding:0.45rem 0.85rem;border:1px solid var(--color-line-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:0.86rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.comms-chip:hover{background:var(--color-accent-soft);border-color:var(--color-accent-soft);color:var(--color-accent)}.comms-chip.is-active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.comms-field{width:100%;min-height:var(--control-height-small);padding:0.6rem 0.8rem;border:1px solid var(--color-line-strong);border-radius:var(--radius-small);background:var(--color-surface);font:inherit;font-size:0.92rem;color:var(--color-text)}.comms-field:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring)}.comms-field-label{margin:0.15rem 0 -0.4rem;font-size:0.78rem;font-weight:600;color:var(--color-text-secondary)}.comms-recipients{position:relative;display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;padding:0.35rem;border:1px solid var(--color-line-strong);border-radius:var(--radius-small);background:var(--color-surface)}.comms-recipients .comms-field{flex:1 1 8rem;min-height:0;border:0;background:transparent;padding:0.3rem 0.4rem;box-shadow:none}.comms-recipient-chip{display:inline-flex;align-items:center;gap:0.3rem;padding:0.2rem 0.3rem 0.2rem 0.6rem;border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);font-size:0.82rem;font-weight:600}.comms-recipient-chip button{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.comms-recipient-chip button svg{width:0.7rem;height:0.7rem}.comms-mentions--inline{position:absolute;left:0;right:0;top:100%;z-index:2;margin:0.25rem 0 0;max-width:none}.comms-primary{min-height:var(--control-height);padding:0 1.1rem;border:0;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font:inherit;font-size:0.95rem;font-weight:600;box-shadow:var(--shadow-accent);cursor:pointer}.comms-primary:hover{background:var(--color-accent-hover)}.comms-primary:disabled{opacity:0.5}.comms-primary.is-danger{background:var(--color-danger-soft);color:var(--color-danger);box-shadow:none}.comms-history{display:grid;gap:0.75rem}.comms-history-row{display:grid;gap:0.25rem}.comms-history-row small{font-size:0.74rem;color:var(--color-text-tertiary)}.comms-history-row .comms-bubble{background:var(--color-surface-secondary);border-color:transparent}.comms-history-row.is-current .comms-bubble{background:var(--color-surface);border-color:var(--color-line-strong)}.comms-sheet-wrap--attachments .comms-sheet-body{display:flex;flex-direction:column;overflow:hidden}.comms-tabs{flex:none;display:flex;gap:0.25rem;padding:0.25rem;border-radius:12px;background:var(--color-surface-secondary);overflow-x:auto;scrollbar-width:none}.comms-tab{flex:1;padding:0.45rem 0.7rem;border:0;border-radius:9px;background:transparent;font:inherit;font-size:0.86rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer}.comms-tab.is-active{background:var(--color-surface-tertiary);color:var(--color-text);box-shadow:var(--shadow-1)}.comms-attachments-footer{flex:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.25rem;padding-top:0.75rem;border-top:1px solid var(--color-line)}.comms-attachments-summary{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.86rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.comms-attachments-download{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;min-height:2.5rem;padding:0 1.2rem;border:0;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font:inherit;font-size:0.9rem;font-weight:600;white-space:nowrap;box-shadow:var(--shadow-accent);cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast),transform var(--transition-fast)}.comms-attachments-download svg{width:1.05rem;height:1.05rem;flex:none}.comms-attachments-download:hover:not(:disabled){background:var(--color-accent-hover)}.comms-attachments-download:active:not(:disabled){transform:scale(0.97)}.comms-attachments-download:disabled{opacity:0.45;box-shadow:none;cursor:default}.comms-attachments-scroll{flex:0 1 auto;display:flex;flex-direction:column;height:min(60dvh,26rem);min-height:0;overflow-y:auto;overscroll-behavior:contain}.comms-attachments-body{flex:1 0 auto;display:flex;flex-direction:column}.comms-attachments-body>.comms-empty-log{margin:auto}.comms-attachments-month{margin:0.75rem 0 0.4rem;font-size:0.8rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:0.04em}.comms-attachments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:0.3rem}.comms-attachments-tile{position:relative;display:block;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--color-surface-tertiary)}.comms-attachments-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 200ms var(--ease-standard)}.comms-attachments-tile:hover img{transform:scale(1.04)}.comms-attachments-badge{position:absolute;right:0.3rem;bottom:0.3rem;padding:0.1rem 0.35rem;border-radius:6px;background:rgba(0,0,0,0.6);color:#ffffff;font-size:0.68rem}.comms-attachments-files{display:grid;gap:0.35rem}.comms-attachments-grid + .comms-attachments-files{margin-top:0.5rem}#comms .comms-attachments-files button.comms-att--file{width:100%;margin:0;color:var(--color-text);font:inherit;font-size:0.85rem;font-weight:500;text-align:left;cursor:pointer;box-shadow:none}.comms-attachments-files .comms-att--file:hover{background:var(--color-surface-secondary)}.comms-attachments-files .comms-att--file svg{flex:none}.comms-attachments-files .comms-att--file span{flex:1 1 auto}.comms-attachments-files .comms-att--file small{flex:none;margin-left:auto;padding-left:0.75rem;color:var(--color-text-tertiary);font-size:0.72rem;white-space:nowrap}.comms-attachments-status{padding:0.75rem;text-align:center;font-size:0.78rem;color:var(--color-text-tertiary)}.comms-attachments-status:empty{display:none}.comms-uploader{--sender-hue:215;flex:none;display:inline-block;max-width:9rem;padding:0.1rem 0.5rem;border-radius:var(--radius-pill);background:hsl(var(--sender-hue) 70% 93%);color:hsl(var(--sender-hue) 55% 32%);font-size:0.7rem;font-style:normal;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comms-attachments-files .comms-att--file .comms-uploader{margin-left:0.5rem}.comms-attachments-tile .comms-uploader{position:absolute;top:0.3rem;left:0.3rem;max-width:calc(100% - 0.6rem);background:hsl(var(--sender-hue) 70% 95% / 0.94);box-shadow:0 1px 3px rgba(0,0,0,0.18)}.comms-uploader.is-mine,.comms-attachments-tile .comms-uploader.is-mine{background:var(--color-accent);color:var(--color-accent-ink)}body.cv-open{overflow:hidden}.cv{position:fixed;inset:0;z-index:1000;display:grid;grid-template-rows:auto minmax(0,1fr) auto;font-family:var(--font-ui);color:#ffffff;-webkit-font-smoothing:antialiased;touch-action:none;user-select:none;-webkit-user-select:none}.cv-backdrop{position:absolute;inset:0;background:rgba(12,12,14,0.94);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);opacity:0;transition:opacity 260ms var(--ease-standard)}.cv.is-open .cv-backdrop{opacity:1}.cv.is-closing .cv-backdrop{opacity:0}.cv-bar{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0.75rem;padding:calc(0.75rem + env(safe-area-inset-top)) 1rem 0.75rem;opacity:0;transform:translateY(-6px);transition:opacity 220ms ease 80ms,transform 260ms var(--ease-standard) 80ms}.cv.is-open .cv-bar{opacity:1;transform:none}.cv.is-zoomed .cv-bar,.cv.is-dragging .cv-bar,.cv.is-closing .cv-bar{opacity:0}.cv-counter{font-size:0.86rem;font-weight:600;color:rgba(255,255,255,0.72);font-variant-numeric:tabular-nums}.cv-caption{justify-self:center;display:inline-flex;align-items:center;gap:0.5rem;min-width:0;max-width:60vw;font-size:0.86rem;color:rgba(255,255,255,0.85)}.cv-caption-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-byline{flex:none;max-width:12rem;padding:0.12rem 0.55rem;border-radius:999px;background:rgba(255,255,255,0.16);color:#ffffff;font-size:0.72rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-byline.is-mine{background:var(--color-accent)}.cv-close{justify-self:end}.cv-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:rgba(255,255,255,0.12);color:#ffffff;cursor:pointer;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background 140ms ease,transform 140ms ease,opacity 200ms ease}.cv-btn svg{width:1.25rem;height:1.25rem}.cv-btn:hover{background:rgba(255,255,255,0.22)}.cv-btn:active{transform:scale(0.92)}.cv-btn:focus-visible{outline:2px solid rgba(255,255,255,0.8);outline-offset:2px}.cv-stage{position:relative;z-index:1;display:grid;place-items:center;min-height:0;padding:0.5rem 1rem}.cv-frame{position:relative;max-width:100%;max-height:100%;border-radius:12px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,0.55);will-change:transform}.cv-img{display:block;max-width:min(96vw,1600px);max-height:calc(100dvh - 9.5rem);object-fit:contain;background:#000000;transform-origin:center;cursor:zoom-in}.cv.is-zoomed .cv-img{cursor:grab}.cv.is-zoomed .cv-frame{overflow:visible;box-shadow:none}.cv-spinner{position:absolute;inset:0;display:grid;place-items:center;background:rgba(0,0,0,0.25)}.cv-spinner::before{content:"";width:2rem;height:2rem;border:2px solid rgba(255,255,255,0.25);border-top-color:#ffffff;border-radius:50%;animation:spin 800ms linear infinite}.cv-nav{position:absolute;top:50%;z-index:3;width:3rem;height:3rem;transform:translateY(-50%);opacity:0;transition:opacity 200ms ease,background 140ms ease}.cv-nav svg{width:1.5rem;height:1.5rem}.cv-nav:active{transform:translateY(-50%) scale(0.92)}.cv-prev{left:1rem}.cv-next{right:1rem}.cv.is-open:hover .cv-nav{opacity:1}.cv-nav[hidden]{display:none}@media (hover:none){.cv.is-open .cv-nav{opacity:0.85}.cv-nav{width:2.6rem;height:2.6rem}.cv-prev{left:0.5rem}.cv-next{right:0.5rem}}.cv.is-open.is-zoomed .cv-nav{opacity:0}.cv-thumbs{position:relative;z-index:2;display:flex;justify-content:center;gap:0.4rem;padding:0.6rem 1rem calc(0.9rem + env(safe-area-inset-bottom));overflow-x:auto;scrollbar-width:none;opacity:0;transform:translateY(8px);transition:opacity 220ms ease 80ms,transform 260ms var(--ease-standard) 80ms}.cv-thumbs::-webkit-scrollbar{display:none}.cv.is-open .cv-thumbs{opacity:1;transform:none}.cv.is-zoomed .cv-thumbs,.cv.is-dragging .cv-thumbs,.cv.is-closing .cv-thumbs{opacity:0}.cv-thumb{flex:none;width:3rem;height:3rem;padding:0;border:2px solid transparent;border-radius:9px;overflow:hidden;background:rgba(255,255,255,0.08);cursor:pointer;opacity:0.55;transition:opacity 140ms ease,border-color 140ms ease,transform 140ms ease}.cv-thumb img{width:100%;height:100%;object-fit:cover;display:block}.cv-thumb:hover{opacity:0.9}.cv-thumb.is-active{opacity:1;border-color:#ffffff;transform:scale(1.06)}@media (prefers-reduced-motion:reduce){.cv *,.cv{transition:none!important;animation:none!important}}@media (max-width:1100px){#comms{grid-template-columns:minmax(250px,300px) minmax(0,1fr)}}@media (max-width:900px){.comms-stage.auth-stage{padding-block:0.75rem}#comms{grid-template-columns:1fr;gap:0;height:calc(100dvh - var(--navigation-bar-height) - env(safe-area-inset-top) - 1.5rem)}#comms.is-empty{height:auto;min-height:calc(100dvh - var(--navigation-bar-height) - env(safe-area-inset-top) - 1.5rem)}#comms .comms-ghost{display:none}#comms .comms-ghost-detail{overflow:visible;padding:0.75rem}#comms[data-mobile-view="list"] .comms-detail{display:none}#comms[data-mobile-view="detail"] .comms-sidebar{display:none}.comms-back{display:inline-flex}.comms-msg{max-width:86%}.comms-log{padding:0.9rem 0.9rem 0.6rem}.comms-composer{padding:0.55rem 0.75rem calc(0.7rem + env(safe-area-inset-bottom))}.comms-sidebar-head{padding:0.9rem 0.9rem 0.6rem}.comms-large-title{font-size:1.6rem}.comms-staged,.comms-mentions{margin-left:0;padding-left:0}.comms-context{margin-left:0}.comms-msg-flags{margin-left:0.4rem}.comms-jump{bottom:5rem}}.comms-heading{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin-bottom:0.75rem}.comms-heading .comms-large-title,.comms-heading .auth-kicker{margin-bottom:0}.comms-appearance{position:relative;display:flex;flex:none;align-items:center;color:var(--auth-muted)}.comms-appearance .articles-mode-switch button{width:2rem;justify-content:center;padding-inline:0}.comms-appearance form{margin:0}.comms-appearance .articles-mode-options{display:flex;gap:0.2rem;padding:0.2rem;border:1px solid var(--auth-line-strong);border-radius:var(--radius-pill)}.comms-appearance button{display:inline-flex;align-items:center;gap:0.4rem;min-height:2rem;padding:0.3rem 0.75rem;border:0;border-radius:var(--radius-pill);background:transparent;color:inherit;font:inherit;font-size:0.875rem;cursor:pointer}.comms-appearance button svg{width:1rem;height:1rem}.comms-appearance button[aria-pressed="true"]{background:var(--auth-sky);color:var(--auth-deep)}.comms-appearance button:focus-visible{outline:2px solid var(--auth-sky);outline-offset:2px}.comms-mode-error{position:absolute;top:calc(100% + 0.5rem);right:0;z-index:10;width:15rem;padding:0.75rem;border:1px solid var(--color-line-strong);border-radius:var(--radius-medium);background:var(--comms-float);color:var(--color-text);font-size:0.875rem;box-shadow:var(--shadow-1)}[data-comms-mode="light"] .comms-stage{--auth-muted:#485b71;--auth-sky:#075cab;--auth-line:#dce4ed;--auth-line-strong:#899bb0;--auth-error:#a51d35;background:#f4f7fb;color:#172b43;color-scheme:light}[data-comms-mode="light"] .comms-stage::before,[data-comms-mode="light"] .comms-stage .auth-backdrop{opacity:0}[data-comms-mode="light"] .comms-appearance button[aria-pressed="true"]{color:#fff}[data-comms-mode="light"] #comms{--color-surface:#fff;--color-surface-secondary:#f0f4f9;--color-surface-tertiary:#e5edf6;--color-text:#172b43;--color-text-secondary:#485b71;--color-text-tertiary:#52657c;--color-accent:#075cab;--color-accent-hover:#064b8b;--color-accent-ink:#fff;--color-accent-soft:#e4f0ff;--color-accent-ring:#aacff4;--color-danger-soft:#ffe8ec;--comms-reading:#fff;--comms-input:#fff;--comms-float:#fff;color-scheme:light}[data-comms-mode="light"] #comms .comms-pane{background:#fff;border-color:var(--color-line);box-shadow:0 0.5rem 2rem rgb(2 21 55 / 0.06)}[data-comms-mode="light"] #comms .comms-detail-head,[data-comms-mode="light"] #comms .comms-sidebar-head{background:#f8faff}[data-comms-mode="light"] #comms .comms-thread.is-active{background:var(--color-accent-soft)}[data-comms-mode="light"] #comms .comms-thread-avatar{color:#172b43;text-shadow:none}[data-comms-mode="light"] #comms .comms-msg-sender,[data-comms-mode="light"] #comms .comms-quote b{color:hsl(var(--sender-hue,215) 65% 27%)}[data-comms-mode="light"] #comms .comms-msg-more:hover,[data-comms-mode="light"] #comms .comms-msg-more:focus-visible{background:var(--color-surface-tertiary);color:var(--color-text);border-color:var(--color-accent)}[data-comms-mode="light"] #comms .comms-quote{background:rgb(2 21 55 / 0.05)}[data-comms-mode="light"] #comms .comms-quote:hover{background:rgb(2 21 55 / 0.1)}[data-comms-mode="light"] #comms .comms-msg.is-mine .comms-quote,[data-comms-mode="light"] #comms .comms-msg.is-mine .comms-quote b{color:#fff;border-left-color:#fff}[data-comms-mode="light"] #comms .comms-msg.is-mine .comms-quote{background:rgb(255 255 255 / 0.12)}[data-comms-mode="light"] #comms .comms-msg.is-mine .comms-quote:hover{background:rgb(255 255 255 / 0.2)}[data-comms-mode="light"] #comms .comms-pin-body:hover{background:var(--color-surface-secondary)}[data-comms-mode="light"] #comms .comms-empty{background:#fff;color:var(--color-text)}[data-comms-mode="light"] #comms .auth-card-title{color:var(--color-text)}[data-comms-mode="light"] #comms .auth-kicker{color:var(--color-accent)}[data-comms-mode="light"] #comms .auth-card::before{background:var(--color-accent)}[data-comms-mode="light"] #comms .auth-cta{background:var(--color-accent);color:#fff}[data-comms-mode="light"] #comms .auth-steps li{background:var(--color-surface-secondary);border-color:var(--color-line);color:var(--color-text)}[data-comms-mode="light"] #comms .auth-steps li strong{color:var(--color-text)}[data-comms-mode="light"] #comms .auth-steps li::before{color:var(--color-accent)}[data-comms-mode] .comms-stage{background-image:none;background-color:var(--auth-deep)}[data-comms-mode="light"] .comms-stage{background-color:#f4f7fb}[data-comms-mode] #comms .comms-pane{background-image:linear-gradient(145deg,rgb(255 255 255 / 0.11),rgb(255 255 255 / 0.04))}[data-comms-turning] .comms-stage,[data-comms-turning] .comms-stage *,[data-comms-turning] .comms-stage::before,[data-comms-turning] .comms-stage *::before,[data-comms-turning] .comms-stage *::after{transition:color 280ms ease,background-color 280ms ease,border-color 280ms ease,box-shadow 280ms ease,opacity 280ms ease!important}@media (prefers-reduced-motion:reduce){[data-comms-turning] .comms-stage,[data-comms-turning] .comms-stage *,[data-comms-turning] .comms-stage::before,[data-comms-turning] .comms-stage *::before,[data-comms-turning] .comms-stage *::after{transition:none!important}}