/* Security Headers Analyzer */
/* Override do legado global p{color:#0b1e39} de styles.css */
.sh-wrap p,.sh-wrap h2,.sh-wrap h3,.sh-wrap h4,.sh-wrap strong{color:inherit}
.sh-wrap .faq-answer p{color:#CBD5E1}

.sh-wrap{max-width:1100px;margin:0 auto;padding:0 1rem;color:#E2E8F0}
.sh-intro{color:#E2E8F0;margin-bottom:1.75rem;font-size:1.05rem;line-height:1.7}
.sh-intro p{margin:0 0 .85rem;color:#E2E8F0}
.sh-intro strong{color:#F1F5F9}
.sh-intro code{background:rgba(0,0,0,.35);color:#A5F3FC;padding:.15rem .45rem;border-radius:.25rem;font-size:.92rem;font-family:'JetBrains Mono',monospace,sans-serif}

.sh-card{background:rgba(13,30,56,.6);border:1px solid rgba(96,165,250,.25);border-radius:.6rem;padding:1.75rem;margin-bottom:1.5rem}
.sh-card h2{font-family:Montserrat,sans-serif;color:#F1F5F9;font-size:1.4rem;margin:0 0 .35rem;display:flex;align-items:center;gap:.6rem}
.sh-card h2 i{color:#60A5FA;font-size:1.15rem}
.sh-card .subtitle{color:#CBD5E1;font-size:1rem;margin:0 0 1.35rem;line-height:1.55}

.sh-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;border-bottom:1px solid rgba(148,163,184,.25)}
.sh-tab{background:none;border:none;color:#CBD5E1;padding:.75rem 1.25rem;font:inherit;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;font-weight:600;font-size:1rem}
.sh-tab:hover{color:#F1F5F9}
.sh-tab.active{color:#60A5FA;border-bottom-color:#60A5FA}
.sh-tab-content{display:none}
.sh-tab-content.active{display:block}

.sh-url-row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:stretch}
.sh-url-row input[type=text]{flex:1;min-width:240px;padding:.8rem 1rem;background:rgba(13,30,56,.5);border:1px solid rgba(96,165,250,.3);border-radius:.4rem;color:#F1F5F9;font:inherit;outline:none;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.98rem}
.sh-url-row input[type=text]:focus{border-color:#60A5FA;background:rgba(13,30,56,.7)}
.sh-url-row button{padding:.8rem 1.5rem;background:#60A5FA;color:#0d1e38;border:none;border-radius:.4rem;font:inherit;font-weight:700;cursor:pointer;transition:background .2s;white-space:nowrap;font-size:1rem}
.sh-url-row button:hover{background:#3B82F6;color:#fff}
.sh-url-row button:disabled{background:#475569;cursor:not-allowed;color:#94A3B8}
.sh-url-row + p{color:#CBD5E1;font-size:.95rem;margin-top:1rem;line-height:1.6}
.sh-url-row + p code{background:rgba(0,0,0,.35);color:#A5F3FC;padding:.1rem .4rem;border-radius:.25rem;font-size:.88rem}

.sh-paste-area{width:100%;min-height:220px;padding:1rem 1.1rem;background:rgba(13,30,56,.5);border:1px solid rgba(96,165,250,.3);border-radius:.4rem;color:#F1F5F9;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.95rem;line-height:1.6;outline:none;resize:vertical}
.sh-paste-area:focus{border-color:#60A5FA;background:rgba(13,30,56,.7)}
.sh-paste-area::placeholder{color:#64748B}

.sh-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem;align-items:center}
.sh-actions button{padding:.65rem 1.2rem;background:#60A5FA;color:#0d1e38;border:none;border-radius:.4rem;font:inherit;font-weight:700;cursor:pointer;transition:background .2s;font-size:.98rem}
.sh-actions button:hover{background:#3B82F6;color:#fff}
.sh-actions button.secondary{background:transparent;color:#60A5FA;border:1px solid rgba(96,165,250,.5)}
.sh-actions button.secondary:hover{background:rgba(96,165,250,.12);color:#93c5fd}

.sh-curl-hint{margin-top:1.5rem;padding:1.25rem 1.4rem;background:rgba(13,30,56,.6);border:1px solid rgba(148,163,184,.25);border-radius:.5rem;color:#E2E8F0;font-size:.98rem;line-height:1.6}
.sh-curl-hint > p{margin:0 0 .35rem;color:#F1F5F9;font-weight:600;font-size:1rem}
.sh-curl-hint > p:not(:first-child){margin-top:1.1rem}
.sh-curl-hint code{display:block;background:rgba(0,0,0,.45);color:#A5F3FC;padding:.7rem .9rem;border-radius:.3rem;margin:.4rem 0;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.92rem;overflow-x:auto;white-space:pre;line-height:1.5}
.sh-curl-hint .copy-btn{background:rgba(96,165,250,.15);color:#93c5fd;border:1px solid rgba(96,165,250,.35);cursor:pointer;font-size:.85rem;padding:.3rem .75rem;border-radius:.3rem;text-decoration:none;margin-top:.35rem;display:inline-block;transition:background .2s,color .2s}
.sh-curl-hint .copy-btn:hover{background:rgba(96,165,250,.25);color:#fff}
.sh-curl-hint em{color:#A5F3FC;font-style:normal;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.9em}

.sh-results{display:none}
.sh-results.active{display:block}

.sh-grade-card{display:grid;grid-template-columns:auto 1fr;gap:1.75rem;align-items:center;padding:1.85rem;background:rgba(13,30,56,.75);border:1px solid rgba(96,165,250,.3);border-radius:.6rem;margin-bottom:1.5rem}
.sh-grade-letter{font-family:Montserrat,sans-serif;font-size:5rem;font-weight:700;line-height:1;text-align:center;padding:1rem 1.6rem;border-radius:.5rem;min-width:120px}
.sh-grade-letter.aplus,.sh-grade-letter.a{background:rgba(16,185,129,.18);color:#34D399;border:2px solid rgba(16,185,129,.5)}
.sh-grade-letter.b{background:rgba(132,204,22,.18);color:#A3E635;border:2px solid rgba(132,204,22,.5)}
.sh-grade-letter.c{background:rgba(245,158,11,.18);color:#FBBF24;border:2px solid rgba(245,158,11,.5)}
.sh-grade-letter.d{background:rgba(249,115,22,.18);color:#FB923C;border:2px solid rgba(249,115,22,.5)}
.sh-grade-letter.f{background:rgba(239,68,68,.18);color:#F87171;border:2px solid rgba(239,68,68,.5)}
.sh-grade-info h3{font-family:Montserrat,sans-serif;color:#F1F5F9;margin:0 0 .35rem;font-size:1.5rem;font-weight:700}
.sh-grade-info .score{color:#CBD5E1;font-size:1.02rem;margin:0 0 .6rem;font-weight:500}
.sh-grade-info .summary{color:#E2E8F0;font-size:1rem;margin:0;line-height:1.6}

.sh-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem;margin-bottom:1.75rem}
.sh-stat{padding:1rem 1.1rem;background:rgba(13,30,56,.6);border:1px solid rgba(148,163,184,.25);border-radius:.45rem;text-align:center}
.sh-stat .stat-num{font-family:Montserrat,sans-serif;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.3rem}
.sh-stat .stat-label{color:#CBD5E1;font-size:.88rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.sh-stat.ok .stat-num{color:#34D399}
.sh-stat.warn .stat-num{color:#FBBF24}
.sh-stat.miss .stat-num{color:#F87171}
.sh-stat.info .stat-num{color:#60A5FA}

.sh-header-grid{display:grid;gap:1rem}
.sh-header-row{background:rgba(13,30,56,.6);border:1px solid rgba(148,163,184,.22);border-left:5px solid transparent;border-radius:.5rem;padding:1.25rem 1.4rem;transition:border-color .2s}
.sh-header-row.ok{border-left-color:#34D399}
.sh-header-row.warn{border-left-color:#FBBF24}
.sh-header-row.miss{border-left-color:#F87171}
.sh-header-row.info{border-left-color:#60A5FA}
.sh-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap;margin-bottom:.6rem}
.sh-header-name{font-family:'JetBrains Mono',monospace,sans-serif;color:#F1F5F9;font-size:1.08rem;font-weight:700;word-break:break-word}
.sh-header-badge{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;padding:.3rem .7rem;border-radius:1rem;white-space:nowrap}
.sh-header-badge.ok{background:rgba(16,185,129,.2);color:#34D399;border:1px solid rgba(16,185,129,.4)}
.sh-header-badge.warn{background:rgba(245,158,11,.2);color:#FBBF24;border:1px solid rgba(245,158,11,.4)}
.sh-header-badge.miss{background:rgba(239,68,68,.2);color:#F87171;border:1px solid rgba(239,68,68,.4)}
.sh-header-badge.info{background:rgba(96,165,250,.2);color:#93c5fd;border:1px solid rgba(96,165,250,.4)}
.sh-header-value{font-family:'JetBrains Mono',monospace,sans-serif;color:#A5F3FC;background:rgba(0,0,0,.35);padding:.65rem .85rem;border-radius:.3rem;font-size:.92rem;margin:.6rem 0;word-break:break-all;line-height:1.55;max-height:160px;overflow-y:auto}
.sh-header-desc{color:#E2E8F0;font-size:1rem;line-height:1.65;margin:.5rem 0 0}
.sh-header-rec{margin-top:.75rem;padding:.75rem 1rem;background:rgba(96,165,250,.08);border-left:3px solid #60A5FA;border-radius:.3rem;color:#E2E8F0;font-size:.95rem;line-height:1.6}
.sh-header-rec strong{color:#93c5fd;font-weight:700}

.sh-error{padding:1.1rem 1.35rem;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.4);border-radius:.45rem;color:#FCA5A5;margin-top:1rem;font-size:1rem;line-height:1.55}
.sh-error code{background:rgba(0,0,0,.35);color:#FECACA;padding:.1rem .4rem;border-radius:.25rem;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.88rem}

.sh-explained{margin-top:2.5rem}
.sh-explained h2{font-family:Montserrat,sans-serif;color:#F1F5F9;font-size:1.6rem;margin:0 0 1.25rem;font-weight:700}
.sh-explained-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem}
.sh-explained-card{padding:1.25rem 1.4rem;background:rgba(13,30,56,.6);border:1px solid rgba(96,165,250,.22);border-radius:.5rem}
.sh-explained-card h3{font-family:'JetBrains Mono',monospace,sans-serif;color:#60A5FA;font-size:1.02rem;margin:0 0 .55rem;word-break:break-word;font-weight:700}
.sh-explained-card p{color:#E2E8F0;font-size:.98rem;margin:0;line-height:1.6}
.sh-explained-card code{background:rgba(0,0,0,.35);color:#A5F3FC;padding:.1rem .35rem;border-radius:.25rem;font-family:'JetBrains Mono',monospace,sans-serif;font-size:.88rem}
.sh-explained-card a{color:#93c5fd;text-decoration:underline}
.sh-explained-card a:hover{color:#60A5FA}

@media (max-width:600px){
    .sh-grade-card{grid-template-columns:1fr;text-align:center;gap:1rem;padding:1.5rem}
    .sh-grade-letter{font-size:4rem;min-width:auto;padding:.75rem 1.25rem}
    .sh-card{padding:1.25rem}
    .sh-curl-hint code{font-size:.82rem;white-space:pre-wrap;word-break:break-all}
}
