.viewer-layout{align-items:flex-start;gap:2rem;max-width:1400px;min-height:80vh;margin:0 auto;padding:2rem;font-family:Inter,sans-serif;display:flex}.viewer-sidebar{flex-direction:column;flex-shrink:0;gap:1.5rem;width:320px;display:flex}.sidebar-section-header{background-color:#fff;border:1px solid #e5e7eb;border-bottom:none;border-radius:8px 8px 0 0;padding:1rem}.section-title{color:#111827;text-transform:uppercase;margin:0;font-size:1.25rem;font-weight:800}.section-subtitle{color:#6b7280;margin-top:.25rem;font-size:.85rem}.local-list,.web-list{background-color:#fff;border:1px solid #e5e7eb;border-radius:0 0 8px 8px;margin-top:-1.5rem;overflow:hidden}.char-list{margin:0;padding:0;list-style:none}.list-item{border-bottom:1px solid #f3f4f6;align-items:stretch;transition:background-color .2s;display:flex}.list-item:hover{background-color:#f9fafb}.list-item.active{background-color:#eff6ff;border-left:4px solid #3b82f6}.list-item-clickable{cursor:pointer;flex:1;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.char-name,.web-char-name{color:#111827;font-size:1rem;font-weight:700}.secondary-name{color:#6b7280;font-size:.85rem;font-weight:400}.char-details,.web-char-details{color:#6b7280;margin-top:.15rem;font-size:.8rem}.char-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:800;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000001a}.char-avatar.local{background:linear-gradient(135deg,#3b82f6,#6366f1)}.char-avatar.web{background:linear-gradient(135deg,#10b981,#059669)}.char-avatar img{object-fit:cover;width:100%;height:100%}.delete-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0 1rem;transition:all .2s}.delete-btn:hover{color:#ef4444;background-color:#fee2e2}.delete-btn.confirm-mode{color:#fff;background-color:#ef4444}.upload-section{text-align:center;background-color:#eff6ff;border:1px dashed #3b82f6;border-radius:8px;padding:1rem}.upload-btn{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.6rem;font-weight:700;display:flex}.web-section-toggle{cursor:pointer;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.web-section-title{color:#166534;text-transform:uppercase;margin:0;font-size:1rem;font-weight:800}.web-list-item{cursor:pointer;border-bottom:1px solid #f0fdf4;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.web-list-item.active{background-color:#dcfce7;border-left:4px solid #166534}.viewer-content{flex:1;min-width:0}.content-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:2.5rem;box-shadow:0 10px 15px -3px #0000001a}.content-header{justify-content:space-between;align-items:flex-start;margin-bottom:2rem;display:flex}.content-title{color:#111827;text-transform:uppercase;margin:0;font-size:2.25rem;font-weight:900}.content-subtitle{color:#6b7280;margin-top:.5rem;font-size:1rem;font-weight:300}.content-source-badge{color:#6b7280;font-size:.85rem}.character-summary{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2.5rem;padding:1.5rem}.summary-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.summary-title{color:#475569;text-transform:uppercase;margin:0;font-size:1rem;font-weight:800}.expand-summary-btn{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:700;display:flex}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;display:grid}.viewer-actions{flex-wrap:wrap;gap:1rem;display:flex}.viewer-button{color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:700;display:flex}.download-btn{background-color:#334155}.edit-wizard-btn{background-color:#f59e0b}.btn-primary{background-color:#059669}.btn-secondary{background-color:#0284c7}.version-badge{background-color:#e2e8f0;border-radius:4px;padding:2px 6px;font-family:monospace}.empty-viewer{text-align:center;color:#94a3b8;padding:5rem}.viewer-page[data-astro-cid-yrqlfkeu]{box-sizing:border-box;width:100%;max-width:1200px;min-height:80vh;margin:0 auto;padding:2rem 1rem}.header-content[data-astro-cid-yrqlfkeu]{text-align:center;margin-bottom:2rem}.page-title[data-astro-cid-yrqlfkeu]{color:var(--color-secondary);text-shadow:2px 2px 0px var(--color-primary);margin-bottom:1rem;font-size:3rem}.intro-text[data-astro-cid-yrqlfkeu]{color:var(--color-text);max-width:600px;margin:0 auto;font-size:1.2rem}.viewer-container[data-astro-cid-yrqlfkeu]{margin-bottom:3rem}.back-link[data-astro-cid-yrqlfkeu]{text-align:center;margin-top:2rem}.back-link[data-astro-cid-yrqlfkeu] a[data-astro-cid-yrqlfkeu]{color:var(--color-secondary);font-size:1.1rem;font-weight:700;text-decoration:none}.back-link[data-astro-cid-yrqlfkeu] a[data-astro-cid-yrqlfkeu]:hover{color:var(--color-primary);text-decoration:underline}
