:root{font-family:Segoe UI,Arial,sans-serif;color:#203044;background:#f3f5f8}*{box-sizing:border-box}body{margin:0;display:flex}aside{width:240px;min-height:100vh;background:#142b40;color:white;padding:32px 22px;flex-shrink:0}.brand{font-size:27px;font-weight:700}aside p{color:#a6b9ca;font-size:13px}nav{display:grid;gap:8px;margin-top:35px}button{border:1px solid #cbd5df;border-radius:8px;background:white;color:#243d51;padding:11px 16px;cursor:pointer;font:inherit}button:hover{background:#e6eff5}button:disabled{opacity:.5;cursor:wait}nav button{background:transparent;color:white;text-align:left;border:0}nav button:hover,nav button.selected{background:#28485f}main{flex:1;min-width:0;padding:0 36px 40px}header{height:80px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce3ea;color:#657587}h1{font-size:30px;margin:30px 0 8px}h2{font-size:20px}.sub{color:#6c7b8b}.card{background:white;border:1px solid #dce3ea;border-radius:12px;padding:24px;margin:20px 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric strong{display:block;font-size:32px;margin:12px 0;color:#1a766d}form{display:grid;gap:16px;max-width:620px}label{display:grid;gap:7px;font-size:14px}input,select,textarea{padding:12px;border:1px solid #bfcdd9;border-radius:7px;font:inherit;width:100%}.actions,.tabs{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.primary{background:#187e73;color:white;border-color:#187e73}.primary:hover{background:#10685f}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #e0e6eb;vertical-align:top}pre{white-space:pre-wrap;word-break:break-word;font-size:13px;background:#f5f7fa;padding:16px}#notice{margin-top:15px;color:#9b3f18}a{color:#177b73}.scroll{overflow:auto}.tabs .selected{background:#d7ebe7}details{margin:12px 0}@media(max-width:850px){body{display:block}aside{width:100%;min-height:auto;padding:16px}nav{display:flex;flex-wrap:wrap;margin-top:14px}main{padding:0 16px 30px}.grid{grid-template-columns:1fr}}
.partner-portal .brand{text-decoration:none;color:inherit}.partner-portal .auth-card{max-width:540px}.partner-portal .portal-intro{max-width:740px;margin-bottom:28px}.partner-portal .consent{display:block;font-size:14px;line-height:1.7}.partner-portal .consent input{width:auto;display:inline;vertical-align:middle;margin-right:6px}.partner-portal small{display:block;font-size:12px;color:#687386;overflow-wrap:anywhere}.partner-portal footer{margin-top:48px;font-size:13px;color:#687386}.partner-portal .admin-link{display:block;margin-top:24px;font-size:12px}.partner-portal #menu-toggle{display:none}.partner-portal .scroll{max-width:100%;overflow-x:auto}.partner-portal #notice{white-space:pre-wrap}.partner-portal header{gap:12px}.partner-portal main{min-width:0}
@media(max-width:760px){.partner-portal{display:block}.partner-portal aside{position:static;width:auto;height:auto;padding:16px}.partner-portal main{margin-left:0;padding:20px 16px}.partner-portal #menu-toggle{display:block;margin-top:12px}.partner-portal nav{display:none}.partner-portal nav.open{display:grid;margin-top:12px}.partner-portal .admin-link{margin-top:12px}.partner-portal .grid{grid-template-columns:1fr}.partner-portal h1{font-size:28px}.partner-portal .card{padding:18px}.partner-portal .actions{flex-wrap:wrap}.partner-portal table{min-width:500px}}
.sso-card{max-width:560px;margin:8vh auto;padding:32px}.sso-card p{overflow-wrap:anywhere}@media(max-width:600px){.sso-card{margin:24px 12px;padding:24px}}

.object-selection{border:0;padding:0;margin:0}.object-selection legend{font-size:14px}.object-option{display:flex;align-items:center;gap:10px;padding:8px 0}.object-option input{width:18px;height:18px;flex-shrink:0}
.mapping-guide{background:#fff;border:1px solid #dce3ea;border-radius:12px;padding:18px 24px}.mapping-guide summary{cursor:pointer;color:#177b73;font-weight:600}.mapping-guide li{margin:12px 0;line-height:1.5}.mapping-guide p{line-height:1.5}
nav button[data-page="2"]{display:flex;align-items:center;justify-content:space-between;gap:12px}.connection-light{display:inline-block;width:11px;height:11px;border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.7)}.connection-light.disconnected{background:#ff5252;box-shadow:0 0 6px rgba(255,82,82,.45)}.connection-light.connected{background:#39d98a;box-shadow:0 0 6px rgba(57,217,138,.4)}
.connection-light[hidden]{display:none}
#notice[data-state="success"]{color:#137a4b}#notice[data-state="error"]{color:#c62828}#notice[data-state="pending"]{color:#657587}
