:root{color-scheme:light dark;--pf-font-sans: "Source Sans 3", "Source Sans Pro", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--pf-font-serif: Georgia, "Times New Roman", serif;--pf-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--pf-text-xs: .8125rem;--pf-text-sm: .875rem;--pf-text-base: 1rem;--pf-text-md: 1.125rem;--pf-text-lg: 1.25rem;--pf-text-xl: clamp(1.375rem, 1.25rem + .6vw, 1.625rem);--pf-text-2xl: clamp(1.625rem, 1.35rem + 1.2vw, 2.125rem);--pf-text-3xl: clamp(2rem, 1.5rem + 2.2vw, 2.75rem);--pf-text-prose: clamp(1.0625rem, 1rem + .25vw, 1.125rem);--pf-leading-tight: 1.15;--pf-leading-snug: 1.3;--pf-leading-normal: 1.6;--pf-leading-loose: 1.7;--pf-weight-regular: 400;--pf-weight-medium: 500;--pf-weight-bold: 600;--pf-weight-black: 700;--pf-tracking-caps: .06em;--pf-space-3xs: .25rem;--pf-space-2xs: .5rem;--pf-space-xs: .75rem;--pf-space-sm: 1rem;--pf-space-md: 1.5rem;--pf-space-lg: 2rem;--pf-space-xl: 3rem;--pf-space-2xl: 5rem;--pf-space-3xl: 7rem;--pf-radius-sm: 3px;--pf-radius-md: 6px;--pf-radius-lg: 6px;--pf-radius-pill: 999px;--pf-radius-card: 6px;--pf-radius-control: 6px;--pf-container: 1120px;--pf-container-narrow: 720px;--pf-gutter: 1.5rem;--pf-measure: 66ch;--pf-measure-narrow: 45ch;--pf-space-section: clamp(3rem, 2rem + 4vw, 5rem);--pf-underline-offset: .15em;--pf-bp-md: 768px;--pf-bp-lg: 1025px;--pf-z-header: 100;--pf-z-overlay: 500;--pf-z-modal: 1000;--pf-color-brand: #0c2d52;--pf-color-brand-strong: #001c38;--pf-color-brand-soft: #edf1f6;--pf-color-ink: #001c38;--pf-color-heading: #001c38;--pf-color-accent: #d67300;--pf-color-accent-hover: #cc6d00;--pf-color-accent-text: #8a4d0a;--pf-color-accent-soft: #fbefe0;--pf-color-accent-edge: #001c38;--pf-color-on-accent: #001c38;--pf-color-bg: #ffffff;--pf-color-surface: #ffffff;--pf-color-bg-alt: #f3f5f8;--pf-color-bg-inset: #eaeef2;--pf-color-bg-ink: #001c38;--pf-color-border: #d5dbe2;--pf-color-border-strong: #8290a0;--pf-color-border-control: #6f7f90;--pf-icon-guide: var(--pf-color-border-strong);--pf-color-text: #1b2430;--pf-color-text-soft: #3d4c5c;--pf-color-text-muted: #5f6d7c;--pf-color-text-invert: #ffffff;--pf-color-on-ink: #ffffff;--pf-color-link: #146874;--pf-color-link-hover: #0e4c55;--pf-color-success: #1e7a4c;--pf-color-warning: #8a4d0a;--pf-color-error: #b3261e;--pf-color-error-soft: #fcecea;--pf-color-focus: #2b8a99;--pf-shadow-sm: 0 1px 0 rgba(0, 28, 56, .06);--pf-shadow-md: 0 1px 2px rgba(0, 28, 56, .06);--pf-shadow-lg: 0 6px 16px rgba(0, 28, 56, .1);--pf-rule: 1px solid var(--pf-color-border);--pf-transition: .18s ease}@media(prefers-color-scheme:dark){:root:not([data-pf-theme=light]){--pf-color-brand: #a8c0dc;--pf-color-brand-strong: #c6d6ea;--pf-color-brand-soft: #1a2634;--pf-color-ink: #e6ebf1;--pf-color-heading: #f2f5f8;--pf-color-accent: #d67300;--pf-color-accent-hover: #cc6d00;--pf-color-accent-text: #f2b26b;--pf-color-accent-soft: #3a2a14;--pf-color-accent-edge: #d67300;--pf-color-on-accent: #001c38;--pf-color-bg: #0f161e;--pf-color-surface: #161e28;--pf-color-bg-alt: #1b2430;--pf-color-bg-inset: #232d3a;--pf-color-bg-ink: #0a1220;--pf-color-border: #303a47;--pf-color-border-strong: #626d7b;--pf-color-border-control: #7a8695;--pf-color-text: #e6ebf1;--pf-color-text-soft: #c2cbd5;--pf-color-text-muted: #98a4b2;--pf-color-text-invert: #0f161e;--pf-color-on-ink: #e6ebf1;--pf-color-link: #7cbcc6;--pf-color-link-hover: #a2d0d8;--pf-color-success: #56c48d;--pf-color-warning: #f2b26b;--pf-color-error: #ef8a86;--pf-color-error-soft: #3a1d1c;--pf-color-focus: #2b8a99;--pf-shadow-sm: 0 1px 0 rgba(0, 0, 0, .4);--pf-shadow-md: 0 1px 2px rgba(0, 0, 0, .45);--pf-shadow-lg: 0 6px 16px rgba(0, 0, 0, .55);--pf-rule: 1px solid var(--pf-color-border)}}:root[data-pf-theme=dark]{--pf-color-brand: #a8c0dc;--pf-color-brand-strong: #c6d6ea;--pf-color-brand-soft: #1a2634;--pf-color-ink: #e6ebf1;--pf-color-heading: #f2f5f8;--pf-color-accent: #d67300;--pf-color-accent-hover: #cc6d00;--pf-color-accent-text: #f2b26b;--pf-color-accent-soft: #3a2a14;--pf-color-accent-edge: #d67300;--pf-color-on-accent: #001c38;--pf-color-bg: #0f161e;--pf-color-surface: #161e28;--pf-color-bg-alt: #1b2430;--pf-color-bg-inset: #232d3a;--pf-color-bg-ink: #0a1220;--pf-color-border: #303a47;--pf-color-border-strong: #626d7b;--pf-color-border-control: #7a8695;--pf-color-text: #e6ebf1;--pf-color-text-soft: #c2cbd5;--pf-color-text-muted: #98a4b2;--pf-color-text-invert: #0f161e;--pf-color-on-ink: #e6ebf1;--pf-color-link: #7cbcc6;--pf-color-link-hover: #a2d0d8;--pf-color-success: #56c48d;--pf-color-warning: #f2b26b;--pf-color-error: #ef8a86;--pf-color-error-soft: #3a1d1c;--pf-color-focus: #2b8a99;--pf-shadow-sm: 0 1px 0 rgba(0, 0, 0, .4);--pf-shadow-md: 0 1px 2px rgba(0, 0, 0, .45);--pf-shadow-lg: 0 6px 16px rgba(0, 0, 0, .55);--pf-rule: 1px solid var(--pf-color-border)}:root[data-pf-theme=dark]{color-scheme:dark}:root[data-pf-theme=light]{color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:var(--pf-font-sans);font-size:var(--pf-text-base);line-height:var(--pf-leading-normal);color:var(--pf-color-text);background:var(--pf-color-bg)}h1,h2,h3{color:var(--pf-color-heading);font-weight:var(--pf-weight-bold);line-height:var(--pf-leading-tight);margin:0}h1{font-size:var(--pf-text-xl)}h2{font-size:var(--pf-text-lg)}a{color:var(--pf-color-link);text-underline-offset:var(--pf-underline-offset)}:focus-visible{outline:2px solid var(--pf-color-focus);outline-offset:2px;border-radius:var(--pf-radius-sm)}.loading{padding:var(--pf-space-xl);color:var(--pf-color-text-muted)}.shell{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:var(--pf-space-lg);padding:var(--pf-space-sm) var(--pf-space-lg);background:var(--pf-color-surface);border-bottom:var(--pf-rule)}.brand{display:inline-flex;align-items:center;gap:var(--pf-space-xs);text-decoration:none}.brand__name{font-weight:var(--pf-weight-bold);color:var(--pf-color-heading);padding-left:var(--pf-space-xs);border-left:var(--pf-rule)}.nav{display:flex;gap:var(--pf-space-md)}.nav a{color:var(--pf-color-heading);text-decoration:none;font-weight:var(--pf-weight-medium);padding:var(--pf-space-2xs) 0;border-bottom:2px solid transparent}.nav a.router-link-active{border-bottom-color:var(--pf-color-brand)}.user{margin-left:auto;display:flex;align-items:center;gap:var(--pf-space-sm)}.user__email{color:var(--pf-color-text-muted);font-size:var(--pf-text-sm)}.main{flex:1;min-height:0;overflow:auto}.page{padding:var(--pf-space-lg);max-width:var(--pf-container);display:flex;flex-direction:column;gap:var(--pf-space-lg)}.lead{margin:0;color:var(--pf-color-text-soft);max-width:var(--pf-measure)}.pf-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--pf-space-2xs);font:inherit;font-size:var(--pf-text-base);font-weight:var(--pf-weight-bold);line-height:var(--pf-leading-snug);padding:var(--pf-space-xs) var(--pf-space-md);border-radius:var(--pf-radius-control);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background-color var(--pf-transition),border-color var(--pf-transition),color var(--pf-transition)}.pf-btn--sm{font-size:var(--pf-text-sm);padding:var(--pf-space-2xs) var(--pf-space-sm)}.pf-btn--primary{background:var(--pf-color-accent);border-color:var(--pf-color-accent);color:var(--pf-color-on-accent)}.pf-btn--primary:hover{background:var(--pf-color-accent-hover);border-color:var(--pf-color-accent-hover)}.pf-btn--secondary{background:transparent;border-color:var(--pf-color-brand);color:var(--pf-color-heading)}.pf-btn--secondary:hover{background:var(--pf-color-brand-soft);border-color:var(--pf-color-brand-strong);color:var(--pf-color-brand-strong)}.pf-btn[disabled]{opacity:.5;cursor:not-allowed}.pf-field{display:flex;flex-direction:column;gap:var(--pf-space-2xs)}.pf-field__label{font-weight:var(--pf-weight-bold);color:var(--pf-color-heading)}.pf-field__hint{font-size:var(--pf-text-sm);color:var(--pf-color-text-muted)}.pf-input{font:inherit;color:var(--pf-color-text);background:var(--pf-color-surface);border:1px solid var(--pf-color-border-control);border-radius:var(--pf-radius-control);padding:var(--pf-space-xs) var(--pf-space-sm);line-height:var(--pf-leading-normal);width:100%}textarea.pf-input{resize:vertical;min-height:5rem}.pf-card{display:flex;flex-direction:column;gap:var(--pf-space-xs);padding:var(--pf-space-lg);background:var(--pf-color-surface);border:var(--pf-rule);border-radius:var(--pf-radius-card)}.pf-tag--term{display:inline-block;font-size:var(--pf-text-xs);font-weight:var(--pf-weight-bold);padding:var(--pf-space-3xs) var(--pf-space-xs);border:var(--pf-rule);border-radius:var(--pf-radius-pill);background:var(--pf-color-surface);color:var(--pf-color-text-soft)}.notice{padding:var(--pf-space-sm) var(--pf-space-md);border:var(--pf-rule);border-radius:var(--pf-radius-md);background:var(--pf-color-bg-alt)}.notice--error{background:var(--pf-color-error-soft);border-color:var(--pf-color-error);color:var(--pf-color-text)}.form{display:grid;gap:var(--pf-space-md);max-width:40rem}.row{display:flex;gap:var(--pf-space-sm);align-items:flex-end;flex-wrap:wrap}.muted{color:var(--pf-color-text-muted);font-size:var(--pf-text-sm)}table.list{width:100%;border-collapse:collapse;background:var(--pf-color-surface);border:var(--pf-rule);border-radius:var(--pf-radius-md)}table.list th,table.list td{text-align:left;padding:var(--pf-space-xs) var(--pf-space-sm);border-bottom:var(--pf-rule);vertical-align:top}table.list th{font-size:var(--pf-text-xs);text-transform:uppercase;letter-spacing:var(--pf-tracking-caps);color:var(--pf-color-text-muted);font-weight:var(--pf-weight-medium)}.inbox{display:grid;grid-template-columns:minmax(16rem,22rem) 1fr;height:100%}.convs{border-right:var(--pf-rule);overflow:auto;background:var(--pf-color-surface);margin:0;padding:0;list-style:none}.conv{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:0;border-bottom:var(--pf-rule);padding:var(--pf-space-sm) var(--pf-space-md);cursor:pointer}.conv:hover{background:var(--pf-color-bg-alt)}.conv[aria-current=true]{background:var(--pf-color-brand-soft)}.conv__top{display:flex;justify-content:space-between;gap:var(--pf-space-xs)}.conv__name{font-weight:var(--pf-weight-bold);color:var(--pf-color-heading)}.conv__last{color:var(--pf-color-text-soft);font-size:var(--pf-text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-block;min-width:1.4rem;text-align:center;font-size:var(--pf-text-xs);font-weight:var(--pf-weight-bold);padding:0 var(--pf-space-2xs);border-radius:var(--pf-radius-pill);background:var(--pf-color-brand);color:var(--pf-color-text-invert)}.thread{display:flex;flex-direction:column;min-height:0}.thread__head{padding:var(--pf-space-sm) var(--pf-space-lg);border-bottom:var(--pf-rule);background:var(--pf-color-surface)}.thread__msgs{flex:1;overflow:auto;padding:var(--pf-space-lg);display:flex;flex-direction:column;gap:var(--pf-space-sm);background:var(--pf-color-bg-alt)}.bubble{max-width:70%;padding:var(--pf-space-xs) var(--pf-space-sm);border:var(--pf-rule);border-radius:var(--pf-radius-md);background:var(--pf-color-surface);white-space:pre-wrap;overflow-wrap:anywhere}.bubble--out{align-self:flex-end;background:var(--pf-color-brand-soft)}.bubble__meta{display:block;margin-top:var(--pf-space-3xs);font-size:var(--pf-text-xs);color:var(--pf-color-text-muted)}.composer{display:flex;gap:var(--pf-space-sm);padding:var(--pf-space-sm) var(--pf-space-lg);border-top:var(--pf-rule);background:var(--pf-color-surface)}.composer textarea{min-height:2.75rem}.empty{margin:auto;color:var(--pf-color-text-muted);padding:var(--pf-space-xl);text-align:center}
