/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.tool-section{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:2rem;margin:2rem 0;}.tool-section h3{margin-top:0;color:#1565c0;display:flex;align-items:center;gap:0.5rem;}.contrast-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0;}@media (max-width:600px){.contrast-inputs{grid-template-columns:1fr;}}.color-input-group{background:#f5f5f5;padding:1.25rem;border-radius:8px;}.color-input-group label{display:block;font-weight:600;margin-bottom:0.75rem;}.color-picker-row{display:flex;gap:0.75rem;align-items:center;}.color-picker-row input[type="color"]{width:60px;height:40px;border:none;border-radius:4px;cursor:pointer;}.color-picker-row input[type="text"]{flex:1;padding:0.5rem;font-family:monospace;font-size:1rem;border:1px solid #ddd;border-radius:4px;}.contrast-preview{padding:2rem;border-radius:8px;text-align:center;margin:1.5rem 0;transition:all 0.3s ease;}.contrast-preview .sample-text{font-size:1.25rem;margin-bottom:0.5rem;}.contrast-preview .sample-small{font-size:0.9rem;}.contrast-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0;}.contrast-result{padding:1rem;border-radius:8px;text-align:center;}.contrast-result.pass{background:#e8f5e9;border:2px solid #4caf50;}.contrast-result.fail{background:#ffebee;border:2px solid #f44336;}.contrast-ratio{font-size:2rem;font-weight:700;}.pass .contrast-ratio{color:#2e7d32;}.fail .contrast-ratio{color:#c62828;}.contrast-label{font-size:0.9rem;color:#666;}.result-icon{font-size:1.5rem;}.alt-text-image{max-width:100%;max-height:300px;display:block;margin:0 auto 1rem;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.1);}.alt-text-input{width:100%;padding:0.75rem;font-size:1rem;border:2px solid #ddd;border-radius:8px;margin:0.5rem 0 1rem;}.alt-text-input:focus{border-color:var(--ua-maroon,#ab0520);outline:3px solid var(--ua-maroon,#ab0520);outline-offset:2px;}.alt-text-feedback{padding:1rem;border-radius:8px;margin-top:1rem;}.alt-text-feedback.excellent,.alt-text-feedback.good{background:#e8f5e9;border-left:4px solid #4caf50;}.alt-text-feedback.needs-improvement{background:#fff8e1;border-left:4px solid #ffa000;}.alt-text-feedback.poor{background:#fff3e0;border-left:4px solid #ff7043;}.alt-text-feedback.insufficient{background:#ffebee;border-left:4px solid #ef5350;}.image-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;}.alt-progress{display:flex;gap:0.5rem;align-items:center;margin-bottom:1rem;}.alt-progress-dot{width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid #999;background:#fff;display:inline-block;}.alt-progress-dot.active{border-color:#1565c0;background:#bbdefb;}.alt-progress-dot.completed{border-color:#4caf50;background:#4caf50;}.alt-progress-label{font-size:0.9rem;color:#555;margin-left:0.5rem;}.alt-type-badge{display:inline-block;padding:0.2rem 0.65rem;border-radius:4px;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:0.5rem;}.alt-type-badge.simple{background:#e3f2fd;color:#0d47a1;}.alt-type-badge.contextual{background:#e8eaf6;color:#283593;}.alt-type-badge.informational{background:#fce4ec;color:#880e4f;}.alt-type-badge.decorative{background:#f3e5f5;color:#6a1b9a;}.alt-type-badge.complex{background:#fff3e0;color:#e65100;}.alt-model-answer{margin-top:1rem;padding:1rem;background:#e3f2fd;border-radius:8px;border-left:4px solid #1565c0;}.alt-model-answer ul{margin:0.5rem 0 0 1.2rem;padding:0;}.alt-model-answer li{margin:0.25rem 0;}.alt-hint-panel{margin-top:0.75rem;padding:0.75rem 1rem;background:#fffde7;border-left:4px solid #fdd835;border-radius:4px;}.alt-summary{margin-top:2rem;padding:1.5rem;background:#e8f5e9;border:2px solid #4caf50;border-radius:10px;}.alt-summary.mixed{background:#fff8e1;border-color:#ffa000;}.alt-summary.poor{background:#ffebee;border-color:#ef5350;}.alt-summary h4{margin-top:0;}.alt-summary ul{margin:0.5rem 0;padding-left:1.5rem;}.format-help{font-size:0.9rem;color:#555;background:#f5f5f5;padding:0.75rem 1rem;border-radius:6px;border-left:3px solid #1565c0;margin:0.5rem 0;}.format-help code{background:#e3f2fd;padding:0.1rem 0.35rem;border-radius:3px;font-size:0.9em;}.heading-input{width:100%;min-height:200px;padding:1rem;font-family:monospace;font-size:0.95rem;border:2px solid #ddd;border-radius:8px;margin:1rem 0;}.heading-input:focus{border-color:var(--ua-maroon,#ab0520);outline:3px solid var(--ua-maroon,#ab0520);outline-offset:2px;}.heading-output{margin:1.5rem 0;}.heading-tree{font-family:monospace;padding:1rem;background:#f5f5f5;border-radius:8px;white-space:pre-wrap;}.heading-error{color:#c62828;background:#ffebee;padding:0.5rem;border-radius:4px;margin:0.5rem 0;}.heading-warning{color:#f57c00;background:#fff3e0;padding:0.5rem;border-radius:4px;margin:0.5rem 0;}.heading-success{color:#2e7d32;background:#e8f5e9;padding:0.5rem;border-radius:4px;margin:0.5rem 0;}.analyze-btn{padding:0.75rem 1.5rem;background:#1565c0;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;}.analyze-btn:hover{background:#0d47a1;}.link-examples{display:grid;gap:1rem;margin:1.5rem 0;}.link-example{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f5f5f5;border-radius:8px;}.link-status{font-size:1.5rem;flex-shrink:0;}.link-content{flex:1;}.link-text{font-weight:600;color:#1565c0;}.link-context{font-size:0.9rem;color:#666;margin-top:0.25rem;}.link-verdict{font-size:0.85rem;margin-top:0.5rem;padding:0.25rem 0.5rem;border-radius:4px;display:inline-block;}.link-verdict.good{background:#e8f5e9;color:#2e7d32;}.link-verdict.bad{background:#ffebee;color:#c62828;}
