: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)}.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}.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{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;border:3px solid #0000;padding:20px;transition:all .25s;position:relative}.character-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.character-card.selected{border-color:var(--green);background:#00b8940d}.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{gap:6px;display:flex}.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:linear-gradient(135deg,#d4a24a14,#6c5ce70a);border-color:#d4a24a}.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;background:linear-gradient(145deg,#6c5ce70f,#fd79a80a);justify-content:flex-start;gap:10px;padding:18px 16px;position:absolute;inset:0;overflow:hidden;transform:rotateY(180deg)}.card-back-scroll{flex-direction:column;flex:auto;gap:8px;width:100%;padding-right:4px;display:flex;overflow-y:auto}.card-back-scroll::-webkit-scrollbar{width:6px}.card-back-scroll::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:3px}.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}.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}.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{flex-direction:column;flex:1;gap:12px;padding:16px 0;display:flex;overflow-y:auto}.reply-scroll-spacer{flex:none;transition:height .18s}.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.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-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}.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 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}.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;max-width:180px;max-height:220px}.message-image:hover{opacity:.9}.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}.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{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;animation:.1s fadeIn;position:fixed;inset:0}.menu-dropdown{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);z-index:151;min-width:220px;margin-top:4px;animation:.15s fadeIn;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 30px #00000040}.menu-item{width:100%;color:var(--text);text-align:left;background:0 0;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.menu-item:last-child{border-bottom:none}.menu-item:hover{background:#6c5ce70d}.menu-label{flex:1}.menu-speed{align-items:center;gap:6px;display:flex}.menu-badge{background:var(--pink);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:800;display:flex}.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:8px;height:8px}.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{border:2px solid #0000;border-radius:50%;padding:1px;transition:border-color .5s}.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}.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{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.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-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{border-radius:8px;max-width:200px;margin-top:4px}.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);gap:8px;padding:10px 12px;display:flex}.pm-input input{flex:1;padding:8px 12px;font-size:13px}.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}.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}.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}@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-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 14px;font-family:inherit;font-size:14px}.feed-search input:focus{border-color:var(--primary-light);outline:none}.feed-search-clear{color:var(--text-light);cursor:pointer;background:0 0;border:none;font-size:18px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.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-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-actions{flex-direction:row;width:100%}.feed-chat-btn,.feed-add-btn{flex:1}.feed-card-meta{justify-content:center}}.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-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}.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);width:280px;max-width:90vw;overflow:hidden}.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;width:100%;max-width:400px;padding:32px;position:relative}.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}.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{gap:16px;width:max-content;animation:40s linear infinite starterScroll;display:flex}.starter-scroll-inner:hover{animation-play-state:paused}@keyframes starterScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.scroll-card{cursor:pointer;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;transition:transform .2s;display:flex}.scroll-card:hover{transform:scale(1.1)}.scroll-avatar{object-fit:cover;border:3px solid var(--border);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}.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}.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}.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}.menu-dropdown{min-width:200px;top:46px;right:4px}.menu-item{padding:14px 16px;font-size:15px}.chat-messages{padding:8px}.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{max-width:200px;max-height:none}.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}}
