:root { color-scheme: light; --bg:#f6f8fa; --card:#fff; --ink:#192b3a; --muted:#687683; --line:#dce2e7; --brand:#192b3a; --brand-2:#243d51; --critical:#b42318; --high:#9b482d; --medium:#806525; --low:#586074; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.55 "DM Sans", ui-sans-serif, system-ui, sans-serif; background:var(--bg); color:var(--ink); }
a { color:var(--brand); }
.container { width:min(1180px, calc(100% - 2rem)); margin:0 auto; }
.site-header { background:var(--card); color:var(--ink); padding:.85rem 0; border-bottom:1px solid var(--line); }
.header-row { display:flex; justify-content:space-between; gap:1rem; align-items:center; min-height:2.5rem; }
.brand { display:inline-flex; flex:none; align-items:center; color:var(--ink); text-decoration:none; }
.brand img { display:block; width:220px; height:auto; }
.tagline { margin:0; color:var(--muted); font-size:.75rem; }
.page-shell { padding:2.25rem 0 3.5rem; display:grid; gap:2rem; }
.card { background:var(--card); border:1px solid var(--line); border-radius:18px; padding:1.5rem; box-shadow:0 10px 30px rgba(35,57,46,.04); }
.account-actions { display:flex; align-items:center; gap:1rem; color:var(--muted); font-size:.85rem; }
.account-actions a { color:var(--brand); }
.account-actions a[aria-current="page"] { font-weight:750; text-decoration-thickness:2px; text-underline-offset:.25rem; }
.account-actions form { margin:0; }
.button-link { padding:0; background:none; color:var(--brand); text-decoration:underline; font-weight:600; }
.button-link:hover { background:none; color:var(--brand-2); }
.hero-stats { display:grid; gap:1rem; }
.metric, .stat-card, .score-box { background:linear-gradient(180deg, #f8fbff, #eef4ff); border:1px solid #dce7ff; border-radius:16px; padding:1rem; }
.metric strong, .score-box strong, .stat-card strong { display:block; font-size:2rem; margin:.25rem 0; }
.metric-label, .eyebrow { text-transform:uppercase; letter-spacing:.08em; font-size:.75rem; color:var(--brand-2); font-weight:700; }
.hero-note, .muted { color:var(--muted); }
.grid { display:grid; gap:1.5rem; }
.two-up { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.summary-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); }
.audit-form { display:grid; gap:1rem; }
.auth-card { width:min(100%, 520px); margin:0 auto; }
.auth-switch { margin:1.25rem 0 0; }
.remember-label { display:flex; align-items:center; gap:.6rem; }
.remember-label input { width:auto; }
.remember-label span { margin:0!important; }
.audit-form label span { display:block; margin-bottom:.35rem; font-weight:600; }
input { width:100%; padding:.8rem .95rem; border-radius:12px; border:1px solid var(--line); font:inherit; }
button { border:0; border-radius:12px; background:var(--brand); color:#fffefa; padding:.9rem 1.1rem; font:inherit; font-weight:700; cursor:pointer; }
button:hover { background:var(--brand-2); }
button:focus-visible, a:focus-visible, input:focus-visible { outline:3px solid #b5cf75; outline-offset:3px; }
.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; }
th, td { padding:.8rem .6rem; border-top:1px solid var(--line); text-align:left; vertical-align:top; }
.issue-preview-list, .issue-list { display:grid; gap:1rem; }
.preview-issue, .issue-card { border:1px solid var(--line); border-radius:14px; padding:1rem; background:#fbfcff; }
.preview-heading, .issue-title-row, .section-heading, .report-header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.report-header { align-items:center; }
.severity { display:inline-flex; align-items:center; justify-content:center; min-width:5.75rem; border-radius:999px; padding:.3rem .7rem; font-size:.85rem; font-weight:700; }
.severity-critical { background:#fde7e5; color:var(--critical); }
.severity-high { background:#fff0e1; color:var(--high); }
.severity-medium { background:#fff6db; color:var(--medium); }
.severity-low { background:#edf1f7; color:var(--low); }
dl { margin:0; display:grid; gap:.4rem; }
dt { font-weight:700; }
dd { margin:0 0 .75rem; color:#24334e; }
.banner { padding:1rem 1.1rem; border-radius:14px; background:#eef4ff; color:#183b8c; border:1px solid #d9e7ff; }
.banner-error { background:#fdeceb; color:#9a221d; border-color:#f4cecc; }
.banner-success { background:#edf4fa; color:#1d3b50; border-color:#cbd9e5; }
.banner-success p { margin:0; }
.auth-card input[aria-invalid="true"] { border-color:#b42318; }
.field-error { display:block; margin-top:.35rem; color:#9a221d; font-size:.82rem; line-height:1.5; }
.sg-intro { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:2rem; align-items:end; }
.sg-eyebrow, .sg-step { display:flex; align-items:center; gap:.5rem; margin:0; color:#657988; font-size:.7rem; font-weight:750; text-transform:uppercase; letter-spacing:.13em; }
.sg-eyebrow svg, .sg-intro-note svg, .sg-page-hint svg, .sg-check-mark svg, .sg-check-footnote svg, .sg-latest-label svg, .sg-empty-icon svg, .sg-report-icon svg, .sg-report-arrow { width:1rem; height:1rem; flex:none; }
.sg-intro h1 { margin:.55rem 0 0; font-size:clamp(2rem,4.4vw,2.8rem); font-weight:700; line-height:1.12; letter-spacing:-.055em; }
.sg-lede { max-width:650px; margin:.9rem 0 0; color:#63716f; font-size:.96rem; line-height:1.8; }
.sg-intro-note { display:flex; align-items:center; gap:.75rem; margin:0 0 .2rem; border-left:2px solid #fed4b3; padding:.25rem 0 .25rem .9rem; color:#697783; font-size:.77rem; line-height:1.6; }
.sg-note-icon { display:grid; flex:none; place-items:center; width:2.25rem; height:2.25rem; border-radius:50%; background:#fff0e3; color:#bd5f18; }
.sg-workgrid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:1.25rem; align-items:stretch; }
.sg-panel { overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--card); box-shadow:0 12px 36px rgba(35,57,46,.04); }
.sg-panel-heading { padding:1.2rem 1.6rem; border-bottom:1px solid #e5eae5; }
.sg-step { color:#708077; font-size:.68rem; }
.sg-step span { color:#f5821f; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.sg-panel-heading h2 { margin:.45rem 0 0; font-size:1.25rem; font-weight:700; letter-spacing:-.035em; }
.sg-form { display:grid; gap:1.35rem; padding:1.45rem 1.6rem 1.6rem; }
.sg-form label { display:block; margin-bottom:.5rem; color:#34413f; font-size:.83rem; font-weight:700; }
.sg-input-wrap { position:relative; }
.sg-input-wrap svg { position:absolute; top:50%; left:.85rem; width:1rem; height:1rem; transform:translateY(-50%); color:#84918b; pointer-events:none; }
.sg-start-panel input { width:100%; min-height:3.05rem; padding:.75rem .9rem; border:1px solid #ccd7d0; border-radius:10px; background:#fff; color:#253431; font:inherit; font-size:.9rem; transition:border-color .16s,box-shadow .16s; }
.sg-start-panel input.sg-url-input { padding-left:2.55rem; }
.sg-start-panel input:hover { border-color:#9aab9f; }
.sg-start-panel input:focus-visible { border-color:#66875c; outline:3px solid rgba(181,207,117,.45); outline-offset:2px; }
.sg-start-panel input::placeholder { color:#9aa5a0; }
.sg-field-hint { display:flex; align-items:flex-start; gap:.4rem; margin:.45rem 0 0; color:#77837e; font-size:.73rem; line-height:1.55; }
.sg-field-topline { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.sg-field-topline label { margin:0 0 .5rem; }
.sg-field-topline > span { margin-bottom:.5rem; color:#607251; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.73rem; }
.sg-start-panel input.sg-page-limit { max-width:210px; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.sg-page-hint svg { width:.9rem; height:.9rem; }
.sg-submit-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid #e8ece7; padding-top:1.2rem; }
.sg-submit-button { display:inline-flex; min-height:2.9rem; align-items:center; justify-content:center; gap:.55rem; border-radius:10px; padding:.75rem 1.1rem; font-size:.83rem; transition:background .16s,transform .16s; }
.sg-submit-button:hover svg { transform:translateX(2px); }
.sg-submit-button svg { width:1rem; height:1rem; transition:transform .16s; }
.sg-submit-row > span { color:#87928d; font-size:.7rem; }
.sg-submit-button:disabled { cursor:wait; opacity:.8; }
.sg-billing-status { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.25rem 1.5rem; }
.sg-billing-status h2 { margin:.25rem 0; font-size:1.2rem; }
.sg-billing-status p:last-child { margin:.3rem 0 0; color:var(--muted); font-size:.86rem; }
.sg-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.sg-plan-card { display:flex; flex-direction:column; align-items:flex-start; gap:.8rem; min-width:0; border:1px solid var(--line); border-radius:18px; padding:1.35rem; background:var(--card); box-shadow:0 12px 36px rgba(35,57,46,.04); }
.sg-plan-current { border-color:#6c8e61; box-shadow:0 0 0 2px rgba(108,142,97,.15); }
.sg-plan-card h2 { margin:0; font-size:2rem; letter-spacing:-.04em; }
.sg-plan-card h2 span { color:var(--muted); font-size:.95rem; font-weight:500; letter-spacing:0; }
.sg-plan-description, .sg-plan-note { margin:0; color:var(--muted); font-size:.88rem; }
.sg-plan-sites { margin:0; font-weight:700; }
.sg-plan-card form { width:100%; margin-top:auto; }
.sg-plan-card button { width:100%; }
.sg-current-plan { margin-top:auto; border-radius:999px; padding:.45rem .75rem; background:#edf4fa; color:#1d3b50; font-size:.82rem; font-weight:700; }
.sg-audit-progress { display:flex; align-items:flex-start; gap:.7rem; margin:0; border:1px solid #cedce6; border-radius:11px; padding:.85rem 1rem; background:#f0f5f8; color:#405663; font-size:.8rem; line-height:1.65; }
.sg-audit-progress[hidden] { display:none; }
.sg-audit-progress strong { color:#192b3a; }
.sg-progress-spinner { width:1rem; height:1rem; flex:none; margin-top:.15rem; border:2px solid #cad7df; border-top-color:#f5821f; border-radius:50%; animation:sg-spin .8s linear infinite; }
@keyframes sg-spin { to { transform:rotate(360deg); } }
.sg-check-panel { padding:1.3rem 1.4rem 1.2rem; background:#f1f4f6; box-shadow:none; }
.sg-check-heading { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; padding:0 0 1rem; border:0; }
.sg-check-heading h2 { font-size:1.18rem; }
.sg-check-mark { display:grid; place-items:center; width:2rem; height:2rem; flex:none; border-radius:50%; background:#e3ebf1; color:#456173; }
.sg-check-list { display:grid; gap:.6rem; }
.sg-check-item { display:flex; align-items:flex-start; gap:.75rem; border:1px solid #dfe5ea; border-radius:12px; padding:.8rem .9rem; background:#fff; }
.sg-check-icon { display:grid; width:1.75rem; height:1.75rem; flex:none; place-items:center; border-radius:8px; background:#edf2f6; color:#526b7d; }
.sg-check-icon svg { width:1rem; height:1rem; }
.sg-check-copy { min-width:0; flex:1; }
.sg-check-title { display:flex; align-items:center; justify-content:space-between; gap:.55rem; }
.sg-check-title h3 { margin:0; color:#33403d; font-size:.81rem; font-weight:700; line-height:1.5; }
.sg-check-copy > p { margin:.22rem 0 0; color:#78837e; font-size:.72rem; line-height:1.55; }
.sg-severity.severity { min-width:0; flex:none; border:1px solid currentColor; padding:.13rem .5rem; font-size:.64rem; white-space:nowrap; }
.sg-severity.severity-critical { background:#fbefed; color:#a13f36; border-color:#e4b5af; }
.sg-severity.severity-high { background:#fbf0ea; color:#9b482d; border-color:#e8c1b0; }
.sg-severity.severity-medium { background:#fbf6e7; color:#806525; border-color:#e6d5a4; }
.sg-check-footnote { display:flex; align-items:flex-start; gap:.45rem; margin:1rem 0 0; color:#76817b; font-size:.71rem; line-height:1.6; }
.sg-check-footnote svg { width:.9rem; height:.9rem; margin-top:.1rem; }
.sg-recent-panel { box-shadow:0 12px 36px rgba(35,57,46,.035); }
.sg-recent-heading { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.2rem 1.6rem; }
.sg-history-actions { display:flex; align-items:center; gap:.7rem; }
.sg-history-link { display:inline-flex; align-items:center; justify-content:center; min-height:2.4rem; border:1px solid #d7e0d8; border-radius:9px; padding:.45rem .75rem; background:#f7f8f4; color:#3f5846; font-size:.75rem; font-weight:700; text-decoration:none; }
.sg-history-link:hover { border-color:#aab9a6; background:#eef2e9; }
.sg-latest-label { display:inline-flex; align-items:center; gap:.4rem; flex:none; border:1px solid #e1e7e0; border-radius:999px; padding:.4rem .7rem; background:#f7f8f4; color:#77837e; font-size:.7rem; }
.sg-latest-label svg { width:.85rem; height:.85rem; }
.sg-empty { display:flex; flex-direction:column; align-items:center; padding:2.5rem 1.5rem; text-align:center; }
.sg-empty-icon { display:grid; place-items:center; width:2.8rem; height:2.8rem; border:1px solid #e1e7dc; border-radius:14px; background:#f3f6ed; color:#657e56; }
.sg-empty h3 { margin:1rem 0 0; color:#35413e; font-size:.9rem; }
.sg-empty p { max-width:360px; margin:.4rem 0 0; color:#7a8580; font-size:.78rem; line-height:1.65; }
.sg-report-list { display:grid; padding:0 1.6rem .4rem; }
.sg-report-row { display:grid; grid-template-columns:minmax(165px,1.7fr) .65fr .65fr 1fr 1fr auto; align-items:center; gap:1rem; border-bottom:1px solid #e5eae5; padding:1rem .25rem; color:inherit; text-decoration:none; transition:background .16s; }
.sg-report-row:hover { background:#f7f8f4; }
.sg-report-entry { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.5rem; border-bottom:1px solid #e5eae5; }
.sg-report-entry .sg-report-row { border:0; }
.sg-report-delete-form { margin:0; }
.sg-delete-audit { border:1px solid #e4c7c3; border-radius:8px; padding:.55rem .7rem; background:#fff; color:#9a332b; font-size:.72rem; font-weight:700; white-space:nowrap; }
.sg-delete-audit:hover { background:#fff1ef; color:#7f211b; }
.sg-report-site { display:flex; min-width:0; align-items:center; gap:.7rem; }
.sg-report-icon { display:grid; place-items:center; width:2.2rem; height:2.2rem; flex:none; border-radius:10px; background:#edf2f6; color:#526b7d; }
.sg-report-site > span:last-child { display:grid; gap:.1rem; min-width:0; }
.sg-report-site strong { overflow:hidden; color:#33403d; font-size:.84rem; text-overflow:ellipsis; }
.sg-report-site small { color:#77837e; font-size:.7rem; }
.sg-report-detail { display:grid; gap:.2rem; }
.sg-report-detail small { color:#89938e; font-size:.63rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.sg-report-detail strong { color:#384441; font-size:.79rem; font-weight:600; }
.sg-report-arrow { width:.95rem; height:.95rem; color:#89938e; transition:transform .16s; }
.sg-report-row:hover .sg-report-arrow { transform:translateX(2px); }
.sg-report-navigation { display:flex; align-items:center; gap:.55rem; margin:-.7rem 0 0; color:#87928d; font-size:.8rem; }
.sg-report-navigation a { color:#526b5a; font-weight:650; text-decoration:none; }
.sg-report-navigation a:hover { text-decoration:underline; }
.sg-compare-picker { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); align-items:center; gap:1.5rem; }
.sg-compare-picker h2 { margin:.2rem 0; font-size:1.05rem; }
.sg-compare-picker p { margin:.25rem 0 0; }
.sg-compare-picker form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.55rem .7rem; align-items:end; }
.sg-compare-picker label { grid-column:1/-1; font-size:.78rem; font-weight:700; }
.sg-compare-picker select { width:100%; min-width:0; min-height:2.8rem; border:1px solid #ccd7d0; border-radius:9px; padding:.55rem .7rem; background:white; color:var(--ink); font:inherit; font-size:.8rem; }
.sg-compare-picker button { min-height:2.8rem; border-radius:9px; padding:.6rem .9rem; font-size:.8rem; }
.sg-compare-empty { text-align:right; }
.sg-compare-heading h1 { margin:.35rem 0; font-size:clamp(1.7rem,4vw,2.35rem); letter-spacing:-.045em; }
.sg-compare-heading p:last-child { margin:.3rem 0 0; }
.sg-compare-download { display:inline-flex; align-items:center; margin-top:.9rem; border-radius:10px; padding:.75rem 1.1rem; background:var(--brand); color:#fffefa; font-size:.83rem; font-weight:700; text-decoration:none; }
.sg-compare-download:hover { background:var(--brand-2); color:#fffefa; }
.sg-compare-warning { display:grid; gap:.25rem; background:#fff6db; color:#725b1c; border-color:#eadba9; }
.sg-compare-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sg-compare-metric { display:grid; gap:.25rem; }
.sg-compare-metric > span { color:var(--muted); font-size:.8rem; font-weight:650; }
.sg-compare-metric strong { font-size:1.65rem; letter-spacing:-.035em; }
.sg-compare-metric small { color:var(--muted); font-size:.75rem; }
.sg-change-positive { color:#28734d; }
.sg-change-negative { color:#a13f36; }
.sg-audit-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }
.sg-audit-side h2 { margin:.25rem 0 .5rem; font-size:1rem; }
.sg-audit-side p:not(.eyebrow) { color:var(--muted); font-size:.82rem; }
.sg-audit-side a { font-size:.8rem; font-weight:700; }
.sg-finding-group > .section-heading { align-items:center; margin-bottom:1rem; }
.sg-finding-group h2 { margin:0; font-size:1.15rem; }
.sg-finding-group .section-heading p { margin:.25rem 0 0; font-size:.8rem; }
.sg-finding-group .severity { background:#edf1f7; color:#586074; }
.sg-finding-new { border-top:4px solid #b42318; }
.sg-finding-resolved { border-top:4px solid #31805a; }
.sg-finding-persisting { border-top:4px solid #c58b2a; }
.sg-no-findings { margin:0; color:var(--muted); font-size:.85rem; }
.sg-history-panel { box-shadow:0 12px 36px rgba(35,57,46,.035); }
.sg-usage-panel { margin-top:1.25rem; }
.sg-usage-heading h2 { margin:.45rem 0 0; font-size:1.2rem; font-weight:700; letter-spacing:-.035em; }
.sg-usage-description { margin:.4rem 0 0; color:#77837e; font-size:.78rem; line-height:1.6; }
.sg-usage-table-wrap { overflow-x:auto; }
.sg-usage-table { width:100%; border-collapse:collapse; text-align:left; }
.sg-usage-table caption { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.sg-usage-table th { padding:.8rem 1.2rem; background:#f7f8f4; color:#78847d; font-size:.67rem; font-weight:750; letter-spacing:.07em; text-transform:uppercase; }
.sg-usage-table td { border-top:1px solid #e5eae5; padding:.9rem 1.2rem; color:#384441; font-size:.8rem; vertical-align:top; }
.sg-usage-table td:first-child strong, .sg-usage-table td small { display:block; }
.sg-usage-table td small { margin-top:.2rem; color:#77837e; font-size:.7rem; }
.sg-usage-table a { color:#526b5a; font-weight:700; text-decoration:none; }
.sg-usage-table a:hover { text-decoration:underline; }
.sg-usage-status { display:inline-flex; border:1px solid #dce2e7; border-radius:999px; padding:.28rem .55rem; font-size:.69rem; font-weight:700; white-space:nowrap; }
.sg-usage-status-queued { border-color:#e6d5a4; background:#fbf6e7; color:#806525; }
.sg-usage-status-credit_used { border-color:#cfe0d1; background:#eef5ee; color:#3d6945; }
.sg-usage-status-refunded { border-color:#d7dfe6; background:#edf2f6; color:#526b7d; }
.sg-refund-reason { max-width:360px; }
.sg-usage-unavailable { color:#89938e; font-size:.72rem; }
.sg-usage-empty { margin:0; padding:1.5rem 1.2rem; color:#77837e; font-size:.82rem; }
.sg-history-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:1.5rem; }
.sg-history-heading h1 { margin:.45rem 0 0; font-size:1.55rem; letter-spacing:-.04em; }
.sg-history-description { margin:.35rem 0 0; color:#77837e; font-size:.8rem; }
.sg-history-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:.55rem .65rem; align-items:end; width:min(100%, 620px); }
.sg-history-filter-field { min-width:0; }
.sg-history-filter-field label { display:block; margin-bottom:.4rem; color:#34413f; font-size:.75rem; font-weight:700; }
.sg-history-filter-field input, .sg-history-filter-field select { width:100%; min-width:0; min-height:2.8rem; padding:.6rem .8rem; border-color:#ccd7d0; border-radius:9px; font-size:.85rem; }
.sg-history-filters button { min-height:2.8rem; border-radius:9px; padding:.6rem .9rem; font-size:.8rem; }
.sg-history-clear { display:inline-block; margin-top:.35rem; color:#526b5a; font-size:.72rem; }
.sg-history-count { margin:1.1rem 1.6rem .2rem; color:#77837e; font-size:.75rem; }
.sg-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:.4rem; padding:1rem 1.2rem 1.4rem; }
.sg-pagination a, .sg-pagination-current, .sg-pagination-disabled { display:inline-flex; min-width:2.25rem; min-height:2.25rem; justify-content:center; align-items:center; border:1px solid #dce2e7; border-radius:8px; padding:.35rem .65rem; background:#fff; color:#46594d; font-size:.78rem; text-decoration:none; }
.sg-pagination a:hover { background:#f1f4ed; }
.sg-pagination-current { border-color:#516c52; background:#516c52; color:white; font-weight:700; }
.sg-pagination-disabled { color:#a0aaa4; background:#f7f8f7; }
@media (max-width:900px) {
    .sg-intro { grid-template-columns:minmax(0,1fr) 220px; }
    .sg-workgrid { grid-template-columns:minmax(0,1fr); }
    .sg-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .sg-report-row { grid-template-columns:minmax(150px,1.5fr) repeat(2,minmax(60px,.7fr)) repeat(2,minmax(95px,1fr)) auto; gap:.7rem; }
    .sg-history-heading { align-items:flex-start; flex-direction:column; }
    .sg-history-filters { grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
    .sg-history-filters button { grid-column:1/-1; }
    .sg-history-clear { grid-column:1/-1; margin-top:0; }
    .sg-compare-picker { grid-template-columns:minmax(0,1fr); }
    .sg-compare-summary, .sg-audit-pair { grid-template-columns:minmax(0,1fr); }
    .sg-compare-picker form { grid-template-columns:minmax(0,1fr); }
    .sg-compare-picker label { grid-column:auto; }
    .sg-compare-picker button { width:100%; }
    .sg-compare-empty { text-align:left; }
}
@media (max-width:860px) {
    .two-up, .summary-grid { grid-template-columns:1fr; }
    .report-header, .preview-heading, .issue-title-row, .section-heading { flex-direction:column; align-items:flex-start; }
    .report-header, dd { overflow-wrap:anywhere; }
}
@media (max-width:640px) {
    .container { width:min(100% - 1.25rem, 1180px); }
    .header-row { min-height:2.6rem; flex-wrap:wrap; }
    .account-actions { flex-basis:100%; justify-content:flex-end; }
    .brand img { width:175px; }
    .tagline { max-width:9rem; font-size:.65rem; text-align:right; }
    .page-shell { gap:1.25rem; padding:1.7rem 0 2.5rem; }
    .sg-intro { grid-template-columns:minmax(0,1fr); gap:1rem; }
    .sg-billing-status { align-items:stretch; flex-direction:column; }
    .sg-plan-grid { grid-template-columns:minmax(0,1fr); }
    .sg-intro-note { max-width:22rem; }
    .sg-workgrid { gap:.9rem; }
    .sg-panel-heading { padding:1rem 1.1rem; }
    .sg-form { gap:1.2rem; padding:1.1rem; }
    .sg-check-panel { padding:1rem; }
    .sg-submit-row { align-items:stretch; flex-direction:column; }
    .sg-submit-button { width:100%; }
    .sg-submit-row > span { text-align:center; }
    .sg-recent-heading { align-items:flex-start; padding:1rem 1.1rem; }
    .sg-history-actions { align-items:flex-start; flex-direction:column; }
    .sg-history-heading { padding:1rem 1.1rem; }
    .sg-history-count { margin-right:1rem; margin-left:1rem; }
    .sg-usage-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
    .sg-usage-table, .sg-usage-table tbody, .sg-usage-table tr, .sg-usage-table td { display:block; width:100%; }
    .sg-usage-table tr { border-top:1px solid #e5eae5; padding:.65rem 0; }
    .sg-usage-table td { display:grid; grid-template-columns:minmax(90px,.65fr) minmax(0,1.35fr); gap:.7rem; border:0; padding:.35rem 1rem; }
    .sg-usage-table td::before { content:attr(data-label); color:#78847d; font-size:.66rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
    .sg-report-list { padding:0 1rem .3rem; }
    .sg-report-row { grid-template-columns:minmax(0,1fr) repeat(2,minmax(60px,auto)); gap:.7rem .5rem; padding:.9rem .1rem; }
    .sg-report-entry { grid-template-columns:minmax(0,1fr) auto; gap:.3rem; }
    .sg-delete-audit { padding:.5rem; font-size:.66rem; }
    .sg-report-site { grid-column:1/-1; }
    .sg-report-detail small { font-size:.58rem; }
    .sg-report-detail strong { font-size:.73rem; }
    .sg-report-detail:nth-of-type(5) { grid-column:2/3; }
    .sg-report-arrow { grid-column:3/4; grid-row:3; justify-self:end; align-self:center; }
    .sg-compare-metric strong { font-size:1.45rem; }
    .sg-finding-group > .section-heading { flex-direction:row; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; } .sg-progress-spinner { animation:none; border-top-color:#f5821f; border-right-color:#f5821f; } }

.sg-settings-intro { max-width:760px; }
.sg-settings-intro h1 { margin:.45rem 0 0; font-size:clamp(1.8rem,4vw,2.35rem); letter-spacing:-.045em; }
.sg-settings-intro > p:last-child { margin:.5rem 0 0; color:var(--muted); font-size:.9rem; }
.sg-settings-panel { box-shadow:0 12px 36px rgba(35,57,46,.035); }
.sg-settings-description { margin:.45rem 0 0; color:var(--muted); font-size:.82rem; line-height:1.65; }
.sg-settings-form { display:grid; gap:1.2rem; padding:1.4rem 1.6rem 1.6rem; }
.sg-settings-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.sg-settings-field { min-width:0; }
.sg-settings-field-wide { grid-column:1/-1; }
.sg-settings-field label { display:block; margin-bottom:.4rem; color:#34413f; font-size:.8rem; font-weight:700; }
.sg-settings-field input, .sg-settings-field textarea { width:100%; min-height:2.8rem; border:1px solid #ccd7d0; border-radius:9px; padding:.65rem .8rem; background:#fff; color:var(--ink); font:inherit; font-size:.84rem; }
.sg-settings-field textarea { min-height:5rem; resize:vertical; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.76rem; line-height:1.55; overflow-wrap:anywhere; }
.sg-settings-field input[readonly] { background:#f4f6f3; color:#5d6b64; }
.sg-settings-field input:focus-visible, .sg-settings-field textarea:focus-visible { border-color:#66875c; outline:3px solid rgba(181,207,117,.45); outline-offset:2px; }
.sg-settings-hint { margin:.35rem 0 0; color:#77837e; font-size:.72rem; line-height:1.55; }
.sg-settings-security-note { margin:0; border-left:3px solid #b5cf75; padding:.5rem .75rem; background:#f5f8ed; color:#58684a; font-size:.76rem; line-height:1.6; }
.sg-settings-credentials { display:grid; }
.sg-settings-credential { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; border-top:1px solid #e5eae5; padding:1.1rem 1.5rem; }
.sg-settings-credential-copy { min-width:0; }
.sg-settings-credential-heading { display:flex; align-items:center; gap:.65rem; }
.sg-settings-credential-heading h3 { margin:0; font-size:.93rem; }
.sg-settings-credential p { margin:.35rem 0 0; color:#64716b; font-size:.76rem; overflow-wrap:anywhere; }
.sg-settings-credential p strong { display:inline-block; min-width:8.5rem; color:#394741; }
.sg-settings-credential code { color:#334d3e; font-size:.75rem; }
.sg-settings-secret-state { color:#7a8580 !important; }
.sg-settings-status { display:inline-flex; border:1px solid #dce2e7; border-radius:999px; padding:.22rem .5rem; font-size:.66rem; font-weight:750; }
.sg-settings-status-active { border-color:#cfe0d1; background:#eef5ee; color:#3d6945; }
.sg-settings-status-expired { border-color:#e4c7c3; background:#fff2ef; color:#9a332b; }
.sg-settings-remove { border:1px solid #e4c7c3; border-radius:8px; padding:.55rem .7rem; background:#fff; color:#9a332b; font-size:.72rem; font-weight:700; white-space:nowrap; }
.sg-settings-remove:hover { background:#fff1ef; color:#7f211b; }
.sg-settings-empty { margin:0; padding:1.25rem 1.5rem; color:var(--muted); font-size:.82rem; }

@media (max-width:640px) {
    .sg-settings-form { padding:1.1rem; }
    .sg-settings-fields { grid-template-columns:minmax(0,1fr); }
    .sg-settings-field-wide { grid-column:auto; }
    .sg-settings-credential { flex-direction:column; padding:1rem; }
}
