.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:color-mix(in srgb,var(--theme-text-primary,#2f2025) 50%,transparent);display:flex;justify-content:center;align-items:center;z-index:10000;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.personal-settings-modal{background:var(--theme-bg-secondary,#fffdfb);border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:var(--theme-shadow-heavy,0 24px 70px color-mix(in srgb,var(--theme-text-primary,#2f2025) 24%,transparent))}.personal-settings-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--theme-border-color,#eadde1);background-color:var(--theme-header-bg,var(--theme-bg-secondary,#fffdfb))}.personal-settings-modal .modal-header h2{margin:0;font-size:18px;font-weight:600;color:var(--theme-text-primary,#2f2025)}.personal-settings-modal .close-btn{background:transparent;border:0;font-size:21px;color:var(--theme-text-secondary,#755f67);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:999px;transition:color .16s ease,background-color .16s ease,transform .16s ease}.personal-settings-modal .close-btn:hover{color:var(--theme-accent-color,#a93b5b);background:var(--theme-bg-tertiary,#f8eef1)}.personal-settings-modal .modal-body{padding:20px;max-height:calc(90vh - 160px);overflow-y:auto}.personal-settings-modal .form-group{margin-bottom:20px;position:relative}.personal-settings-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--theme-text-primary,#2f2025);font-size:14px}.personal-settings-modal .form-group input,.personal-settings-modal .form-group textarea{width:100%;padding:12px;border:1px solid var(--theme-border-color,#eadde1);color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-secondary,#fffdfb);caret-color:var(--theme-accent-color,#a93b5b);border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s;resize:vertical}.personal-settings-modal .form-group input:focus,.personal-settings-modal .form-group textarea:focus{outline:none;border-color:var(--theme-accent-color,#a93b5b);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent-color,#a93b5b) 14%,transparent)}.personal-settings-modal .char-count{position:absolute;bottom:-20px;right:0;font-size:12px;color:var(--theme-text-secondary,#755f67)}.personal-settings-modal .tip-box{background-color:var(--theme-bg-tertiary,#f8eef1);border:1px solid var(--theme-border-color,#eadde1);border-radius:8px;padding:15px;font-size:14px;color:var(--theme-text-secondary,#755f67);margin-top:10px}.personal-settings-modal .personal-settings-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px;padding:10px 12px max(10px,env(safe-area-inset-bottom,0px));border-top:1px solid var(--theme-border-color,#eadde1);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 4%,var(--theme-bg-secondary,#fffdfb));position:sticky;bottom:0;z-index:10}.personal-settings-modal .cancel-btn,.personal-settings-modal .save-btn{width:100%;min-width:0;min-height:44px;padding:0 15px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:700;cursor:pointer;transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease;text-align:center}.personal-settings-modal .cancel-btn{background:var(--theme-bg-secondary,#fffdfb);color:var(--theme-text-primary,#2f2025);border-color:var(--theme-border-strong,#d7bfc7)}.personal-settings-modal .cancel-btn:hover{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-tertiary,#f8eef1)}.personal-settings-modal .save-btn{background:var(--theme-accent-color,#a93b5b);color:var(--theme-accent-contrast,#fff);border-color:var(--theme-accent-color,#a93b5b)}.personal-settings-modal .save-btn:hover{background:var(--theme-accent-hover,#8f2f4b);border-color:var(--theme-accent-hover,#8f2f4b)}.personal-settings-modal .cancel-btn:active,.personal-settings-modal .save-btn:active{transform:scale(.98)}.avatar-upload-container{display:flex;flex-direction:column;align-items:center;gap:12px}.avatar-preview{width:100px;height:100px;border-radius:50%;border:2px dashed var(--theme-border-strong,#d7bfc7);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;background-color:var(--theme-bg-tertiary,#f8eef1)}.avatar-preview:hover{border-color:var(--theme-accent-color,#a93b5b);background-color:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 8%,var(--theme-bg-tertiary,#f8eef1));transform:scale(1.02)}.avatar-preview.uploading{pointer-events:none}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--theme-text-secondary,#755f67);font-size:12px}.avatar-placeholder span:first-child{font-size:24px}.upload-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:color-mix(in srgb,var(--theme-text-primary,#2f2025) 72%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--theme-accent-contrast,#fff);font-size:12px;gap:8px}.upload-spinner{width:20px;height:20px;border:2px solid color-mix(in srgb,var(--theme-accent-contrast,#fff) 30%,transparent);border-top-color:var(--theme-accent-contrast,#fff);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.avatar-tips{text-align:center;font-size:12px;color:var(--theme-text-secondary,#755f67);line-height:1.4}.avatar-tips p{margin:0}.mask-persona-toolbar{display:flex;justify-content:flex-end;margin:12px 0 8px}.mask-persona-toolbar-btn{min-height:34px;padding:0 14px;border-radius:999px;background:var(--theme-bg-tertiary,#f8eef1);color:var(--theme-accent-color,#a93b5b);border:1px solid var(--theme-border-color,#eadde1);cursor:pointer;font-size:12px;font-weight:700;box-shadow:none}.mask-persona-toolbar-btn:hover{background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 10%,var(--theme-bg-tertiary,#f8eef1))}.mask-persona-list{display:flex;flex-direction:column;gap:12px;max-height:250px;overflow-y:auto;padding:4px}.mask-persona-list::-webkit-scrollbar{width:6px}.mask-persona-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.mask-persona-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.mask-persona-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.mask-persona-item{border:1px solid var(--theme-border-color,#eadde1);border-radius:16px;padding:12px 112px 12px 12px;background:var(--theme-bg-secondary,#fffdfb);box-shadow:none;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease;position:relative;overflow:hidden;min-height:72px}.mask-persona-item:before{content:none}.mask-persona-item:hover{transform:none;box-shadow:none;border-color:var(--theme-border-strong,#d7bfc7);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 5%,var(--theme-bg-secondary,#fffdfb))}.mask-persona-item.active{border-color:var(--theme-accent-color,#a93b5b);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 9%,var(--theme-bg-secondary,#fffdfb));box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-accent-color,#a93b5b) 11%,transparent)}.mask-persona-item.active:before{opacity:0}.mask-persona-main{display:flex;gap:10px;align-items:center;margin-bottom:6px}.mask-persona-avatar{width:52px;height:50px;border-radius:12px;overflow:hidden;border:2px solid color-mix(in srgb,var(--theme-accent-color,#a93b5b) 18%,var(--theme-bg-secondary,#fffdfb));cursor:pointer;transition:all .2s ease;flex-shrink:0;position:relative}.mask-persona-avatar:after{content:none}.mask-persona-avatar:hover{border-color:var(--theme-accent-color,#a93b5b);transform:none}.mask-persona-info{flex:1;min-width:0}.mask-persona-title{display:flex;align-items:center;gap:10px;margin-bottom:6px}.mask-persona-name{font-weight:600;color:var(--theme-text-primary,#2f2025);font-size:15px;line-height:1.3;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mask-persona-badge{font-size:11px;padding:3px 8px;border-radius:999px;background:var(--theme-accent-color,#a93b5b);color:var(--theme-accent-contrast,#fff);font-weight:500;text-shadow:none;box-shadow:none}.mask-persona-bio{color:var(--theme-text-secondary,#755f67);font-size:12px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}.mask-persona-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;gap:5px;align-items:center;justify-content:flex-end;width:auto;flex-wrap:nowrap}.mask-persona-action{padding:0 10px;border-radius:999px;font-size:11px;font-weight:680;border:1px solid transparent;cursor:pointer;transition:color .15s ease,background-color .15s ease,border-color .15s ease,transform .15s ease;position:relative;overflow:visible;text-align:center;min-width:0}.mask-persona-action:before{content:none}.mask-persona-action:hover:before{left:100%}.mask-persona-action:active{transform:translateY(1px) scale(.98)}.mask-persona-action-primary{background:var(--theme-accent-color,#a93b5b);color:var(--theme-accent-contrast,#fff);box-shadow:none}.mask-persona-action-primary:hover{background:var(--theme-accent-hover,#8f2f4b);box-shadow:none}.mask-persona-action-secondary{background:var(--theme-bg-tertiary,#f8eef1);color:var(--theme-text-secondary,#755f67);border:1px solid var(--theme-border-color,#eadde1)}.mask-persona-action-secondary:hover{background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 8%,var(--theme-bg-tertiary,#f8eef1));border-color:var(--theme-border-strong,#d7bfc7);color:var(--theme-text-primary,#2f2025)}.mask-persona-action-danger{background:color-mix(in srgb,var(--theme-error-color,#cf445b) 10%,var(--theme-bg-secondary,#fffdfb));color:var(--theme-error-color,#cf445b);border:1px solid color-mix(in srgb,var(--theme-error-color,#cf445b) 32%,var(--theme-border-color,#eadde1))}.mask-persona-action-danger:hover{background:color-mix(in srgb,var(--theme-error-color,#cf445b) 16%,var(--theme-bg-secondary,#fffdfb));border-color:color-mix(in srgb,var(--theme-error-color,#cf445b) 56%,var(--theme-border-color,#eadde1));color:var(--theme-error-color,#cf445b);box-shadow:none}.mask-persona-action-icon{width:30px;height:30px;min-width:30px;min-height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1}.empty-list{text-align:center;padding:40px 20px;color:var(--theme-text-subtle,#a28b93);font-size:14px;background:var(--theme-bg-tertiary,#f8eef1);border-radius:12px;border:2px dashed var(--theme-border-color,#eadde1)}@media (max-width:480px){.personal-settings-modal{width:95%;max-width:none}.personal-settings-modal .modal-body,.personal-settings-modal .modal-header{padding:15px}.personal-settings-modal .personal-settings-footer{padding:9px 12px max(10px,env(safe-area-inset-bottom,0px))}.avatar-preview{width:80px;height:80px}.avatar-placeholder span:first-child{font-size:20px}.avatar-placeholder{font-size:11px}}.form-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.expand-editor-btn{background:var(--theme-bg-tertiary,#f0f0f0);border:1px solid var(--theme-border-color,#e0e0e0);min-height:32px;border-radius:999px;padding:0 11px;color:var(--theme-text-secondary,#666);cursor:pointer;display:flex;align-items:center;gap:6px;font-size:11px;font-weight:680;transition:color .16s ease,background-color .16s ease,border-color .16s ease,transform .16s ease;white-space:nowrap}.expand-editor-btn:hover{background:var(--theme-bg-secondary,#e8e8e8);color:var(--theme-text-primary,#1f1f1f);border-color:var(--theme-accent-color,#007bff)}.expand-editor-btn:active{transform:scale(.98)}.expand-editor-btn svg{flex-shrink:0}@media (max-width:480px){.expand-editor-btn{min-height:32px;padding:0 10px;font-size:11px;gap:4px}.expand-editor-btn svg{width:14px;height:14px}}.personal-settings-overlay{background:color-mix(in srgb,var(--theme-text-primary,#2f2025) 54%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.personal-settings-overlay .personal-settings-modal{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-secondary,#fffdfb);border:1px solid var(--theme-border-color,#eadde1);box-shadow:var(--theme-shadow-heavy,0 24px 70px rgba(58,31,42,.24))}.personal-settings-overlay .personal-settings-modal .modal-header{background:var(--theme-header-bg,var(--theme-bg-secondary,#fffdfb));border-bottom-color:var(--theme-border-color,#eadde1)}.personal-settings-overlay .personal-settings-modal .modal-header h2{color:var(--theme-text-primary,#2f2025)}.personal-settings-overlay .personal-settings-modal .close-btn{color:var(--theme-text-secondary,#755f67);background:var(--theme-bg-tertiary,#f8eef1)}.personal-settings-overlay .personal-settings-modal .close-btn:hover{color:var(--theme-accent-color,#a93b5b);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 14%,var(--theme-bg-tertiary,#f8eef1))}.personal-settings-overlay .personal-settings-modal .modal-body{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-primary,#fff9f5);scrollbar-color:var(--theme-border-strong,#d7bfc7) var(--theme-bg-tertiary,#f8eef1)}.personal-settings-overlay .personal-settings-modal .form-group label{color:var(--theme-text-primary,#2f2025)}.personal-settings-overlay .personal-settings-modal .form-group input,.personal-settings-overlay .personal-settings-modal .form-group textarea{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-secondary,#fffdfb);border-color:var(--theme-border-color,#eadde1);caret-color:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .personal-settings-modal .form-group input::placeholder,.personal-settings-overlay .personal-settings-modal .form-group textarea::placeholder{color:var(--theme-text-subtle,#a28b93)}.personal-settings-overlay .personal-settings-modal .form-group input:focus,.personal-settings-overlay .personal-settings-modal .form-group textarea:focus{border-color:var(--theme-accent-color,#a93b5b);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent-color,#a93b5b) 16%,transparent)}.personal-settings-overlay .avatar-placeholder,.personal-settings-overlay .avatar-tips,.personal-settings-overlay .personal-settings-modal .char-count{color:var(--theme-text-subtle,#a28b93)}.personal-settings-overlay .personal-settings-modal .tip-box{color:var(--theme-text-secondary,#755f67);background:var(--theme-bg-tertiary,#f8eef1);border-color:var(--theme-border-color,#eadde1)}.personal-settings-overlay .avatar-preview{background:var(--theme-bg-tertiary,#f8eef1);border-color:var(--theme-border-strong,#d7bfc7)}.personal-settings-overlay .avatar-preview:hover{background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 10%,var(--theme-bg-secondary,#fffdfb));border-color:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .mask-persona-toolbar-btn{color:var(--theme-accent-color,#a93b5b);background:var(--theme-bg-tertiary,#f8eef1);border-color:var(--theme-border-color,#eadde1);box-shadow:none}.personal-settings-overlay .mask-persona-toolbar-btn:hover{background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 10%,var(--theme-bg-tertiary,#f8eef1))}.personal-settings-overlay .mask-persona-list{scrollbar-color:var(--theme-border-strong,#d7bfc7) var(--theme-bg-tertiary,#f8eef1)}.personal-settings-overlay .mask-persona-list::-webkit-scrollbar-track{background:var(--theme-bg-tertiary,#f8eef1)}.personal-settings-overlay .mask-persona-list::-webkit-scrollbar-thumb{background:var(--theme-border-strong,#d7bfc7)}.personal-settings-overlay .mask-persona-item{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-secondary,#fffdfb);border-color:var(--theme-border-color,#eadde1);box-shadow:var(--theme-shadow-light,0 8px 20px rgba(58,31,42,.08))}.personal-settings-overlay .mask-persona-item:hover{border-color:var(--theme-border-strong,#d7bfc7);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 5%,var(--theme-bg-secondary,#fffdfb))}.personal-settings-overlay .mask-persona-item.active,.personal-settings-overlay .mask-persona-item.selected{border-color:var(--theme-accent-color,#a93b5b);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 10%,var(--theme-bg-secondary,#fffdfb));box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent-color,#a93b5b) 13%,transparent)}.personal-settings-overlay .mask-persona-item.active:before,.personal-settings-overlay .mask-persona-item.selected:before{background:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .mask-persona-avatar{color:var(--theme-accent-contrast,#fff);background:var(--theme-accent-color,#a93b5b);border-color:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 30%,var(--theme-bg-secondary,#fffdfb))}.personal-settings-overlay .mask-persona-name{color:var(--theme-text-primary,#2f2025)}.personal-settings-overlay .mask-persona-bio{color:var(--theme-text-secondary,#755f67)}.personal-settings-overlay .mask-persona-action-primary{color:var(--theme-accent-contrast,#fff);background:var(--theme-accent-color,#a93b5b);border-color:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .mask-persona-action-primary:hover{background:var(--theme-accent-hover,#8f2f4b)}.personal-settings-overlay .mask-persona-action-secondary{color:var(--theme-text-secondary,#755f67);background:var(--theme-bg-tertiary,#f8eef1);border-color:var(--theme-border-color,#eadde1)}.personal-settings-overlay .mask-persona-action-secondary:hover{color:var(--theme-accent-color,#a93b5b);border-color:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .mask-persona-action-danger{color:var(--theme-error-color,#cf445b);background:color-mix(in srgb,var(--theme-error-color,#cf445b) 10%,var(--theme-bg-secondary,#fffdfb));border-color:color-mix(in srgb,var(--theme-error-color,#cf445b) 32%,var(--theme-border-color,#eadde1))}.personal-settings-overlay .empty-list,.personal-settings-overlay .expand-editor-btn{color:var(--theme-text-secondary,#755f67);background:var(--theme-bg-tertiary,#f8eef1);border-color:var(--theme-border-color,#eadde1)}.personal-settings-overlay .expand-editor-btn:hover{color:var(--theme-accent-color,#a93b5b);border-color:var(--theme-accent-color,#a93b5b)}.personal-settings-overlay .personal-settings-modal .personal-settings-footer{grid-template-columns:repeat(2,minmax(0,1fr));background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 4%,var(--theme-nav-bg,var(--theme-bg-secondary,#fffdfb)));border-top-color:var(--theme-border-color,#eadde1)}.personal-settings-overlay .personal-settings-modal .cancel-btn{color:var(--theme-text-primary,#2f2025);background:var(--theme-bg-secondary,#fffdfb);border-color:var(--theme-border-strong,#d7bfc7)}.personal-settings-overlay .personal-settings-modal .cancel-btn:hover{color:var(--theme-text-primary,#2f2025);background:color-mix(in srgb,var(--theme-accent-color,#a93b5b) 9%,var(--theme-bg-tertiary,#f8eef1))}.personal-settings-overlay .personal-settings-modal .save-btn{color:var(--theme-accent-contrast,#fff);background:var(--theme-accent-color,#a93b5b);box-shadow:none}@media (max-width:767px){.personal-settings-overlay .personal-settings-modal .personal-settings-footer>button{min-height:44px;border-radius:999px;font-size:13px}}.personal-settings-overlay .personal-settings-modal .save-btn:hover{background:var(--theme-accent-hover,#8f2f4b)}.trimupload-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.trimupload-modal{background:#fff;border-radius:12px;width:420px;max-width:92vw;box-shadow:0 10px 30px rgba(0,0,0,.2);overflow:hidden}.trimupload-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.trimupload-close{background:transparent;border:none;font-size:20px;cursor:pointer}.trimupload-body{padding:16px}.trimupload-crop-area{position:relative;margin:0 auto;background:#111;border-radius:8px;overflow:hidden;touch-action:none}.trimupload-image{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);will-change:transform;user-select:none;pointer-events:none}.trimupload-square-mask:before{content:"";position:absolute;inset:0;box-shadow:0 0 0 9999px rgba(0,0,0,.5);pointer-events:none}.trimupload-square-mask{position:absolute;top:1px;left:1px;right:1px;bottom:1px;border:1px solid rgba(255,255,255,.35)}.trimupload-circle-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.trimupload-circle{width:60%;height:60%;border-radius:50%;border:1px dashed rgba(255,255,255,.45)}.trimupload-tips{margin-top:10px;color:#666;font-size:12px;text-align:center}.trimupload-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid rgba(0,0,0,.06)}.trimupload-btn{padding:8px 14px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer}.trimupload-btn.primary{background:#1677ff;border-color:#1677ff;color:#fff}