/* finesse · register=h5 · morph=A-app-shell · A=chalk+carbon+cinnabar · B=native-Chinese-15px · C=single-pane-inbox-detail · D=push-and-bottom-sheet · E=everyday-messenger · SOUL=6 SPECTACLE=2 DENSITY=7 */
:root{--surround:#dededb;--bg:#f4f4f2;--surface:#fdfdfb;--secondary-surface:#eaeae7;--ink:#282b2d;--secondary:#686c6f;--muted:#818484;--line:rgba(40,43,45,.11);--accent:#303436;--accent-soft:#e5e6e3;--on-accent:#fafaf8;--signal:#b34833;--signal-soft:#f2e8e2;--bubble:#fdfdfb;--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue","Microsoft YaHei",sans-serif;--shadow:0 30px 90px -40px rgba(26,29,31,.35);--overlay:rgba(26,29,31,.36);--radius:12px}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0;overflow-x:clip}body{overflow:hidden;background:var(--surround);color:var(--ink);font:14px/1.6 var(--font);display:flex;align-items:center;justify-content:center;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:transparent;white-space:nowrap;transition:transform .15s,opacity .15s}button:active:not(:disabled){transform:scale(.97);opacity:.8}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}button,a,input,textarea,select{outline-offset:3px}:focus-visible{outline:2px solid var(--signal)}svg{width:22px;height:22px;flex:none;vertical-align:middle;pointer-events:none}h1,h2,h3,p{margin:0}h1,h2,h3{overflow-wrap:anywhere}h1{font-size:18px;line-height:1.4;font-weight:650}h2{font-size:18px;font-weight:650}h3{font-size:14px;font-weight:600}small{font-size:11px}input,textarea,select{border:1px solid var(--line);border-radius:8px;background:var(--surface);min-height:44px;padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--secondary)}input[type=checkbox]{accent-color:var(--ink);width:20px;height:20px;min-height:20px;flex:none}textarea{resize:vertical}.phone{position:relative;overflow:hidden;width:100%;height:100%;background:var(--bg);display:flex;flex-direction:column}.status-bar{height:44px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-size:12px;line-height:1}.status-bar span{font-size:13px;letter-spacing:2px}.home-indicator{height:4px;width:110px;position:absolute;bottom:6px;left:50%;transform:translateX(-50%);background:var(--ink);border-radius:5px;pointer-events:none;z-index:30}#app{flex:1;min-height:0;display:flex;flex-direction:column}.view{flex:1;display:flex;flex-direction:column;min-height:0;animation:enter .16s ease-out}.topbar{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:6px 12px 10px;min-height:61px;flex:none;background:var(--bg);border-bottom:1px solid var(--line)}.topbar.center .heading{text-align:center;flex:1}.heading{min-width:0}.heading small{display:block;color:var(--secondary);font-size:10px;margin-top:3px}.topbar.inbox{padding:10px 19px 12px;border:0}.topbar.inbox h1{font-size:28px;letter-spacing:-1px}.topbar .actions{display:flex;gap:0}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:10px;flex:none}.icon-button:hover{background:var(--accent-soft)}.header-spacer{width:44px}.scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;scrollbar-width:none}.scroll::-webkit-scrollbar{display:none}.content{padding:20px}.tabbar{display:flex;justify-content:space-around;flex:none;border-top:1px solid var(--line);padding:8px 16px calc(17px + env(safe-area-inset-bottom));background:var(--surface);gap:8px}.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;color:var(--secondary);min-height:44px}.tabbar button.active{color:var(--ink);font-weight:650}.tabbar button.active svg{stroke-width:2.1}.avatar{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;overflow:visible;position:relative;flex:none;background:var(--secondary-surface);font-size:16px;font-weight:550}.avatar img{height:100%;width:100%;object-fit:cover;border-radius:inherit}.avatar.twin{border-radius:50%}.avatar.twin:after{content:'分';font-size:8px;line-height:1;display:grid;place-items:center;width:17px;height:17px;border-radius:5px;position:absolute;bottom:-3px;right:-4px;background:var(--surface);color:var(--signal);border:1px solid var(--line)}.avatar.small{width:32px;height:32px;font-size:12px;border-radius:10px}.avatar.small.twin{border-radius:50%}.avatar.large{width:66px;height:66px;font-size:25px}.avatar.large.twin:after{width:23px;height:23px;font-size:10px}.search{margin:3px 20px 18px;background:var(--secondary-surface);display:flex;align-items:center;gap:7px;border-radius:8px;padding:0 12px;color:var(--secondary)}.search svg{width:17px}.search input{width:100%;border:0;background:none;min-height:39px;padding:8px 0;font-size:13px}.inbox-label{padding:0 21px 8px;font-size:10px;color:var(--secondary);letter-spacing:1px}.room-row{display:flex;gap:13px;padding:17px 20px;width:100%;align-items:center;text-align:left;border-radius:0}.room-row+.room-row{position:relative}.room-row+.room-row:before{position:absolute;content:'';top:0;left:77px;right:20px;height:1px;background:var(--line)}.room-row:hover{background:var(--secondary-surface)}.group-avatar{width:46px;height:46px;flex:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;overflow:hidden;border-radius:11px;background:var(--secondary-surface);padding:3px}.group-avatar img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:3px}.group-avatar .group-letter{display:grid;place-items:center;font-size:11px}.room-copy{flex:1;min-width:0}.room-line{display:flex;gap:10px;align-items:center;justify-content:space-between}.room-line strong{font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis}.room-line time{color:var(--secondary);font-size:10px}.room-preview{margin-top:5px;color:var(--secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread{background:var(--signal);color:var(--on-accent);border-radius:15px;min-width:17px;text-align:center;font-size:10px}.world-entry{display:flex;margin:25px 20px 15px;border-top:1px solid var(--line);padding:20px 0;gap:12px;align-items:center}.world-entry .seal{width:43px;height:43px;display:grid;place-items:center;color:var(--signal);border:1px solid var(--signal);font:20px "Songti SC",serif;border-radius:4px}.world-entry strong{font-size:13px;font-weight:600}.world-entry p{font-size:11px;color:var(--secondary);margin-top:3px}.world-entry svg{margin-left:auto;width:17px}.messages{padding:16px 16px 6px}.date-line{text-align:center;font-size:10px;color:var(--secondary);margin-bottom:21px}.message{display:flex;gap:10px;margin-bottom:19px;align-items:flex-start}.message .avatar{width:35px;height:35px;border-radius:10px}.message .avatar.twin{border-radius:50%}.message-body{max-width:calc(100% - 57px);min-width:0}.message-meta{font-size:11px;display:flex;align-items:center;gap:6px;color:var(--secondary);margin:0 0 5px}.message-meta .twin-tag{font-size:9px;border:1px solid var(--line);border-radius:3px;padding:0 3px;line-height:1.5}.bubble{font-size:14px;line-height:1.8;padding:10px 13px;border-radius:2px 12px 12px 12px;background:var(--bubble);white-space:pre-wrap;overflow-wrap:anywhere;display:inline-block;box-shadow:0 1px 0 var(--line)}.message.mine{flex-direction:row-reverse}.message.mine .message-meta{justify-content:flex-end}.message.mine .message-body{text-align:right}.message.mine .bubble{background:var(--ink);color:var(--on-accent);border-radius:12px 2px 12px 12px;text-align:left;box-shadow:none}.message-tools{display:flex;align-items:center;gap:12px}.message-tools button{font-size:10px;color:var(--secondary);padding:6px 0;min-height:32px}.message-tools svg{width:11px;height:11px;margin-right:4px}.message .avatar-button{padding:0;min-height:36px;border-radius:10px}.room-info-line{text-align:center;font-size:10px;color:var(--secondary);margin:0 5px 23px}.listening{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;padding:0 18px 5px;color:var(--secondary);font-size:10px}.listening svg{width:11px;height:11px}.listening button{font-size:10px;min-height:32px;color:var(--secondary)}.composer-wrap{flex:none;padding:6px 11px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}.composer{display:flex;align-items:flex-end;gap:7px}.composer>.icon-button{min-width:35px}.composer textarea{flex:1;min-width:0;border:1px solid var(--line);background:var(--surface);font-size:15px;border-radius:9px;height:44px;min-height:44px;max-height:112px;resize:none;padding:9px 10px;line-height:24px}.send-button{width:41px;height:44px;background:var(--ink);color:var(--on-accent);border-radius:9px;display:grid;place-items:center}.send-button svg{width:18px;height:18px}.typing{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--secondary);padding:5px 2px 14px}.typing i{width:4px;height:4px;border-radius:50%;background:var(--secondary);animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.profile-hero{display:flex;align-items:center;gap:17px;padding:22px 22px 17px}.profile-hero h2{font-size:21px;letter-spacing:-.5px}.profile-hero small{display:block;color:var(--secondary);font-size:11px;margin-top:5px}.profile-statement{padding:0 22px 22px;color:var(--secondary);font-size:13px;line-height:1.9}.profile-mode{margin:0 22px 20px;display:flex;align-items:center;justify-content:space-between;font-size:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px 0}.profile-mode select{border:0;background:transparent;max-width:140px;font-size:12px}.segments{display:flex;border-bottom:1px solid var(--line);padding:0 22px;gap:26px}.segments button{min-height:46px;font-size:13px;color:var(--secondary);position:relative;padding:0}.segments .active{color:var(--ink);font-weight:600}.segments .active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--secondary);margin-bottom:9px}.section-title button{font-size:11px;min-height:36px;text-decoration:underline;text-underline-offset:3px}.memory-row{padding:16px 0;border-bottom:1px solid var(--line);width:100%;white-space:normal;text-align:left;display:block}.memory-row small{font-size:10px;color:var(--secondary)}.memory-row h3{font-size:14px;line-height:1.6;margin:5px 0}.memory-row p{font-size:12px;color:var(--secondary);line-height:1.9}.source-caption{display:flex;gap:5px;align-items:center;font-size:10px;color:var(--secondary);margin-top:9px}.source-caption svg{width:12px;height:12px}.notice{font-size:11px;line-height:1.9;color:var(--secondary);margin:18px 0}.notice svg{width:12px;height:12px;margin-right:4px}.primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;padding:11px 15px;border-radius:9px;background:var(--ink);color:var(--on-accent);font-size:13px}.secondary-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:45px;border:1px solid var(--line);border-radius:9px;font-size:13px}.primary svg,.secondary-button svg{width:17px}.candidate-banner{background:var(--signal-soft);color:var(--signal);border-radius:7px;padding:12px;width:100%;text-align:left;font-size:12px;margin-bottom:10px}.persona-section{padding:15px 0;border-bottom:1px solid var(--line)}.persona-section h3{font-size:13px}.persona-section p{font-size:13px;color:var(--secondary);line-height:1.95;margin-top:7px}.source-row{display:flex;gap:11px;padding:17px 0;border-bottom:1px solid var(--line);align-items:flex-start}.source-glyph{width:33px;min-height:38px;display:grid;place-items:center;background:var(--secondary-surface);border-radius:6px}.source-copy{min-width:0;flex:1}.source-copy h3{font-size:12px;overflow-wrap:anywhere}.source-copy p{font-size:10px;color:var(--secondary);margin-top:4px}.source-copy .status{color:var(--signal);font-size:11px;margin-top:7px}.source-row>.icon-button{min-width:32px;min-height:40px}.source-row svg{width:17px}.empty{min-height:200px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--secondary);text-align:center;padding:30px 20px}.empty h3{color:var(--ink);font-size:16px}.empty p{font-size:12px;line-height:1.9;max-width:280px}.empty svg{width:32px;height:32px}.settings-row{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;border-bottom:1px solid var(--line);font-size:13px;text-align:left}.settings-row span{flex:1}.settings-row small{font-size:10px;color:var(--secondary)}.settings-row svg{width:18px}.invitation-row{background:var(--surface);padding:15px;margin:8px 20px;border-radius:8px;display:flex;gap:10px;align-items:center;font-size:12px}.invitation-row div{flex:1}.invitation-row button{min-height:44px;color:var(--signal);font-size:12px}.login-screen{padding:28px 28px 20px}.login-brand{font-size:32px;letter-spacing:3px;font-weight:600;margin-bottom:12px}.login-screen>p{font-size:13px;color:var(--secondary);line-height:1.9;margin-bottom:30px}.login-tabs{display:flex;gap:24px;margin-bottom:25px}.login-tabs button{font-size:16px;padding:0 0 8px;border-bottom:2px solid transparent}.login-tabs .active{border-color:var(--ink)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field>span{font-size:12px}.field textarea{min-height:80px;font-size:13px;line-height:1.8}.field small{color:var(--secondary);font-size:11px}.field input{width:100%}.login-alt{font-size:12px;display:block;text-align:center;margin-top:22px;min-height:44px;text-decoration:underline}.form-error{color:var(--signal);font-size:12px;line-height:1.8;min-height:20px;margin:10px 0}.desktop-note{display:none}dialog{width:calc(100vw - 22px);max-width:390px;max-height:85%;border:1px solid var(--line);border-radius:18px 18px 8px 8px;padding:0;background:var(--surface);color:var(--ink);overflow:auto;box-shadow:var(--shadow)}dialog::backdrop{background:var(--overlay)}.dialog-header{padding:13px 15px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:17px}.dialog-content{padding:20px}.dialog-content>p{font-size:12px;color:var(--secondary);line-height:1.9;margin-bottom:16px}.dialog-actions{display:flex;gap:10px;padding-top:20px}.dialog-actions button{flex:1;min-height:44px;border:1px solid var(--line);border-radius:8px;font-size:12px}.dialog-actions .primary{background:var(--ink)}.danger{color:var(--signal)}.member-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);width:100%;text-align:left}.member-copy{flex:1;min-width:0}.member-copy h3{font-size:13px}.member-copy p{font-size:11px;color:var(--secondary);margin-top:4px}.member-row>button{min-width:44px;min-height:44px;font-size:11px}.member-row input{margin:0}.grant-row{display:flex;gap:11px;padding:14px 0;border-bottom:1px solid var(--line);align-items:flex-start}.grant-row input{margin-top:4px}.grant-row strong{font-size:13px;font-weight:600;display:block}.grant-row p{font-size:11px;color:var(--secondary);margin-top:4px;line-height:1.8}.quote{background:var(--bg);border-radius:8px;padding:14px;margin:14px 0;font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.dropzone{background:var(--bg);border:1px dashed var(--secondary);border-radius:10px;width:100%;padding:28px 16px;text-align:center;white-space:normal;margin:10px 0}.dropzone p{font-size:13px;margin-top:10px}.dropzone small{font-size:11px;color:var(--secondary)}.banner{padding:9px 16px;background:var(--signal-soft);color:var(--signal);font-size:11px;line-height:1.7;flex:none}#toast{position:fixed;z-index:100;bottom:40px;left:50%;transform:translateX(-50%);opacity:0;pointer-events:none;background:var(--ink);color:var(--on-accent);border-radius:10px;padding:11px 16px;font-size:12px;max-width:340px;width:max-content;transition:opacity .2s;text-align:center}#toast.show{opacity:1}@keyframes enter{from{opacity:.6;transform:translateX(6px)}to{opacity:1;transform:none}}@keyframes blink{50%{opacity:.25}}
@media(min-width:560px){.phone{width:390px;height:min(844px,94vh);border-radius:34px;border:1px solid rgba(40,43,45,.12);box-shadow:var(--shadow),0 0 0 7px var(--surface)}dialog{max-height:min(720px,85vh)}.desktop-note{display:block;width:225px;position:absolute;left:calc(50% - 470px);top:calc(50% - 250px)}.desktop-brand{font-size:26px;font-weight:600;letter-spacing:4px}.desktop-brand span{display:block;font-size:9px;letter-spacing:3px;color:var(--secondary);margin-top:5px}.desktop-note>p{font-size:19px;line-height:1.9;margin:45px 0 30px;letter-spacing:1px}.desktop-links{display:flex;flex-direction:column;gap:15px;font-size:12px}.desktop-note>small{display:block;margin-top:48px;font-size:10px;color:var(--secondary)}}
@media(min-width:560px) and (max-width:1020px){.desktop-note{display:none}}
@media(max-width:559px){.status-bar{display:none}.topbar{padding-top:calc(env(safe-area-inset-top) + 7px)}.topbar.inbox{padding-top:calc(env(safe-area-inset-top) + 16px)}.home-indicator{display:none}.composer-wrap{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.tabbar{padding-bottom:calc(8px + env(safe-area-inset-bottom))}dialog{margin-top:auto;margin-bottom:calc(10px + env(safe-area-inset-bottom))}.login-screen{padding-top:calc(env(safe-area-inset-top) + 40px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:559px){body{height:var(--viewport-height,100%);align-items:flex-start}.phone{height:100%}input,textarea{font-size:16px}}
/* Story rooms: same messenger shell, a shared narrative instead of a personal game dashboard. */
.identity-pair{padding:4px 0 22px;border-bottom:1px solid var(--line)}.identity-person{display:flex;align-items:center;gap:16px;padding:9px 0 24px}.identity-person small{display:block;font-size:11px;color:var(--secondary);margin-bottom:3px}.identity-person h2{font-size:24px}.identity-person p{font-size:11px;color:var(--secondary);margin-top:6px}.identity-twin{display:flex;align-items:center;gap:12px;width:100%;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:10px;text-align:left}.identity-twin>span:nth-child(2){flex:1;min-width:0}.identity-twin strong{display:block;font-size:14px}.identity-twin small{display:block;font-size:11px;color:var(--secondary);white-space:normal;margin-top:3px}.identity-twin svg{width:17px}.identity-worlds{padding:22px 0 10px}.identity-worlds h3{font-size:11px;color:var(--secondary);font-weight:500;margin-bottom:5px}.identity-worlds .settings-row small{display:block;margin-top:3px}.story-room-mark{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;font:24px "Songti SC",serif;color:var(--signal);background:var(--surface);flex:none}.story-room-mark.ming{color:var(--ink)}.world-ribbon{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 16px;min-height:65px;border-bottom:1px solid var(--line);background:var(--surface);flex:none;white-space:normal}.world-seal{display:grid;place-items:center;width:32px;height:35px;font:19px "Songti SC",serif;color:var(--signal);border:1px solid var(--signal);border-radius:2px;flex:none}.world-ribbon strong{display:block;font-size:12px;font-weight:550}.world-ribbon small{display:block;font-size:10px;color:var(--secondary);margin-top:2px}.world-ribbon-end{margin-left:auto;display:flex;align-items:center;white-space:nowrap;font-size:10px;color:var(--secondary)}.world-ribbon-end svg{width:14px}.story-messages{padding-top:15px}.story-messages>.room-info-line{font-size:10px;margin-bottom:22px}.gm-event{padding:17px 0 20px;margin:0 0 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gm-byline{display:flex;align-items:center;gap:7px;color:var(--secondary);font-size:10px;line-height:1.6}.gm-byline time{margin-left:auto;font-size:9px}.gm-glyph{display:grid;place-items:center;width:20px;height:20px;background:var(--ink);color:var(--on-accent);border-radius:4px;font-size:10px}.gm-event h2{font:600 21px/1.6 "Songti SC","STSong",serif;margin:13px 0 9px;letter-spacing:.6px}.gm-event p{font-size:13px;color:var(--ink);line-height:1.95}.gm-event>small{display:block;color:var(--secondary);font-size:9px;margin-top:9px}.npc-avatar{background:var(--secondary-surface);color:var(--secondary);font:18px "Songti SC",serif;border:1px solid var(--line)}.story-chat .message-meta{font-size:10px;gap:5px}.story-chat .twin-tag{font-size:8px}.story-chat .bubble{font-size:13px;line-height:1.85}.story-chat .message{margin-bottom:20px}.gm-consequence{padding:16px 0 12px;margin:16px 0;border-top:1px solid var(--line)}.gm-consequence>p{font-size:12px;line-height:1.95;color:var(--secondary);margin-top:9px}.story-changes{margin-top:10px}.story-changes button{display:block;width:100%;white-space:normal;text-align:left;font-size:10px;color:var(--secondary);min-height:36px;line-height:1.8}.story-changes span{font-size:10px;font-weight:600;color:var(--ink);margin-right:8px}.gm-ruling{background:var(--signal-soft);border-radius:8px;padding:12px 14px;margin-bottom:19px}.gm-ruling strong{color:var(--signal);font-size:11px}.gm-ruling p{font-size:12px;line-height:1.9;margin-top:7px;white-space:pre-wrap}.intervention-message .bubble{border:1px solid var(--signal)}.intervention-state{display:block;font-size:9px;color:var(--secondary);padding-top:5px}.host-status{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:var(--secondary);padding:0 15px;min-height:33px;flex:none}.host-status>span{display:flex;align-items:center;gap:6px}.host-status i{width:4px;height:4px;border-radius:50%;background:var(--signal);flex:none}.host-status button{min-width:34px;min-height:32px}.host-status button svg{width:18px}.story-composer{padding-top:0}.story-voice{display:flex;justify-content:space-between;align-items:center;gap:5px;padding:0 3px 1px;min-height:39px}.story-voice button{font-size:10px;color:var(--ink);min-height:39px;padding:0}.story-voice button svg{width:11px;height:11px;transform:rotate(90deg);margin-left:4px}.story-voice small{font-size:9px;color:var(--secondary)}.participation-option{display:block;width:100%;padding:17px 0;border-bottom:1px solid var(--line);text-align:left;white-space:normal}.participation-option strong{display:block;font-size:13px;font-weight:550}.participation-option span{display:block;font-size:12px;color:var(--secondary);margin-top:6px;line-height:1.8}.story-section-heading{margin-top:22px;font-size:11px;color:var(--secondary)}.character-heading{display:flex;align-items:center;gap:15px;margin-bottom:19px}.character-heading h2{font-size:21px}.character-heading p{font-size:12px;color:var(--secondary);margin-top:3px}.world-character-status{display:flex;align-items:center;justify-content:space-between;font-size:11px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:17px}.character-inventory{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.character-inventory span{font-size:11px;border:1px solid var(--line);padding:6px 9px;border-radius:5px}.story-world-title{display:flex;align-items:center;gap:12px;margin-bottom:19px}.story-world-title h2{font-size:19px}.story-world-title p{font-size:11px;color:var(--secondary);margin-top:5px}.world-summary-line{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);font-size:11px;color:var(--secondary);margin-bottom:4px}.story-chat .topbar h1{font-size:17px}
.character-dimensions{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:18px 0}.character-dimensions summary{cursor:pointer;font-size:12px;min-height:32px;line-height:32px}.character-dimensions dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0}.character-dimensions dt{font-size:10px;color:var(--secondary)}.character-dimensions dd{margin:2px 0 0;font-size:16px;font-variant-numeric:tabular-nums}.character-dimensions small{font-size:10px;color:var(--secondary)}

.bubble + .bubble{margin-top:7px}

.lab-intro{display:block;width:100%;border:0;background:transparent;color:var(--muted,#707773);font:inherit;font-size:12px;line-height:1.8;text-align:center;padding:14px 4px;min-height:44px;cursor:pointer}.lab-intro small{font-size:11px}.listening>span{max-width:77%;font-size:10px}
.message-body > .bubble{display:block;width:fit-content;max-width:100%}.message.mine .message-body > .bubble{margin-left:auto}

.news-source{display:block;margin:8px 0;padding:10px 12px;max-width:290px;border:1px solid #deded9;border-radius:10px;color:inherit;background:#fafaf7;text-decoration:none}.news-source strong{display:block;font-size:12px;font-weight:500;line-height:1.6}.news-source small{display:block;margin-top:6px;color:#858984;font-size:10px;line-height:1.5}

.stream-status{display:block;color:#858984;font-size:10px;margin-top:5px}
