.account-menu button.account-menu-item { border: 0; background: transparent; width: 100%; text-align: left; font-family: inherit; }
.account-menu button.account-menu-item:hover { background: #f0edfa; }
.account-menu .account-plan { color: #6549c8; background: #f1edff; }
.account-menu-divider { height: 1px; margin: 5px 9px; background: #e9e6f0; }
.account-menu-item:focus-visible, .account-dialog button:focus-visible, .account-dialog select:focus-visible { outline: 2px solid #7c5cff; outline-offset: 2px; }
.account-dialog { width: min(430px, calc(100vw - 40px)); box-sizing: border-box; max-height: 85vh; overflow-y: auto; padding: 24px; border: 1px solid #e6e0f1; border-radius: 20px; color: #302a3b; background: #fff; box-shadow: 0 24px 90px #20133140; }
.account-dialog::backdrop { background: #19102266; }
.account-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.account-dialog-heading h2 { font: 700 22px system-ui, sans-serif; margin: 0; }
.account-dialog-close { border: 0; border-radius: 8px; background: #f2eef8; color: #655674; width: 32px; height: 32px; cursor: pointer; }
.account-dialog-content { font: 15px/1.6 system-ui, sans-serif; }
.account-dialog dt { color: #777080; font-size: 12px; margin-top: 14px; }
.account-dialog dd { margin: 2px 0 12px; overflow-wrap: anywhere; }
.account-dialog-link { display: inline-block; padding: 9px 14px; border-radius: 9px; color: #fff; background: #7554d8; text-decoration: none; }
.account-setting-label { display: block; font-weight: 600; margin-bottom: 10px; }
.account-dialog select { width: 100%; padding: 10px; font: inherit; border: 1px solid #d9d0e8; border-radius: 9px; background: #faf8ff; color: #302a3b; }
.account-setting-note { color: #797180; font-size: 13px; margin-top: 12px; }
.account-setting-status { color: #6549c8; min-height: 24px; font-size: 13px; }
.message, .scene-text-content { font-size: var(--chat-reading-size, 16px); }
.video-text-block > .scene-text-message { background: transparent; border: 0; padding: 2px; }
.video-text-block .scene-text-label { text-transform: none; letter-spacing: 0; font-size: 15px; color: #30263e; }
.video-text-block .scene-text-content { font-style: normal; line-height: 1.7; overflow-wrap: anywhere; }
.video-text-block .scene-text-heading { margin-bottom: 10px; }
.video-text-block .scene-text-editor { min-height: 180px; font-size: var(--chat-reading-size, 16px); }
/* Standalone account panel; all figures come from the signed-in profile. */
.sidebar-account .account-menu-btn{justify-content:flex-start;gap:10px;font-size:14px;letter-spacing:0;padding:10px 12px;background:#f5f2f9;color:#3d334b}.account-avatar{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:11px;background:#e4d8f6;color:#74529b;font-size:14px;font-weight:700;flex-shrink:0}.account-menu{z-index:1000!important;width:330px!important;max-width:calc(100vw - 28px);padding:20px!important;border:1px solid #e4ddea;box-shadow:0 15px 70px #2d1f4426!important;max-height:calc(100dvh - 100px);overflow-y:auto;gap:4px!important}.account-panel-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#97899e;margin-bottom:15px}.account-panel-heading button{border:0;background:none;color:#84778e;font-size:25px;padding:0 5px;cursor:pointer}.account-identity{display:flex;align-items:center;gap:12px;margin-bottom:12px}.account-identity>div{min-width:0}.account-identity strong{display:block;font-size:15px}.account-identity #account-email{display:block;font-size:12px;color:#877b90;overflow-wrap:anywhere;margin-top:5px}.account-menu .account-plan{border-radius:9px;font-size:12px;margin-bottom:14px}.account-usage{background:#f7f5fa;border:1px solid #eee8f4;border-radius:13px;padding:16px}.account-usage>span{font-size:12px;color:#84788e}.account-usage>strong{display:block;font-size:30px;letter-spacing:-1px;color:#392b4d;margin-top:5px}.account-usage p{font-size:10px;color:#a294ad;margin:4px 0 18px}.account-usage>div{display:flex;justify-content:space-between;font-size:12px;color:#877990;margin-top:10px;gap:14px}.account-usage b{color:#4e3b60}.account-usage>strong{font-size:26px}.account-usage>.account-token-meter{display:block;height:6px;border-radius:3px;background:#e8e1f0;overflow:hidden;margin:-8px 0 14px}.account-token-meter i{display:block;height:100%;width:0;background:#8a63c2;border-radius:3px;transition:width .3s}.account-data-status{font-size:10px;color:#9a8ca5;line-height:1.5;margin:9px 0 15px}.account-upgrade{display:block;background:#302637;color:#fff!important;text-align:center;padding:12px;border-radius:10px;font-size:13px;text-decoration:none;margin-bottom:10px}.account-menu .account-menu-item{font-size:13px;padding:11px 12px;border-radius:8px}.account-menu .account-logout{color:#ac4e54}.account-panel-heading button:focus-visible,.account-upgrade:focus-visible{outline:2px solid #9772cd;outline-offset:3px}@media(max-width:991px){.sidebar-account .account-menu-btn{width:52px;height:48px;padding:8px;justify-content:center}.account-trigger-label{display:none}.account-menu{width:380px!important;padding:22px!important}.account-upgrade{padding:14px;font-size:14px}.account-menu .account-menu-item{font-size:14px;padding:13px 14px}}

/* The panel is mounted directly under body, outside the clipped sidebar. */
body > .account-menu {
    position: fixed !important;
    box-sizing: border-box;
    right: auto !important;
    bottom: auto !important;
    left: 14px;
    top: 14px;
    overscroll-behavior: contain;
}

/* Balance row: the number and the «+» that opens the token purchase dialog. */
.account-usage>.account-balance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 0 0;font-size:inherit;color:inherit}
.account-balance-row strong{display:block;font-size:26px;letter-spacing:-1px;color:#392b4d}
.account-buy-tokens{position:relative;flex:none;width:34px;height:34px;padding:0;border-radius:10px;border:0;background:#302637;color:#fff;font-size:0;cursor:pointer}
.account-buy-tokens::before,.account-buy-tokens::after{content:"";position:absolute;top:50%;left:50%;width:14px;height:2px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}
.account-buy-tokens::after{transform:translate(-50%,-50%) rotate(90deg)}
.account-buy-tokens:hover{background:#4a3a57}
.account-buy-tokens:focus-visible{outline:2px solid #9772cd;outline-offset:3px}
.token-shop{display:flex;flex-direction:column;gap:14px}
.token-shop-balance{background:#f7f5fa;border:1px solid #eee8f4;border-radius:12px;padding:12px 14px;font-size:13px;color:#5d5167}
.token-shop-balance strong{display:block;font-size:22px;color:#392b4d}
.token-shop h3{font-size:14px;margin:4px 0 0;color:#392b4d}
.token-pack{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e9e2f0;border-radius:12px;padding:12px 14px}
.token-pack strong{display:block;font-size:16px;color:#392b4d}
.token-pack small{color:#8a7e94;font-size:12px}
.token-pack button,.token-shop-plan button,.token-shop-buy{text-decoration:none;border:0;border-radius:9px;background:#302637;color:#fff;padding:9px 14px;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}
.token-pack button:disabled,.token-shop-plan button:disabled{background:#e7e1ec;color:#8a7e94;cursor:not-allowed}
.token-shop-note{font-size:12px;color:#8a7e94;line-height:1.5;margin:0}
.token-shop-plan{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px dashed #d9cfe3;border-radius:12px;padding:12px 14px;font-size:13px;color:#5d5167}
.token-shop-plan strong{color:#392b4d}

/* Account deletion in the account dialog. */
.account-danger{margin-top:22px;padding-top:16px;border-top:1px solid #f0e4e6}
.account-danger-open{border:0;background:none;color:#ac4e54;font:inherit;font-size:13px;font-weight:600;padding:6px 0;cursor:pointer}
.account-danger-open:hover{text-decoration:underline}
.account-danger-form{display:flex;flex-direction:column;gap:10px;background:#fff6f6;border:1px solid #f1d9dc;border-radius:12px;padding:14px}
.account-danger-form p{margin:0;font-size:13px;color:#6b3b40;line-height:1.5}
.account-danger-form input{font:inherit;font-size:14px;padding:10px 12px;border:1px solid #e3c5c9;border-radius:9px;background:#fff}
.account-danger-form button{border:0;border-radius:9px;background:#b3383f;color:#fff;font:inherit;font-size:13px;font-weight:600;padding:10px 14px;cursor:pointer}
.account-danger-form button:disabled{opacity:.45;cursor:not-allowed}
.account-danger-error{color:#aa3743!important}
.account-danger-error:empty{display:none}
