.validation-modal{width:min(900px,calc(100vw - 40px));max-height:min(880px,calc(100vh - 32px));display:flex;flex-direction:column}
.validation-modal .modal-head p{margin:5px 0 0;color:var(--text-muted);font-size:13px}
.validation-filters{display:flex;gap:6px;padding:12px 20px 0;border-top:1px solid var(--border)}
.validation-filters button{border:0;border-radius:8px;background:transparent;color:var(--text-muted);padding:7px 12px;cursor:pointer}
.validation-filters button.active{background:var(--primary-soft,#eeeaff);color:var(--primary);font-weight:700}
.validation-summary{margin:12px 20px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;display:flex;align-items:baseline;gap:8px;background:var(--surface-soft,#f8f8fb)}
.validation-summary strong{font-size:24px}.validation-summary span{font-weight:700}.validation-summary small{margin-left:auto;color:var(--text-muted)}
.validation-summary.error,.validation-summary.warning{background:#fff7ed;border-color:#fed7aa}.dark .validation-summary.error,.dark .validation-summary.warning{background:#2a2018;border-color:#6f482a}
.validation-list{display:grid;gap:10px;overflow:auto;padding-top:0}
.validation-issue{border:1px solid var(--border);border-left:3px solid #94a3b8;border-radius:12px;padding:14px;background:var(--surface,#fff)}
.validation-issue.error{border-left-color:#dc2626}.validation-issue.warning{border-left-color:#f59e0b}.validation-issue.suggestion{border-left-color:#6c5ce7}.validation-issue.review{border-left-color:#0ea5e9}
.validation-issue header{display:flex;align-items:flex-start;gap:10px}.validation-issue header>span{flex:none;border-radius:999px;background:var(--surface-soft,#f3f4f6);padding:3px 8px;font-size:11px;font-weight:700}.validation-issue header div{display:grid;gap:3px}.validation-issue header small{color:var(--text-muted)}
.validation-issue dl{margin:12px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.validation-issue dl>div{min-width:0}.validation-issue dt{font-size:11px;color:var(--text-muted);margin-bottom:3px}.validation-issue dd{margin:0;font-size:13px;line-height:1.5}.validation-issue footer{display:flex;gap:8px;margin-top:12px}
.validation-empty{text-align:center;padding:42px 20px}.validation-empty b{display:block;margin-bottom:6px}.validation-empty p{color:var(--text-muted);margin:0}
.validation-ignored{margin:0 20px 12px;border:1px solid var(--border);border-radius:10px;padding:10px 12px}.validation-ignored summary{cursor:pointer;font-weight:700}.validation-ignored>div{display:flex;gap:10px;justify-content:space-between;padding-top:8px;font-size:12px}.validation-ignored button{border:0;background:none;color:var(--primary);cursor:pointer}
.export-validation-summary{margin:14px 20px 0;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft,#f8f8fb)}.export-validation-summary.has-issues{border-color:#fed7aa;background:#fff7ed}.dark .export-validation-summary.has-issues{background:#2a2018;border-color:#6f482a}.export-validation-summary>div b{display:block}.export-validation-summary>div p{margin:4px 0;color:var(--text-muted);font-size:12px}.export-validation-summary ul{margin:10px 0;padding:0;display:grid;gap:5px;list-style:none}.export-validation-summary li{display:flex;justify-content:space-between;gap:10px;font-size:12px}.export-validation-summary li small{color:var(--text-muted);text-align:right}.export-validation-summary .btn{margin-top:6px}
.device-review-button.suggestion{color:#6c5ce7;background:#f2efff;border-color:#d8d0ff}
.validation-highlight{animation:validation-pulse .7s ease-in-out 3!important}@keyframes validation-pulse{50%{filter:drop-shadow(0 0 8px rgba(108,92,231,.8))}}
@media(max-width:700px){.validation-issue dl{grid-template-columns:1fr}.validation-summary{flex-wrap:wrap}.validation-summary small{width:100%;margin-left:0}.export-validation-summary li{display:grid}.validation-modal{width:calc(100vw - 16px)}}
