:root{font-family:system-ui,-apple-system,sans-serif;color:#162f37;background:#f3f6f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1200px;margin:auto;padding:28px 32px}header{display:flex;justify-content:space-between;border-bottom:1px solid #ccd9d7;font-size:.85rem}.institution{font-weight:800;letter-spacing:.13em}.intro{padding:48px 0 35px;max-width:750px}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:700;color:#196f66}h1{font-size:clamp(2rem,4.5vw,3.7rem);line-height:1.12;letter-spacing:-.04em;margin:12px 0 22px}p{line-height:1.65}.intro>p:last-child{color:#4c6269;max-width:610px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.toolbar h2{font-size:1.3rem}.toolbar span{font-size:.8rem;color:#51666c}button{background:white;border:1px solid #bacdca;border-radius:7px;padding:9px 13px;color:#174b44;cursor:pointer;font-weight:600}button:hover{background:#e9f3f0}button:focus-visible{outline:3px solid #2a8779;outline-offset:3px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{background:#fff;border:1px solid #d7e2df;border-radius:14px;padding:25px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.card h3{font-size:1.6rem;margin:0}.badge{font-size:.7rem;font-weight:800;letter-spacing:.06em;padding:7px 10px;border-radius:20px;background:#edf0f0;color:#536268}.free{background:#e1f3e9;color:#176343}.moderate{background:#fff0cf;color:#82560a}.busy{background:#fce6e1;color:#973a26}.metrics{display:flex;gap:28px;padding:24px 0;border-bottom:1px solid #e4ebe8}.metric{flex:1}.metric strong{display:block;font-size:2rem;font-weight:650}.metric span{font-size:.8rem;color:#587078}.hardware{font-size:.87rem;line-height:1.65;min-height:115px;margin:18px 0}.hardware p{margin:6px 0;overflow-wrap:anywhere}.counts{color:#60747a;font-size:.78rem}.ssh{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}code{font-size:.82rem;overflow-wrap:anywhere}.note{font-size:.8rem;color:#85531b}.guide{margin-top:38px;border-top:1px solid #cbdad5;padding-top:22px;color:#50666d}.guide h2{font-size:1.1rem;color:#213f46}.guide p{font-size:.88rem;max-width:900px}footer{font-size:.75rem;color:#667c82;display:flex;justify-content:space-between;gap:12px}#error{background:#fff0cf;padding:14px;border-radius:8px}@media(max-width:720px){header,main,footer{padding:22px 18px}.grid{grid-template-columns:1fr}.toolbar,footer{align-items:flex-start;flex-direction:column}.intro{padding-top:25px}.card{padding:20px}}

/* Identidade institucional; logo original servido pelo próprio portal. */
.site-banner{max-width:none;padding:0;background:#143d43;color:#fff;border:0;border-bottom:5px solid #bd333b}
.banner-inner{max-width:1200px;margin:auto;padding:36px 32px;display:flex;align-items:center;gap:32px;width:100%}
.logo-link{display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;padding:16px;border-radius:10px}
.logo-link img{display:block;width:106px;height:auto}
.logo-link:focus-visible{outline:3px solid #fff;outline-offset:5px}
.banner-title{min-width:0}.banner-title .institution{font-size:.72rem;letter-spacing:.16em;color:#c5dcd8;margin:0 0 10px}
.banner-title h1{font-size:clamp(1.8rem,4vw,3.1rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 12px}
.banner-title h1 span{white-space:nowrap}.banner-title>p:last-child{color:#d2e1df;margin:0;font-size:.95rem}
.intro{padding:12px 0 24px;max-width:850px}.intro h2{font-size:1.45rem;line-height:1.35;margin:10px 0}.intro>p:last-child{max-width:750px}
@media(max-width:720px){.banner-inner{padding:26px 18px;gap:18px}.logo-link{padding:10px}.logo-link img{width:76px}.banner-title>p:last-child{font-size:.82rem}}
@media(max-width:420px){.banner-inner{align-items:flex-start;flex-direction:column}.logo-link img{width:64px}}

.site-nav{background:#fff;border-bottom:1px solid #d7e2df}.nav-inner{max-width:1200px;margin:auto;padding:0 32px;display:flex;gap:12px}
.site-nav a{padding:16px 20px;text-decoration:none;color:#4b6268;font-weight:650;border-bottom:3px solid transparent}
.site-nav a:hover{background:#f0f6f4;color:#174b44}.site-nav a[aria-current="page"]{color:#174b44;border-bottom-color:#196f66}
.site-nav a:focus-visible,.primary-link:focus-visible,footer a:focus-visible{outline:3px solid #2a8779;outline-offset:3px}
.home-intro{max-width:850px;padding-bottom:36px}.home-intro h2{font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.025em}
.primary-link{display:inline-flex;align-items:center;gap:20px;background:#196f66;color:#fff;padding:14px 20px;border-radius:8px;text-decoration:none;font-weight:650;margin-top:8px}.primary-link:hover{background:#12564f}
.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.info-panel{padding:26px;background:#fff;border:1px solid #d7e2df;border-radius:12px;min-width:0}.info-panel h2{font-size:1.15rem;margin-top:0}.info-panel p{color:#4c6269;font-size:.92rem}.info-panel pre{background:#f0f5f3;padding:14px;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere}footer a{color:#196f66}
@media(max-width:720px){.nav-inner{padding:0 18px}.home-grid{grid-template-columns:1fr}.info-panel{padding:20px}.primary-link{font-size:.9rem}}

.nav-inner{flex-wrap:wrap}.guide a{color:#196f66}.guide a:focus-visible{outline:3px solid #2a8779;outline-offset:3px}

.table-scroll{overflow-x:auto;background:#fff;border:1px solid #d7e2df;border-radius:12px}
.status-table{border-collapse:collapse;width:100%;font-size:.9rem;text-align:left}
.status-table caption{text-align:left;padding:16px 20px;color:#50666d;font-size:.83rem;line-height:1.5}
.status-table th,.status-table td{padding:18px 14px;border-top:1px solid #e0e9e5;vertical-align:top}
.status-table thead{background:#eaf1ee;color:#35564f}.status-table th[scope="row"]{font-size:1.1rem}
.status-table .numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.status-table tbody tr:hover{background:#f8fbfa}.status-table details{min-width:145px;max-width:420px}
.status-table summary{cursor:pointer;color:#196f66;font-weight:600;white-space:nowrap}
.status-table summary:focus-visible,.table-scroll:focus-visible{outline:3px solid #2a8779;outline-offset:-3px}
.status-table .hardware{min-height:0;margin:12px 0}.status-table .ssh{margin-top:10px}
.status-table .note{margin:8px 0 0}.status-table .badge{display:inline-block;white-space:nowrap}

.quick-start{grid-column:1 / -1}.quick-start ol{padding-left:24px;max-width:900px}.quick-start li{padding-left:8px;margin:18px 0;line-height:1.7;color:#4c6269}.info-panel a{color:#196f66}.info-panel a:focus-visible{outline:3px solid #2a8779;outline-offset:3px}
