:root{--primary:#6c5ce7;--primary-light:#a29bfe;--primary-dark:#5541d7;--accent:#00cec9;--accent-light:#81ecec;--pink:#fd79a8;--orange:#fdcb6e;--green:#00b894;--red:#e17055;--bg:#f8f9ff;--card-bg:#fff;--text:#2d3436;--text-light:#636e72;--border:#dfe6e9;--shadow:0 4px 15px #6c5ce71f;--shadow-hover:0 8px 25px #6c5ce733;--radius:16px;--radius-sm:10px;color:var(--text);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);min-height:100dvh;margin:0}#root{max-width:960px;margin:0 auto;padding:0 16px}button{cursor:pointer;border:none;font-family:inherit;font-size:15px;transition:all .2s}.primary-btn{background:var(--primary);color:#fff;border-radius:var(--radius-sm);padding:10px 20px;font-weight:600}.primary-btn:hover:not(:disabled){background:var(--primary-dark);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.primary-btn.big{border-radius:var(--radius);padding:14px 28px;font-size:17px}.primary-btn.small{padding:6px 14px;font-size:13px}.secondary-btn{background:var(--card-bg);color:var(--primary);border:2px solid var(--primary-light);border-radius:var(--radius-sm);padding:8px 18px;font-weight:600}.secondary-btn:hover{background:var(--primary);color:#fff}.text-btn{color:var(--text-light);background:0 0;padding:8px;text-decoration:underline}.delete-btn{color:var(--red);border-radius:var(--radius-sm);background:0 0;padding:4px 10px;font-size:18px}.delete-btn:hover{background:#e170551a}.group-btn{background:var(--green)!important}.group-btn:hover:not(:disabled){background:#00a884!important}input[type=text],input[type=password],textarea{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--text);padding:12px 16px;font-family:inherit;font-size:15px;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--primary-light);outline:none}textarea{resize:vertical}label{color:var(--text-light);text-align:left;margin-bottom:16px;font-size:14px;font-weight:600;display:block}label input,label textarea{margin-top:6px}.error{color:var(--red);margin:8px 0;font-size:14px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:3px}.model-loader{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100dvh;padding:20px;display:flex}.model-loader h1{background:linear-gradient(135deg, var(--primary), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem}.loader-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loader-status{color:var(--primary);font-size:16px;font-weight:600}.loader-hint{color:var(--text-light);max-width:400px;font-size:13px}.access-gate{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100dvh;display:flex}.access-gate h1{background:linear-gradient(135deg, var(--primary), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem}.access-gate p{color:var(--text-light);margin-bottom:8px}.access-gate form{gap:8px;display:flex}.access-gate input{text-align:center;letter-spacing:4px;width:160px;font-size:18px}.app{min-height:100dvh;padding-bottom:32px}.top-bar{z-index:50;background:var(--bg);justify-content:space-between;align-items:center;padding:12px 4px;display:flex;position:sticky;top:0}.top-logo{background:linear-gradient(135deg, var(--primary), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:700}.top-right{align-items:center;gap:12px;display:flex;position:relative}.coin-display{color:#8a6d00;background:linear-gradient(135deg,#fff8e1,#fff3cd);border:1px solid #f0d060;border-radius:20px;align-items:center;gap:5px;padding:5px 12px;font-size:14px;font-weight:700;display:flex}.coin-icon{vertical-align:middle;flex-shrink:0;width:18px;height:18px;display:inline-block}.coin-count{font-variant-numeric:tabular-nums}.top-avatar-btn{background:var(--primary-light);border:2px solid var(--primary-light);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex;overflow:hidden}.top-avatar-btn:hover{border-color:var(--primary)}.top-avatar-img{object-fit:cover;width:100%;height:100%}.top-avatar-letter{color:#fff;font-size:16px;font-weight:700}.top-signin{background:var(--primary);color:#fff;border-radius:20px;padding:8px 20px;font-size:14px;font-weight:600}.top-signin:hover{background:var(--primary-dark)}.account-menu{background:var(--card-bg);border:1px solid var(--border);z-index:100;border-radius:14px;min-width:220px;position:absolute;top:44px;right:0;overflow:hidden;box-shadow:0 8px 30px #0000001f}.account-menu-header{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:14px 16px 10px;display:flex}.account-menu-header strong{font-size:15px}.account-menu-header span{color:var(--text-light);font-size:12px}.account-menu-coins{color:#8a6d00;border-bottom:1px solid var(--border);background:#fffbf0;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;display:flex}.buy-coins-btn{color:#fff;cursor:pointer;background:#6c5ce7;border:none;border-radius:12px;margin-left:auto;padding:3px 10px;font-size:11px;font-weight:700}.buy-coins-btn:hover{background:#5a4bd1}.coin-packs{flex-direction:column;gap:8px;margin:12px 0;display:flex}.coin-pack{border:1px solid var(--border);background:var(--card-bg);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;display:flex}.coin-pack:hover{border-color:#6c5ce7}.coin-pack.buying{opacity:.5;cursor:wait}.coin-pack strong{min-width:70px}.pack-coins{color:#daa520;flex:1;font-weight:600}.pack-price{color:var(--text);font-weight:700}.pack-bonus{color:#6c5ce7;background:#6c5ce71a;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:700}.account-menu button{text-align:left;width:100%;color:var(--text);border-bottom:1px solid var(--border);background:0 0;padding:11px 16px;font-size:14px;display:block}.account-menu button:last-child{color:var(--red);border-bottom:none}.account-menu button:hover{background:var(--bg)}.account-menu-toggle{color:var(--text);border-bottom:1px solid var(--border);cursor:pointer;justify-content:space-between;align-items:center;margin:0;padding:11px 16px;font-size:14px;display:flex}.account-menu-toggle input{accent-color:var(--primary)}.anon-landing-zoom{zoom:1}.hero-section{text-align:center;padding:24px 0 16px}.hero-section h2{color:var(--text);margin-bottom:6px;font-size:1.8rem;font-weight:700}.hero-section p{color:var(--text-light);font-size:1rem}.dashboard-bar{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.dashboard-player{cursor:pointer;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.dashboard-player:hover .dash-player-info strong{color:var(--primary)}.dash-avatar img{object-fit:cover;border-radius:50%;width:42px;height:42px}.dash-player-info{flex-direction:column;min-width:0;display:flex}.dash-player-info strong{font-size:15px;transition:color .2s}.dash-player-info span{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.dash-setup{color:var(--primary);font-size:14px;font-weight:600}.dashboard-actions{flex-wrap:nowrap;align-items:center;gap:12px;display:flex}.dashboard-hamburger{background:var(--card-bg);border:1px solid var(--border);cursor:pointer;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:0;display:none}.dashboard-hamburger span{background:var(--text);border-radius:2px;width:18px;height:2px}.bookmark-modal{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);z-index:200;width:min(440px,92vw);padding:22px 22px 18px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 40px #0000002e}.bookmark-modal h3{margin:0 0 6px;font-size:1.1rem}.bookmark-modal-meta{color:var(--text-light);margin:0 0 14px;font-size:13px}.bookmark-modal input{border:1px solid var(--border);background:var(--bg);border-radius:10px;width:100%;padding:10px 12px;font-size:16px}.bookmark-modal input:focus{border-color:var(--primary);outline:none}.bookmark-modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.bookmark-toast{background:var(--primary);color:#fff;z-index:250;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:600;animation:.25s ease-out bookmark-toast-in;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #6c5ce759}@keyframes bookmark-toast-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.app-header{display:none}.app-footer{text-align:center;padding:32px 0}.home-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:24px;display:flex}.hint{text-align:center;color:var(--text-light);margin-bottom:16px;font-size:14px}.board-hint{text-align:center;margin-bottom:16px;padding:12px 16px}.board-hint h3{color:var(--text);margin-bottom:2px;font-size:1.1rem;font-weight:600}.board-hint p{color:var(--text-light);font-size:13px}.board-hint-selected{flex-direction:column;align-items:center;gap:8px;display:flex}.board-hint-selected .primary-btn{min-width:200px}.board-hint-selected p{color:var(--text-light);font-size:13px}.char-search{border:1px solid var(--border);background:var(--bg-light);width:100%;max-width:300px;color:var(--text);border-radius:20px;outline:none;margin:8px auto 4px;padding:8px 14px;font-size:14px;display:block}.char-search:focus{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf626}.back-arrow{color:var(--text);cursor:pointer;z-index:10;opacity:.7;background:0 0;border:none;border-radius:8px;padding:4px 10px;font-size:1.6rem;transition:opacity .15s;position:absolute;top:16px;left:16px}.back-arrow:hover{opacity:1;background:var(--bg-light)}.add-card{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:180px;transition:all .2s;display:flex;border:3px dashed var(--border)!important;box-shadow:none!important;background:0 0!important}.add-card:hover{transform:translateY(-3px);border-color:var(--primary-light)!important}.add-card-icon{color:var(--text-light);font-size:3rem;font-weight:300;line-height:1}.add-card:hover .add-card-icon{color:var(--primary)}.add-card-text{color:var(--text-light);font-size:14px;font-weight:600}.empty-state{text-align:center;color:var(--text-light);padding:60px 20px;font-size:1.1rem}.player-section{text-align:center;margin-bottom:24px}.make-me-prompt{flex-direction:column;align-items:center;gap:8px;display:flex}.make-me-btn{background:linear-gradient(135deg, var(--primary), var(--pink))!important;padding:16px 40px!important;font-size:1.2rem!important}.make-me-btn:hover{transform:translateY(-2px)!important;box-shadow:0 8px 30px #6c5ce74d!important}.make-me-hint{color:var(--text-light);font-size:13px}.make-me .make-me-subtitle{color:var(--text-light);text-align:center;margin-bottom:24px}.make-me-avatar{flex-direction:column;justify-content:center;align-items:center!important}.make-me-avatar .avatar-preview img{width:150px;height:150px}.make-me-avatar .avatar-placeholder-large{width:150px;height:150px;font-size:4rem}.player-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;border:2px solid var(--primary-light);align-items:center;gap:12px;padding:12px 20px;transition:all .2s;display:inline-flex}.player-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-1px)}.player-avatar img{object-fit:cover;border-radius:50%;width:48px;height:48px}.small-placeholder{width:48px!important;height:48px!important;font-size:1.4rem!important}.player-info{text-align:left;flex-direction:column;display:flex}.player-desc{color:var(--text-light);font-size:12px}.edit-hint{color:var(--primary-light);font-size:12px;font-style:italic}.character-grid{touch-action:pan-y;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding:0 8px;display:grid}.character-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;text-align:center;touch-action:pan-y;-webkit-user-select:none;user-select:none;border:3px solid #0000;padding:20px;transition:all .25s;position:relative}.character-card button{touch-action:pan-y}.character-card.selected{border-color:var(--green);background:#00b8940d}.character-card.selected .card-actions .secondary-btn,.character-card.selected .card-actions .delete-btn,.touch-chat-btn{display:none}@media (hover:hover) and (pointer:fine){.character-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}}@media (hover:none),(pointer:coarse){.character-card{cursor:default;transition:border-color .15s,background-color .15s,box-shadow .15s}.character-card:hover{box-shadow:var(--shadow);transform:none}.touch-chat-btn{display:inline-flex}.desktop-select-chat-btn,.character-card.selected .touch-chat-btn{display:none}.character-card.selected .desktop-select-chat-btn{display:inline-flex}}.card-avatar img{object-fit:cover;border:3px solid var(--primary-light);border-radius:12px;width:140px;height:140px}.avatar-placeholder{background:linear-gradient(135deg, var(--primary-light), var(--pink));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:0 auto;font-size:2.5rem;font-weight:700;display:flex}.selected-badge{background:var(--green);color:#fff;border-radius:20px;margin-top:6px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.character-card h3{margin:12px 0 4px;font-size:1.1rem}.card-personality{color:var(--text-light);margin-bottom:12px;font-size:13px}.card-actions{justify-content:center;align-items:center;gap:8px;display:flex}.card-share-corner{border:1px solid var(--border,#e5e5e5);color:var(--text-light);cursor:pointer;opacity:.85;z-index:2;background:#ffffffbf;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:600;line-height:1;transition:opacity .15s,background .15s,color .15s;display:inline-flex;position:absolute;top:8px;right:-18px}.card-share-icon{font-size:13px;line-height:1}.card-share-label{letter-spacing:.2px}.card-share-corner:hover{opacity:1;background:var(--primary);color:#fff;border-color:var(--primary)}.token-setup{justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.token-card{background:var(--card-bg);border-radius:var(--radius);width:100%;max-width:480px;box-shadow:var(--shadow-hover);text-align:center;padding:40px}.token-card h1{background:linear-gradient(135deg, var(--primary), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:2rem}.token-card .subtitle{color:var(--text-light);margin-bottom:24px}.setup-steps{text-align:left;background:var(--bg);border-radius:var(--radius-sm);margin-bottom:24px;padding:16px 20px}.setup-steps h3{margin-bottom:8px;font-size:15px}.setup-steps ol{color:var(--text-light);margin:0;padding-left:20px;font-size:14px}.setup-steps li{margin-bottom:4px}.setup-steps a{color:var(--primary)}.token-card form{flex-direction:column;gap:12px;display:flex}.token-card button[type=submit]{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:12px;font-size:16px;font-weight:600}.token-card button[type=submit]:hover{background:var(--primary-dark)}.privacy-note{color:var(--text-light);margin-top:16px;font-size:12px}.character-creator{max-width:560px;margin:0 auto;padding:32px 0;position:relative}.character-creator h2{text-align:center;color:var(--primary);margin-bottom:20px;font-size:1.8rem}.templates{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:24px;display:flex}.template-btn{background:var(--card-bg);border:2px solid var(--border);color:var(--text);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:500}.template-btn:hover{border-color:var(--primary-light);color:var(--primary)}.character-creator form{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.character-creator details{margin-bottom:16px}.character-creator summary{cursor:pointer;color:var(--primary);margin-bottom:12px;font-size:14px}.avatar-section{background:var(--bg);border-radius:var(--radius-sm);align-items:center;gap:20px;margin-bottom:16px;padding:16px;display:flex}.avatar-preview img{border-radius:var(--radius-sm);object-fit:cover;border:3px solid var(--primary-light);width:120px;height:120px}.avatar-placeholder-large{border-radius:var(--radius-sm);background:var(--border);width:120px;height:120px;color:var(--text-light);justify-content:center;align-items:center;font-size:3rem;display:flex}.avatar-controls{flex-direction:column;flex:1;gap:8px;display:flex}.avatar-btn-row{flex-wrap:wrap;gap:6px;display:flex}.avatar-btn-row>button{flex:auto;min-width:90px}.avatar-hint{color:var(--text-light);flex-direction:column;gap:2px;font-size:12px;display:flex}.avatar-cost-hint{color:#8a6d00;font-size:11px;font-style:italic}.create-cost-hint{color:var(--text-light);text-align:center;margin-top:4px;font-size:11px}.btn-cost{opacity:.7;margin-top:1px;font-size:10px;font-weight:400;display:block}.premium-btn.locked{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#666,#888);position:relative}.premium-btn.locked .btn-cost{font-style:italic}.tertiary-btn{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;background:0 0;padding:8px 14px;font-family:inherit;font-size:13px;transition:all .15s}.tertiary-btn:hover{border-color:var(--primary-light);color:var(--primary)}.tertiary-btn:disabled{opacity:.4;cursor:default}.custom-gen-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.custom-gen-modal{background:var(--card-bg);border-radius:var(--radius);flex-direction:column;width:100%;max-width:480px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000004d}.custom-gen-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.custom-gen-header h3{margin:0;font-size:16px}.custom-gen-close{color:var(--text-light);cursor:pointer;background:0 0;border:none;padding:0;font-size:22px}.custom-gen-body{flex-direction:column;gap:14px;padding:16px;display:flex;overflow-y:auto}.custom-gen-section-label{color:var(--text);font-size:13px;font-weight:600}.style-tags{flex-wrap:wrap;gap:6px;display:flex}.style-tag{border:1px solid var(--border);color:var(--text-light);cursor:pointer;background:0 0;border-radius:14px;padding:5px 10px;font-family:inherit;font-size:12px;transition:all .15s}.style-tag:hover{border-color:var(--primary-light);color:var(--primary)}.style-tag.active{background:var(--primary);color:#fff;border-color:var(--primary)}.custom-gen-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:12px 16px;display:flex}.gen-progress{color:var(--primary);font-size:13px;font-weight:600;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}select{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--text);cursor:pointer;margin-top:6px;padding:10px 14px;font-family:inherit;font-size:15px}select:focus{border-color:var(--primary-light);outline:none}.secondary-btn.small{padding:6px 12px;font-size:13px}.primary-btn:disabled,.secondary-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.terms-ack{color:var(--text);cursor:pointer;background:#6c5ce70f;border:1px solid #6c5ce740;border-radius:8px;align-items:flex-start;gap:10px;margin:16px 0 4px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.terms-ack input[type=checkbox]{flex-shrink:0;width:auto;margin-top:3px}.terms-ack a{color:var(--primary);text-decoration:underline}.creator-actions{justify-content:center;gap:12px;margin-top:8px;display:flex}.mind-selector{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.mind-option{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;transition:all .15s;display:flex}.mind-option strong{color:var(--text);font-size:14px}.mind-option span{color:var(--text-light);font-size:11px}.mind-option:hover{border-color:var(--primary-light)}.mind-option.active{border-color:var(--primary);background:#6c5ce70f}.mind-option.active strong{color:var(--primary)}.mind-option .mind-cost{color:var(--primary-light);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:10px;font-weight:600}.mind-option.superhuman{background:0 0;border-style:dashed;border-color:#d4a24a8c}.mind-option.superhuman strong{color:#b8841c}.mind-option.superhuman.active{background:linear-gradient(135deg,#d4a24a33,#6c5ce71f);border-color:#b8841c}.mind-option.superhuman .mind-cost{color:#b8841c}.character-card{perspective:1200px;position:relative}.card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,.1,.3,1);position:relative}.character-card.flipped .card-inner{transform:rotateY(180deg)}.card-face{backface-visibility:hidden;flex-direction:column;align-items:center;width:100%;display:flex}.card-back{border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,#6c5ce70f,#fd79a80a);justify-content:flex-start;gap:10px;padding:18px 16px;position:absolute;inset:0;overflow:hidden;transform:rotateY(180deg)}.character-card.flipped .card-back{pointer-events:auto}.card-back-scroll{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:8px;width:100%;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.card-back-page-link{flex:none}.card-back-scroll::-webkit-scrollbar{width:6px}.card-back-scroll::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:3px}.card-back-page-link{text-align:center;width:100%;color:var(--primary);border-top:1px solid #6c5ce71f;margin-top:10px;padding-top:10px;font-size:12px;font-weight:700;text-decoration:none}.card-back-page-link:hover{text-decoration:underline}.card-back-value.long-text{white-space:pre-wrap;color:var(--text);font-size:12px;font-weight:400;line-height:1.5}.card-flip-btn{cursor:pointer;color:#6c5ce799;z-index:3;background:#ffffffa6;border:1px solid #6c5ce733;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:5px;transition:all .2s;display:inline-flex;position:absolute;top:8px;left:8px}.card-flip-btn svg{stroke-width:2px;width:100%;height:100%;display:block}.card-flip-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary);opacity:1;transform:rotate(180deg)}.card-back-name{color:var(--text);text-align:center;margin:6px 0 10px;font-size:15px;font-weight:700}.card-back-stat{text-align:left;background:#fff9;border-radius:10px;flex-direction:column;gap:2px;width:100%;padding:8px 12px;display:flex}.card-back-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);font-size:10px;font-weight:600}.card-back-value{color:var(--text);font-size:14px;font-weight:600}.card-back-value.creator{color:var(--primary);font-style:italic}.card-back-value.abilities{font-size:12px;font-weight:400;line-height:1.4}.card-back-sub{color:var(--text-light);font-size:11px;font-style:italic}.card-back-stat .of-ten{color:var(--text-light);font-size:12px;font-weight:400}.card-back-stat.power-1 .card-back-value,.card-back-stat.power-2 .card-back-value{color:#7a7a7a}.card-back-stat.power-3 .card-back-value,.card-back-stat.power-4 .card-back-value{color:#08a}.card-back-stat.power-5 .card-back-value,.card-back-stat.power-6 .card-back-value{color:#6c5ce7}.card-back-stat.power-7 .card-back-value,.card-back-stat.power-8 .card-back-value{color:#b8841c}.card-back-stat.power-9 .card-back-value,.card-back-stat.power-10 .card-back-value{background:linear-gradient(135deg,#b8841c,#6c5ce7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.identity-indicator{color:var(--text-light);cursor:pointer;white-space:nowrap;background:#6c5ce714;border:1px dashed #6c5ce759;border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;transition:all .15s;display:inline-flex}.identity-indicator:hover{border-color:var(--primary);color:var(--text);background:#6c5ce726}.identity-indicator strong{color:var(--primary);font-weight:700}.identity-indicator .identity-edit{opacity:.6;margin-left:2px}.tag-filter-row{flex-wrap:wrap;gap:6px;margin-bottom:4px;padding:0 4px 12px;display:flex}.tag-chip{background:var(--card-bg);color:var(--text-light);border:1px solid var(--border,#e5e5e5);cursor:pointer;border-radius:14px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.tag-chip:hover{background:var(--card-hover,#f0f0fa);color:var(--text)}.tag-chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.fallback-banner{color:#8a5a00;background:linear-gradient(135deg,#e6a53c26,#e6a53c14);border:1px solid #e6a53c66;border-radius:10px;align-items:center;gap:8px;margin:8px 0;padding:8px 14px;font-size:13px;display:flex}.regen-psyche{margin-top:8px}.regen-psyche .secondary-btn{width:100%}.regen-psyche .active-regen{background:var(--primary);color:#fff;border-color:var(--primary)}.regen-hint{color:var(--text-light);margin-top:4px;font-size:11px}.trait-override{border-top:1px solid var(--border);margin-top:14px;padding-top:10px}.trait-override-toggle{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.trait-sliders{flex-direction:column;gap:12px;margin-top:10px;padding-left:22px;display:flex}.trait-sliders label{flex-direction:column;gap:4px;font-size:12px;display:flex}.trait-sliders .trait-label{color:var(--text);font-weight:600}.trait-sliders .trait-label em{color:var(--text-light);font-weight:400}.trait-sliders .trait-hint{color:var(--text-light);font-size:11px}.trait-sliders input[type=range]{width:100%}.handle-row{flex-direction:column;align-items:stretch;gap:6px}.handle-label{flex-direction:column;gap:2px;display:flex}.handle-input{border:1px solid var(--border);background:var(--card-bg);width:100%;color:var(--text);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.handle-input:focus{border-color:var(--primary);outline:none}.anon-tip{color:var(--text-light);margin:4px 14px 6px;font-size:12px;font-style:italic;line-height:1.4}.anon-tip-prefix{color:var(--primary);opacity:.65;margin-right:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal}.anon-tip-link{font:inherit;color:var(--primary);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;-webkit-text-decoration:underline #6c5ce766;text-decoration:underline #6c5ce766}.anon-tip-link:hover{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.anon-tip-dismiss{color:var(--text-light);cursor:pointer;opacity:.5;background:0 0;border:none;margin-left:4px;padding:0 6px;font-size:14px;font-style:normal;line-height:1}.anon-tip-dismiss:hover{opacity:1}.message.hint-beat{color:var(--text-light);opacity:.85;background:0 0;border:none;padding:4px 14px;font-size:12px;font-style:italic}.message.hint-beat .message-text,.message.hint-beat p{margin:0;line-height:1.4}.welcome-modal{max-width:440px}.welcome-modal h3{margin:0 0 10px;font-size:18px;line-height:1.3}.welcome-scene{border-left:3px solid var(--primary);color:var(--text);background:#6c5ce70f;border-radius:4px;margin:0 0 10px;padding:8px 12px;font-size:13px;font-style:italic;line-height:1.5}.welcome-scene-label{color:var(--primary);margin-right:4px;font-style:normal;font-weight:600}.welcome-lede{color:var(--text-light);margin:0 0 14px;font-size:14px;line-height:1.5}.welcome-cheatsheet{background:#6c5ce70d;border:1px solid #6c5ce726;border-radius:10px;flex-direction:column;gap:8px;margin-bottom:14px;padding:12px 14px;display:flex}.welcome-cheat-row{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12px;line-height:1.4;display:flex}.welcome-cheat-row code{color:var(--primary);white-space:nowrap;background:#6c5ce71f;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.welcome-cheat-row span{color:var(--text-light);flex:auto}.welcome-cheat-row em{color:var(--text);font-style:italic}.player-edit-avatar-row{align-items:center;gap:12px;margin-bottom:10px;display:flex}.player-edit-avatar{border:2px solid var(--border);background:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.player-edit-avatar img{object-fit:cover;width:100%;height:100%}.player-edit-avatar-placeholder{color:var(--text-light);font-size:28px;font-weight:600}.player-edit-avatar-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.advanced-section summary{color:var(--text-light);cursor:pointer;font-size:14px;font-weight:600}.chat-room{flex-direction:column;max-width:700px;height:100dvh;margin:0 auto;display:flex}.chat-header{border-bottom:2px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.back-btn{color:var(--primary);border-radius:var(--radius-sm);background:0 0;padding:4px 12px;font-size:24px}.back-btn:hover{background:#6c5ce714}.chat-character-info{align-items:center;gap:10px;display:flex}.chat-avatar{object-fit:cover;border-radius:50%;width:42px;height:42px;display:block}.chat-avatar.small{width:28px;height:28px}.chat-character-info h3{margin:0;font-size:16px}.chat-personality{color:var(--text-light);font-size:12px}.chat-messages{overscroll-behavior:contain;overflow-anchor:none;scroll-behavior:auto;flex-direction:column;flex:1;gap:12px;padding:16px 0;display:flex;overflow-y:auto}.reply-scroll-spacer{flex:none}.message{border-radius:var(--radius);will-change:opacity;contain:content;max-width:80%;padding:10px 16px}.chat-messages>.message:last-of-type{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.message.user{background:var(--primary);color:#fff;align-self:flex-end}.message.assistant{background:var(--card-bg);box-shadow:var(--shadow);align-self:flex-start}.message.clickable-msg{cursor:pointer}.message.clickable-msg:hover{outline:2px solid var(--primary-light);outline-offset:-2px}.message.assistant.pm-typing{border-left:3px solid var(--pink);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#fd79a80f;padding-left:10px}.message.assistant.pm-typing .typing-avatar{outline:2px solid var(--pink);outline-offset:1px;border-radius:50%}.message.assistant.pm-typing:hover{background:#fd79a81a;outline:none}.pm-typing-badge{background:#fd79a81f;border-radius:999px;margin-left:6px;padding:1px 8px}.message.system,.message.narrator{color:var(--text-light);background:#6c5ce714;align-self:center;max-width:90%;font-size:14px;font-style:italic}.message-speaker{text-transform:uppercase;letter-spacing:.5px;opacity:.7;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.message.user .message-speaker{text-align:right}.message-text{font-size:15px;line-height:1.5}.message-text.typing{color:var(--text-light);font-style:italic}.message-avatar-row{align-items:center;gap:6px;margin-bottom:4px;display:flex}.message-avatar{object-fit:cover;cursor:pointer;border-radius:10px;width:44px;height:44px;transition:transform .15s}.message-avatar:hover{transform:scale(1.1)}.avatar-zoom-overlay{z-index:400;cursor:pointer;background:#000c;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.avatar-zoom-img{border-radius:var(--radius);max-width:90vw;max-height:80vh;box-shadow:0 8px 40px #00000080}.avatar-zoom-name{text-align:center;color:#fff;text-shadow:0 2px 8px #0009;width:100%;font-size:1.2rem;font-weight:700;position:absolute;bottom:10%}.chat-bottom{padding:6px 0 4px}.chat-toolbar{scrollbar-width:none;-ms-overflow-style:none;gap:6px;padding:0 0 6px;display:flex;overflow-x:auto}.chat-toolbar::-webkit-scrollbar{display:none}.tool-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-light);white-space:nowrap;cursor:pointer;border-radius:16px;flex-shrink:0;align-items:center;gap:4px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.tool-btn:hover{border-color:var(--primary-light);color:var(--primary);background:#6c5ce70f}.tool-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.tool-btn:disabled{opacity:.4;cursor:not-allowed}.tool-interrupt{border-color:var(--red);color:var(--red);animation:1.5s ease-in-out infinite interruptPulse}.tool-interrupt:hover{background:var(--red);color:#fff;border-color:var(--red)}@keyframes interruptPulse{0%,to{opacity:1}50%{opacity:.7}}.tool-badge{background:var(--pink);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:800;display:inline-flex}.address-row{flex-wrap:wrap;align-items:center;gap:6px;padding:0 0 6px;display:flex}.chat-input{align-items:center;gap:6px;display:flex}.chat-input input{flex:1;min-width:0}.chat-input button[type=submit]{background:var(--primary);color:#fff;border-radius:var(--radius-sm);flex-shrink:0;padding:10px 16px;font-weight:600}.chat-input button[type=submit]:hover:not(:disabled){background:var(--primary-dark)}.chat-input button[type=submit]:disabled{opacity:.4;cursor:not-allowed}.chat-composer{align-items:flex-end;gap:8px;display:flex;position:relative}.composer-pill{background:var(--card-bg);border:1px solid var(--border);cursor:text;border-radius:22px;flex:1;align-items:flex-end;gap:2px;min-width:0;padding:4px 6px 4px 4px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.composer-pill:focus-within{border-color:var(--primary-light);box-shadow:0 0 0 3px #6c5ce714}.composer-textarea{resize:none;min-width:0;color:var(--text);flex:1;min-height:24px;max-height:160px;font-family:inherit;font-size:14px;line-height:1.4;overflow-y:auto;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:8px!important}.compose-plus{width:34px;height:34px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;transition:color .15s,background .15s;display:flex}.compose-plus:hover:not(:disabled){color:var(--primary);background:#6c5ce714}.compose-plus:disabled{opacity:.4;cursor:not-allowed}.chat-composer .send-btn[type=submit]{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-weight:400;transition:background .15s;display:flex}.chat-composer .send-btn[type=submit]:hover:not(:disabled){background:var(--primary-dark)}.chat-composer .send-btn[type=submit]:disabled{opacity:.4;cursor:not-allowed}.compose-modal{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-hover);flex-direction:column;gap:10px;width:90vw;max-width:480px;padding:24px;display:flex}.compose-modal h3{margin:0}.compose-modal-hint{color:var(--text-light);margin:0 0 4px;font-size:13px}.compose-modal textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;min-height:80px;padding:10px 12px;font-family:inherit;font-size:14px}.compose-modal textarea:focus{border-color:var(--primary)}.compose-modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.message.msg-blocked .message-text{opacity:.5;text-decoration:line-through}.msg-blocked-anchor{pointer-events:none;border:0;height:0;margin:0;padding:0;display:block}.msg-blocked-tag{color:var(--red);margin-top:4px;font-size:11px;font-style:italic;display:inline-block}.compose-menu{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-hover);z-index:50;flex-direction:column;gap:2px;min-width:220px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0}.compose-menu button{color:var(--text);cursor:pointer;border-radius:var(--radius-sm);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;display:flex}.compose-menu button:hover{background:var(--bg)}.compose-menu-icon{width:20px;height:20px;color:var(--primary);justify-content:center;align-items:center;font-size:14px;display:inline-flex}.compose-menu-mobile-only{display:none!important}.mode-hint{border-left:3px solid var(--primary);color:var(--text-light);background:#6c5ce714;border-radius:4px;align-items:center;gap:10px;margin-bottom:6px;padding:6px 12px;font-size:13px;display:flex}.mode-hint.target-mode{color:#2463a6;background:#0078ff14;border-left-color:#0078ff}.mode-hint.target-mode button{color:#0078ff}.composer-pill.has-address-target{border-color:#0078ff;box-shadow:0 0 0 3px #0078ff1f}.mode-hint span{flex:1}.mode-hint button{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:13px}.mode-hint button:hover{text-decoration:underline}.play-pause-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;transition:background .15s;display:flex}.play-pause-btn:hover:not(:disabled){background:#00b8b4}.play-pause-btn.active{background:var(--red)}.play-pause-btn.active:hover:not(:disabled){background:#d35400}.play-pause-btn:disabled{opacity:.4;cursor:not-allowed}.message-image-wrapper{flex-direction:column;gap:8px;display:flex;position:relative}:is(.message:has(.message-image),.message:has(.image-pending)){max-width:min(92%,360px);padding:6px}.image-delete-btn{color:#fff;opacity:0;cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:16px;line-height:1;transition:opacity .2s;display:flex;position:absolute;top:4px;right:4px}@media (hover:none){.image-delete-btn{opacity:.6}}.message-image-wrapper:hover .image-delete-btn{opacity:1}.image-delete-btn:hover{background:var(--red)}.message-image{border-radius:var(--radius-sm);cursor:pointer;object-fit:cover;aspect-ratio:1;width:min(320px,72vw);max-width:100%;height:min(320px,72vw);max-height:420px;display:block}.message-image:hover{opacity:.9}.message-image-wrapper.is-meme .message-image{border-radius:var(--radius-sm)}.meme-caption{pointer-events:none;text-align:center;letter-spacing:.5px;text-transform:uppercase;color:#fff;-webkit-text-stroke:1.5px black;text-shadow:-2px -2px #000,2px -2px #000,-2px 2px #000,2px 2px #000,0 0 6px #0000008c;word-break:break-word;font-family:Impact,Anton,Oswald,Arial Black,system-ui,sans-serif;font-size:clamp(18px,5vw,28px);font-weight:900;line-height:1.05;position:absolute;top:8px;left:8px;right:8px}.image-pending{border:1px dashed var(--border);border-radius:var(--radius-sm);width:min(320px,72vw);max-width:100%;height:min(320px,72vw);color:var(--text-light);text-align:center;aspect-ratio:1;background:#6c5ce714;justify-content:center;align-items:center;gap:10px;padding:14px;font-size:13px;line-height:1.35;display:flex}.image-pending-spinner{border:2px solid #6c5ce738;border-top-color:var(--primary);border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite imagePendingSpin}@keyframes imagePendingSpin{to{transform:rotate(360deg)}}.player-edit-panel{border-bottom:1px solid var(--border);background:var(--bg);padding:10px 0}.player-edit-grid{grid-template-columns:minmax(120px,.7fr) minmax(180px,1.3fr);gap:8px;display:grid}.player-edit-grid label{flex-direction:column;gap:4px;display:flex}.player-edit-grid span{color:var(--text-light);text-transform:uppercase;letter-spacing:0;font-size:11px;font-weight:700}.player-edit-grid input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--text);padding:8px 10px;font-size:14px}.player-edit-wide{grid-column:1/-1}.player-edit-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.regenerate-btn{color:var(--primary);background:#6c5ce71a;border-radius:20px;align-self:flex-start;padding:4px 14px;font-size:12px;font-weight:600}.regenerate-btn:hover:not(:disabled){background:#6c5ce733}.regenerate-btn:disabled{opacity:.4;cursor:not-allowed}.image-gen-bar{border-top:1px solid var(--border);gap:8px;padding:10px 0;animation:.2s fadeIn;display:flex}.image-gen-bar input{flex:1}.image-gen-bar button{border-radius:var(--radius-sm);padding:8px 16px;font-size:14px;font-weight:600}.image-gen-bar button:first-of-type{background:var(--pink);color:#fff}.image-gen-bar button:first-of-type:hover:not(:disabled){background:#e8608f}.image-gen-bar button:first-of-type:disabled{opacity:.4;cursor:not-allowed}.chat-bottom .chat-input{border-top:none}.image-btn{border-radius:var(--radius-sm);color:#fff;padding:10px 16px;font-weight:600;background:var(--pink)!important}.image-btn:hover:not(:disabled){background:#e8608f!important}.multi-chat-characters{scrollbar-width:none;-ms-overflow-style:none;flex-shrink:1;align-items:flex-start;gap:8px;min-width:0;padding:4px 2px;display:flex;overflow-x:auto}.multi-chat-characters::-webkit-scrollbar{display:none}.anon-coin-counter{color:#8a6d00;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,#fff8e1,#fff3cd);border:1px solid #f0d060;border-radius:16px;flex-shrink:0;align-items:center;gap:4px;height:32px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.anon-coin-counter .coin-icon{width:15px;height:15px}.chat-signin-btn{background:linear-gradient(135deg, var(--primary), var(--pink,#fd79a8));color:#fff;letter-spacing:.2px;cursor:pointer;border:none;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;height:32px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #6c5ce740}.chat-signin-btn:hover{filter:brightness(1.08)}.chat-signin-btn:active{transform:translateY(1px)}.auto-chat-pill{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;font-size:14px;display:flex}.auto-chat-pill:hover{background:#00b8b4}.auto-chat-pill.active{background:var(--red)}.auto-chat-pill.active:hover{background:#d35400}.auto-chat-pill:disabled{opacity:.4;cursor:not-allowed}.hamburger-wrap{z-index:110;flex-shrink:0;position:relative}.hamburger-btn{background:0 0;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:32px;height:32px;padding:4px;display:flex}.hamburger-btn:hover{background:#6c5ce71a}.hamburger-btn span{background:var(--text);border-radius:1px;width:18px;height:2px;display:block}.menu-overlay{z-index:150;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f11186b;animation:.16s fadeIn;position:fixed;inset:0}.chat-menu-sheet{z-index:151;background:linear-gradient(#ffffffeb,#ffffffd6),radial-gradient(circle at 100% 0,#ff7a5924,#0000 34%),radial-gradient(circle at 0 0,#2b6cb01f,#0000 32%);border-left:1px solid #212a3e1f;flex-direction:column;width:min(380px,100vw - 16px);height:100dvh;animation:.2s chatMenuSlideIn;display:flex;position:fixed;top:0;right:0;box-shadow:-18px 0 48px #0a0e1c38}@keyframes chatMenuSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.chat-menu-header{border-bottom:1px solid #212a3e14;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px 14px;display:flex}.chat-menu-kicker{letter-spacing:.08em;text-transform:uppercase;color:#26304785;margin:0 0 4px;font-size:11px;font-weight:700}.chat-menu-header h3{color:#1c2435;margin:0;font-size:24px;line-height:1.05}.chat-menu-close{color:#24304a;background:#ffffffa8;border:1px solid #212a3e14;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:26px;line-height:1;display:flex;box-shadow:0 8px 18px #141c2c14}.chat-menu-close:hover{background:#ffffffeb}.chat-menu-body{flex:1;padding:18px 16px 28px;overflow-y:auto}.chat-menu-section{margin-bottom:18px}.chat-menu-section-title{letter-spacing:.08em;text-transform:uppercase;color:#26304780;margin:0 0 10px;padding:0 6px;font-size:12px;font-weight:700}.chat-menu-row{text-align:left;background:#ffffffb8;border:1px solid #212a3e14;border-radius:18px;justify-content:space-between;align-items:center;width:100%;min-height:68px;margin-bottom:8px;padding:14px 16px;transition:transform .14s,box-shadow .14s,border-color .14s,background .14s;display:flex;box-shadow:0 10px 22px #1219280f}.chat-menu-row:hover{background:#ffffffeb;border-color:#2b6cb02e;transform:translateY(-1px);box-shadow:0 14px 28px #1219281a}.chat-menu-row:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:0 8px 16px #1219280a}.chat-menu-row.danger .chat-menu-row-title{color:#b33a2b}.chat-menu-row-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.chat-menu-row-title{color:#1f2a40;font-size:15px;font-weight:700}.chat-menu-row-meta{color:#263047a8;font-size:13px;line-height:1.35}.chat-menu-badge{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#f36f45;border-radius:999px;flex-shrink:0;margin-left:12px;padding:5px 10px;font-size:11px;font-weight:800}.chat-menu-speed-card{background:#ffffffb8;border:1px solid #212a3e14;border-radius:18px;margin-bottom:8px;padding:14px 16px 16px;box-shadow:0 10px 22px #1219280f}.chat-menu-speed-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.chat-menu-speed-value{color:#3567a6;font-size:13px;font-weight:700}.scene-indicator{color:var(--text-light);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#6c5ce714;border-radius:16px;flex-shrink:0;max-width:140px;margin-left:auto;padding:4px 12px;font-size:12px;font-style:italic;overflow:hidden}.scene-indicator:hover{color:var(--primary);background:#6c5ce726}.auto-chat-inline{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.auto-chat-inline:hover{background:#00b8b4}.auto-chat-inline.active{background:var(--red)}.auto-chat-inline.active:hover{background:#d35400}.auto-chat-inline:disabled{opacity:.4;cursor:not-allowed}.auto-chat-pill{display:none}.pm-edge-tab{background:var(--pink);color:#fff;writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:1.5px;z-index:50;cursor:pointer;border-radius:10px 0 0 10px;align-items:center;gap:8px;padding:16px 8px;font-size:13px;font-weight:700;transition:padding .15s;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%);box-shadow:-2px 0 12px #fd79a859}.pm-edge-tab:hover{padding-right:14px;box-shadow:-4px 0 18px #fd79a880}.pm-edge-label{pointer-events:none}.pm-edge-dot{background:#fff;border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.6s ease-in-out infinite pm-edge-pulse;box-shadow:0 0 #ffffffb3}@keyframes pm-edge-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ffffffa6}50%{transform:scale(1.18);box-shadow:0 0 0 6px #fff0}}.pm-edge-count{min-width:16px;height:16px;color:var(--pink);text-align:center;letter-spacing:0;writing-mode:horizontal-tb;text-orientation:mixed;background:#fffffff2;border-radius:999px;padding:0 4px;font-size:10px;line-height:16px}.pm-close-btn{color:var(--text-light);background:0 0;padding:0 4px;font-size:22px;line-height:1}.pm-close-btn:hover{color:var(--text)}.mini-character{align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.conversation-setup{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.conversation-setup h3{color:var(--primary);font-size:1.3rem}.conversation-setup input{max-width:400px}.multi-chat-controls{display:none}.emotion-ring{box-sizing:content-box;border:2px solid #0000;border-radius:50%;padding:1px;line-height:0;transition:border-color .5s;display:inline-flex}.mini-character{flex-direction:column;align-items:center;gap:2px;display:flex}.mini-char-name{text-overflow:ellipsis;white-space:nowrap;max-width:60px;font-size:11px;font-weight:600;overflow:hidden}.multi-chat-characters .chat-avatar{width:40px!important;height:40px!important}.mini-avatar-placeholder{background:var(--primary-light);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:700;display:flex}.topic-btn{color:var(--primary);background:#6c5ce71a;border-radius:20px;margin-left:auto;padding:6px 12px;font-size:12px;font-weight:600}.topic-btn:hover{background:#6c5ce733}.topic-bar{border-bottom:1px solid var(--border);gap:8px;padding:8px 0;animation:.2s fadeIn;display:flex}.topic-bar input{flex:1;padding:8px 12px;font-size:14px}.safety-warning{border-radius:var(--radius-sm);color:#856404;background:#fff3cd;border:1px solid #ffc107;align-items:center;gap:12px;margin:8px 0;padding:12px 16px;font-size:13px;display:flex}.safety-warning p{flex:1;margin:0}.safety-warning button{color:#856404;background:0 0;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600}.safety-warning button:hover{background:#0000000d}.kicked-banner{border:1px solid var(--red);border-radius:var(--radius-sm);text-align:center;background:linear-gradient(135deg,#e170551a,#e170550d);flex-direction:column;align-items:center;gap:12px;margin:8px 0;padding:16px 20px;display:flex}.kicked-banner p{color:var(--red);margin:0;font-size:15px;font-weight:600}.availability-popover{z-index:220;background:var(--card-bg);border-radius:var(--radius-sm);width:min(420px,100vw - 32px);padding:14px 16px 12px;position:fixed;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #2d34362e}.availability-popover strong{color:var(--text);margin-right:24px;font-size:15px;display:block}.availability-popover p{color:var(--text-light);margin:4px 0 12px;font-size:13px;line-height:1.4}.availability-close{width:28px;height:28px;color:var(--text-light);background:0 0;border-radius:50%;padding:0;font-size:20px;line-height:1;position:absolute;top:6px;right:8px}.availability-close:hover{color:var(--primary);background:#6c5ce714}.availability-actions{justify-content:flex-end;gap:8px;display:flex}.availability-actions .primary-btn,.availability-actions .secondary-btn{padding:7px 12px;font-size:13px}.pm-indicator{background:var(--pink);color:#fff;cursor:pointer;z-index:50;border:2px solid #fff3;border-radius:24px;padding:10px 18px;font-size:13px;font-weight:700;animation:.3s fadeIn;position:fixed;bottom:80px;right:16px;box-shadow:0 4px 16px #fd79a866}.pm-indicator:hover{transform:scale(1.05);box-shadow:0 6px 20px #fd79a880}.pm-overlay{z-index:100;background:#0006;animation:.15s fadeIn;position:fixed;inset:0}.pm-panel{background:var(--card-bg);border-left:2px solid var(--border);z-index:101;flex-direction:column;width:360px;max-width:100vw;height:100dvh;animation:.2s slideIn;display:flex;position:fixed;top:0;right:0;box-shadow:-4px 0 20px #0000004d}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.pm-back-btn{color:var(--primary);border-radius:var(--radius-sm);background:0 0;padding:4px 8px;font-size:20px}.pm-panel-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.pm-panel-header h4{color:var(--pink);flex:1;margin:0;font-size:16px}.pm-clear-btn{color:var(--text-light);background:0 0;border-radius:4px;padding:4px 8px;font-size:12px}.pm-clear-btn:hover{color:var(--red)}.pm-tabs{border-bottom:1px solid var(--border);gap:2px;padding:8px 8px 0;display:flex;overflow-x:auto}.pm-tab{color:var(--text-light);cursor:pointer;white-space:nowrap;background:0 0;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;display:flex}.pm-tab.active{color:var(--pink);border-bottom-color:var(--pink);background:#fd79a80d}.pm-tab-avatar{object-fit:cover;border-radius:50%;width:18px;height:18px}.pm-tab.has-messages{color:var(--text)}.pm-tab.eavesdrop{color:var(--orange);border-bottom-color:#0000;font-size:11px;font-style:italic}.pm-tab.eavesdrop.active{color:var(--orange);border-bottom-color:var(--orange);background:#fdcb6e14}.pm-panel-messages{overscroll-behavior:contain;overflow-anchor:none;scroll-behavior:auto;flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.pm-reply-scroll-spacer{flex:none}.pm-msg{border-radius:12px;padding:8px 12px;font-size:13px}.pm-sent{background:#6c5ce71a;align-self:flex-end;max-width:85%}.pm-received{background:#fd79a814;align-self:flex-start;max-width:85%}.pm-system{color:var(--text-secondary,#888);text-align:center;opacity:.85;background:0 0;align-self:center;max-width:90%;padding:6px 12px;font-size:12px;font-style:italic}.pm-from-label{color:var(--pink);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.pm-sent .pm-from-label{color:var(--primary)}.pm-text{margin:0;line-height:1.4}.pm-image{object-fit:cover;aspect-ratio:1;border-radius:8px;width:200px;max-width:min(200px,70vw);height:200px;margin-top:4px;display:block}.pm-msg .image-pending{background:#6c5ce712;width:200px;max-width:min(200px,70vw);height:200px;padding:10px}.pm-empty{text-align:center;color:var(--text-light);padding:20px;font-size:13px;font-style:italic}.pm-input{border-top:1px solid var(--border);align-items:center;gap:8px;padding:10px 12px;display:flex}.pm-composer-pill{background:var(--card-bg);border:1px solid var(--border);cursor:text;border-radius:22px;flex:1;align-items:center;gap:2px;min-width:0;padding:2px 6px 2px 2px;transition:border-color .15s,box-shadow .15s;display:flex}.pm-composer-pill:focus-within{border-color:var(--pink);box-shadow:0 0 0 3px #fd79a81a}.pm-input input{flex:1;min-width:0;padding:8px;font-size:13px;background:0 0!important;border:none!important;outline:none!important}.pm-input button{background:var(--pink);color:#fff;border-radius:var(--radius-sm);padding:8px 16px;font-size:13px;font-weight:600}.pm-input button:disabled{opacity:.4}.pm-composer-pill .pm-input-plus{width:30px;height:30px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:0;font-size:22px;font-weight:400;line-height:1}.pm-composer-pill .pm-input-plus:hover:not(:disabled){color:var(--pink);background:#fd79a81a}.pm-composer-pill .pm-input-plus:disabled{opacity:.4;cursor:not-allowed}.pm-input input:disabled{background:var(--bg);color:var(--text-light);cursor:not-allowed;opacity:.65}.pm-input input:disabled::placeholder{font-style:italic}.pm-input-typing{flex-shrink:0;align-items:center;gap:3px;padding:0 4px;display:inline-flex}.pm-input-typing span{background:var(--text-light);opacity:.35;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite pm-typing-bounce}.pm-input-typing span:nth-child(2){animation-delay:.15s}.pm-input-typing span:nth-child(3){animation-delay:.3s}@keyframes pm-typing-bounce{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:.9;transform:translateY(-2px)}}.message.interrupted .message-text{opacity:.6;font-style:italic}.message.interrupted:after{content:"interrupted";color:var(--orange);margin-top:2px;font-size:10px;font-weight:600;display:block}.stage-direction{color:var(--text-light);opacity:.7;margin-bottom:2px;font-size:12px;font-style:italic}.message-addressed{color:var(--primary);background:#6c5ce714;border-radius:10px;margin-bottom:2px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.invite-suggestion-btn{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.invite-suggestion-btn:hover{border-color:var(--primary);color:var(--primary)}.invite-suggestion-btn img{object-fit:cover;border-radius:50%;width:22px;height:22px}.invite-suggestion-accepted{color:var(--text-light);margin-top:8px;font-size:12px;font-weight:700;display:inline-block}.message.private-msg{opacity:.9;max-width:75%;background:#fd79a81a!important}.message.private-msg .message-text{color:#e0e0e0;font-size:14px;font-style:italic}.message.private-msg .mini-avatar,.message.private-msg .chat-avatar{display:none}.message-pm-badge{color:var(--pink);font-size:10px;font-style:italic;font-weight:600}.message.beat{box-shadow:none!important;background:0 0!important;align-self:center!important;max-width:95%!important;padding:6px 20px!important}.message.beat .message-text{color:#999;text-align:center;font-size:13px;font-style:italic;line-height:1.5}.message-cue{opacity:.6;font-size:10px;font-style:italic;font-weight:400}.mini-character.is-typing span{color:var(--primary);font-weight:700}.mini-character.is-typing:after{content:" typing...";color:var(--text-light);font-size:11px;font-style:italic}.typing-dots span{font-size:24px;line-height:1;animation:1.4s infinite blink}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,20%{opacity:.2}50%{opacity:1}80%,to{opacity:.2}}.message-avatar.typing-avatar,.message-avatar.streaming-avatar{will-change:transform, box-shadow;animation:1.6s ease-in-out infinite avatar-breathe,1.6s ease-in-out infinite avatar-halo}@keyframes avatar-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes avatar-halo{0%,to{box-shadow:0 0 6px 0 var(--halo-color,#95a5a6)}50%{box-shadow:0 0 18px 2px var(--halo-color,#95a5a6)}}@media (prefers-reduced-motion:reduce){.message-avatar.typing-avatar,.message-avatar.streaming-avatar{box-shadow:0 0 10px var(--halo-color,#95a5a6);animation:none}}.cursor{color:var(--primary);font-weight:300;animation:.6s infinite cursorBlink}.cursor:after{content:"|"}@keyframes cursorBlink{0%,49%{opacity:1}50%,to{opacity:0}}.image-message{max-width:90%!important;padding:4px!important}.chat-image-post{border-radius:var(--radius-sm);overflow:hidden}.chat-generated-image{border-radius:var(--radius-sm);width:100%;max-width:300px;display:block}.start-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.start-screen h3{color:var(--primary);font-size:1.4rem}.scene-section{text-align:left;width:100%;max-width:500px}.scene-label{color:var(--text-light);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.scene-row{align-items:center;gap:8px;width:100%;max-width:500px;display:flex}.scene-input-short{border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--card-bg);flex:1;padding:10px 14px;font-size:15px}.scene-input-short:focus{border-color:var(--primary-light);outline:none}.start-divider{width:100%;max-width:500px;color:var(--text-light);align-items:center;gap:12px;font-size:12px;display:flex}.start-divider:before,.start-divider:after{content:"";background:var(--border);flex:1;height:1px}.start-form{gap:10px;width:100%;max-width:500px;display:flex}.start-form input{flex:1}.speed-control{align-items:center;gap:8px;display:flex}.speed-label{color:var(--text-light);text-align:right;min-width:55px;font-size:11px;font-weight:600}.speed-slider{appearance:none;background:var(--border);border-radius:2px;outline:none;width:80px;height:4px}.speed-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);cursor:pointer;border-radius:50%;width:16px;height:16px}.auto-chat-btn{background:var(--accent);color:#fff;border-radius:20px;padding:8px 20px;font-weight:600}.auto-chat-btn:hover{background:#00b8b4}.auto-chat-btn.active{background:var(--red)}.auto-chat-btn.active:hover{background:#d35400}.eavesdrop-bar{border-top:1px solid var(--border);background:#fd79a80d}.eavesdrop-toggle{width:100%;color:var(--pink);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:600;display:flex}.eavesdrop-icon{font-size:14px}.eavesdrop-chevron{margin-left:auto;font-size:10px}.eavesdrop-messages{flex-direction:column;gap:6px;max-height:150px;padding:0 14px 10px;display:flex;overflow-y:auto}.eavesdrop-msg{border-radius:var(--radius-sm);border-left:2px solid var(--pink);background:#fd79a814;padding:6px 10px;font-size:12px;line-height:1.4}.eavesdrop-who{color:var(--pink);margin-right:4px;font-size:11px;font-weight:600}.eavesdrop-text{color:var(--text-light)}.share-toast{background:var(--primary);color:#fff;border-bottom:1px solid #fff3;align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.share-toast p{margin:0;font-weight:600}.share-toast a{color:#fff;opacity:.8;word-break:break-all;font-size:12px}.share-toast button{color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:#fff3;border:none;padding:4px 12px;font-size:12px}.chat-disclaimer{color:var(--text-light);background:#6c5ce71f;border-bottom:1px solid #6c5ce740;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:12px;line-height:1.4;display:flex}.chat-disclaimer p{margin:0}.chat-disclaimer button{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:5px 14px;font-size:12px;font-weight:600}.community-feed{max-width:700px;margin:0 auto;padding:16px}.feed-header{text-align:center;margin-bottom:16px;position:relative}.feed-header h2{color:var(--text);margin:0 0 4px;font-size:1.4rem}.feed-header p{color:var(--text-light);margin:0;font-size:13px}.feed-back-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px;position:absolute;top:0;left:0}.feed-create-cta{justify-content:center;margin:4px 0 14px;display:flex}.feed-create-cta .primary-btn.big{width:100%;max-width:360px}.feed-search{margin-bottom:12px;position:relative}.feed-search input{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--text);box-sizing:border-box;padding:10px 38px 10px 14px;font-family:inherit;font-size:14px}.feed-search input:focus{border-color:var(--primary-light);outline:none}.feed-search-clear{background:var(--border);width:26px;height:26px;color:var(--text);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;transition:background .15s;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.feed-search-clear:hover{background:var(--primary-light);color:#fff}.feed-filters{margin-bottom:14px}.feed-sort{gap:6px;margin-bottom:10px;display:flex}.feed-sort-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;background:0 0;padding:6px 14px;font-family:inherit;font-size:13px;transition:all .15s}.feed-sort-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.feed-tags{flex-wrap:wrap;gap:5px;display:flex}.feed-tag{border:1px solid var(--border);color:var(--text-light);cursor:pointer;background:0 0;border-radius:12px;padding:4px 10px;font-family:inherit;font-size:11px;transition:all .15s}.feed-tag:hover{border-color:var(--primary-light)}.feed-tag.active{background:var(--primary);color:#fff;border-color:var(--primary)}.feed-count{color:var(--text-light);margin:0 0 10px;font-size:12px}.feed-grid{flex-direction:column;gap:12px;display:flex}.feed-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);gap:14px;padding:14px;transition:border-color .15s;display:flex}.feed-card:hover{border-color:var(--primary-light)}.feed-card.featured{border-color:var(--orange);border-width:2px}.feed-card-open{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex:1;align-items:stretch;gap:14px;min-width:0;margin:0;padding:0;display:flex}.feed-card-open:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px;border-radius:var(--radius-sm)}.feed-card-avatar{border-radius:var(--radius-sm);flex-shrink:0;width:72px;height:72px;overflow:hidden}.feed-card-avatar img{object-fit:cover;width:100%;height:100%}.feed-card-avatar-placeholder{background:var(--border);width:100%;height:100%;color:var(--text-light);justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex}.feed-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.feed-card-name{color:var(--text);margin:0;font-size:15px}.feed-card-personality{color:var(--text-light);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.feed-card-quote{color:var(--primary-light);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:2px 0 0;font-size:12px;font-style:italic;display:-webkit-box;overflow:hidden}.feed-card-meta{align-items:center;gap:8px;margin-top:2px;display:flex}.feed-card-tags{gap:4px;display:flex}.feed-card-tag{color:var(--primary-light);cursor:pointer;background:#6c5ce71a;border-radius:8px;padding:1px 6px;font-size:10px}.feed-card-stats{color:var(--text-light);font-size:10px}.feed-card-by{color:var(--text-light);opacity:.6;font-size:10px}.feed-card-actions{flex-direction:column;flex-shrink:0;justify-content:center;gap:6px;display:flex}.feed-chat-btn{white-space:nowrap;padding:8px 14px!important;font-size:12px!important}.feed-add-btn{white-space:nowrap;padding:6px 12px!important;font-size:11px!important}.feed-loading{text-align:center;color:var(--text-light);padding:24px}.feed-empty{text-align:center;color:var(--text-light);padding:40px 16px}.feed-scroll-trigger{height:1px}@media (width<=500px){.feed-card{text-align:center;flex-direction:column;align-items:center}.feed-card-open{text-align:center;flex-direction:column;align-items:center;width:100%}.feed-card-actions{flex-direction:row;width:100%}.feed-chat-btn,.feed-add-btn{flex:1}.feed-card-meta{justify-content:center}}.feed-detail-overlay{z-index:500;background:#0000008c;justify-content:center;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.feed-detail-modal{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-hover);width:100%;max-width:540px;max-height:calc(100vh - 32px);padding:24px;position:relative;overflow-y:auto}.feed-detail-header{align-items:flex-start;gap:16px;margin-bottom:16px;padding-right:32px;display:flex}.feed-detail-avatar{border-radius:var(--radius-sm);background:var(--border);flex-shrink:0;width:96px;height:96px;overflow:hidden}.feed-detail-avatar img{object-fit:cover;width:100%;height:100%}.feed-detail-heading{flex:1;min-width:0}.feed-detail-heading h2{color:var(--text);margin:0 0 4px;font-size:22px}.feed-detail-by{color:var(--text-light);margin-bottom:8px;font-size:12px}.feed-detail-tags{flex-wrap:wrap;gap:4px;display:flex}.feed-detail-body{flex-direction:column;gap:14px;display:flex}.feed-detail-section h4{text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);margin:0 0 4px;font-size:11px;font-weight:600}.feed-detail-section p{color:var(--text);margin:0;font-size:14px;line-height:1.5}.feed-detail-voice{font-style:italic;color:var(--text-light)!important}.feed-detail-scene p{color:var(--primary-light);border-left:2px solid var(--primary-light);background:#6c5ce70f;border-radius:4px;padding:8px 12px;font-style:italic}.feed-detail-quotes{flex-direction:column;gap:6px;margin:0;padding:0 0 0 16px;display:flex}.feed-detail-quotes li{color:var(--primary-light);font-size:13px;font-style:italic;line-height:1.45}.feed-detail-loading{color:var(--text-light);text-align:center;padding:8px 0;font-size:12px}.feed-detail-stats{color:var(--text-light);gap:12px;margin-top:4px;font-size:11px;display:flex}.feed-detail-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;padding-top:16px;display:flex}.feed-detail-actions .primary-btn,.feed-detail-actions .secondary-btn{padding:8px 16px;font-size:13px}.feed-detail-link{color:var(--primary-light);white-space:nowrap;margin-left:auto;font-size:13px;text-decoration:none}.feed-detail-link:hover{text-decoration:underline}@media (width<=500px){.feed-detail-modal{padding:18px}.feed-detail-header{text-align:center;flex-direction:column;align-items:center;padding-right:0}.feed-detail-avatar{width:120px;height:120px}.feed-detail-actions{justify-content:center}.feed-detail-link{text-align:center;width:100%;margin-left:0}}.share-btn{border:1px solid var(--primary-light);color:var(--primary-light);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:4px 10px;font-family:inherit;font-size:11px;transition:all .15s}.share-btn:hover{background:var(--primary);color:#fff}.share-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.share-modal{background:var(--card-bg);border-radius:var(--radius);width:100%;max-width:440px;max-height:85vh;padding:20px;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.share-modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.share-modal-header h3{margin:0}.share-close{color:var(--text-light);cursor:pointer;background:0 0;border:none;font-size:22px}.share-preview{border-radius:var(--radius-sm);background:#6c5ce70f;align-items:center;gap:12px;margin-bottom:16px;padding:12px;display:flex}.share-preview-avatar{border-radius:var(--radius-sm);flex-shrink:0;width:56px;height:56px;overflow:hidden}.share-preview-avatar img{object-fit:cover;width:100%;height:100%}.share-preview-info{flex:1;min-width:0}.share-preview-info strong{margin-bottom:2px;display:block}.share-preview-info p{color:var(--text-light);margin:0;font-size:12px}.share-section{margin-bottom:14px}.share-section label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.share-tags{flex-wrap:wrap;gap:6px;display:flex}.share-note{color:var(--text-light);margin:12px 0;font-size:11px;line-height:1.5}.share-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.share-progress{text-align:center;padding:24px 0 16px}.share-progress-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin:0 auto 14px;animation:.8s linear infinite spin}.share-progress h4{margin:0 0 8px}.share-progress p{color:var(--text-light);margin:0;font-size:13px}.share-success{text-align:center;padding:16px 0}.share-success-icon{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 12px;font-size:24px;display:flex}.share-success h4{margin:0 0 8px}.share-success p{color:var(--text-light);margin:0 0 16px;font-size:13px}.share-quotes{text-align:left;margin:16px 0}.share-quotes-label{color:var(--text-light);margin-bottom:6px;font-size:11px}.share-quote{color:var(--primary-light);border-left:2px solid var(--primary-light);margin:4px 0;padding-left:10px;font-size:12px;font-style:italic}.value-prop{text-align:center;max-width:400px;margin:0 auto;padding:8px 20px 16px}.value-prop p{color:var(--text-light);margin:0;font-size:13px;line-height:1.5}.load-modal{max-height:70vh}.library-tabs{border-bottom:1px solid #b3a4ff2e;gap:4px;margin:4px 0 14px;display:flex}.library-tab{color:#e8e4fceb;letter-spacing:.03em;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:color .12s,border-color .12s;display:inline-flex}.library-tab:hover{color:#fff}.library-tab.active{color:#fff;border-bottom-color:#6c5ce7}.library-tab-count{color:#e8e4fcd9;letter-spacing:0;background:#b3a4ff2e;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.library-tab.active .library-tab-count{color:#fff;background:#6c5ce773}.load-list{flex-direction:column;gap:8px;max-height:50vh;margin:12px 0;display:flex;overflow-y:auto}.load-item{border-radius:var(--radius-sm);cursor:pointer;background:#6c5ce70f;align-items:center;gap:10px;padding:10px 12px;transition:background .15s;display:flex}.load-item:hover{background:#6c5ce71f}.load-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.load-item-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.load-item-info span{color:var(--text-light);font-size:11px}.scroll-more{text-align:center;padding:8px 0 4px}.scroll-more .text-btn{color:var(--primary);font-size:13px}.community-disclaimer{color:var(--text-light);text-align:center;opacity:.7;padding:8px 16px;font-size:11px}.clear-section{text-align:center;padding:32px 0 16px}.text-btn.danger{color:var(--red)}.text-btn.danger:hover{color:#c0392b}.settings-btn{color:var(--primary);background:#6c5ce71a;border-radius:50%;margin-left:4px;padding:6px 10px;font-size:18px;line-height:1}.settings-btn:hover{background:#6c5ce733}.settings-overlay{z-index:200;background:#00000080;justify-content:flex-end;align-items:flex-start;padding:60px 12px 12px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.settings-panel{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-hover);flex-direction:column;width:280px;max-width:90vw;max-height:calc(100dvh - 80px);display:flex;overflow:hidden}.settings-panel .settings-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.settings-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.settings-header h3{margin:0;font-size:16px}.settings-close{color:var(--text-light);background:0 0;padding:0 4px;font-size:22px;line-height:1}.settings-close:hover{color:var(--text)}.settings-body{padding:12px 20px 20px}.settings-row{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.settings-row+.settings-row{border-top:1px solid var(--border)}.settings-label{flex-direction:column;gap:2px;display:flex}.settings-label span:first-child{font-size:14px;font-weight:600}.settings-hint{color:var(--text-light);font-size:12px}.settings-slider{width:90px}.settings-section{border-top:1px solid var(--border);padding:10px 0}.settings-section-label{margin-bottom:8px;font-size:14px;font-weight:600}.image-engine-list{flex-direction:column;gap:4px;display:flex}.engine-option{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:8px 12px;transition:all .15s;display:flex}.engine-option:hover{border-color:var(--primary-light)}.engine-option.active{border-color:var(--primary);background:#6c5ce70f}.engine-info{flex-direction:column;gap:1px;display:flex}.engine-info strong{color:var(--text);font-size:13px}.engine-option.active .engine-info strong{color:var(--primary)}.engine-info span{color:var(--text-light);font-size:11px}.engine-cost{color:#8a6d00;white-space:nowrap;background:#fffbf0;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:700}.settings-divider{text-transform:uppercase;letter-spacing:1px;color:var(--text-light);border-top:1px solid var(--border);margin-top:8px;padding:12px 0 4px;font-size:11px;font-weight:700}.clear-account-confirm{border:1px solid var(--red);border-radius:var(--radius-sm);background:#e74c3c0d;margin-top:8px;padding:12px}.clear-account-confirm p{color:var(--text-light);margin:0 0 8px;font-size:13px}.clear-account-confirm input{width:100%;margin-bottom:8px;font-size:14px}.toggle-switch{background:var(--border);cursor:pointer;border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.toggle-switch.on{background:var(--primary)}.toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.toggle-switch.on .toggle-knob{transform:translate(20px)}.auth-overlay{z-index:300;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.auth-modal{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-hover);text-align:center;-webkit-overflow-scrolling:touch;width:100%;max-width:400px;max-height:calc(100vh - 40px);padding:32px;position:relative;overflow-y:auto}.auth-close{color:var(--text-light);background:0 0;font-size:24px;line-height:1;position:absolute;top:12px;right:16px}.auth-close:hover{color:var(--text)}.auth-modal h3{color:var(--primary);margin-bottom:8px;font-size:1.4rem}.auth-reason{border-radius:var(--radius-sm);color:var(--primary);background:#6c5ce714;margin-bottom:12px;padding:8px 16px;font-size:14px}.auth-bonus{color:var(--text-dark,#2c3e50);text-align:center;background:linear-gradient(135deg,#f1c40f26,#e67e221f);border:1px solid #f1c40f59;border-radius:8px;margin:10px 0 14px;padding:10px 14px;font-size:14px}.auth-bonus strong{color:#b7791f}.auth-subtitle{color:var(--text-light);margin-bottom:20px;font-size:14px}.auth-modal form{flex-direction:column;gap:12px;display:flex}.auth-modal input{text-align:center;box-sizing:border-box;width:100%;padding:10px 16px;font-size:16px}.auth-error{color:var(--red);margin:0;font-size:13px}.auth-sent{padding:12px 0}.auth-icon{margin-bottom:12px;font-size:48px}.auth-sent h3{margin-bottom:8px}.auth-sent p{color:var(--text-light);font-size:14px}.auth-hint{margin-top:12px;font-size:12px!important}.auth-bar{margin-top:8px}.auth-info{justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.auth-email{color:var(--text-light)}.auth-badge{background:linear-gradient(135deg, var(--primary), var(--pink));color:#fff;text-transform:uppercase;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.coin-badge{color:#2d3436;background:linear-gradient(135deg,#fdcb6e,#e67e22);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}.auth-signin{font-weight:600;color:var(--primary)!important}.nsfw-toggle{cursor:pointer;align-items:center;display:flex}.nsfw-toggle input{display:none}.nsfw-label{background:var(--green);color:#fff;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:800;transition:all .2s}.nsfw-label.on{background:var(--red)}.limit-banner{border:2px solid var(--primary-light);border-radius:var(--radius);text-align:center;background:linear-gradient(135deg,#6c5ce71f,#fd79a81f);flex-direction:column;align-items:center;gap:10px;margin:8px;padding:20px 16px;animation:.3s fadeIn;display:flex}.limit-banner p{color:var(--text);margin:0;font-size:15px;font-weight:600}.limit-banner .primary-btn{background:linear-gradient(135deg, var(--primary), var(--pink));border-radius:24px;padding:12px 28px;font-size:16px}.limit-hint{color:var(--text-light)!important;font-size:12px!important;font-weight:400!important}.limit-notice{text-align:center;border-radius:var(--radius-sm);color:var(--text-light);background:#6c5ce70f;margin-bottom:16px;padding:8px 16px;font-size:14px}.limit-notice .text-btn{color:var(--primary);font-weight:600}.starter-picker{max-width:700px;margin:0 auto;padding:32px 0;position:relative}.starter-header{text-align:center;margin-bottom:24px}.starter-header h2{color:var(--primary);margin-bottom:4px;font-size:1.8rem}.starter-header p{color:var(--text-light);font-size:14px}.starter-tabs{background:var(--bg);border-radius:12px;justify-content:center;gap:4px;max-width:300px;margin-bottom:20px;margin-left:auto;margin-right:auto;padding:4px;display:flex}.starter-tab{color:var(--text-light);background:0 0;border-radius:10px;flex:1;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.starter-tab.active{background:var(--primary);color:#fff}.starter-tab:hover:not(.active){color:var(--text)}.starter-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:24px;padding:0 8px;display:grid}.starter-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;border:2px solid #0000;align-items:flex-start;gap:14px;padding:14px;transition:all .2s;display:flex}.starter-card:hover{box-shadow:var(--shadow-hover);border-color:var(--primary-light);transform:translateY(-2px)}.starter-card.owned{opacity:.4;pointer-events:none;position:relative}.starter-card.owned:after{content:"Added";background:var(--green);color:#fff;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700;position:absolute;top:8px;right:8px}.starter-avatar img{object-fit:cover;border-radius:10px;flex-shrink:0;width:72px;height:72px}.starter-info{flex:1;min-width:0}.starter-info h3{margin:0 0 4px;font-size:15px}.starter-personality{color:var(--text-light);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.starter-ability{color:var(--primary);background:#6c5ce714;border-radius:10px;margin-top:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.starter-actions{justify-content:center;gap:12px;display:flex}.starter-actions.top{margin-bottom:0}.starter-divider{max-width:300px;color:var(--text-light);align-items:center;gap:12px;margin:16px auto;font-size:13px;display:flex}.starter-divider:before,.starter-divider:after{content:"";background:var(--border);flex:1;height:1px}.pack-section{margin-top:32px}.pack-divider{max-width:400px;color:var(--text-light);align-items:center;gap:12px;margin:24px auto 16px;font-size:13px;font-weight:600;display:flex}.pack-divider:before,.pack-divider:after{content:"";background:var(--border);flex:1;height:1px}.pack-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);border:2px solid #0000;margin:0 8px 16px;transition:border-color .2s;overflow:hidden}.pack-card:hover{border-color:var(--primary-light)}.pack-card.all-added{opacity:.5}.pack-header{cursor:pointer;align-items:center;gap:14px;padding:16px;display:flex}.pack-preview{flex-shrink:0;display:flex}.pack-preview-avatar{border:2px solid var(--card-bg);border-radius:50%;width:36px;height:36px;margin-left:-10px;overflow:hidden}.pack-preview-avatar:first-child{margin-left:0}.pack-preview-avatar img{object-fit:cover;width:100%;height:100%}.pack-preview-more{background:var(--bg);border:2px solid var(--card-bg);width:36px;height:36px;color:var(--text-light);border-radius:50%;justify-content:center;align-items:center;margin-left:-10px;font-size:11px;font-weight:700;display:flex}.pack-meta{flex:1;min-width:0}.pack-meta h3{margin:0 0 2px;font-size:16px}.pack-meta p{color:var(--text-light);margin:0;font-size:12px}.pack-count{color:var(--primary);font-size:11px;font-weight:600}.pack-chevron{color:var(--text-light);flex-shrink:0;font-size:12px}.pack-expanded{border-top:1px solid var(--border);padding:0 8px 16px}.pack-add-all{margin:12px auto;padding:8px 24px;font-size:13px;display:block}.confirm-modal{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-hover);text-align:center;width:100%;max-width:340px;padding:28px;position:relative}.modal-close{width:30px;height:30px;color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:22px;line-height:1;position:absolute;top:10px;right:10px}.modal-close:hover{background:var(--bg);color:var(--text)}.confirm-modal h3{margin:0 0 8px;font-size:1.2rem}.confirm-modal p{color:var(--text-light);margin:0 0 20px;font-size:14px}.confirm-actions{justify-content:center;gap:10px;display:flex}.danger-btn{background:var(--red)!important}.danger-btn:hover{background:#c0392b!important}.invite-grid{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px;display:flex}.invite-char{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:flex}.invite-char:hover{border-color:var(--primary);color:var(--primary)}.invite-avatar{object-fit:cover;border-radius:50%;width:28px;height:28px}.idle-banner{text-align:center;border-top:1px solid var(--border);background:#6c5ce70f;justify-content:center;align-items:center;gap:12px;padding:12px 16px;display:flex}.idle-banner p{color:var(--text-light);margin:0;font-size:13px}.idle-banner .primary-btn{padding:6px 20px;font-size:13px}.mini-character.clickable{cursor:pointer}.mini-character.clickable:hover .emotion-ring{border-color:var(--primary)!important}.remove-char-btn{background:var(--red);color:#fff;cursor:pointer;border:2px solid var(--card-bg);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;line-height:1;display:none;position:absolute;top:-4px;right:-4px}.mini-character{position:relative}.mini-character:hover .remove-char-btn{display:flex}.mini-character.targeted{transform:scale(1.1)}.mini-character.targeted .mini-char-name{color:var(--primary);font-weight:700}.invite-slot{cursor:pointer;opacity:.75;transition:opacity .15s}.invite-slot:hover{opacity:1}.invite-slot .mini-char-name{max-width:80px;color:var(--primary)}.invite-ring{border-color:var(--primary)!important;border-style:dashed!important}.invite-plus{color:var(--text-light);justify-content:center;align-items:center;display:flex;font-size:20px!important}.narrator-toggle{color:var(--text-light);cursor:pointer;white-space:nowrap;background:#6c5ce71a;border:1px solid #0000;border-radius:14px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:700}.narrator-toggle:hover{border-color:var(--primary-light);color:var(--primary)}.narrator-toggle.active{background:var(--primary);color:#fff}.address-badge{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border-radius:16px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:700;transition:background .2s}.address-badge:hover{background:var(--primary-dark)}.address-badge.pm-badge{background:var(--pink)}.pm-toggle{color:var(--pink);cursor:pointer;background:#fd79a81a;border:1px solid #0000;border-radius:8px;flex-shrink:0;padding:4px 8px;font-size:11px;font-weight:700}.pm-toggle:hover{border-color:var(--pink)}.pm-toggle.active{background:var(--pink);color:#fff}.at-menu{border-top:1px solid var(--border);gap:4px;padding:8px 4px;animation:.15s fadeIn;display:flex;overflow-x:auto}.at-menu-item{background:var(--card-bg);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.at-menu-item:hover{border-color:var(--primary);color:var(--primary)}.at-menu-avatar{object-fit:cover;border-radius:50%;width:22px;height:22px}.starter-scroll-section{border-top:1px solid var(--border);margin-top:40px;padding:32px 0}.starter-scroll-section.top-scroll{border-top:none;margin-top:0;padding-top:8px}.starter-tagline{text-align:center;margin-bottom:24px;padding:0 20px}.starter-tagline h2{background:linear-gradient(135deg, var(--primary), var(--pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:1.6rem}.starter-tagline p{color:var(--text);max-width:520px;margin:0 auto;font-size:16px;font-weight:500;line-height:1.6}.starter-scroll-track{width:100%;padding:12px 0 16px;overflow:hidden visible;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.starter-scroll-inner{will-change:transform;backface-visibility:hidden;gap:16px;width:max-content;animation:56s linear infinite starterScroll;display:flex;transform:translateZ(0)}@media (hover:hover) and (pointer:fine){.starter-scroll-track:hover .starter-scroll-inner{animation-play-state:paused}}@media (hover:none),(pointer:coarse){.starter-scroll-inner{animation-play-state:running}}@keyframes starterScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.scroll-card{cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;contain:layout paint;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;transition:transform .16s ease-out;display:flex;transform:translateZ(0)}.scroll-cta{text-align:center;color:var(--text-light);margin:8px 0 0;padding:0 16px;font-size:13px}.scroll-card:hover{transform:translateY(-3px)translateZ(0)}@media (hover:none),(pointer:coarse){.scroll-card:hover{transform:translateZ(0)}}.scroll-avatar{object-fit:cover;border:3px solid var(--border);background:var(--card-bg);content-visibility:visible;-webkit-user-drag:none;border-radius:50%;width:90px;height:90px;transition:border-color .2s}.scroll-card:hover .scroll-avatar{border-color:var(--primary)}.scroll-avatar-placeholder{background:linear-gradient(135deg, var(--primary-light), var(--pink));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:2rem;font-weight:700;display:flex}.scroll-name{color:var(--text);font-size:12px;font-weight:600}.quick-name-prompt{text-align:center;padding:12px 0}.quick-name-avatar{object-fit:cover;border:3px solid var(--primary-light);border-radius:50%;width:80px;height:80px;margin-bottom:12px}.quick-name-prompt h3{color:var(--primary);margin-bottom:4px}.quick-name-prompt p{color:var(--text-light);margin-bottom:16px;font-size:14px}.quick-name-prompt form{flex-direction:column;gap:12px;display:flex}.character-preview-modal{text-align:left;max-width:430px;position:relative}.character-preview-modal h3{text-align:center}.character-preview-avatar{object-fit:cover;border:3px solid var(--primary-light);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 12px;display:flex}.character-preview-avatar.clickable{cursor:zoom-in;transition:transform .15s,box-shadow .15s}.character-preview-avatar.clickable:hover{transform:scale(1.04);box-shadow:0 4px 14px #6c5ce740}.character-preview-creator{text-align:center;margin-top:-4px!important}.character-preview-copy{max-height:260px;margin:12px 0 18px;padding-right:4px;overflow-y:auto}.character-preview-copy p{margin-bottom:12px;line-height:1.45}.character-preview-copy strong{color:var(--text);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;font-size:12px;display:block}.quick-name-prompt input{text-align:center;font-size:18px}.app-footer{text-align:center;border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:8px;margin-top:40px;padding:32px 20px 24px;display:flex}.age-badge{background:var(--primary);color:#fff;letter-spacing:1px;border-radius:6px;padding:3px 10px;font-size:11px;font-weight:800}.footer-sep{color:var(--text-light);font-size:13px}.footer-links{gap:16px;display:flex}.footer-links a{color:var(--text-light);font-size:12px;text-decoration:none}.footer-links a:hover{color:var(--primary)}@media (width<=600px){#root{padding:0}body:has(.chat-room){height:100dvh;min-height:100dvh;overflow:hidden}.app:has(.chat-room){height:100dvh;min-height:100dvh;overflow:hidden}.app:has(.chat-room){padding-bottom:0}.top-logo{font-size:1.3rem}.coin-display{padding:4px 10px;font-size:13px}.hero-section h2{font-size:1.4rem}.dashboard-bar{margin-bottom:16px;padding:10px 12px}.dashboard-actions{display:none}.dashboard-hamburger{display:inline-flex}input[type=text],input[type=email],input[type=search],input[type=password],input:not([type]),textarea,select{font-size:16px}.character-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.card-avatar img,.avatar-placeholder{width:70px;height:70px;font-size:2rem}.token-card{padding:24px}.chat-room{max-width:100%;height:100dvh;padding:0}.chat-header{border-bottom:1px solid var(--border);flex-wrap:nowrap;gap:6px;padding:6px 8px}.back-btn{flex-shrink:0;padding:2px 6px;font-size:20px}.multi-chat-characters{flex:1;gap:6px;min-width:0}.anon-coin-counter{height:30px;padding:0 6px;font-size:11px}.multi-chat-characters .chat-avatar{width:28px!important;height:28px!important}.mini-avatar-placeholder{width:28px;height:28px;font-size:12px}.emotion-ring{border-width:2px;padding:1px}.mini-char-name{max-width:36px;font-size:8px}.mini-character.is-typing:after{display:none}.mini-character.is-typing .mini-char-name{color:var(--primary)}.remove-char-btn{width:14px;height:14px;font-size:8px}.auto-chat-pill{width:28px;height:28px;font-size:12px;display:flex}.auto-chat-inline,.scene-indicator{display:none}.hamburger-btn{width:28px;height:28px}.hamburger-btn span{width:16px}.chat-menu-sheet{width:min(100vw,420px)}.chat-menu-header{padding:16px 16px 12px}.chat-menu-header h3{font-size:22px}.chat-menu-body{padding:14px 12px 24px}.chat-menu-row{border-radius:16px;min-height:64px;padding:13px 14px}.chat-menu-row-title{font-size:14px}.chat-menu-row-meta{font-size:12px}.chat-messages{padding:8px}.chat-composer .play-pause-btn{display:none}.compose-menu-mobile-only{display:flex!important}.message{border-radius:12px;max-width:85%;padding:8px 12px}.message-avatar{border-radius:8px;width:28px;height:28px}.message-speaker{font-size:10px}.message-text{font-size:14px;line-height:1.45}.message.beat{max-width:92%!important;padding:6px 12px!important}.message.beat .message-text{font-size:13px;line-height:1.5}.message-image{width:min(320px,82vw);height:min(320px,82vw);max-height:460px}.image-pending{width:min(320px,82vw);height:min(320px,82vw)}.availability-popover{width:calc(100vw - 16px);padding:12px;bottom:76px}.availability-actions{justify-content:stretch}.availability-actions .primary-btn,.availability-actions .secondary-btn{flex:1}.message-addressed{padding:1px 6px;font-size:10px}.chat-bottom{padding:4px 8px}.chat-toolbar{gap:4px;padding:0 0 4px}.tool-btn{padding:4px 10px;font-size:11px}.chat-input{flex-wrap:nowrap;align-items:center;gap:4px;padding:0}.chat-input input{border-width:1px;border-radius:20px;padding:10px 12px;font-size:16px}.chat-input button[type=submit]{border-radius:20px;padding:10px 14px;font-size:14px}.address-badge{text-overflow:ellipsis;max-width:100px;padding:3px 8px;font-size:11px;overflow:hidden}.pm-toggle{padding:3px 6px;font-size:10px}.pm-edge-tab{padding:10px 5px;font-size:11px}.pm-panel{border-left:none;width:100vw;max-width:100vw}.pm-close-btn{display:none}.pm-overlay{background:0 0}.pm-panel-header{padding:10px 12px}.pm-tabs{padding:6px 4px 0}.pm-tab{padding:5px 8px;font-size:11px}.pm-tab-avatar{width:16px;height:16px}.pm-input{padding:8px}.pm-input input{border-radius:20px;padding:10px 12px;font-size:16px}.pm-input button{border-radius:20px;padding:10px 16px;font-size:14px}.at-menu{gap:3px;padding:6px 8px}.at-menu-item{padding:5px 10px;font-size:12px}.at-menu-avatar{width:18px;height:18px}.image-gen-bar{padding:8px}.image-gen-bar input{border-radius:20px;flex:1;min-width:0;font-size:16px}.topic-bar{padding:6px 8px}.topic-bar input{font-size:16px}.start-screen{gap:12px;padding:20px 12px}.start-screen h3{font-size:1.2rem}.scene-input-short{padding:10px 12px;font-size:16px}.start-form input{font-size:16px}.idle-banner{padding:8px 12px}.settings-overlay{justify-content:center;align-items:center;padding:10px 8px}.settings-panel{width:100%;max-width:100%;max-height:90dvh;overflow-y:auto}.confirm-modal{max-width:90vw}}@media (width<=480px){.character-grid{grid-template-columns:1fr;gap:14px}.card-avatar img,.avatar-placeholder{width:96px;height:96px;font-size:2.4rem}}.blocked-card-wrap{max-width:560px;margin:60px auto 24px;padding:0 16px;position:relative}.blocked-card-wrap .back-arrow{position:absolute;top:-32px;left:16px}.blocked-card{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md);text-align:center;padding:28px 24px;box-shadow:0 6px 20px #00000014}.blocked-avatar{background:var(--surface-alt,#f5f5f5);border:3px solid var(--border);border-radius:50%;width:110px;height:110px;margin:0 auto 16px;overflow:hidden}.blocked-avatar img{object-fit:cover;width:100%;height:100%;display:block}.blocked-avatar-placeholder{width:100%;height:100%;color:var(--text-light);justify-content:center;align-items:center;font-size:2.6rem;font-weight:600;display:flex}.blocked-card h2{color:var(--text);margin:0 0 8px;font-size:1.3rem}.blocked-reason{color:var(--text);margin:0 0 14px;font-size:.95rem;font-style:italic;line-height:1.4}.blocked-explainer{color:var(--text-light);margin:0 0 18px;font-size:.88rem;line-height:1.45}.blocked-permanent{color:var(--text-light);margin:14px 0 0;font-size:.95rem}.blocked-form textarea{border:2px solid var(--border);border-radius:var(--radius-sm);resize:vertical;box-sizing:border-box;width:100%;margin-bottom:12px;padding:10px 12px;font-family:inherit;font-size:.95rem}.blocked-actions{justify-content:center;gap:10px;display:flex}.blocked-result{border-radius:var(--radius-sm);background:var(--surface-alt,#f7f7f7);border:1px solid var(--border);margin-top:10px;padding:14px}.blocked-result.accepted{background:#eaf6ee;border-color:#2d8d4d}.blocked-result.declined{background:#fbeded;border-color:#c14545}.blocked-result.filtered{background:#fff3e0;border-color:#b35400}.blocked-result.filtered .blocked-reply{color:#7a3300;font-style:normal;font-weight:600}.blocked-reply{color:var(--text);margin:0 0 8px;font-size:1rem;font-style:italic}.blocked-resolved-note{color:#2d8d4d;margin:0;font-size:.85rem}.blocked-decline-note{color:#777;margin:0 0 12px;font-size:.85rem}.mode-toggle{background:#ffffff0f;border-radius:999px;margin:0 6px;padding:2px;display:inline-flex}.mode-toggle button{color:var(--text);cursor:pointer;letter-spacing:.3px;opacity:.7;background:0 0;border:0;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;transition:opacity .15s,background .15s}.mode-toggle button:hover{opacity:1}.mode-toggle button.active{background:var(--primary);color:#fff;opacity:1}.picker-mode-toggle{background:#6c5ce71f;border:1px solid #6c5ce740}.picker-mode-toggle button{color:var(--text)}.story-room{color:#e8e0d8;background:radial-gradient(at top,#1b1721 0%,#0000 60%),linear-gradient(#131118 0%,#0c0a0f 100%);flex-direction:column;height:100dvh;display:flex;position:relative}.story-room-header{background:#0003;border-bottom:1px solid #ffffff14;flex-shrink:0;align-items:center;gap:10px;padding:10px 14px;display:flex}.story-room-header .back-btn{color:#c4b8e0;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px}.story-room-title{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;font-family:Georgia,Iowan Old Style,serif;font-size:14px;display:flex}.story-room-title-cast{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.story-room-title-summary{color:#b3a4ff;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#ffffff0d;border:1px solid #ffffff14;border-radius:999px;max-width:240px;padding:2px 10px;font-family:Georgia,serif;font-size:11.5px;font-style:italic;overflow:hidden}.story-room-title-summary:hover{color:#fff;background:#6c5ce72e}.story-room-stream{flex:1;padding:24px 0;font-family:Georgia,Iowan Old Style,Palatino Linotype,serif;overflow-y:auto}.story-passage{max-width:720px;margin:14px auto;padding:0 28px}.story-passage-text{white-space:pre-wrap;font-size:1.0625rem;line-height:1.75}.story-passage-narrator .story-passage-text{color:#e8e0d8}.story-passage-player{color:#c8b8d0;border-left:2px solid #c8b8d059;padding-left:22px;font-style:italic}.story-passage-attr{color:#9c8fa8;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:11.5px;font-style:normal}.story-passage-loading .story-passage-text{color:#9c8fa8}.story-quote{color:#f0d090;font-style:italic}.story-cursor{color:#6c5ce7;margin-left:2px;animation:1s steps(2,end) infinite storyCursorBlink;display:inline-block}@keyframes storyCursorBlink{0%,50%{opacity:1}51%,to{opacity:.2}}.story-passage-streaming .story-passage-text{color:#e8e0d8}.story-choose-options{flex-direction:column;gap:10px;max-width:720px;margin:22px auto;padding:0 28px;display:flex}.story-choose-header{color:#9c8fa8;text-align:center;margin-bottom:4px;font-family:system-ui,sans-serif;font-size:12px;font-style:italic}.story-choose-card{text-align:left;cursor:pointer;color:#e8e0d8;background:#6c5ce714;border:1px solid #6c5ce74d;border-radius:10px;padding:14px 18px;font-family:Georgia,serif;transition:background .15s,border-color .15s}.story-choose-card:hover{background:#6c5ce72e;border-color:#6c5ce799}.story-choose-label{letter-spacing:.08em;text-transform:uppercase;color:#c4b8e0;margin-bottom:6px;font-family:system-ui,sans-serif;font-size:11px;font-weight:700}.story-choose-preview{font-size:1rem;line-height:1.6}.story-choose-cancel{align-self:center;margin-top:6px}@media (width<=768px){.story-choose-options{padding:0 18px}}.story-error{color:#ffb0b0;background:#ff7a7a1f;border:1px solid #ff7a7a66;border-radius:8px;max-width:720px;margin:14px auto;padding:10px 16px;font-family:system-ui,sans-serif;font-size:13px}.story-cast-chips{scrollbar-width:thin;flex-shrink:0;gap:6px;padding:8px 14px 4px;display:flex;overflow-x:auto}.story-cast-chip{color:#d8cfee;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #b3a4ff40;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.story-cast-chip:hover{color:#fff;background:#6c5ce738;border-color:#b3a4ff8c}.story-cast-chip.active{color:#fff;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border-color:#ffffff2e;box-shadow:0 1px #00000026}.story-passage-character{border-left:3px solid #b3a4ff;margin-left:4px;padding-left:16px;position:relative}.story-passage-attr-char{letter-spacing:.06em;text-transform:uppercase;color:#b3a4ff;opacity:.85;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;font-style:italic;display:flex}.story-passage-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:22px;height:22px}.story-pass-row{scrollbar-width:thin;flex-shrink:0;align-items:center;gap:6px;padding:8px 16px 4px;display:flex;overflow-x:auto}.story-pass-row-label{color:#9b91b8;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;margin-right:4px;font-family:Georgia,serif;font-size:11.5px;font-style:italic}.story-pass-chip{color:#d8cfee;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #b3a4ff4d;border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.story-pass-chip:hover:not(:disabled){color:#fff;background:#6c5ce73d;border-color:#b3a4ff99}.story-pass-chip:disabled{opacity:.45;cursor:not-allowed}.story-run-bar{background:#131118;border-top:1px solid #b3a4ff29;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.story-run-btn{color:#fff;cursor:pointer;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:16px;font-weight:700;display:flex}.story-run-btn:hover{background:linear-gradient(#7d6df0 0%,#6253d4 100%)}.story-run-btn.is-running{color:#2d2746;background:linear-gradient(#ffb86b 0%,#e5984a 100%)}.story-run-speed{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff38;border-radius:8px;flex-shrink:0;padding:6px 10px;font-size:13px}.story-run-nudge{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff2e;border-radius:999px;outline:none;flex:1;min-width:0;padding:8px 14px;font-size:13px}.story-run-nudge:focus{border-color:#b3a4ff80}.story-run-nudge::placeholder{color:#9a91b3}.story-run-twist{color:#b3a4ff;cursor:pointer;white-space:nowrap;background:#b3a4ff24;border:1px solid #b3a4ff4d;border-radius:999px;flex-shrink:0;padding:7px 14px;font-size:13px;font-weight:600}.story-run-twist:hover:not(:disabled){color:#fff;background:#b3a4ff47}.story-run-twist:disabled{opacity:.6;cursor:default}.story-turn-card{background:linear-gradient(#1c1825 0%,#15121c 100%);border-top:1px solid #b3a4ff47;flex-direction:column;flex-shrink:0;gap:10px;padding:14px 18px 18px;display:flex}.story-turn-card-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#b3a4ff;opacity:.85;font-family:Georgia,serif;font-size:12px;font-style:italic}.story-turn-card-actions{flex-wrap:wrap;gap:6px;display:flex}.story-turn-card-chip{color:#d8cfee;cursor:pointer;background:#ffffff0f;border:1px solid #b3a4ff40;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.story-turn-card-chip:hover{color:#fff;background:#6c5ce738}.story-turn-card-chip.active{color:#fff;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border-color:#ffffff38}.story-turn-card-icon{font-size:13px}.story-turn-card-pill{background:#1a1721;border:1px solid #b3a4ff4d;border-radius:22px;align-items:flex-end;gap:4px;padding:6px;display:flex;box-shadow:inset 0 1px #ffffff0a}.story-turn-card-pill:focus-within{border-color:#b3a4ff99;box-shadow:0 0 0 3px #6c5ce733,inset 0 1px #ffffff0d}.story-turn-card[data-turn=you] .story-turn-card-pill{border-color:#b3a4ffb3;animation:2s ease-in-out infinite story-your-turn-pulse;box-shadow:0 0 0 3px #6c5ce740,inset 0 1px #ffffff0d}.story-turn-card[data-turn=ai] .story-turn-card-pill{opacity:.5;border-color:#b3a4ff26}.story-turn-card[data-turn=ai]:before{content:"— the scene is writing — ";color:#dcd7f58c;letter-spacing:.04em;text-align:center;margin-bottom:6px;font-family:Georgia,serif;font-size:12px;font-style:italic;animation:1.6s ease-in-out infinite story-ai-writing;display:block}.story-turn-card[data-turn=you] .story-turn-card-eyebrow:after{content:" — go!";color:var(--primary-light);font-weight:700}.story-turn-toast{color:#fff;letter-spacing:.06em;pointer-events:none;z-index:10;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border-radius:999px;padding:4px 12px;font-family:Georgia,serif;font-size:12px;font-weight:700;animation:1.6s ease-out forwards story-turn-toast-anim;position:absolute;top:-10px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #6c5ce759}@keyframes story-turn-toast-anim{0%{opacity:0;transform:translate(-50%,6px)}18%{opacity:1;transform:translate(-50%)}75%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.story-turn-card{position:relative}.story-plus-menu-divider{background:#b3a4ff29;height:1px;margin:4px 8px}@keyframes story-your-turn-pulse{0%,to{box-shadow:0 0 0 3px #6c5ce740,inset 0 1px #ffffff0d}50%{box-shadow:0 0 0 6px #6c5ce72e,inset 0 1px #ffffff0d}}@keyframes story-ai-writing{0%,to{opacity:.5}50%{opacity:.9}}.story-turn-card-pill .story-input{resize:none;min-height:38px;max-height:220px;padding:9px 12px;overflow-y:auto}.story-input-help{z-index:80;background:#1a1721;border:1px solid #b3a4ff40;border-radius:12px;width:320px;max-width:90vw;padding:12px 14px;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 12px 30px #00000080}.story-input-help-title{letter-spacing:.06em;text-transform:uppercase;color:#b3a4ff;margin-bottom:6px;font-family:Georgia,serif;font-size:13px;font-weight:700}.story-input-help-body{color:#e8e0d8d9;font-size:13px;line-height:1.5}.story-input-help-body strong{color:#fff;font-weight:700}.story-input-bar{background:#110f15;border-top:1px solid #b3a4ff29;flex-shrink:0;padding:14px 18px 18px;box-shadow:inset 0 -1px #ffffff0a}.story-input-pill{background:#1a1721;border:1px solid #b3a4ff38;border-radius:22px;align-items:flex-end;gap:4px;padding:6px;transition:border-color .12s,box-shadow .12s;display:flex;box-shadow:inset 0 1px #ffffff08}.story-input-pill:focus-within{border-color:#b3a4ff8c;box-shadow:0 0 0 3px #6c5ce72e,inset 0 1px #ffffff0d}.story-input{color:#ece6dc;resize:none;background:0 0;border:none;border-radius:0;outline:none;flex:1;min-width:0;min-height:38px;max-height:200px;padding:9px 8px;font-family:Georgia,serif;font-size:14px;line-height:1.45}.story-input::placeholder{color:#9a91b3;opacity:.85}.story-input-plus-wrap{align-self:flex-end;position:relative}.story-input-plus{color:#b3a4ff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;font-weight:400;line-height:1;transition:background .12s,color .12s;display:flex}.story-input-plus:hover:not(:disabled){color:#fff;background:#6c5ce738}.story-input-plus:disabled{opacity:.4;cursor:not-allowed}.story-input-submit{color:#fff;cursor:pointer;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border:none;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;transition:background .12s,opacity .12s;display:flex}.story-input-submit:hover:not(:disabled){background:linear-gradient(#7d6df0 0%,#6253d4 100%)}.story-input-submit:disabled{cursor:not-allowed;opacity:.6;background:#6c5ce74d}.story-input-spellcheck{color:#dcd7f58c;letter-spacing:.04em;cursor:pointer;background:0 0;border:1px solid #b3a4ff2e;border-radius:999px;align-self:flex-end;min-width:38px;height:28px;margin-bottom:6px;padding:0 8px;font-size:.72rem;font-weight:600;transition:color .12s,border-color .12s,background .12s}.story-input-spellcheck:hover{color:#dcd7f5e6;background:#b3a4ff0f;border-color:#b3a4ff80}.story-plus-menu{z-index:80;background:#1a1721;border:1px solid #b3a4ff40;border-radius:12px;flex-direction:column;min-width:260px;max-width:340px;max-height:60vh;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden auto;box-shadow:0 12px 30px #00000080}.story-plus-menu-section{letter-spacing:.1em;text-transform:uppercase;color:#b3a4ff;opacity:.7;padding:8px 14px 4px;font-family:Georgia,serif;font-size:11px;font-style:italic}.story-plus-menu-hint{color:#9b91b8;padding:4px 14px 8px;font-size:11.5px;font-style:italic}.story-plus-menu-row{color:#e8e3f7;text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff08;flex-direction:column;gap:2px;padding:9px 14px;display:flex}.story-plus-menu-row:last-child{border-bottom:none}.story-plus-menu-row:hover:not(:disabled){background:#6c5ce72e}.story-plus-menu-row:disabled{opacity:.4;cursor:not-allowed}.story-plus-menu-row-title{font-size:13px;font-weight:600}.story-plus-menu-row-meta{opacity:.65;font-size:11px}.story-passage-image{max-width:720px;margin:14px auto;padding:0 24px}.story-passage-attr-image{letter-spacing:.04em;color:#b3a4ff;opacity:.85;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-family:Georgia,serif;font-size:12px;font-style:italic;display:flex}.story-passage-image-delete{color:#9b91b8;cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:14px;transition:opacity .15s,color .15s,background .15s}.story-passage-image-delete:hover{opacity:1;color:#ff8a8a;background:#ff8a8a1f}.story-passage-image-img{aspect-ratio:1;object-fit:cover;border:1px solid #b3a4ff2e;border-radius:12px;width:360px;max-width:100%;height:auto;display:block;box-shadow:0 6px 24px #00000059}.story-passage-image-pending{color:#b3a4ff;opacity:.7;text-align:center;border:1px dashed #b3a4ff40;border-radius:12px;padding:30px 20px;font-family:Georgia,serif;font-style:italic;animation:1.6s ease-in-out infinite story-snap-pending-pulse}@keyframes story-snap-pending-pulse{0%,to{opacity:.55;border-color:#b3a4ff38}50%{opacity:.9;border-color:#b3a4ff8c}}.story-snap-flash{pointer-events:none;z-index:999;background:#fff;animation:.22s ease-out forwards story-snap-flash-anim;position:absolute;inset:0}@keyframes story-snap-flash-anim{0%{opacity:0}18%{opacity:.85}to{opacity:0}}.story-turn-card-chip.loading{animation:.22s ease-out story-snap-chip-press}@keyframes story-snap-chip-press{0%{transform:scale(1)}35%{transform:scale(.92)}to{transform:scale(1)}}.story-lore-list{flex-direction:column;gap:10px;display:flex}.story-lore-row{background:#16131b;border:1px solid #b3a4ff29;border-radius:10px;flex-direction:column;gap:6px;padding:10px 10px 8px;display:flex}.story-lore-row-head{align-items:center;gap:8px;display:flex}.story-lore-name{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff2e;border-radius:6px;flex:1;padding:6px 10px;font-size:13px;font-weight:600}.story-lore-name:focus{border-color:#b3a4ff8c;outline:none}.story-lore-alwayson{color:#dcd7f599;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.story-lore-delete{color:#dcd7f58c;cursor:pointer;background:0 0;border:1px solid #b3a4ff2e;border-radius:50%;width:26px;height:26px;font-size:16px;line-height:1;transition:color .12s,border-color .12s,background .12s}.story-lore-delete:hover{color:#ff8a8a;background:#ff8a8a14;border-color:#ff8a8a80}.story-lore-keywords{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff2e;border-radius:6px;padding:5px 10px;font-family:Georgia,serif;font-size:12px}.story-lore-keywords:focus{border-color:#b3a4ff8c;outline:none}.story-lore-body{color:#ece6dc;resize:vertical;background:#1a1721;border:1px solid #b3a4ff2e;border-radius:6px;min-height:50px;padding:6px 10px;font-family:Georgia,serif;font-size:13px;line-height:1.4}.story-lore-body:focus{border-color:#b3a4ff8c;outline:none}.story-lore-add{align-self:flex-start}.story-field-section{border-top:1px solid #b3a4ff24;margin-top:22px;margin-bottom:8px;padding-top:14px}.story-section-heading{letter-spacing:.06em;text-transform:uppercase;color:#b3a4ff;font-family:Georgia,serif;font-size:13px;font-weight:700}.story-select{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff38;border-radius:8px;width:100%;padding:9px 12px;font-size:13px}.story-segmented-wrap{flex-wrap:wrap}.story-toggle{cursor:pointer;align-items:center;gap:10px;font-size:13px;display:inline-flex}.story-toggle input[type=checkbox]{accent-color:#6c5ce7;cursor:pointer;width:18px;height:18px}.story-numeric-row{color:#c4b8e0;margin-top:8px;font-size:13px}.story-numeric-row label{align-items:center;gap:8px;display:inline-flex}.story-numeric-row input[type=number],.story-numeric-input{color:#ece6dc;background:#1a1721;border:1px solid #b3a4ff38;border-radius:6px;width:80px;padding:6px 8px;font-size:13px}.story-input:focus{border-color:#6c5ce7;outline:none;box-shadow:0 0 0 2px #6c5ce733}.story-input-bar .primary-btn{align-self:stretch;min-width:90px}@media (width<=768px){.story-passage{padding:0 18px}.story-input-bar{padding:10px 12px}}.story-empty-state{pointer-events:none;justify-content:center;margin:32px 16px 0;display:flex}.story-empty-state-card{pointer-events:auto;text-align:left;background:linear-gradient(#b3a4ff12 0%,#b3a4ff05 100%);border:1px solid #b3a4ff24;border-radius:14px;max-width:540px;padding:24px 28px;box-shadow:0 4px 30px #00000040}.story-empty-state-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#b3a4ff;opacity:.75;margin-bottom:8px;font-family:Georgia,serif;font-size:11.5px;font-style:italic}.story-empty-state-scene{color:#ece6dc;margin:0 0 18px;font-family:Georgia,Iowan Old Style,serif;font-size:15px;line-height:1.55}.story-empty-state-scene-empty{color:#b3a4ff;font-style:italic}.story-empty-state-hint{font-family:system-ui,sans-serif;font-size:12.5px;color:#b8a8d6!important;margin:0 0 10px!important}.story-empty-state-chips{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.story-empty-state-chip{color:#d8cfee;text-align:left;cursor:pointer;background:#6c5ce714;border:1px solid #b3a4ff33;border-radius:999px;padding:9px 14px;font-family:Georgia,serif;font-size:13px;font-style:italic;transition:background .12s,border-color .12s,color .12s}.story-empty-state-chip:hover{color:#fff;background:#6c5ce738;border-color:#b3a4ff80}.story-empty-state-edit{margin-top:4px}.multi-chat.mode-story .chat-messages{background:linear-gradient(#1a1620 0%,#0f0c14 100%);padding:24px 0;font-family:Georgia,Iowan Old Style,Palatino Linotype,serif}.multi-chat.mode-story .message{color:#e8e0d8;border-radius:0;max-width:720px;margin:8px auto;padding:4px 28px;box-shadow:none!important;background:0 0!important;align-self:center!important}.multi-chat.mode-story .message.user{color:#c8b8d0;border-left:2px solid #c8b8d059;padding-left:22px;font-style:italic}.multi-chat.mode-story .message-text{font-size:1.0625rem;line-height:1.75}.multi-chat.mode-story .message-avatar-row,.multi-chat.mode-story .message-speaker,.multi-chat.mode-story .typing-avatar,.multi-chat.mode-story .pm-typing-badge{display:none!important}.multi-chat.mode-story .message.system,.multi-chat.mode-story .message.narrator{color:#9c8fa8;text-align:center;background:0 0;max-width:580px;font-size:.95rem;font-style:italic}.story-mode-badge{color:#c4b8e0;letter-spacing:.06em;text-transform:uppercase;background:#6c5ce72e;border:1px solid #6c5ce766;border-radius:999px;margin:0 6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.load-item-badge{color:#6c5ce7;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;background:#6c5ce72e;border:1px solid #6c5ce766;border-radius:999px;margin-right:6px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.story-setup-btn{color:#fff;cursor:pointer;letter-spacing:.02em;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border:none;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;box-shadow:0 1px #0000001a}.story-setup-btn:hover{background:linear-gradient(#7d6df0 0%,#6253d4 100%)}.story-mode-try-btn{color:#fff;cursor:pointer;letter-spacing:.02em;white-space:nowrap;background:linear-gradient(135deg,#a06cd5 0%,#6c5ce7 100%);border:none;border-radius:999px;margin:0 6px;padding:6px 14px;font-size:13px;font-weight:600;box-shadow:0 2px 6px #6c5ce759}.story-mode-try-btn:hover{filter:brightness(1.12);box-shadow:0 3px 10px #6c5ce780}.story-mode-try-btn:active{transform:translateY(1px)}.story-signin-note{color:#b3a4ff;cursor:pointer;white-space:nowrap;background:#6c5ce726;border:1px solid #6c5ce759;border-radius:999px;margin:0 4px;padding:3px 9px;font-size:11px;font-weight:500}.story-signin-note:hover{color:#fff;background:#6c5ce747}.story-room-actions{align-items:center;gap:6px;display:flex;position:relative}.story-kebab-btn{color:#c4b8e0;background:#ffffff0f;padding:4px 12px;font-size:18px;line-height:1}.story-kebab-btn:hover{background:#ffffff1f}.story-save-indicator{opacity:.75;letter-spacing:.02em;margin-left:10px;font-size:11px;font-weight:500}.story-save-saving{color:#ffd166}.story-save-saved{color:#88d899}.story-save-error{color:#ff8a8a}.story-save-idle{display:none}.story-menu-backdrop{z-index:60;background:0 0;position:fixed;inset:0}.story-menu{z-index:61;background:#1c1830;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;min-width:220px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px #0006}.story-menu-row{color:#e8e3f7;text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0a;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.story-menu-row:last-child{border-bottom:none}.story-menu-row:hover:not(:disabled){background:#6c5ce72e}.story-menu-row:disabled{opacity:.45;cursor:not-allowed}.story-menu-row.danger{color:#ff8a8a}.story-menu-row-title{font-size:13px;font-weight:600}.story-menu-row-meta{opacity:.65;font-size:11px}.story-load-modal{background:#1c1830;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;width:min(620px,92vw);max-height:80vh;display:flex;overflow:hidden}.story-load-body{padding:6px;overflow:hidden auto}.story-load-empty{text-align:center;color:#9b91b8;padding:32px 18px;font-size:13px}.story-load-row-wrap{align-items:stretch;gap:4px;padding-right:6px;display:flex}.story-load-row{color:#e8e3f7;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;gap:4px;padding:12px 14px;display:flex}.story-load-row:hover{background:#6c5ce724}.story-load-row-delete{color:#9b91b8;cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:8px;align-self:center;padding:0 10px;font-size:16px;transition:opacity .15s,color .15s,background .15s}.story-load-row-delete:hover{opacity:1;color:#ff8a8a;background:#ff8a8a1f}.story-load-row-title{font-size:14px;font-weight:600}.story-load-row-meta{opacity:.7;font-size:12px}.story-share-toast{color:#c4b8e0;background:#6c5ce72e;border-radius:8px;width:fit-content;max-width:calc(100% - 32px);margin:8px auto 0;padding:8px 14px;font-size:13px}.story-share-toast a{color:#b3a4ff;margin-left:4px;text-decoration:underline}.story-summary-line{color:#c4b8e0;letter-spacing:.02em;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#6c5ce726;border:1px solid #6c5ce759;border-radius:999px;width:fit-content;max-width:calc(100% - 32px);margin:8px auto 0;padding:6px 14px;font-size:12.5px;font-style:italic;display:block;overflow:hidden}.story-summary-line:hover{color:#e0d6f0;background:#6c5ce740}.story-overlay{z-index:220;background:#0000008c;justify-content:flex-end;align-items:stretch;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.story-overlay.story-overlay-elevated{z-index:240;justify-content:center;align-items:center}.story-panel{background:var(--card-bg);flex-direction:column;width:520px;max-width:96vw;max-height:100dvh;display:flex;overflow:hidden;box-shadow:-8px 0 30px #0006}.story-panel .story-body{max-width:100%;overflow-x:hidden}.story-panel select,.story-panel input[type=text],.story-panel input[type=number],.story-panel textarea{box-sizing:border-box;max-width:100%}.story-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.story-header h3{flex:1;margin:0;font-size:16px}.story-panel-load-btn{color:#c4b8e0;cursor:pointer;white-space:nowrap;background:#6c5ce72e;border:1px solid #6c5ce759;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.story-panel-load-btn:hover{background:#6c5ce752}.story-close{color:var(--text-light);cursor:pointer;background:0 0;padding:0 4px;font-size:24px;line-height:1}.story-close:hover{color:var(--text)}.story-header-titlebox{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.story-header-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#b3a4ff;opacity:.7;font-family:Georgia,serif;font-size:11px;font-style:italic}.story-header-title-input{color:#fff;background:0 0;border:none;border-bottom:1px dashed #b3a4ff40;outline:none;width:100%;min-width:0;padding:2px 0;font-family:Georgia,Iowan Old Style,serif;font-size:17px;font-weight:700}.story-header-title-input:focus{border-bottom-color:#b3a4ffb3}.story-header-title-empty{color:#9b91b8;font-family:Georgia,serif;font-size:14px;font-style:italic}.story-header-dirty{color:#ffb86b;letter-spacing:.02em;text-transform:none;margin-left:6px;font-size:11px;font-style:italic;font-weight:400}.story-panel-clear-btn{color:#ff8a8a;cursor:pointer;background:0 0;border:1px solid #ff8a8a40;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500}.story-panel-clear-btn:hover{color:#ffacac;background:#ff8a8a1a;border-color:#ff8a8a80}.story-panel-discard-btn{margin-left:4px}.story-panel-done-btn{background:linear-gradient(#6c5ce7 0%,#5848c2 100%)}.story-panel-done-btn:hover{background:linear-gradient(#7d6df0 0%,#6253d4 100%)}.story-panel-footer-spacer{flex:1}.story-panel-save-btn{color:#fff;background:linear-gradient(#46c47b 0%,#36a366 100%);border-color:#ffffff2e;box-shadow:0 1px #00000026}.story-panel-save-btn:hover:not(:disabled){background:linear-gradient(#54d289 0%,#3fb574 100%)}.story-panel-save-btn:disabled{opacity:.55;cursor:not-allowed}.story-load-tabs{border-bottom:1px solid #ffffff0d;gap:4px;padding:8px 14px 0;display:flex}.story-load-tab{color:#9b91b8;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.story-load-tab:hover{color:#c4b8e0}.story-load-tab.active{color:#fff;border-bottom-color:#b3a4ff}.story-load-tab-count{color:#b3a4ff;background:#b3a4ff26;border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:700}.story-load-tab.active .story-load-tab-count{color:#fff;background:#b3a4ff4d}.story-panel-footer{border-top:1px solid var(--border);background:#00000026;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.story-panel-footer .primary-btn,.story-panel-footer .secondary-btn{padding:9px 18px;font-size:14px}.story-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:18px;padding:16px 20px 24px;display:flex;overflow-y:auto}.story-field{flex-direction:column;gap:6px;display:flex;position:relative}.story-field-label{grid-template-columns:1fr auto;align-items:center;gap:2px 8px;display:grid}.story-field-label>span:first-child{color:var(--text);font-size:13px;font-weight:600}.story-field-hint{color:var(--text-light);grid-column:1/-1;font-size:11.5px}.story-wizard{background:#6c5ce714;border:1px solid #6c5ce740;border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.story-wizard-row{gap:8px;display:flex}.story-wizard input[type=text]{border:1px solid var(--border);background:var(--card-bg);color:var(--text);border-radius:6px;flex:1;padding:8px 10px;font-family:inherit;font-size:13px}.story-wizard input[type=text]:focus{border-color:#6c5ce7;outline:none;box-shadow:0 0 0 2px #6c5ce733}.story-helper-error{color:#ff7a7a;background:#ff7a7a1a;border-radius:4px;padding:4px 8px;font-size:12px}.story-helper-success{color:#6ed29a;background:#6ed29a1a;border-radius:4px;padding:4px 8px;font-size:12px}.story-helper-btn{color:#c4b8e0;cursor:pointer;background:0 0;border:1px solid #6c5ce766;border-radius:999px;place-self:start end;height:22px;padding:2px 8px;font-size:12px;line-height:1.4;transition:background .15s,color .15s}.story-helper-btn:hover:not(:disabled){color:#e0d6f0;background:#6c5ce72e}.story-helper-btn:disabled{opacity:.5;cursor:not-allowed}.story-helper-btn.primary{color:#fff;background:linear-gradient(#6c5ce7 0%,#5848c2 100%);border-color:#0000;height:auto;padding:8px 14px;font-size:13px;font-weight:600}.story-helper-btn.primary:hover:not(:disabled){color:#fff;background:linear-gradient(#7d6df0 0%,#6253d4 100%)}.story-field textarea,.story-field input[type=text]{border:1px solid var(--border);background:var(--input-bg,var(--card-bg));color:var(--text);resize:vertical;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:13.5px;line-height:1.5}.story-field textarea:focus,.story-field input[type=text]:focus{border-color:#6c5ce7;outline:none;box-shadow:0 0 0 2px #6c5ce733}.story-char-count{color:var(--text-light);align-self:flex-end;font-size:10.5px}.story-cast-list{flex-direction:column;gap:8px;display:flex}.story-cast-empty{color:var(--text-light);padding:6px 0;font-size:12px;font-style:italic}.story-cast-row{grid-template-columns:28px 1fr auto;align-items:center;gap:10px;min-width:0;display:grid}.story-cast-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.story-cast-avatar-blank{color:#fff;background:linear-gradient(135deg,#6c5ce7 0%,#5848c2 100%);justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.story-cast-row-player{background:#6c5ce71a;border:1px solid #6c5ce74d;border-radius:8px;padding:6px 8px}.story-you-pill{color:#fff;letter-spacing:.06em;vertical-align:middle;background:#6c5ce7;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.story-cast-name{color:#2d2746;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:700;line-height:1.3;display:inline-block;overflow:hidden}.story-cast-role{border:1px solid var(--border);background:var(--card-bg);color:var(--text);cursor:pointer;border-radius:5px;flex-shrink:0;min-width:110px;max-width:140px;padding:4px 8px;font-size:12.5px}.story-style-row{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.story-style-field{flex-direction:column;gap:4px;display:flex}.story-style-field>span{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:11.5px;font-weight:600}.story-style-field select{border:1px solid var(--border);background:var(--card-bg);color:var(--text);cursor:pointer;border-radius:5px;padding:6px 8px;font-size:12.5px}.story-segmented{border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;gap:0;max-width:100%;display:flex;overflow:hidden}.story-segmented button{border:none;border-right:1px solid var(--border);min-width:0;color:var(--text-light);cursor:pointer;word-break:break-word;background:0 0;flex:auto;padding:8px 6px;font-size:12px;transition:background .15s,color .15s}.story-segmented button:last-child{border-right:none}.story-segmented button:hover{background:#6c5ce714}.story-segmented button.active{color:var(--text);background:#6c5ce72e;font-weight:600}@media (width<=768px){.story-panel{width:100%;max-width:100%}.story-style-row{grid-template-columns:1fr}}
