/* Shared visual rhythm for the three existing portals. Business layout and routes stay owned by each portal. */
:root{--portal-ink:#172b42;--portal-muted:#62758a;--portal-line:#dce5ee;--portal-blue:#245e98;--portal-paper:#f3f6fa}
body{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--portal-ink);background:var(--portal-paper);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,input,select,summary{outline-offset:4px}
:focus-visible{outline:2px solid #3979b7}
.sidebar,.company-sidebar,.finance-navigation{background:#142b43;color:#e8eff7;border-right:1px solid #203950}
.sidebar .brand,.company-brand,.finance-brand{color:#fff}
.sidebar .nav-item,.company-nav a,.finance-navigation nav a{color:#bacada;border-radius:7px}
.sidebar .nav-item.active,.company-nav a.active,.finance-navigation nav a.active{background:#244b70;color:#fff;box-shadow:inset 3px 0 #73bfd5}
.sidebar .nav-item:hover,.company-nav a:hover,.finance-navigation nav a:hover{background:#203f5d;color:white}
.company-nav summary,.finance-navigation nav p,.sidebar .nav-label{color:#91aac1;letter-spacing:.04em}
.company-navigation-note,.finance-navigation-note{color:#91aac1}
.topbar,.company-header{background:#fff;border-bottom:1px solid var(--portal-line);box-shadow:0 1px 0 rgba(25,45,70,.02)}
.topbar h1,.company-header h1{font-size:24px;line-height:1.4;letter-spacing:-.025em;font-weight:650}
.card,.panel,.company-panel{border:1px solid var(--portal-line);border-radius:12px;box-shadow:0 3px 12px rgba(28,50,76,.035)}
.card h2,.panel h2,.company-panel h2{font-size:18px;line-height:1.5;letter-spacing:-.015em;color:var(--portal-ink)}
.card-head,.module-head,.company-section-head{gap:16px;align-items:center}
.card p,.panel p,.company-muted,.directory-note{color:var(--portal-muted);line-height:1.7}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:#cedae5;border-radius:7px;background-color:#fff}
button.primary,a.primary,.company-button.primary{background:#245e98;color:#fff;border:1px solid #245e98;box-shadow:0 2px 3px rgba(20,55,90,.09)}
button.primary:hover,a.primary:hover,.company-button.primary:hover{background:#1c4d7e}
button.secondary,.company-button:not(.primary){border:1px solid #ccd9e5;background:#fff;color:#28445e}
table{font-variant-numeric:tabular-nums}
thead th{background:#f4f7fb;color:#516a82;font-size:12px;letter-spacing:.02em;border-bottom:1px solid #dce5ee}
tbody td{border-bottom-color:#e8edf3;line-height:1.55}
tbody tr:hover{background:#f8fbfe}
.finance-company-context{border:1px solid #dce5ee;border-left:3px solid #4d88b4;background:#f9fbfd;border-radius:8px;padding:14px 18px;margin-bottom:22px}
.finance-products-home{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:start}
.finance-products-home>h2{grid-column:1/-1;margin:0 0 2px}
.finance-product-entry{display:grid;gap:9px;padding:20px;border:1px solid #d9e4ed;background:#fcfdff;border-radius:9px;text-decoration:none;color:#233d55;transition:border-color .15s,background .15s}
.finance-product-entry:hover{border-color:#91b2d0;background:#f3f8fd}
.finance-product-name{font-size:17px;font-weight:650}
.finance-product-entry p{font-size:13px;margin:0;min-height:44px}
.finance-product-entry strong{justify-self:start;display:inline-flex;align-items:center;min-height:34px;background:#e8f0f8;color:#245e98;border-radius:6px;padding:7px 13px;font-size:12px}
.finance-reference-links{display:flex;flex-wrap:wrap;gap:10px}
.finance-reference-links a{display:inline-flex;align-items:center;min-height:40px;padding:9px 15px;border:1px solid #cbdbe8;border-radius:7px;color:#245e98;background:#f9fbff;text-decoration:none;font-size:13px;font-weight:600}
.directory-link{border:1px solid #dbe5ef;border-radius:9px;background:#fff;padding:20px}
.directory-link:hover{border-color:#9ab7cf;background:#f7fafe}
.directory-link strong{font-size:16px;color:#25445e}
.directory-link small{color:#718397;line-height:1.6;margin-top:7px}
.channel-card{padding:24px}.channel-card .company-actions{padding-top:14px;border-top:1px solid #e7edf4;gap:9px}
.trading-tabs{border-bottom:1px solid #dce5ee;padding-bottom:14px}.trading-content{padding-top:18px}
@media(min-width:1100px){.finance-workspace,.company-workspace{padding:28px 32px}.finance-home-grid{gap:22px}.finance-topbar{padding:22px 32px}}
@media(max-width:700px){.finance-products-home{grid-template-columns:1fr}.finance-workspace,.company-workspace{padding:16px}.finance-company-context{margin-bottom:16px}.card,.panel,.company-panel{border-radius:9px}.finance-product-entry p{min-height:0}.topbar h1,.company-header h1{font-size:21px}.channel-card{padding:16px}}
@media(prefers-reduced-motion:reduce){.finance-product-entry{transition:none}}

.company-identity-note{display:block;color:#718397;font-size:12px;margin-top:5px}
@media(max-width:700px){.company-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.company-nav>button{grid-column:1/-1}.company-nav summary{padding-block:11px}.finance-navigation nav{height:auto;min-height:0;align-items:flex-start;padding-block:6px}.finance-navigation nav>a{align-self:flex-start;min-height:36px}.finance-navigation nav a.active{height:auto}.finance-navigation nav a{white-space:nowrap}}
