.cfn-lint-page{min-height:calc(100vh - 80px);background-color:#f8fafc}.cfn-lint-page .cfn-lint-container{max-width:1400px;margin:0 auto;padding:32px 24px}@media (max-width: 768px){.cfn-lint-page .cfn-lint-container{padding:24px 16px}}.cfn-lint-page .page-header{margin-bottom:32px}.cfn-lint-page .page-header h1{font-size:28px;font-weight:600;color:#0f172a;margin-bottom:8px}.cfn-lint-page .page-header .subtitle{font-size:16px;color:#64748b;line-height:1.5}.cfn-lint-page .features-list{display:flex;gap:24px;margin-bottom:24px;flex-wrap:wrap}@media (max-width: 768px){.cfn-lint-page .features-list{flex-direction:column;gap:12px}}.cfn-lint-page .features-list .feature-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#334155}.cfn-lint-page .features-list .feature-item .icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:#1a77c31a;border-radius:50%;color:#1a77c3;font-size:10px}.cfn-lint-page .features-list .feature-item a{color:#1a77c3;text-decoration:none}.cfn-lint-page .features-list .feature-item a:hover{text-decoration:underline}.cfn-lint-page .info-banner{background-color:#1a77c30d;border:1px solid rgba(26,119,195,.2);border-radius:12px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}@media (max-width: 768px){.cfn-lint-page .info-banner{flex-direction:column;gap:16px;text-align:center}}.cfn-lint-page .info-banner .banner-text{font-size:14px;font-weight:500;color:#334155}.cfn-lint-page .info-banner .banner-button{background-color:#1a77c3;color:#fff;border:none;border-radius:100px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.cfn-lint-page .info-banner .banner-button:hover{background-color:#155d99}.cfn-lint-page .main-content{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 992px){.cfn-lint-page .main-content{grid-template-columns:1fr}}.cfn-lint-page .card{background-color:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.cfn-lint-page .card .card-header{padding:20px 24px;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between}.cfn-lint-page .card .card-header h2{font-size:18px;font-weight:600;color:#0f172a;margin:0}.cfn-lint-page .card .card-header .upload-btn{background-color:#1a77c30d;color:#1a77c3;border:1px solid rgba(26,119,195,.2);border-radius:8px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px}.cfn-lint-page .card .card-header .upload-btn:hover{background-color:#1a77c31a}.cfn-lint-page .card .card-body{padding:24px}.cfn-lint-page .template-textarea{width:100%;min-height:400px;border:1px solid #e2e8f0;border-radius:8px;padding:16px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;line-height:1.5;resize:vertical;background-color:#f8fafc}.cfn-lint-page .template-textarea:focus{outline:none;border-color:#1a77c3;box-shadow:0 0 0 3px #1a77c31a}.cfn-lint-page .template-textarea::placeholder{color:#94a3b8}.cfn-lint-page .validation-options{margin-bottom:24px}.cfn-lint-page .validation-options .option-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:#f8fafc;border-radius:8px;margin-bottom:12px}.cfn-lint-page .validation-options .option-item:last-child{margin-bottom:0}.cfn-lint-page .validation-options .option-item .option-label{display:flex;flex-direction:column;gap:4px}.cfn-lint-page .validation-options .option-item .option-label .label-text{font-size:14px;font-weight:600;color:#0f172a}.cfn-lint-page .validation-options .option-item .option-label .label-description{font-size:12px;color:#64748b}.cfn-lint-page .validation-options .option-item .toggle-switch{position:relative;width:48px;height:24px}.cfn-lint-page .validation-options .option-item .toggle-switch input{opacity:0;width:0;height:0}.cfn-lint-page .validation-options .option-item .toggle-switch input:checked+.slider{background-color:#1a77c3}.cfn-lint-page .validation-options .option-item .toggle-switch input:checked+.slider:before{transform:translate(24px)}.cfn-lint-page .validation-options .option-item .toggle-switch .slider{position:absolute;cursor:pointer;inset:0;background-color:#e2e8f0;border-radius:24px}.cfn-lint-page .validation-options .option-item .toggle-switch .slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;box-shadow:0 1px 3px #0003}.cfn-lint-page .validate-button{width:100%;background-color:#1a77c3;color:#fff;border:none;border-radius:8px;padding:14px 24px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.cfn-lint-page .validate-button:hover:not(:disabled){background-color:#155d99}.cfn-lint-page .validate-button:disabled{background-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.cfn-lint-page .sample-template-link{text-align:center;margin-top:16px}.cfn-lint-page .sample-template-link button{background:none;border:none;color:#1a77c3;font-size:14px;cursor:pointer;text-decoration:underline}.cfn-lint-page .sample-template-link button:hover{color:#155d99}.cfn-lint-page .results-section{margin-top:24px}.cfn-lint-page .results-section .result-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:8px;margin-bottom:16px}.cfn-lint-page .results-section .result-header.success{background-color:#d1fae5;color:#059669}.cfn-lint-page .results-section .result-header.error{background-color:#fef2f2;color:#dc2626}.cfn-lint-page .results-section .result-header.warning{background-color:#fef3c7;color:#d97706}.cfn-lint-page .results-section .result-header h3{font-size:16px;font-weight:600;margin:0}.cfn-lint-page .results-section .result-list{list-style:none;padding:0;margin:0}.cfn-lint-page .results-section .result-list .result-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid #f1f5f9}.cfn-lint-page .results-section .result-list .result-item:last-child{border-bottom:none}.cfn-lint-page .results-section .result-list .result-item .result-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cfn-lint-page .results-section .result-list .result-item .result-icon.success{background-color:#d1fae5;color:#059669}.cfn-lint-page .results-section .result-list .result-item .result-icon.error{background-color:#fef2f2;color:#dc2626}.cfn-lint-page .results-section .result-list .result-item .result-icon.warning{background-color:#fef3c7;color:#d97706}.cfn-lint-page .results-section .result-list .result-item .result-content{flex:1}.cfn-lint-page .results-section .result-list .result-item .result-content .resource-name{font-weight:600;color:#0f172a;margin-bottom:8px}.cfn-lint-page .results-section .result-list .result-item .result-content .rule-message{font-size:14px;color:#334155;margin-bottom:4px}.cfn-lint-page .results-section .result-list .result-item .result-content .rule-details{font-size:12px;color:#64748b;background-color:#f8fafc;padding:8px 12px;border-radius:4px;margin-top:8px}.cfn-lint-page .results-section .result-list .result-item .result-content .rule-details a{color:#1a77c3}.cfn-lint-page .results-section .passed-rules{background-color:#ecfdf5;border-radius:8px;padding:16px}.cfn-lint-page .results-section .passed-rules h4{font-size:14px;font-weight:600;color:#059669;margin-bottom:12px}.cfn-lint-page .results-section .passed-rules .passed-list{display:flex;flex-wrap:wrap;gap:8px}.cfn-lint-page .results-section .passed-rules .passed-list .passed-item{background-color:#fff;border:1px solid #d1fae5;border-radius:100px;padding:6px 12px;font-size:12px;color:#334155;display:flex;align-items:center;gap:6px}.cfn-lint-page .results-section .passed-rules .passed-list .passed-item .check-icon{color:#059669}.cfn-lint-page .loading-overlay{position:fixed;inset:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;z-index:1000}.cfn-lint-page .loading-overlay .loading-content{text-align:center}.cfn-lint-page .loading-overlay .loading-content .spinner{width:48px;height:48px;border:4px solid rgba(26,119,195,.1);border-top-color:#1a77c3;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.cfn-lint-page .loading-overlay .loading-content .loading-text{font-size:16px;color:#334155;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.cfn-lint-page .empty-state{text-align:center;padding:60px 24px;color:#64748b}.cfn-lint-page .empty-state .empty-icon{width:64px;height:64px;background-color:#1a77c30d;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#1a77c3;font-size:24px}.cfn-lint-page .empty-state h3{font-size:16px;font-weight:600;color:#334155;margin-bottom:8px}.cfn-lint-page .empty-state p{font-size:14px;margin-bottom:16px}.cfn-lint-page .error-modal .modal-content{background-color:#fff;border-radius:12px;padding:24px;max-width:500px;margin:0 auto}.cfn-lint-page .error-modal .modal-content h3{font-size:18px;font-weight:600;color:#0f172a;margin-bottom:16px}.cfn-lint-page .error-modal .modal-content .error-list{max-height:300px;overflow-y:auto;margin-bottom:16px}.cfn-lint-page .error-modal .modal-content .report-button{background-color:#1a77c3;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer}.cfn-lint-page .error-modal .modal-content .report-button:hover{background-color:#155d99}
