:root{--layout-max:1080px;--text:#5c5666;--text-h:#0c0a12;--bg:#f4f2f7;--surface:#fff;--border:#e4e1ea;--accent:#6d28d9;--on-accent:#fff;--accent-bg:#6d28d914;--shadow:0 1px 2px #0c0a120a, 0 12px 28px -12px #0c0a122e;--sans:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--ui:system-ui, "Segoe UI", Roboto, sans-serif;font:17px/150% var(--ui);color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--vv-height:100dvh;--vv-width:100%;--vv-offset-top:0px;--vv-offset-left:0px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#a8aeb8;--text-h:#f4f5f7;--bg:#0f1014;--surface:#181a21;--border:#2c2f3a;--accent:#c4b5fd;--on-accent:#0f1014;--accent-bg:#c4b5fd1f;--shadow:0 1px 2px #0006, 0 16px 36px -14px #0000008c}}*{box-sizing:border-box}body{margin:0}html,body{overscroll-behavior:none;height:100%;overflow:hidden}#root{top:var(--vv-offset-top);left:var(--vv-offset-left);width:var(--vv-width);height:var(--vv-height);min-height:0;position:fixed;overflow:auto}:is(#root:has(.chat-app),#root:has(.discussion-live-shell)){overflow:hidden}h1{font-family:var(--sans);color:var(--text-h);letter-spacing:-.03em;margin:0;font-size:2rem;font-weight:600}a{color:var(--accent)}.home-shell{background:radial-gradient(1200px 480px at 12% -10%, var(--accent-bg), transparent 55%), var(--bg);min-width:0;max-width:100%;min-height:100%}.home-topbar{z-index:2;max-width:var(--layout-max);background:color-mix(in srgb, var(--bg) 92%, transparent);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:20px 24px 12px;display:flex;position:sticky;top:0}.home-brand{letter-spacing:.14em;text-transform:uppercase;min-width:0;color:var(--text-h);margin:0;font-size:13px;font-weight:600;text-decoration:none}a.home-brand:hover{color:var(--accent)}.user-chip{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:10px;padding:6px 12px 6px 6px;display:flex}.user-avatar{background:var(--accent-bg);object-fit:cover;border-radius:50%;width:40px;height:40px;display:block}.user-chip-copy{flex-direction:column;line-height:1.2;display:flex}.user-chip-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text);font-size:11px}.user-chip-name{color:var(--text-h);font-size:14px;font-weight:600}.page{max-width:var(--layout-max);margin:0 auto;padding:32px 24px 48px}.home-hero{border:1px solid var(--border);background:radial-gradient(80% 120% at 100% 0%, var(--accent-bg), transparent 55%), linear-gradient(180deg, var(--surface) 0%, color-mix(in srgb, var(--surface) 88%, var(--accent-bg)) 100%);box-shadow:var(--shadow);border-radius:28px;justify-content:space-between;align-items:center;gap:24px;margin:0 0 40px;padding:36px 36px 32px;display:flex;position:relative;overflow:hidden}.home-hero-copy{flex:1;min-width:0}.home-hero h1{max-width:16ch;font-size:clamp(2rem,4.6vw,3.15rem);line-height:1.12}.home-hero-lede{max-width:46ch;margin:16px 0 0;font-size:1.05rem;line-height:1.55}.home-hero-orbit{flex:none;width:280px;height:280px;position:relative}.home-hero-orbit-ring{border:2px dotted color-mix(in srgb, var(--accent) 55%, var(--border));border-radius:50%;position:absolute;inset:28px}.home-hero-orbit-face{object-fit:cover;object-position:50% 18%;border:3px solid var(--surface);width:72px;height:72px;box-shadow:var(--shadow);transform:rotate(calc(var(--orbit-i) * 60deg - 20deg)) translateY(-112px) rotate(calc(var(--orbit-i) * -60deg + 20deg));border-radius:50%;margin:-36px 0 0 -36px;position:absolute;top:50%;left:50%}.home-hero-orbit-face:first-of-type{--orbit-i:0}.home-hero-orbit-face:nth-of-type(2){--orbit-i:1}.home-hero-orbit-face:nth-of-type(3){--orbit-i:2}.home-hero-orbit-face:nth-of-type(4){--orbit-i:3}.home-hero-orbit-face:nth-of-type(5){--orbit-i:4}.home-hero-orbit-face:nth-of-type(6){--orbit-i:5}@media (width<=720px){.home-hero-orbit{display:none}}.home-intro{margin-bottom:28px}.home-intro-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.character-tile{flex:1;min-height:0;display:flex;position:relative}.character-card-actions{z-index:1;opacity:0;pointer-events:none;gap:6px;transition:opacity .15s;display:flex;position:absolute;top:14px;right:14px}.character-tile:hover .character-card-actions,.character-tile:focus-within .character-card-actions{opacity:1;pointer-events:auto}.character-card-action{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.character-card-action:hover{border-color:var(--accent)}.character-modal{width:min(520px,100vw - 32px);max-height:min(var(--vv-height), 100dvh);border:1px solid var(--border);background:var(--surface);color:inherit;box-shadow:var(--shadow);border-radius:20px;padding:0;overflow:auto}.character-modal::backdrop{background:#0c0a1273}.character-modal-form{flex-direction:column;gap:14px;padding:24px;display:flex}.character-modal-form h2{font-family:var(--sans);color:var(--text-h);margin:0;font-size:1.35rem}.character-modal-field{color:var(--text-h);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.character-modal-field-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.character-modal-field-limit{color:var(--text);opacity:.6;font-size:11px;font-weight:500}.character-modal-field input,.character-modal-field textarea{font:inherit;color:var(--text);border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:8px 10px;font-weight:400}.character-modal-field input::placeholder,.character-modal-field textarea::placeholder{color:var(--text);opacity:.55}.character-modal-avatars{border:none;margin:0;padding:0}.character-modal-avatars legend{color:var(--text-h);margin-bottom:8px;font-size:13px;font-weight:600}.character-modal-avatar-row{flex-wrap:wrap;gap:10px;display:flex}.character-modal-avatar{cursor:pointer;border:2px solid var(--border);border-radius:16px;padding:4px;display:flex}.character-modal-avatar input{opacity:0;pointer-events:none;position:absolute}.character-modal-avatar-on{border-color:var(--accent)}.character-modal-avatar img{object-fit:cover;object-position:50% 18%;border-radius:12px;width:72px;height:72px;display:block}.character-modal-error{color:#b42318;margin:0;font-size:14px}.character-modal-actions{justify-content:flex-end;gap:8px;display:flex}.character-modal-actions button{font:inherit;cursor:pointer}.home-section-title{font-family:var(--sans);letter-spacing:-.03em;color:var(--text-h);margin:0;font-size:1.35rem;font-weight:600}.lede{margin:8px 0 0}.character-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:stretch;gap:20px;margin:0;padding:0;list-style:none;display:grid}.character-grid>li{min-height:0;display:flex}.character-card{border:1px solid var(--border);min-height:180px;color:inherit;background:var(--surface);box-shadow:var(--shadow);border-radius:20px;flex:1;align-items:stretch;gap:20px;padding:28px;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}.character-card:hover{border-color:var(--accent);transform:translateY(-2px)}.character-card-avatar{object-fit:cover;object-position:50% 18%;border-radius:22px;flex:none;width:96px;height:96px}.character-card-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.character-card-name{color:var(--text-h);font-family:var(--sans);letter-spacing:-.02em;font-size:1.45rem;font-weight:600}.character-card-blurb{flex:1;font-size:16px}.character-card-cta{color:var(--accent);margin-top:auto;padding-top:12px;font-size:14px;font-weight:600}.chat-app{background:radial-gradient(1000px 420px at 80% -20%, var(--accent-bg), transparent 58%), var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.chat-app .chat-topbar{box-sizing:border-box;width:min(var(--layout-max), 100%);flex:none;align-self:center;padding-bottom:12px}.chat-page{width:100%;min-height:0;max-width:var(--layout-max);flex-direction:column;flex:1;margin:0 auto;padding:0 24px 18px;display:flex;overflow:hidden}.chat-header-who{align-items:center;gap:12px;min-width:0;display:flex}.chat-back{border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:999px;flex:none;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none}button.chat-back{font:inherit;cursor:pointer;font-size:13px;font-weight:600}.chat-back:hover{border-color:var(--accent)}.chat-header-avatar{object-fit:cover;object-position:50% 18%;width:44px;height:44px;box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--accent-bg);border-radius:14px;flex:none}.chat-header-copy{min-width:0}.chat-header-who h1{white-space:nowrap;font-size:1rem;line-height:1.2}.chat-header-blurb{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:13px;overflow:hidden}.chat-shell{border:1px solid var(--border);background:var(--surface);min-height:0;box-shadow:var(--shadow);border-radius:22px;flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-widget{border:none;flex:1;width:100%;height:100%;min-height:0;display:block}.home-topbar-actions{align-items:center;gap:10px;display:flex}.home-discuss-link{border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none}.home-discuss-link:hover{border-color:var(--accent)}.home-github-link{width:36px;height:36px;color:var(--text-h);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.home-github-link:hover{color:var(--accent)}.home-github-icon{display:block}.discussion-page h1{font-size:2rem}.discussion-live-shell{flex-direction:column;width:100%;max-width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.discussion-live-shell .home-topbar{box-sizing:border-box;width:min(var(--layout-max), 100%);flex:none;align-self:center}.discussion-page{width:100%;min-width:0}.discussion-page-live{flex-direction:column;flex:1;min-height:0;padding:12px 24px 16px;display:flex}.discussion-compact-bar{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;box-shadow:var(--shadow);border-radius:16px;flex:none;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"faces topic rounds""faces notes rounds""actions actions actions";align-items:center;gap:6px 12px;margin:0 0 12px;padding:8px 12px;display:grid}.discussion-compact-bar:not(:has(.discussion-compact-notes)){grid-template-areas:"faces topic rounds""actions actions actions"}.discussion-compact-faces{grid-area:faces;align-items:center;display:flex}.discussion-compact-faces img{object-fit:cover;object-position:50% 18%;border:2px solid var(--surface);border-radius:10px;width:32px;height:32px;margin-left:-8px}.discussion-compact-faces img:first-child{margin-left:0}.discussion-compact-topic{min-width:0;font-family:var(--sans);letter-spacing:-.03em;color:var(--text-h);overflow-wrap:anywhere;grid-area:topic;margin:0;font-size:1.15rem;font-weight:600;line-height:1.2}.discussion-compact-notes{overflow-wrap:anywhere;grid-area:notes;min-width:0;margin:0;font-size:12px}.discussion-compact-rounds{color:var(--text-h);white-space:nowrap;grid-area:rounds;margin:0;font-size:12px;font-weight:600}.discussion-page-live .discussion-actions{grid-area:actions;margin:0}.discussion-page-live .discussion-start{display:none}.discussion-page-live .discussion-thread{flex:1;min-height:0;padding-right:4px;overflow:auto}.discussion-thread-end{display:none}.discussion-fieldset{border:1px solid var(--border);background:var(--surface);border-radius:20px;margin:28px 0 20px;padding:16px 16px 8px}.discussion-fieldset legend{color:var(--text-h);padding:0 6px;font-size:13px;font-weight:600}.discussion-picks,.discussion-attitudes{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.discussion-attitudes{grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));margin-bottom:8px}.discussion-pick{border:1px solid var(--border);cursor:pointer;border-radius:14px;align-items:center;gap:10px;min-width:0;padding:8px 12px 8px 8px;display:flex}.discussion-pick span{overflow-wrap:anywhere;min-width:0}.discussion-pick img{object-fit:cover;object-position:50% 18%;border-radius:12px;width:40px;height:40px}.discussion-pick-on{border-color:var(--accent);background:var(--accent-bg)}.discussion-field{color:var(--text-h);flex-direction:column;gap:8px;margin:0 0 16px;font-size:13px;font-weight:600;display:flex}.discussion-field textarea,.discussion-field input{width:100%;max-width:100%;font:inherit;color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:10px 12px;font-size:17px;font-weight:400}.discussion-field textarea::placeholder,.discussion-field input::placeholder{color:var(--text);opacity:.55}.discussion-rounds{max-width:8rem}.discussion-actions{flex-wrap:wrap;gap:10px;margin:8px 0 24px;display:flex}.discussion-actions button.chat-back{font:inherit;cursor:pointer}.discussion-start{background:var(--accent);color:var(--on-accent);cursor:pointer;border:none;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600}.discussion-start:disabled,.discussion-stop:disabled,.discussion-actions .chat-back:disabled{opacity:.45;cursor:not-allowed}.discussion-error{color:#b42318}.discussion-thread{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.discussion-thread>li{border:1px solid var(--border);background:var(--surface);border-radius:18px;gap:12px;min-width:0;padding:16px;display:flex}.discussion-thread>li>div{min-width:0}.discussion-turn-avatar{object-fit:cover;object-position:50% 18%;border-radius:14px;flex:none;width:44px;height:44px}.discussion-turn-name{color:var(--text-h);margin:0 0 6px;font-weight:600}.discussion-turn-text{overflow-wrap:anywhere;margin:0}.discussion-pending{color:var(--text);font-size:14px}@media (width<=720px){.home-topbar{gap:8px;padding:16px 16px 8px}.home-brand{letter-spacing:.08em;font-size:12px}.page,.chat-page{width:auto;margin-left:16px;margin-right:16px;padding-left:0;padding-right:0}.character-grid{grid-template-columns:minmax(0,1fr)}.discussion-page{padding:20px 0 32px}.discussion-page h1{font-size:1.55rem}.discussion-page-live{padding:8px 0 12px}.discussion-compact-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"topic topic""notes notes""faces rounds""actions actions";align-items:start;gap:6px 10px;padding:8px 10px}.discussion-compact-bar:not(:has(.discussion-compact-notes)){grid-template-areas:"topic topic""faces rounds""actions actions"}.discussion-compact-topic{font-size:1rem}.discussion-compact-faces,.discussion-compact-rounds{align-self:center}.discussion-fieldset{margin:20px 0 16px;padding:12px 10px 6px}.discussion-thread>li{gap:10px;padding:12px}.discussion-turn-avatar{border-radius:12px;width:36px;height:36px}}
