:root{--canvas:#14231f;--canvas-deep:#0e1917;--surface:#1d3029;--surface-subtle:#182922;--surface-raised:#243a31;--text:#fff9e9;--text-muted:#c4c8b4;--text-soft:#929b89;--border:#e6e1c024;--border-strong:#e6e1c045;--accent:#a8cb83;--accent-hover:#c1df9f;--accent-soft:#a8cb8321;--accent-border:#a8cb8361;--accent-glow:#a8cb8329;--secondary:#edc27a;--secondary-soft:#edc27a21;--sky:#779ca4;--blush:#db947f;--danger:#ef9b8d;--danger-soft:#ef9b8d1c;--danger-border:#ef9b8d61;--warning:#edc27a;--warning-soft:#edc27a1c;--warning-border:#edc27a4d;--success:#a8cb83;--accent-contrast:#15231f;--focus-ring:#edc27ad9;--header-surface:#14231fe6;--panel-surface:#1d3029e6;--panel-surface-strong:#1d3029f7;--field-surface:#0e19179e;--workspace-surface:#121f1ba3;--preview-surface:#172823;--preview-checker:#fff9e90d;--modal-backdrop:#070e0cc7;--color-scheme:dark;--shadow-small:0 12px 38px #060e0c38;--shadow-card:0 20px 70px #060e0c42;--shadow-modal:0 28px 90px #040a0894;--sans:"Avenir Next", Avenir, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--serif:Iowan Old Style, "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;font-family:var(--sans);color:var(--text);background:var(--canvas);color-scheme:var(--color-scheme);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=day]{--canvas:#eef1dc;--canvas-deep:#dde5c9;--surface:#fffaf0;--surface-subtle:#f2eddb;--surface-raised:#fffdf6;--text:#2f4438;--text-muted:#657266;--text-soft:#899184;--border:#d9d5bd;--border-strong:#bbbda5;--accent:#4f7958;--accent-hover:#3d6548;--accent-soft:#4f79581a;--accent-border:#4f795852;--accent-glow:#4f79581f;--secondary:#d89949;--secondary-soft:#d899491c;--sky:#9bc6cc;--blush:#c87967;--danger:#a94f45;--danger-soft:#a94f4517;--danger-border:#a94f4547;--warning:#91651e;--warning-soft:#91651e17;--warning-border:#91651e3d;--success:#4f7958;--accent-contrast:#fffdf6;--focus-ring:#91651ea6;--header-surface:#eef1dce0;--panel-surface:#fffaf0e6;--panel-surface-strong:#fffaf0f7;--field-surface:#fffdf6eb;--workspace-surface:#eceed8b3;--preview-surface:#e7ead6;--preview-checker:#2f44380f;--modal-backdrop:#25372d85;--color-scheme:light;--shadow-small:0 10px 32px #424e3917;--shadow-card:0 22px 70px #424e3921;--shadow-modal:0 28px 90px #25372d40}*{box-sizing:border-box;scrollbar-color:var(--border-strong) transparent}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background-color:var(--canvas);background-image:radial-gradient(circle at 16% 10%, #ffffff17 0 1px, transparent 1.6px), radial-gradient(circle at 78% 30%, #ffffff0f 0 1px, transparent 1.5px), linear-gradient(145deg, transparent 0 48%, #ffffff06 49%, transparent 51%), linear-gradient(180deg, var(--canvas) 0%, var(--canvas-deep) 100%);background-size:31px 31px,47px 47px,240px 240px,auto;background-attachment:fixed;min-height:100svh}button,input,select,textarea{font:inherit}button,label,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,iframe:focus-visible,object:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}::selection{color:var(--accent-contrast);background:var(--secondary)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.access-shell{grid-template-rows:auto 1fr auto;min-height:100svh;display:grid}.fatal-error{background:var(--surface);border:1px solid var(--border);width:min(540px,100% - 32px);box-shadow:var(--shadow-card);border-radius:26px 26px 26px 8px;flex-direction:column;align-items:flex-start;gap:14px;margin:15svh auto 0;padding:34px;display:flex}.fatal-error h1{font-family:var(--serif);margin:4px 0 0;font-size:28px}.fatal-error p{color:var(--text-muted);margin:0 0 8px;font-size:14px;line-height:1.65}.product-bar,.room-bar{background:var(--header-surface);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px)saturate(125%);backdrop-filter:blur(18px)saturate(125%);justify-content:space-between;align-items:center;display:flex}.product-bar{width:min(1240px,100% - 40px);min-height:76px;margin:0 auto}.product-actions,.room-actions,.room-identity,.room-status,.room-title-line,.invite-actions,.attachment-summary,.attachment-actions,.composer-row,.message-meta,.delivery,.composer-footer,.preview-toolbar-actions,.transfer-actions{align-items:center;display:flex}.product-actions{gap:8px}.brand-lockup{min-width:0;color:var(--text);align-items:center;gap:11px;display:flex}.brand-name{font-family:var(--serif);letter-spacing:-.02em;font-size:19px;font-weight:700}.brand-tagline{color:var(--text-soft);border-left:1px solid var(--border-strong);padding-left:12px;font-size:11px}.brand-mark{width:40px;height:40px;color:var(--accent-contrast);font-family:var(--serif);background:var(--accent);border:2px solid #ffffff38;border-radius:56% 44% 52% 48%/48% 52% 46% 54%;flex:none;place-items:center;font-size:17px;font-weight:800;display:grid;position:relative;transform:rotate(-3deg);box-shadow:inset 0 -5px 10px #142d1e1f}.brand-mark:before,.brand-mark:after{z-index:-1;content:"";background:var(--secondary);border-radius:100% 0;width:13px;height:8px;display:block;position:absolute}.brand-mark:before{top:-5px;right:1px;transform:rotate(-18deg)}.brand-mark:after{background:var(--accent-hover);width:11px;height:7px;top:1px;right:-7px;transform:rotate(42deg)}.brand-mark span{transform:rotate(3deg)}.brand-mark.compact{width:38px;height:38px;font-size:15px}.text-button,.inline-button,.close-button{color:var(--accent);cursor:pointer;background:0 0;border:0;font-weight:700}.text-button{min-height:36px;color:var(--text-muted);border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:12px;display:inline-flex}.text-button:hover,.inline-button:hover{color:var(--accent-hover)}.product-bar .text-button:hover{color:var(--text);background:var(--accent-soft);border-color:var(--border)}.access-panel{align-self:center;width:min(1080px,100% - 40px);margin:clamp(28px,6vh,68px) auto}.access-intro{background:radial-gradient(circle at 5% 100%, var(--accent-soft), transparent 42%), var(--panel-surface);border:1px solid var(--border);min-height:330px;box-shadow:var(--shadow-card);border-radius:36px 36px 36px 10px;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;gap:clamp(28px,6vw,72px);padding:clamp(30px,5vw,58px);display:grid;position:relative;overflow:hidden}.access-intro:after{pointer-events:none;content:"";border:1px solid var(--border);border-radius:50%;width:120px;height:80px;position:absolute;bottom:-50px;right:38%;transform:rotate(-12deg)}.access-intro-copy{z-index:2;position:relative}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:10px;font-weight:800}.access-intro h1,.room-identity h1,.empty-state h2,.modal h2{color:var(--text);font-family:var(--serif);letter-spacing:-.025em;margin:0;font-weight:700}.access-intro h1{max-width:620px;font-size:clamp(38px,5.5vw,58px);line-height:1.03}.access-intro-copy>p:nth-child(3){max-width:560px;color:var(--text-muted);margin:19px 0 0;font-size:14px;line-height:1.75}.intro-trust{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.intro-trust span{color:var(--text-muted);background:var(--field-surface);border:1px solid var(--border);border-radius:999px;padding:7px 11px 7px 25px;font-size:10px;font-weight:700;position:relative}.intro-trust span:before{content:"";background:var(--accent);border-radius:70% 0;width:8px;height:8px;position:absolute;top:50%;left:10px;transform:translateY(-50%)rotate(-35deg)}.storybook-scene{background:linear-gradient(180deg, color-mix(in srgb, var(--sky) 38%, transparent), transparent 73%);border:1px solid var(--border);border-radius:160px 160px 32px 32px;align-self:stretch;min-height:240px;position:relative;overflow:hidden}.scene-sun{background:var(--secondary);border:5px solid color-mix(in srgb, var(--secondary) 26%, transparent);width:46px;height:46px;box-shadow:0 0 0 7px color-mix(in srgb, var(--secondary) 12%, transparent);border-radius:50%;position:absolute;top:36px;right:42px}.scene-cloud{background:#fffdf0b8;border-radius:999px;width:52px;height:14px;position:absolute;box-shadow:15px -8px 0 3px #fffdf0b8,32px 0 #fffdf0b8}.cloud-one{top:70px;left:36px}.cloud-two{opacity:.55;top:113px;right:35px;transform:scale(.68)}.scene-hill{border-radius:50% 50% 0 0;width:115%;height:150px;position:absolute;bottom:-34px}.hill-back{background:color-mix(in srgb, var(--accent) 55%, var(--sky));bottom:10px;right:-55%;transform:rotate(-8deg)}.hill-front{background:color-mix(in srgb, var(--accent) 76%, #47644f);left:-28%;transform:rotate(7deg)}.scene-house{z-index:4;background:#f5d6a4;border:2px solid #4948333d;border-radius:4px 4px 2px 2px;width:54px;height:44px;position:absolute;bottom:56px;right:29%}.scene-house:before{content:"";background:var(--blush);clip-path:polygon(50% 0,100% 76%,92% 100%,8% 100%,0 76%);border:2px solid #4948333d;width:66px;height:34px;position:absolute;top:-25px;left:-8px}.scene-house:after{content:"";background:#74594a;border-radius:7px 7px 0 0;width:13px;height:18px;position:absolute;bottom:8px;right:8px}.scene-house i{background:var(--sky);border:2px solid #4948333d;width:13px;height:12px;position:absolute;top:10px;left:8px}.scene-path{z-index:3;background:#e8c88f;border-radius:50%;width:38px;height:120px;position:absolute;bottom:-44px;right:17%;transform:rotate(18deg)}.scene-leaf{z-index:5;background:var(--secondary);border-radius:100% 0;width:17px;height:9px;animation:7s ease-in-out infinite leaf-drift;position:absolute}.leaf-one{top:46px;left:43%}.leaf-two{animation-delay:-3s;top:107px;left:24%;transform:scale(.72)}@keyframes leaf-drift{0%,to{translate:0;rotate:-15deg}50%{translate:22px 12px;rotate:24deg}}.access-controls{background:var(--panel-surface-strong);border:1px solid var(--border);width:min(680px,92%);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px 28px 28px 8px;margin:-26px auto 0;padding:22px}.tabs{background:var(--surface-subtle);border:1px solid var(--border);border-radius:999px;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:24px;padding:5px;display:grid}.tab{min-height:42px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:750}.tab:hover{color:var(--text)}.tab.active{color:var(--accent-contrast);background:var(--accent);box-shadow:0 3px 12px var(--accent-glow)}.access-form{flex-direction:column;display:flex}.access-form label,.composer-context label{color:var(--text);margin-bottom:8px;font-size:12px;font-weight:750}.access-form input,.access-form select,.composer-context input{width:100%;min-height:50px;color:var(--text);background:var(--field-surface);border:1px solid var(--border-strong);border-radius:14px;padding:11px 14px;transition:border-color .15s,box-shadow .15s,background .15s}.access-form input:hover,.access-form select:hover,.composer-context input:hover,.composer textarea:hover{border-color:var(--accent-border)}.access-form input:focus,.access-form select:focus,.composer-context input:focus,.composer textarea:focus{background:var(--surface-raised);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.access-form input{font-family:var(--mono);letter-spacing:.025em;font-size:14px}.access-form input::placeholder,.composer textarea::placeholder{color:var(--text-soft);font-family:var(--sans);letter-spacing:0}.access-form input[aria-invalid=true]{border-color:var(--danger)}.field-help{color:var(--text-muted);margin:8px 2px 21px;font-size:11px;line-height:1.55}.join-method-callout{background:linear-gradient(135deg, var(--accent-soft), transparent 72%), var(--surface-raised);border:1px solid var(--accent-border);border-left:4px solid var(--accent);box-shadow:var(--shadow-small);border-radius:14px 14px 14px 5px;margin:0 0 21px;padding:14px 15px;position:relative;overflow:hidden}.join-method-callout>strong{color:var(--text);font-family:var(--serif);margin-bottom:10px;font-size:14px;display:block}.join-method-callout dl{gap:8px;margin:0;display:grid}.join-method-callout dl>div{grid-template-columns:92px minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.join-method-callout dt{color:var(--accent);font-size:10px;font-weight:800}.join-method-callout dd{color:var(--text-muted);margin:0;font-size:10px;line-height:1.5}.primary-button,.send-button{min-height:48px;color:var(--accent-contrast);cursor:pointer;background:var(--accent);border:1px solid var(--accent);box-shadow:0 8px 22px var(--accent-glow);border-radius:14px 14px 14px 5px;padding:11px 20px;font-weight:800;transition:transform .14s,background .14s,box-shadow .14s}.primary-button:hover:not(:disabled),.send-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 10px 28px var(--accent-glow);transform:translateY(-1px)}.primary-button:active:not(:disabled),.send-button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.5}.form-error,.inline-error{color:var(--danger);font-size:12px;line-height:1.5}.form-error{background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:12px;margin:14px 0 0;padding:11px 13px}.trust-strip{color:var(--text-muted);border-top:1px dashed var(--border-strong);flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;padding-top:17px;font-size:10px;display:flex}.status-dot{background:var(--text-soft);border:2px solid var(--surface);width:8px;height:8px;box-shadow:0 0 0 2px var(--border-strong);border-radius:50%;flex:none;display:inline-block}.status-dot.secure,.status-dot.connected{background:var(--success);box-shadow:0 0 0 3px var(--accent-glow)}.status-dot.connecting,.status-dot.reconnecting{background:var(--warning);box-shadow:0 0 0 3px var(--warning-border)}.access-footer{width:min(1240px,100% - 40px);color:var(--text-soft);justify-content:space-between;margin:0 auto;padding:20px 0 24px;font-size:10px;display:flex}.modal-backdrop{z-index:100;background:var(--modal-backdrop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface-raised);border:1px solid var(--border);width:min(580px,100%);max-height:min(760px,100svh - 40px);box-shadow:var(--shadow-modal);border-radius:28px 28px 28px 8px;padding:28px;overflow:auto}.modal-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.modal h2{font-size:26px}.modal-header .text-button{min-height:32px;color:var(--text-muted);border-color:var(--border);flex:none;padding:5px 10px}.recall-dialog{width:min(480px,100%)}.recall-dialog>p{color:var(--text-muted);margin:18px 0 0;font-size:14px;line-height:1.6}.recall-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.security-list{color:var(--text-muted);gap:15px;margin:24px 0 0;padding-left:20px;font-size:13px;line-height:1.6;display:grid}.room-shell{background:var(--panel-surface);border:1px solid var(--border);width:min(1320px,100% - 32px);height:calc(100svh - 32px);box-shadow:var(--shadow-card);border-radius:30px 30px 30px 10px;flex-direction:column;margin:16px auto;display:flex;overflow:hidden}.room-bar{z-index:5;flex:none;min-height:76px;padding:11px 22px}.room-identity{gap:12px;min-width:0}.room-identity>div:last-child{min-width:0}.room-title-line{gap:9px;min-width:0}.room-identity h1{white-space:nowrap;font-size:18px}.room-title-line code{color:var(--accent);font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:999px;padding:3px 7px;font-size:9px;overflow:hidden}.room-status{color:var(--text-muted);gap:7px;margin-top:5px;font-size:10px}.room-actions{gap:7px}.small-button{min-height:34px;color:var(--text);cursor:pointer;background:var(--field-surface);border:1px solid var(--border-strong);border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:6px 11px;font-size:11px;font-weight:720;line-height:1;text-decoration:none;transition:color .13s,border-color .13s,background .13s,transform .13s;display:inline-flex}.small-button:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border);transform:translateY(-1px)}.small-button.primary-soft{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.small-button.danger{color:var(--danger);border-color:var(--danger-border)}.icon-button{width:34px;padding:0;font-size:15px}.security-icon{flex:none;width:16px;height:16px}.icon-button .security-icon{width:18px;height:18px}.invite-banner{background:linear-gradient(90deg, var(--accent-soft), transparent), var(--surface-subtle);border-bottom:1px solid var(--accent-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:15px 22px;display:grid;position:relative}.invite-copy{align-items:center;gap:22px;min-width:0;display:flex}.invite-copy .eyebrow{margin-bottom:4px}.invite-copy>p{max-width:430px;color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.room-id{color:var(--accent);font-family:var(--mono);letter-spacing:.035em;overflow-wrap:anywhere;font-size:12px;font-weight:750;display:block}.invite-actions{gap:7px}.close-button{width:30px;height:30px;color:var(--text-muted);font-size:21px;line-height:1}.copy-status{min-height:28px;color:var(--accent-contrast);white-space:nowrap;background:var(--accent);border-radius:999px;align-items:center;padding:4px 9px;font-size:10px;font-weight:750;display:inline-flex}.connection-notice{color:var(--warning);text-align:center;background:var(--warning-soft);border-bottom:1px solid var(--warning-border);justify-content:center;align-items:center;gap:10px;padding:8px 22px;font-size:11px;display:flex}.workspace{background:radial-gradient(circle at 12% 8%, var(--accent-soft), transparent 24%), radial-gradient(circle at 88% 90%, var(--secondary-soft), transparent 22%), var(--workspace-surface);flex:auto;grid-template-rows:minmax(0,1fr) auto;min-height:0;display:grid;position:relative}.timeline{overscroll-behavior:contain;scrollbar-gutter:stable;padding:30px clamp(18px,4vw,56px) 42px;overflow:auto}@keyframes pinned-arrive{0%{opacity:0;transform:translateY(-8px)scale(.99)}}.pinned-message{z-index:3;isolation:isolate;background:radial-gradient(circle at 4% 50%, var(--accent-glow), transparent 32%), color-mix(in srgb, var(--panel-surface-strong) 94%, transparent);border:1px solid color-mix(in srgb, var(--accent) 44%, var(--border));width:min(840px,100%);min-height:66px;box-shadow:0 14px 34px color-mix(in srgb, var(--accent) 13%, transparent), var(--shadow-small);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px 18px 18px 7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:-10px auto 26px;padding:10px 12px 10px 10px;animation:.22s ease-out pinned-arrive;display:grid;position:sticky;top:-18px;overflow:hidden}.pinned-message:before{z-index:-1;content:"";background:linear-gradient(var(--accent), color-mix(in srgb, var(--accent) 45%, var(--sky)));width:4px;position:absolute;inset:0 auto 0 0}.pinned-icon{width:42px;height:42px;color:var(--accent-contrast);background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 82%, white), var(--accent));box-shadow:0 8px 22px var(--accent-glow);border:1px solid #ffffff40;border-radius:14px 14px 14px 5px;place-items:center;display:grid}.pinned-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:19px}.pinned-summary{text-align:left;min-width:0;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;gap:5px;padding:3px 0;display:grid}.pinned-context{min-width:0;color:var(--text-soft);align-items:center;gap:6px;font-size:9px;display:flex}.pinned-eyebrow{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:8px;font-weight:850}.pinned-context strong,.pinned-preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pinned-context strong{color:var(--text-muted);font-size:9px}.pinned-preview{color:var(--text);font-size:12px;line-height:1.35;transition:color .14s}.pinned-summary:hover .pinned-preview{color:var(--accent)}.pinned-remove{min-height:32px;color:var(--text-muted);background:var(--surface-subtle);border:1px solid var(--border);border-radius:999px;padding:0 11px;font-size:9px;font-weight:750;transition:color .14s,border-color .14s,background .14s}.pinned-remove:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.pin-error{width:min(820px,100%);color:var(--danger);text-align:center;background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:10px;margin:-14px auto 18px;padding:8px 12px;font-size:10px}.empty-state{max-width:440px;color:var(--text-muted);text-align:center;margin:clamp(52px,10vh,110px) auto}.empty-illustration{background:color-mix(in srgb, var(--sky) 50%, transparent);border:1px solid var(--border);border-radius:60px 60px 22px 22px;width:118px;height:82px;margin:0 auto 15px;display:block;position:relative}.empty-illustration:before,.empty-illustration:after{content:"";border-radius:70% 70% 0 0;position:absolute;bottom:0}.empty-illustration:before{background:var(--accent);width:82px;height:39px;left:-4px;transform:rotate(7deg)}.empty-illustration:after{background:color-mix(in srgb, var(--accent) 72%, var(--sky));width:67px;height:29px;right:-3px;transform:rotate(-8deg)}.empty-illustration i{z-index:2;background:#f4d3a1;border-radius:4px;width:23px;height:28px;position:absolute;top:31px;left:50%;transform:translate(-50%)}.empty-illustration i:before{content:"";background:var(--blush);clip-path:polygon(50% 0,100% 100%,0 100%);width:31px;height:18px;position:absolute;top:-12px;left:-4px}.empty-mark{min-height:28px;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:999px;place-items:center;margin-bottom:15px;padding:0 12px;font-size:9px;font-weight:800;display:inline-grid}.empty-state h2{font-size:24px}.empty-state p{margin:9px 0 0;font-size:13px;line-height:1.65}.empty-action{margin-top:15px}.message{width:min(750px,90%);margin:0 auto 19px 0}.message.own{margin-left:auto;margin-right:0}.message-meta{color:var(--text-muted);gap:7px;margin:0 8px 6px;font-size:10px}.message-meta strong{color:var(--text);font-size:11px}.message-meta time{color:var(--text-soft);margin-left:auto}.own-label{color:var(--accent);text-transform:uppercase;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:999px;padding:2px 6px;font-size:8px;font-weight:750}.message-pinned-label{color:var(--accent);text-transform:uppercase;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:999px;align-items:center;gap:3px;padding:2px 6px;font-size:8px;font-weight:750;display:inline-flex}.message-pinned-label svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:9px}.message-body{background:var(--panel-surface-strong);border:1px solid var(--border);box-shadow:var(--shadow-small);border-radius:7px 20px 20px;padding:14px 16px}.message.own .message-body{background:color-mix(in srgb, var(--accent) 13%, var(--panel-surface-strong));border-color:var(--accent-border);border-radius:20px 7px 20px 20px}.message.is-pinned .message-body{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), 0 12px 30px var(--accent-glow);position:relative;overflow:hidden}.message.is-pinned .message-body:before{content:"";background:var(--accent);border-radius:0 999px 999px 0;width:3px;position:absolute;inset:8px auto 8px 0}.message.own.is-pinned .message-body:before{border-radius:999px 0 0 999px;left:auto;right:0}.message-body.recalled{color:var(--text-muted);background:var(--surface-subtle);box-shadow:none;border-style:dashed}.message-body .recalled-message{color:var(--text-muted);font-style:italic}.message-body>p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.62}.delivery{min-height:20px;color:var(--text-soft);gap:8px;margin:4px 8px 0;font-size:9px}.message.own .delivery{justify-content:flex-end}.recall-button,.pin-button{margin-left:4px}.recall-error,.delivery.failed,.integrity-error{color:var(--danger)}.inline-button{padding:0;font-size:10px}.attachment-tray{background:var(--field-surface);border:1px solid var(--border);border-radius:16px 16px 16px 6px;margin:0 0 10px;padding:10px}.attachment-tray-heading{justify-content:space-between;align-items:center;gap:10px;padding:0 3px 8px;display:flex}.attachment-tray-heading strong{color:var(--text);font-size:10px}.attachment-tray-heading span{color:var(--text-soft);font-size:8px}.attachment-tray-items{overscroll-behavior-inline:contain;scrollbar-width:thin;scroll-snap-type:inline proximity;grid-auto-columns:minmax(260px,330px);grid-auto-flow:column;gap:8px;display:grid;overflow-x:auto}.transfer-card{background:var(--panel-surface-strong);border:1px solid var(--border);scroll-snap-align:start;border-radius:13px 13px 13px 5px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:62px;padding:7px;display:grid}.transfer-card.pending{border-color:var(--accent-border)}.transfer-card.failed{border-color:var(--danger-border)}.transfer-thumbnail,.transfer-glyph{border-radius:10px 10px 10px 4px;width:46px;height:46px}.transfer-thumbnail{object-fit:contain;background:var(--preview-surface);border:1px solid var(--border);padding:3px;display:block}.transfer-glyph{color:var(--accent);font-family:var(--mono);background:var(--accent-soft);border:1px solid var(--accent-border);place-items:center;font-size:7px;font-weight:800;display:grid}.transfer-copy{flex-direction:column;min-width:0;display:flex}.transfer-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.transfer-copy span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.transfer-card.failed .transfer-copy span{color:var(--danger)}.transfer-copy progress{margin-top:6px}.transfer-actions{gap:6px}.tray-action,.tray-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:750}.tray-action{color:var(--danger)}.tray-action.retry{color:var(--accent)}.tray-remove{background:var(--surface-subtle);border:1px solid var(--border);border-radius:50%;place-items:center;width:26px;height:26px;padding:0;font-size:16px;display:grid}.tray-remove:hover{color:var(--danger);border-color:var(--danger-border)}progress{width:100%;height:6px;color:var(--accent);accent-color:var(--accent);background:var(--border);border:0;border-radius:999px;overflow:hidden}.composer{z-index:4;background:var(--panel-surface-strong);border-top:1px solid var(--border);padding:12px clamp(14px,3vw,34px) 13px;position:relative;box-shadow:0 -12px 40px #14231f12}.composer-context{grid-template-columns:auto minmax(120px,190px) 1fr;align-items:center;gap:8px;margin-bottom:9px;display:grid}.composer-context label{color:var(--text-muted);margin:0}.composer-context input{border-radius:999px;min-height:29px;padding:4px 9px;font-size:10px}.composer-context>span{color:var(--text-soft);font-size:9px}.composer-row{gap:9px}.attachment-button{width:45px;height:45px;color:var(--accent);cursor:pointer;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:50%;flex:none;place-items:center;font-size:22px;transition:transform .14s,background .14s;display:grid}.attachment-button:hover{background:color-mix(in srgb, var(--accent) 20%, transparent);transform:rotate(8deg)}.composer textarea{min-width:0;min-height:45px;max-height:150px;color:var(--text);resize:none;background:var(--field-surface);border:1px solid var(--border-strong);border-radius:18px 18px 18px 7px;flex:auto;padding:11px 14px;line-height:1.45;overflow-y:auto}.send-button{border-radius:18px 18px 7px;flex:none;align-items:center;gap:9px;min-height:44px;padding-inline:18px;display:flex}.send-button span:last-child{width:20px;height:20px;color:var(--accent);background:var(--accent-contrast);border-radius:50%;place-items:center;display:grid}.composer-footer{color:var(--text-soft);justify-content:space-between;margin:6px 56px 0;font-size:8px}.drop-hint{z-index:9;pointer-events:none;visibility:hidden;color:var(--accent);background:color-mix(in srgb, var(--surface-raised) 88%, transparent);border:2px dashed var(--accent);opacity:0;border-radius:22px;place-items:center;font-size:13px;font-weight:800;transition:opacity .14s;display:grid;position:absolute;inset:7px}.workspace.is-dragging .drop-hint{visibility:visible;opacity:1}.attachment{margin-top:5px}.attachment-card{grid-template-columns:minmax(0,1fr);gap:14px;padding-top:4px;display:grid}.attachment-card.has-preview{grid-template-columns:minmax(150px,200px) minmax(0,1fr);align-items:center}.attachment-details{min-width:0}.attachment-summary{gap:10px;min-width:0}.file-glyph{width:40px;height:46px;color:var(--accent);font-family:var(--mono);background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:5px 13px 5px 5px;flex:none;place-items:center;font-size:8px;font-weight:800;display:grid;position:relative}.file-glyph:after{content:"";border-bottom:1px solid var(--accent-border);border-left:1px solid var(--accent-border);border-radius:0 11px 0 4px;width:12px;height:12px;position:absolute;top:-1px;right:-1px}.attachment-name{flex-direction:column;flex:auto;min-width:0;display:flex}.attachment-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.attachment-name span,.attachment-note{color:var(--text-muted);margin-top:4px;font-size:9px}.attachment-actions{flex-wrap:wrap;gap:7px;margin-top:12px}.attachment-preview{min-width:0;position:relative}.preview-thumb{width:100%;height:116px;color:var(--accent);cursor:pointer;background:linear-gradient(145deg, var(--accent-soft), transparent 55%), var(--preview-surface);border:1px solid var(--border-strong);border-radius:16px 16px 16px 5px;place-items:center;padding:0;transition:border-color .15s,transform .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.preview-thumb:hover:not(:disabled){border-color:var(--accent);box-shadow:0 10px 28px var(--accent-glow);transform:translateY(-2px)}.preview-thumb>img{object-fit:contain;background-color:var(--preview-surface);width:calc(100% - 10px);height:calc(100% - 10px);position:absolute;inset:5px}.text-preview-snippet{width:100%;height:100%;color:var(--text);font-family:var(--mono);text-align:start;white-space:pre-wrap;overflow-wrap:anywhere;background:linear-gradient(90deg, var(--accent-soft), transparent 28%), var(--preview-surface);unicode-bidi:plaintext;padding:11px 12px;font-size:8px;line-height:1.5;display:block;overflow:hidden}.preview-placeholder{justify-items:center;gap:5px;padding:14px;display:grid}.preview-placeholder strong{color:var(--text);font-size:10px}.preview-placeholder small{color:var(--text-soft);font-size:8px}.inline-preview-progress{grid-template-columns:minmax(80px,120px) auto;align-items:center;gap:7px;width:100%;margin-top:3px;display:grid}.inline-preview-progress small{color:var(--accent);font-family:var(--mono)}.preview-placeholder.is-loading .preview-glyph{animation:1.8s ease-in-out infinite preview-breathe}.preview-glyph{width:42px;height:42px;color:var(--accent);font-family:var(--mono);background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:50%;place-items:center;margin-bottom:3px;font-size:10px;font-weight:800;display:grid}.preview-overlay{color:#fffdf4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#1e2d25c2;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:750;transition:opacity .15s,transform .15s;position:absolute;bottom:8px;right:8px;transform:translateY(3px)}.preview-thumb:hover .preview-overlay,.preview-thumb:focus-visible .preview-overlay{opacity:1;transform:translateY(0)}.preview-privacy{color:var(--accent);text-transform:uppercase;background:var(--surface-raised);border:1px solid var(--accent-border);border-radius:999px;padding:3px 7px;font-size:7px;font-weight:750;position:absolute;bottom:-7px;left:10px}.transfer-progress{grid-template-columns:1fr auto auto;align-items:center;gap:9px;margin-top:11px;display:grid}.transfer-progress span{color:var(--text-muted);font-size:9px}.preview-toolbar{background:var(--field-surface);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:11px 13px;display:flex}.preview-toolbar>div:first-child{flex-direction:column;min-width:0;display:flex}.preview-toolbar strong{color:var(--text);font-size:11px}.preview-toolbar span{color:var(--text-muted);margin-top:3px;font-size:8px}.preview-toolbar-actions{flex:none;gap:7px}.preview-modal{grid-template-rows:auto auto minmax(0,1fr);width:min(1040px,100%);height:min(900px,100svh - 40px);max-height:calc(100svh - 40px);display:grid;overflow:hidden}.preview-modal .modal-header{min-width:0}.preview-modal .modal-header h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.preview-modal .preview-toolbar{margin:18px 0 12px}.preview-loading-state,.preview-error-state{min-height:0;color:var(--text-muted);text-align:center;background:radial-gradient(circle at 50% 45%, var(--accent-soft), transparent 36%), var(--preview-surface);border:1px solid var(--border);border-radius:16px 16px 16px 5px;place-items:center;padding:clamp(28px,7vh,70px) 24px;display:grid}.preview-loading-state h3,.preview-error-state h3{color:var(--text);font-family:var(--serif);margin:16px 0 0;font-size:20px}.preview-loading-state p,.preview-error-state p{max-width:430px;margin:7px 0 0;font-size:11px;line-height:1.6}.preview-loading-art{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:50%;place-items:center;width:72px;height:72px;animation:1.8s ease-in-out infinite preview-breathe;display:grid;position:relative}.preview-loading-art:before{content:"";border:3px solid var(--accent);border-radius:13px 13px 7px 7px;width:24px;height:30px}.preview-loading-art i{border:3px solid var(--accent);border-bottom:0;border-radius:12px 12px 0 0;width:17px;height:14px;position:absolute;top:17px}@keyframes preview-breathe{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 12px #0000}}.preview-loading-progress{grid-template-columns:minmax(180px,320px) auto;align-items:center;gap:10px;margin:20px 0 14px;display:grid}.preview-loading-progress span{color:var(--accent);font-family:var(--mono);font-size:9px}.preview-error-state>span{width:54px;height:54px;color:var(--danger);font-family:var(--serif);background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:50%;place-items:center;font-size:28px;font-weight:800;display:grid}.preview-error-state .small-button{margin-top:18px}.modal-image-preview{background:linear-gradient(45deg, var(--preview-checker) 25%, transparent 25%), linear-gradient(-45deg, var(--preview-checker) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--preview-checker) 75%), linear-gradient(-45deg, transparent 75%, var(--preview-checker) 75%);background-color:var(--preview-surface);border:1px solid var(--border);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px;border-radius:16px 16px 16px 5px;place-items:center;min-height:0;padding:14px;display:grid;overflow:auto}.modal-image-preview img{object-fit:contain;border-radius:6px;width:100%;min-width:0;height:100%;min-height:0;display:block;box-shadow:0 10px 34px #00000052}.modal-text-preview{background:linear-gradient(90deg, var(--accent-soft), transparent 18%), var(--preview-surface);border:1px solid var(--border);border-radius:16px 16px 16px 5px;min-height:0;overflow:auto}.modal-text-preview pre{min-height:100%;color:var(--text);font-family:var(--mono);text-align:start;white-space:pre-wrap;overflow-wrap:anywhere;unicode-bidi:plaintext;margin:0;padding:clamp(16px,3vw,30px);font-size:clamp(11px,1.2vw,13px);line-height:1.65}.native-pdf-preview{border:1px solid var(--border);background:#fff;border-radius:16px 16px 16px 5px;width:100%;height:100%;min-height:0}.pdf-thumbnail-preview,.pdf-thumbnail-stage{width:100%;height:100%}.pdf-thumbnail-preview{background:var(--preview-surface);pointer-events:none;overflow:hidden}.pdf-thumbnail-stage{place-items:center;display:grid;position:relative;overflow:hidden}.pdf-thumbnail-stage canvas{background:#fff;max-width:100%;display:block;box-shadow:0 7px 24px #0003}.pdf-thumbnail-status{color:var(--text-muted);text-align:center;align-self:center;padding:4px 6px;font-size:9px;position:absolute}.pdf-thumbnail-status.is-error{color:var(--danger)}.attachment-note{margin-bottom:0}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.security-facts{margin:24px 0 0}.security-facts>div{border-top:1px solid var(--border);grid-template-columns:125px 1fr;gap:18px;padding:13px 0;display:grid}.security-facts dt{color:var(--text-muted);font-size:11px;font-weight:750}.security-facts dd{color:var(--text);margin:0;font-size:11px;line-height:1.55}.security-warning{color:var(--warning);background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:12px;margin:18px 0 0;padding:11px 12px;font-size:10px;line-height:1.5}@media (height<=850px) and (width>=761px){.room-shell{height:calc(100svh - 16px);margin:8px auto}.room-bar{min-height:62px;padding-block:8px}.timeline{padding-block:18px 24px}.message{margin-bottom:11px}.message-body{padding:10px 13px}.message-body>p{font-size:13px;line-height:1.48}.preview-thumb{height:105px}.composer{padding-block:8px}.composer-context{margin-bottom:5px}.composer-context input{min-height:25px}.attachment-button,.composer textarea,.send-button{min-height:38px}.attachment-button{width:38px;height:38px}.composer textarea{padding-block:8px}}@media (width<=760px){.product-bar{width:min(100% - 28px,1240px);min-height:66px}.brand-tagline{display:none}.product-actions{gap:2px}.product-bar .text-button{padding-inline:8px}.access-panel{width:min(100% - 24px,1080px);margin:16px auto 26px}.access-intro{border-radius:28px 28px 28px 8px;grid-template-columns:minmax(0,1fr);gap:26px;min-height:0;padding:28px 23px 52px}.access-intro h1{font-size:clamp(36px,12vw,48px)}.storybook-scene{min-height:200px}.access-controls{border-radius:22px 22px 22px 7px;width:calc(100% - 14px);margin-top:-34px;padding:16px}.access-footer{width:calc(100% - 32px)}.room-shell{border:0;border-radius:0;width:100%;height:100svh;margin:0}.room-bar{min-height:64px;padding:9px 12px}.brand-mark.compact,.room-title-line code{display:none}.room-actions{gap:4px}.room-actions .small-button{padding-inline:8px}.room-actions .icon-button{width:32px;padding:0}.invite-banner{grid-template-columns:1fr;gap:12px;padding:14px 16px}.invite-copy{display:block}.invite-copy>p{margin-top:8px}.invite-actions{flex-wrap:wrap}.timeline{padding:20px 12px 30px}.pinned-message{border-radius:15px 15px 15px 6px;gap:9px;min-height:60px;margin-top:-10px;margin-bottom:20px;padding:8px 9px 8px 8px;top:-10px}.pinned-icon{border-radius:12px 12px 12px 4px;width:36px;height:36px}.pinned-context{gap:4px}.pinned-remove{min-height:30px;padding-inline:9px}.message{width:94%}.message-body{border-radius:6px 17px 17px}.message.own .message-body{border-radius:17px 6px 17px 17px}.composer{padding:9px 10px max(9px, env(safe-area-inset-bottom))}.composer-context{grid-template-columns:auto minmax(100px,1fr)}.composer-context>span{display:none}.composer-footer{margin-left:54px;margin-right:0}.send-button{padding-inline:12px}.send-button span:last-child{display:none}.attachment-tray{padding:8px}.attachment-tray-heading span{display:none}.attachment-tray-items{grid-auto-columns:minmax(250px,86vw)}.security-facts>div{grid-template-columns:1fr;gap:5px}.attachment-card.has-preview{grid-template-columns:minmax(0,1fr)}.attachment-preview{grid-row:1}.attachment-details{grid-row:2}.preview-thumb{height:138px}.preview-backdrop{padding:0}.preview-modal{width:100%;height:100svh;max-height:100svh;padding:14px 12px max(14px, env(safe-area-inset-bottom));border:0;border-radius:0}.preview-modal .modal-header h2{font-size:18px}.preview-modal .preview-toolbar{margin:12px 0 8px}.preview-toolbar{align-items:flex-start}.modal-image-preview{padding:8px}.native-pdf-preview{border-radius:10px}}@media (width<=440px){.brand-mark{width:35px;height:35px}.brand-name{font-size:17px}.product-bar .text-button{justify-content:center;gap:0;width:34px;padding:0;font-size:0}.product-bar .text-button span{font-size:14px}.intro-trust span:last-child,.access-footer span:first-child{display:none}.access-footer,.composer-footer{justify-content:flex-end}.room-actions .small-button.danger{width:32px;padding:0;font-size:0;overflow:hidden}.room-actions .small-button.danger:before{content:"×";font-size:15px}.attachment-button{width:40px;height:40px}.composer textarea{padding-inline:11px}.send-button{min-width:53px;padding-inline:10px}.attachment-tray-items{grid-auto-columns:minmax(230px,84vw)}.preview-thumb{height:122px}.preview-toolbar{display:grid}.preview-toolbar-actions{justify-content:flex-start}}
