.infra-tabs{margin-bottom:18px}.infra-counters{display:flex;gap:22px;flex-wrap:wrap;padding:14px 0;border-block:1px solid var(--o-line);margin:16px 0}.infra-counters b{margin-left:8px}.infra-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:16px}.infra-card{padding:18px;border:1px solid var(--o-input-border);border-radius:14px;background:var(--o-field);min-width:0}.infra-card p{margin:10px 0;overflow-wrap:anywhere}.infra-title{font:inherit;font-size:19px;font-weight:650;text-align:left;background:none;border:0;padding:0;color:var(--o-accent);cursor:pointer}.infra-links{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.infra-links .button{font-size:13px!important;padding:5px 8px;min-height:30px}.infra-checks{max-height:280px;overflow:auto}.infra-checks label{display:flex;gap:10px;padding:7px}.infra-status.overdue{color:#ffb9b5}.infra-status.soon{color:#f3d2a5}.infra-form>label{display:grid;gap:8px;margin:16px 0}.infra-form textarea{width:100%;min-height:90px}.infra-form fieldset{margin:16px 0;border:1px solid var(--o-input-border);border-radius:10px}html[data-theme=light] .infra-status.overdue{color:#a52c39}html[data-theme=light] .infra-status.soon{color:#87531f}

html body #main .infra-workspace{padding:20px}.infra-card>.button{margin-top:8px}@media(max-width:600px){html body #main .infra-workspace{padding:14px}}

/* Dashboard cards use the shared theme; each opens its exact subset below. */
html body #main .infra-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;border:0;margin:20px 0 26px}
html body #main .infra-kpi{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;min-height:156px;padding:18px;text-align:left;border:1px solid var(--o-input-border)!important;border-radius:15px;background:var(--o-glass)!important;color:var(--o-ink)!important;box-shadow:var(--o-shadow);cursor:pointer;font:inherit}
.infra-kpi-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:15px;font-weight:600}.infra-kpi-label>span{color:var(--o-accent);font-size:20px}.infra-kpi strong{font-size:34px;line-height:1.1;letter-spacing:-1px}.infra-kpi-hint{font-size:13px;line-height:1.4;color:var(--o-muted)}
html body #main .infra-kpi[aria-pressed=true]{border-color:var(--o-accent)!important;box-shadow:inset 0 0 0 1px var(--o-accent),var(--o-shadow)}
html body #main .infra-kpi:hover{background:var(--o-row-hover)!important}.infra-kpi.attention strong{color:#f3d2a5}html[data-theme=light] .infra-kpi.attention strong{color:#87531f}
.infra-results-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.infra-results-heading h3{margin:0;font-size:20px}.infra-results-heading h3>span{color:var(--o-muted);font-size:16px;font-weight:400}#infra-results{scroll-margin-top:24px}#infra-results-title:focus{outline:none}#infra-results-title:focus-visible{outline:2px solid var(--o-accent);outline-offset:4px}
@media(max-width:1100px){html body #main .infra-counters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){html body #main .infra-counters{gap:10px}html body #main .infra-kpi{padding:14px;min-height:150px}.infra-kpi-label{font-size:14px}.infra-kpi strong{font-size:30px}.infra-kpi-hint{font-size:12px}}
.infra-request-state{display:grid;gap:4px;margin:12px 0;padding:10px 12px;border:1px solid #9bc8ec66;border-radius:10px;background:#5a9ac315;color:inherit}.infra-request-state.current{border-left:3px solid #79b8e4}.infra-request-state.unconfirmed{border-left:3px solid #e0bc75}.infra-request-state.missing,.infra-request-state.previous{opacity:.85}.infra-request-state small{font-size:inherit;color:inherit}.infra-request-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.infra-request-actions .button{max-width:100%;white-space:normal;word-break:normal}
