.live2d-stage{position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none;contain:layout paint size}.live2d-stage canvas{width:100%;height:100%;display:block;pointer-events:auto;touch-action:manipulation;transform:translate(var(--live2d-offset-x,0),calc(var(--live2d-offset-y, 0) + var(--live2d-ground-shift, 0%))) scale(var(--live2d-scale,1));transform-origin:50% 100%}@media (max-width:767px){.cinematic-chat-interface .live2d-stage canvas{transform-origin:50% 50%;transform:translate(var(--live2d-offset-x,0),calc(var(--live2d-offset-y, 0) + var(--live2d-ground-shift, 0%))) scale(calc(var(--live2d-scale, 1) * 1.2))}}@media (max-width:380px){.cinematic-chat-interface .live2d-stage canvas{transform:translate(var(--live2d-offset-x,0),calc(var(--live2d-offset-y, 0) + var(--live2d-ground-shift, 0%))) scale(calc(var(--live2d-scale, 1) * 1.12))}}.live2d-stage.is-editing{cursor:grab;touch-action:none}.live2d-stage.is-editing:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.live2d-stage canvas{transition:none}}.live2d-performance-backdrop{position:fixed;inset:0;z-index:2200;background:rgba(25,18,21,.12);display:flex;justify-content:flex-end}.live2d-performance-drawer{width:min(370px,calc(100vw - 28px));height:100%;background:color-mix(in srgb,var(--surface-color,#fffaf7) 96%,transparent);border-left:1px solid rgba(118,74,88,.16);box-shadow:-20px 0 54px rgba(43,28,34,.16);display:flex;flex-direction:column;animation:live2d-drawer-in .18s ease-out}@keyframes live2d-drawer-in{0%{transform:translateX(24px);opacity:0}}.live2d-performance-header{min-height:82px;padding:max(20px,env(safe-area-inset-top)) 20px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(118,74,88,.12)}.live2d-performance-header span{display:flex;align-items:center;gap:6px;color:var(--primary-color,#a8395d);font-size:12px;font-weight:750;letter-spacing:.08em}.live2d-performance-header h2{margin:5px 0 0;font-size:20px;color:var(--text-color,#261d20)}.live2d-performance-header>button{width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--text-secondary,#705f65);display:grid;place-items:center}.live2d-performance-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:10px 14px;gap:6px}.live2d-performance-tabs button{min-height:44px;border:0;border-radius:12px;background:transparent;color:var(--text-secondary,#75656b);display:flex;align-items:center;justify-content:center;gap:7px;font-weight:680}.live2d-performance-tabs button.is-active{color:var(--primary-color,#a8395d);background:color-mix(in srgb,var(--primary-color,#a8395d) 11%,transparent)}.live2d-performance-body{overflow-y:auto;overscroll-behavior:contain;padding:8px 18px max(24px,env(safe-area-inset-bottom))}.live2d-performance-body section+section{margin-top:24px}.live2d-performance-section-title{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;color:var(--text-color,#33272b)}.live2d-performance-section-title>span{font-size:13px;font-weight:760}.live2d-performance-section-title button,.live2d-performance-section-title small{border:0;background:transparent;color:var(--text-secondary,#817077);font-size:11px}.live2d-performance-section-title button{min-height:36px;padding:0 4px;color:var(--primary-color,#a8395d)}.live2d-performance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.live2d-performance-grid button{min-width:0;min-height:38px;border:1px solid rgba(118,74,88,.1);border-radius:10px;background:rgba(255,255,255,.38);color:var(--text-color,#3c2e33);display:flex;align-items:center;gap:6px;padding:5px 9px;text-align:left;font-size:11px;font-weight:600;line-height:1.2}.live2d-performance-grid button span{color:var(--primary-color,#a8395d);font-size:9px;opacity:.72}.live2d-performance-grid button.is-active{border-color:color-mix(in srgb,var(--primary-color,#a8395d) 58%,transparent);background:color-mix(in srgb,var(--primary-color,#a8395d) 7%,white)}.live2d-performance-grid button:disabled{opacity:.45}.live2d-performance-hint,.live2d-performance-message{margin:0 0 14px;padding:11px 13px;border-radius:12px;background:rgba(107,89,96,.08);color:var(--text-secondary,#74636a);font-size:12px;line-height:1.5}.live2d-performance-message{background:rgba(176,55,86,.09);color:#943450}.live2d-performance-hint--accent{display:flex;gap:8px;align-items:center;color:var(--primary-color,#a8395d)}.live2d-outfit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.live2d-outfit-grid>button{border:1px solid rgba(118,74,88,.14);border-radius:16px;background:rgba(255,255,255,.58);padding:8px;color:var(--text-color,#33272b)}.live2d-outfit-grid>button.is-active{border-color:var(--primary-color,#a8395d);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary-color,#a8395d) 12%,transparent)}.live2d-outfit-thumb{position:relative;display:block;height:128px;border-radius:11px;overflow:hidden;background:rgba(112,94,100,.08);margin-bottom:8px}.live2d-outfit-thumb img{object-fit:contain}.live2d-display-controls{display:grid;gap:16px}.live2d-display-controls label>span{display:flex;justify-content:space-between;color:var(--text-color,#3a2d31);font-size:13px;margin-bottom:8px}.live2d-display-controls input[type=range]{width:100%;accent-color:var(--primary-color,#a8395d)}.live2d-display-toggles{display:grid;gap:8px}.live2d-display-toggles label{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(118,74,88,.12);border-radius:14px}.live2d-display-toggles label span{display:grid;gap:3px}.live2d-display-toggles small{color:var(--text-secondary,#817077);font-size:11px}.live2d-display-toggles input{width:20px;height:20px;accent-color:var(--primary-color,#a8395d)}.live2d-display-reset{width:100%;min-height:46px;margin-top:18px;border:0;border-radius:13px;color:var(--primary-color,#a8395d);background:color-mix(in srgb,var(--primary-color,#a8395d) 9%,transparent);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:680}@media (max-width:680px){.live2d-performance-backdrop{align-items:flex-end;padding:0;background:transparent;pointer-events:none}.live2d-performance-drawer{width:100%;max-width:none;height:auto;max-height:min(31dvh,258px);pointer-events:auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--primary-color,#a8395d) 18%,rgba(118,74,88,.18));border-bottom:0;border-radius:20px 20px 0 0;background:color-mix(in srgb,var(--surface-color,#fffaf7) 90%,transparent);box-shadow:0 14px 42px rgba(43,28,34,.2);-webkit-backdrop-filter:blur(18px) saturate(120%);backdrop-filter:blur(18px) saturate(120%);animation-name:live2d-sheet-in}.live2d-performance-drawer[data-tab=display],.live2d-performance-drawer[data-tab=outfits]{max-height:min(45dvh,390px)}@keyframes live2d-sheet-in{0%{transform:translateY(14px) scale(.985);opacity:0}}.live2d-performance-header{min-height:46px;padding:5px 8px 4px 12px}.live2d-performance-header>div{display:flex;align-items:center;min-width:0;gap:7px}.live2d-performance-header>div>span{flex:0 0 auto}.live2d-performance-header h2{min-width:0;margin:0;overflow:hidden;color:var(--text-secondary,#705f65);font-size:13px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.live2d-performance-header h2:before{content:"· "}.live2d-performance-header>button{width:40px;height:40px;flex:0 0 40px}.live2d-performance-tabs{display:flex;padding:3px 8px 5px;gap:4px;overflow-x:auto;scrollbar-width:none}.live2d-performance-tabs::-webkit-scrollbar{display:none}.live2d-performance-tabs button{min-width:92px;min-height:40px;flex:1 0 auto;border-radius:11px}.live2d-performance-body{min-height:0;max-height:min(19dvh,152px);padding:3px 10px 11px;overflow-y:auto}.live2d-performance-drawer[data-tab=display] .live2d-performance-body,.live2d-performance-drawer[data-tab=outfits] .live2d-performance-body{max-height:min(33dvh,282px)}.live2d-performance-body section+section{margin-top:10px}.live2d-performance-section-title{min-height:24px;margin-bottom:4px}.live2d-performance-section-title small{display:none}.live2d-performance-grid{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:1px 1px 4px}.live2d-performance-grid::-webkit-scrollbar{display:none}.live2d-performance-grid button{min-width:88px;min-height:34px;flex:0 0 auto;border-radius:9px;padding:4px 9px;scroll-snap-align:start;white-space:nowrap}.live2d-performance-hint,.live2d-performance-message{margin-bottom:7px;padding:8px 10px}.live2d-outfit-grid{display:flex;overflow-x:auto;scrollbar-width:none}.live2d-outfit-grid::-webkit-scrollbar{display:none}.live2d-outfit-grid>button{min-width:118px;flex:0 0 118px}.live2d-outfit-thumb{height:88px}.live2d-display-controls{gap:11px}.live2d-display-toggles label{min-height:54px}.live2d-display-reset{margin-top:10px}}@media (prefers-reduced-motion:reduce){.live2d-performance-drawer{animation:none}}.create-group-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(4px);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.create-group-modal-overlay .modal-content{background:white;border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.3);animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.create-group-modal-overlay .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e8eaed;background:linear-gradient(135deg,#f8f9fa,#ffffff)}.create-group-modal-overlay .modal-header h3{margin:0;font-size:20px;font-weight:600;color:#1f1f1f}.create-group-modal-overlay .close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.create-group-modal-overlay .close-btn:hover{background-color:#f5f5f5;color:#333}.create-group-modal-overlay .modal-body{padding:24px;max-height:calc(90vh - 140px);overflow-y:auto}.step-indicator{justify-content:center;margin-bottom:32px}.step,.step-indicator{display:flex;align-items:center;gap:8px}.step{flex-direction:column}.step,.step-number{transition:all .3s ease}.step-number{width:32px;height:32px;border-radius:50%;background-color:#e8eaed;color:#666;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.step.active .step-number{background-color:#007AFF;color:white;box-shadow:0 2px 8px rgba(0,122,255,.3)}.step-label{font-size:12px;color:#666;font-weight:500;text-align:center}.step.active .step-label{color:#007AFF;font-weight:600}.step-line{width:40px;height:2px;background-color:#e8eaed;margin:0 4px}.step-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-title{margin-bottom:24px;text-align:center}.step-title h4{margin:0 0 8px;font-size:18px;font-weight:600;color:#1f1f1f}.step-title p{margin:0;color:#666;font-size:14px}.create-group-modal-overlay .form-group{margin-bottom:20px}.create-group-modal-overlay .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.create-group-modal-overlay .form-group .tag-description{margin-bottom:6px;font-size:12px;color:#666;font-style:italic}.create-group-modal-overlay .form-input,.create-group-modal-overlay .form-textarea{width:100%;padding:12px 16px;border:2px solid #e8eaed;border-radius:12px;font-size:16px;box-sizing:border-box;transition:all .2s ease;background-color:#ffffff}.create-group-modal-overlay .form-input:focus,.create-group-modal-overlay .form-textarea:focus{outline:none;border-color:#007AFF;box-shadow:0 0 0 3px rgba(0,122,255,.1)}.create-group-modal-overlay .form-textarea{resize:vertical;min-height:120px;font-family:inherit}.create-group-modal-overlay .char-count{text-align:right;font-size:12px;color:#666;margin-top:4px}.create-group-modal-overlay .avatar-upload{display:flex;flex-direction:column;align-items:center;gap:16px}.create-group-modal-overlay .avatar-preview{position:relative;border-radius:50%;overflow:hidden;cursor:pointer;transition:all .2s ease}.create-group-modal-overlay .avatar-preview:hover{transform:scale(1.05)}.create-group-modal-overlay .avatar-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.create-group-modal-overlay .avatar-preview:hover .avatar-overlay{opacity:1}.create-group-modal-overlay .avatar-overlay span{font-size:24px;color:white}.create-group-modal-overlay .upload-btn{padding:10px 20px;background-color:#f8f9fa;border:2px solid #e8eaed;border-radius:8px;color:#333;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.create-group-modal-overlay .upload-btn:hover{background-color:#007AFF;border-color:#007AFF;color:white}.search-box{position:relative;margin-bottom:20px}.search-input{width:100%;padding:12px 16px 12px 44px;border:2px solid #e8eaed;border-radius:12px;font-size:16px;box-sizing:border-box;transition:all .2s ease}.search-input:focus{outline:none;border-color:#007AFF;box-shadow:0 0 0 3px rgba(0,122,255,.1)}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:16px;color:#666}.contacts-container{border:2px solid #e8eaed;border-radius:12px;overflow:hidden;background-color:#ffffff}.contacts-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#f8f9fa;border-bottom:1px solid #e8eaed;font-size:14px;font-weight:500}.selected-count{color:#007AFF;font-weight:600}.contacts-list{max-height:300px;overflow-y:auto}.contact-item{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid #f1f3f4;cursor:pointer;transition:all .2s ease;background-color:#ffffff}.contact-item:last-child{border-bottom:none}.contact-item:hover{background-color:#f8f9fa}.contact-item.selected{background-color:#e3f2fd;border-left:4px solid #007aff}.contact-checkbox{margin-right:12px}.contact-checkbox input[type=checkbox]{width:20px;height:20px;accent-color:#007AFF;cursor:pointer}.contact-avatar{border-radius:50%;margin-right:12px;object-fit:cover}.contact-info{flex:1}.contact-name{font-weight:500;color:#333;margin-bottom:4px;font-size:14px}.contact-persona{font-size:12px;color:#666;line-height:1.4}.no-contacts{text-align:center;padding:40px 20px;color:#666}.no-contacts-icon{font-size:48px;margin-bottom:16px;opacity:.5}.no-contacts p{margin:8px 0;font-size:14px}.rules-preview{margin-top:20px;border:2px solid #e8eaed;border-radius:12px;overflow:hidden}.rules-preview h5{margin:0;padding:12px 16px;background-color:#f8f9fa;border-bottom:1px solid #e8eaed;font-size:14px;font-weight:500;color:#333}.rules-content{padding:16px;min-height:80px;background-color:#ffffff}.rules-text{white-space:pre-wrap;line-height:1.6;color:#333;font-size:14px}.rules-placeholder{color:#999;font-style:italic;text-align:center;padding:20px}.create-group-modal-overlay .step-actions{display:flex;gap:12px;margin-top:32px;justify-content:space-between}.create-group-modal-overlay .create-btn,.create-group-modal-overlay .next-btn,.create-group-modal-overlay .prev-btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px}.create-group-modal-overlay .prev-btn{background-color:#f5f5f5;color:#333}.create-group-modal-overlay .prev-btn:hover{background-color:#e0e0e0}.create-group-modal-overlay .create-btn,.create-group-modal-overlay .next-btn{background-color:#007AFF;color:white}.create-group-modal-overlay .create-btn:hover,.create-group-modal-overlay .next-btn:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,122,255,.3)}.create-group-modal-overlay .create-btn:disabled,.create-group-modal-overlay .next-btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width:600px){.create-group-modal-overlay{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.create-group-modal-overlay .modal-content{width:95%;margin:10px;max-height:95vh}.create-group-modal-overlay .modal-body{padding:20px}.step-indicator{margin-bottom:24px}.step-label{font-size:11px}.step-line{width:30px}.contacts-list{max-height:250px}.create-group-modal-overlay .step-actions{flex-direction:column}.create-group-modal-overlay .create-btn,.create-group-modal-overlay .next-btn,.create-group-modal-overlay .prev-btn{width:100%}}@media (max-width:480px){.create-group-modal-overlay{padding:0;align-items:stretch}.create-group-modal-overlay .modal-content{width:100%;height:100vh;max-height:100vh;border-radius:0;box-shadow:none;margin:0;height:100dvh;max-height:100dvh}.create-group-modal-overlay .modal-header{padding:max(16px,env(safe-area-inset-top)) 20px 16px}.create-group-modal-overlay .modal-header h3{font-size:18px}.create-group-modal-overlay .modal-body{padding:16px 16px calc(16px + env(safe-area-inset-bottom));max-height:calc(100dvh - 140px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.step-title h4{font-size:16px}.form-input,.form-textarea,.search-input{padding:10px 14px;font-size:14px}.contact-item{padding:10px 12px}.contact-avatar{width:40px;height:40px}}@supports (height:100dvh){@media (max-width:480px){.create-group-modal-overlay .modal-content{height:100dvh;max-height:100dvh}.create-group-modal-overlay .modal-body{max-height:calc(100dvh - 140px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}}