:root{--primary-color: #002366;--secondary-color: #2d2d2d;--background-color: #f5f5f7;--card-bg: #ffffff;--text-color: #333333;--border-color: #e0e0e0;--link-color: #0066cc;--active-bg: #f3e5f5;--body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}body{margin:0;font-family:var(--body-font);background-color:var(--background-color);color:var(--text-color)}.app-container{max-width:1400px;margin:0 auto;padding:16px}header{border-bottom:2px solid var(--primary-color);margin-bottom:20px;padding-bottom:8px;display:flex;justify-content:space-between;align-items:center}.header-logo-group{display:flex;align-items:center;gap:12px}.header-logo-group img{height:64px;width:auto}h1{color:var(--primary-color);margin:0;font-size:2.2rem;font-weight:800}.header-actions{display:flex;gap:10px}.search-section{background:var(--card-bg);padding:16px;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-bottom:20px}.search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;align-items:flex-end}.search-field{display:flex;flex-direction:column}.search-field label{font-size:.7rem;font-weight:700;margin-bottom:4px;color:#888;text-transform:uppercase}.search-field input{padding:8px 30px 8px 8px;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;width:100%;box-sizing:border-box}.input-wrapper{position:relative;display:flex;align-items:center}.clear-input{position:absolute;right:8px;background:none;border:none;color:#ccc;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.clickable-artist-name{color:var(--link-color);font-weight:600;cursor:pointer;text-decoration:none}.clickable-artist-name:hover{text-decoration:underline}.match-name{font-weight:800;color:var(--primary-color)}.main-content-split{display:flex;gap:24px;height:calc(100vh - 200px)}.list-panel{flex:6;overflow-y:auto;padding-right:10px}.detail-panel{flex:4;background:var(--card-bg);border-radius:8px;box-shadow:0 2px 12px #00000014;overflow-y:auto;padding:24px;border-top:4px solid var(--primary-color);position:relative}.no-selection{display:flex;justify-content:center;align-items:center;height:100%;color:#aaa;font-style:italic;text-align:center;padding:40px}.grouped-card{background:var(--card-bg);padding:16px;border-radius:8px;margin-bottom:12px;box-shadow:0 1px 4px #0000000d;border-top:3px solid #eee}.group-title{font-weight:800;font-size:1.2rem;margin-bottom:4px}.group-venue{font-size:.9rem;color:#666;margin-bottom:12px}.cond-staff{font-size:.8rem;color:#777;margin-bottom:12px;line-height:1.4}.date-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:8px}.date-chip{background:white;border:1px solid var(--border-color);padding:6px 4px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;position:relative;min-height:44px}.date-chip:hover{border-color:var(--primary-color);background:var(--active-bg);transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.date-chip.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #0023664d}.chip-content{display:flex;flex-direction:column;align-items:center}.chip-d{font-weight:800;font-size:.82rem;line-height:1.2}.chip-t{font-size:.65rem;opacity:.8;margin-top:0}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:12px}.detail-date{font-size:1.2rem;font-weight:800;color:var(--secondary-color)}.detail-venue{font-size:.9rem;margin-top:4px}.detail-title{font-size:1.6rem;margin:0;font-weight:800;line-height:1.2}.detail-composer{font-size:1.1rem;color:#666;font-style:italic;margin-bottom:16px}.detail-staff-box{background:#fdfdfd;padding:12px;border:1px solid #f0f0f0;border-radius:6px;margin-bottom:20px}.staff-row{margin-bottom:8px;display:flex;font-size:.95rem}.staff-label{width:150px;flex-shrink:0;font-weight:700;color:#555}.detail-cast-grid{display:grid;grid-template-columns:1fr;gap:4px}.detail-cast-row{display:flex;align-items:baseline;padding:8px 0;border-bottom:1px solid #fafafa;font-size:.95rem}.detail-cast-row .role{width:160px;flex-shrink:0;font-size:.85rem;color:#888;padding-right:12px}.detail-actions{display:flex;align-items:center;gap:12px}.genre-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.7rem;font-weight:800;text-transform:uppercase;color:#fff;margin-top:10px}.close-trigger{background:var(--secondary-color);color:#fff;font-weight:900;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.8rem}.delete-btn{background:white;color:#c41e3a;border:1px solid #c41e3a;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.8rem}@media (max-width: 900px){.main-content-split{display:block;height:auto}.list-panel{width:100%;max-height:none}.detail-panel{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9000;width:100%;height:100%;border-radius:0;display:none;background:white;padding:0}.detail-panel.mobile-visible{display:block}.detail-header{position:fixed;top:0;left:0;right:0;background:white;padding:16px 20px;border-bottom:2px solid var(--primary-color);z-index:9100;display:flex;justify-content:space-between;align-items:center}.detail-body{padding:100px 20px 40px;overflow-y:auto;height:100%;box-sizing:border-box}}.confirm-btn,.import-btn,.refresh-btn{border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:600;color:#fff}.confirm-btn,.import-btn{background:#28a745}.refresh-btn{background:#6c757d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background:white;padding:30px;border-radius:12px;width:100%;max-width:800px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;gap:15px}.modal-content h3{margin:0;color:var(--primary-color);font-size:1.4rem}.import-textarea{width:100%;height:400px;padding:15px;border:1px solid var(--border-color);border-radius:8px;font-family:monospace;font-size:.9rem;box-sizing:border-box;resize:vertical;background:#f9f9f9}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.modal-actions button{padding:10px 20px;border-radius:6px;font-weight:700;cursor:pointer}.import-status{padding:10px;border-radius:4px;background:#e8f5e9;color:#2e7d32;font-weight:600;text-align:center}.error-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;text-align:center}
