body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.event-form{background:#fff;border-radius:12px;margin:2rem auto;max-width:600px;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.form-group input[type=date],.form-group input[type=datetime-local],.form-group input[type=text],.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.checkbox-group{align-items:center;display:flex;gap:.5rem}.checkbox-group input[type=checkbox]{height:18px;width:18px}button[type=submit]{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:background-color .2s;width:100%}button[type=submit]:hover{background:#357abd}.file-input-group{border:2px dashed #ddd;border-radius:6px;cursor:pointer;padding:1.5rem;text-align:center}.file-input-group:hover{border-color:#4a90e2}.form-header{margin-bottom:2rem;text-align:center}.form-header h2{color:#333;font-size:1.75rem;margin-bottom:.5rem}.form-header p{color:#666}.button-group{display:flex;gap:1rem;margin-top:2rem}.button-primary,.button-secondary{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .2s}.button-primary{background:#4a90e2;color:#fff}.button-primary:hover{background:#357abd}.button-secondary{background:#f5f5f5;border:1px solid #ddd;color:#333}.button-secondary:hover{background:#e5e5e5}.form-row .form-group{flex:1 1}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.location-search-group{display:flex;gap:.5rem}.location-search-group input{flex:1 1}.map-button{background:#4a90e2;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.75rem 1rem;transition:background-color .2s;white-space:nowrap}.map-button:hover{background:#357abd}.dashboard-container{max-width:1200px;padding:2rem}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{color:#333;font-size:2.2rem;margin-bottom:1.5rem}.action-buttons{display:flex;gap:1rem;margin-bottom:2rem}.search-filters{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.search-input{padding:.5rem;width:300px}.select-filter{min-width:150px;padding:.5rem}.events-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.event-card{border:1px solid #eee;border-radius:6px;margin-bottom:1rem;padding:1rem;transition:transform .2s}.event-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.modern-button{background-color:#4285f4;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;padding:12px 24px;transition:background-color .2s}.modern-button:hover{background-color:#3367d6}.existing-images{margin-bottom:16px}.image-preview-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));margin:10px 0}.image-preview-item{height:100px;overflow:hidden;position:relative;width:100px}.image-preview-item img{cursor:pointer;height:100%;object-fit:cover;width:100%}.delete-image-btn{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:16px;justify-content:center;padding:0;position:absolute;right:2px;top:2px;width:16px}.delete-image-btn:hover{background:#000000b3}.image-modal{z-index:1100}.modal-image{max-height:90vh;max-width:90vw;object-fit:contain}.event-form{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:800px;padding:20px}.form-group{margin-bottom:15px;width:100%}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;margin-top:5px;padding:8px;width:100%}@media screen and (max-width:768px){.event-form{max-width:90%;padding:15px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:8px;width:100%}.image-preview-grid{gap:5px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.image-preview-item{height:80px;width:80px}.button-group{display:flex;flex-direction:column;gap:10px}.button-group button{margin:0;width:100%}table{display:block;overflow-x:auto;white-space:nowrap}input[type=datetime-local]{min-width:auto}}@media (max-width:600px){.event-form{font-size:14px;max-width:95%;padding:10px}.event-form button,.event-form input{width:100%}}@media (min-width:1200px){.event-form{max-width:1000px}}.image-preview{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:1rem 0;padding:1rem}.image-preview img{display:block;margin:0 auto}.image-status{color:#666;font-size:.875rem;margin-top:.5rem;padding:.25rem;text-align:center}.image-status small{background:#f0f0f0;border-radius:4px;padding:2px 8px}.error-text{color:#f44;display:block;font-size:.8em;margin-top:4px}.form-group input[required].missing,.form-group select[required].missing,.form-group textarea[required].missing{background-color:#fff0f0;border:2px solid #f44}.form-section{border:1px solid #eee;border-radius:4px;margin-bottom:2rem;padding:1rem}.form-section h3{color:#333;margin-bottom:1rem;margin-top:0}.form-group.checkbox{align-items:center;display:flex;gap:.5rem}.form-group.checkbox input[type=checkbox]{margin:0}.datetime-group{border:1px solid #eee;border-radius:4px;margin-bottom:1rem;padding:1rem}.datetime-group h4{color:#666;margin-bottom:1rem;margin-top:0}.add-time-btn,.remove-time-btn{border:none;border-radius:4px;cursor:pointer;margin:.5rem 0;padding:.5rem 1rem}.add-time-btn{background-color:#4caf50;color:#fff}.remove-time-btn{background-color:#f44336;color:#fff;margin-left:1rem}.form-row{align-items:flex-end;display:flex;gap:1rem}.map-preview{border:1px solid #ddd;border-radius:4px;margin-top:10px;overflow:hidden}.type-selection-container{align-items:center;display:flex;gap:10px}.ai-suggest-button{background:#e3f2fd;border:1px solid #2196f3;border-radius:4px;color:#1565c0;cursor:pointer;padding:8px 16px;transition:all .2s}.ai-suggest-button:hover:not(:disabled){background:#bbdefb}.ai-suggest-button:disabled{cursor:not-allowed;opacity:.6}.ai-classify-button{background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:8px 16px;transition:all .3s ease}.ai-classify-button:hover:not(:disabled){background-color:#e9ecef}.ai-classify-button:disabled{cursor:not-allowed;opacity:.6}.ai-classify-button.loading{background-color:#e9ecef;cursor:wait;position:relative}.ai-classify-button.loading:after{animation:button-loading-spinner 1s ease infinite;border:2px solid #0000;border-radius:50%;border-top-color:#666;content:"";height:16px;margin-top:-8px;position:absolute;right:8px;top:50%;width:16px}@keyframes button-loading-spinner{0%{transform:rotate(0turn)}to{transform:rotate(1turn)}}.event-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;overflow:hidden}.event-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.event-title-section h2{color:#2c3e50;font-size:1.5rem;margin:0}.status-tag{border-radius:4px;display:inline-block;font-size:.8rem;margin-left:8px;padding:4px 8px}.status-tag.public{background:#e3f2fd;color:#1976d2}.status-tag.private{background:#fbe9e7;color:#d32f2f}.event-content{padding:20px}.info-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:24px;padding:20px}.info-section h3{border-bottom:2px solid #e3f2fd;color:#1a237e;font-size:1.1rem;margin-bottom:16px;padding-bottom:8px}.info-row{display:flex;flex-wrap:wrap;gap:8px;line-height:1.6;margin-bottom:12px}.info-row strong{color:#37474f;display:inline-block;font-weight:500;min-width:140px}.info-row p{flex:1 1;margin:0;min-width:200px;white-space:pre-wrap}.info-row a.event-link{color:#1976d2;flex:1 1;text-decoration:none;word-break:break-all}.info-row a.event-link:hover{text-decoration:underline}.stats-container{display:flex;gap:24px}.stat-item{flex:1 1;text-align:center}.stat-value{color:#2196f3;display:block;font-size:1.5rem;font-weight:700}.stat-label{color:#78909c;font-size:.9rem}.event-meta{border-top:1px solid #e3f2fd;color:#546e7a;display:flex;font-size:.9rem;gap:8px;margin-top:20px;padding-top:16px}.event-meta span{color:#78909c}.btn-delete,.btn-edit{border:none;border-radius:4px;cursor:pointer;font-weight:500;margin-left:8px;padding:8px 16px}.btn-edit{background:#e3f2fd;color:#1976d2}.btn-delete{background:#fbe9e7;color:#d32f2f}.title-row{align-items:center;display:flex;gap:12px}.event-checkbox{cursor:pointer;height:20px;width:20px}.status-controls{align-items:center;display:flex;gap:8px}.visibility-toggle{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;padding:4px 8px}.visibility-toggle.public{background:#fbe9e7;color:#d32f2f}.visibility-toggle.private{background:#e3f2fd;color:#1976d2}.filters-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:20px}.filters-row{margin-bottom:16px}.filters-row:last-child{margin-bottom:0}.filters-row.actions{border-top:1px solid #eee;justify-content:space-between;padding-top:16px}.filter-group{align-items:center;display:flex;gap:8px}.filter-group.search{flex:1 1}.filter-group.date-range{align-items:center;display:flex;gap:8px}.location-input,.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.select-filter{cursor:pointer}.select-filter:hover{border-color:#bbb}.select-filter:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a;outline:none}.type-multi-filter{min-width:140px;position:relative}button.select-filter.type-multi-trigger{cursor:pointer;text-align:left;width:100%}.type-multi-dropdown{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001f;left:0;max-height:320px;max-width:min(420px,90vw);min-width:280px;overflow-y:auto;padding:8px 10px;position:absolute;top:calc(100% + 4px);z-index:50}.type-multi-group{border-top:1px solid #eee;margin-top:10px;padding-top:8px}.type-multi-group:first-of-type{margin-top:8px}.type-multi-group-heading{color:#546e7a;font-size:11px;font-weight:700;letter-spacing:.04em;padding:2px 4px 6px;text-transform:uppercase}.type-multi-option-sub{padding-left:10px}.type-multi-option{align-items:flex-start;border-radius:4px;cursor:pointer;display:flex;font-size:13px;gap:8px;line-height:1.35;padding:6px 4px}.type-multi-option:hover{background:#f5f5f5}.type-multi-option input{flex-shrink:0;margin-top:2px}.type-multi-option span{word-break:break-word}.sort-order-button{background:#fff}.batch-actions{gap:10px}.batch-actions button,.batch-actions select{background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px}.batch-actions button:hover,.batch-actions select:hover{background-color:#f0f0f0}.batch-actions select{min-width:150px}.results-info{color:#546e7a;font-size:.9rem;white-space:nowrap}.search-section{align-items:center;display:flex;gap:16px}.results-info-container{margin-bottom:16px;padding:12px 0}.results-count{color:#546e7a;font-size:.95rem;font-weight:500}.dashboard-container{margin:0 auto;max-width:1400px;padding:24px}.dashboard-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.dashboard-title{color:#1a237e;font-size:28px;font-weight:600;margin:0}.dashboard-actions{display:flex;gap:12px}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 20px;transition:transform .1s ease,box-shadow .2s ease}.action-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.action-button:active{transform:translateY(0)}.action-button.primary{background:#2196f3;color:#fff}.action-button.secondary{background:#e3f2fd;color:#1976d2}.action-button .icon{font-size:18px;line-height:1}.event-images{margin-top:20px}.image-gallery{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.image-thumbnail{border-radius:8px;cursor:pointer;height:100px;overflow:hidden;transition:transform .2s;width:100px}.image-thumbnail:hover{transform:scale(1.05)}.image-thumbnail img{height:100%;object-fit:cover;width:100%}.image-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{max-height:90vh;max-width:90vw;position:relative}.modal-content img{max-height:90vh;max-width:100%;object-fit:contain}.close-button{background:none;border:none;color:#fff;cursor:pointer;font-size:30px;padding:10px;position:absolute;right:-40px;top:-40px}.close-button:hover{color:#ddd}.event-link{color:#06c;text-decoration:none;word-break:break-all}.event-link:hover{text-decoration:underline}.filters-row.search-and-sort{padding:10px 0}.search-section{flex:1 1;margin-right:20px}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.sort-group select{min-width:150px}.dashboard-header{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.filters-container{display:flex;flex-direction:column;gap:16px}.filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.filters-row.search-and-sort{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.filters-row.search-and-sort .search-section{align-items:center;display:flex;flex:1 1 720px;gap:12px;max-width:760px;width:100%}.filters-row.search-and-sort .search-input{border:1px solid #ddd;border-radius:6px;flex:1 1 auto;font-size:16px;min-width:320px;padding:10px 14px;width:100%}.filters-row.search-and-sort .search-button{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:10px 18px;white-space:nowrap;width:auto}.search-input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a;outline:none}.sort-group{align-items:center;display:flex;gap:8px}.select-filter{background-color:#fff;min-width:120px}.select-filter,.sort-order-button{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.sort-order-button{background:#f5f5f5;cursor:pointer}.sort-order-button:hover{background:#e9e9e9}.date-range{align-items:center;display:flex;gap:8px}.date-input{padding:8px}.date-input,.location-input{border:1px solid #ddd;border-radius:4px;font-size:14px}.location-input{min-width:200px;padding:8px 12px}.batch-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.btn-batch,.btn-select-all{background:#e3f2fd;border:none;border-radius:4px;color:#1976d2;cursor:pointer;font-weight:500;padding:8px 16px}.btn-batch.delete{background:#fbe9e7;color:#d32f2f}.btn-batch:hover,.btn-select-all:hover{opacity:.9}.batch-field-edit{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-top:16px;padding:16px}.field-edit-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.field-edit-group label{align-items:center;color:#495057;display:flex;font-size:14px;gap:6px}.field-edit-group input[type=checkbox]{margin:0}.field-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 12px}.field-input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a;outline:none}.field-edit-group .btn-batch{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.field-edit-group .btn-batch:hover{background-color:#1976d2}.field-edit-group .btn-batch:disabled{background-color:#ccc;cursor:not-allowed}.field-value-container{align-items:flex-start;display:flex;flex:1 1;gap:8px}.field-value-container p,.field-value-container span{flex:1 1;margin:0;white-space:pre-wrap}.expand-button{align-self:flex-start;background:#e3f2fd;border:none;border-radius:4px;color:#1976d2;cursor:pointer;font-size:12px;padding:2px 8px;transition:background-color .2s;white-space:nowrap}.expand-button:hover{background:#bbdefb}.field-filters-container{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;width:100%}.field-filter-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;gap:8px;padding:8px}.field-filter-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 12px}.field-filter-input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a;outline:none}.remove-filter-button{align-items:center;background:#fbe9e7;border:none;border-radius:4px;color:#d32f2f;cursor:pointer;display:flex;font-size:12px;justify-content:center;padding:4px 8px;transition:background-color .2s}.remove-filter-button:hover{background:#ffcdd2}.add-filter-button{background:#e3f2fd;border:none;border-radius:4px;color:#1976d2;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.add-filter-button:hover{background:#bbdefb}.load-more-container{display:flex;justify-content:center;margin:20px 0 30px}.upcoming-summary-table{background:#fff;border:1px solid #e5e7eb;border-collapse:collapse;border-radius:6px;margin-bottom:10px;overflow:hidden;width:100%}.upcoming-summary-table td,.upcoming-summary-table th{border-bottom:1px solid #f1f5f9;padding:10px 12px;text-align:left}.upcoming-summary-table th{background:#f8fafc;color:#334155;font-size:.9rem;font-weight:600}.upcoming-summary-table td{color:#0f172a;font-weight:600}.clear-filters-inline-btn{background:#f8fafc;border:1px solid #cbd5e1;border-radius:4px;color:#334155;cursor:pointer;margin-left:10px;padding:6px 10px}.clear-filters-inline-btn:hover{background:#f1f5f9}.csv-import-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto;max-width:800px;padding:20px}.import-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.progress-info{color:#666;font-size:14px}.import-actions{display:flex;gap:10px;justify-content:space-between;margin-top:20px}.file-input{border:2px dashed #ddd;border-radius:8px;margin:20px 0;padding:20px;text-align:center;width:100%}.button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:10px 20px}.button.primary{background:#2196f3;color:#fff}.button.secondary{background:#e3f2fd;color:#1976d2}.button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.csv-import-container{padding:15px}.import-actions{flex-direction:column}.button{margin:5px 0;width:100%}}.parse-errors{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;margin:1rem 0;padding:1rem}.parse-errors h3{color:#856404;margin-top:0}.parse-errors ul{margin:0;padding-left:20px}.parse-errors li{color:#856404;margin-bottom:.5rem}.import-dialog{padding:20px}.import-type-selector{display:flex;gap:10px;margin-bottom:20px}.import-type-selector button{background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;padding:8px 16px}.import-type-selector button.active{background:#007bff;border-color:#0056b3;color:#fff}.main-navigation{background:#fff;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-container{display:flex;gap:1rem;margin:0 auto;max-width:1400px;padding:1rem 2rem}.nav-link{border:2px solid #0000;border-radius:4px;color:#666;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s}.nav-link:hover{background:#f8f9fa;color:#007bff}.nav-link.active{background:#e7f3ff;border-color:#007bff;color:#007bff}@media screen and (max-width:768px){.nav-container{flex-direction:column;gap:.5rem;padding:.75rem 1rem}.nav-link{padding:.5rem 1rem;text-align:center}}.admin-dashboard{margin:0 auto;max-width:1200px;padding:20px}.modal-overlay{align-items:flex-start;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:8px;margin-top:20px;position:relative;width:100%}@media (max-width:768px){.admin-dashboard,.modal-overlay{padding:10px}.modal{margin-top:10px}}.scraper-orchestration{padding:.75rem}.scraper-orchestration h2{color:#333;margin-bottom:1.5rem}.scraper-orchestration h3{color:#555;font-size:1.2rem;margin-bottom:.75rem}.loading{color:#666;padding:1.25rem}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin-bottom:1rem;padding:.75rem 1rem}.error-message strong{display:block;margin-bottom:.5rem}.error-message small{color:#856404;display:block;font-size:.875rem;line-height:1.5;margin-top:.75rem}.retry-button{background:#dc3545;border:none;border-radius:4px;cursor:pointer;font-weight:500;margin-top:.75rem;padding:.5rem 1rem}.retry-button:hover{background:#c82333}.status-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1.25rem;padding:1rem 1.25rem}.status-info{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.status-info p{color:#666;margin:.5rem 0}.status-healthy{color:#28a745;font-weight:600}.status-error{color:#dc3545;font-weight:600}.timestamp{color:#999;font-size:.9rem}.local-server-card{margin-bottom:1.25rem}.local-server-actions{display:flex;flex-direction:column;gap:.5rem}.local-server-row{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.local-server-indicator{border-radius:50%;flex-shrink:0;height:10px;width:10px}.local-server-indicator.running{background:#28a745;box-shadow:0 0 0 3px #28a74540}.local-server-indicator.stopped{background:#dc3545;box-shadow:0 0 0 3px #dc354540}.local-server-indicator.checking{background:#6c757d;opacity:.6}.local-server-indicator-label{color:#495057;font-size:.9rem;font-weight:500;min-width:4.5rem}.server-btn{border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.4rem .85rem;transition:background .15s}.server-btn:disabled{cursor:not-allowed;opacity:.5}.start-btn{background:#28a745}.start-btn:hover:not(:disabled){background:#218838}.stop-btn{background:#dc3545}.stop-btn:hover:not(:disabled){background:#bb2d3b}.restart-btn{background:#fd7e14}.restart-btn:hover:not(:disabled){background:#e06c0a}.automatic-btn{background:#5b21b6}.automatic-btn:hover:not(:disabled){background:#4c1d95}.local-server-msg{font-size:.9rem;margin:0}.local-server-msg.success{color:#28a745}.local-server-msg.error{color:#dc3545}.local-server-hint{color:#6c757d;font-size:.8rem;margin:.5rem 0 0}.local-server-hint code{background:#f1f3f5;border-radius:4px;padding:.15rem .4rem}.scrapers-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1.25rem;padding:1rem 1.25rem}.table-wrapper{overflow-x:auto}.scrapers-table{border-collapse:collapse;font-size:.9375rem;margin-top:.25rem;width:100%}.scrapers-table th{background:#495057;border:none;color:#fff;font-weight:600;padding:.5rem .75rem;text-align:left;white-space:nowrap}.scrapers-table thead tr:first-child th:first-child{border-radius:6px 0 0 0}.scrapers-table thead tr:first-child th:last-child{border-radius:0 6px 0 0}.scrapers-table .th-sort-btn{align-items:center;background:#0000;border:none;color:inherit;cursor:pointer;display:inline-flex;font:inherit;font-weight:600;gap:.2rem;padding:0;text-align:left;width:100%}.scrapers-table .th-sort-btn:hover{text-decoration:underline}.scrapers-table thead tr.scrapers-table-filter-row th{background:#5c636a;font-weight:400;padding:.35rem .5rem;vertical-align:middle;white-space:normal}.scrapers-table .th-filter-control{border:1px solid #adb5bd;border-radius:4px;box-sizing:border-box;font-size:.8125rem;max-width:12rem;padding:.3rem .4rem;width:100%}.scrapers-table thead tr.scrapers-table-filter-row th.th-filter-spacer{padding:.35rem .5rem}.scrapers-table td{border-bottom:1px solid #e9ecef;padding:.5rem .75rem;vertical-align:middle}.scrapers-table tbody tr:hover{background:#f1f3f5}.scrapers-table tbody tr:last-child td{border-bottom:none}.scraper-name{color:#007bff;font-weight:500}.enabled{background:#d4edda;color:#28a745}.disabled,.enabled{border-radius:4px;display:inline-block;font-weight:600;padding:.25rem .5rem}.disabled{background:#e9ecef;color:#6c757d}.health-badge{border-radius:4px;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .5rem}.health-badge.healthy{background:#d4edda;color:#155724}.health-badge.degraded{background:#fff3cd;color:#856404}.health-badge.unknown{background:#e9ecef;color:#6c757d}.health-badge.error,.health-badge.unhealthy{background:#f8d7da;color:#721c24}.health-badge.available{background:#d1ecf1;color:#0c5460}.last-successful-run{white-space:nowrap}.last-successful-run.late{color:#c0392b;font-weight:700}.priority-badge{border-radius:4px;display:inline-block;font-size:.875rem;font-weight:600;min-width:2rem;padding:.25rem .75rem;text-align:center}.priority-badge.priority-1{background:red;color:#fff}.priority-badge.priority-2{background:orange;color:#fff}.priority-badge.priority-3{background:#ff0;color:#333}.priority-badge.priority-4{background:#32cd32;color:#fff}.priority-badge.priority-5{background:#90ee90;color:#333}.priority-badge.priority--5{background:#e9ecef;color:#495057}.trigger-badge{border-radius:4px;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.trigger-badge.locally{background:#d1ecf1;color:#0c5460}.trigger-badge.manual-local{background:#ede9fe;color:#6d28d9}.trigger-badge.scheduled-local{background:#dcfce7;color:#166534}.trigger-badge.cloud{background:#e7f3ff;color:#004085}.btn-run{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .3s}.btn-run:hover:not(:disabled){background:#0056b3}.btn-run:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.run-actions{display:flex;flex-wrap:wrap;gap:.5rem}.health-status{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.health-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:1rem}.health-item{border:2px solid;border-radius:6px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.health-item.healthy{background:#d4edda;border-color:#28a745;color:#155724}.health-item.unhealthy{background:#f8d7da;border-color:#dc3545;color:#721c24}.health-item strong{font-size:1rem}.health-item span{font-size:.875rem;text-transform:capitalize}.progress-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1.25rem;padding:1rem 1.25rem}.progress-cards{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:.75rem}.progress-card{background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;padding:.75rem;transition:all .3s}.progress-card.running{background:#f0f9f4;border-color:#28a745}.progress-card.completed{background:#e6f7ff;border-color:#17a2b8}.progress-card.error{background:#fff5f5;border-color:#dc3545}.progress-card.cancelled{background:#f5f5f5;border-color:#6c757d}.progress-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.progress-header .scraper-name{color:#007bff;font-size:1.1rem;font-weight:600}.progress-header .run-id{color:#6c757d;font-family:monospace;font-size:.875rem}.status-badge{border-radius:4px;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.status-badge.running{background:#d4edda;color:#155724}.status-badge.scraping{background:#cce5ff;color:#004085}.status-badge.cancelling{background:#fff3cd;color:#856404}.status-badge.completed{background:#d1ecf1;color:#0c5460}.status-badge.error{background:#f8d7da;color:#721c24}.status-badge.cancelled{background:#e9ecef;color:#495057}.progress-time-info{background:#fff;border-radius:4px;font-size:.875rem;margin-bottom:.5rem;padding:.5rem .75rem}.end-time,.start-time{color:#666;margin-bottom:.25rem}.progress-phase{background:#fff;border-radius:4px;font-size:.95rem;padding:.5rem .75rem}.progress-bar-container,.progress-phase{margin-bottom:.75rem}.progress-bar-label{color:#666;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.5rem}.progress-bar{background:#e9ecef;border-radius:12px;height:24px;overflow:hidden;position:relative;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#28a745,#20c997);border-radius:12px;height:100%;transition:width .3s ease}.progress-stats{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:.5rem}.stat-item{background:#fff;border-radius:4px;display:flex;flex-direction:column;padding:.5rem .75rem}.stat-item.error{background:#fff5f5}.stat-label{color:#6c757d;font-size:.75rem;margin-bottom:.25rem}.stat-value{color:#333;font-size:1.1rem;font-weight:600}.stat-item.error .stat-value{color:#dc3545}.last-event{background:#fff;border-radius:4px;color:#666;overflow:hidden;padding:.5rem .75rem;text-overflow:ellipsis;white-space:nowrap}.last-event,.progress-time{font-size:.875rem;margin-bottom:.5rem}.progress-time{color:#6c757d;display:flex;justify-content:space-between}.current-item{background:#fff;border-radius:4px;color:#999;font-size:.75rem;overflow:hidden;padding:.5rem .75rem;text-overflow:ellipsis;white-space:nowrap}.progress-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.btn-cancel{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .3s}.btn-cancel:hover:not(:disabled){background:#c82333}.btn-cancel:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.btn-view-events{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background-color .3s}.btn-view-events:hover{background:#138496;color:#fff;text-decoration:none}.full-auto-batch-card{border-left:4px solid #6f42c1}.full-auto-batch-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.full-auto-batch-header h3{margin:0}.full-auto-batch-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.progress-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.progress-section-header h3{margin:0}.server-btn.stop-scraping-btn{background:#6c2a2a;border:none;color:#fff}.server-btn.stop-scraping-btn:hover:not(:disabled){background:#5a2222}.server-btn.stop-scraping-btn:disabled{cursor:not-allowed;opacity:.55}.full-auto-dismiss{background:#f8f9fa;border:1px solid #ccc;border-radius:6px;color:#444;cursor:pointer;font-size:.85rem;padding:.35rem .75rem}.full-auto-dismiss:hover{background:#e9ecef}.full-auto-loading{color:#666;margin:0}.full-auto-meta{align-items:center;color:#444;display:flex;flex-wrap:wrap;font-size:.95rem;gap:.5rem 1rem;margin:0 0 .5rem}.full-auto-batch-id{font-family:ui-monospace,monospace;font-size:.85rem}.full-auto-status-pill{border-radius:999px;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.02em;padding:.15rem .5rem;text-transform:uppercase}.full-auto-status-pill.status-running{background:#cce5ff;color:#004085}.full-auto-status-pill.status-completed{background:#d4edda;color:#155724}.full-auto-status-pill.status-error{background:#f8d7da;color:#721c24}.full-auto-status-pill.status-cancelled{background:#fde8e8;color:#7a1e1e}.full-auto-status-pill.status-unknown{background:#e2e3e5;color:#383d41}.full-auto-started{color:#666;font-size:.9rem}.full-auto-last-msg{background:#f8f9fa;border-radius:6px;color:#333;font-size:.9rem;margin:0 0 .75rem;padding:.5rem .65rem}.full-auto-summary{margin-bottom:1rem}.full-auto-bar-label{color:#555;font-size:.85rem;margin-bottom:.35rem}.full-auto-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden}.full-auto-bar-fill{background:linear-gradient(90deg,#6f42c1,#9b59d6);border-radius:4px;height:100%;transition:width .35s ease}.full-auto-current-run{background:#f3e8ff;border:1px solid #e2d5f5;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.full-auto-current-run h4{color:#4a148c;font-size:1rem;margin:0 0 .5rem}.full-auto-run-stats{color:#333;font-size:.9rem;margin:0;padding-left:1.1rem}.full-auto-run-stats li{margin-bottom:.25rem}.full-auto-run-stats strong{color:#555;margin-right:.35rem}.full-auto-waiting{color:#6c757d;font-size:.9rem;font-style:italic;margin:0}.full-auto-empty-order{background:#fff8e6;border:1px solid #ffe08a;border-radius:6px;color:#5c4a00;font-size:.9rem;margin:0 0 .75rem;padding:.6rem .75rem}.full-auto-live-hint{color:#5a3d8a}.full-auto-live-hint,.progress-local-hint{font-size:.88rem;line-height:1.45;margin:0 0 .75rem}.progress-local-hint{background:#e7f3ff;border-radius:6px;color:#0c5460;padding:.5rem .65rem}.progress-local-hint code{font-size:.85em}.full-auto-table-wrap{overflow-x:auto}.full-auto-table{border-collapse:collapse;font-size:.9rem;width:100%}.full-auto-table td,.full-auto-table th{border-bottom:1px solid #e9ecef;padding:.45rem .5rem;text-align:left}.full-auto-table th{color:#666;font-size:.8rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.full-auto-row-active{background:#f0f7ff}.full-auto-job-status{border-radius:4px;display:inline-block;font-size:.8rem;font-weight:500;padding:.1rem .4rem}.full-auto-job-status.st-pending{background:#e9ecef;color:#495057}.full-auto-job-status.st-running{background:#cce5ff;color:#004085}.full-auto-job-status.st-completed,.full-auto-job-status.st-success{background:#d4edda;color:#155724}.full-auto-job-status.st-error{background:#f8d7da;color:#721c24}.full-auto-job-status.st-cancelled,.full-auto-job-status.st-skipped{background:#fff3cd;color:#856404}.full-auto-job-note{color:#666;font-size:.85rem;max-width:28rem;word-break:break-word}@media screen and (max-width:768px){.scraper-orchestration{padding:.5rem}.status-info{grid-template-columns:1fr}.table-wrapper{overflow-x:scroll}.scrapers-table{min-width:600px}.health-grid,.progress-cards{grid-template-columns:1fr}.progress-header{align-items:flex-start;flex-direction:column}}.scraper-reports{grid-gap:1rem;display:grid;gap:1rem;padding:.5rem 0}.loading{color:#64748b;padding:2rem;text-align:center}.chart-panel,.empty-state,.error-message,.reports-controls-card,.reports-page-header,.reports-table-container,.summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 12px 32px #0f172a0f}.reports-page-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;padding:1.4rem 1.5rem}.reports-eyebrow{color:#2563eb;font-size:.75rem;font-weight:700;letter-spacing:.12em;margin:0 0 .35rem;text-transform:uppercase}.reports-page-header h2{color:#0f172a;font-size:1.8rem;margin:0}.reports-subtitle{color:#64748b;line-height:1.5;margin:.5rem 0 0;max-width:720px}.reports-page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.reports-last-loaded{color:#64748b;font-size:.92rem}.ghost-button,.refresh-button,.retry-button,.show-more-button{border:none;border-radius:10px;cursor:pointer;font-weight:600;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.refresh-button,.show-more-button{background:#2563eb;color:#fff;padding:.7rem 1rem}.ghost-button{background:#e2e8f0;color:#0f172a;padding:.8rem 1rem}.retry-button{background:#dc2626;color:#fff;padding:.7rem 1rem}.ghost-button:hover,.refresh-button:hover,.retry-button:hover,.show-more-button:hover{box-shadow:0 10px 24px #0f172a1f;transform:translateY(-1px)}.error-message{align-items:center;background:#fff5f5;border-color:#fecaca;color:#991b1b;display:flex;flex-wrap:wrap;gap:.75rem 1rem;padding:1rem 1.25rem}.error-message strong{display:inline-block}.reports-controls-card{grid-gap:1rem;display:grid;gap:1rem;padding:1.2rem 1.25rem}.reports-range-switcher{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.reports-control-group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.75rem}.section-label{color:#475569;font-size:.92rem;font-weight:600}.segmented-control{background:#f1f5f9;border-radius:999px;display:inline-flex;gap:.35rem;padding:.25rem}.segmented-control button{background:#0000;border:none;border-radius:999px;color:#475569;cursor:pointer;font-weight:700;padding:.55rem .95rem}.segmented-control button.active{background:#0f172a;color:#fff}.reports-custom-range,.reports-filters-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.filter-field{grid-gap:.45rem;color:#334155;display:grid;font-size:.92rem;font-weight:600;gap:.45rem}.filter-date,.filter-select{background:#fff;border:1px solid #cbd5e1;border-radius:12px;color:#0f172a;font-size:.95rem;min-height:44px;padding:.7rem .9rem;width:100%}.filter-date:focus,.filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f;outline:none}.filter-toggle{align-items:center;color:#334155;display:inline-flex;font-size:.92rem;font-weight:600;gap:.55rem}.reports-active-state{display:flex;flex-wrap:wrap;gap:.55rem}.active-pill{align-items:center;background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.85rem;font-weight:700;min-height:32px;padding:0 .8rem}.summary-cards{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.summary-card{grid-gap:.4rem;display:grid;gap:.4rem;padding:1rem 1.1rem}.stat-label{color:#64748b;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.stat-value-large{color:#0f172a;font-size:1.7rem;font-weight:800;line-height:1.1}.stat-value-large.success{color:#059669}.stat-value-large.warning{color:#d97706}.stat-value-large.error{color:#dc2626}.reports-chart-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.chart-panel{padding:1rem 1.1rem .75rem}.chart-panel-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.5rem}.chart-panel-header h3{color:#0f172a;margin:0}.chart-panel-header p{color:#64748b;font-size:.92rem;line-height:1.45;margin:.35rem 0 0}.empty-state{padding:2rem 1.25rem;text-align:center}.empty-state h3{color:#0f172a;margin:0 0 .5rem}.empty-state p{color:#64748b;margin:0}.reports-table-container{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto;overflow-y:visible}.reports-table-toolbar{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1.15rem 1.25rem 0}.reports-table-toolbar h3{color:#0f172a;margin:0}.reports-table-toolbar p{color:#64748b;font-size:.92rem;margin:.25rem 0 0}.reports-table{border-collapse:collapse;margin-top:.85rem;min-width:1100px;width:100%}.reports-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#334155;font-size:.82rem;font-weight:700;letter-spacing:.04em;padding:.9rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.reports-table td{border-bottom:1px solid #eef2f7;color:#1e293b;padding:.9rem 1rem;vertical-align:top}.reports-table tbody tr:hover{background:#f8fafc}.reports-table tbody tr.success{background:#f8fffc}.reports-table tbody tr.error{background:#fffdfd}.scraper-name{color:#1d4ed8;font-weight:700}.status-badge,.trigger-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:700;padding:.35rem .7rem}.status-badge.completed,.status-badge.success{background:#dcfce7;color:#166534}.status-badge.cancelled,.status-badge.error,.status-badge.failed{background:#fee2e2;color:#991b1b}.status-badge.initializing,.status-badge.running,.status-badge.scraping{background:#dbeafe;color:#1d4ed8}.trigger-badge.scheduled{background:#e0f2fe;color:#075985}.trigger-badge.manual{background:#fef3c7;color:#92400e}.trigger-badge.manual_local{background:#ede9fe;color:#6d28d9}.trigger-badge.scheduled_local{background:#dcfce7;color:#166534}.trigger-badge.locally{background:#ede9fe;color:#6d28d9}.trigger-badge.unknown{background:#e2e8f0;color:#475569}.events-count{font-weight:700}.total-urls-hint{color:#64748b;font-size:.82rem}.events-link{color:#2563eb;font-weight:700;text-decoration:none}.events-link:hover{text-decoration:underline}.no-errors,.no-events-link{color:#94a3b8}.error-details-container{display:inline-block;position:relative}.error-count{color:#dc2626;cursor:pointer;font-weight:700;text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.error-details-modal{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}.error-details-content{background:#fff;border-radius:18px;display:flex;flex-direction:column;max-height:80vh;overflow:hidden;width:min(900px,100%)}.error-details-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.error-details-header h4{color:#0f172a;margin:0}.error-details-close{background:#f1f5f9;border:none;border-radius:999px;color:#334155;cursor:pointer;font-size:1.2rem;height:34px;width:34px}.error-details-list{overflow-y:auto;padding:1rem 1.25rem 1.25rem}.error-detail-item{background:#fff5f5;border-left:4px solid #dc2626;border-radius:12px;margin-bottom:.85rem;padding:.85rem 1rem}.error-detail-item:last-child{margin-bottom:0}.error-detail-item pre{color:#7f1d1d;font-family:Consolas,Courier New,monospace;font-size:.88rem;margin:0;white-space:pre-wrap;word-break:break-word}.no-reports{color:#64748b;padding:2rem 1rem;text-align:center}.show-more-container{display:flex;justify-content:center;padding:1.1rem 1.25rem 1.3rem}@media screen and (max-width:900px){.reports-page-header{flex-direction:column}.reports-page-actions{justify-content:space-between;width:100%}}@media screen and (max-width:640px){.scraper-reports{gap:.85rem}.reports-control-group{width:100%}.chart-panel,.empty-state,.error-message,.reports-controls-card,.reports-page-header,.reports-table-container,.summary-card{border-radius:16px}.chart-panel,.reports-controls-card,.reports-page-header,.summary-card{padding-left:1rem;padding-right:1rem}.segmented-control{justify-content:space-between;width:100%}.segmented-control button{flex:1 1;text-align:center}}.scrapers-dashboard{background:radial-gradient(circle at top left,#3b82f614,#0000 22%),linear-gradient(180deg,#f8fbff,#f4f7fb);min-height:100vh}.dashboard-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-bottom:1px solid #e2e8f0e6;box-shadow:0 14px 36px #0f172a14;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem;padding:1rem 1.5rem}.dashboard-header h1{color:#0f172a;font-size:1.75rem;margin:0}.tab-navigation{display:flex;gap:.5rem}.tab-button{background:#fff;border:1px solid #bfdbfe;border-radius:12px;box-shadow:0 6px 18px #2563eb14;color:#2563eb;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.tab-button:hover{background:#eff6ff}.tab-button.active{background:#2563eb;border-color:#2563eb;color:#fff}.dashboard-content{margin:0 auto;max-width:1400px;padding:0 1.5rem 1.5rem}@media screen and (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;padding:1rem}.dashboard-header h1{font-size:1.5rem}.tab-navigation{width:100%}.tab-button{flex:1 1;text-align:center}.dashboard-content{padding:0 1rem 1rem}}.hosts-dashboard{margin:0 auto;max-width:1600px;padding:0 1rem 2rem}.hosts-dashboard-header{margin-bottom:1.25rem}.hosts-dashboard-title-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.hosts-dashboard-title-row h1{color:#1e293b;font-size:1.5rem;margin:0}.hosts-refresh-btn{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;font-size:.875rem;padding:.4rem 1rem}.hosts-refresh-btn:hover:not(:disabled){background:#e2e8f0}.hosts-refresh-btn:disabled{cursor:not-allowed;opacity:.5}.hosts-tab-nav{border-bottom:2px solid #e2e8f0;display:flex;gap:0}.hosts-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:500;margin-bottom:-2px;padding:.5rem 1.25rem;transition:color .15s,border-color .15s}.hosts-tab-btn:hover{color:#1e293b}.hosts-tab-btn.active{border-bottom-color:#2563eb;color:#2563eb}.hosts-error-banner{align-items:center;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;display:flex;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.hosts-retry-btn{background:#fff;border:1px solid #f87171;border-radius:4px;cursor:pointer;font-size:.8rem;padding:.3rem .75rem}.hosts-dashboard-content{min-height:400px}.hosts-table-and-detail{display:flex;gap:1rem}.hosts-table-pane{flex:1 1;min-width:0;transition:flex .2s}.hosts-table-pane.with-detail{flex:3 1}.hosts-detail-pane{flex:2 1;max-width:520px;min-width:340px}.hosts-table-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.hosts-search-input{flex:1 1 220px;min-width:180px;padding:.4rem .6rem}.hosts-filter-select,.hosts-search-input{border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem}.hosts-filter-select{background:#fff;padding:.4rem .5rem}.hosts-result-count{color:#64748b;font-size:.8rem;white-space:nowrap}.hosts-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.hosts-table{border-collapse:collapse;font-size:.85rem;width:100%}.hosts-table thead th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#334155;font-weight:600;padding:.6rem .5rem;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap}.hosts-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.hosts-table thead th.sortable:hover{color:#2563eb}.hosts-table tbody tr{cursor:pointer;transition:background .1s}.hosts-table tbody tr:hover{background:#f1f5f9}.hosts-table tbody tr.selected{background:#dbeafe}.hosts-table td{border-bottom:1px solid #f1f5f9;padding:.5rem;vertical-align:middle}.hosts-cell-title{max-width:260px}.host-title-text{color:#1e293b;font-weight:500}.host-id-text,.host-title-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.host-id-text{color:#94a3b8;font-size:.72rem}.hosts-cell-center{text-align:center}.hosts-cell-url a{color:#2563eb;font-size:.8rem;text-decoration:none}.hosts-cell-url a:hover{text-decoration:underline}.hosts-posts-link{color:#2563eb;font-weight:600;text-decoration:none}.hosts-posts-link:hover{text-decoration:underline}.host-profile-actions{border-top:1px solid #e2e8f0;margin-top:1.25rem;padding-top:1rem}.host-profile-actions-title{font-size:.95rem;margin:0 0 .35rem}.host-profile-actions-sub{color:#64748b;font-size:.78rem;line-height:1.4;margin:0 0 .75rem}.host-profile-actions-buttons,.host-profile-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.host-profile-weak-label{align-items:center;color:#475569;display:inline-flex;font-size:.8rem;gap:.35rem}.host-profile-preview-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.82rem;margin-bottom:.65rem;padding:.5rem .65rem}.host-profile-preview-fields{color:#334155;display:flex;flex-direction:column;gap:.2rem;margin-top:.35rem}.host-profile-val-status.status-pass{color:#16a34a}.host-profile-val-status.status-warn{color:#d97706}.host-profile-val-status.status-fail{color:#dc2626}.host-profile-btn-danger{background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;cursor:pointer;font-size:.875rem;padding:.4rem .75rem}.host-profile-btn-danger:hover:not(:disabled){background:#fee2e2}.host-profile-btn-danger:disabled{cursor:not-allowed;opacity:.45}.host-profile-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;font-size:.82rem;margin:.5rem 0;padding:.5rem .65rem;white-space:pre-wrap}.host-profile-result{font-size:.8rem;margin-top:.5rem}.host-profile-result pre{background:#0f172a;border-radius:6px;color:#e2e8f0;font-size:.72rem;max-height:220px;overflow:auto;padding:.5rem}.host-pipeline-tab{padding:.25rem 0 1rem}.host-pipeline-section{margin-bottom:1.25rem}.host-pipeline-section h3,.host-pipeline-section h4{font-size:1rem;margin:0 0 .5rem}.host-pipeline-hint{color:#64748b;font-size:.8rem;line-height:1.4;margin:0 0 .65rem}.host-pipeline-controls{display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem 1rem;margin-bottom:.65rem}.host-pipeline-controls input[type=number]{padding:.25rem .35rem;width:5rem}.host-pipeline-actions{display:flex;flex-wrap:wrap;gap:.5rem}.host-pipeline-table-wrap{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.host-pipeline-code{display:block;font-size:.72rem;margin-top:.2rem}.host-pipeline-json{background:#0f172a;border-radius:8px;color:#e2e8f0;font-size:.72rem;max-height:360px;overflow:auto;padding:.75rem}.hosts-cell-date{color:#64748b;font-size:.8rem;white-space:nowrap}.hosts-missing{color:#94a3b8;font-style:italic}.hosts-empty-row{color:#64748b;padding:2rem!important;text-align:center}.hosts-table-loading{color:#64748b;padding:3rem;text-align:center}.hosts-empty-state{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;padding:2rem 1.5rem}.hosts-empty-title{color:#0f172a;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.hosts-empty-body{color:#64748b;font-size:.9rem;line-height:1.5;margin:0}.hosts-empty-body code{background:#f1f5f9;border-radius:4px;font-size:.85em;padding:.1rem .35rem}.hosts-postcounts-hint{color:#64748b;font-size:.8rem;margin:0 0 .5rem}.host-type-badge{background:#e2e8f0;border-radius:9999px;color:#475569;display:inline-block;font-size:.75rem;font-weight:500;padding:.15rem .5rem}.host-type-badge.type-venue{background:#dbeafe;color:#1d4ed8}.host-type-badge.type-theater{background:#fce7f3;color:#be185d}.host-type-badge.type-cinema{background:#fef3c7;color:#92400e}.host-type-badge.type-museum{background:#d1fae5;color:#065f46}.host-detail-panel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;position:-webkit-sticky;position:sticky;top:1rem}.host-detail-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.75rem 1rem}.host-detail-header h3{font-size:1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.host-detail-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.25rem;line-height:1;padding:.25rem}.host-detail-close:hover{color:#1e293b}.host-detail-body{max-height:calc(100vh - 200px);overflow-y:auto;padding:1rem}.host-detail-cover-section{display:flex;gap:.75rem;margin-bottom:1rem}.host-detail-cover-wrapper{flex:1 1;position:relative}.host-detail-cover-img{border:1px solid #e2e8f0;border-radius:6px;max-height:160px;object-fit:cover;width:100%}.host-detail-cover-badge{border-radius:4px;font-size:.65rem;font-weight:600;padding:.1rem .4rem;position:absolute;right:6px;text-transform:uppercase;top:6px}.host-detail-cover-badge.ok{background:#d1fae5;color:#065f46}.host-detail-cover-badge.svg{background:#fef3c7;color:#92400e}.host-detail-cover-badge.missing{background:#fee2e2;color:#991b1b}.host-detail-cover-placeholder{align-items:center;background:#f1f5f9;border:2px dashed #cbd5e1;border-radius:6px;color:#94a3b8;display:flex;flex:1 1;height:100px;justify-content:center}.host-detail-logo-wrapper{text-align:center;width:64px}.host-detail-logo-img{border:1px solid #e2e8f0;border-radius:6px;height:64px;object-fit:contain;width:64px}.host-detail-logo-label{color:#94a3b8;font-size:.65rem}.host-detail-meta{margin-bottom:1rem}.host-detail-row{border-bottom:1px solid #f8fafc;display:flex;gap:.5rem;padding:.35rem 0}.host-detail-label{color:#64748b;flex:0 0 110px;font-size:.8rem;font-weight:600}.host-detail-value{color:#1e293b;flex:1 1;font-size:.8rem;word-break:break-all}.host-detail-value a{color:#2563eb;text-decoration:none}.host-detail-value a:hover{text-decoration:underline}.host-detail-description{margin-bottom:1rem}.host-detail-desc-text{color:#334155;font-size:.85rem;line-height:1.5;margin:.25rem 0 0}.host-detail-issues{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:.75rem}.host-detail-issues-list{color:#92400e;font-size:.8rem;margin:.25rem 0 0;padding-left:1.25rem}.host-detail-issues-list li{margin-bottom:.2rem}.host-audit-section{padding:.5rem 0}.host-audit-title{font-size:1.1rem;margin:0 0 .75rem}.host-audit-cards{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-bottom:1.5rem}.host-audit-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:1rem .5rem;transition:box-shadow .15s,border-color .15s}.host-audit-card:hover{box-shadow:0 2px 8px #0000000f}.host-audit-card-value{font-size:1.5rem;font-weight:700;line-height:1.1}.host-audit-card-label{color:#64748b;font-size:.78rem;margin-top:.25rem}.host-audit-card.severity-good .host-audit-card-value{color:#16a34a}.host-audit-card.severity-warn .host-audit-card-value{color:#d97706}.host-audit-card.severity-bad .host-audit-card-value{color:#dc2626}.host-audit-card.severity-good{border-color:#bbf7d0}.host-audit-card.severity-warn{border-color:#fde68a}.host-audit-card.severity-bad{border-color:#fca5a5}.host-audit-unmapped{margin-top:.5rem}.host-audit-unmapped h4{font-size:1rem;margin:0 0 .25rem}.host-audit-unmapped-hint{color:#64748b;font-size:.8rem;margin:0 0 .75rem}.host-audit-none{color:#94a3b8;font-style:italic}.host-audit-loading{color:#64748b;padding:1rem;text-align:center}.host-audit-unmapped-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.host-audit-unmapped-table{border-collapse:collapse;font-size:.85rem;width:100%}.host-audit-unmapped-table thead th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#334155;font-weight:600;padding:.5rem;text-align:left}.host-audit-unmapped-table td{border-bottom:1px solid #f1f5f9;padding:.45rem .5rem}@media (max-width:960px){.hosts-table-and-detail{flex-direction:column}.hosts-detail-pane{max-width:none;min-width:0}}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.missions-board,.missions-dd-theme{--sp-coral:#ff6b6b;--sp-teal:#14d9c4;--sp-violet:#8b5cf6;--sp-sun:#ffb020;--sp-midnight:#1e1b4b;--sp-glass:#ffffffb8;--sp-glass-border:#ffffff8c;--sp-shadow:0 12px 40px #1e1b4b1f}.missions-board{width:100%}.missions-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1.25rem}.missions-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.missions-toolbar-hint{color:#1e1b4b8c;font-size:.8125rem}.missions-btn{border:1px solid #0000;border-radius:999px;cursor:pointer;font-family:inherit;font-weight:600;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}.missions-btn--accent{background:linear-gradient(135deg,var(--sp-coral),#ff8e53);border:none;box-shadow:0 8px 24px #ff6b6b61;color:#fff;font-size:.9375rem;padding:.55rem 1.15rem}.missions-btn--accent:hover{box-shadow:0 12px 28px #ff6b6b73;transform:translateY(-1px)}.missions-btn--soft{background:#8b5cf61f;border-color:#8b5cf659;color:var(--sp-violet);font-size:.875rem;padding:.55rem 1rem}.missions-btn--soft:hover{background:#8b5cf633}.missions-btn--danger{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:999px;box-shadow:0 6px 18px #ef444459;color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;padding:.55rem 1rem}.missions-btn--danger:hover{filter:brightness(1.05)}.missions-btn--ghost{background:#0000;border-color:#0000;border-radius:8px;color:#94a3b8;font-size:1.25rem;line-height:1;padding:.25rem .5rem}.missions-btn--ghost:hover{background:#fee2e2cc;color:#ef4444}.missions-btn--ghost-lg{background:#ffffffa6;border:1px solid #e2e8f0f2;border-radius:10px;color:#475569;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:.55rem 1rem;transition:background .18s ease,border-color .18s ease}.missions-btn--ghost-lg:hover{background:#fff;border-color:#cbd5e1}.missions-btn--icon{background:#ffffffdb;border:1px solid #e2e8f0f2;border-radius:10px;color:#64748b;font-size:1.1rem;line-height:1;min-width:2.25rem;padding:.35rem .5rem}.missions-btn--icon:hover:not(:disabled){background:#fef2f2;border-color:#fecaca;color:#dc2626}.missions-btn--icon:disabled{cursor:not-allowed;opacity:.35}.missions-mission-cell{align-items:stretch;display:flex;gap:.45rem;min-width:0}.missions-mission-cell .missions-input--text{flex:1 1;min-width:0}.missions-msg-btn{align-items:center;background:linear-gradient(145deg,#14d9c42e,#8b5cf61f);border:1px solid #14d9c459;border-radius:10px;color:var(--sp-midnight);cursor:pointer;display:inline-flex;flex-shrink:0;gap:.28rem;padding:.35rem .55rem;transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease}.missions-msg-btn:hover{border-color:#14d9c4a6;box-shadow:0 6px 18px #14d9c440;transform:translateY(-1px)}.missions-msg-icon{display:block;opacity:.85}.missions-msg-count{color:var(--sp-violet);font-size:.75rem;font-weight:800;min-width:1.15rem;text-align:center}.missions-pill{-webkit-appearance:none;appearance:none;background-position:50%,calc(100% - 10px);background-repeat:no-repeat,no-repeat;background-size:100% 100%,10px 10px;border:none;border-radius:999px;box-shadow:inset 0 1px 0 #ffffff38;color:#fff;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:700;max-width:100%;padding:.45rem 1.85rem .45rem .65rem;text-shadow:0 1px 2px #00000026;width:100%}.missions-pill option{background:#334155;color:#fff}.missions-pill--v0{background-blend-mode:normal,normal;background-image:linear-gradient(135deg,#64748b,#475569),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#f8fafc}.missions-pill--v1{background-image:linear-gradient(135deg,#38bdf8,#2563eb),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v2{background-image:linear-gradient(135deg,#a78bfa,#7c3aed),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v3{background-image:linear-gradient(135deg,#fdba74,#f97316),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v4{background-image:linear-gradient(135deg,#ff7b7b,#fb7185),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v5{background-image:linear-gradient(135deg,#34d399,#059669),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v6{background-image:linear-gradient(135deg,#e879f9,#db2777),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-pill--v7{background-image:linear-gradient(135deg,#2dd4bf,#0d9488),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 8 2 4h8z'/%3E%3C/svg%3E");color:#fff}.missions-select{-webkit-appearance:none;appearance:none;background-position:right .45rem center;background-repeat:no-repeat;background-size:10px;border:1px solid #ffffff8c;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;padding:.45rem 1.75rem .45rem .65rem;width:100%}.missions-select--person{background-color:#ffffffeb;background-image:linear-gradient(135deg,#ff6b6b38,#14d9c440),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23475569' d='M6 8 2 4h8z'/%3E%3C/svg%3E");box-shadow:0 4px 14px #8b5cf61f;color:var(--sp-midnight)}.missions-table-wrap{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:var(--sp-glass);border:1px solid var(--sp-glass-border);border-radius:16px;box-shadow:var(--sp-shadow);display:none;overflow:auto}.missions-table{border-collapse:collapse;font-size:.875rem;min-width:1280px;width:100%}.missions-col-mission{min-width:280px;width:22%}.missions-col-details{min-width:240px;width:18%}.missions-col-person{max-width:5.5rem;width:4.75rem}.missions-details-teaser{cursor:pointer;min-width:200px}.missions-table thead{background:linear-gradient(90deg,#ff6b6b24,#14d9c41f,#8b5cf624);position:-webkit-sticky;position:sticky;top:0;z-index:2}.missions-table th{border-bottom:1px solid #e2e8f0d9;color:var(--sp-midnight);font-size:.78rem;font-weight:700;letter-spacing:.06em;padding:.75rem .85rem;text-align:left;text-transform:uppercase;white-space:nowrap}.missions-table td{border-bottom:1px solid #f1f5f9f2;padding:.55rem .85rem;vertical-align:middle}.missions-table tbody tr{transition:background .15s ease}.missions-table tbody tr:hover{background:#ffffffa6}.missions-col-actions{text-align:center;white-space:nowrap;width:5.5rem}.missions-actions-cell{text-align:center}.missions-input{background:#ffffffeb;border:1px solid #e2e8f0f2;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.875rem;padding:.45rem .55rem;width:100%}.missions-input:focus{border-color:#14d9c4a6;box-shadow:0 0 0 3px #14d9c433;outline:none}.missions-input--compose{min-height:4rem;resize:vertical}.missions-input--details{max-height:120px;min-height:2.5rem;resize:vertical}.missions-input--date{max-width:11rem}.missions-modal-overlay{align-items:center;animation:missionsFade .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a7a;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}@keyframes missionsFade{0%{opacity:0}to{opacity:1}}.missions-modal{animation:missionsPop .22s ease;background:linear-gradient(165deg,#fff,#f8fafc 55%,#fff);border:1px solid #ffffffbf;border-radius:20px;box-shadow:0 24px 80px #1e1b4b38;display:flex;flex-direction:column;max-height:min(88vh,720px);overflow:hidden;width:min(520px,100%)}.missions-modal--catalog{max-height:min(92vh,820px);width:min(640px,100%)}.missions-modal--confirm{width:min(440px,100%)}.missions-confirm-overlay{z-index:6000}.missions-confirm-body{padding-right:.25rem}.missions-confirm-actions{align-items:center;background:#ffffffa6;border-top:1px solid #f1f5f9f2;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;padding:1rem 1.35rem 1.25rem}.missions-view-toggle{background:#ffffff8c;border:1px solid #e2e8f0f2;border-radius:999px;display:inline-flex;gap:2px;padding:3px}.missions-view-toggle-btn{background:#0000;border:none;border-radius:999px;color:#64748b;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:700;padding:.45rem .85rem}.missions-view-toggle-btn--on{background:#fff;box-shadow:0 4px 12px #1e1b4b1f;color:var(--sp-midnight)}.missions-actions-inline{align-items:center;display:inline-flex;gap:.35rem;justify-content:center}.missions-actions-restore{font-size:.72rem!important;padding:.35rem .55rem!important}.missions-card-actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.missions-card-field--person-narrow{max-width:11rem}@keyframes missionsPop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.missions-modal-header{background:linear-gradient(95deg,#ff6b6b1a,#14d9c414);border-bottom:1px solid #f1f5f9f2;padding:1.25rem 1.35rem 1rem;position:relative}.missions-modal-header h2{color:var(--sp-midnight);font-size:1.25rem;margin:0}.missions-modal-sub{color:#64748b;font-size:.875rem;line-height:1.4;margin:.35rem 0 0;padding-right:2.5rem}.missions-modal-close{background:#ffffffbf;border:none;border-radius:10px;color:#64748b;cursor:pointer;font-size:1.35rem;height:2.25rem;line-height:1;position:absolute;right:.85rem;top:.85rem;width:2.25rem}.missions-modal-close:hover{background:#fef2f2;color:#dc2626}.missions-updates-list{display:flex;flex:1 1;flex-direction:column;gap:.65rem;overflow-y:auto;padding:1rem 1.35rem}.missions-updates-empty{color:#94a3b8;font-size:.9rem;margin:0;padding:1rem 0;text-align:center}.missions-update-item{background:#ffffffeb;border:1px solid #e2e8f0f2;border-radius:12px;padding:.65rem .85rem}.missions-update-meta{color:#94a3b8;font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.missions-update-body{color:#334155;font-size:.9rem;white-space:pre-wrap;word-break:break-word}.missions-updates-compose{background:#f8fafceb;border-top:1px solid #f1f5f9f2;display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.35rem 1.25rem}.missions-compose-hint{color:#94a3b8;font-size:.72rem}.missions-modal-footer{align-items:center;background:#ffffffa6;border-top:1px solid #f1f5f9f2;display:flex;flex-wrap:wrap;gap:.65rem;justify-content:space-between;padding:1rem 1.35rem}.missions-modal-footer-right{display:flex;gap:.5rem}.missions-catalog-scroll{flex:1 1;overflow-y:auto;padding:1rem 1.35rem .5rem}.missions-catalog-section{margin-bottom:1.35rem}.missions-catalog-section h3{color:var(--sp-midnight);font-size:1rem;margin:0 0 .35rem}.missions-catalog-help{color:#64748b;font-size:.8125rem;margin:0 0 .65rem}.missions-catalog-lines{display:flex;flex-direction:column;gap:.45rem;list-style:none;margin:0;padding:0}.missions-catalog-lines li{align-items:center;display:flex;gap:.45rem}.missions-catalog-grid{display:flex;flex-direction:column;gap:.5rem}.missions-catalog-row{grid-gap:.45rem;align-items:center;display:grid;gap:.45rem;grid-template-columns:1fr 140px auto}@media screen and (max-width:540px){.missions-catalog-row{grid-template-columns:1fr}}.missions-catalog-style-select{font-weight:700}.missions-cards{display:flex;flex-direction:column;gap:1rem}.missions-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--sp-glass);border:1px solid var(--sp-glass-border);border-radius:18px;box-shadow:var(--sp-shadow);overflow:hidden;padding:1.1rem;position:relative}.missions-card:before{background:linear-gradient(180deg,var(--sp-coral),var(--sp-teal),var(--sp-violet));border-radius:18px 0 0 18px;bottom:0;content:"";left:0;opacity:.85;position:absolute;top:0;width:4px}.missions-card-header--mesh{margin-bottom:.85rem}.missions-card-title-row{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.45rem}.missions-card-title-row .missions-field-label{margin-bottom:0}.missions-card-remove{border:1px solid #e2e8f0f2!important;border-radius:999px!important;color:#64748b!important;font-size:.78rem!important;padding:.35rem .65rem!important}.missions-card-remove:hover{border-color:#fecaca!important;color:#dc2626!important}.missions-mission-cell--card{margin-top:.15rem}.missions-card-title-input{font-size:1rem;font-weight:700}.missions-card-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem}.missions-card-chips .missions-pill{flex:1 1;min-width:8rem}.missions-card-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:.75rem}@media screen and (max-width:420px){.missions-card-grid{grid-template-columns:1fr}}.missions-card-field--full{margin-top:0}.missions-field-label{color:#64748b;display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-bottom:.35rem;text-transform:uppercase}@media screen and (min-width:900px){.missions-table-wrap{display:block}.missions-cards{display:none}}@media screen and (min-width:900px) and (max-width:1100px){.missions-table{min-width:1180px}}.missions-modal--details{max-height:min(90vh,720px);width:min(640px,94vw)}.missions-details-full{box-sizing:border-box;margin:0 1rem 1rem;min-height:280px;resize:vertical;width:calc(100% - 2rem)}.missions-details-actions{display:flex;gap:.5rem;justify-content:flex-end;padding:0 1rem 1rem}.missions-updates-backdrop{background:#0000;inset:0;position:fixed;z-index:4500}.missions-updates-popover{animation:missionsPop .18s ease;background:linear-gradient(165deg,#fff,#f8fafc);border:1px solid #e2e8f0f2;border-radius:16px;box-shadow:0 20px 60px #1e1b4b38;display:flex;flex-direction:column;overflow:hidden;position:fixed;z-index:4510}.missions-updates-popover-header{align-items:center;border-bottom:1px solid #f1f5f9f2;display:flex;justify-content:space-between;padding:.65rem .85rem .35rem}.missions-updates-popover-header h2{color:var(--sp-midnight);font-size:1rem;margin:0}.missions-updates-popover-close{background:#f8fafcf2;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:1.2rem;height:2rem;line-height:1;width:2rem}.missions-updates-popover-mission{border-bottom:1px solid #f1f5f9f2;color:#64748b;font-size:.8125rem;line-height:1.35;margin:0;padding:0 .85rem .5rem}.missions-updates-popover-list{-webkit-overflow-scrolling:touch;overflow-y:auto;padding:.5rem .85rem}.missions-updates-popover-compose{background:#f8fafceb;border-top:1px solid #f1f5f9f2;display:flex;flex-direction:column;gap:.5rem;padding:.65rem .85rem .85rem}.missions-updates-post-btn{justify-content:center;width:100%}.missions-dd-trigger--avatar-only{justify-content:center;max-width:3rem;min-width:2.65rem;padding-left:.45rem;padding-right:.45rem;width:auto}.missions-avatar--solo{font-size:.85rem;height:2rem;width:2rem}.missions-dd-edit{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;max-height:min(calc(100vh - 28px),calc(100dvh - 28px),78vh,560px);min-height:0;padding:.5rem .5rem 0}.missions-dd-panel--popover .missions-dd-edit{flex:1 1 auto;max-height:none;min-height:0}.missions-dd-edit-scroll{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;padding:0 .25rem}.missions-dd-edit-actions{background:#fffffffa;border-top:1px solid #e2e8f0f2;bottom:0;flex-shrink:0;padding:.65rem .75rem .85rem;position:-webkit-sticky;position:sticky}.missions-dd-edit-actions .missions-dd-apply{margin:0;width:100%}.missions-dd-new-label{margin:.5rem .25rem .75rem;width:calc(100% - .5rem)}.missions-dd-variant-grid--person{flex:0 0 auto;max-width:100%;padding-top:0}.missions-dd-edit-row--person{flex-wrap:wrap}.missions-dd-edit-row--person .missions-dd-edit-input{flex:1 1 120px;min-width:0}.missions-dd-panel--sheet .missions-dd-edit{flex:1 1 auto;max-height:none;min-height:0}.missions-dd-cell{max-width:16rem;min-width:8.5rem;position:relative}.missions-dd-cell--person{max-width:5.25rem;min-width:3.25rem;width:100%}.missions-dd-trigger{align-items:center;background-color:#fffffff2;border:1px solid #e2e8f0f2;border-radius:999px;box-shadow:0 4px 14px #1e1b4b14;cursor:pointer;display:inline-flex;font:inherit;font-size:.8125rem;font-weight:700;gap:.35rem;justify-content:space-between;min-height:2.5rem;padding:.4rem .65rem;text-align:left;transition:box-shadow .15s ease,transform .12s ease;width:100%}.missions-dd-trigger:hover{box-shadow:0 6px 20px #1e1b4b1f}.missions-dd-trigger--open{box-shadow:0 0 0 3px #14d9c459;position:relative;z-index:4015}.missions-dd-trigger--person{background:linear-gradient(135deg,#ff6b6b1f,#14d9c424);border-color:#14d9c459}.missions-dd-trigger--pill{background-color:initial;border:none;color:#fff;padding-right:1.75rem;text-shadow:0 1px 2px #0000001f}.missions-dd-trigger-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.missions-dd-chevron{border-left:5px solid #0000;border-right:5px solid #0000;border-top:6px solid #fffffff2;flex-shrink:0;height:0;opacity:.9;width:0}.missions-dd-trigger--person .missions-dd-chevron{border-top-color:#475569}.missions-dd-chevron--up{border-bottom:6px solid #fffffff2;border-top:none}.missions-dd-trigger--person .missions-dd-chevron--up{border-bottom-color:#475569}.missions-avatar{align-items:center;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.65rem;font-weight:800;height:1.75rem;justify-content:center;width:1.75rem}.missions-avatar--tone-0{background:linear-gradient(135deg,#64748b,#475569)}.missions-avatar--tone-1{background:linear-gradient(135deg,#38bdf8,#2563eb)}.missions-avatar--tone-2{background:linear-gradient(135deg,#a78bfa,#7c3aed)}.missions-avatar--tone-3{background:linear-gradient(135deg,#fdba74,#f97316)}.missions-avatar--tone-4{background:linear-gradient(135deg,#ff7b7b,#fb7185)}.missions-avatar--tone-5{background:linear-gradient(135deg,#34d399,#059669)}.missions-avatar--tone-6{background:linear-gradient(135deg,#e879f9,#db2777)}.missions-avatar--tone-7{background:linear-gradient(135deg,#2dd4bf,#0d9488)}.missions-dd-backdrop{animation:missionsFade .18s ease;background:#0f172a59;inset:0;position:fixed;z-index:4000}.missions-dd-backdrop--sheet{background:#0f172a73}.missions-dd-panel{animation:missionsPop .2s ease;background:#fff;border:1px solid #e2e8f0f2;border-radius:12px;box-shadow:0 18px 60px #1e1b4b38;display:flex;flex-direction:column;min-height:0;overflow:hidden;z-index:4010}.missions-dd-panel--popover{max-height:min(calc(100vh - 20px),calc(100dvh - 20px));position:fixed}.missions-dd-arrow{background:#fff;border-left:1px solid #e2e8f0f2;border-top:1px solid #e2e8f0f2;height:16px;position:absolute;top:-8px;transform:rotate(45deg);width:16px;z-index:1}.missions-dd-panel--popover .missions-dd-pick-list{max-height:none;padding-top:.35rem}.missions-dd-panel--sheet{animation:missionsSheetUp .28s cubic-bezier(.22,1,.36,1);border-radius:20px 20px 0 0;bottom:0;left:0;max-height:min(88vh,calc(100dvh - env(safe-area-inset-bottom, 0px)),640px);min-height:0;position:fixed;right:0;top:auto}@keyframes missionsSheetUp{0%{transform:translateY(110%)}to{transform:translateY(0)}}.missions-dd-pick-list{-webkit-overflow-scrolling:touch;display:flex;flex:1 1 auto;flex-direction:column;gap:.45rem;max-height:min(52vh,360px);min-height:0;overflow-y:auto;padding:.5rem .65rem}.missions-dd-pick-row{align-items:center;background:#f8fafc;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;font:inherit;font-size:.9375rem;font-weight:600;gap:.65rem;min-height:3rem;padding:.65rem .75rem;text-align:left;width:100%}.missions-dd-pick-row:focus-visible,.missions-dd-pick-row:hover{background:#eef2ff;border-color:#8b5cf640;outline:none}.missions-dd-pick-row--active{background:#eff6ff;border-color:#2563eb73}.missions-dd-pick-status{border:none;border-radius:8px;color:#fff;cursor:pointer;font:inherit;font-size:.9375rem;font-weight:700;min-height:2.85rem;padding:.75rem 1rem;text-shadow:0 1px 2px #00000026;width:100%}.missions-dd-pick-status:hover{filter:brightness(1.05)}.missions-dd-edit-link{align-items:center;background:#0000;border:none;border-radius:8px;color:#2563eb;cursor:pointer;display:flex;flex-shrink:0;font:inherit;font-size:.875rem;font-weight:700;gap:.4rem;justify-content:center;margin:0 .65rem;padding:.65rem 1rem}.missions-dd-edit-link:hover{background:#2563eb14}.missions-dd-divider{background:#e2e8f0f2;flex-shrink:0;height:1px;margin:.25rem 0}.missions-dd-footer-opt{align-items:center;background:#0000;border:none;color:#64748b;cursor:not-allowed;display:flex;flex-shrink:0;font:inherit;font-size:.8125rem;gap:.5rem;opacity:.75;padding:.65rem 1rem .85rem}.missions-dd-sparkle{font-size:1rem}.missions-dd-edit-header{margin-bottom:.65rem}.missions-dd-back{background:#0000;border:none;color:#2563eb;cursor:pointer;font:inherit;font-size:.875rem;font-weight:700;padding:.35rem 0}.missions-dd-edit-list{display:flex;flex-direction:column;gap:.55rem;list-style:none;margin:0;padding:0}.missions-dd-edit-row{align-items:center;display:flex;gap:.45rem}.missions-dd-edit-row--status{flex-wrap:wrap}.missions-dd-swatch-wrap{align-items:center;display:flex;flex:1 1;gap:.45rem;min-width:0}.missions-dd-swatch{border-radius:6px;flex-shrink:0;height:1.35rem;width:1.35rem}.missions-dd-edit-input{flex:1 1;min-width:0}.missions-dd-variant-grid{display:flex;flex-wrap:wrap;gap:.35rem;padding:.35rem 0 0;width:100%}.missions-dd-variant-dot{border:2px solid #0000;border-radius:50%;cursor:pointer;flex-shrink:0;height:1.35rem;padding:0;width:1.35rem}.missions-dd-variant-dot--on{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb40}.missions-dd-v0{background:linear-gradient(135deg,#64748b,#475569)}.missions-dd-v1{background:linear-gradient(135deg,#38bdf8,#2563eb)}.missions-dd-v2{background:linear-gradient(135deg,#a78bfa,#7c3aed)}.missions-dd-v3{background:linear-gradient(135deg,#fdba74,#f97316)}.missions-dd-v4{background:linear-gradient(135deg,#ff7b7b,#fb7185)}.missions-dd-v5{background:linear-gradient(135deg,#34d399,#059669)}.missions-dd-v6{background:linear-gradient(135deg,#e879f9,#db2777)}.missions-dd-v7{background:linear-gradient(135deg,#2dd4bf,#0d9488)}.missions-dd-new-label{background:#f8fafcf2;border:1px dashed #94a3b8d9;border-radius:10px;color:#475569;cursor:pointer;font:inherit;font-size:.875rem;font-weight:700;margin:.65rem;padding:.65rem;width:calc(100% - 1.3rem)}.missions-dd-new-label:hover{border-color:#2563eb73;color:#2563eb}.missions-dd-apply{background:linear-gradient(135deg,#ff6b6b,#ff8e53);background:linear-gradient(135deg,var(--sp-coral,#ff6b6b),#ff8e53);border:none;border-radius:999px;box-shadow:0 8px 24px #ff6b6b59;color:#fff;cursor:pointer;font:inherit;font-size:.9375rem;font-weight:800;margin:0 .65rem .85rem;padding:.75rem;width:calc(100% - 1.3rem)}.missions-dd-apply:hover{filter:brightness(1.03)}.missions-card-chips--dropdowns{display:flex;flex-wrap:wrap;gap:.5rem}.missions-card-chips--dropdowns>*{flex:1 1;min-width:min(100%,9rem)}@media screen and (max-width:719px){.missions-toolbar-actions{width:100%}.missions-toolbar-actions .missions-btn{flex:1 1;justify-content:center;min-height:3rem}.missions-dd-panel--sheet .missions-dd-pick-status{font-size:1rem;min-height:3.1rem}.missions-dd-panel--sheet .missions-dd-pick-row{font-size:1rem;min-height:3.25rem}}.missions-dashboard{background:radial-gradient(ellipse 120% 80% at 10% -10%,#ff6b6b38,#0000 55%),radial-gradient(ellipse 90% 70% at 95% 15%,#8b5cf633,#0000 50%),radial-gradient(ellipse 80% 60% at 40% 100%,#14d9c42e,#0000 45%),linear-gradient(180deg,#f8fafc,#eef2ff 48%,#f8fafc);min-height:100vh}.missions-dashboard-header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#ffffffc7;border-bottom:1px solid #ffffffa6;box-shadow:0 12px 48px #1e1b4b14;padding:1rem 1.25rem}.missions-dashboard-header h1{background:linear-gradient(105deg,#1e1b4b,#8b5cf6 45%,#14d9c4);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1.75rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .35rem}.missions-dashboard-subtitle{color:#64748b;font-size:.9375rem;line-height:1.45;margin:0;max-width:42rem}.missions-dashboard-main{margin:0 auto;max-width:1400px;padding:1.25rem 1rem 2rem}.missions-group-title{color:#1e1b4b;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;margin:0 0 1rem}@media screen and (min-width:768px){.missions-dashboard-header{padding:1.35rem 1.75rem}.missions-dashboard-main{padding:1.5rem 1.5rem 2.5rem}}.login-page{align-items:center;background-color:#f5f5f5;display:flex;height:100vh;justify-content:center}.login-container{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:40px;text-align:center;width:90%}.login-container h1{color:#333;font-size:2em;margin-bottom:10px}.login-container h2{color:#666;font-size:1.2em;margin-bottom:30px}.google-login-button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;font-size:16px;gap:10px;justify-content:center;padding:12px 24px;transition:background-color .3s,box-shadow .3s;width:100%}.google-login-button:hover{background-color:#f8f8f8;box-shadow:0 2px 4px #0000001a}.google-login-button img{height:18px;width:18px}
/*# sourceMappingURL=main.8360b003.css.map*/