.npc-modal,.share-modal{width:min(1000px,96vw)}
.npc-studio{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.3fr);gap:22px;margin-top:22px}
.npc-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start}
.npc-list button,.npc-personalities button{border:1px solid #e0d7c5;background:#faf7ed;border-radius:14px;color:#746d5d;cursor:pointer}
.npc-list button{min-width:0;padding:10px 5px;display:flex;flex-direction:column;align-items:center;gap:4px}
.npc-list button[aria-pressed=true],.npc-personalities button[aria-pressed=true]{border-color:#8ba27d;background:#eaf0e1;box-shadow:inset 0 0 0 1px #a6b799}
.npc-list button span{display:block;width:62px;height:62px}.npc-list img,.npc-portrait img,.guest-mini img,.staff-portrait img,.customer-profile img,.customer-reply img{width:100%;height:100%;object-fit:contain}
.npc-list button b{font-size:12px}.npc-list button small{font-size:8px;color:#9d8d75;line-height:1.4}
.npc-detail{border:1px solid #e5dac8;background:#fbf8ee;border-radius:22px;padding:20px;min-width:0}.npc-heading{display:flex;align-items:center;gap:16px}.npc-portrait{width:108px;height:108px;flex:none}.npc-heading h3{font-size:23px;margin:4px 0}.npc-heading small,.npc-heading p{font-size:11px;color:#988b74}.npc-detail h4{margin:23px 0 5px}.npc-personalities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.npc-personalities button{min-height:66px;text-align:left;padding:11px}.npc-personalities b,.npc-personalities small{display:block}.npc-personalities b{font-size:12px}.npc-personalities small{font-size:10px;color:#938871;margin-top:5px;line-height:1.5}.npc-detail .detail-actions{display:flex;flex-wrap:wrap;gap:7px}.npc-detail .button{font-size:11px;padding:10px}
.share-tabs,.share-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.share-tabs .button,.share-buttons .button{font-size:11px}.share-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:23px;align-items:start}.share-preview{min-width:0}.share-preview canvas{display:block;width:100%;height:auto;border-radius:18px;border:1px solid #e0d5c1;background:#eee9da}.share-preview p{font-size:10px;color:#90846f}.share-fields{display:flex;flex-direction:column;gap:6px}.share-fields label{font-size:11px;font-weight:600;color:#887c65;margin-top:5px}.share-fields input,.share-fields textarea,.share-fields select{width:100%;border:1px solid #dbd1c0;border-radius:10px;padding:10px;background:#fffdf6;color:#5e584d;font:inherit;font-size:12px}.share-fields input[type=file]{font-size:10px}.share-fields textarea{resize:vertical}.share-modal>.tiny{line-height:1.8}.share-top{font-weight:700;font-family:Arial,sans-serif}
@media(max-width:700px){.npc-studio,.share-layout{grid-template-columns:1fr;gap:15px}.npc-list{grid-template-columns:repeat(3,minmax(0,1fr));max-height:245px;overflow:auto}.npc-list button span{width:48px;height:48px}.npc-detail{padding:14px}.npc-portrait{width:80px;height:80px}.npc-heading h3{font-size:20px}.share-layout{gap:10px}.share-fields{display:grid;grid-template-columns:1fr;gap:4px}.share-tabs,.share-buttons{margin:13px 0}.share-buttons .button{flex:1;min-width:125px}}
@media(max-width:520px){.header nav button{font-size:9px;padding:8px 4px;gap:3px}.header nav{gap:2px}.npc-personalities button{padding:8px;min-height:60px}.share-buttons .button{font-size:10px;padding:8px}.share-modal>.tiny{font-size:10px}}
.cat img{width:100%;height:100%;object-fit:contain}
