@font-face{font-family:display;src:url(../media/schibsted_grotesk_latin-s.p.1n5gamcxs9g-p.woff2)format("woff2");font-display:swap;font-weight:400 900}@font-face{font-family:display Fallback;src:local(Arial);ascent-override:92.54%;descent-override:24.43%;line-gap-override:0.0%;size-adjust:105.53%}.display_61f94836-module__UiycQW__className{font-family:display,display Fallback,ui-sans-serif,system-ui,sans-serif}.display_61f94836-module__UiycQW__variable{--font-schibsted:"display", "display Fallback", ui-sans-serif, system-ui, sans-serif}
@font-face{font-family:mono;src:url(../media/geist_mono_latin-s.p.1t7tphccnfzmb.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:mono Fallback;src:local(Arial);ascent-override:76.43%;descent-override:22.43%;line-gap-override:0.0%;size-adjust:131.49%}.mono_cfa227a5-module__ZdygJq__className{font-family:mono,mono Fallback,ui-monospace,monospace}.mono_cfa227a5-module__ZdygJq__variable{--font-geist-mono:"mono", "mono Fallback", ui-monospace, monospace}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--canvas:#f7f6f3;--surface:#fff;--surface-sunken:#efede8;--ink:#1f1d1b;--ink-muted:#6b6760;--ink-faint:#9c978e;--line:#e5e2db;--accent:#2f4fd6;--accent-hover:#2540b5;--accent-weak:#eceefb;--accent-weak-border:#d5daf6;--on-accent:#fff;--mention-bg:#fbf1c7;--mention-ink:#6b5400;--danger:#c0392b;--danger-hover:#a93226;--success:#2e7d52;--warn-bg:#fbf1c7;--warn-ink:#6b5400;--warn-line:#ead9a0;--font-display:var(--font-schibsted), ui-sans-serif, system-ui, sans-serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.375rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--shadow-1:0 1px 2px #1412100f;--shadow-2:0 4px 16px #1412101a;--ease:cubic-bezier(.2, .6, .2, 1);--dur-fast:.12s;--dur:.2s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--canvas:#161518;--surface:#201f24;--surface-sunken:#131214;--ink:#eceae6;--ink-muted:#a6a199;--ink-faint:#6f6b64;--line:#302e34;--accent:#8a9bf2;--accent-hover:#a1aff6;--accent-weak:#23253a;--accent-weak-border:#343a5c;--on-accent:#14141a;--mention-bg:#3a3320;--mention-ink:#f2e2a8;--danger:#e07a6e;--danger-hover:#e8978d;--success:#6fcf97;--warn-bg:#3a3320;--warn-ink:#f2e2a8;--warn-line:#5a4e2e;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 16px #00000080}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);margin:0;padding:0;line-height:1.6}main{max-width:72rem;padding:var(--space-4);padding-left:max(var(--space-4), env(safe-area-inset-left));padding-right:max(var(--space-4), env(safe-area-inset-right));padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));margin:0 auto}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}button,input,textarea,select{font:inherit;color:inherit}input,textarea,select{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:border-color var(--dur-fast) var(--ease)}input::placeholder,textarea::placeholder{color:var(--ink-faint)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:0;border-color:var(--accent)}button{min-height:36px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease)}button:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--ink-faint)}button:disabled{opacity:.5;cursor:default}a{color:var(--accent)}.wordmark{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.2}.page-title{font-family:var(--font-display);font-size:var(--text-md);margin:0;font-weight:600;line-height:1.2}.eyebrow{font-size:var(--text-xs);letter-spacing:.04em;color:var(--ink-muted);font-weight:600}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{color:var(--danger)}.btn-danger:hover:not(:disabled){color:var(--danger-hover)}.btn-link{min-height:0;color:var(--accent);font-size:var(--text-xs);background:0 0;border:none;justify-self:start;padding:0;text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--accent-hover);background:0 0;border-color:#0000}.btn-quiet{min-height:28px;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);background:0 0;border-color:#0000}.btn-quiet:hover:not(:disabled){background:var(--surface);border-color:var(--line)}.page{gap:var(--space-4);display:grid}.page:has(.app-shell){flex-direction:column;height:100dvh;display:flex}.page-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.icon-link{min-width:32px;min-height:32px;padding:var(--space-1);border-radius:var(--radius-md);color:var(--ink-muted);justify-content:center;align-items:center;display:inline-flex}.icon-link:hover{background:var(--surface);color:var(--ink)}.util-row{align-items:center;gap:var(--space-2);color:var(--ink-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.app-shell{gap:var(--space-4);flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:1fr;min-height:0;display:grid;position:relative}.drawer-backdrop{z-index:40;min-height:0;animation:overlay-fade var(--dur) var(--ease);background:#14121052;border:none;border-radius:0;padding:0;position:fixed;inset:0}.drawer-backdrop:hover:not(:disabled){background:#14121052;border-color:#0000}.roomlist-pane{z-index:50;width:min(80%,20rem);padding:var(--space-4);padding-left:max(var(--space-4), env(safe-area-inset-left));padding-top:max(var(--space-4), env(safe-area-inset-top));padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));background:var(--surface);box-shadow:var(--shadow-2);visibility:hidden;transition:transform var(--dur) var(--ease), visibility 0s linear var(--dur);position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.app-shell[data-drawer=open] .roomlist-pane{visibility:visible;transition:transform var(--dur) var(--ease), visibility 0s;transform:translate(0)}.mobile-only{display:inline-flex}@media (min-width:48rem){.app-shell{grid-template-columns:16rem minmax(0,1fr)}.roomlist-pane{width:auto;box-shadow:none;visibility:visible;background:0 0;padding:0;transition:none;position:static;overflow-y:auto;transform:none}.drawer-backdrop,.mobile-only,.chat-header .chat-hamburger{display:none}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}.roomlist{gap:var(--space-2);align-content:start;min-width:180px;display:grid}.roomlist-create{gap:var(--space-1);display:flex}.room-items{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.room-row{align-items:stretch;gap:var(--space-1);display:flex}.room-edit{gap:var(--space-1);display:flex}.room-link{align-items:center;gap:var(--space-2);text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;flex:1;font-weight:400;display:flex;position:relative;overflow:hidden}.room-link:hover:not(:disabled){background:var(--surface);border-color:var(--line)}.room-link.is-active{background:var(--accent-weak);border-color:var(--accent-weak-border);font-weight:600}.room-link.is-active:before{content:"";border-radius:var(--radius-pill);background:var(--accent);width:2px;position:absolute;top:6px;bottom:6px;left:0}.room-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.unread-badge{text-align:center;min-width:18px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-xs);background:var(--accent);color:var(--on-accent);border-radius:var(--radius-pill);flex-shrink:0;padding:1px 6px;font-weight:600}.room-action{opacity:.55;transition:opacity var(--dur-fast) var(--ease)}.room-row:hover .room-action,.room-row:focus-within .room-action{opacity:1}.members-body{gap:var(--space-2);display:grid}.member-items{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.member-row{align-items:center;gap:var(--space-2);min-height:30px;display:flex}.member-name{flex:1;min-width:0;font-weight:500}.role-tag{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);background:var(--surface-sunken);border-radius:var(--radius-sm);padding:1px 6px}.member-add{gap:var(--space-1);display:flex}.chat-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.chat{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.chat-header{align-items:center;gap:var(--space-2);min-height:40px;display:flex}.chat-heading{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.chat-room-name{text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.01em;font-weight:600;overflow:hidden}.icon-btn{min-width:36px;min-height:36px;padding:var(--space-1);color:var(--ink-muted);background:0 0;border-color:#0000;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink);border-color:#0000}.member-avatars{min-height:36px;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);background:0 0;border-color:#0000;flex-shrink:0;align-items:center;display:inline-flex}.member-avatars:hover:not(:disabled){background:var(--surface-sunken);border-color:#0000}.avatar{border-radius:var(--radius-pill);background:var(--accent-weak);width:26px;height:26px;color:var(--accent);border:2px solid var(--surface);font-size:var(--text-xs);justify-content:center;align-items:center;margin-left:-6px;font-weight:700;line-height:1;display:inline-flex}.avatar:first-child{margin-left:0}.avatar-more{background:var(--surface-sunken);color:var(--ink-muted)}.member-avatars-icon{color:var(--ink-muted);justify-content:center;align-items:center;display:inline-flex}.sheet-backdrop{z-index:40;min-height:0;animation:overlay-fade var(--dur) var(--ease);background:#14121052;border:none;border-radius:0;padding:0;position:fixed;inset:0}.sheet-backdrop:hover:not(:disabled){background:#14121052;border-color:#0000}.member-sheet{z-index:50;gap:var(--space-3);max-height:70vh;padding:var(--space-4);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-2);animation:sheet-up var(--dur) var(--ease);align-content:start;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.member-sheet-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}@media (min-width:48rem){.member-sheet{width:min(90%,22rem);max-height:none;animation:sheet-in var(--dur) var(--ease);border-radius:0;top:0;bottom:0;left:auto}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-in{0%{transform:translate(100%)}to{transform:translate(0)}}.chat-empty{gap:var(--space-3);justify-items:start;display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.presence-dot{border-radius:var(--radius-pill);background:var(--ink-faint);flex-shrink:0;width:8px;height:8px}.presence-dot.is-open{background:var(--success);animation:presence-breathe 2s var(--ease) infinite}@keyframes presence-breathe{0%,to{opacity:1}50%{opacity:.4}}.msg-scroll{min-height:0;padding:var(--space-3);gap:var(--space-2);background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius-md);flex:1;align-content:start;display:grid;overflow-y:auto}.load-more{min-height:28px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);justify-self:center}.history-end{text-align:center;color:var(--ink-faint);font-size:var(--text-xs);margin:0}.empty-note{color:var(--ink-muted);margin:0}.date-divider{align-items:center;gap:var(--space-2);margin:var(--space-1) 0;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-faint);display:flex}.date-divider:before,.date-divider:after{content:"";background:var(--line);flex:1;height:1px}.msg{justify-items:start;gap:2px;display:grid}.msg.is-mine{justify-items:end}.msg.is-grouped{margin-top:-4px}.msg-author{font-size:var(--text-xs);color:var(--ink-muted)}.bubble{max-width:min(90%,520px);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);border-radius:var(--radius-md);word-break:break-word;white-space:pre-wrap;text-align:left;display:inline-block}.bubble.is-mine{background:var(--accent-weak);box-shadow:none;border-color:#0000}.bubble.is-deleted{background:var(--surface-sunken);box-shadow:none;color:var(--ink-muted);border-color:#0000;font-style:italic}.bubble.is-pending{opacity:.6}.bubble.is-pending.is-failed{opacity:1;border:1px solid var(--danger)}.pending-note{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--ink-muted);display:flex}.pending-note.is-failed{color:var(--danger)}.pending-actions{gap:var(--space-1);display:flex}.mention{background:var(--mention-bg);color:var(--mention-ink);border-radius:var(--radius-sm);padding:0 2px;font-weight:600}.msg-link{color:var(--accent);text-decoration:underline}.msg-edited{margin-left:var(--space-1);color:var(--ink-faint);font-size:10px}.msg-actions{gap:var(--space-1);margin-top:2px;display:flex}.msg-action{min-height:0;font-size:var(--text-xs);padding:1px 6px}.edit-form{gap:var(--space-1);justify-content:flex-end;display:flex}.edit-form textarea{resize:vertical;flex:1;max-width:400px}.edit-actions{gap:2px;display:grid}.composer{gap:var(--space-2);align-items:flex-end;display:flex}.composer textarea{resize:vertical;background:var(--surface-sunken);flex:1}.composer-wrap{gap:var(--space-2);flex-direction:column;display:flex;position:relative}.composer-dropzone{z-index:2;padding:var(--space-3);text-align:center;font-size:var(--text-sm);color:var(--accent);background:var(--accent-weak);border:2px dashed var(--accent);border-radius:var(--radius-md);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;inset:0}.composer-thumbs{gap:var(--space-2);padding-bottom:2px;display:flex;overflow-x:auto}.composer-thumb{border-radius:var(--radius-sm);border:1px solid var(--line);flex-shrink:0;width:56px;height:56px;position:relative;overflow:hidden}.composer-thumb img{object-fit:cover;width:100%;height:100%}.composer-thumb.is-uploading{opacity:.6}.composer-thumb.is-error{border-color:var(--danger)}.composer-thumb-remove{width:18px;height:18px;min-height:0;font-size:var(--text-xs);color:#fff;background:var(--ink);border:2px solid var(--surface);border-radius:var(--radius-pill);justify-content:center;align-items:center;padding:0;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.composer-thumb-add{width:56px;height:56px;min-height:0;font-size:var(--text-lg);color:var(--ink-muted);border:1px dashed var(--line);border-radius:var(--radius-sm);background:0 0;flex-shrink:0}.composer-attach{flex-shrink:0;position:relative}.composer-menu{bottom:calc(100% + var(--space-2));z-index:4;min-width:190px;padding:var(--space-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-2);flex-direction:column;gap:2px;display:flex;position:absolute;left:0}.composer-menu button{align-items:center;gap:var(--space-2);min-height:0;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;display:flex}.composer-menu button:hover{background:var(--surface-sunken)}.composer-menu-note{font-size:var(--text-xs);color:var(--ink-muted);margin-left:auto}.composer-menu-backdrop{z-index:3;background:0 0;border:none;min-height:0;padding:0;position:fixed;inset:0}.attach-grid{margin-bottom:var(--space-1);gap:4px;max-width:320px;display:grid}.attach-grid[data-count="1"]{grid-template-columns:1fr}.attach-grid[data-count="2"],.attach-grid[data-count="3"],.attach-grid[data-count="4"]{grid-template-columns:1fr 1fr}.attach-grid[data-count="3"]>.attach-cell:first-child{grid-column:1/span 2}.attach-cell{border-radius:var(--radius-sm);aspect-ratio:1;display:block;overflow:hidden}.attach-grid[data-count="1"] .attach-cell{aspect-ratio:4/3}.attach-cell img{object-fit:cover;width:100%;height:100%}.warn{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);background:var(--warn-bg);color:var(--warn-ink);border:1px solid var(--warn-line);border-radius:var(--radius-sm);display:flex}.warn-close{min-height:0;font-size:var(--text-md);color:inherit;background:0 0;border:none;padding:0}.warn-close:hover:not(:disabled){background:0 0;border-color:#0000}.action-error{font-size:var(--text-xs);color:var(--danger);margin:0}.action-notice{font-size:var(--text-xs);color:var(--ink-muted);margin:0}.form-card{gap:var(--space-3);width:100%;max-width:360px;padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);display:grid}.auth-tabs{gap:var(--space-2);display:flex}.tab{background:0 0;flex:1}.tab.is-active{background:var(--accent-weak);border-color:var(--accent-weak-border);color:var(--accent);font-weight:600}.tab.is-active:hover:not(:disabled){background:var(--accent-weak);border-color:var(--accent-weak-border)}.form-success{font-size:var(--text-sm);color:var(--success);margin:0}.form-error{font-size:var(--text-sm);color:var(--danger);margin:0}.verify-notice{gap:var(--space-2);padding:var(--space-3);background:var(--accent-weak);border:1px solid var(--accent-weak-border);border-radius:var(--radius-md);font-size:var(--text-sm);display:grid}.verify-notice p{margin:0}.verify-notice-title{color:var(--accent);font-weight:600}.verify-notice-hint{color:var(--ink-muted)}.profile-form{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.push-control{gap:var(--space-1);display:grid}.passkey-manager{gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid}.passkey-manager-title{font-size:var(--text-sm);margin:0;font-weight:600}.passkey-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.passkey-item{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.passkey-name{font-weight:500}.passkey-item .muted{margin-right:auto}.passkey-add{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.auth-or{align-items:center;gap:var(--space-2);color:var(--ink-faint);font-size:var(--text-xs);display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--line);flex:1;height:1px}.btn-outline{color:var(--accent);border-color:var(--accent);background:0 0}.btn-outline:hover:not(:disabled){background:var(--accent-weak);border-color:var(--accent);color:var(--accent)}.demo-brand{align-items:center;gap:var(--space-2);display:flex}.demo-badge{font-size:var(--text-xs);background:var(--accent-weak);color:var(--accent);border-radius:var(--radius-pill);padding:2px 10px;font-weight:600}.demo-image{width:100%;height:100%;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-faint);background-image:repeating-linear-gradient(135deg, var(--surface-sunken), var(--surface-sunken) 6px, var(--line) 6px, var(--line) 12px);justify-content:center;align-items:center;display:flex}.composer-thumb .demo-image{font-size:9px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
