:root{--bg:#f4f1ea;--surface:#fffdf9;--surface-soft:#efe9db;--border:#e4ddcd;--ink:#241f19;--ink-soft:#6c6254;--ink-faint:#a69b87;--accent:#4b3f72;--accent-hover:#392f59;--accent-soft:#eae6f3;--danger:#a3271f;--success:#2f7a3f;--severity-critical-bg:#f8dfdb;--severity-critical-ink:#a3271f;--severity-high-bg:#f8e6cf;--severity-high-ink:#9a5b0a;--severity-medium-bg:#faf0d4;--severity-medium-ink:#8a6408;--severity-low-bg:#eae6da;--severity-low-ink:#655c4d;--radius:10px;--shadow-card:0 1px 2px #241f190a, 0 8px 24px #241f190d}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}a{color:var(--accent)}h1,h2,h3{color:var(--ink);letter-spacing:-.01em;font-family:Georgia,Iowan Old Style,Palatino Linotype,ui-serif,serif;font-weight:700}h1{letter-spacing:-.02em;margin:0 0 20px;font-size:30px;line-height:1.15}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--severity-high-ink);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.page{max-width:960px;margin:0 auto;padding:32px 20px}.shell{flex-direction:column;min-height:100vh;display:flex}.shell-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:30;flex-shrink:0;align-items:center;gap:24px;height:60px;padding:0 24px;display:flex;position:sticky;top:0}.shell-brand{white-space:nowrap;font-family:Georgia,Iowan Old Style,Palatino Linotype,ui-serif,serif;font-size:16px;font-weight:700}.shell-search{flex:1;max-width:360px}.shell-search input{border:1px solid var(--border);background:var(--bg);border-radius:6px;width:100%;padding:7px 12px;font-size:14px}.shell-search input:focus{outline:2px solid var(--accent);outline-offset:1px;background:var(--surface)}.shell-user{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:12px;margin-left:auto;font-size:14px;display:flex}.shell-body{flex:1;min-height:0;display:flex}.shell-rail{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;align-self:flex-start;align-items:center;gap:6px;width:84px;height:calc(100vh - 60px);padding:14px 8px;display:flex;position:sticky;top:60px}.shell-rail-item{width:100%;color:var(--ink-soft);text-align:center;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:10px 4px;font-size:11px;font-weight:600;text-decoration:none;transition:background .16s,color .16s,border-color .16s;display:flex}.shell-rail-item:hover{background:var(--bg);color:var(--ink)}.shell-rail-item.active{background:var(--accent-soft);color:var(--accent);border-color:#4b3f722e}.shell-main{flex:1;min-width:0;max-width:1376px;margin:0 auto;padding:24px 32px 40px}.tenant-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex}.tenant-tabs-item{color:var(--ink-soft);border-bottom:2px solid #0000;padding:10px 14px;font-size:14px;font-weight:600;text-decoration:none}.tenant-tabs-item:hover{color:var(--ink)}.tenant-tabs-item.active{color:var(--accent);border-bottom-color:var(--accent)}.tenant-subtabs{gap:8px;margin-bottom:16px;display:flex}.tenant-subtabs-item{color:var(--ink-soft);background:var(--bg);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.tenant-subtabs-item:hover{color:var(--ink)}.tenant-subtabs-item.active{background:var(--accent-soft);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:24px;overflow-x:auto}table{border-collapse:collapse;width:100%}table.table-scroll{display:block;overflow-x:auto}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px;font-size:14px}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}th{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding-top:0;font-size:11px;font-weight:700}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:#4b3f7209}table.table-full th:first-child,table.table-full td:first-child{width:45%}table.table-full th:last-child,table.table-full td:last-child{text-align:right}form{flex-direction:column;gap:12px;max-width:420px;display:flex}.form-inline{flex-direction:row;align-items:center;max-width:none}.candidate-row{flex-direction:row;align-items:center;gap:8px;margin-bottom:8px;display:flex}.candidate-row input[type=text]{flex:1}label{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}input,select,textarea{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:10px;padding:9px 12px;font-family:inherit;font-size:14px}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:fit-content;padding:9px 16px;font-weight:600;transition:background .16s}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}button:hover{background:var(--accent-hover)}button:disabled{opacity:.6;cursor:default}.button-danger{background:var(--surface);color:var(--danger);border:1px solid var(--border)}.button-danger:hover{background:var(--severity-critical-bg)}.button-secondary{background:var(--surface);color:var(--ink-soft);border:1px solid var(--border)}.button-secondary:hover{background:var(--bg)}.button-like{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;width:fit-content;padding:9px 16px;font-weight:600;display:inline-block}.button-like:hover{background:var(--accent-hover)}.pager{border-top:1px solid var(--border);color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;font-size:13px;display:flex}.pager-nav{align-items:center;gap:10px;display:flex}.pager-disabled{opacity:.45}.pager-nav a,.pager-nav .pager-disabled{border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);border-radius:999px;align-items:center;padding:5px 12px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.pager-nav a:hover{border-color:var(--accent);color:var(--accent)}.pager-size-form{gap:8px;margin-bottom:0}.pager-size-form label{flex-direction:row;align-items:center;gap:6px;font-size:13px;font-weight:400}.pager-size-form select{padding:4px 6px}.pager-size-form button{padding:5px 10px;font-size:13px}.modal-toggle{display:none}.modal-backdrop{z-index:50;background:#241f1973;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.modal-toggle:checked~.modal-backdrop{display:flex}.modal-backdrop-close{position:absolute;inset:0}.modal-card{z-index:1;background:var(--surface);border-radius:12px;width:100%;max-width:420px;padding:24px;position:relative;box-shadow:0 24px 64px #241f1947}.modal-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-card-header h2{margin:0;font-size:16px}.modal-close-x{cursor:pointer;color:var(--ink-faint);padding:4px;font-size:20px;line-height:1}.modal-close-x:hover{color:var(--ink)}.spinner{vertical-align:-2px;opacity:.85;border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;margin-right:8px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.page-loading{z-index:60;color:#fff;background:#241f1973;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;font-weight:600;display:flex;position:fixed;inset:0}.spinner-lg{opacity:.9;border:4px solid;border-right-color:#0000;border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin;display:inline-block}.error{color:var(--danger);font-size:14px}.badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge.severity-critical{background:var(--severity-critical-bg);color:var(--severity-critical-ink)}.badge.severity-high{background:var(--severity-high-bg);color:var(--severity-high-ink)}.badge.severity-medium{background:var(--severity-medium-bg);color:var(--severity-medium-ink)}.badge.severity-low{background:var(--severity-low-bg);color:var(--severity-low-ink)}.badge.severity-important{background:var(--severity-high-bg);color:var(--severity-high-ink)}.badge.severity-minor{background:var(--severity-low-bg);color:var(--severity-low-ink)}.badge.severity-positive{color:var(--success);background:#e3f0e4}.score-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:20px 0 24px;display:grid}.score-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.score-card.score-card-average{background:var(--surface-soft);border-color:#d8cfb9}.score-card-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:700}.score-card-value{margin-top:2px;font-family:Georgia,Iowan Old Style,Palatino Linotype,ui-serif,serif;font-size:32px;font-weight:700;line-height:1.2}.score-card-value small{color:var(--ink-faint);font-size:15px;font-weight:400}.score-bar{background:var(--border);border-radius:999px;height:4px;margin-top:10px;overflow:hidden}.score-bar-fill{background:var(--severity-high-ink);border-radius:999px;height:100%}.report-summary{color:var(--ink);max-width:68ch;margin:0 0 28px;font-size:15px;line-height:1.6}.report-section{margin-bottom:28px}.report-section-title{margin:0 0 4px;font-size:18px}.report-section-subtitle{color:var(--ink-soft);margin:0 0 14px;font-size:13px}.finding-row{border-bottom:1px solid var(--border);padding:16px 0}.finding-row:last-child{border-bottom:none}.finding-title{margin:0 0 4px;font-size:15px;font-weight:700;display:block}.finding-badge{margin-right:8px}.finding-explanation{color:var(--ink-soft);margin:4px 0 8px;font-size:14px;line-height:1.55}.finding-fix{background:var(--surface-soft);border-left:3px solid var(--success);border-radius:0 6px 6px 0;margin:0 0 10px;padding:8px 12px;font-size:14px}.finding-fix strong{color:var(--success)}.finding-actions{gap:8px;display:flex}.checklist{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 20px;margin:0;padding:0;list-style:none;display:grid}.checklist-item{color:var(--ink);align-items:flex-start;gap:8px;font-size:14px;display:flex}.checklist-item:before{content:"✓";color:var(--success);flex-shrink:0;font-weight:700}.faq-table td{vertical-align:top}.card:has(.score-grid){box-shadow:none;background:0 0;border:0;padding:0}.card:has(.score-grid)>h2:first-child{font-size:15px!important}.card:has(.score-grid)>.form-inline{border-bottom:1px solid #0000001a;padding-bottom:28px;margin-bottom:36px!important}.card:has(.score-grid) .eyebrow{letter-spacing:.12em;margin-bottom:10px;font-size:12px;display:block}h2.report-section-title{letter-spacing:-.025em;text-transform:capitalize;margin:0 0 14px;font-family:-apple-system,"system-ui",Segoe UI,Helvetica,Arial,sans-serif;font-size:44px;font-weight:800;line-height:1.05}h2.report-section-title+.report-section-subtitle{opacity:.75;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;margin-bottom:32px!important}.score-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.score-card{border-radius:12px;padding:20px 20px 22px}.score-card-label{letter-spacing:.12em;font-size:12px;font-weight:700}.score-card-value{letter-spacing:-.03em;margin:4px 0 10px;font-family:-apple-system,"system-ui",Segoe UI,Helvetica,Arial,sans-serif;font-size:46px;font-weight:800;line-height:1.1}.score-card-value small{letter-spacing:0;opacity:.6;font-size:18px;font-weight:500}.score-bar{border-radius:3px;height:5px}.score-bar-fill{border-radius:3px}.report-summary{max-width:62ch;margin:0 0 8px;font-size:17px;line-height:1.55}.report-section{margin-top:56px}h3.report-section-title{letter-spacing:-.02em;margin:0 0 14px;font-family:-apple-system,"system-ui",Segoe UI,Helvetica,Arial,sans-serif;font-size:26px;font-weight:800}.report-section>.report-section-subtitle{opacity:.75;margin:-6px 0 16px;font-size:15px}.finding-row{border:0;border-top:1px solid #0000001a;grid-template-columns:124px minmax(0,1fr);align-items:start;gap:6px 8px;margin:0;padding:22px 0;display:grid}.finding-row>*{grid-column:2;margin:0}.finding-row>.finding-badge{grid-area:1/1/span 4;justify-self:start;margin-top:2px}.finding-row:not(:has(.finding-badge))>*{grid-column:1/-1}.finding-badge{border-radius:999px;padding:4px 10px;font-size:0!important}.finding-badge:after{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.severity-critical:after{content:"Crítico"}.severity-important:after{content:"Importante"}.severity-minor:after{content:"Menor"}.finding-title{font-size:16px;font-weight:700;line-height:1.4}.finding-explanation{color:inherit;max-width:72ch;font-size:15.5px;line-height:1.55}.finding-fix{background:0 0;border:0;max-width:72ch;padding:0;font-size:14.5px;line-height:1.55}.finding-fix strong{color:#2f6b3c;font-weight:600}.finding-actions{gap:8px;display:flex;margin-top:8px!important}.finding-actions button{border-radius:7px;padding:5px 12px;font-size:13px}.finding-row textarea{border-radius:8px;min-height:64px;padding:10px 12px;margin:6px 0 8px!important}.faq-table{border-collapse:collapse;width:100%}.faq-table th{text-align:left;letter-spacing:.1em;text-transform:uppercase;opacity:.65;border-bottom:1px solid #00000026;padding:0 16px 10px 0;font-size:11px}.faq-table td{vertical-align:top;border-bottom:1px solid #00000014;padding:16px 16px 16px 0;font-size:15px;line-height:1.5}@media (max-width:760px){.score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}h2.report-section-title{font-size:32px}.finding-row{grid-template-columns:1fr}.finding-row>*,.finding-row>.finding-badge{grid-area:auto/1}}.section-score-badge{background:var(--surface-soft);border:1px solid var(--border);vertical-align:middle;border-radius:999px;align-items:baseline;gap:3px;margin-left:12px;padding:3px 10px;font-size:13px;font-weight:700;display:inline-flex}.section-score-badge small{color:var(--ink-faint);font-size:11px;font-weight:500}.finding-meta{color:var(--ink-faint);font-size:12.5px;margin:-2px 0 2px!important}
