:root { color-scheme: light; --paper: #f7f8fa; --paper-deep: #eef0f4; --ink: #202632; --muted: #667080; --blue: #466bb4; --blue-dark: #355798; --line: #dce0e7; }
.infra-header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:12px max(24px, calc((100vw - 1240px)/2)); border-bottom:1px solid var(--line); background:#fdfdfe; }
.infra-brand { display:flex; align-items:center; gap:14px; }
.infra-brand img { width:144px; height:54px; object-fit:contain; }
.infra-brand span { border-left:1px solid var(--line); padding-left:14px; font:500 14px var(--mono); color:var(--muted); }
.infra-header nav { display:flex; align-items:center; gap:22px; font-size:14px; }
.infra-header nav a { padding:8px 0; border-bottom:2px solid transparent; }
.infra-header nav a[aria-current] { color:var(--blue); border-color:var(--blue); }
.infra-foundation { padding:7px 24px; background:#eef2f9; text-align:center; color:#4c6184; font-size:12px; }
.infra-footer { display:flex; justify-content:space-between; gap:20px; margin-top:36px; padding:20px 28px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.infra-integration-mark { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--line); border-radius:8px; color:var(--blue); background:#edf1f8; font:500 16px var(--mono); }
.infra-catalog-note { padding:10px 12px; margin:0 0 20px; border-left:2px solid var(--blue); background:#eef2f9; font-size:13px; }
.su-page-head h1 { font-size:clamp(28px,4vw,40px); }
.su-hero h1 { font-size:clamp(32px,4.8vw,56px); }
.infra-documents { max-width:1000px; margin:36px auto; padding:0 24px; }
.infra-documents h1 { font-size:32px; margin-bottom:12px; }
.infra-documents h2 { font-size:20px; margin:30px 0 12px; }
.infra-document-list { list-style:none; padding:0; border:1px solid var(--line); background:#fff; border-radius:10px; }
.infra-document-list li { display:grid; grid-template-columns:1fr 180px; gap:12px; padding:16px 20px; border-bottom:1px solid var(--line); }
.infra-document-list li:last-child { border-bottom:0; }
.infra-document-list p { font-size:13px; margin-top:4px; }
.infra-document-list span { color:var(--muted); font-size:12px; }
.infra-scope { padding:20px; border:1px solid var(--line); border-radius:10px; background:#fff; font-size:14px; }
@media(max-width:600px) { .infra-header { align-items:flex-start; padding:12px 16px; gap:10px; flex-wrap:wrap; } .infra-brand img { width:122px; height:46px; } .infra-header nav { gap:16px; font-size:12px; width:100%; justify-content:space-between; } .infra-footer { flex-direction:column; gap:6px; } .infra-document-list li { grid-template-columns:1fr; } .infra-documents { padding:0 16px; } }

.infra-foundation { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 20px; text-align:left; }
.infra-session { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.infra-session a { text-decoration:underline; text-underline-offset:3px; }
.infra-session button { border:0; background:none; padding:0; color:inherit; font:inherit; text-decoration:underline; cursor:pointer; }
.infra-session button:disabled { opacity:.6; cursor:wait; }
#login-form { margin-top:24px; }
@media(max-width:600px) { .infra-foundation { padding:8px 16px; }.infra-session { gap:8px 14px; } }
