*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fa;color:#2c3e50}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:#fff;box-shadow:0 2px 8px #00000014;position:sticky;top:0;z-index:100}.header-content{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;max-width:1400px;margin:0 auto;width:100%}.app-title{font-size:1.5rem;font-weight:600;color:#2c3e50}.health-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500}.health-indicator.healthy{background:#e8f5e9;color:#2e7d32}.health-indicator.degraded{background:#fff3e0;color:#ef6c00}.health-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.main-nav{display:flex;gap:.5rem;padding:0 2rem 1rem;max-width:1400px;margin:0 auto;width:100%;overflow-x:auto}.nav-item{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;text-decoration:none;color:#546e7a;font-weight:500;transition:all .2s;white-space:nowrap}.nav-item:hover{background:#f5f7fa;color:#2c3e50}.nav-item.active{background:#e3f2fd;color:#1976d2}.nav-icon{font-size:1.25rem}.nav-label{font-size:.95rem}.app-main{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.page{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-header{margin-bottom:2rem}.page-header h2{font-size:2rem;font-weight:600;color:#2c3e50;margin-bottom:.5rem}.page-subtitle{color:#78909c;font-size:1rem}.app-footer{background:#fff;padding:1.5rem 2rem;text-align:center;color:#90a4ae;font-size:.875rem;border-top:1px solid #eceff1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 8px #0000000f;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-icon{font-size:3rem;opacity:.8}.stat-content{flex:1}.stat-value{font-size:2.5rem;font-weight:700;color:#1976d2;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.95rem;color:#78909c;font-weight:500}.stat-detail,.stat-link{display:block;margin-top:.45rem;font-size:.8rem;color:#64748b}.stat-link{color:#1d4ed8;text-decoration:none}.stat-link:hover{text-decoration:underline}.section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000f}.section h3{font-size:1.25rem;font-weight:600;color:#2c3e50;margin-bottom:1.5rem}.changes-list{display:flex;flex-direction:column;gap:1rem}.change-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #1976d2;text-decoration:none}.change-type{font-weight:600;color:#1976d2;min-width:120px}.change-description{flex:1;color:#546e7a}.change-time{font-size:.875rem;color:#90a4ae}.quick-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.quick-nav-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;text-decoration:none;color:#2c3e50;transition:all .2s}.quick-nav-item:hover{background:#e3f2fd;transform:translateY(-2px)}.quick-nav-item .icon{font-size:2rem}.quick-nav-item .label{font-weight:600;font-size:1.1rem}.filter-bar{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.filter-btn{padding:.75rem 1.5rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;color:#546e7a}.filter-btn:hover{border-color:#1976d2;color:#1976d2}.filter-btn.active{background:#1976d2;border-color:#1976d2;color:#fff}.candidates-list{display:flex;flex-direction:column;gap:1.5rem}.candidate-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;border:2px solid transparent;transition:all .2s}.candidate-card:hover{border-color:#1976d2;box-shadow:0 4px 12px #0000001a}.candidate-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.candidate-title{display:flex;align-items:center;gap:.75rem}.direction-icon{font-size:1.5rem}.candidate-title h3{font-size:1.25rem;font-weight:600;color:#2c3e50}.priority-badge{padding:.5rem 1rem;border-radius:20px;color:#fff;font-weight:600;font-size:.875rem}.candidate-meta{display:flex;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}.meta-item{display:flex;gap:.5rem;font-size:.95rem;color:#546e7a}.meta-item strong{color:#2c3e50}.candidate-actions{display:flex;gap:.75rem;flex-wrap:wrap}.reviews-list{display:flex;flex-direction:column;gap:1.5rem}.review-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.review-header h3{font-size:1.25rem;font-weight:600;color:#2c3e50}.status-badge{padding:.5rem 1rem;border-radius:20px;color:#fff;font-weight:600;font-size:.875rem}.review-meta{display:flex;gap:2rem;margin-bottom:1rem;flex-wrap:wrap}.review-actions{display:flex;gap:.75rem;flex-wrap:wrap}.portfolio-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;display:flex;align-items:center;gap:1rem;transition:transform .2s,box-shadow .2s}.summary-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.summary-card.summary-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.summary-card.summary-secondary{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.summary-card.summary-tertiary{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.summary-icon{font-size:3rem;opacity:.9}.summary-content{flex:1}.summary-label{font-size:.9rem;opacity:.9;margin-bottom:.5rem;font-weight:500}.summary-value{font-size:2rem;font-weight:700;line-height:1}.portfolio-positions{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000f;margin-bottom:2rem}.section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.section-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#2c3e50}.positions-table table{width:100%;border-collapse:collapse}.positions-table thead{background:#f8f9fa}.positions-table th{padding:1rem;text-align:left;font-weight:600;color:#546e7a;font-size:.875rem;border-bottom:2px solid #e0e0e0}.positions-table td{padding:1rem;border-bottom:1px solid #f0f0f0;color:#2c3e50}.positions-table tbody tr{transition:background .2s}.positions-table tbody tr:hover{background:#f8f9fa}.position-security{font-weight:600}.security-info{display:flex;flex-direction:column;gap:.25rem}.security-symbol{color:#1976d2;font-size:1rem;font-weight:600}.security-name{color:#78909c;font-size:.85rem;font-weight:400}.market-badge{display:inline-block;padding:.25rem .75rem;background:#e3f2fd;color:#1976d2;border-radius:6px;font-size:.8rem;font-weight:600}.position-quantity{font-weight:600;color:#2c3e50}.position-cost{color:#78909c}.position-local{color:#2c3e50}.position-cny{font-weight:600;color:#1976d2}.position-gain,.position-actions{text-align:center}.gain-badge{display:inline-block;padding:.25rem .75rem;background:#fff3e0;color:#ef6c00;border-radius:6px;font-size:.8rem;font-weight:600}.btn-icon{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:4px;transition:background .2s;font-size:1.2rem}.btn-icon:hover{background:#f5f5f5}.btn-delete:hover{background:#ffebee}.snapshot-selector-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.snapshot-selector-header label{display:flex;align-items:center;gap:.5rem}.snapshot-selector-header select{padding:.5rem;border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem}.btn-small{padding:.5rem 1rem;font-size:.85rem}.btn-danger{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.btn-danger:hover{background:#ffcdd2;border-color:#e57373}.portfolio-form-container{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000f}.form-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.form-header h3{font-size:1.5rem;font-weight:600;color:#2c3e50;margin:0 0 .5rem}.form-subtitle{color:#78909c;font-size:.95rem;margin:0}.portfolio-form{display:flex;flex-direction:column;gap:1.5rem}.form-section{margin-bottom:1rem}.form-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:500;color:#2c3e50;margin-bottom:.5rem}.label-icon{font-size:1.2rem}.search-container{position:relative}.search-input{width:100%;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s}.search-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.search-loading{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#78909c;font-size:.875rem}.search-results{position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:300px;overflow-y:auto;z-index:10}.search-result-item{padding:1rem;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.search-result-item:hover{background:#f8f9fa}.search-result-item:last-child{border-bottom:none}.result-main{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.result-symbol{font-weight:600;color:#1976d2;font-size:1rem}.result-market{font-size:.75rem;color:#fff;background:#78909c;padding:.125rem .5rem;border-radius:4px}.result-company{color:#2c3e50;font-size:.95rem;margin-bottom:.25rem}.result-meta{display:flex;gap:1rem;font-size:.8rem;color:#78909c}.selected-security{margin-top:.5rem;padding:.75rem;background:#e8f5e9;border-radius:6px;color:#2e7d32;font-size:.9rem;font-weight:500}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-field{display:flex;flex-direction:column}.form-input{padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s}.form-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.form-textarea{padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;transition:all .2s}.form-textarea:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1.5rem;border-top:2px solid #f0f0f0}.btn-large{padding:.75rem 2rem;font-size:1rem}.sync-result{margin-bottom:1.5rem;padding:1rem 1.5rem;border-radius:8px;animation:slideIn .3s ease-out}.sync-result.success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.sync-result.error{background:#ffebee;border:1px solid #f44336;color:#c62828}.sync-result-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.sync-icon{font-size:1.2rem}.sync-stats{margin-top:.5rem;font-weight:500}.sync-errors{margin-top:.5rem;padding-left:1.5rem;font-size:.9rem}.sync-errors li{margin-bottom:.25rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.positions-table{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background:#f8f9fa}th{padding:1rem;text-align:left;font-weight:600;color:#546e7a;font-size:.875rem;border-bottom:2px solid #e0e0e0}td{padding:1rem;border-bottom:1px solid #f0f0f0;color:#2c3e50}tbody tr:hover{background:#f8f9fa}.positive{color:#2e7d32;font-weight:600}.negative{color:#c62828;font-weight:600}.snapshots-list{display:flex;flex-direction:column;gap:.75rem}.snapshot-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:all .2s}.snapshot-item:hover{background:#e3f2fd}.snapshot-date{font-weight:600;color:#2c3e50}.snapshot-info{color:#78909c;font-size:.95rem}.companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.company-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;transition:all .2s}.company-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.company-header h3{font-size:1.25rem;font-weight:600;color:#2c3e50;margin-bottom:.25rem}.company-en{color:#90a4ae;font-size:.875rem}.company-stats{display:flex;gap:2rem;margin:1.5rem 0}.company-stats .stat{display:flex;flex-direction:column;gap:.25rem}.company-stats .stat-value{font-size:1.5rem;font-weight:700;color:#1976d2}.company-stats .stat-label{font-size:.875rem;color:#78909c}.company-assessment{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.assessment-label{color:#78909c}.assessment-status{font-weight:600;padding:.25rem .75rem;border-radius:12px;background:#e3f2fd;color:#1976d2}.assessment-date{color:#90a4ae;margin-left:auto}.company-actions{display:flex;gap:.75rem}.models-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.model-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;transition:all .2s}.model-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.model-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.model-header h3{font-size:1.25rem;font-weight:600;color:#2c3e50}.version-badge{padding:.25rem .75rem;background:#e3f2fd;color:#1976d2;border-radius:12px;font-size:.875rem;font-weight:600}.model-description{color:#546e7a;line-height:1.6;margin-bottom:1rem}.model-stats{margin:1rem 0}.model-stats .stat{display:flex;align-items:baseline;gap:.5rem}.model-stats .stat-value{font-size:1.5rem;font-weight:700;color:#1976d2}.model-stats .stat-label{color:#78909c}.model-status{margin:1rem 0}.status-indicator{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600}.status-indicator.active{background:#e8f5e9;color:#2e7d32}.status-indicator.draft{background:#fff3e0;color:#ef6c00}.model-actions{display:flex;gap:.75rem}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-bottom:2rem}.health-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.health-header h3{font-size:1.1rem;font-weight:600;color:#2c3e50}.health-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.detail-item{display:flex;justify-content:space-between;font-size:.95rem}.detail-item .label{color:#78909c}.detail-item .value{color:#2c3e50;font-weight:500}.detail-item .value.error{color:#c62828}.health-actions{display:flex;gap:.75rem}.test-result{margin-top:1rem;padding:.75rem;border-radius:6px;font-size:.9rem}.test-result.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.test-result.error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.health-expanded{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.expanded-section{margin-bottom:1rem}.expanded-section h4{font-size:.95rem;font-weight:600;color:#2c3e50;margin-bottom:.5rem}.capability-list,.issue-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.capability-list li,.issue-list li{font-size:.9rem;color:#546e7a;padding:.25rem 0}.issue-type{display:inline-block;padding:.15rem .5rem;border-radius:4px;background:#fff3e0;color:#ef6c00;font-size:.8rem;font-weight:500}.coverage-gaps{display:flex;flex-direction:column;gap:1rem}.gap-item{padding:1rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #4caf50}.gap-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.gap-status{font-size:1.25rem}.gap-name{font-weight:600;font-size:1.1rem;color:#2c3e50}.gap-description{color:#546e7a;line-height:1.6}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-primary{background:#1976d2;color:#fff}.btn-primary:hover{background:#1565c0;transform:translateY(-1px)}.btn-secondary{background:#e0e0e0;color:#2c3e50}.btn-secondary:hover{background:#d0d0d0}.btn-danger{background:#ef5350;color:#fff}.btn-danger:hover{background:#e53935}.btn-success{background:#10b981;color:#fff}.btn-success:hover{background:#059669}.btn-warning{background:#f59e0b;color:#fff}.btn-warning:hover{background:#d97706}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.tab-bar{display:flex;gap:4px;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.tab-btn{padding:.6rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:#64748b;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .15s ease}.tab-btn:hover{color:#1e293b;background:#f8fafc}.tab-btn.active{color:#1976d2;border-bottom-color:#1976d2}.create-task-form{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;max-width:640px;display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-textarea{resize:vertical;min-height:100px;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-size:.85rem}.task-actions-bar{display:flex;flex-wrap:wrap;gap:8px}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1.25rem;color:#546e7a;margin-bottom:.5rem}.empty-hint{color:#90a4ae;font-size:1rem;margin-bottom:2rem}.empty-info{text-align:left;max-width:600px;margin:2rem auto;padding:2rem;background:#f8f9fa;border-radius:8px}.empty-info h4{font-size:1.1rem;color:#2c3e50;margin-bottom:1rem;margin-top:1.5rem}.empty-info h4:first-child{margin-top:0}.empty-info ul{list-style:none;padding:0}.empty-info li{padding:.75rem 0;border-bottom:1px solid #e0e0e0;color:#546e7a}.empty-info li:last-child{border-bottom:none}.empty-info p{font-size:.875rem;color:#90a4ae;margin-top:.25rem;margin-bottom:0}.loading{display:flex;align-items:center;justify-content:center;min-height:400px;font-size:1.25rem;color:#78909c}.error-message{padding:1rem;background:#ffebee;color:#c62828;border-radius:8px;margin-bottom:1rem}@media (max-width: 768px){.header-content{padding:1rem}.app-title{font-size:1.25rem}.main-nav{padding:0 1rem 1rem}.nav-item{padding:.5rem 1rem}.app-main{padding:1rem}.page-header h2{font-size:1.5rem}.stats-grid{grid-template-columns:1fr}.stat-value{font-size:2rem}.change-item{align-items:flex-start;flex-direction:column;gap:.45rem}.change-type{min-width:0}.candidate-meta,.review-meta{flex-direction:column;gap:.5rem}.companies-grid,.models-grid,.health-grid{grid-template-columns:1fr}}[class~=block]{display:block}[class~=hidden]{display:none}[class~=flex]{display:flex}[class~=flex-wrap]{flex-wrap:wrap}[class~=grid]{display:grid}[class~=flex-1]{flex:1 1 0%}[class~=items-start]{align-items:flex-start}[class~=items-center]{align-items:center}[class~=items-end]{align-items:flex-end}[class~=justify-between]{justify-content:space-between}[class~=justify-center]{justify-content:center}[class~=self-center]{align-self:center}[class~=grid-cols-1]{grid-template-columns:minmax(0,1fr)}[class~=grid-cols-2]{grid-template-columns:repeat(2,minmax(0,1fr))}[class~=grid-cols-3]{grid-template-columns:repeat(3,minmax(0,1fr))}[class~=col-span-2]{grid-column:span 2 / span 2}[class~="gap-1.5"]{gap:.375rem}[class~=gap-2]{gap:.5rem}[class~=gap-3]{gap:.75rem}[class~=gap-4]{gap:1rem}[class~=gap-6]{gap:1.5rem}[class~="space-y-0.5"]>*+*{margin-top:.125rem}[class~=space-y-2]>*+*{margin-top:.5rem}[class~=space-y-3]>*+*{margin-top:.75rem}[class~=space-y-4]>*+*{margin-top:1rem}[class~=space-y-6]>*+*{margin-top:1.5rem}[class~=p-2]{padding:.5rem}[class~=p-3]{padding:.75rem}[class~=p-4]{padding:1rem}[class~=p-6]{padding:1.5rem}[class~="px-1.5"]{padding-left:.375rem;padding-right:.375rem}[class~=px-2]{padding-left:.5rem;padding-right:.5rem}[class~="px-2.5"]{padding-left:.625rem;padding-right:.625rem}[class~=px-3]{padding-left:.75rem;padding-right:.75rem}[class~=px-4]{padding-left:1rem;padding-right:1rem}[class~="py-0.5"]{padding-top:.125rem;padding-bottom:.125rem}[class~=py-1]{padding-top:.25rem;padding-bottom:.25rem}[class~="py-1.5"]{padding-top:.375rem;padding-bottom:.375rem}[class~=py-2]{padding-top:.5rem;padding-bottom:.5rem}[class~=py-3]{padding-top:.75rem;padding-bottom:.75rem}[class~=py-8]{padding-top:2rem;padding-bottom:2rem}[class~=py-12]{padding-top:3rem;padding-bottom:3rem}[class~=py-16]{padding-top:4rem;padding-bottom:4rem}[class~=pl-4]{padding-left:1rem}[class~=pt-3]{padding-top:.75rem}[class~=pt-4]{padding-top:1rem}[class~="mt-0.5"]{margin-top:.125rem}[class~=mt-1]{margin-top:.25rem}[class~=mt-2]{margin-top:.5rem}[class~=mt-3]{margin-top:.75rem}[class~=mt-6]{margin-top:1.5rem}[class~=mb-1]{margin-bottom:.25rem}[class~=mb-2]{margin-bottom:.5rem}[class~=mb-3]{margin-bottom:.75rem}[class~=mb-4]{margin-bottom:1rem}[class~=ml-auto]{margin-left:auto}[class~=mx-auto]{margin-left:auto;margin-right:auto}[class~=w-3],[class~=h-3]{width:.75rem;height:.75rem}[class~=w-full]{width:100%}[class~=max-w-lg]{max-width:32rem}[class~=max-w-2xl]{max-width:42rem}[class~=max-h-96]{max-height:24rem}[class~="max-h-[80vh]"]{max-height:80vh}[class~="max-h-[90vh]"]{max-height:90vh}[class~=overflow-y-auto]{overflow-y:auto}[class~=fixed]{position:fixed}[class~=sticky]{position:sticky}[class~=inset-0]{top:0;right:0;bottom:0;left:0}[class~=top-0]{top:0}[class~=z-50]{z-index:200}[class~=bg-white]{background-color:#fff}[class~=bg-gray-50]{background-color:#f8fafc}[class~=bg-gray-100]{background-color:#f1f5f9}[class~=bg-gray-200]{background-color:#e2e8f0}[class~=bg-blue-50]{background-color:#eff6ff}[class~=bg-blue-600]{background-color:#2563eb}[class~=bg-green-50]{background-color:#f0fdf4}[class~=bg-green-600]{background-color:#16a34a}[class~=bg-amber-50]{background-color:#fffbeb}[class~=bg-amber-500]{background-color:#f59e0b}[class~=bg-amber-600]{background-color:#d97706}[class~=bg-red-50]{background-color:#fef2f2}[class~=bg-red-500]{background-color:#ef4444}[class~=bg-black]{background-color:#000}[class~="bg-black/40"]{background-color:#0f172a85}[class~=bg-opacity-50]{background-color:#00000080}[class~=text-white]{color:#fff}[class~=text-gray-400]{color:#94a3b8}[class~=text-gray-500]{color:#64748b}[class~=text-gray-600]{color:#475569}[class~=text-gray-700]{color:#334155}[class~=text-gray-800]{color:#1e293b}[class~=text-gray-900]{color:#0f172a}[class~=text-blue-700]{color:#1d4ed8}[class~=text-blue-900]{color:#1e3a8a}[class~=text-green-700]{color:#15803d}[class~=text-amber-600]{color:#d97706}[class~=text-amber-700]{color:#b45309}[class~=text-red-600]{color:#dc2626}[class~=text-red-700]{color:#b91c1c}[class~=text-red-800]{color:#991b1b}[class~=text-xs]{font-size:.75rem;line-height:1rem}[class~=text-sm]{font-size:.875rem;line-height:1.25rem}[class~=text-lg]{font-size:1.125rem;line-height:1.75rem}[class~=text-xl]{font-size:1.25rem;line-height:1.75rem}[class~=text-2xl]{font-size:1.5rem;line-height:2rem}[class~=text-3xl]{font-size:1.875rem;line-height:2.25rem}[class~=text-5xl]{font-size:3rem;line-height:1}[class~=font-medium]{font-weight:500}[class~=font-semibold]{font-weight:600}[class~=font-bold]{font-weight:700}[class~=font-mono]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}[class~=leading-none]{line-height:1}[class~=text-center]{text-align:center}[class~=text-left]{text-align:left}[class~=underline]{text-decoration:underline}[class~=whitespace-pre-wrap]{white-space:pre-wrap}[class~=line-clamp-2]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}[class~=border]{border:1px solid #e2e8f0}[class~=border-b]{border-bottom:1px solid #e2e8f0}[class~=border-t]{border-top:1px solid #e2e8f0}[class~=border-l-2]{border-left:2px solid #bfdbfe}[class~=border-gray-100]{border-color:#f1f5f9}[class~=border-gray-200]{border-color:#e2e8f0}[class~=border-gray-300]{border-color:#cbd5e1}[class~=border-blue-200]{border-color:#bfdbfe}[class~=border-red-200]{border-color:#fecaca}[class~=rounded]{border-radius:.25rem}[class~=rounded-lg]{border-radius:.625rem}[class~=rounded-xl]{border-radius:.875rem}[class~=rounded-full]{border-radius:9999px}[class~=rounded-t-2xl]{border-radius:1rem 1rem 0 0}[class~=shadow-2xl]{box-shadow:0 25px 50px -12px #0f172a4d}[class~=cursor-pointer]{cursor:pointer}[class~=transition-shadow]{transition:box-shadow .18s ease}[class~=transition-transform]{transition:transform .18s ease}[class~="hover:shadow-md"]:hover{box-shadow:0 10px 24px #0f172a1f}[class~="hover:bg-gray-200"]:hover{background:#e2e8f0}[class~="hover:bg-gray-300"]:hover{background:#cbd5e1}[class~="hover:bg-blue-100"]:hover{background:#dbeafe}[class~="hover:bg-blue-700"]:hover{background:#1d4ed8}[class~="hover:bg-green-100"]:hover{background:#dcfce7}[class~="hover:bg-green-700"]:hover{background:#15803d}[class~="hover:bg-amber-100"]:hover{background:#fef3c7}[class~="hover:bg-amber-600"]:hover,[class~="hover:bg-amber-700"]:hover{background:#b45309}[class~="hover:bg-red-100"]:hover{background:#fee2e2}[class~="hover:bg-red-600"]:hover{background:#dc2626}[class~="hover:text-gray-600"]:hover{color:#475569}[class~="disabled:opacity-50"]:disabled{opacity:.5;cursor:not-allowed}[class~="active:scale-95"]:active{transform:scale(.98)}[class~=animate-spin]{display:inline-block;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner,.success-banner{border-radius:8px;padding:.875rem 1rem;margin-bottom:1rem}.error-banner{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.success-banner{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.system-status{display:flex;flex-direction:column;gap:1rem}.component-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.component-card{border:1px solid #e2e8f0;border-radius:10px;padding:1rem;background:#f8fafc}.component-card.healthy{border-left:4px solid #22c55e}.component-card.unhealthy{border-left:4px solid #ef4444}.component-name{font-size:.8rem;color:#64748b;margin-bottom:.35rem}.component-status{font-weight:600}.component-reason{margin-top:.5rem;color:#64748b;font-size:.8rem;line-height:1.4}.probe-section{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.probe-result{color:#475569;font-size:.875rem}.probe-error{color:#b91c1c;font-size:.875rem}.evidence-workspace select,.evidence-workspace input:not([type=file]){width:100%;min-height:2.5rem;margin-top:.35rem;padding:.55rem .65rem;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#1e293b}.evidence-workspace label{display:block;color:#475569;font-size:.875rem}.parse-status-card{display:flex;flex-direction:column;gap:.3rem;padding:.75rem;border:1px solid #dbeafe;border-radius:8px;background:#eff6ff;color:#334155;font-size:.78rem}.parse-status-card.completed{border-color:#bbf7d0;background:#f0fdf4}.parse-status-card.failed{border-color:#fecaca;background:#fef2f2;color:#991b1b}@media (min-width: 768px){[class~="md:flex"]{display:flex}[class~="md:hidden"]{display:none}[class~="md:items-center"]{align-items:center}[class~="md:grid-cols-2"]{grid-template-columns:repeat(2,minmax(0,1fr))}[class~="md:grid-cols-4"]{grid-template-columns:repeat(4,minmax(0,1fr))}[class~="md:max-w-lg"]{max-width:32rem}[class~="md:rounded-2xl"]{border-radius:1rem}}@media (min-width: 1024px){[class~="lg:grid-cols-3"]{grid-template-columns:repeat(3,minmax(0,1fr))}[class~="lg:col-span-1"]{grid-column:span 1 / span 1}}@media (max-width: 767px){[class~=p-6]{padding:.25rem}[class~=grid-cols-2],[class~=grid-cols-3]{grid-template-columns:minmax(0,1fr)}[class~=col-span-2]{grid-column:span 1 / span 1}.component-grid{grid-template-columns:1fr}.evidence-header{flex-direction:column}.evidence-header>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr}.main-nav{scrollbar-width:none}.nav-label{font-size:.86rem}}.page-actions{display:flex;gap:.75rem;align-items:center}.announcement-filters{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1rem}.announcement-count{font-size:.85rem;color:#64748b;font-weight:500}.announcements-list{display:flex;flex-direction:column;gap:.875rem}.announcement-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem 1.5rem;transition:border-color .18s ease,box-shadow .18s ease}.announcement-card:hover{border-color:#94a3b8;box-shadow:0 4px 16px #0f172a0f}.announcement-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.announcement-title-row{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;flex-wrap:wrap}.exchange-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid;white-space:nowrap;flex-shrink:0}.exchange-icon{font-size:.9rem;line-height:1}.announcement-title{font-size:1rem;font-weight:600;color:#1e293b;line-height:1.45;margin:0;flex:1;min-width:0}.announcement-badges{display:flex;gap:.4rem;flex-wrap:wrap;flex-shrink:0}.status-pill{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:500;white-space:nowrap}.status-pill-success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.status-pill-pending{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.status-pill-info{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.status-pill-warn{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.announcement-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem 1.5rem;padding:.875rem 1rem;background:#f8fafc;border-radius:8px;margin-bottom:1rem}.meta-cell{display:flex;flex-direction:column;gap:.2rem;min-width:0}.meta-cell .meta-label{font-size:.7rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.meta-cell .meta-value-text{font-size:.875rem;color:#334155;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announcement-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.btn-outline{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .9rem;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#334155;font-size:.82rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .15s ease}.btn-outline:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .9rem;border:1px solid transparent;border-radius:7px;background:transparent;color:#64748b;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-ghost:hover{background:#f1f5f9;color:#1e293b}.evidence-guide ol,.evidence-guide ul{padding-left:1.5rem;margin:.5rem 0}.evidence-guide li{margin-bottom:.5rem;line-height:1.6}.evidence-guide ol{list-style-type:decimal}.evidence-guide ul{list-style-type:disc}.evidence-material-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.875rem;cursor:pointer;transition:all .18s ease}.evidence-material-card:hover{border-color:#94a3b8;box-shadow:0 2px 8px #0f172a14}.evidence-material-card.selected{border-color:#3b82f6;background:#eff6ff}.evidence-material-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.evidence-material-title{font-size:.875rem;font-weight:600;color:#1e293b;line-height:1.4;flex:1;min-width:0}.evidence-material-meta{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#64748b}.evidence-announcement-link{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;background:#f0fdf4;color:#15803d;border-radius:4px;font-size:.7rem;font-weight:500;margin-top:.25rem;text-decoration:none;transition:background .15s ease}.evidence-announcement-link:hover{background:#dcfce7}@media (max-width: 640px){.announcement-card-header{flex-direction:column;align-items:flex-start}.announcement-meta-grid{grid-template-columns:repeat(2,1fr)}}.mapping-form{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000000f}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.form-grid label{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:#546e7a;font-weight:500}.form-grid label.full-width{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{padding:.5rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;font-family:inherit}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-actions{display:flex;gap:.75rem;justify-content:flex-end}.task-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.5rem}.task-stats .stat-card{background:#fff;border-radius:8px;padding:1rem;border-left:4px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.task-stats .stat-value{font-size:1.75rem;font-weight:600;color:#1e293b}.task-stats .stat-label{font-size:.85rem;color:#64748b;margin-top:.25rem}.filter-bar{display:flex;gap:.75rem;margin-bottom:1.5rem}.filter-select{padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font-size:.9rem;min-width:140px}.task-list{display:flex;flex-direction:column;gap:.75rem}.task-card{background:#fff;border-radius:8px;padding:1rem 1.25rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000a}.task-card.task-running{border-left:4px solid #3b82f6}.task-card.task-pending{border-left:4px solid #f59e0b}.task-card.task-completed{border-left:4px solid #10b981}.task-card.task-failed{border-left:4px solid #ef4444}.task-card.task-degraded{border-left:4px solid #8b5cf6}.task-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.task-info{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.task-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:#64748b}.task-type{font-weight:600;color:#1e293b}.status-badge,.priority-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;color:#fff;font-size:.75rem;font-weight:500}.task-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-small{padding:.3rem .7rem;font-size:.8rem}.task-actions .btn-danger,.task-actions-bar .btn-danger{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.task-actions .btn-danger:hover,.task-actions-bar .btn-danger:hover{background:#fecaca}.task-actions .btn-primary,.task-actions-bar .btn-primary{background:#dbeafe;color:#1d4ed8;border:1px solid #bfdbfe}.task-actions .btn-primary:hover,.task-actions-bar .btn-primary:hover{background:#bfdbfe}.task-actions .btn-success,.task-actions-bar .btn-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.task-actions .btn-success:hover,.task-actions-bar .btn-success:hover{background:#a7f3d0}.task-actions .btn-warning,.task-actions-bar .btn-warning{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.task-actions .btn-warning:hover,.task-actions-bar .btn-warning:hover{background:#fde68a}.task-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem 1rem;font-size:.85rem;margin-bottom:.5rem}.meta-item{display:flex;gap:.5rem}.meta-label{color:#64748b}.meta-value{color:#334155;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.task-warning{margin-top:.5rem;padding:.5rem .75rem;background:#fef3c7;color:#92400e;border-radius:6px;font-size:.85rem}.task-result{margin-top:.5rem;padding:.5rem .75rem;background:#d1fae5;color:#065f46;border-radius:6px;font-size:.85rem;line-height:1.4;word-break:break-word}.task-error{margin-top:.5rem;padding:.5rem .75rem;background:#fee2e2;color:#991b1b;border-radius:6px;font-size:.85rem}.task-params{margin-top:.5rem;font-size:.85rem}.task-params summary{cursor:pointer;color:#3b82f6;-webkit-user-select:none;user-select:none}.task-params pre{margin-top:.5rem;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.78rem;overflow-x:auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.task-detail-modal{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-header h3{margin:0;font-size:1.25rem;color:#1e293b}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 .75rem;font-size:1rem;color:#475569;font-weight:600}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.85rem;color:#64748b;font-weight:500}.detail-value{font-size:.95rem;color:#1e293b}.task-params-json{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;font-size:.85rem;overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-all}@media (max-width: 767px){.detail-grid{grid-template-columns:1fr}.task-detail-modal{max-height:95vh}}@media (max-width: 767px){.task-stats{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-direction:column}.filter-select{width:100%}}.view-mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--border-color, #e0e0e0)}.view-mode-tabs .tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:500;color:var(--text-secondary, #666);transition:all .2s ease;margin-bottom:-2px}.view-mode-tabs .tab:hover{color:var(--text-primary, #333);background:var(--hover-bg, rgba(0, 0, 0, .04))}.view-mode-tabs .tab.active{color:var(--primary-color, #2563eb);border-bottom-color:var(--primary-color, #2563eb)}.current-portfolio-banner{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;border-radius:8px;color:#1e40af}.current-portfolio-banner .banner-icon{font-size:2rem;flex-shrink:0}.current-portfolio-banner .banner-content{flex:1}.current-portfolio-banner .banner-content strong{display:block;font-size:1.125rem;margin-bottom:.25rem}.current-portfolio-banner .banner-content p{margin:0;font-size:.875rem;opacity:.9}@media (prefers-color-scheme: dark){.current-portfolio-banner{background:linear-gradient(135deg,#1e3a8a,#1e40af);border-color:#3b82f6;color:#dbeafe}.view-mode-tabs{border-bottom-color:var(--border-color-dark, #374151)}.view-mode-tabs .tab{color:var(--text-secondary-dark, #9ca3af)}.view-mode-tabs .tab:hover{color:var(--text-primary-dark, #f3f4f6);background:var(--hover-bg-dark, rgba(255, 255, 255, .05))}.view-mode-tabs .tab.active{color:var(--primary-color-dark, #60a5fa);border-bottom-color:var(--primary-color-dark, #60a5fa)}}.schedule-list{display:flex;flex-direction:column;gap:.75rem}.schedule-card{background:#fff;border-radius:8px;border:1px solid #e5e7eb;padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:all .15s ease}.schedule-card:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000a}.schedule-disabled{opacity:.55;background:#f9fafb}.schedule-main{flex:1;min-width:0}.schedule-info{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.schedule-task-type{font-weight:600;color:#1e293b;font-size:.95rem}.schedule-name-tag{background:#e0f2fe;color:#0369a1;padding:.1rem .5rem;border-radius:999px;font-size:.75rem;font-weight:500}.schedule-desc{color:#64748b;font-size:.85rem}.schedule-detail{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schedule-type-badge{background:#f1f5f9;color:#475569;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.schedule-time{font-size:.85rem;color:#334155}.schedule-meta{font-size:.8rem;color:#94a3b8}.schedule-tag{background:#fef3c7;color:#92400e;padding:.1rem .4rem;border-radius:4px;font-size:.7rem}.schedule-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.schedule-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.85rem;color:#475569;-webkit-user-select:none;user-select:none}.schedule-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.schedule-edit-form{width:100%}.schedule-edit-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.schedule-edit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.schedule-edit-grid .form-group{margin-bottom:0}.schedule-edit-grid .form-input{padding:.4rem .6rem;font-size:.85rem}
