:root{color-scheme:dark;--bs-secondary-color:#c1ccdb;--bs-secondary-color-rgb:193,204,219;--bs-secondary-rgb:193,204,219;--circle-surface-bg:rgba(22,44,82,0.82);--circle-surface-border:rgba(125,184,255,0.44);--circle-surface-elevated-bg:rgba(28,56,104,0.9);--circle-surface-text:#dbeafe;--circle-surface-muted-text:#c7ddff;--circle-surface-shadow:inset 0 1px 0 rgba(191,219,254,0.07),0 10px 24px rgba(2,6,23,0.24)}body,html{min-height:100%}body{margin:0;background:radial-gradient(circle at top,#1f2937 0,#111827 55%,#030712 100%)}.app-navbar{background:radial-gradient(circle at 8% -30%,rgba(59,130,246,.04) 0,rgba(59,130,246,0) 62%),linear-gradient(180deg,rgba(16,24,41,.84),rgba(15,23,42,.82));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app-navbar .navbar-brand{color:#dbeafe}.app-brand-logo{border-radius:999px;width:26px;height:26px;aspect-ratio:1/1;object-fit:contain;flex-shrink:0}.app-navbar .navbar-brand:focus-visible,.app-navbar .navbar-brand:hover{color:#eff6ff}.app-navbar .btn.nav-link,.app-navbar .nav-link{color:#bfdbfe}.app-navbar .nav-sign-out-form{margin:0}.app-navbar .nav-sign-out-button{font:inherit}.app-navbar .btn.nav-link:focus-visible,.app-navbar .btn.nav-link:hover,.app-navbar .nav-link:focus-visible,.app-navbar .nav-link:hover{color:#e0f2fe}.app-root-layout{display:flex;flex-direction:column;min-height:100vh}.app-page-content{flex:1 0 auto}.landing-marketing{font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif}.landing-hero{background:radial-gradient(circle at 10% 0,rgba(255,88,41,.32) 0,rgba(255,88,41,0) 42%),radial-gradient(circle at 95% 15%,rgba(0,209,178,.24) 0,rgba(0,209,178,0) 38%),linear-gradient(135deg,#0f172a,#111827 55%,#0b1226);border:1px solid rgba(148,163,184,.28);margin-top:4em;box-shadow:3px 3px 10px 4px rgba(0,0,0,.25)}.landing-kicker{color:#facc15;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.landing-headline{color:#f8fafc;font-size:clamp(1.7rem,3.4vw,2.8rem);font-weight:800;line-height:1.06;max-width:16ch}.landing-subcopy{color:#cbd5e1;font-size:1.03rem;max-width:62ch}.landing-hero-cta-primary,.landing-hero-cta-secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;letter-spacing:.01em;min-height:2.75rem;padding:.6rem 1.1rem;text-decoration:none;outline:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease}.landing-hero-cta-primary{background:linear-gradient(115deg,#ff7a2f,#ff9f45 38%,#22d3ee) padding-box,linear-gradient(115deg,rgba(255,233,211,.88),rgba(186,230,253,.78)) border-box;border:1px solid transparent;box-shadow:0 10px 24px rgba(255,122,47,.14);color:#061220}.landing-hero-cta-primary:focus-visible,.landing-hero-cta-primary:hover{color:#030712;box-shadow:0 14px 28px rgba(255,122,47,.18);transform:translateY(-1px)}.landing-hero-cta-secondary{background:rgba(2,6,23,.44);border:1px solid rgba(148,163,184,.45);color:#dbeafe}.landing-hero-cta-secondary:focus-visible,.landing-hero-cta-secondary:hover{border-color:rgba(56,189,248,.7);color:#f8fafc;transform:translateY(-1px)}.landing-hero-cta-primary:focus-visible,.landing-hero-cta-secondary:focus-visible{outline:2px solid rgba(191,219,254,.88);outline-offset:2px}.landing-pill{background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.35);border-radius:999px;color:#e2e8f0;font-size:.82rem;font-weight:600;padding:.4rem .85rem}.landing-metric-panel{background:rgba(2,6,23,.78);border:1px solid rgba(148,163,184,.28);border-radius:1rem;padding:1rem}.landing-panel-kicker{color:#94a3b8;font-size:.8rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.landing-metric-row{padding:.8rem}.landing-metric-value{color:#22d3ee;font-size:1.08rem;font-weight:700}.landing-metric-label{color:#cbd5e1;font-size:.92rem}.circle-public-letter-action{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-2px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease;white-space:nowrap}.circle-public-letter-summary:focus-within .circle-public-letter-action,.circle-public-letter-summary:hover .circle-public-letter-action{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}@media (hover:none){.circle-public-letter-action{opacity:1;visibility:visible;pointer-events:auto;transform:none}}[data-testid=circle-detail-page] .card,[data-testid=circle-detail-page] .list-group-item.bg-body-tertiary,[data-testid=circle-detail-page] [data-testid=compliance-center-card],[data-testid=circle-detail-page] [data-testid=cycle-status-card],[data-testid=circle-members-page] .card,[data-testid=circle-members-page] .list-group-item.bg-body-tertiary,[data-testid=circle-members-page] [data-testid=compliance-center-card],[data-testid=circles-dashboard-page] .card,[data-testid=discover-circles-list] .card,[data-testid=discover-page-circles-list] .card,[data-testid=my-circles-list] .card{background-color:var(--circle-surface-bg)!important;border-color:var(--circle-surface-border)!important;box-shadow:var(--circle-surface-shadow)}[data-testid=circle-detail-page] .alert-dark,[data-testid=circle-members-page] .alert-dark,[data-testid=circles-dashboard-page] .alert-dark,[data-testid=discover-circles-list] .alert-dark,[data-testid=discover-page-circles-list] .alert-dark,[data-testid=my-circles-list] .alert-dark{background-color:var(--circle-surface-elevated-bg)!important;border-color:var(--circle-surface-border)!important;color:var(--circle-surface-text)}[data-testid=circle-detail-page] .text-secondary,[data-testid=circle-members-page] .text-secondary,[data-testid=circles-dashboard-page] .text-secondary,[data-testid=discover-circles-list] .text-secondary,[data-testid=discover-page-circles-list] .text-secondary,[data-testid=my-circles-list] .text-secondary{color:var(--circle-surface-muted-text)!important}.circle-public-letter-summary{background:var(--circle-surface-elevated-bg);border-color:var(--circle-surface-border)!important;box-shadow:inset 0 0 0 1px rgba(186,230,253,.08)}.public-letter-feature{background:radial-gradient(circle at 8% 14%,rgba(125,211,252,.2) 0,rgba(125,211,252,0) 48%),linear-gradient(145deg,rgba(15,23,42,.9),rgba(12,20,36,.95));border:1px solid rgba(125,211,252,.48);border-radius:.95rem;box-shadow:inset 0 1px 0 rgba(186,230,253,.18),0 14px 34px rgba(2,6,23,.34);padding:1rem 1.1rem}.public-letter-feature-label{color:#7dd3fc;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.4rem}.circle-card-primary-action{background-color:rgba(59,130,246,.92);border-top:1px solid rgba(186,230,253,.35);color:#f8fbff;font-weight:600;transition:background-color .18s ease,color .18s ease}.circle-card-primary-action:focus-visible,.circle-card-primary-action:hover{background-color:rgba(96,165,250,.98);color:#ffffff}[data-testid=circle-detail-page] .letter-thumbnail-card{box-shadow:inset 0 1px 0 rgba(191,219,254,.07),0 10px 22px rgba(2,6,23,.28);transition:transform .18s ease,box-shadow .18s ease}[data-testid=circle-detail-page] .letter-thumbnail-card:focus-visible,[data-testid=circle-detail-page] .letter-thumbnail-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px 0 rgba(191,219,254,.07),0 18px 34px rgba(2,6,23,.4)}.public-circles-list{padding-bottom:4em}.landing-feature-card{background:rgba(15,23,42,.7);border:1px solid rgba(148,163,184,.22);border-radius:.85rem;padding:1rem}.landing-step-card{background:rgba(2,6,23,.46);border:1px solid rgba(148,163,184,.24);border-radius:.75rem;padding:.95rem}.landing-cta-band{background:radial-gradient(circle at 15% 8%,rgba(0,209,178,.26),rgba(0,209,178,0) 38%),linear-gradient(120deg,rgba(15,23,42,.96),rgba(17,24,39,.96));border:1px solid rgba(148,163,184,.35)}.app-footer{background:rgba(2,6,23,.7);margin-top:auto}.app-footer a{color:#93c5fd;text-decoration:none}.app-footer a:focus-visible,.app-footer a:hover{color:#bfdbfe;text-decoration:underline}.user-avatar{border-radius:999px;object-fit:cover;display:inline-block;vertical-align:middle;flex-shrink:0}.profile-avatar-editor{position:relative;width:56px;height:56px}.profile-avatar-editor .user-avatar{width:56px;height:56px}.profile-avatar-remove-button{position:absolute;right:-.35rem;bottom:-.25rem;width:1.75rem;height:1.75rem;border:1px solid rgba(248,250,252,.35);border-radius:999px;background:rgba(15,23,42,.88);color:#f8fafc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,background-color .14s ease}.profile-avatar-remove-button:focus-visible,.profile-avatar-remove-button:hover{background:rgba(30,41,59,.95)}.profile-avatar-editor:focus-within .profile-avatar-remove-button,.profile-avatar-editor:hover .profile-avatar-remove-button{opacity:1;transform:translateY(0)}@media (max-width:991.98px){.landing-headline{max-width:none}}.letter-body{margin:0;white-space:pre-wrap;font-family:Georgia,Times New Roman,serif;line-height:1.7}.letter-body ol,.letter-body ul{margin:0;padding-left:1.3em;white-space:normal}.letter-body li{margin:0;line-height:1.4;white-space:normal}.letter-body li>div,.letter-body li>h1,.letter-body li>h2,.letter-body li>h3,.letter-body li>h4,.letter-body li>h5,.letter-body li>h6,.letter-body li>p{margin:0}.editor-preview{margin:0;min-height:10rem;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.letter-editor-canvas{min-height:14rem}.letter-editor-paragraph-shell{position:relative}.letter-title-input{width:100%;padding:.35rem .1rem .55rem;border:0;border-bottom:1px solid rgba(191,219,254,.42);background:transparent;color:#f8fafc;font-size:clamp(1.55rem,2.8vw,2.2rem);font-weight:650;line-height:1.2;outline:none;transition:border-color .14s ease}.letter-title-input::placeholder{color:rgba(186,230,253,.62)}.letter-title-input:hover{border-bottom-color:rgba(191,219,254,.6)}.letter-title-input:focus{border-bottom-color:rgba(125,211,252,.95)}.letter-editor-paragraph-controls{position:absolute;top:0;left:0;transform:translateY(calc(-100% - .25rem));z-index:2;padding:.2rem .35rem;border-radius:999px;background:rgba(2,6,23,.82);box-shadow:0 10px 24px rgba(2,6,23,.45)}.letter-editor-control-button{display:inline-flex;position:relative;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:.45rem;background:transparent;color:#e2e8f0;padding:0;font-size:1rem;line-height:1;transition:background-color .14s ease,color .14s ease,transform .14s ease}.letter-editor-control-button:after{content:attr(data-control-label);position:absolute;left:50%;bottom:calc(100% + .35rem);transform:translate(-50%,4px);opacity:0;pointer-events:none;white-space:nowrap;border:1px solid rgba(125,211,252,.45);border-radius:.45rem;background:rgba(2,6,23,.95);color:#e0f2fe;font-size:.72rem;line-height:1.2;padding:.2rem .4rem;transition:opacity .14s ease,transform .14s ease;z-index:3}.letter-editor-control-button:focus-visible,.letter-editor-control-button:hover{background:rgba(30,64,175,.42);color:#ffffff;transform:translateY(-1px)}.letter-editor-control-button:focus-visible:after,.letter-editor-control-button:hover:after{opacity:1;transform:translate(-50%)}.letter-editor-control-button--active{background:rgba(37,99,235,.55);color:#ffffff}.letter-editor-control-button:focus-visible{outline:2px solid rgba(125,211,252,.88);outline-offset:1px}.letter-editor-paragraph{margin:0;min-height:2.2rem;padding:.2rem 0;border-radius:0;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1.75;background:transparent;outline:none}.letter-editor-paragraph ol,.letter-editor-paragraph ul{margin:0;padding-left:1.3em;white-space:normal}.letter-editor-paragraph li{margin:0;line-height:1.35;white-space:normal}.letter-editor-paragraph li>div,.letter-editor-paragraph li>h1,.letter-editor-paragraph li>h2,.letter-editor-paragraph li>h3,.letter-editor-paragraph li>h4,.letter-editor-paragraph li>h5,.letter-editor-paragraph li>h6,.letter-editor-paragraph li>p{margin:0}.letter-editor-paragraph[data-placeholder]:empty:before,.letter-editor-paragraph[data-placeholder]:has(>br:only-child):before{content:attr(data-placeholder);color:#a8b3c2}.parent-letter-preview{border:1px solid rgba(148,163,184,.35);border-radius:.65rem;background:rgba(2,6,23,.3);padding:.65rem .8rem}.parent-letter-preview-summary{cursor:pointer;color:#dbeafe;font-weight:600}.parent-letter-preview-body{margin-top:.65rem;max-height:400px;overflow-y:auto;border-top:1px solid rgba(148,163,184,.25);padding-top:.65rem}.home-letter-list{gap:.35rem}.home-letter-item{list-style:none}.home-letter-group-title{color:#dbeafe;font-size:1.15rem;font-weight:700;letter-spacing:.01em}.member-roster-list{margin-top:.25rem}.member-roster-list-item{background:rgba(3,8,22,.56);border:1px solid rgba(148,163,184,.24);border-radius:.72rem;padding:.72rem .88rem;box-shadow:inset 0 1px 0 rgba(191,219,254,.04)}.home-letter-item-link{display:block;width:100%;padding:.65rem .75rem;border-radius:.6rem;border:1px solid transparent;background:transparent;color:#f8fafc;text-decoration:none;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.home-letter-item-link:focus-visible,.home-letter-item-link:hover{background:rgba(148,163,184,.14);border-color:rgba(148,163,184,.35);color:#ffffff}.home-letter-item-title{color:inherit;font-size:.98rem;font-weight:500}.home-letter-item-meta{margin-top:.1rem;color:var(--circle-surface-muted-text);font-size:.84rem}.landing-homepage-logged-in{margin-top:2em}.sign-up-form-shell{border-left:1px solid rgba(148,163,184,.32);padding-left:.9rem}.letter-circle-context-link{display:inline-flex;align-items:center;gap:.35rem;color:#9dd7ff;font-size:.84rem;font-weight:600;text-decoration:none;transition:color .16s ease,transform .16s ease}.letter-circle-context-link:focus-visible,.letter-circle-context-link:hover{color:#d8f0ff;transform:translateX(-1px);text-decoration:none}.letter-detail-title{color:#f8fafc;font-size:clamp(2rem,4.8vw,2.9rem);line-height:1.12;font-weight:700}.letter-detail-author,.letter-detail-published{color:var(--bs-secondary-color);font-size:.96rem}