.character-preview{background:#ffffff;border-radius:16px;max-width:500px;max-height:80vh;box-shadow:0 10px 40px rgba(0,0,0,.15);border:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden}.preview-header{text-align:center;padding:24px 24px 16px;border-bottom:1px solid #f3f4f6;flex-shrink:0}.preview-header h3{margin:0 0 4px;color:#111827;font-size:20px;font-weight:600}.preview-header p{margin:0;color:#6b7280;font-size:14px}.preview-scrollable{flex:1;overflow-y:auto;padding:24px;min-height:0}.info-card{background:#f9fafb;border-radius:12px;padding:16px;margin-bottom:16px;border:1px solid #e5e7eb}.info-card:last-of-type{margin-bottom:0}.info-card h5{margin:0 0 12px;color:#374151;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.avatar-section{display:flex;align-items:center;gap:12px}.avatar{border-radius:50%;border:2px solid #e5e7eb;object-fit:cover;flex-shrink:0}.name-section{flex:1;min-width:0}.name-section h4{margin:0 0 4px;color:#111827;font-size:18px;font-weight:600;line-height:1.2}.creator{color:#6b7280;font-size:13px;font-style:italic}.persona-content{background:#ffffff;border-radius:8px;padding:12px;border:1px solid #e5e7eb}.persona-content p{margin:0}.first-message-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;position:relative}.first-message-card:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;z-index:-1;opacity:.3}.first-message-card h5{color:#92400e;font-weight:700}.first-message-content{background:rgba(255,255,255,.8);border-radius:8px;padding:12px;border:1px solid rgba(245,158,11,.3)}.first-message-content p{margin:0 0 8px;color:#1f2937;font-style:italic;line-height:1.5}.first-message-note{padding-top:8px;border-top:1px solid rgba(245,158,11,.2)}.first-message-note small{color:#92400e;font-size:12px;font-weight:500}.persona-content{color:#374151;font-size:14px;line-height:1.6;white-space:pre-wrap;max-height:200px;overflow-y:auto}.persona-content .empty{color:#9ca3af;font-style:italic}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .label{color:#6b7280;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-item .value{color:#374151;font-size:14px;font-weight:500;word-break:break-word}.extended-info{border:none;background:none;padding:0}.extended-info summary{color:#3b82f6;font-size:14px;font-weight:500;cursor:pointer;padding:8px 0;user-select:none;transition:color .2s ease}.extended-info summary:hover{color:#2563eb}.extended-info summary::-webkit-details-marker{color:#3b82f6}.extended-content{margin-top:12px;display:flex;flex-direction:column;gap:16px}.extended-item{background:#ffffff;border-radius:8px;padding:12px;border:1px solid #e5e7eb}.extended-item h6{margin:0 0 8px;color:#374151;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.extended-item p{margin:0;color:#6b7280;font-size:14px;line-height:1.5;white-space:pre-wrap;max-height:150px;overflow-y:auto}.preview-actions{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px;border-top:1px solid #f3f4f6;flex-shrink:0;background:#ffffff}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px}.btn-import{background:#3b82f6;color:white}.btn-import:hover{background:#2563eb;transform:translateY(-1px)}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb;transform:translateY(-1px)}.extended-item p::-webkit-scrollbar,.persona-content::-webkit-scrollbar,.preview-scrollable::-webkit-scrollbar{width:6px}.extended-item p::-webkit-scrollbar-track,.persona-content::-webkit-scrollbar-track,.preview-scrollable::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.extended-item p::-webkit-scrollbar-thumb,.persona-content::-webkit-scrollbar-thumb,.preview-scrollable::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.extended-item p::-webkit-scrollbar-thumb:hover,.persona-content::-webkit-scrollbar-thumb:hover,.preview-scrollable::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:640px){.character-preview{margin:16px;max-width:none}.preview-header{padding:20px 20px 16px}.preview-scrollable{padding:20px}.preview-actions{padding:16px 20px 20px;flex-direction:column}.info-grid{grid-template-columns:1fr}.btn{width:100%}}.character-import-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:23000;padding:20px}.character-import-modal{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.modal-header h2{margin:0;color:#1f2937;font-size:18px;font-weight:600}.character-import-modal .close-btn{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.character-import-modal .close-btn:hover{background:#e5e7eb;color:#374151}.modal-body{flex:1;overflow-y:auto;padding:24px}.upload-step{text-align:center}.character-import-tos{display:flex;align-items:center;gap:8px;min-height:44px;margin:0 0 8px;padding:10px 12px;border:1px solid #dbe3ec;border-radius:10px;color:#4b5563;background:#f8fafc;font-size:13px;line-height:1.45;text-align:left}.character-import-tos:hover{border-color:#93c5fd;background:#f0f7ff}.character-import-tos:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.16)}.character-import-tos-check{min-width:0;flex:1;display:flex;align-items:flex-start;gap:10px;cursor:pointer}.character-import-tos-check input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:#2563eb;cursor:pointer}.character-import-tos-check span{min-width:0}.character-import-tos-link{flex:0 0 auto;min-height:28px;padding:3px 0;border:0;color:#2563eb;background:transparent;font-size:12px;font-weight:600;line-height:1.2;text-decoration:underline;text-underline-offset:2px;white-space:nowrap;cursor:pointer}.character-import-tos-link:hover{color:#1d4ed8}.character-import-tos-link:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;border-radius:4px}.character-import-tos-detail{margin:0 0 14px;padding:9px 12px;border:1px solid #dbe3ec;border-radius:10px;color:#64748b;background:#f8fafc;font-size:12px;line-height:1.55;text-align:left}.upload-area{border:2px dashed #d1d5db;border-radius:12px;padding:40px 20px;cursor:pointer;transition:all .3s ease;background:#f9fafb}.upload-area:hover{border-color:#3b82f6;background:#eff6ff}.upload-area.is-terms-pending{border-color:#e5e7eb;background:#f8fafc;cursor:not-allowed}.upload-area.is-terms-pending.drag-over,.upload-area.is-terms-pending:hover{border-color:#e5e7eb;background:#f8fafc;transform:none}.upload-area.drag-over{border-color:#3b82f6;background:#eff6ff;transform:scale(1.02)}.upload-icon{font-size:48px;margin-bottom:16px}.upload-area h3{margin:0 0 8px;color:#1f2937;font-size:18px;font-weight:600}.upload-area p{margin:0 0 4px;color:#6b7280;font-size:14px}.upload-tip{color:#3b82f6!important;font-weight:500;margin-top:8px!important}.upload-note{color:#059669!important;font-size:12px!important;font-style:italic;margin-top:4px!important}.error-message{margin-top:16px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px}.loading-step{text-align:center;padding:40px 20px}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-step p{margin:0;color:#6b7280;font-size:16px}.loading-subtitle{font-size:14px!important;color:#9ca3af!important;margin-top:8px!important}@media (max-width:640px){.character-import-modal-overlay{padding:10px}.character-import-modal{max-width:100vw;max-height:100vh;border-radius:8px}.modal-header{padding:16px 20px}.modal-body{padding:20px}.upload-area{padding:30px 16px}.upload-icon{font-size:36px}.upload-area h3{font-size:16px}.character-import-tos{margin-bottom:8px;padding:10px 12px;font-size:12px}.character-import-tos-link{font-size:11px}.character-import-tos-detail{margin-bottom:12px}}