:root{--portal-navy:#081d35;--portal-blue:#0879ff;--portal-mint:#4ed9bd;--portal-paper:#f6f8fc;--portal-line:#dce6f1;--portal-text:#102b4b;--portal-muted:#59708b}.portal-header{background:rgba(255,255,255,.9);backdrop-filter:blur(12px)}.portal-content{padding-top:42px;padding-bottom:56px}.portal-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:11px;padding:13px 16px;background:var(--portal-blue);color:#fff;font:800 14px 'DM Sans',sans-serif;text-decoration:none;box-shadow:0 12px 24px rgba(8,121,255,.2)}.portal-button:hover{background:#0568da;color:#fff}.auth-header{height:78px;display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 48px));margin:auto}.auth-header nav{display:flex;align-items:center;gap:25px}.auth-header nav>a{color:#506782;text-decoration:none;font-weight:700;font-size:.9rem}.auth-header nav .auth-nav-action{padding:10px 14px;border-radius:10px;background:var(--portal-navy);color:#fff}.auth-brand{color:var(--portal-navy);margin:0}.auth-main{min-height:calc(100vh - 78px);padding:34px 24px 70px;background:radial-gradient(circle at 88% 15%,#d9efff 0,transparent 31%),radial-gradient(circle at 8% 80%,#d8f6ed 0,transparent 27%),var(--portal-paper)}.auth-layout{width:min(1080px,100%);min-height:620px;margin:0 auto;display:grid;grid-template-columns:1.05fr .82fr;gap:80px;align-items:center}.auth-intro{color:var(--portal-navy)}.auth-intro h1{max-width:620px;margin:8px 0 20px;font:800 clamp(2.6rem,5.4vw,5.2rem)/1.02 'Manrope',sans-serif;letter-spacing:-.07em}.auth-intro>p:not(.eyebrow){max-width:580px;color:var(--portal-muted);font-size:1.12rem;line-height:1.75}.auth-proof{display:grid;gap:12px;margin-top:32px;color:#264967;font-weight:700}.auth-proof i{width:26px;color:var(--portal-blue)}.auth-card{padding:37px;border:1px solid rgba(209,224,239,.9);border-radius:20px;background:rgba(255,255,255,.92);box-shadow:0 25px 58px rgba(29,65,106,.12)}.auth-card h2{margin:5px 0 8px;color:var(--portal-navy);font:800 1.85rem 'Manrope',sans-serif;letter-spacing:-.05em}.auth-card>p:not(.eyebrow){color:var(--portal-muted);margin:0 0 26px}.auth-card form{display:grid;gap:10px}.auth-card label{margin-top:5px;color:#28425f;font-size:.84rem;font-weight:800}.auth-card input{width:100%;padding:12px 13px;border:1px solid #cbd9e7;border-radius:10px;color:var(--portal-text);font:inherit}.auth-card input:focus{outline:3px solid rgba(8,121,255,.13);border-color:var(--portal-blue)}.auth-card .portal-button{margin-top:12px}.auth-switch{margin:23px 0 0!important;text-align:center;font-size:.9rem}.auth-switch a{font-weight:800;color:var(--portal-blue)}.dashboard-welcome{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding:34px;border:0!important;border-radius:20px!important;background:linear-gradient(115deg,#0a2444,#12508d)!important;color:#fff;box-shadow:0 18px 38px rgba(7,49,94,.2)!important}.dashboard-welcome h2{margin:7px 0 8px;font:800 clamp(1.9rem,3vw,2.65rem) 'Manrope',sans-serif}.dashboard-welcome p{margin:0;color:#cde1f7}.dashboard-welcome .eyebrow{color:#8cd8ff}.usage-chip{padding:12px 16px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(255,255,255,.1);text-align:right}.usage-chip strong{display:block;font-size:1.1rem}.usage-chip span{color:#d1e4f8;font-size:.82rem}.portal-stat{height:100%;padding:23px;border:1px solid var(--portal-line);border-radius:16px;background:#fff}.portal-stat p{margin:0 0 9px;color:var(--portal-muted);font-size:.83rem;font-weight:700}.portal-stat strong{font:800 1.8rem 'Manrope',sans-serif;color:var(--portal-text)}.portal-stat .stat-accent{display:block;margin-top:6px;color:#278a73;font-size:.79rem;font-weight:700}.portal-panel{border:1px solid var(--portal-line);border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(16,35,63,.05)}.portal-panel-header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 25px;border-bottom:1px solid #e6edf4}.portal-panel-header h2{margin:0;color:var(--portal-text);font:800 1.08rem 'Manrope',sans-serif}.portal-panel-header p{margin:3px 0 0;color:var(--portal-muted);font-size:.84rem}.endpoint-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.endpoint-list li{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 25px;border-bottom:1px solid #edf2f7}.endpoint-list li:last-child{border-bottom:0}.endpoint-list code{color:#155086}.empty-state{padding:25px;color:var(--portal-muted)}.key-page-intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:25px}.key-page-intro h2{margin:7px 0 0;font:800 2rem 'Manrope',sans-serif;letter-spacing:-.05em}.key-card{padding:28px;margin-bottom:16px}.key-card-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.key-card h3{margin:0;color:var(--portal-text);font:800 1.15rem 'Manrope',sans-serif}.key-field{display:flex;gap:10px;margin:20px 0;padding:10px 12px;border:1px solid #dce7f2;border-radius:11px;background:#f4f8fc}.key-field code{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#184d81}.copy-key{border:0;border-radius:7px;padding:4px 8px;background:#dbeeff;color:#075ab8;font-weight:800}.key-meta{display:flex;flex-wrap:wrap;gap:13px 25px;color:var(--portal-muted);font-size:.85rem}.key-meta strong{color:var(--portal-text)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}.guide-card{padding:24px}.guide-card i{color:var(--portal-blue);font-size:1.1rem}.guide-card h3{margin:15px 0 8px;font:800 1.05rem 'Manrope',sans-serif}.guide-card p{color:var(--portal-muted);line-height:1.6;font-size:.9rem}.guide-card code{display:block;margin-top:14px;padding:10px;border-radius:8px;background:#f2f6fa;font-size:.75rem;white-space:normal}.platform-hero{padding:32px;border:0!important;border-radius:20px!important;background:linear-gradient(110deg,#082443,#1066a2)!important;color:#fff}.platform-hero h2{font:800 2rem 'Manrope',sans-serif}.platform-hero .text-muted{color:#d1e5f7!important}.platform-hero .eyebrow{color:#90d9ff}.doc-hero{padding:32px;border-radius:20px;background:linear-gradient(115deg,#e8f4ff,#f9fcff);border:1px solid #d8e8f5}.doc-hero h2{font:800 2rem 'Manrope',sans-serif;color:var(--portal-text)}.doc-hero p{max-width:700px;color:var(--portal-muted)}.doc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.doc-secondary{padding:12px 15px;border:1px solid #b9cde2;border-radius:11px;color:#155086;text-decoration:none;font-weight:800}.portal-table-wrap{overflow:auto}.portal-table{width:100%;min-width:620px;border-collapse:collapse}.portal-table th,.portal-table td{padding:14px 17px;border-bottom:1px solid #e5edf5;text-align:left}.portal-table th{color:var(--portal-muted);font-size:.73rem;letter-spacing:.07em;text-transform:uppercase}.portal-table code{color:#155086}@media(max-width:900px){.auth-layout{grid-template-columns:1fr;gap:35px;padding:35px 0}.auth-intro h1{max-width:750px}.guide-grid{grid-template-columns:1fr}.dashboard-welcome{grid-template-columns:1fr}.usage-chip{text-align:left;justify-self:start}}@media(max-width:600px){.auth-header{width:min(100% - 32px,1180px)}.auth-header nav>a:not(.auth-nav-action){display:none}.auth-main{padding:20px 16px 50px}.auth-card{padding:25px}.auth-intro h1{font-size:2.7rem}.key-page-intro,.key-card-top{align-items:start;flex-direction:column}.portal-content{padding:26px 18px}.dashboard-welcome,.platform-hero,.doc-hero{padding:24px}.key-card{padding:21px}}

/* Keep the supplied raster logo as a compact brand mark, never page artwork. */
.brand-logo{display:block;width:34px;height:34px;flex:0 0 34px;object-fit:contain}.portal-nav .brand-logo{width:32px;height:32px;flex-basis:32px}.auth-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px max(24px,calc((100% - 1180px)/2));border-top:1px solid var(--portal-line);background:#fff;color:var(--portal-muted);font-size:.85rem}.auth-footer>div{display:flex;align-items:center;gap:9px;color:var(--portal-navy)}.auth-footer img{display:block;width:26px;height:26px;object-fit:contain}.auth-footer nav{display:flex;gap:18px}.auth-footer a{color:var(--portal-muted);text-decoration:none;font-weight:700}.auth-footer a:hover{color:var(--portal-blue)}(max-width:700px){.auth-footer{align-items:flex-start;flex-direction:column;gap:12px}.auth-footer nav{flex-wrap:wrap;gap:12px 18px}}
