:root{--bg:#fff;--bg-secondary:#f5f5f5;--border:#e0e0e0;--text:#1a1a1a;--text-secondary:#666;--primary:#06c;--primary-hover:#0052a3;--danger:#c00;--danger-hover:#a30000;--success:#0a0;--warning:#f80}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;background:var(--bg-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5}body,h1,h2,h3,h4,h5,h6{color:#1a1a1a;color:var(--text);margin:0}h1,h2,h3,h4,h5,h6{font-weight:600}h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}h4{font-size:16px}h5{font-size:14px}h6{font-size:12px}p{color:#666;color:var(--text-secondary);margin:0}button{background:none;border:none;cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:var(--bg-secondary);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-box{background:var(--bg);border:1px solid var(--border);max-width:400px;padding:24px;width:100%}.login-header{margin-bottom:24px;text-align:center}.login-icon{display:none}.login-header h1{font-size:20px;margin-bottom:8px}.login-header p{font-size:14px}.login-form{display:flex;flex-direction:column;gap:16px}.form-group label{align-items:center;display:flex;gap:6px}.form-group input{border:1px solid var(--border);font-size:14px;padding:8px}.form-group input:focus{border-color:var(--primary);outline:none}.error-message{background:var(--bg-secondary);border:1px solid var(--danger);color:var(--danger);font-size:13px;padding:8px;text-align:center}.login-button{align-items:center;background:var(--primary);border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px}.login-button:hover{background:var(--primary-hover)}.demo-credentials{border-top:1px solid var(--border);margin-top:24px;padding-top:24px;text-align:center}.demo-credentials h3{letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.demo-credentials h3,.demo-credentials p{color:var(--text-secondary);font-size:12px}.demo-credentials p{margin:4px 0}.demo-credentials strong{color:var(--text)}.staff-dashboard{background:var(--bg-secondary);display:flex;min-height:100vh}.sidebar-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar{background:var(--bg);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:fixed;transition:transform .3s ease;width:220px;z-index:100}.sidebar.closed{transform:translateX(-100%)}.sidebar-header{border-bottom:1px solid var(--border);padding:16px}.sidebar-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.sidebar-header h2{color:var(--text);font-size:16px;margin:0}.sidebar-close{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:none;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;transition:color .15s;width:24px}.sidebar-close:hover{color:var(--text)}@media (max-width:768px){.sidebar-close{display:flex}}.user-info{justify-content:space-between}.profile-button{align-items:center;background:none;border:1px solid var(--border);border-radius:4px;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;min-width:32px;padding:6px 8px;transition:all .2s}.profile-button:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.profile-modal{max-width:400px;width:90%}.password-form{padding:20px}.password-form .form-group{margin-bottom:16px}.password-form label{color:var(--text);display:block;font-size:14px;font-weight:500;margin-bottom:6px}.password-form input{background:var(--bg);border:1px solid var(--border);border-radius:4px;box-sizing:border-box;color:var(--text);font-size:14px;padding:8px 12px;width:100%}.password-form input:focus{border-color:#2563eb;outline:none}.password-form small{display:block;margin-top:4px}.modal-overlay{animation:fadeIn .2s ease}.modal-content{animation:slideIn .2s ease;box-shadow:0 4px 6px #0000001a}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:16px 20px}.modal-header h3{color:var(--text);margin:0}.close-button{transition:color .15s}.user-icon{display:none}.user-name{font-size:14px;font-weight:500}.user-role{color:var(--text-secondary);font-size:12px;text-transform:capitalize}.sidebar-nav{flex:1 1;overflow-y:auto;padding:8px 0}.nav-item{align-items:center;border-left:3px solid #0000;color:var(--text);display:flex;font-size:14px;gap:8px;padding:10px 16px;text-decoration:none;transition:background-color .15s}.nav-item.active,.nav-item:hover{background:var(--bg-secondary)}.nav-item.active{border-left-color:var(--primary);font-weight:500}.nav-icon{flex-shrink:0;height:16px;width:16px}.nav-label{flex:1 1;font-size:14px}.nav-badge{background:#dc2626;border-radius:10px;color:#fff;font-size:11px;font-weight:600;line-height:1.4;min-width:20px;padding:2px 8px;text-align:center}.sidebar-footer{border-top:1px solid var(--border);padding:8px}.logout-button{align-items:center;background:none;border:1px solid var(--border);color:var(--danger);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 16px;text-align:left;transition:all .15s;width:100%}.logout-button:hover{background:var(--bg-secondary);border-color:var(--danger)}.dashboard-main{flex:1 1;margin-left:220px;transition:margin-left .2s ease}.sidebar.closed~.dashboard-main{margin-left:0}@media (min-width:769px){.sidebar.closed{transform:translateX(0)}.sidebar.closed~.dashboard-main{margin-left:220px}}.dashboard-header{background:var(--bg);border-bottom:1px solid var(--border);gap:16px;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.dashboard-header,.menu-toggle{align-items:center;display:flex}.menu-toggle{background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;justify-content:center;min-height:40px;min-width:40px;padding:8px;transition:all .15s}.menu-toggle:hover{background:var(--bg-secondary);color:var(--text)}.menu-icon{font-size:20px;line-height:1}.dashboard-header h1{color:var(--text);font-size:18px;font-weight:600}.dashboard-content{padding:20px}@media (max-width:768px){.sidebar{box-shadow:2px 0 8px #0000001a;transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.dashboard-main{margin-left:0;width:100%}.dashboard-content{padding:16px}.menu-toggle{display:flex}}@media (min-width:769px){.menu-toggle,.sidebar-overlay{display:none}}.dashboard-home{max-width:100%}.welcome-section{background:var(--bg);border:1px solid var(--border);margin-bottom:16px;padding:16px}.welcome-section h2{font-size:18px;margin-bottom:8px}.welcome-section p{font-size:14px}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:16px}.stat-card{background:var(--bg);display:flex;flex-direction:column}.stat-icon{display:none}.stat-content{flex:1 1}.stat-label{margin-bottom:4px}.quick-actions{background:var(--bg);border:1px solid var(--border);margin-bottom:16px;padding:16px}.quick-actions h3{font-size:16px;margin-bottom:12px}.actions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.action-card{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border);color:inherit;display:flex;gap:12px;padding:12px;text-decoration:none;transition:border-color .15s}.action-card:hover{border-color:var(--primary)}.action-icon{color:var(--primary);flex-shrink:0;height:20px;width:20px}.action-content h4{font-size:14px;margin-bottom:4px}.action-content p{font-size:12px}.recent-activity{background:var(--bg);border:1px solid var(--border);padding:16px}.recent-activity h3{font-size:16px;margin-bottom:12px}.activity-list{display:flex;flex-direction:column;gap:8px}.activity-item{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border);display:flex;gap:12px;padding:8px}.activity-icon{display:none}.activity-content{flex:1 1}.activity-content p{font-size:14px;margin-bottom:4px}.activity-time{color:var(--text-secondary);font-size:12px}@media (max-width:768px){.actions-grid,.stats-grid{grid-template-columns:1fr}}.dog-management{background:var(--bg);border:1px solid var(--border);padding:20px}.search-icon{color:var(--text-secondary);height:16px;left:10px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.search-bar input{padding:8px 10px 8px 36px}.dogs-table-container{border:1px solid var(--border);overflow-x:auto}.dogs-table{background:var(--bg);border-collapse:collapse;width:100%}.dogs-table thead{background:var(--bg-secondary)}.dogs-table th{font-size:12px;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.dogs-table td,.dogs-table th{border-bottom:1px solid var(--border);color:var(--text);padding:10px 12px}.dogs-table td{font-size:14px}.dogs-table tbody tr:hover{background:var(--bg-secondary)}.photo-placeholder-small{align-items:center;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);display:flex;font-size:11px;height:40px;justify-content:center;width:40px}.missing-badge,.risk-badge,.status-badge{background:var(--bg-secondary);border:1px solid var(--border);display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.status-badge.active{background:var(--bg-secondary);border-color:var(--success);color:var(--success)}.status-badge.retired{background:var(--bg-secondary);border-color:var(--warning);color:var(--warning)}.status-badge.inactive{background:var(--bg-secondary);border-color:var(--text-secondary);color:var(--text-secondary)}.missing-badge.missing{background:var(--bg-secondary);border-color:var(--danger);color:var(--danger)}.missing-badge.found{background:var(--bg-secondary);border-color:var(--success);color:var(--success)}.dog-form{padding:16px}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.form-group{gap:4px}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);font-size:14px;padding:8px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);outline:none}.photo-upload{background:var(--bg-secondary);border:1px solid var(--border);display:flex;flex-direction:column;gap:8px;padding:12px;text-align:center}.upload-icon{display:none}.upload-label{background:var(--primary);color:#fff;cursor:pointer;font-size:14px;padding:6px 12px}.upload-label:hover{background:var(--primary-hover)}@media (max-width:768px){.form-row{grid-template-columns:1fr}.dogs-table{font-size:12px}.dogs-table td,.dogs-table th{padding:8px}}.risk-matrix{background:var(--bg);border:1px solid var(--border);padding:20px}.matrix-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.matrix-header h2{font-size:18px;margin-bottom:4px}.matrix-header p{font-size:14px}.header-actions{align-items:center;display:flex;gap:8px}.export-button,.settings-button{align-items:center;background:var(--primary);border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;white-space:nowrap}.export-button:hover,.settings-button:hover{background:var(--primary-hover)}.settings-button{background:var(--success)}.settings-button:hover{background:#080}.button-icon{height:16px;width:16px}.risk-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-bottom:16px}.stat-box{background:var(--bg);border:1px solid var(--border);padding:12px;text-align:center}.matrix-controls{margin-bottom:16px}.filter-group{align-items:center;display:flex;gap:8px}.filter-icon{display:none}.filter-select{background:var(--bg);border:1px solid var(--border);font-size:14px;padding:8px}.filter-select:focus{border-color:var(--primary);outline:none}.matrix-visualization{margin-bottom:16px}.matrix-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.risk-card{background:var(--bg);border:1px solid var(--border);border-left:3px solid;padding:12px}.risk-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.risk-card-header h3{font-size:16px}.risk-level-badge{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);font-size:11px;font-weight:600;padding:4px 8px;text-transform:uppercase}.risk-score-display{align-items:center;display:flex;flex-direction:column;margin-bottom:12px}.score-circle{align-items:center;background:var(--bg-secondary);border:2px solid var(--border);border-radius:0;display:flex;height:50px;justify-content:center;margin-bottom:6px;width:50px}.score-value{color:var(--text);font-size:18px;font-weight:600}.score-label{color:var(--text-secondary);font-size:11px;letter-spacing:.5px;text-transform:uppercase}.risk-factors{margin-bottom:12px}.risk-factors h4{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.risk-factors ul{list-style:none;margin:0;padding:0}.risk-factors li{align-items:flex-start;color:var(--text);display:flex;font-size:13px;gap:6px;margin-bottom:6px;padding-left:0}.factor-icon{display:none}.risk-actions{display:flex;gap:8px}.action-btn{align-items:center;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:4px;justify-content:center;padding:6px 12px}.action-btn.primary{background:var(--primary);border:none;color:#fff}.action-btn.primary:hover{background:var(--primary-hover)}.action-btn.secondary{background:var(--bg);border:1px solid var(--border);color:var(--primary)}.action-btn.secondary:hover{background:var(--bg-secondary)}.button-icon-small{height:14px;width:14px}.risk-factors-edit{margin-bottom:12px}.risk-factors-edit h4{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.edit-fields{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px}.edit-field{display:flex;flex-direction:column;gap:4px}.edit-field label{color:var(--text-secondary);font-size:12px;font-weight:500}.edit-field input{border:1px solid var(--border);font-size:14px;padding:6px}.edit-field input:focus{border-color:var(--primary);outline:none}.preview-factors{background:var(--bg-secondary);border:1px solid var(--border);margin-top:8px;padding:8px}.preview-factors strong{color:var(--text);display:block;font-size:12px;margin-bottom:6px}.preview-factors ul{list-style:none;margin:0;padding:0}.preview-factors li{color:var(--text);font-size:12px;margin-bottom:4px}.no-factors{color:var(--text-secondary);font-style:italic}.risk-settings-panel{background:var(--bg-secondary);border:1px solid var(--border);margin-bottom:16px;padding:16px}.settings-header{margin-bottom:16px}.settings-header h3{font-size:16px;margin-bottom:4px}.settings-header p{font-size:14px}.settings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:16px}.settings-section{background:var(--bg);border:1px solid var(--border);padding:12px}.settings-section h4{font-size:14px;margin-bottom:8px}.setting-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.setting-row:last-child{margin-bottom:0}.setting-row label{color:var(--text);font-size:13px;font-weight:500}.setting-row input{border:1px solid var(--border);font-size:14px;padding:6px;width:100px}.setting-row input:focus{border-color:var(--primary);outline:none}.readonly-value{color:var(--text-secondary);font-size:13px;font-style:italic}.settings-footer{border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding-top:16px}.close-settings-button,.reset-button{cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.reset-button{background:var(--bg);border:1px solid var(--border);color:var(--text)}.reset-button:hover{background:var(--bg-secondary)}.close-settings-button{background:var(--primary);border:none;color:#fff}.close-settings-button:hover{background:var(--primary-hover)}.risk-legend{background:var(--bg-secondary);border:1px solid var(--border);padding:16px}.risk-legend h3{font-size:16px;margin-bottom:12px}.legend-items{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.legend-item{align-items:center;background:var(--bg);display:flex;gap:8px;padding:8px}.legend-color,.legend-item{border:1px solid var(--border)}.legend-color{flex-shrink:0;height:16px;width:16px}.legend-item div:last-child{color:var(--text);font-size:13px}@media (max-width:768px){.matrix-grid{grid-template-columns:1fr}.risk-stats{grid-template-columns:repeat(2,1fr)}.edit-fields,.settings-grid{grid-template-columns:1fr}}.live-stream{background:var(--bg);border:1px solid var(--border);display:flex;flex-direction:column;height:calc(100vh - 120px);padding:20px}.stream-header{margin-bottom:16px}.stream-header h2{font-size:18px;margin-bottom:4px}.stream-header p{font-size:14px}.stream-container{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;padding:20px 0}.stream-card-full{background:var(--bg);border:1px solid var(--border);display:flex;flex-direction:column;max-width:100%;overflow:hidden;width:100%}.stream-preview-full{align-items:center;aspect-ratio:16/9;background:#000;display:flex;justify-content:center;position:relative;width:100%}.stream-video{height:100%;object-fit:contain;width:100%}.streams-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:16px}.stream-card{background:var(--bg);border:1px solid var(--border);overflow:hidden}.stream-card-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px}.stream-card-header h3{font-size:16px}.status-badge{border:1px solid var(--border);font-size:11px;padding:4px 8px}.stream-preview{background:var(--bg-secondary);padding-top:56.25%;position:relative;width:100%}.video-placeholder{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.play-overlay{display:none}.video-label{color:var(--text-secondary);font-size:14px}.stream-details{display:flex;flex-direction:column;gap:6px;padding:12px}.detail-item{font-size:13px}.detail-icon{display:none}.stream-description{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-bottom:12px;padding:0 12px}.stream-actions{border-top:1px solid var(--border);display:flex;gap:8px;padding:12px}.action-button{align-items:center;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:4px;justify-content:center;padding:8px 12px;text-decoration:none}.action-button.primary{background:var(--primary);border:none;color:#fff}.action-button.primary:hover{background:var(--primary-hover)}.action-button.secondary{background:var(--bg);border:1px solid var(--border);color:var(--primary)}.action-button.secondary:hover{background:var(--bg-secondary)}.button-icon{display:none}.stream-notes{background:var(--bg-secondary);border:1px solid var(--border);padding:16px}.stream-notes h3{font-size:16px;margin-bottom:12px}.stream-notes ul{list-style:none;margin:0;padding:0}.stream-notes li{color:var(--text-secondary);font-size:14px;line-height:1.5;padding:4px 0 4px 16px;position:relative}.stream-notes li:before{color:var(--primary);content:"•";left:0;position:absolute}.stream-form{padding:16px}.form-group input,.form-group textarea{border:1px solid var(--border);font-size:14px;padding:8px}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);outline:none}.cancel-button,.submit-button{border-radius:0}@media (max-width:768px){.streams-grid{grid-template-columns:1fr}}.missing-wall{background:var(--bg-secondary);min-height:100vh}.missing-header{background:var(--bg);border-bottom:1px solid var(--border);padding:20px 0;text-align:center}.missing-title{font-size:24px;margin-bottom:8px}.missing-subtitle{color:var(--text-secondary);font-size:14px;margin:0 auto;max-width:700px}.missing-main{padding:24px 0}.search-container{display:flex;justify-content:center;margin-bottom:24px}.search-box{max-width:500px;position:relative;width:100%}.search-input{border:1px solid var(--border);font-size:14px;padding:8px;width:100%}.search-input:focus{border-color:var(--primary);outline:none}.missing-dogs-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:24px}.missing-dog-card{background:var(--bg);border:1px solid var(--border);overflow:hidden}.missing-dog-card:hover{border-color:var(--primary)}.dog-photo-placeholder{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border);color:var(--text-secondary);display:flex;font-size:14px;height:200px;justify-content:center;overflow:hidden;width:100%}.dog-photo-placeholder img{height:100%;object-fit:cover;width:100%}.dog-info{padding:16px}.dog-name{font-size:18px;font-weight:600}.dog-details,.dog-name{margin-bottom:12px}.detail-item{color:var(--text);font-size:14px;margin-bottom:6px}.dog-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:12px;padding:8px}.contact-info,.dog-description{background:var(--bg-secondary);border:1px solid var(--border)}.contact-info{padding:12px}.contact-info strong{color:var(--text);display:block;font-size:13px;margin-bottom:6px}.contact-info p{color:var(--text-secondary);font-size:13px;margin:2px 0}.no-dogs{background:var(--bg);border:1px solid var(--border);grid-column:1/-1;padding:40px 20px;text-align:center}.no-dogs h3{font-size:18px;margin-bottom:8px}.loading,.no-dogs p{color:var(--text-secondary);font-size:14px}.loading{background:var(--bg);border:1px solid var(--border)}.click-hint{color:var(--primary);font-size:12px;font-style:italic;margin-top:8px}.modal-overlay{background:#000000b3}.modal-content{max-width:800px;position:relative}.modal-header h2{font-size:20px}.close-button{font-size:28px;height:32px;line-height:1;width:32px}.modal-photo{margin-bottom:20px;text-align:center}.modal-photo img{border:1px solid var(--border);border-radius:8px;max-height:300px;max-width:100%}.modal-section{margin-bottom:24px}.modal-section h3{border-bottom:1px solid var(--border);color:var(--text);font-size:16px;margin-bottom:12px;padding-bottom:8px}.info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{color:var(--text)}.info-item strong{color:var(--text-secondary)}.risk-factors-list{list-style:none;margin:0;padding:0}.risk-factors-list li{background:var(--bg-secondary);border-left:3px solid var(--primary);font-size:14px;margin-bottom:6px;padding:8px}.races-list{max-height:300px;overflow-y:auto}.race-item{background:var(--bg-secondary);border:1px solid var(--border);font-size:14px;margin-bottom:6px;padding:8px}.race-comments{color:var(--text-secondary);font-style:italic}.notes-list{max-height:300px;overflow-y:auto}.note-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;margin-bottom:8px;padding:12px}.note-item p{color:var(--text);font-size:14px;margin:0 0 6px}.note-item small{color:var(--text-secondary);font-size:12px}@media (max-width:768px){.missing-dogs-grid{grid-template-columns:1fr}.modal-content{border-radius:0;max-height:100vh;max-width:100%}.info-grid{grid-template-columns:1fr}}.user-management{background:var(--bg);border:1px solid var(--border);padding:20px}.access-denied{background:var(--bg-secondary);border:1px solid var(--border);padding:40px 20px}.access-denied h2{color:var(--danger);font-size:20px;margin-bottom:12px}.access-denied p{color:var(--text-secondary);font-size:14px}.management-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.management-header h2{font-size:18px;margin-bottom:4px}.add-button,.management-header p{font-size:14px}.add-button{align-items:center;background:var(--primary);border:none;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:6px;padding:8px 16px;white-space:nowrap}.add-button:hover{background:var(--primary-hover)}.user-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-bottom:16px}.stat-card{background:var(--bg-secondary);border:1px solid var(--border);padding:12px;text-align:center}.stat-value{color:var(--text);font-size:24px;font-weight:600;margin-bottom:4px}.stat-label{color:var(--text-secondary);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.search-bar{margin-bottom:16px;position:relative}.search-icon{display:none}.search-bar input{border:1px solid var(--border);font-size:14px;padding:8px;width:100%}.search-bar input:focus{border-color:var(--primary);outline:none}.users-table-container{border:1px solid var(--border);overflow-x:auto}.users-table{background:var(--bg);border-collapse:collapse;width:100%}.users-table thead{background:var(--bg-secondary)}.users-table th{font-size:12px;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.users-table td,.users-table th{border-bottom:1px solid var(--border);color:var(--text);padding:10px 12px}.users-table td{font-size:14px}.users-table tbody tr:hover{background:var(--bg-secondary)}.user-info{gap:8px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:var(--bg-secondary);border:1px solid var(--border);border-radius:50%;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.name-cell,.role-badge{font-weight:500}.role-badge{background:var(--bg-secondary);border:1px solid var(--border);display:inline-block;font-size:12px;padding:4px 8px}.action-buttons{display:flex;gap:4px}.delete-button,.edit-button{background:none;border:1px solid var(--border);cursor:pointer;font-size:12px;padding:4px 8px}.edit-button{color:var(--primary)}.edit-button:hover{background:var(--bg-secondary);border-color:var(--primary)}.delete-button{color:var(--danger)}.delete-button:hover{background:var(--bg-secondary);border-color:var(--danger)}.empty-state{color:var(--text-secondary);padding:40px;text-align:center}.modal-overlay{padding:20px}.modal-content{background:var(--bg);border:1px solid var(--border);width:100%}.modal-header{border-bottom:1px solid var(--border);padding:16px}.modal-header h3{font-size:18px}.close-button{color:var(--text-secondary);height:24px;width:24px}.close-button:hover{color:var(--text)}.user-form{padding:16px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-group label{color:var(--text);font-size:14px}.input-icon{display:none}.form-group input,.form-group select{border:1px solid var(--border);font-size:14px;padding:8px}.form-group input:focus,.form-group select:focus{border-color:var(--primary);outline:none}.form-hint{color:var(--text-secondary);font-size:12px}.role-descriptions{background:var(--bg-secondary);border:1px solid var(--border);margin-top:8px;padding:12px}.role-desc-item{color:var(--text-secondary);font-size:12px;line-height:1.5;margin-bottom:4px}.role-desc-item:last-child{margin-bottom:0}.role-desc-item strong{color:var(--text)}.form-actions{border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:16px}.cancel-button,.submit-button{cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.cancel-button{background:var(--bg);border:1px solid var(--border);color:var(--text)}.cancel-button:hover{background:var(--bg-secondary)}.submit-button{background:var(--primary);border:none;color:#fff}.submit-button:hover{background:var(--primary-hover)}@media (max-width:768px){.users-table{font-size:12px}.users-table td,.users-table th{padding:8px}.user-stats{grid-template-columns:repeat(2,1fr)}}.task-management{margin:0 auto;max-width:1200px;padding:20px}.task-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:30px}.task-header>div{flex:1 1}.task-header h1{color:#1f2937;margin-bottom:10px}.task-header p{color:#6b7280}.access-denied{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:60px 20px;text-align:center}.access-denied h2{color:#dc2626;margin-bottom:10px}.loading{color:#6b7280;padding:40px;text-align:center}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;margin-bottom:20px;padding:12px 16px}.tasks-list{grid-gap:20px;display:grid;gap:20px}.task-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.task-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.task-card-header h3{color:#1f2937;margin:0}.task-type{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.task-type.sync{background:#dbeafe;color:#1e40af}.task-description{color:#6b7280;margin-bottom:15px}.task-info{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.info-item{font-size:14px}.info-item strong{color:#374151;margin-right:8px}.status-badge{border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-left:8px;padding:4px 12px;text-transform:uppercase}.task-actions{display:flex;flex-wrap:wrap;gap:10px}.btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover{background:#e5e7eb}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.modal-header h2{color:#1f2937;margin:0}.close-button{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.close-button:hover{color:#1f2937}.modal-body{padding:20px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-weight:500;margin-bottom:8px}.form-group input[type=text]{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.form-group small{color:#6b7280;display:block;font-size:12px;margin-top:4px}.form-group input[type=checkbox]{margin-right:8px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.executions-table{border-collapse:collapse;width:100%}.executions-table td,.executions-table th{border-bottom:1px solid #e5e7eb;padding:12px;text-align:left}.executions-table th{background:#f9fafb;color:#374151;font-weight:600}.executions-table tr:hover{background:#f9fafb}.no-tasks{color:#6b7280;padding:60px 20px;text-align:center}.alerts-container{margin:0 auto;max-width:1200px;padding:24px}.alerts-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.alerts-header h2{color:var(--text);font-size:24px;margin:0 0 8px}.alerts-header p{color:var(--text-secondary);font-size:14px;margin:0}.mark-all-read-button{background:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .15s}.mark-all-read-button:hover{background:#1d4ed8;background:var(--primary-dark,#1d4ed8)}.alerts-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:24px}.alerts-stats .stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px}.alerts-stats .stat-label{color:var(--text-secondary);font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.alerts-stats .stat-value{color:var(--text);font-size:24px;font-weight:600}.alerts-stats .stat-value.critical,.alerts-stats .stat-value.unread{color:#dc2626}.alerts-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.alerts-filters select{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:14px;padding:8px 12px}.alerts-filters select:focus{border-color:var(--primary);outline:none}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;transition:all .15s}.alert-item.unread{background:var(--bg);border-left:4px solid var(--primary)}.alert-item.read{opacity:.8}.alert-item.severity-critical{border-left-color:#dc2626}.alert-item.severity-high{border-left-color:#f59e0b}.alert-item.severity-medium{border-left-color:#3b82f6}.alert-content{display:flex;flex-direction:column;gap:8px}.alert-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.alert-type-badge{background:var(--bg);border:1px solid var(--border);color:var(--text)}.alert-type-badge,.severity-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 12px}.severity-badge{text-transform:capitalize}.severity-badge.severity-critical{background:#fee2e2;color:#dc2626}.severity-badge.severity-high{background:#fef3c7;color:#d97706}.severity-badge.severity-medium{background:#dbeafe;color:#2563eb}.unread-indicator{color:var(--primary);font-size:12px;margin-left:auto}.alert-message{color:var(--text);font-size:15px;line-height:1.5}.alert-dog{color:var(--text-secondary);font-size:14px}.alert-dog strong{color:var(--text);margin-right:8px}.alert-metadata{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:13px;gap:16px}.alert-metadata span{background:var(--bg);border-radius:4px;padding:4px 8px}.alert-footer{align-items:center;border-top:1px solid var(--border);display:flex;justify-content:space-between;margin-top:8px;padding-top:8px}.alert-time{color:var(--text-secondary);font-size:12px}.mark-read-button{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s}.mark-read-button:hover{background:var(--bg-secondary);border-color:var(--primary);color:var(--primary)}.mark-unread-button{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s}.mark-unread-button:hover{background:var(--bg-secondary);border-color:var(--text-secondary);color:var(--text)}.view-dog-button{background:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .15s}.view-dog-button:hover{background:#1d4ed8;background:var(--primary-dark,#1d4ed8)}.loading,.no-alerts{color:var(--text-secondary);padding:48px;text-align:center}.pagination{align-items:center;display:flex;gap:16px;justify-content:center;margin-top:24px;padding:16px}.pagination button{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .15s}.pagination button:hover:not(:disabled){background:var(--bg);border-color:var(--primary)}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:var(--text-secondary);font-size:14px}.date-input,.search-input{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);flex:1 1;font-size:14px;min-width:150px;padding:8px 12px}.date-input:focus,.search-input:focus{border-color:var(--primary);outline:none}.export-button{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .15s}.export-button:hover{background:var(--bg);border-color:var(--primary);color:var(--primary)}.bulk-actions-bar{align-items:center;background:var(--primary);border-radius:8px;color:#fff;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.bulk-actions-bar span{font-weight:500}.bulk-actions-bar button{background:#fff;border:none;border-radius:4px;color:var(--primary);cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .15s}.bulk-actions-bar button:hover{background:var(--bg);opacity:.9}.select-all-bar{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px 8px 0 0;margin-bottom:-12px;padding:8px 16px}.select-all-bar label{align-items:center;color:var(--text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px}.select-all-bar input[type=checkbox]{cursor:pointer;height:18px;width:18px}.alert-item{align-items:flex-start;display:flex;gap:12px}.alert-checkbox{padding-top:2px}.alert-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.alert-group{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;margin-bottom:12px;overflow:hidden}.alert-group-header{align-items:center;background:var(--bg);border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:12px 16px;transition:background-color .15s}.alert-group-header:hover{background:var(--bg-secondary)}.alert-group-content{display:flex;flex-direction:column;gap:12px;padding:12px}.alert-group-content .alert-item{border-radius:6px;margin:0}.comments-button{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s}.comments-button:hover{background:var(--bg-secondary);border-color:var(--primary);color:var(--primary)}.alert-comments-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.comments-list{margin-bottom:16px;max-height:300px;overflow-y:auto}.comment-item{background:var(--bg);border:1px solid var(--border);border-radius:6px;margin-bottom:8px;padding:12px}.comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.comment-header strong{color:var(--text);font-size:13px}.comment-time{color:var(--text-secondary);font-size:11px}.comment-text{color:var(--text);font-size:14px;line-height:1.5;white-space:pre-wrap}.no-comments{color:var(--text-secondary);font-size:13px;font-style:italic;padding:16px;text-align:center}.add-comment{display:flex;flex-direction:column;gap:8px}.add-comment textarea{background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:inherit;font-size:14px;padding:8px 12px;resize:vertical;width:100%}.add-comment textarea:focus{border-color:var(--primary);outline:none}.add-comment button{align-self:flex-end;background:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px;transition:all .15s}.add-comment button:hover{background:#1d4ed8;background:var(--primary-dark,#1d4ed8)}.home-page{background:var(--bg-secondary);min-height:100vh}.home-header{background:var(--bg);border-bottom:1px solid var(--border);padding:20px 0;text-align:center}.home-title{align-items:center;display:flex;font-size:24px;gap:8px;justify-content:center;margin-bottom:8px}.title-icon{display:none}.home-subtitle{color:var(--text-secondary);font-size:14px;margin:0 auto;max-width:600px}.home-main{padding:24px 0}.container{margin:0 auto;max-width:1200px;padding:0 20px}.feature-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.feature-card{background:var(--bg);border:1px solid var(--border);color:inherit;display:block;padding:16px;text-decoration:none;transition:border-color .15s}.feature-card:hover{border-color:var(--primary)}.feature-icon{display:none}.feature-card h3{font-size:16px;margin-bottom:8px}.feature-card p{font-size:14px}.home-info{background:var(--bg);border:1px solid var(--border);padding:20px}.home-info h2{font-size:20px;margin-bottom:16px}.home-info ul{list-style:none;padding:0}.home-info li{border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:14px;padding:8px 0 8px 20px;position:relative}.home-info li:last-child{border-bottom:none}.home-info li:before{color:var(--primary);content:"•";font-weight:700;left:0;position:absolute}.home-info strong{color:var(--text)}@media (max-width:768px){.feature-cards{grid-template-columns:1fr}}
/*# sourceMappingURL=main.11af9025.css.map*/