:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#17243b;background:#f5f7fb;font-size:16px;--blue:#3567ee;--muted:#7b879b;--line:#e8edf4;--nav:#101c30}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #80a3ff;outline-offset:3px}a{color:inherit}button{border:0;background:none;color:inherit}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.8px;font-weight:650}h2{font-size:18px;font-weight:650}h3{font-size:16px}svg{display:block}small{font-size:12px}.muted{color:var(--muted)}.mono{font-family:Consolas,monospace;font-size:13px}.initial{padding:80px}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;flex:none;background:var(--nav);color:#92a1b9;position:fixed;inset:0 auto 0 0;padding:32px 18px 20px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:23px;font-weight:750;letter-spacing:2px;padding:0 10px}.brand-mark{display:grid;place-items:center;background:#4476ff;color:white;width:35px;height:35px;border-radius:10px;font-size:22px;letter-spacing:-3px;padding-right:3px}.workspace-tag{font-size:12px;margin:13px 11px 35px;color:#74869f;letter-spacing:1px}.nav-group{font-size:12px;padding:20px 16px 9px;color:#5e718d}.nav-link{display:flex;align-items:center;gap:13px;text-decoration:none;border-radius:7px;padding:12px 16px;font-size:14px;margin:3px 0}.nav-link:hover{background:#1b2b43;color:#fff}.nav-link.active{background:#2c59c9;color:#fff}.nav-link svg{width:18px;height:18px;opacity:.9}.nav-link .count{margin-left:auto;font-size:11px;background:#ffffff19;padding:2px 6px;border-radius:4px}.side-bottom{margin-top:auto;padding:24px 12px 0}.local-status{font-size:12px;display:flex;align-items:center;gap:8px;color:#a9b8ca}.dot{width:7px;height:7px;border-radius:50%;background:#29bc93;display:inline-block}.version{font-size:12px;color:#566c88;margin-top:10px}.main{width:calc(100% - 236px);margin-left:236px}.topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 38px;gap:16px}.crumb{font-size:14px;color:#8995a9}.crumb span{color:#33455f;margin-left:12px}.top-right{display:flex;align-items:center;gap:19px}.env{font-size:12px;background:#eef3fe;color:#5971ad;padding:6px 10px;border-radius:5px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e9efff;color:#4763ab;font-size:12px;font-weight:700}.profile{display:flex;align-items:center;gap:10px;font-size:13px}.role{font-size:11px;color:#8e99a9;margin-top:2px}.logout{color:#8591a4;font-size:12px}.content{max-width:1640px;margin:auto;padding:32px 38px 36px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.subtitle{font-size:14px;color:var(--muted);margin-top:9px;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dce3ed;background:#fff;border-radius:7px;padding:10px 15px;font-size:14px;line-height:1.3;white-space:nowrap}.btn:hover{background:#f4f7fc}.btn.primary{background:var(--blue);color:white;border-color:var(--blue);box-shadow:0 3px 7px #3567ee15}.btn.primary:hover{background:#2959d7}.btn.small{padding:6px 10px;font-size:12px}.btn.danger{color:#ce5262;border-color:#f2d9df}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.banner{background:#edf3ff;border:1px solid #dfe9ff;color:#4a679b;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-size:13px;margin-bottom:24px;line-height:1.6}.banner .pill{font-size:11px;background:#dce8ff;color:#426cd2;border-radius:4px;padding:2px 6px;white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px 23px}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#75839a}.stat-icon{background:#edf2fe;color:#6081c9;padding:8px;border-radius:9px}.stat-value{font-size:31px;font-weight:650;letter-spacing:-1px;margin:12px 0 11px;font-variant-numeric:tabular-nums}.stat-foot{font-size:12px;color:#94a0b1}.stat-foot b{font-weight:500;color:#269779;margin-right:7px}.panels{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,1fr);gap:22px;margin-bottom:22px}.panel{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 24px}.panel-head .muted{font-size:12px;margin-top:7px}.panel-body{padding:0 24px 24px}.legend{display:flex;align-items:center;gap:7px;font-size:12px;color:#7c899e}.legend i{width:8px;height:8px;border-radius:50%;background:#4f7af1}.chart{height:235px;width:100%}.chart text{font-family:inherit;font-size:11px;fill:#99a3b5}.chart-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:#8f9aab}.chart-footer b{color:#495a74;font-weight:500}.node-row{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #f0f3f8}.node-row:last-child{border:0}.country{background:#f2f5fa;border:1px solid #e6ebf4;border-radius:6px;width:34px;height:29px;display:grid;place-items:center;font-size:11px;color:#617695;flex:none;font-weight:650}.node-name{flex:1;font-size:13px}.node-name small{display:block;color:#98a3b4;margin-top:5px;font-size:11px}.latency{font-size:12px;color:#7b8ca6}.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;border-radius:5px;white-space:nowrap;background:#f0f3f8;color:#8794a7}.status.good{background:#e9f8f1;color:#28976f}.status.warn{background:#fff5e4;color:#bd8832}.status.bad{background:#fceef0;color:#c66976}.status:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.link{color:#4d73ca;font-size:13px;text-decoration:none}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap;font-size:13px}th{font-size:12px;font-weight:500;color:#8b98ac;background:#fafbfd;padding:13px 22px;border-block:1px solid var(--line)}td{padding:17px 22px;border-bottom:1px solid #eff2f7}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcff}.user-cell{display:flex;align-items:center;gap:9px}.user-cell .avatar{width:29px;height:29px;font-size:11px;background:#f0f3fa}.cell-secondary{font-size:11px;color:#99a4b6;margin-top:5px}.table-footer{padding:16px 24px;border-top:1px solid var(--line);font-size:12px;color:#94a0b2;display:flex;justify-content:space-between}.bottom-note{margin-top:26px;display:flex;justify-content:space-between;font-size:11px;color:#a2aaba}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;flex-wrap:wrap}.search{border:1px solid #e1e6ef;border-radius:7px;padding:10px 12px;min-width:250px;background:#fff;color:#33445e;font-size:13px}.filter{border:1px solid #e1e6ef;padding:9px 12px;border-radius:6px;background:white;color:#62728c;font-size:13px}.empty{padding:60px 20px;text-align:center;color:#8592a7;font-size:14px;line-height:1.8}.plan-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:19px}.plan{background:#fff;border:1px solid var(--line);border-radius:11px;padding:26px 23px;position:relative}.plan.featured{border-color:#7195ef;box-shadow:0 4px 16px #4171de0c}.plan-label{color:#7990b5;font-size:11px;letter-spacing:1.5px;margin-bottom:17px}.plan h2{font-size:19px}.price{font-size:35px;letter-spacing:-1px;font-weight:650;margin:23px 0}.price small{font-size:12px;letter-spacing:0;font-weight:400;color:#8b97ab}.plan ul{list-style:none;padding:20px 0;margin:0 0 17px;border-top:1px solid var(--line);font-size:13px;color:#70819c;line-height:2.7}.plan li:before{content:'✓';color:#4b7fd7;margin-right:10px}.plan .btn{width:100%;margin:4px 0}.sub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.sub-card{padding:24px}.sub-card .split{display:flex;justify-content:space-between;gap:14px}.progress{background:#edf1f8;height:6px;border-radius:4px;margin:17px 0 10px;overflow:hidden}.progress div{background:#5783f0;height:100%;border-radius:4px}.sub-meta{display:grid;grid-template-columns:repeat(3,1fr);margin:24px 0;gap:8px}.sub-meta small{color:#99a4b6;font-size:12px;display:block;margin-bottom:8px}.sub-meta b{font-size:13px;font-weight:500}.settings-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-size:13px;color:#5f7089}.field input,.field select{width:100%;padding:11px 12px;border:1px solid #dce3ef;border-radius:6px;color:#273954;background:#fff;outline:0;font-size:14px}.field input:focus,.field select:focus{border-color:#6a90ef;box-shadow:0 0 0 3px #5185ff10}.field input:disabled{background:#f6f8fb}.field small{color:#94a0b0;line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.check{display:flex;align-items:center;gap:9px;font-size:14px;margin:10px 0 24px}.check input{width:17px;height:17px;accent-color:var(--blue)}dialog{border:1px solid #dfe5ef;border-radius:14px;max-width:560px;width:calc(100% - 32px);padding:0;box-shadow:0 30px 100px #07112635;max-height:90vh}dialog::backdrop{background:#0b19336b;backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--line)}.modal-body{padding:25px 26px}.modal-foot{padding:16px 26px;display:flex;justify-content:flex-end;gap:10px;background:#f8fafd;border-top:1px solid var(--line)}.error{color:#c65267;font-size:13px;margin-bottom:12px;line-height:1.5}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:#193048;color:white;padding:13px 22px;border-radius:9px;font-size:14px;box-shadow:0 8px 35px #14254120;z-index:100;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.auth-art{background:#101e35;color:white;padding:65px 70px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-art:after{content:'';position:absolute;width:650px;height:650px;border:1px solid #355382;border-radius:50%;right:-280px;bottom:-320px;box-shadow:0 0 0 70px #36578810,0 0 0 140px #36578810,0 0 0 210px #36578810;pointer-events:none}.auth-art h1{font-size:44px;line-height:1.5;font-weight:550;margin-bottom:22px;letter-spacing:-1.8px}.auth-art p{color:#92a9cd;font-size:15px;line-height:2}.auth-art .brand{padding:0}.auth-form{display:flex;align-items:center;justify-content:center;padding:40px}.auth-inner{width:360px;max-width:100%}.auth-inner h1{font-size:26px}.auth-inner form{margin-top:32px}.auth-inner .btn{width:100%;padding:13px}.divider{display:flex;align-items:center;gap:16px;color:#a5adbb;font-size:12px;margin:25px 0}.divider:before,.divider:after{content:'';height:1px;background:#e9edf4;flex:1}.auth-footer{text-align:center;font-size:13px;color:#8b98ad;margin-top:24px}.mobile-menu{display:none}.auth-note{font-size:12px;color:#9ca8b9;line-height:1.8;margin-top:16px}.metric-note{background:#f7f9fd;border-radius:7px;padding:16px;font-size:13px;color:#8593a8;line-height:1.8}.permissions-table td,.permissions-table th{text-align:center}.permissions-table td:first-child,.permissions-table th:first-child{text-align:left}
@media(min-width:1600px){.content{padding:38px 48px}.stat{padding:26px}.chart{height:265px}}@media(max-width:1150px){.sidebar{width:205px}.main{margin-left:205px;width:calc(100% - 205px)}.content{padding:26px 23px}.topbar{padding:0 23px}.stats{gap:12px}.stat{padding:18px 15px}.stat-value{font-size:26px}.plan-grid{grid-template-columns:repeat(2,1fr)}.panels{grid-template-columns:1.4fr 1fr}.auth-art{padding:50px 40px}}@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0);box-shadow:0 0 0 100vw #0b172560}.main{margin:0;width:100%}.mobile-menu{display:block;font-size:20px}.topbar{height:64px;padding:0 20px}.top-right{gap:10px}.profile .profile-text,.crumb,.logout{display:none}.content{padding:24px 18px}.panels{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat-top{font-size:12px}.page-head{align-items:flex-start}h1{font-size:24px}.sub-grid,.settings-grid{grid-template-columns:1fr}.auth{grid-template-columns:1fr}.auth-art{display:none}.auth-form{min-height:100vh}.env{font-size:11px}.chart{height:220px}}@media(max-width:480px){.plan-grid{grid-template-columns:1fr}.stat{padding:16px}.stat-icon{display:none}.stat-value{font-size:25px}.page-head .actions .btn{padding:9px 11px;font-size:12px}.search{min-width:0;width:100%}.form-grid{grid-template-columns:1fr}.sub-meta{grid-template-columns:1fr 1fr}.bottom-note span:last-child{display:none}}
/* Shared customer portal: the same catalogue, identity and order system. */
.portal{min-height:100vh;background:#f7f9fc}.portal a{text-decoration:none}.portal-header{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1360px;margin:auto;padding:0 42px}.portal-header .brand{color:#172b49;font-size:22px;padding:0;letter-spacing:1.5px}.portal-header .brand small{font-size:13px;font-weight:400;letter-spacing:0;color:#8a97aa;white-space:nowrap}.brand-divider{color:#c4cddb;margin:0 3px;font-weight:300}.portal-header nav{display:flex;align-items:center;gap:31px}.portal-header nav a{color:#8490a3;font-size:14px;padding:31px 0;position:relative;white-space:nowrap}.portal-header nav a.active{color:#3467df}.portal-header nav a.active:after{content:'';position:absolute;bottom:19px;left:calc(50% - 3px);width:6px;height:6px;border-radius:50%;background:#4778ed}.portal-header-actions{display:flex;align-items:center;gap:20px;white-space:nowrap}.portal-admin-link{font-size:12px;color:#7085a8;border:1px solid #dfe6f0;padding:7px 10px;border-radius:5px}.portal-account-link{display:flex;align-items:center;gap:8px;font-size:13px;color:#52627c}.portal-main{max-width:1276px;margin:auto;padding:0 0 58px;min-height:65vh}.portal-hero{background:#0e213e;border-radius:17px;min-height:440px;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;padding:54px 65px;gap:65px;background-image:radial-gradient(ellipse at 70% 100%,#254d884d,transparent 65%)}.eyebrow{font-size:11px;font-weight:550;letter-spacing:2px;display:flex;align-items:center;gap:9px}.hero-copy .eyebrow{color:#8eacd5}.hero-copy .dot{background:#729ef8;width:6px;height:6px}.hero-copy h1{font-size:49px;color:#fff;line-height:1.35;font-weight:550;letter-spacing:-2px;margin:20px 0}.hero-copy h1 span{color:#8fb2ff}.hero-copy p{font-size:15px;line-height:1.95;color:#8da4c6}.hero-copy .actions{margin-top:27px;gap:28px}.hero-copy .btn{padding:13px 22px;background:#4a7af0;border-color:#4a7af0;font-size:14px}.hero-link{color:#bacceb;font-size:14px}.hero-footnote{font-size:11px;color:#607da5;margin-top:28px}.hero-account{border:1px solid #ffffff1a;border-radius:13px;padding:29px;background:#ffffff08;box-shadow:0 18px 40px #06142928;color:#fff}.hero-card-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:2px;color:#93add1;margin-bottom:26px;gap:8px}.portal-mini-tag{font-size:10px;letter-spacing:0;background:#ffffff08;border:1px solid #ffffff18;padding:3px 7px;border-radius:4px;color:#adc1df}.hero-account h2{font-size:21px;font-weight:500}.hero-account>p{font-size:12px;margin-top:12px;color:#839dc2}.hero-numbers{display:flex;gap:64px;margin:30px 0}.hero-numbers strong{display:block;font-size:38px;font-weight:500}.hero-numbers span{font-size:12px;color:#8ca5ca;display:block;margin-top:8px}.hero-start-price{margin:25px 0;display:flex;flex-direction:column;gap:9px}.hero-start-price small{color:#8ca5ca;font-size:12px}.hero-start-price strong{font-size:43px;font-weight:500;letter-spacing:-1px}.hero-start-price span{font-size:12px;color:#a5bbdd}.hero-card-action{display:flex;align-items:center;justify-content:space-between;color:#b4ccf4;border-top:1px solid #ffffff14;padding-top:20px;font-size:13px}.portal-section{padding-top:52px}.portal-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.portal-section-head h2{font-size:25px;margin-top:10px;font-weight:550;letter-spacing:-.5px}.portal-plans{gap:20px}.portal-plans .plan{padding:27px 24px}.portal-plans .plan-label{letter-spacing:1px;margin-bottom:22px;color:#8294ae}.portal-plans .price{margin:22px 0;font-size:34px}.portal-plans .plan.featured{border-color:#7497e8;box-shadow:0 8px 25px #406ada0c}.recommended{float:right;font-size:10px;color:#557ace;background:#eef3ff;border-radius:4px;letter-spacing:0;padding:3px 6px}.portal-flow{display:grid;grid-template-columns:repeat(3,1fr);padding:35px 0 0;margin-top:42px;border-top:1px solid #e4eaf3;gap:40px}.portal-flow>div{display:grid;grid-template-columns:40px 1fr;gap:8px 15px}.flow-num{grid-row:span 2;font-size:13px;font-weight:600;color:#6384c0;background:#eaf0fb;border-radius:8px;width:38px;height:38px;display:grid;place-items:center}.portal-flow h3{font-size:14px;font-weight:500}.portal-flow p{font-size:12px;color:#8e9ab0;line-height:1.5}.portal-footer{max-width:1276px;margin:auto;border-top:1px solid #e2e8f1;padding:30px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}.portal-footer .brand{color:#334865;font-size:18px;padding:0}.portal-footer .brand-mark{width:26px;height:26px;border-radius:6px;font-size:17px}.portal-footer p{font-size:11px;color:#95a2b6;margin-top:12px}.portal-footer-links{display:flex;gap:24px;font-size:12px;color:#71839e;align-items:center}.portal-disclosure{flex-basis:100%;padding-top:18px;border-top:1px solid #edf0f5;font-size:11px;color:#a1adbd}.portal-page-head{padding:34px 0 28px}.portal-page-head h1{font-size:31px;margin-top:15px;font-weight:550}.portal-page-head p{color:#8393aa;font-size:14px;line-height:1.8;margin-top:13px}.portal-fineprint{font-size:12px;color:#97a4b6;text-align:center;margin-top:28px}.portal .page-head{margin-top:32px}.portal .bottom-note{display:none}.account-layout{display:grid;grid-template-columns:290px 1fr;gap:25px}.account-profile{padding:30px 24px;align-self:start;text-align:center}.account-profile>.avatar{margin:0 auto 18px;width:62px;height:62px;font-size:23px;border-radius:18px}.account-profile h2{font-size:19px}.account-profile p{font-size:12px;color:#8a99af;overflow-wrap:anywhere;margin:12px 0 20px}.account-profile .env{display:inline-block;margin-bottom:23px}.profile-detail{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-top:1px solid #edf0f6;font-size:12px;color:#8795ac}.profile-detail b{font-weight:400;color:#526980}.account-profile>.btn{width:100%;margin-top:12px}.account-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:24px}.account-metrics>a{background:white;border:1px solid #e5ebf4;border-radius:10px;padding:23px}.account-metrics span{font-size:12px;color:#8392a9}.account-metrics strong{display:block;font-size:34px;font-weight:550;margin:12px 0;color:#243e60}.account-metrics small{font-size:11px;color:#6888bf}.account-cta{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:24px;background:#eaf0fc;border-radius:10px;margin-top:24px}.account-cta h3{font-size:15px;font-weight:500;color:#375b91}.account-cta p{color:#7b92b4;font-size:12px;margin-top:9px}@media(max-width:1360px){.portal-main,.portal-footer{margin-left:40px;margin-right:40px}}@media(max-width:1100px){.portal-header{gap:16px;padding:0 30px}.portal-header nav{gap:18px}.portal-header .brand small,.brand-divider{display:none}.portal-header-actions{gap:12px}.portal-hero{padding:45px;gap:35px}.hero-copy h1{font-size:41px}.portal-main,.portal-footer{margin-left:30px;margin-right:30px}.portal-plans{grid-template-columns:repeat(2,1fr)}.account-layout{grid-template-columns:235px 1fr}.account-metrics{gap:10px}.account-metrics>a{padding:17px}.account-layout .table-wrap{max-width:100%}.account-layout>div{min-width:0}}@media(max-width:760px){.portal-header{height:auto;min-height:112px;flex-wrap:wrap;padding:18px 20px 0;gap:10px}.portal-header nav{order:3;width:100%;justify-content:space-between;gap:15px}.portal-header nav a{padding:16px 0;font-size:13px}.portal-header nav a.active:after{bottom:5px}.portal-header .brand{font-size:19px;gap:8px}.portal-header .brand-mark{width:29px;height:29px;border-radius:8px;font-size:20px}.portal-header-actions{gap:10px}.portal-header-actions .btn{font-size:12px;padding:8px 10px}.portal-account-link>span:last-child{display:none}.portal-admin-link{font-size:11px;padding:6px}.portal-main,.portal-footer{margin-left:18px;margin-right:18px}.portal-hero{grid-template-columns:1fr;padding:33px 25px;gap:30px;margin-top:12px}.hero-copy h1{font-size:38px}.hero-account{padding:24px}.hero-start-price{display:grid;grid-template-columns:1fr 1fr;align-items:center}.hero-start-price small,.hero-start-price span{grid-column:1}.hero-start-price strong{grid-column:2;grid-row:1/3;text-align:right;font-size:37px}.hero-card-label{margin-bottom:20px}.hero-footnote{line-height:1.8}.portal-section{padding-top:35px}.portal-section-head h2{font-size:21px}.portal-section-head .link{font-size:11px}.portal-flow{grid-template-columns:1fr;gap:26px;padding-top:28px;margin-top:30px}.portal-footer-links{flex-wrap:wrap;gap:17px}.portal-page-head{padding-top:28px}.portal-page-head h1{font-size:26px}.account-layout{grid-template-columns:1fr}.account-profile{display:block}.account-metrics>a{padding:16px 12px}.account-metrics strong{font-size:28px}.portal-plans{gap:13px}.portal-plans .plan{padding:22px 18px}.portal-plans .price{font-size:30px}.portal-plans .plan h2{font-size:17px}.portal-plans .plan ul{font-size:12px}.portal-fineprint{line-height:1.8}.portal .sub-grid{grid-template-columns:1fr}}@media(max-width:480px){.portal-plans{grid-template-columns:1fr}.portal-header-actions .link{font-size:12px}.hero-copy h1{font-size:35px}.hero-copy p{font-size:14px}.hero-copy .actions{gap:20px}.portal-section-head{align-items:flex-end}.portal-section-head h2{font-size:19px}.portal-section-head .eyebrow{font-size:10px}.account-cta{padding:20px 15px}.account-cta .btn{font-size:12px;padding:10px}.portal-disclosure{line-height:1.8}}
/* Clarity-first visual refinement, shared across customer and staff surfaces. */
:root{--blue:#285acb;--muted:#66778e;--line:#e1e7ef;--nav:#11243a;color:#20324a;background:#f4f7fa;font-family:"Segoe UI","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}body{line-height:1.5}.btn{min-height:41px;border-radius:9px;transition:background .16s,box-shadow .16s,transform .16s;border-color:#d7e0eb;font-weight:500}.btn.primary{background:#285acb;border-color:#285acb;box-shadow:0 3px 7px #1c42751a,inset 0 1px 0 #ffffff12}.btn.primary:hover{background:#204cae;border-color:#204cae;box-shadow:0 5px 12px #1c427529}.btn:active{transform:translateY(1px)}.btn.small{min-height:34px;font-size:13px}.btn.danger{background:#fff8f9}.brand-mark{background:linear-gradient(145deg,#416fde,#254ea5);box-shadow:inset 0 1px 0 #ffffff30,0 3px 8px #2148861a;border:1px solid #ffffff12}.panel,.stat,.plan{border-color:#e0e7ef;box-shadow:0 3px 14px #243b5310}.panel{border-radius:13px}.panel-head{padding-top:24px;padding-bottom:23px}.panel-head h2{font-weight:600;letter-spacing:.1px}.panel-head .muted{font-size:13px;color:#72839b}.stat{border-radius:12px;padding:24px}.stat-top{color:#64768e;font-size:14px}.stat-value{font-weight:600;font-size:32px;color:#193351;margin-top:15px}.stat-foot{font-size:12px;color:#71839c}.stat-icon{color:#4a6fa8;background:#eef3fa;border:1px solid #e4ebf6}.sidebar{background:linear-gradient(170deg,#12273f,#102036);border-right:1px solid #243850}.nav-link{padding:12px 16px;border:1px solid transparent}.nav-link.active{background:#264f89;border-color:#3e67994d;box-shadow:0 3px 9px #0000000a}.nav-group{color:#92a7c2;font-size:12px}.workspace-tag{color:#91a3bf;font-size:12px}.version{color:#8297b3}.topbar{box-shadow:0 2px 8px #1d355004}.topbar .env{background:#f3f6fa;color:#667992;border:1px solid #e4eaf2}.banner{background:#f0f5fa;color:#536d8c;border-color:#dce6f0;padding:14px 17px;border-radius:9px;font-size:13px}.banner .pill{background:#dfe9f7;color:#456797;font-size:12px}.subtitle{color:#708098;line-height:1.8}th{background:#f4f7fb;font-size:13px;color:#647690;font-weight:500;padding-top:14px;padding-bottom:14px}td{font-size:14px;padding-top:18px;padding-bottom:18px}.cell-secondary{font-size:12px;color:#7f8fa7}.status{font-size:12px;padding:5px 9px;border:1px solid #e5eaf1;background:#f4f6f9;color:#697b91}.status.good{background:#edf7f2;color:#287758;border-color:#d8ece1}.status.warn{background:#fff7e9;color:#946724;border-color:#f4e7c9}.status.bad{background:#fbf0f2;color:#a04f61;border-color:#f2dfe4}.search,.filter{border-radius:8px;font-size:14px;color:#526881}.search::placeholder{color:#8795a9}.field{font-size:14px;color:#52667f}.field input,.field select{min-height:44px;border-radius:8px;border-color:#d8e1ed}.field input:focus,.field select:focus{box-shadow:0 0 0 3px #285acb12;border-color:#668aca}.modal-head{background:#fcfdff}.modal-body{padding:28px}.modal-foot{background:#f4f7fb;padding:18px 26px}.modal-foot .btn{min-height:42px}dialog{border-radius:16px;border-color:#d9e3ee}.metric-note{background:#f1f5fa;color:#657b94;font-size:14px}.auth-art{background:linear-gradient(150deg,#142c48,#102237)}.auth-art h1{font-size:43px;font-weight:500;letter-spacing:-1px}.auth-art p{color:#a8bad2}.auth-inner .subtitle{font-size:15px}.auth-note{font-size:13px;color:#76879f}.divider{font-size:13px;color:#7d8da4}.auth-footer{font-size:14px}.logout{font-size:13px;color:#667a95}.table-footer{font-size:13px;color:#76889f}.node-name{font-size:14px}.node-name small{font-size:12px;color:#7a8ea8}.latency{font-size:13px}.profile{font-size:14px}.role{font-size:12px;color:#718198}.link{font-size:14px;color:#3d65a6}.portal{background:linear-gradient(180deg,#fff 0,#f5f8fc 700px,#f7f9fc 100%)}.portal-header{height:94px;background:#ffffffed;max-width:none;padding-left:max(40px,calc((100% - 1276px)/2));padding-right:max(40px,calc((100% - 1276px)/2));border-bottom:1px solid #e8edf4;margin-bottom:24px}.portal-header .brand{letter-spacing:2px;font-size:23px}.portal-header .brand small{color:#657a94;font-size:13px;letter-spacing:1px}.portal-header nav{gap:32px}.portal-header nav a{color:#61738d;font-weight:500;font-size:14px}.portal-header nav a.active{color:#285acb}.portal-header nav a.active:after{width:20px;height:3px;border-radius:4px;left:calc(50% - 10px);bottom:15px}.portal-admin-link{font-size:12px;color:#607792;background:#f8fafc;border-color:#dfe6ef;padding:8px 12px}.portal-account-link{font-size:14px;color:#3f5574}.portal-hero{min-height:445px;background:radial-gradient(ellipse at 88% 8%,#31558255,transparent 56%),linear-gradient(120deg,#132943,#152e4b 65%,#173853);border:1px solid #203e5c;border-radius:19px;box-shadow:0 12px 30px #10294316;gap:75px;padding:56px 64px}.hero-copy h1{font-size:48px;font-weight:550;letter-spacing:-1.5px;line-height:1.4;margin:22px 0}.hero-copy h1 span{color:#b6cee9}.hero-copy .eyebrow{color:#aac2df;font-size:12px;letter-spacing:1.7px}.hero-copy .dot{background:#8dbeb3;box-shadow:0 0 0 4px #8dbeb30d}.hero-copy p{color:#afc2d9;font-size:15px;line-height:2}.hero-copy .btn{background:#fff;color:#254975;border-color:#fff;box-shadow:0 4px 12px #08182c20;min-height:46px;padding:13px 23px}.hero-copy .btn:hover{background:#edf3fb;border-color:#edf3fb}.hero-link{color:#d5e2f1;font-size:14px}.hero-footnote{color:#9bb1ce;font-size:12px;letter-spacing:.2px;margin-top:27px}.hero-account{background:#fffffffa;color:#263e5d;border:1px solid #dbe5ef;border-radius:13px;box-shadow:0 14px 32px #05162b30;padding:29px 31px}.hero-account h2{font-size:21px;font-weight:600;color:#203d5b}.hero-account>p{font-size:13px;color:#71859e;line-height:1.7}.hero-card-label{color:#657f9e;font-size:11px;letter-spacing:1.3px;border-bottom:1px solid #e7edf3;padding-bottom:17px;margin-bottom:23px}.portal-mini-tag{background:#edf4f0;border-color:#d9e9df;color:#4d7764;font-size:12px;letter-spacing:0}.hero-numbers{margin:28px 0;gap:64px}.hero-numbers strong{color:#294d76;font-size:40px}.hero-numbers span{color:#7a8ea5;font-size:13px}.hero-start-price strong{color:#254b75;font-size:43px;letter-spacing:-1.5px}.hero-start-price small,.hero-start-price span{color:#7589a2;font-size:13px}.hero-card-action{border-color:#e0e8f1;color:#356294;font-size:14px;font-weight:500}.portal-section{padding-top:49px}.portal-section-head h2{font-size:26px;font-weight:600;letter-spacing:-.3px;color:#203951}.portal-section-head .eyebrow{font-size:11px;color:#69809b;letter-spacing:1.6px}.portal-plans{gap:20px}.portal-plans .plan{padding:28px 25px;background:#fff;border-radius:13px;border-color:#dde5ef;box-shadow:0 4px 16px #19385508;transition:box-shadow .18s,border-color .18s}.portal-plans .plan:hover{border-color:#9aafce;box-shadow:0 9px 23px #19385513}.portal-plans .plan.featured{border-color:#577cac;box-shadow:0 4px 16px #1938550e}.portal-plans .plan-label{color:#647d99;font-size:12px;letter-spacing:1px;margin-bottom:20px;min-height:25px}.recommended{background:#edf3fa;color:#456b97;border:1px solid #dbe6f2;font-size:11px;padding:3px 7px;letter-spacing:0}.portal-plans .plan h2{font-size:20px;color:#233f60;font-weight:600}.portal-plans .price{font-size:36px;font-weight:600;letter-spacing:-1px;margin:19px 0 22px;color:#203b5b}.portal-plans .price small{font-size:13px;color:#7a8da6}.portal-plans .plan ul{border-top:1px solid #e7edf4;color:#5c728c;font-size:14px;line-height:2.7;padding:18px 0 14px;margin-bottom:6px}.portal-plans .plan li:before{color:#4b8972;font-size:13px}.plan-payment-note{font-size:12px;color:#8190a3;padding-bottom:15px;line-height:1.5}.portal-plans .btn{min-height:44px;border-color:#cfdceb;color:#345d8a;background:#f9fbfd}.portal-plans .btn.primary{background:#2b557f;border-color:#2b557f;color:#fff}.portal-plans .btn.primary:hover{background:#23486c}.portal-flow{gap:35px;background:#edf2f8;border:1px solid #e0e8f1;border-radius:12px;padding:25px 27px;margin-top:33px}.flow-num{background:#fff;color:#516f94;border:1px solid #dbe5f0;font-size:13px}.portal-flow h3{font-size:15px;color:#3b5877}.portal-flow p{font-size:13px;color:#6e829c;line-height:1.6}.portal-footer{border-top-color:#dce5ef;padding:30px 0 26px}.portal-footer p{font-size:12px;color:#7c8da3}.portal-footer-links{font-size:13px;color:#587390}.portal-disclosure{font-size:12px;color:#798ba1;line-height:1.8;border-top-color:#e1e8f1}.portal-fineprint{font-size:13px;color:#7588a0}.portal-page-head p{font-size:15px;color:#6e829b}.account-profile{box-shadow:0 3px 14px #243b5308}.account-profile p{font-size:13px}.account-metrics>a{border-color:#dfe7f0;box-shadow:0 3px 12px #243b5306;transition:border-color .2s}.account-metrics>a:hover{border-color:#9eb5d1}.account-metrics span{font-size:14px;color:#70849d}.account-metrics small{font-size:12px;color:#526f99}.account-cta{background:#eef3f9;border:1px solid #dfe8f3}.account-cta p{font-size:13px;color:#6f84a0}.sub-card{padding:26px}.sub-meta small{font-size:13px;color:#7487a0}.sub-meta b{font-size:14px;color:#3d5673}.progress{height:7px;background:#eaf0f7}.progress div{background:#567eae}.empty{color:#69819c;font-size:15px}.bottom-note{font-size:12px;color:#7c8fa7}.chart-footer{font-size:12px;color:#7489a2}.chart text{fill:#778ba5}.auth-art:after{opacity:.55}
@media(max-width:1100px){.portal-header{padding-left:30px;padding-right:30px;gap:14px}.portal-header nav{gap:21px}.portal-hero{gap:34px;padding:44px}.hero-copy h1{font-size:41px}.portal-plans .plan{padding:25px}.stat{padding:20px}.stat-value{font-size:28px}}@media(max-width:760px){.portal-header{height:auto;padding:18px 20px 0;margin-bottom:12px}.portal-header nav{gap:18px}.portal-header nav a{font-size:13px;padding:17px 0}.portal-header nav a.active:after{bottom:5px}.portal-header .brand{font-size:20px}.portal-hero{padding:32px 25px;gap:28px;border-radius:14px}.hero-copy h1{font-size:36px;line-height:1.4;letter-spacing:-1px}.hero-copy p{font-size:14px}.hero-copy .actions{gap:20px}.hero-account{padding:25px}.hero-footnote{font-size:12px;line-height:1.8}.portal-section-head h2{font-size:21px}.portal-section-head .link{font-size:12px}.portal-flow{padding:24px 20px;gap:24px}.portal-plans .plan{padding:25px}.portal-main{padding-bottom:35px}.portal-disclosure{font-size:12px}.account-metrics span{font-size:12px}.stat{padding:18px}.stat-value{font-size:27px}.profile-detail{font-size:13px}.portal-page-head h1{font-size:27px}.portal-plans .plan ul{font-size:14px}.topbar .env{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.import-help{font-size:13px;line-height:1.8;color:#697e98;margin-bottom:17px}.import-body .field input{font-family:Consolas,monospace;font-size:12px}.import-body .banner{display:block;line-height:1.8}.import-body a.btn{text-decoration:none}.qr-section{margin-top:26px;padding-top:25px;border-top:1px solid #e3eaf2;text-align:center}.qr-image{background:#fff;display:inline-block;border:1px solid #e4eaf2;border-radius:10px;padding:6px}.qr-image img{display:block;max-width:100%;height:auto}.qr-section h3{margin-top:15px;font-size:16px}.qr-section p{font-size:12px;color:#71859e;line-height:1.8;margin:10px 0 16px}.qr-section .actions{justify-content:center}.import-private{font-size:12px;line-height:1.8;color:#7d8fa4;margin-top:22px}.import-body [hidden]{display:none!important}
.field textarea{font:inherit;font-size:14px;line-height:1.7;padding:12px;border:1px solid #d8e1ed;border-radius:8px;resize:vertical;color:#354c68;background:#fff}.ticket-thread{max-height:300px;overflow:auto;margin-bottom:22px}.ticket-message{padding:15px;background:#f3f6fa;border-radius:8px;margin-bottom:12px}.ticket-message strong{font-size:13px}.ticket-message small{display:block;font-size:11px;color:#8191a6;margin:5px 0}.ticket-message p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.mfa-qr{display:block;width:220px;height:220px;margin:20px auto}.recovery-codes{padding:20px;border:1px dashed #a9bad0;background:#f6f9fd;font-size:16px;line-height:1.8;text-align:center}.sidebar{overflow-y:auto}.side-bottom{padding-bottom:15px}.nav-link{padding-top:10px;padding-bottom:10px}

.clarity{padding:26px;margin:24px 0}.clarity h2{margin:12px 0 16px}.clarity h3{margin:8px 0}.clarity p,.clarity li{color:#475569;line-height:1.9;font-size:14px}.clarity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.clarity-grid>.clarity{margin:0}.clarity details{padding:16px 0;border-top:1px solid #e2e8f0}.clarity summary{cursor:pointer;font-weight:600;line-height:1.7}.clarity .actions{margin-top:20px}.clarity a:focus-visible,.clarity summary:focus-visible{outline:3px solid #2563eb;outline-offset:4px}@media(max-width:640px){.clarity-grid{grid-template-columns:1fr}.clarity{padding:20px}.portal-hero .hero-copy h1{font-size:34px}}

/* Unified interface · 2026-09-16 */
:root{--blue:#245ad9;--muted:#64748b;--line:#e2e8f0;--nav:#111f35;color:#182b45;background:#f3f6fa;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif}
[hidden]{display:none!important}body{line-height:1.5}a.btn{text-decoration:none}h1{font-weight:700;letter-spacing:-.6px}h2{letter-spacing:-.25px}.subtitle{color:#62748a;line-height:1.8}.muted{color:#66788d}
.btn{min-height:42px;border-radius:10px;padding:10px 17px;font-weight:600;transition:background .16s,border-color .16s,box-shadow .16s}.btn:hover{border-color:#a7bad5;box-shadow:0 3px 10px #132a4510}.btn.primary{background:#245ad9;border-color:#245ad9;box-shadow:0 4px 12px #245ad922}.btn.primary:hover{background:#1949ba}.btn.small{min-height:34px}.btn.danger{color:#b42338;background:#fff8f9}.link{color:#245ad9;text-underline-offset:4px}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #93b6ff;outline-offset:3px}
.sidebar{background:linear-gradient(165deg,#172941,#101b2d);padding:26px 16px 18px;scrollbar-width:thin;scrollbar-color:#40546d transparent}.brand-mark{border-radius:11px;background:#386bed;box-shadow:0 3px 12px #0002;letter-spacing:-1px}.workspace-tag{margin-bottom:22px;font-size:10px;letter-spacing:1.8px;color:#9aaac0}.nav-link{border-radius:9px;color:#b6c2d2;padding:10px 13px;font-size:13px}.nav-link.active{background:#2b58ba;box-shadow:inset 3px 0 #a6c2ff}.nav-group{color:#8b9cb5;padding:18px 13px 6px;font-size:11px}.side-bottom{border-top:1px solid #ffffff12;margin-top:24px}.version{color:#8d9db4}.topbar{background:#ffffffed;min-height:76px;height:auto;padding-top:15px;padding-bottom:15px}.top-right{gap:12px;flex-wrap:wrap}.env{color:#365b91;background:#edf3fd;border:1px solid #dce6f5;border-radius:6px}.content{padding-top:34px}.page-head{align-items:flex-start;margin-bottom:26px}.page-head h1{font-size:27px}.page-head .subtitle{max-width:720px}
.panel,.stat,.plan,.account-metrics>a{border:1px solid #dfe7f0;border-radius:15px;box-shadow:0 3px 14px #18304c05}.panel-head{padding:22px 25px;border-bottom:1px solid #edf1f6}.panel-body{padding:22px 25px}.stat{padding:23px}.stat-top{color:#586d86}.stat-value{font-size:32px;color:#182f4d;margin:14px 0 8px;font-weight:700}.stat-foot{color:#6a7d94}.banner{border-radius:11px;background:#eff5ff;color:#3b5d86;border-color:#dae6f7;padding:13px 17px}.table-wrap{overflow:auto;overscroll-behavior-x:contain}table{font-size:13px}thead th{background:#f5f8fc;color:#546981;font-weight:600;white-space:nowrap}tbody td{padding-top:17px;padding-bottom:17px;border-bottom-color:#edf1f6}tbody tr:hover{background:#f8faff}.cell-secondary{color:#6a7d93}.status{border-radius:20px;padding:5px 10px}.status.good{color:#176649;background:#eaf7ef}.status.warn{color:#895c12;background:#fff5df}.status.bad{color:#a92e43;background:#fff0f2}.empty{padding:45px 24px;line-height:1.8;color:#62758b;background:linear-gradient(180deg,#fff,#f9fbfe)}
.field{gap:8px;color:#344b67;font-size:13px;font-weight:500}.field input,.field select,.field textarea,input.filter,select.filter{min-height:44px;border:1px solid #cfdbe9;border-radius:9px;background:#fbfcff;color:#243c59;padding:11px 13px}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#6595ee;box-shadow:0 0 0 3px #245ad910}.field textarea{min-height:120px}.form-grid{gap:18px}.clarity{padding:26px}.clarity h2{margin-top:0}.clarity .node-row{justify-content:space-between;flex-wrap:wrap}.clarity p{color:#546780}.clarity>.clarity{border:1px solid #e4ebf4;border-radius:12px;background:#fafcff}.error{color:#b42338;line-height:1.7}.modal-head{background:#f8faff;border-bottom:1px solid #e3eaf3}.modal-foot{background:#f8faff;border-top:1px solid #e3eaf3}dialog{border-radius:18px;box-shadow:0 30px 100px #112a4540}dialog::backdrop{background:#10213788;backdrop-filter:blur(3px)}
.auth{min-height:100svh;background:#f7f9fc}.auth-art{background:radial-gradient(ellipse at 15% 15%,#284976,transparent 65%),linear-gradient(145deg,#172f4c,#101d32);position:relative;overflow:hidden}.auth-art h1{font-size:clamp(34px,4vw,56px);line-height:1.3;letter-spacing:-1px}.auth-art p{color:#bbcee6;line-height:1.9}.auth-art:after{pointer-events:none}.auth-form{background:#f7f9fc;padding:50px 36px}.auth-inner{max-width:430px;width:100%;background:#fff;border:1px solid #e1e8f1;border-radius:22px;padding:34px;box-shadow:0 16px 60px #1b355510}.auth-inner h1{font-size:29px}.auth-inner .btn.primary{min-height:46px}.auth-note{color:#63768c!important;line-height:1.8}
.portal{background:#f5f8fc}.portal-header{background:#fff;border-bottom:1px solid #e1e8f1}.portal-header nav a{color:#526980;font-weight:500}.portal-header nav a.active{color:#245ad9}.portal-header nav a.active:after{background:#245ad9}.portal-main{max-width:1320px;margin:auto}.portal-hero{background:linear-gradient(115deg,#edf3fc,#f8fbff 58%,#e7effa);border:1px solid #dbe5f2;border-radius:22px;padding:54px;gap:42px}.hero-copy h1{color:#173453;font-size:clamp(32px,3.5vw,48px);line-height:1.3}.hero-copy h1 span{color:#245ad9}.hero-copy p{color:#58718d;line-height:1.95}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#526c8c}.hero-account{border:1px solid #d7e3f2;border-radius:18px;background:#ffffffdb;box-shadow:0 14px 36px #2449760d}.hero-footnote{color:#5d7590}.portal-plans .plan{border-radius:16px;padding:28px;transition:box-shadow .16s,border-color .16s}.portal-plans .plan:hover{box-shadow:0 10px 30px #1c406410;border-color:#aabed9}.portal-plans .plan.featured{border:1.5px solid #7096cf;background:#fff}.portal-plans .price{font-weight:700;color:#163b65}.portal-plans .btn.primary{background:#245ad9;border-color:#245ad9}.portal-flow{background:#fff;border-radius:16px}.portal-footer{max-width:1320px;margin:auto}.portal-footer-links{gap:18px;line-height:2}.account-cta{border-radius:15px}.account-profile{border-radius:16px}.account-profile p{overflow-wrap:anywhere}.sub-card{border-radius:15px}.bottom-note{color:#63768e}.initial{max-width:720px;margin:10vh auto;padding:40px}
@media(max-width:1100px){.top-right .profile-text{display:none}.content{padding:26px}.topbar{padding:16px 26px}.portal-hero{padding:36px}.stats{gap:12px}.stat-value{font-size:27px}}
@media(max-width:760px){.content{padding:22px 16px}.topbar{padding:13px 16px;gap:10px}.top-right{gap:8px}.topbar .crumb{display:none}.page-head{flex-direction:column;gap:16px}.page-head h1{font-size:24px}.page-head .actions{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:17px}.stat-value{font-size:25px;overflow-wrap:anywhere}.panel-head,.panel-body{padding:19px}.settings-grid,.panels,.account-layout,.sub-grid{grid-template-columns:minmax(0,1fr)}.clarity{padding:20px}.portal-hero{padding:29px 23px;border-radius:16px}.portal-header-actions{gap:8px}.portal-main{padding-left:16px;padding-right:16px}.portal-footer{padding:26px 20px}.portal-plans .plan{padding:24px}.auth-art{display:none}.auth{display:block}.auth-form{min-height:100svh;padding:28px 18px;display:flex;align-items:center;justify-content:center}.auth-inner{padding:27px 23px}.node-row{flex-wrap:wrap}.table-wrap table{min-width:650px}dialog{max-width:calc(100vw - 24px);max-height:90svh}.form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* Social media & global trade / top navigation */
.app-shell{display:block}.app-shell>.main{width:100%;margin-left:0}.workspace-header{position:sticky;top:0;z-index:40;min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(24px,calc((100vw - 1480px)/2));background:#12253c;color:#fff;box-shadow:0 4px 18px #14273e12}.workspace-header .brand{text-decoration:none;white-space:nowrap;font-size:21px}.workspace-header .brand small{font-size:12px;color:#bccde0;letter-spacing:0;font-weight:400;border-left:1px solid #ffffff30;padding-left:16px;margin-left:8px}.workspace-nav{display:flex;gap:10px;align-items:center}.topnav-group{position:relative}.topnav-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:10px 15px;border-radius:9px;font-size:14px;color:#c9d6e6}.topnav-group summary::-webkit-details-marker{display:none}.topnav-group.active summary,.topnav-group[open] summary,.topnav-group summary:hover{background:#284764;color:#fff}.topnav-group summary:focus-visible{outline:3px solid #92b5ff}.topnav-menu{position:absolute;right:0;top:calc(100% + 10px);width:220px;padding:9px;background:white;border:1px solid #dfe7f0;border-radius:12px;box-shadow:0 16px 50px #142b4530;color:#263c56}.topnav-menu a{display:flex;align-items:center;gap:12px;text-decoration:none;padding:11px 13px;font-size:13px;border-radius:7px}.topnav-menu a:hover,.topnav-menu a[aria-current]{background:#edf3fd;color:#245ad9}.topbar{max-width:1532px;margin:auto;background:transparent;border-bottom:1px solid #e0e7f0}.business-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 48px}.business-scenarios article{padding:26px;background:white;border:1px solid #dfe7f0;border-radius:15px}.business-scenarios span{font-size:11px;letter-spacing:1.5px;color:#597aa0}.business-scenarios h3{margin:14px 0 9px;color:#203e60;font-size:19px}.business-scenarios p{font-size:14px;line-height:1.8;color:#63778e}.portal-hero{background:radial-gradient(ellipse at 90% 10%,#dce9fa,transparent 65%),#f1f6fd}.portal-header nav{flex-wrap:wrap}.portal-hero .hero-copy h1{letter-spacing:-1.2px}.auth-art{background:radial-gradient(ellipse at 0 0,#315e87,transparent 70%),#12253c}
@media(max-width:1000px){.workspace-header{flex-wrap:wrap;gap:12px;padding:17px 22px}.workspace-nav{width:100%;justify-content:space-between}.topnav-group{flex:1}.topnav-group summary{justify-content:space-between}.topnav-menu{left:0;right:auto}.topnav-group:last-child .topnav-menu{left:auto;right:0}.business-scenarios{gap:12px}.portal-header nav{gap:15px}}
@media(max-width:600px){.workspace-header{position:relative;padding:17px 14px}.workspace-header .brand small{font-size:11px}.workspace-nav{gap:3px;flex-wrap:wrap}.topnav-group{flex:1 0 45%}.topnav-group summary{font-size:13px;padding:10px}.topnav-menu{width:210px;z-index:45}.topnav-group:nth-child(even) .topnav-menu{left:auto;right:0}.business-scenarios{grid-template-columns:1fr;margin-bottom:30px}.business-scenarios article{padding:22px}.portal-header nav{overflow-x:auto;flex-wrap:nowrap;max-width:100%}.portal-header nav a{white-space:nowrap}.hero-copy h1{font-size:32px}}

/* Portal shortcuts: upper right */
.portal-header-actions{position:relative;gap:14px}
.portal-shortcuts{position:relative;text-align:left}
.portal-shortcuts summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #dbe4ef;border-radius:9px;background:#fff;color:#163451;white-space:nowrap;font-size:13px;font-weight:600}
.portal-shortcuts summary::-webkit-details-marker{display:none}
.portal-shortcuts[open] summary{background:#eef4ff;border-color:#9ebcea}
.portal-shortcuts-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:100;width:230px;padding:8px;background:#fff;border:1px solid #dbe4ef;border-radius:12px;box-shadow:0 14px 40px #132f5226;display:grid;gap:3px}
.portal-shortcuts-menu a,.portal-shortcuts-menu button{display:block;text-align:left;padding:11px 12px;border-radius:7px;color:#29445e;font-size:13px;text-decoration:none}
.portal-shortcuts-menu a:hover,.portal-shortcuts-menu a:focus-visible{background:#edf4ff;color:#245edb}
.portal-footer{justify-content:space-between}
@media(max-width:600px){.portal-header-actions{gap:8px}.portal-shortcuts summary{padding:8px;font-size:12px}.portal-shortcuts-menu{width:210px;right:0}}

/* Right-side shortcut drawer */
.portal-shortcuts[open] .portal-drawer-backdrop{display:block;position:fixed;inset:0;width:100vw;height:100dvh;background:rgba(12,27,47,.42);backdrop-filter:blur(3px);border:0;border-radius:0;z-index:1000;cursor:pointer}
.portal-shortcuts[open] .portal-shortcuts-menu{position:fixed;inset:0 0 0 auto;top:0;right:0;width:min(360px,90vw);height:100dvh;box-sizing:border-box;padding:26px 20px;background:#fff;border:0;border-left:1px solid #dbe4ef;border-radius:0;z-index:1001;display:flex;flex-direction:column;gap:7px;overflow-y:auto;box-shadow:-16px 0 60px #132f5226;animation:portalDrawerIn .2s ease-out}
.portal-drawer-heading{display:flex;align-items:center;justify-content:space-between;padding:0 4px 22px;margin-bottom:10px;border-bottom:1px solid #e4ebf3;font-size:18px;color:#163451}
.portal-shortcuts-menu .portal-drawer-close{padding:0;width:36px;height:36px;display:grid;place-items:center;border:1px solid #dbe4ef;background:#f7f9fc;font-size:25px;cursor:pointer}
.portal-shortcuts-menu a{padding:14px 12px;font-size:14px}
body:has(.portal-shortcuts[open]){overflow:hidden}
@keyframes portalDrawerIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.portal-shortcuts[open] .portal-shortcuts-menu{animation:none}}

.trade-learning-path{padding:24px;margin-bottom:24px}.trade-learning-path>span{display:block;margin-top:12px;color:#235fc3}.trade-learning-path p,.trade-article p{color:#60758e;line-height:1.85}.trade-knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.trade-article{padding:26px}.trade-article-tag{display:flex;justify-content:space-between;color:#2864cc;font-size:12px;font-weight:600}.trade-article h2{font-size:20px;margin:18px 0 10px}.trade-article details{border-top:1px solid #e3eaf3;margin-top:18px;padding-top:16px}.trade-article summary{cursor:pointer;color:#235fc3;font-weight:600}.trade-article h3{font-size:15px;margin:22px 0 8px}.trade-article section p{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.trade-knowledge-grid{grid-template-columns:1fr}.trade-article{padding:20px}}
/* A readable, sequential course alongside the existing customer portal. */
.course-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px;border-radius:20px;background:linear-gradient(120deg,#102b46,#1d4a6c);color:#fff;margin-bottom:24px}
.course-hero h1{color:#fff;font-size:clamp(26px,3vw,38px);margin:16px 0;letter-spacing:-.6px}.course-hero p{line-height:1.8;color:#d0e2f3}.course-hero .eyebrow{color:#a8cdea;font-size:11px;letter-spacing:2px}.course-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.course-stats span{font-size:12px;padding:7px 10px;border:1px solid #65809d;border-radius:6px}
.course-start{flex:0 0 235px;padding:26px;border:1px solid #64809c;border-radius:14px;background:#ffffff0a}.course-start>span{font-size:11px;letter-spacing:2px;color:#b8d7f1}.course-start strong{display:block;font-size:20px;line-height:1.7;margin:14px 0 20px}.course-start .btn{background:#fff;color:#123c60}
.course-notes{font-size:13px;color:#536b82;line-height:1.85;padding:0 4px;margin:0 0 24px}.course-notes p{margin:8px 0}.course-tools{padding:22px;margin-bottom:26px}.course-tools label{display:block;font-size:13px;font-weight:600;color:#294862}.course-tools input{display:block;width:100%;max-width:670px;margin-top:10px}.course-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.course-filter{border:1px solid #dbe5ee;background:#fff;color:#426079;border-radius:7px;padding:9px 12px;cursor:pointer;font:inherit;font-size:12px}.course-filter.active{background:#183f63;border-color:#183f63;color:#fff}.course-tools-bottom{display:flex;justify-content:space-between;gap:16px;margin-top:18px;font-size:12px;color:#60768d}.course-tools-bottom>div{display:flex;gap:16px}
.course-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:24px;align-items:start}.course-directory{padding:20px}.course-directory>strong{font-size:15px;color:#193953}.course-directory-group{margin-top:22px}.course-directory-group>span{display:block;font-size:11px;color:#617e96;letter-spacing:1px;margin-bottom:7px}.course-directory-group button{display:block;width:100%;border:0;background:transparent;text-align:left;color:#36546d;font:inherit;font-size:12px;line-height:1.65;padding:8px 5px;cursor:pointer;border-radius:5px}.course-directory-group button:hover{background:#edf4fa;color:#175fbd}
.course-lesson{padding:0;margin-bottom:14px;overflow:hidden;scroll-margin-top:130px}.course-lesson[hidden],#course-empty[hidden]{display:none!important}.course-lesson>summary{list-style:none;display:flex;gap:16px;align-items:center;padding:24px;cursor:pointer}.course-lesson>summary::-webkit-details-marker{display:none}.course-lesson>summary>span:nth-child(2){flex:1;min-width:0}.course-number{display:grid;place-items:center;align-self:flex-start;width:40px;height:40px;flex:0 0 40px;background:#edf3fa;color:#205483;border-radius:10px;font-size:14px;font-weight:700}.course-lesson small{display:block;color:#607990;font-size:11px;margin:0 0 7px}.course-lesson h2{margin:0 0 9px;font-size:18px;line-height:1.55;color:#153750}.course-goal{font-size:13px;line-height:1.75;color:#6a7e91}.course-chevron{font-size:22px;color:#52718a}.course-lesson[open] .course-chevron{transform:rotate(45deg)}.course-lesson[open]>summary{background:#f8fbfe;border-bottom:1px solid #e1eaf3}.course-lesson-body{padding:4px 28px 26px}.course-block{margin-top:24px;font-size:14px;line-height:1.95;color:#374f64}.course-block h3{font-size:15px;color:#153951;margin:0 0 10px}.course-block p{margin:8px 0}.course-block ol{margin:0;padding-left:25px}.course-block li{padding-left:4px;margin-bottom:13px}.course-block pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px}.course-example{background:#eef5fc;border-left:3px solid #397eb6;padding:18px 20px;border-radius:0 8px 8px 0}.course-exercise{background:#eff8f4;padding:18px 20px;border-radius:8px}.course-mistake{border-left:3px solid #cc9452;padding-left:18px}.course-block a{color:#235fa0;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.course-block ul{padding-left:20px}.course-original{font-size:12px;color:#6b8095;margin-top:20px}.course-complete{display:flex!important;align-items:center;gap:10px;padding-top:20px;margin-top:22px;border-top:1px solid #dfebf2;font-size:13px;color:#2f536e}.course-complete input{width:18px;height:18px;margin:0;accent-color:#245e9a}.course-progress-note{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;padding:20px;background:#eaf1f8;color:#43617a;border-radius:10px;font-size:12px}.course-progress-note>span:first-child{font-weight:700}#course-empty{padding:28px;color:#526f89}
@media(max-width:1000px){.course-layout{grid-template-columns:1fr}.course-directory{display:none}.course-hero{padding:30px}.course-start{flex-basis:220px}}
@media(max-width:600px){.course-hero{display:block;padding:26px 20px}.course-start{margin-top:25px;padding:18px}.course-start strong{font-size:17px}.course-hero h1{font-size:27px}.course-tools{padding:18px}.course-tools-bottom{display:block}.course-tools-bottom>div{margin-top:14px}.course-lesson>summary{padding:18px 14px;gap:10px}.course-lesson h2{font-size:16px}.course-lesson-body{padding:2px 18px 22px}.course-number{width:32px;height:32px;flex-basis:32px}.course-example,.course-exercise{padding:15px}.course-block{font-size:14px}.course-filters{gap:6px}.course-filter{font-size:11px;padding:8px}}

.course-tools input[type="search"]{border:1px solid #cddce9;border-radius:9px;padding:12px 14px;background:#f8fbfe;color:#193953;font-size:14px;min-height:44px}.course-tools input[type="search"]:focus-visible{outline:3px solid #9fc4ef;outline-offset:2px}

.manual-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin:20px 0}.manual-code-grid img{display:block;width:100%;max-width:220px;margin:14px auto}.manual-code-grid article{text-align:center;border:1px solid #dce7f0;padding:15px;border-radius:12px}#live-resource textarea{width:100%;overflow-wrap:anywhere}
/* Trade workspace, using the existing portal typography and surface styles. */
.hub-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.hub-services .panel{margin:0}.hub-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.hub-task-grid .panel{margin:0}.hub-task-grid .actions{flex-wrap:wrap}.hub-road-preview{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0}.hub-progress{width:100%;height:12px;accent-color:#3168ef}.hub-related{background:#f4f7fc;border-radius:12px;padding:20px}.hero-link[data-hub-lesson]{border:0;background:none;cursor:pointer;font:inherit;text-align:left}.hub-services p,.hub-task-grid p{line-height:1.8}.hub-services a,.hub-services button{max-width:100%}@media(max-width:760px){.hub-services,.hub-task-grid{grid-template-columns:1fr}.hub-road-preview{align-items:flex-start;flex-direction:column}.hub-related .actions{flex-wrap:wrap}}

.portal-hero .hero-link[data-hub-lesson]{color:#234c9a}.portal-hero .hero-copy .btn.primary{color:#fff}.portal-hero .hero-copy .eyebrow{color:#456c9c}
.order-progress{padding:16px;background:#f4f7fc;border:1px solid #dce5f3;border-radius:12px;margin:18px 0}.order-progress ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;padding:0}.order-progress li{padding:10px;border:1px solid #dce5f3;border-radius:8px}.order-progress li.current{border-color:#3168ef;font-weight:700;color:#234c9a}.desk-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #e4ebf5}.desk-item strong{overflow-wrap:anywhere}.desk-item .btn{flex-shrink:0}@media(max-width:600px){.order-progress ol{grid-template-columns:1fr}.desk-item{align-items:flex-start;flex-direction:column}}

.live-client-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}.live-client-grid textarea{box-sizing:border-box;width:100%;overflow-wrap:anywhere}.live-client-grid h4{margin-top:0}

.payment-breakdown{margin:18px 0;padding:16px;background:var(--bg,#f5f7fa);border:1px solid var(--border,#dce4eb);border-radius:12px}.payment-breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-size:14px}.payment-breakdown .payment-total{border-top:1px solid var(--border,#dce4eb);margin-top:8px;padding-top:14px}.payment-total strong{font-size:20px;color:var(--primary,#2563eb)}

/* IPRocket reference: compact dark navigation, white surfaces, explicit tiers. */
.portal{background:#fff;color:#182333}.portal-header{background:#10141d;border-bottom:1px solid #29313e;max-width:none;padding:18px max(24px,calc((100vw - 1280px)/2));gap:28px}.portal-header .brand,.portal-header .link,.portal-header nav a,.portal-header-actions .portal-account-link,.portal-header .portal-admin-link,.portal-header .portal-shortcuts>summary{color:#e9edf5}.portal-header .brand small{color:#a5b3c7}.portal-header nav a{white-space:nowrap}.portal-header nav a.active{color:#9bbdff;border-color:#8fb5ff;background:transparent}.portal-header nav a:hover{color:#fff;background:#253046}.portal-header .brand-mark{background:#4775ec}.portal-header .btn.primary{background:#fff;border-color:#fff;color:#15243c}.portal-header .portal-shortcuts-menu{color:#182333}.portal-header .portal-shortcuts-menu a{color:#22344b}.portal-main{max-width:1280px;padding:42px 24px 60px;margin:auto}.portal-hero{background:#f3f6fc;border:1px solid #e4eaf5;border-radius:24px;padding:64px 52px;gap:58px;margin-bottom:38px;box-shadow:none}.portal-hero .hero-copy h1{font-size:clamp(32px,4vw,54px);line-height:1.25;letter-spacing:-1.7px;color:#121c2e}.portal-hero .hero-copy h1 span{color:#3665d4}.portal-hero .hero-copy p{color:#57657b;line-height:1.9;max-width:560px}.portal-hero .hero-account{background:#fff;border:1px solid #dce4f1;border-radius:18px;box-shadow:0 18px 40px #1732540c;color:#182333;min-width:0}.portal-hero .hero-account h2{color:#182333}.portal-hero .hero-account p,.portal-hero .hero-numbers span{color:#65758c}.portal-hero .hero-numbers strong{color:#2455be}.portal-hero .hero-card-label{color:#65758c}.portal-hero .hero-card-action{color:#2455be}.portal-hero .hero-footnote{color:#66768b}.portal .btn{border-radius:9px;min-height:42px}.portal .btn.primary{background:#315fcc;border-color:#315fcc;color:#fff}.portal-header .btn.primary{background:#fff;border-color:#fff;color:#15243c}.portal .panel{box-shadow:none;border-color:#e1e7ef}.hub-services{gap:22px;margin:32px 0}.hub-services .panel{padding:30px;border-radius:16px;background:#fff;display:flex;flex-direction:column;align-items:flex-start}.hub-services .panel h2{font-size:24px;margin:16px 0 10px}.hub-services .panel>p:first-of-type{flex:1;color:#607086}.hub-services .pill{background:#f0f4fc;color:#36588e;border:0}.hub-road-preview{background:#f5f7fb;padding:32px;border:0}.refresh-section{margin-top:64px}.refresh-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.refresh-heading h2,.refresh-faq h2{font-size:30px;line-height:1.4;letter-spacing:-.6px;margin:12px 0 0}.pricing-toolbar{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 0;margin-bottom:20px}.pricing-toolbar p{color:#687990;margin:8px 0 0;font-size:13px}.pricing-toolbar label{display:flex;align-items:center;gap:12px;font-size:13px;color:#5d6e84;white-space:nowrap}.pricing-toolbar select{background:#fff;border:1px solid #d7dfeb;border-radius:8px;padding:10px 14px;min-width:125px}.portal-plans{grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:20px}.portal-plans .plan{padding:28px;border:1px solid #dce4ef;border-radius:16px;background:#fff;box-shadow:none;display:flex;flex-direction:column}.portal-plans .plan[hidden]{display:none}.portal-plans .plan h2{font-size:22px}.portal-plans .plan .price{font-size:36px;color:#152b4a;white-space:normal;overflow-wrap:anywhere}.portal-plans .price small{font-size:12px;color:#6b7b90;font-weight:400}.pricing-quota{font-size:25px;font-weight:700;margin:24px 0;color:#315fcc}.pricing-quota span{display:block;font-size:12px;color:#738098;font-weight:400;margin-top:5px}.pricing-facts{margin:0;border-top:1px solid #e8edf5}.pricing-facts div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #edf1f6;font-size:13px}.pricing-facts dt{color:#6c7b8f}.pricing-facts dd{margin:0;color:#273b56;text-align:right}.pricing-note{font-size:12px;line-height:1.8;color:#78869a;flex:1}.portal-plans .plan .btn{width:100%}.portal .btn:disabled{opacity:1;background:#edf1f7;color:#69788d;border-color:#e2e8f1;cursor:not-allowed}.pricing-empty{grid-column:1/-1;padding:50px;background:#f6f8fc;border:1px solid #e1e7f2;border-radius:18px;text-align:center}.pricing-empty h2{font-size:26px;margin:16px 0}.pricing-empty p{font-size:14px;color:#68788f;line-height:1.9}.pricing-empty .actions{justify-content:center;flex-wrap:wrap;margin:24px 0}.pricing-standards{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;font-size:12px;color:#687990;padding-top:20px;border-top:1px solid #e2e8f1}.refresh-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;margin:72px 0 24px;padding:44px 0;border-top:1px solid #e2e7f0}.refresh-faq p{color:#63728a;font-size:14px;line-height:1.9}.refresh-faq details{border-bottom:1px solid #e2e7f0;padding:20px 0}.refresh-faq summary{font-weight:600;cursor:pointer;line-height:1.6}.portal-footer{max-width:1232px;border-top:1px solid #dde5ef;padding:30px 24px;margin:0 auto}.portal :focus-visible{outline:3px solid #83aaff;outline-offset:4px}.portal-page-head{padding:34px 0 20px}.portal-page-head h1{font-size:38px;color:#17243a}.course-hero{background:#142b49}.auth-art{background:#14263f}
@media(max-width:1150px){.portal-header{padding:16px 24px;gap:18px;flex-wrap:wrap}.portal-header nav{order:3;flex-basis:100%;justify-content:center}.portal-header-actions{margin-left:auto}.portal-hero{padding:42px 32px;gap:28px}}
@media(max-width:760px){.portal-header{padding:14px 18px;gap:12px}.portal-header .brand small,.portal-header .brand-divider{display:none}.portal-header nav{justify-content:flex-start;overflow:auto;max-width:100%;gap:6px}.portal-header nav a{font-size:12px;padding:8px}.portal-main{padding:24px 18px 40px}.portal-hero{display:block;padding:30px 24px;border-radius:18px}.portal-hero .hero-copy h1{font-size:34px;letter-spacing:-1px}.portal-hero .hero-account{margin-top:30px;width:100%}.portal-hero .actions{flex-wrap:wrap}.hub-services{grid-template-columns:1fr}.hub-services .panel{padding:26px}.hub-road-preview{padding:26px}.refresh-heading{align-items:flex-start;flex-direction:column}.refresh-heading h2,.refresh-faq h2{font-size:26px}.pricing-toolbar{align-items:flex-start;flex-direction:column}.pricing-empty{padding:30px 20px}.pricing-empty h2{font-size:22px}.refresh-faq{grid-template-columns:1fr;gap:20px;margin-top:44px}.refresh-section{margin-top:42px}.portal-page-head h1{font-size:30px}.portal-shortcuts-menu{max-width:100vw}}
.portal-header .portal-shortcuts>summary{background:transparent;color:#e9edf5;border:1px solid #64718a}.portal-header .portal-shortcuts>summary:hover{background:#253046}@media(max-width:480px){.portal-hero .hero-copy h1{font-size:26px;letter-spacing:-.8px;line-height:1.4}}
.home-account-showcase{margin:60px 0 34px}.home-account-showcase .refresh-heading{margin-bottom:17px}.home-account-showcase .refresh-heading p{margin-top:9px;color:#65758a;line-height:1.8}.home-account-summary{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.home-account-summary span{padding:7px 11px;border-radius:999px;background:#eef3fc;color:#345b9a;font-size:12px}.home-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-account-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #dfe6f0;border-radius:16px;background:linear-gradient(145deg,#fff,#f8faff);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.home-account-card:hover{transform:translateY(-3px);border-color:#b9c9e4;box-shadow:0 18px 36px rgba(32,58,96,.08)}.home-account-card .page-head{margin:0}.home-account-card .account-stock{font-size:11px;color:#60738d}.home-account-card h3{margin:18px 0 9px;color:#1b3554;font-size:18px;line-height:1.55}.home-account-card>p{flex:1;color:#718197;font-size:12px;line-height:1.7}.home-account-card .price{margin:19px 0;color:#1e477e;font-size:28px}.home-account-card .price small{font-size:12px;color:#7b899c}.home-account-card .actions{flex-wrap:wrap}.home-account-card .actions .btn{flex:1}@media(max-width:900px){.home-account-grid{grid-template-columns:1fr 1fr}.home-account-card:last-child{grid-column:1/-1}}@media(max-width:620px){.home-account-showcase{margin-top:42px}.home-account-grid{grid-template-columns:1fr}.home-account-card:last-child{grid-column:auto}.home-account-showcase .refresh-heading{align-items:flex-start}}

/* Static IP storefront */
.ip-market-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:center;gap:48px;overflow:hidden;padding:62px 58px;margin:-42px -24px 52px;background:linear-gradient(120deg,#f5f8ff 0%,#eef4ff 48%,#f5f0ff 100%);border-bottom:1px solid #e3eaf8}.ip-market-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-130px;top:-220px;background:radial-gradient(circle,#b8cbff80,transparent 68%)}.ip-market-copy,.ip-market-visual{position:relative;z-index:1}.ip-kicker{display:inline-flex;align-items:center;gap:8px;color:#3563cf;font-size:12px;font-weight:750;letter-spacing:2px}.ip-kicker:before{content:"";width:28px;height:2px;background:#4a73d8}.ip-market-copy h1{max-width:700px;margin:17px 0 18px;color:#13213b;font-size:clamp(36px,4.4vw,60px);line-height:1.15;letter-spacing:-2.2px}.ip-market-copy p{max-width:650px;margin:0;color:#607087;font-size:16px;line-height:1.9}.ip-trust-row{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px;color:#385070;font-size:13px}.ip-market-visual{display:grid;place-items:center;min-height:275px}.ip-orbit{position:relative;display:grid;place-items:center;width:242px;height:242px;border:1px solid #bdccef;border-radius:50%;box-shadow:inset 0 0 0 34px #fff7,0 24px 60px #4869a823}.ip-orbit:before,.ip-orbit:after{content:"";position:absolute;border:1px dashed #b0c2ea;border-radius:50%}.ip-orbit:before{inset:26px}.ip-orbit:after{inset:58px}.ip-orbit strong{display:grid;place-items:center;width:84px;height:84px;border-radius:24px;background:linear-gradient(145deg,#315fcc,#754dd6);color:#fff;font-size:27px;box-shadow:0 16px 34px #345fc84d;z-index:2}.ip-orbit span{position:absolute;display:grid;place-items:center;width:42px;height:42px;border:1px solid #dce5f6;border-radius:13px;background:#fff;color:#405678;font-size:11px;font-weight:750;box-shadow:0 8px 22px #263f681a;z-index:3}.ip-orbit span:nth-child(1){top:-8px}.ip-orbit span:nth-child(2){right:-4px;top:48px}.ip-orbit span:nth-child(3){right:8px;bottom:27px}.ip-orbit span:nth-child(5){left:8px;bottom:27px}.ip-orbit span:nth-child(6){left:-4px;top:48px}.ip-visual-note{margin-top:17px;color:#59708f;font-size:12px;letter-spacing:1.5px}.ip-catalog{margin-bottom:64px}.ip-catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.ip-catalog-heading h2,.ip-purchase-flow h2{margin:10px 0 8px;color:#16243b;font-size:32px;letter-spacing:-.8px}.ip-catalog-heading p,.ip-purchase-flow>div>p{margin:0;color:#6b7a90;line-height:1.8}.ip-guide-link{color:#315fcc;font-size:13px;font-weight:650;white-space:nowrap}.ip-family-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.ip-family-tabs button{display:flex;align-items:center;gap:13px;min-width:0;padding:17px 16px;border:1px solid #dfe6f1;border-radius:13px;background:#fff;color:#253850;text-align:left;cursor:pointer;transition:.2s ease}.ip-family-tabs button:hover{border-color:#aebfe2;transform:translateY(-2px)}.ip-family-tabs button.active{border-color:#315fcc;background:#f1f5ff;box-shadow:0 8px 24px #315fcc17}.ip-family-tabs button>span:last-child{display:grid;gap:3px;min-width:0}.ip-family-tabs strong{font-size:14px}.ip-family-tabs small{overflow:hidden;color:#7a889c;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ip-family-icon{display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:11px;background:#edf2fb;color:#365da9;font-size:11px;font-weight:800}.ip-family-tabs .active .ip-family-icon{background:#315fcc;color:#fff}.ip-filter-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:14px;padding:15px 18px;margin-bottom:23px;border:1px solid #e0e6ef;border-radius:14px;background:#fffefee8;box-shadow:0 10px 35px #1934560b;backdrop-filter:blur(14px)}.ip-search{display:flex;align-items:center;flex:1;gap:10px;min-width:180px;padding:0 13px;border:1px solid #dbe3ef;border-radius:9px;background:#f8fafd}.ip-search span{color:#8090a7;font-size:21px}.ip-search input{width:100%;height:42px;border:0;outline:0;background:transparent;color:#243750}.ip-select-label{display:flex;align-items:center;gap:9px;color:#66768b;font-size:12px}.ip-select-label select{height:42px;padding:0 34px 0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#273a53}.ip-result-count{min-width:110px;color:#718096;font-size:12px;text-align:right}.ip-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ip-product-card{position:relative;padding:24px;border:1px solid #dde5ef;border-radius:16px;background:#fff;box-shadow:0 11px 34px #18365c0a;transition:.2s ease}.ip-product-card:hover{border-color:#b8c8e4;box-shadow:0 18px 44px #18365c16;transform:translateY(-3px)}.ip-product-top{display:flex;align-items:center;gap:13px}.ip-country-code{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:12px;background:linear-gradient(145deg,#eef3ff,#f8faff);color:#315fcc;font-size:12px;font-weight:800;letter-spacing:.8px}.ip-product-type{color:#73839a;font-size:11px}.ip-product-top h3{margin:3px 0 0;color:#172840;font-size:18px}.ip-recommend{margin-left:auto;padding:5px 8px;border-radius:99px;background:#eef3ff;color:#315fcc;font-size:10px;font-weight:700}.ip-card-divider{height:1px;margin:20px 0;background:#ebeff5}.ip-price-label{color:#8290a3;font-size:11px}.ip-product-price{margin:8px 0 17px;color:#142a4a;font-size:30px;font-weight:750;letter-spacing:-.8px}.ip-product-price small{margin-left:5px;color:#7b899b;font-size:11px;font-weight:400;letter-spacing:0}.ip-product-facts{margin:0 0 20px}.ip-product-facts div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px dashed #e5eaf1;font-size:12px}.ip-product-facts dt{color:#738299}.ip-product-facts dd{margin:0;color:#263a54;font-weight:600;text-align:right}.ip-product-action{width:100%}.ip-card-foot{margin:11px 0 0;color:#8a97a9;font-size:10px;text-align:center}.ip-empty-state{grid-column:1/-1;padding:60px 24px;border:1px dashed #ccd7e8;border-radius:18px;background:linear-gradient(145deg,#f8faff,#f5f7fc);text-align:center}.ip-empty-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:17px;background:#e9f0ff;color:#315fcc;font-size:30px}.ip-empty-state h2{margin:0 0 10px;color:#1e314d}.ip-empty-state p{max-width:570px;margin:0 auto;color:#6d7d93;line-height:1.8}.ip-empty-state .actions{justify-content:center;margin-top:23px}.ip-purchase-flow{display:grid;grid-template-columns:.75fr 1.75fr;gap:42px;padding:38px;margin:58px 0 24px;border-radius:20px;background:#f4f7fc}.ip-purchase-flow ol{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;padding:0;margin:0;list-style:none}.ip-purchase-flow li{padding:20px;border:1px solid #dfe6f0;border-radius:13px;background:#fff}.ip-purchase-flow li>span{color:#315fcc;font-size:11px;font-weight:800;letter-spacing:1px}.ip-purchase-flow li strong{display:block;margin:13px 0 7px;color:#20344f}.ip-purchase-flow li p{margin:0;color:#748398;font-size:12px;line-height:1.7}.ip-assurance{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px 32px;border:1px solid #dce5f1;border-radius:16px;background:#fff}.ip-assurance strong{color:#1d304b;font-size:17px}.ip-assurance p{margin:7px 0 0;color:#758399;font-size:12px}.ip-assurance .btn{flex:0 0 auto}
@media(max-width:1000px){.ip-market-hero{grid-template-columns:1fr .55fr;padding:48px 36px}.ip-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-family-tabs{grid-template-columns:repeat(2,1fr)}.ip-purchase-flow{grid-template-columns:1fr}.ip-market-visual{transform:scale(.86)}}
@media(max-width:700px){.ip-market-hero{display:block;padding:40px 22px;margin:-24px -18px 36px}.ip-market-copy h1{font-size:35px;letter-spacing:-1.3px}.ip-market-visual{min-height:245px;margin-top:26px;transform:scale(.82)}.ip-catalog-heading{align-items:flex-start;flex-direction:column}.ip-catalog-heading h2,.ip-purchase-flow h2{font-size:27px}.ip-family-tabs{display:flex;overflow:auto;padding-bottom:5px}.ip-family-tabs button{flex:0 0 170px}.ip-filter-bar{position:static;align-items:stretch;flex-direction:column}.ip-select-label{justify-content:space-between}.ip-select-label select{flex:1}.ip-result-count{text-align:left}.ip-product-grid{grid-template-columns:1fr}.ip-purchase-flow{padding:26px 20px}.ip-purchase-flow ol{grid-template-columns:1fr}.ip-assurance{align-items:flex-start;flex-direction:column}.ip-assurance .btn{width:100%}}
.proxy-order-list{display:grid;gap:16px}.proxy-order-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 28px}.proxy-order-card h2{margin:12px 0 7px;color:#1c304c}.proxy-order-card p{margin:4px 0;color:#6b7c93}.good-copy{color:#15764a!important}.proxy-resource-list{display:grid;gap:13px;margin-top:22px}.proxy-resource{padding:19px;border:1px solid #dbe5f2;border-radius:13px;background:#f8faff}.proxy-resource>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:15px}.proxy-resource h3{margin:0;color:#18304f;font-size:16px}.proxy-resource dl{margin:15px 0}.proxy-resource dl div{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px dashed #dfe6f0}.proxy-resource dt{color:#718198}.proxy-resource dd{margin:0;color:#223854;overflow-wrap:anywhere;text-align:right}.order-progress ol{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0;margin:18px 0;list-style:none}.order-progress li{padding:10px;border-radius:8px;background:#f1f5fb;color:#5f7189;font-size:11px;text-align:center}@media(max-width:700px){.proxy-order-card{align-items:flex-start;flex-direction:column}.proxy-order-card .btn{width:100%}.order-progress ol{grid-template-columns:1fr 1fr}}

/* NEXUS v32 — unified visual polish layer */
:root{
  --blue:#3564e8;--blue-strong:#244fc5;--violet:#7657e8;--ink:#142239;
  --muted:#6d7d93;--line:#dfe6f0;--soft:#f3f6fb;--surface:#fff;
  --success:#16775a;--warning:#9b6819;--danger:#b2394f;
  --shadow-sm:0 7px 24px rgba(24,45,78,.06);
  --shadow-md:0 18px 55px rgba(24,45,78,.11);
  --radius:16px;--radius-lg:24px;
  font-family:Inter,"PingFang SC","Microsoft YaHei","Segoe UI",system-ui,sans-serif;
  color:var(--ink);background:#f6f8fc
}
html{scroll-behavior:smooth;background:#f6f8fc}
body{background:radial-gradient(circle at 80% -12%,rgba(78,113,232,.09),transparent 28%),#f6f8fc;color:var(--ink);-webkit-font-smoothing:antialiased}
::selection{background:#dce7ff;color:#173a88}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
a{text-underline-offset:3px}
h1,h2,h3{color:var(--ink)}

/* Shared controls */
.btn{min-height:42px;border-radius:11px;padding:10px 16px;border-color:#d8e1ee;background:#fff;color:#253750;font-weight:600;box-shadow:0 1px 2px rgba(20,35,58,.03)}
.btn:hover{background:#f7f9fd;border-color:#bdcbe0;transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.btn.primary{border-color:transparent;background:linear-gradient(135deg,var(--blue),var(--blue-strong));color:#fff;box-shadow:0 10px 22px rgba(45,88,209,.20)}
.btn.primary:hover{background:linear-gradient(135deg,#426fe9,#2449b7);box-shadow:0 14px 30px rgba(45,88,209,.27)}
.btn.danger{background:#fff7f8;color:var(--danger);border-color:#f2d2d8}
.btn.small{min-height:34px;border-radius:9px;padding:7px 11px}
.link{color:#2d5dcc;font-weight:600}
.link:hover{color:#173f9f}
.field{gap:9px;color:#40536c;font-weight:600}
.field input,.field select,.field textarea,input.filter,select.filter,.search{min-height:46px;border:1px solid #cfdae8;border-radius:11px;background:#fbfcfe;padding:11px 13px;color:#20344e}
.field input:hover,.field select:hover,.field textarea:hover,input.filter:hover,select.filter:hover,.search:hover{border-color:#afc0d7;background:#fff}
.field input:focus,.field select:focus,.field textarea:focus,input.filter:focus,select.filter:focus,.search:focus{outline:0;border-color:#658cf0;background:#fff;box-shadow:0 0 0 4px rgba(53,100,232,.11)}
.panel{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.96);box-shadow:var(--shadow-sm)}
.panel-head{padding:22px 24px;border-bottom:1px solid #edf1f6}
.panel-body{padding:23px 24px}
.banner{border-radius:13px;padding:14px 17px;background:linear-gradient(110deg,#edf3ff,#f7f9ff);border-color:#dbe5fb;color:#385783}
.pill,.env{border-radius:999px!important;font-weight:600}
.status{border-radius:999px;padding:5px 10px;font-weight:600}
.empty{min-height:170px;display:grid;place-items:center;padding:48px 24px;border-radius:14px;background:linear-gradient(180deg,#fff,#f7f9fc);color:#65778f}
.mono{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;overflow-wrap:anywhere}

/* Public portal */
.portal{background:linear-gradient(180deg,#f8faff 0,#fff 34%,#f7f9fc 100%);color:var(--ink)}
.portal-header{position:sticky;top:0;z-index:80;min-height:80px;height:auto;background:rgba(12,20,35,.95);border-bottom:1px solid rgba(255,255,255,.09);box-shadow:0 12px 35px rgba(8,18,33,.15);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.portal-header .brand{font-weight:800;letter-spacing:2.4px}
.brand-mark{border-radius:11px;background:linear-gradient(145deg,#4d7cff,#7259ea);box-shadow:0 8px 22px rgba(60,101,229,.28)}
.portal-header nav{gap:7px}
.portal-header nav a{padding:11px 13px!important;border-radius:9px;color:#b5c0d0!important;font-weight:600}
.portal-header nav a:hover{background:rgba(255,255,255,.08);color:#fff!important}
.portal-header nav a.active{background:rgba(99,139,255,.15)!important;color:#b9ceff!important}
.portal-header nav a.active:after{display:none}
.portal-header .portal-shortcuts>summary{min-height:40px;border-radius:10px;border-color:#455268;background:rgba(255,255,255,.04)}
.portal-shortcuts-menu{box-shadow:-26px 0 90px rgba(12,27,47,.26)!important}
.portal-drawer-heading{font-weight:750}
.portal-shortcuts-menu a{border:1px solid transparent;border-radius:10px}
.portal-shortcuts-menu a:hover{border-color:#dbe6f8;background:#f1f5fc}
.portal-main{width:min(100%,1328px);padding:46px 24px 72px}
.portal-page-head{padding:38px 0 28px}
.portal-page-head .eyebrow,.eyebrow{color:#5574b1;font-weight:750}
.portal-page-head h1{font-size:clamp(30px,3.4vw,43px);letter-spacing:-1.2px;line-height:1.25}
.portal-page-head p{max-width:760px;color:#6b7c92;line-height:1.9}
.portal-hero{position:relative;overflow:hidden;border:1px solid #dfe7f4;border-radius:28px;background:radial-gradient(circle at 92% 8%,rgba(116,90,232,.13),transparent 28%),radial-gradient(circle at 15% 90%,rgba(53,100,232,.11),transparent 34%),linear-gradient(135deg,#f7f9fe,#eef4ff);box-shadow:0 22px 65px rgba(29,53,88,.10)}
.portal-hero:after{content:"";position:absolute;inset:auto -90px -140px auto;width:300px;height:300px;border:1px solid rgba(74,111,220,.17);border-radius:50%;box-shadow:0 0 0 48px rgba(74,111,220,.045),0 0 0 96px rgba(74,111,220,.03);pointer-events:none}
.portal-hero>*{position:relative;z-index:1}
.portal-hero .hero-account{border-radius:20px;border-color:#dbe4f2;box-shadow:0 22px 55px rgba(32,57,92,.12)}
.hero-numbers{gap:42px}
.hero-card-action{border-top-color:#e4eaf3!important}
.portal-section{padding-top:64px}
.portal-section-head h2,.refresh-heading h2{font-size:clamp(25px,2.6vw,34px)}
.hub-services .panel,.hub-task-grid .panel,.trade-article,.course-tools,.course-directory,.course-lesson{border-radius:18px;border-color:#e0e7f0;box-shadow:var(--shadow-sm)}
.hub-services .panel,.hub-task-grid .panel{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.hub-services .panel:hover,.hub-task-grid .panel:hover{transform:translateY(-3px);border-color:#bdcce2;box-shadow:var(--shadow-md)}
.portal-plans .plan{border-radius:19px;border-color:#dfe6ef;box-shadow:var(--shadow-sm);transition:.22s ease}
.portal-plans .plan:hover{transform:translateY(-4px);border-color:#b8c9e5;box-shadow:var(--shadow-md)}
.portal-plans .plan.featured{border-color:#7998eb;background:linear-gradient(180deg,#f8faff,#fff 28%);box-shadow:0 20px 55px rgba(54,94,202,.13)}
.recommended,.ip-recommend{border-radius:999px;padding:5px 9px;font-weight:750}
.pricing-facts div:last-child,.ip-product-facts div:last-child{border-bottom:0}
.refresh-faq details{border:1px solid #e3e9f2;border-radius:13px;padding:18px 20px;margin-bottom:11px;background:#fff;box-shadow:0 4px 14px rgba(28,49,79,.04)}
.refresh-faq details[open]{border-color:#c8d6eb;background:#fbfcff}
.portal-footer{width:min(100%,1280px);padding:34px 24px 40px;border-top-color:#dfe6f0}
.portal-footer-links{flex-wrap:wrap}

/* Store, orders and delivery */
.ip-market-hero{border-radius:0 0 28px 28px;background:radial-gradient(circle at 88% 14%,rgba(117,78,217,.17),transparent 28%),linear-gradient(120deg,#f7f9ff,#edf3ff 55%,#f9f7ff);box-shadow:0 24px 60px rgba(34,57,91,.08)}
.ip-family-tabs button{border-radius:14px;box-shadow:0 5px 18px rgba(28,49,79,.04)}
.ip-family-tabs button.active{background:linear-gradient(135deg,#f0f4ff,#f8f6ff);box-shadow:0 12px 28px rgba(49,95,204,.13)}
.ip-filter-bar{top:94px;border-radius:16px;border-color:#dce5f0;background:rgba(255,255,255,.91);box-shadow:0 14px 42px rgba(25,52,86,.10)}
.ip-product-card{border-radius:18px;box-shadow:var(--shadow-sm)}
.ip-product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.ip-country-code{border-radius:14px;background:linear-gradient(145deg,#eaf1ff,#fafbff);box-shadow:inset 0 0 0 1px #dce7fb}
.ip-product-price{font-size:32px}
.ip-purchase-flow{border:1px solid #e1e8f2;border-radius:22px;background:linear-gradient(145deg,#f4f7fc,#eef3fb)}
.ip-purchase-flow li{border-radius:15px;box-shadow:0 8px 22px rgba(26,50,84,.05)}
.proxy-order-list{gap:18px}
.proxy-order-card{border-radius:18px;box-shadow:var(--shadow-sm)}
.proxy-resource{border-radius:15px;background:linear-gradient(145deg,#f8faff,#f3f7fd)}
.order-progress{border-radius:14px;background:#f5f8fd}
.order-progress li{border-radius:10px!important}
.order-progress li.current{background:#eaf1ff!important;box-shadow:inset 0 0 0 1px #8ba9f2}
.manual-code-grid article{border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}
.manual-code-grid img{border-radius:12px}

/* Learning content */
.course-hero{border-radius:24px;background:radial-gradient(circle at 88% 18%,rgba(117,88,232,.34),transparent 31%),linear-gradient(135deg,#102640,#1b4771);box-shadow:0 24px 64px rgba(12,35,61,.2)}
.course-start{border-radius:17px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}
.course-filter{border-radius:999px;padding:9px 14px}
.course-filter.active{background:linear-gradient(135deg,#315fcc,#6a55d8);border-color:transparent;box-shadow:0 8px 18px rgba(49,95,204,.19)}
.course-lesson>summary{transition:background .18s ease}
.course-lesson>summary:hover{background:#f8faff}
.course-number{border-radius:12px;background:linear-gradient(145deg,#eaf1ff,#f5f8ff);color:#315fcc}
.course-example{border-left-color:#416fdb;background:#f0f5ff}
.course-exercise{background:#eef8f4}
.trade-learning-path{border-radius:18px;background:linear-gradient(145deg,#fff,#f7f9fd)}

/* Account and authentication */
.account-profile,.account-metrics>a,.sub-card{border-radius:18px;box-shadow:var(--shadow-sm)}
.account-metrics>a{transition:.18s ease}
.account-metrics>a:hover{transform:translateY(-3px);border-color:#c3d1e6;box-shadow:var(--shadow-md)}
.account-cta{border:1px solid #dbe6fa;border-radius:17px;background:linear-gradient(120deg,#edf3ff,#f7f4ff)}
.auth{background:radial-gradient(circle at 86% 8%,rgba(62,102,229,.11),transparent 28%),#f5f8fc}
.auth-art{background:radial-gradient(circle at 16% 8%,rgba(81,123,230,.38),transparent 34%),radial-gradient(circle at 94% 94%,rgba(116,84,222,.28),transparent 30%),linear-gradient(145deg,#142b49,#0e1c30)}
.auth-inner{border-radius:24px;border-color:#dce5f0;box-shadow:0 28px 80px rgba(22,44,75,.13)}
.auth-inner h1{letter-spacing:-.7px}

/* Admin workspace */
.workspace-header{min-height:82px;background:linear-gradient(100deg,#10243c,#172f4a);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 12px 36px rgba(13,30,50,.16)}
.workspace-header .brand{font-weight:800;letter-spacing:2px}
.topnav-group summary{border-radius:10px;font-weight:600}
.topnav-group.active summary,.topnav-group[open] summary,.topnav-group summary:hover{background:rgba(103,143,223,.20)}
.topnav-menu{border-radius:14px;box-shadow:0 22px 64px rgba(14,34,59,.25)}
.topnav-menu a{border-radius:9px}
.app-shell>.main{background:radial-gradient(circle at 88% -8%,rgba(63,105,229,.08),transparent 25%),#f6f8fc}
.topbar{height:74px;border-bottom-color:#dfe7f0}
.content{max-width:1532px;padding-top:34px}
.page-head h1{font-size:clamp(25px,2.4vw,34px);letter-spacing:-.8px}
.stats{gap:20px}
.stat{position:relative;overflow:hidden;border-radius:17px;border-color:#dfe7f0;box-shadow:var(--shadow-sm)}
.stat:after{content:"";position:absolute;right:-25px;top:-32px;width:90px;height:90px;border-radius:50%;background:rgba(53,100,232,.055)}
.stat-icon{border-radius:11px;background:#eaf1ff;color:#416ad1}
.stat-value{color:#172a45;font-size:34px}
.toolbar{border-bottom:1px solid #edf1f6}
.table-wrap{border-radius:0 0 var(--radius) var(--radius)}
table{font-variant-numeric:tabular-nums}
thead th{position:sticky;top:0;z-index:1;background:#f5f8fc;color:#586b82;font-weight:700}
tbody tr{transition:background .15s ease}
tbody tr:hover{background:#f6f9fe}
td{color:#344860}
.avatar{background:linear-gradient(145deg,#e9f0ff,#f4f1ff);color:#3b5eae;font-weight:750}

/* Dialogs and feedback */
dialog{border:1px solid #dce5f0;border-radius:22px;box-shadow:0 34px 110px rgba(7,22,43,.35);animation:modal-in .18s ease-out}
dialog::backdrop{background:rgba(10,24,43,.62);backdrop-filter:blur(5px)}
.modal-head{padding:22px 25px;background:#fff}
.modal-body{padding:25px}
.modal-foot{padding:17px 25px;background:#f7f9fc}
#toast{border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(17,35,58,.96);box-shadow:0 18px 50px rgba(11,25,44,.28);backdrop-filter:blur(12px)}
@keyframes modal-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}

@media(max-width:1100px){
  .portal-header{padding:15px 22px}.portal-header nav{order:3;width:100%;overflow-x:auto;justify-content:flex-start;padding-bottom:1px}
  .portal-header nav::-webkit-scrollbar{display:none}.ip-filter-bar{top:132px}
}
@media(max-width:760px){
  .portal-main{padding:25px 16px 52px}.portal-header{position:relative;padding:14px 16px}.portal-header nav{gap:3px}
  .portal-header nav a{font-size:12px;padding:9px!important}.portal-header-actions{margin-left:auto}
  .portal-hero{border-radius:21px;padding:31px 23px}.portal-section{padding-top:46px}.portal-page-head{padding:26px 0 22px}
  .portal-page-head h1{font-size:30px}.ip-market-hero{border-radius:0 0 22px 22px}.ip-filter-bar{top:0}
  .proxy-order-card{padding:21px}.account-metrics{grid-template-columns:1fr}.account-cta{align-items:flex-start;flex-direction:column}
  .content{padding:25px 16px}.topbar{height:65px}.panel-head,.panel-body{padding:19px}
  .course-hero{border-radius:19px}.portal-footer{padding-inline:18px}.portal-footer-links{gap:14px}
  dialog{border-radius:18px;max-height:92svh}.modal-head,.modal-body,.modal-foot{padding-left:20px;padding-right:20px}
}
@media(max-width:480px){
  .portal-header .brand{font-size:19px}.portal-shortcuts summary{font-size:0}.portal-shortcuts summary:before{content:"菜单";font-size:12px}
  .stats{grid-template-columns:1fr 1fr;gap:11px}.stat{padding:16px}.stat-value{font-size:25px}
  .btn{white-space:normal;text-align:center}.page-head .actions .btn{flex:1}.portal-plans .plan{padding:23px}
  .hero-numbers{gap:24px}.hero-numbers strong{font-size:31px}.ip-product-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* v38 official client download directory */
.guide-mode{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:34px;align-items:start;background:linear-gradient(135deg,#f9fbff,#f2f6ff)}
.guide-mode h2,.client-directory-head h2{margin:7px 0 9px;font-size:clamp(24px,2.2vw,32px);color:#172c49}
.guide-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.guide-mode-grid article{padding:20px;border:1px solid #dce6f4;border-radius:16px;background:rgba(255,255,255,.86)}
.guide-mode-grid article>span{display:grid;width:34px;height:34px;place-items:center;margin-bottom:13px;border-radius:11px;background:#e8f0ff;color:#315fc8;font-weight:800}
.guide-mode-grid strong{display:block;margin-bottom:7px;color:#1c3556;font-size:16px}.guide-mode-grid p{margin:0;color:#60738b;line-height:1.72}
.client-directory{margin-top:25px}.client-directory-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}
.client-directory-head p{margin:0;color:#66788f}.client-count{flex:0 0 auto;padding:8px 13px;border:1px solid #d9e4f3;border-radius:999px;background:#fff;color:#536b88;font-size:12px;font-weight:700}
.client-download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.client-download-card{display:flex;min-height:318px;flex-direction:column;padding:23px;border:1px solid #dce5f1;border-radius:19px;background:#fff;box-shadow:0 12px 34px rgba(23,50,86,.07);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.client-download-card:hover{transform:translateY(-4px);border-color:#b9cbed;box-shadow:0 20px 46px rgba(23,50,86,.12)}
.client-download-top{display:flex;justify-content:space-between;gap:9px;align-items:center}.client-platform{color:#61738b;font-size:12px;font-weight:700}.client-fit{padding:5px 8px;border-radius:999px;background:#f1f4f8;color:#68778a;font-size:11px;font-weight:800}.client-fit.good{background:#e7f7ef;color:#15714f}
.client-download-card h2{margin:19px 0 9px;color:#172d4b;font-size:22px}.client-download-card p{margin:0 0 15px;color:#60738a;line-height:1.7}
.client-support{display:flex;flex-wrap:wrap;gap:6px;margin:auto 0 17px}.client-support span{padding:5px 8px;border:1px solid #e0e7f1;border-radius:8px;background:#f8fafd;color:#536a85;font-size:11px;font-weight:650}
.client-download-link{width:100%;justify-content:center}.client-download-card small{margin-top:9px;text-align:center;color:#8290a2}.client-steps{margin-top:25px}.client-steps ol{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;padding-left:23px}.client-steps li{padding-left:4px;color:#5f7289;line-height:1.7}.client-steps li strong{color:#263d5b}
.guide-warning{display:flex;gap:13px;margin:20px 0;padding:15px 17px;border:1px solid #f0d8a7;border-radius:14px;background:#fff9ed;color:#765521}.guide-warning strong{flex:0 0 auto}.guide-warning p{margin:0;line-height:1.65}
@media(max-width:980px){.guide-mode{grid-template-columns:1fr}.client-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.guide-mode-grid,.client-download-grid,.client-steps ol{grid-template-columns:1fr}.client-directory-head{align-items:start;flex-direction:column}.client-download-card{min-height:0}.guide-warning{display:block}.guide-warning strong{display:block;margin-bottom:5px}}

/* v33 imagery */
.portal-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,249,254,.98) 0%,rgba(247,249,254,.91) 44%,rgba(247,249,254,.34) 72%,rgba(247,249,254,.08) 100%),url('/assets/global-trade.webp') center/cover no-repeat;opacity:.46;pointer-events:none}
.portal-hero .hero-copy{padding:10px 0;text-shadow:0 1px 0 rgba(255,255,255,.5)}
.hub-services>.panel{overflow:hidden;padding-top:0!important}
.hub-services>.panel:before{content:"";display:block;height:154px;margin:0 -30px 25px;background:center/cover no-repeat;transition:transform .45s ease,filter .3s ease}
.hub-services>.panel:nth-child(1):before{background-image:linear-gradient(0deg,rgba(13,35,63,.1),transparent),url('/assets/social-learning.webp')}
.hub-services>.panel:nth-child(2):before{background-image:linear-gradient(0deg,rgba(13,35,63,.16),transparent),url('/assets/global-network.webp')}
.hub-services>.panel:nth-child(3):before{background-image:linear-gradient(0deg,rgba(13,35,63,.12),transparent),url('/assets/global-trade.webp')}
.hub-services>.panel:hover:before{transform:scale(1.035);filter:saturate(1.06)}
.ip-market-visual{border-radius:22px;background:linear-gradient(0deg,rgba(10,28,51,.18),transparent 55%),url('/assets/global-network.webp') center/cover no-repeat;box-shadow:0 24px 60px rgba(20,45,82,.18);overflow:hidden}
.ip-market-visual .ip-orbit{display:none}
.ip-visual-note{align-self:end;margin:0 0 20px;padding:8px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(10,27,50,.62);color:#fff;backdrop-filter:blur(10px)}
.course-hero{position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(11,32,56,.98),rgba(18,48,81,.88) 57%,rgba(18,48,81,.24)),url('/assets/social-learning.webp') center/cover no-repeat}
.course-hero>*{position:relative;z-index:1}
.auth-art:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(13,31,53,.9),rgba(13,31,53,.55)),url('/assets/global-trade.webp') center/cover no-repeat;opacity:.34}
.auth-art>*{position:relative;z-index:1}

/* v33 verified registration */
.verify-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}
.verify-inline .btn{min-width:116px;height:46px}
.register-code-field small{font-weight:400;color:#728198;line-height:1.6}
.register-code-field small.verify-success{color:#187658}

/* v33 motion */
.reveal-ready{opacity:0;transform:translateY(18px);filter:blur(2px)}
.reveal-visible{opacity:1;transform:none;filter:none;transition:opacity .55s ease var(--reveal-delay,0ms),transform .55s cubic-bezier(.22,.8,.24,1) var(--reveal-delay,0ms),filter .45s ease var(--reveal-delay,0ms)}
.brand-mark{animation:brand-breathe 5s ease-in-out infinite}
.ip-market-visual{animation:media-float 7s ease-in-out infinite}
@keyframes brand-breathe{0%,100%{box-shadow:0 8px 22px rgba(60,101,229,.28)}50%{box-shadow:0 10px 28px rgba(91,92,229,.44)}}
@keyframes media-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

@media(max-width:760px){
  .portal-hero:before{background:linear-gradient(180deg,rgba(247,249,254,.96),rgba(247,249,254,.89)),url('/assets/global-trade.webp') center/cover no-repeat;opacity:.32}
  .hub-services>.panel:before{height:132px;margin-left:-26px;margin-right:-26px}
  .ip-market-visual{min-height:240px}.verify-inline{grid-template-columns:1fr}.verify-inline .btn{width:100%}
}

/* v34 contact bubble and simplified public services */
.hub-home-services{grid-template-columns:repeat(2,minmax(0,1fr))}
.hub-home-services>.panel:nth-child(2):before{background-image:linear-gradient(0deg,rgba(13,35,63,.12),transparent),url('/assets/global-trade.webp')}
.contact-float{position:fixed;right:24px;top:50%;z-index:1600;transform:translateY(-50%);font-family:"Segoe UI","Microsoft YaHei",sans-serif}
.contact-float-trigger{position:relative;width:62px;height:62px;padding:0;border:0;border-radius:22px;background:linear-gradient(145deg,#315fd3,#6454dd);color:#fff;box-shadow:0 18px 45px rgba(42,70,154,.34);display:grid;place-content:center;gap:2px;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.5px;transition:transform .2s ease,box-shadow .2s ease}
.contact-float-trigger:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(65,99,221,.24);border-radius:26px;animation:contact-pulse 2.8s ease-out infinite;pointer-events:none}
.contact-float-trigger:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(42,70,154,.42)}
.contact-icon{position:relative;width:23px;height:17px;margin:0 auto 2px;border:2px solid currentColor;border-radius:7px}
.contact-icon:before,.contact-icon:after{content:"";position:absolute;top:6px;width:3px;height:3px;border-radius:50%;background:currentColor;box-shadow:7px 0 0 currentColor}
.contact-icon:before{left:5px}.contact-icon:after{display:none}
.contact-icon{filter:drop-shadow(0 1px 1px rgba(0,0,0,.08))}
.contact-icon:after{display:block;top:auto;bottom:-5px;left:3px;width:7px;height:7px;border-radius:0;background:transparent;border-left:2px solid currentColor;transform:skewY(-35deg);box-shadow:none}
.contact-float-panel{position:absolute;right:76px;top:50%;width:318px;box-sizing:border-box;padding:22px;border:1px solid #dce5f1;border-radius:20px;background:rgba(255,255,255,.98);box-shadow:0 28px 80px rgba(14,35,65,.24);backdrop-filter:blur(18px);opacity:0;visibility:hidden;pointer-events:none;transform:translate(12px,-50%) scale(.97);transform-origin:right center;transition:opacity .18s ease,transform .2s ease,visibility .2s}
.contact-float.open .contact-float-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0,-50%) scale(1)}
.contact-float-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.contact-float-head div{display:grid;gap:4px}.contact-float-head small{font-size:9px;letter-spacing:1.5px;color:#6680a3}.contact-float-head strong{font-size:20px;color:#183653}
.contact-close{width:32px;height:32px;border:1px solid #dfe7f1;border-radius:10px;background:#f6f8fb;color:#66788e;font-size:21px;line-height:1;cursor:pointer}
.contact-intro{margin:14px 0 16px;color:#718298;font-size:12px;line-height:1.75}
.contact-list{border-top:1px solid #e8edf4}
.contact-list>div{display:grid;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #e8edf4;font-size:12px}
.contact-list span{color:#7b8ba0}.contact-list b{min-width:0;color:#263f5d;font-weight:650;overflow-wrap:anywhere}.contact-list button,.contact-list a,.contact-list em{border:0;background:transparent;color:#3764c9;font:inherit;text-decoration:none;font-style:normal;cursor:pointer;padding:3px}
.contact-list em{color:#6f8198;cursor:default}.contact-ticket{width:100%;margin-top:17px;justify-content:center}.contact-note{display:block;margin-top:10px;text-align:center;color:#8a98aa;font-size:10px}
@keyframes contact-pulse{0%{opacity:.8;transform:scale(.92)}70%,100%{opacity:0;transform:scale(1.18)}}
@media(max-width:760px){
  .hub-home-services{grid-template-columns:1fr}
  .contact-float{right:15px;top:auto;bottom:18px;transform:none}
  .contact-float-trigger{width:58px;height:58px;border-radius:20px}
  .contact-float-panel{right:0;top:auto;bottom:72px;width:min(330px,calc(100vw - 30px));transform:translateY(10px) scale(.97);transform-origin:right bottom}
  .contact-float.open .contact-float-panel{transform:none}
}
@media print{.contact-float{display:none!important}}

/* v35 product market and IP assistant */
.market-assistant{position:fixed;right:24px;top:calc(50% - 86px);z-index:1599;font-family:"Segoe UI","Microsoft YaHei",sans-serif}
.market-bot-trigger{width:62px;min-height:66px;padding:8px 5px;border:1px solid rgba(52,102,207,.16);border-radius:22px;background:rgba(255,255,255,.96);color:#3158b7;box-shadow:0 14px 38px rgba(31,57,100,.18);display:grid;place-content:center;gap:2px;cursor:pointer;backdrop-filter:blur(12px);transition:.2s ease}
.market-bot-trigger:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(31,57,100,.24)}.market-bot-trigger span{font-size:22px;line-height:1}.market-bot-trigger b{font-size:10px;white-space:nowrap}
.market-bot-panel{position:absolute;right:76px;top:0;width:390px;max-height:min(720px,88vh);overflow:auto;box-sizing:border-box;padding:23px;border:1px solid #dce5f1;border-radius:22px;background:rgba(255,255,255,.985);box-shadow:0 30px 90px rgba(12,34,66,.25);opacity:0;visibility:hidden;pointer-events:none;transform:translateX(12px) scale(.97);transform-origin:right top;transition:opacity .18s ease,transform .2s ease,visibility .2s}
.market-assistant.open .market-bot-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.market-bot-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.market-bot-panel header div{display:grid;gap:4px}.market-bot-panel header small,.market-result-head small{font-size:9px;letter-spacing:1.4px;color:#6680a3}.market-bot-panel header strong{font-size:19px;color:#183653}.market-bot-panel header button{width:32px;height:32px;border:1px solid #dfe7f1;border-radius:10px;background:#f6f8fb;color:#66788e;font-size:21px;cursor:pointer}
.market-bot-intro{margin:14px 0 18px;color:#718298;font-size:12px;line-height:1.7}.market-bot-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.market-bot-form label{display:grid;gap:6px;color:#60738c;font-size:11px}.market-bot-form select{width:100%;min-height:42px;padding:0 10px;border:1px solid #d8e2ef;border-radius:10px;background:#f9fbfe;color:#273f5d;font:inherit;font-size:12px}.market-bot-form>.btn{grid-column:1/-1;margin-top:2px;justify-content:center}
.market-bot-panel footer{display:flex;justify-content:space-between;gap:12px;margin-top:17px;padding-top:14px;border-top:1px solid #e8edf4;color:#8a98aa;font-size:9px}.market-bot-panel footer a{color:#4568b5;text-decoration:none}
.market-result-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.market-result-head h3{margin:4px 0 0;color:#1d3957;font-size:17px}.market-result-head>span{padding:4px 7px;border-radius:999px;background:#edf3ff;color:#4c6cac;font-size:9px;white-space:nowrap}.market-result-list{display:grid;gap:9px;margin-top:16px}.market-result-list article{display:grid;grid-template-columns:32px minmax(0,1fr) 30px;gap:10px;align-items:start;padding:12px;border:1px solid #e2e9f2;border-radius:13px;background:#fbfcff}.market-rank{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#eaf1ff;color:#4268bd;font-size:10px;font-weight:700}.market-result-list h4{margin:0;color:#29435f;font-size:13px}.market-result-list h4 small{color:#7b8ba0;font-size:9px}.market-result-list p{margin:5px 0 8px;color:#738399;font-size:10px;line-height:1.55}.market-result-list article>b{color:#3560c1;font-size:14px}.market-score{height:4px;border-radius:999px;background:#e8edf4;overflow:hidden}.market-score i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b71d9,#7658df)}
.market-ip-advice{margin-top:12px;padding:13px;border-radius:13px;background:linear-gradient(135deg,#edf4ff,#f7f4ff)}.market-ip-advice span{display:block;color:#7587a0;font-size:9px}.market-ip-advice strong{display:block;margin-top:4px;color:#294b77;font-size:13px}.market-ip-advice p{margin:5px 0 0;color:#687c96;font-size:10px;line-height:1.55}.market-result-actions{display:flex;gap:8px;margin-top:13px}.market-result-actions .btn{flex:1;font-size:11px}.market-disclaimer{margin:12px 0 0;color:#8b98aa;font-size:9px;line-height:1.6}
@media(max-width:760px){.market-assistant{right:15px;top:auto;bottom:88px}.market-bot-trigger{width:58px;min-height:61px;border-radius:20px}.market-bot-panel{position:fixed;right:15px;left:15px;top:auto;bottom:158px;width:auto;max-height:calc(100svh - 180px);transform:translateY(10px) scale(.98);transform-origin:right bottom}.market-assistant.open .market-bot-panel{transform:none}}
@media(max-width:420px){.market-bot-form{grid-template-columns:1fr}.market-bot-form>.btn{grid-column:auto}.market-bot-panel{padding:19px}.market-result-actions{flex-direction:column}}
@media print{.market-assistant{display:none!important}}

/* v39 launch UX polish */
.ip-load-more-wrap{display:flex;justify-content:center;margin:26px 0 4px}.ip-load-more-wrap .btn{min-width:230px;justify-content:center}
.service-status-banner{border-color:#cfe5db;background:#f2fbf7;color:#2d6552}
.password-toggle{position:absolute;right:10px;bottom:9px;padding:5px 8px;border:0;border-radius:8px;background:#eef3fb;color:#43618a;font:600 11px inherit;cursor:pointer}.auth .field{position:relative}.auth .field input[name="password"]{padding-right:58px}.password-strength{display:block;margin-top:6px;color:#77879b;font-size:11px;font-weight:400}.password-strength[data-level="3"]{color:#9a6a18}.password-strength[data-level="4"]{color:#187658}.auth-consent{margin:2px 0 14px;color:#7c8999;font-size:11px;line-height:1.6}.auth-consent a{color:#4369ba}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.contact-actions .contact-ticket{margin-top:0}.contact-actions .btn{justify-content:center;font-size:11px}.account-prelaunch{margin-top:18px}
body:has(.auth) .contact-float,body:has(.auth) .market-assistant{display:none!important}
@media(max-width:760px){.market-assistant{display:none}.contact-float{bottom:calc(14px + env(safe-area-inset-bottom))}.contact-float-panel{bottom:70px}.portal-main{padding-bottom:104px}.contact-actions{grid-template-columns:1fr}.ip-load-more-wrap .btn{width:100%}}

/* v40 conversion, education and trust pages */
.growth-hero{position:relative;overflow:hidden;min-height:360px;padding:58px;border-radius:28px;background:radial-gradient(circle at 78% 20%,rgba(91,116,255,.22),transparent 28%),linear-gradient(135deg,#10243e,#193555 62%,#27416b);color:#fff;box-shadow:0 28px 75px rgba(22,47,79,.18)}
.growth-hero:after{content:"N";position:absolute;right:28px;bottom:-115px;color:rgba(255,255,255,.035);font-size:310px;font-weight:800;line-height:1}.growth-hero>*{position:relative;z-index:1}.growth-hero .eyebrow{color:#8eace9}.growth-hero h1{max-width:760px;margin:20px 0 16px;font-size:clamp(38px,5vw,62px);line-height:1.15;letter-spacing:-2.5px}.growth-hero>p{max-width:680px;color:#b8c9dd;font-size:15px;line-height:1.9}.growth-hero .actions{margin-top:30px}.growth-hero .btn:not(.primary){border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}
.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}.solution-card{position:relative;padding:30px;border:1px solid #dfe7f2;border-radius:20px;background:#fff;box-shadow:0 14px 38px rgba(30,52,85,.06)}.solution-card>span,.decision-grid article>span{color:#5578cb;font-size:11px;font-weight:800;letter-spacing:1.3px}.solution-card h2{margin:15px 0 9px;color:#193956;font-size:21px}.solution-card>p{min-height:48px;color:#708198;font-size:13px;line-height:1.75}.solution-card dl{display:grid;gap:13px;margin:22px 0;padding-top:18px;border-top:1px solid #e8edf4}.solution-card dl div{display:grid;gap:4px}.solution-card dt{color:#8996a8;font-size:10px}.solution-card dd{margin:0;color:#3d536d;font-size:12px;line-height:1.6}.solution-card>a{color:#3766ca;font-size:12px;font-weight:700;text-decoration:none}.growth-cta,.status-support{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:24px;padding:30px 34px}.growth-cta h2,.status-support h2{margin:8px 0}.growth-cta p,.status-support p{margin:0;color:#71839a}
.growth-head{padding-bottom:26px}.comparison-panel{padding:0;overflow:hidden}.product-compare{min-width:820px}.product-compare th{padding:17px 20px;background:#f5f8fc}.product-compare td{padding:18px 20px}.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}.decision-grid article{padding:28px;border:1px solid #dfe7f2;border-radius:18px;background:linear-gradient(145deg,#fff,#f8faff)}.decision-grid h2{margin:14px 0 9px;color:#213f5d;font-size:20px}.decision-grid p{min-height:62px;color:#718298;font-size:13px;line-height:1.7}.compare-notice{border-left:4px solid #5578d1}
.diagnostic-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;margin:20px 0}.diagnostic-console{overflow:hidden;min-height:380px;border:1px solid #294967;border-radius:22px;background:#10243b;box-shadow:0 22px 60px rgba(15,36,59,.18);color:#dbe8f6}.diagnostic-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.diagnostic-head>div{display:flex;align-items:center;gap:10px}.diagnostic-dot{width:9px;height:9px;border-radius:50%;background:#56d59e;box-shadow:0 0 0 6px rgba(86,213,158,.09)}.diagnostic-results{display:grid;padding:20px 24px}.diagnostic-results>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08)}.diagnostic-results span{color:#91a7bf;font-size:12px}.diagnostic-results strong{max-width:65%;overflow-wrap:anywhere;text-align:right;color:#edf6ff;font:600 13px ui-monospace,SFMono-Regular,Consolas,monospace}.diagnostic-results small{margin-top:18px;color:#738aa2}.diagnostic-results>p{color:#9eb2c7}.diagnostic-layout aside ul{padding-left:20px;color:#667b94;line-height:1.9}
.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}.status-grid article{padding:27px;border:1px solid #dfe7f1;border-radius:18px;background:#fff}.status-grid article>div{display:flex;align-items:center;gap:8px;color:#72839a;font-size:11px}.status-light{width:8px;height:8px;border-radius:50%;background:#df9a4b}.status-light.online{background:#36ae7b;box-shadow:0 0 0 5px rgba(54,174,123,.1)}.status-light.pending{box-shadow:0 0 0 5px rgba(223,154,75,.1)}.status-grid h2{margin:16px 0 8px;color:#213f5c;font-size:19px}.status-grid p{margin:0;color:#718298;font-size:12px;line-height:1.75}
.trust-hero{min-height:300px}.trust-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0}.trust-grid article{padding:28px;border:1px solid #dfe7f1;border-radius:18px;background:#fff}.trust-grid h2{margin:0 0 12px;color:#213f5c;font-size:18px}.trust-grid p{margin:0;color:#697d95;font-size:12px;line-height:1.8;white-space:pre-wrap}.trust-no-list{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 24px}.trust-no-list span{padding:8px 12px;border-radius:999px;background:#f0f4fa;color:#4e637d;font-size:11px}
.home-decision-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:24px}.home-decision-grid a{display:grid;gap:7px;padding:22px;border:1px solid #dfe7f1;border-radius:16px;background:#fff;color:inherit;text-decoration:none;transition:.2s ease}.home-decision-grid a:hover{transform:translateY(-3px);border-color:#b9caec;box-shadow:0 16px 35px rgba(34,61,101,.09)}.home-decision-grid span{color:#5476ca;font-size:10px;font-weight:800}.home-decision-grid strong{color:#203f5d;font-size:16px}.home-decision-grid small{color:#78899e;font-size:11px;line-height:1.6}
.portal-footer a{color:inherit}.portal-footer .portal-disclosure a{color:#4668ad;text-decoration:none}
@media(max-width:980px){.solution-grid,.status-grid{grid-template-columns:repeat(2,1fr)}.home-decision-grid{grid-template-columns:repeat(2,1fr)}.diagnostic-layout{grid-template-columns:1fr}}
@media(max-width:680px){.growth-hero{min-height:auto;padding:36px 24px;border-radius:20px}.growth-hero h1{font-size:36px;letter-spacing:-1.5px}.solution-grid,.decision-grid,.status-grid,.trust-grid,.home-decision-grid{grid-template-columns:1fr}.growth-cta,.status-support{align-items:flex-start;flex-direction:column;padding:25px}.solution-card>p,.decision-grid p{min-height:0}.diagnostic-head{align-items:flex-start;flex-direction:column}.diagnostic-head .btn{width:100%;justify-content:center}.portal-header nav{scroll-snap-type:x proximity}.portal-header nav a{scroll-snap-align:start;white-space:nowrap}}

/* v36 homepage market intelligence workspace */
.home-market-advisor{position:relative;overflow:hidden;display:grid;grid-template-columns:.92fr 1.08fr;gap:44px;margin-top:30px;padding:42px;border:1px solid #dbe4f1;border-radius:26px;background:radial-gradient(circle at 8% 90%,rgba(82,107,222,.22),transparent 31%),linear-gradient(135deg,#132b49,#172f50 58%,#213963);box-shadow:0 24px 65px rgba(19,43,73,.15);color:#fff}
.home-market-advisor:after{content:"AI";position:absolute;right:-22px;top:-68px;color:rgba(255,255,255,.035);font-size:220px;font-weight:800;line-height:1;pointer-events:none}.home-market-advisor>*{position:relative;z-index:1}
.home-advisor-copy{align-self:center}.home-advisor-copy .eyebrow{color:#91b4ef}.home-advisor-copy h2{margin:17px 0 15px;font-size:clamp(28px,3vw,40px);line-height:1.3;letter-spacing:-1px}.home-advisor-copy>p{max-width:520px;color:#aabdd7;font-size:14px;line-height:1.9}
.home-advisor-steps{display:flex;gap:24px;margin-top:28px}.home-advisor-steps div{display:grid;gap:4px}.home-advisor-steps b{color:#8faef0;font-size:11px}.home-advisor-steps span{color:#d5dfed;font-size:12px}.home-ai-ready{display:flex;align-items:center;gap:11px;margin-top:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#9fb1c9;font-size:11px;line-height:1.55}.home-ai-ready i{width:8px;height:8px;border-radius:50%;background:#66d7ae;box-shadow:0 0 0 5px rgba(102,215,174,.1)}.home-ai-ready strong{display:block;color:#d6e2ef;font-size:12px}
.home-advisor-workspace{min-width:0;padding:25px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 22px 55px rgba(5,20,39,.25);color:#2a425f}.home-advisor-form{display:grid;gap:17px}.home-advisor-form label{display:grid;gap:7px;color:#667a94;font-size:11px}.home-product-query textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:88px;padding:13px 14px;border:1px solid #d8e2ef;border-radius:12px;background:#f8fafe;color:#263f5d;font:13px/1.65 inherit;outline:0}.home-product-query textarea:focus,.home-advisor-form select:focus{border-color:#7998e3;box-shadow:0 0 0 3px rgba(77,112,211,.1)}.home-advisor-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.home-advisor-form select{width:100%;min-height:42px;padding:0 10px;border:1px solid #d8e2ef;border-radius:10px;background:#fff;color:#2b435f;font:12px inherit}.home-advisor-form>.btn{width:100%;justify-content:center}.home-advisor-form>small{color:#8a98aa;text-align:center;font-size:9px}.home-advisor-result .market-result-list{grid-template-columns:1fr}.home-advisor-result .market-result-list article{padding:11px}.market-error{padding:24px;border-radius:12px;background:#fff5f5;color:#a84d5c;text-align:center;font-size:12px}
@media(max-width:920px){.home-market-advisor{grid-template-columns:1fr;gap:28px;padding:32px}.home-advisor-copy>p{max-width:none}}
@media(max-width:560px){.home-market-advisor{margin-top:20px;padding:24px 18px;border-radius:20px}.home-advisor-fields{grid-template-columns:1fr}.home-advisor-steps{justify-content:space-between;gap:10px}.home-advisor-workspace{padding:19px}.home-advisor-copy h2{font-size:28px}}

/* v37 open static IP checkout */
.ip-sales-open{display:inline-flex;align-items:center;gap:7px;margin-top:16px;padding:7px 11px;border:1px solid rgba(36,132,95,.18);border-radius:999px;background:#eaf8f2;color:#23775b;font-size:11px;font-weight:700}.ip-sales-open:before{content:"";width:7px;height:7px;border-radius:50%;background:#35aa7a;box-shadow:0 0 0 4px rgba(53,170,122,.1)}
.admin-order-divider{margin:38px 0 15px;padding-top:30px;border-top:1px solid #dfe7f0}.admin-order-divider h2{margin:9px 0 5px;color:#203d5b}.admin-order-divider p{color:#71849c;font-size:13px}
.growth-hero h1{color:#fff}

/* v41 clearer customer journey and page hierarchy */
.portal-context{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:-12px 0 24px;padding:15px 18px;border:1px solid #dfe7f2;border-radius:14px;background:#f7f9fd;color:#64768d;font-size:12px}
.portal-context>div:first-child{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.portal-context a{color:#4268b7;text-decoration:none;font-weight:700}.portal-context strong{color:#243d5a}.portal-context p{flex-basis:100%;margin:1px 0 0;color:#7a899b}.portal-context-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.portal-context-actions a{padding:8px 11px;border-radius:9px}.portal-context-actions .context-next{background:#315fcc;color:#fff;box-shadow:0 7px 18px rgba(49,95,204,.16)}
.portal-shortcuts-menu .drawer-group{display:block;margin:15px 8px 6px;padding-top:12px;border-top:1px solid #e7edf5;color:#8592a4;font-size:10px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase}.portal-shortcuts-menu .drawer-group:first-of-type{margin-top:5px;border-top:0;padding-top:0}
.home-choice{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:34px;align-items:center;margin:0 0 24px;padding:28px 30px;border:1px solid #dfe7f1;border-radius:18px;background:linear-gradient(135deg,#fff,#f6f8fc)}.home-choice h2{margin:7px 0 8px;color:#1b3553;font-size:26px}.home-choice p{margin:0;color:#6d7e93}.home-choice-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-choice-actions a{display:grid;gap:5px;min-height:82px;padding:16px;border:1px solid #dce5f2;border-radius:13px;background:#fff;color:inherit;text-decoration:none;transition:.2s ease}.home-choice-actions a:hover{transform:translateY(-2px);border-color:#b8c9e8;box-shadow:0 12px 26px rgba(33,62,101,.08)}.home-choice-actions strong{color:#274667;font-size:14px}.home-choice-actions span{color:#7a899c;font-size:11px;line-height:1.55}
.portal-hero .hero-copy .hero-link{display:inline-flex;align-items:center;min-height:42px;padding:10px 15px;border:1px solid #d7e1ef;border-radius:9px;background:rgba(255,255,255,.84);color:#2b518f;text-decoration:none;font-weight:700}.portal-hero .hero-copy .hero-link:hover{border-color:#aabfe1;background:#fff;color:#214c9d}
.hub-services>.panel:before{height:118px;margin-bottom:20px;background-color:#eef3fa}.hub-services .panel{min-height:0}.hub-services .panel h2{margin-top:13px}.hub-services .panel>p:first-of-type{min-height:52px}.hub-services .panel>p:last-child{margin-bottom:0}
.portal-page-head,.growth-head{padding-top:18px}.course-hero,.ip-market-hero,.growth-hero{margin-top:0}.portal-context+.course-hero,.portal-context+.ip-market-hero,.portal-context+.growth-hero{margin-top:0}
@media(max-width:920px){.home-choice{grid-template-columns:1fr}.home-choice-actions{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.portal-context{align-items:flex-start;flex-direction:column;margin-top:-4px}.portal-context-actions{width:100%}.portal-context-actions a{flex:1;text-align:center}.home-choice{padding:23px 20px}.home-choice-actions{grid-template-columns:1fr}.home-choice-actions a{min-height:0}.hub-services>.panel:before{height:104px}.portal-header .portal-header-actions>.link{display:none}}

/* ============================================================
 * NEXUS · polish-v51.css — 全站视觉美化与可访问性强化
 *
 * 设计原则：
 *  · 仅追加 / 覆盖既有变量，不破坏 .style.css / polish-v32 的布局
 *  · 强化视觉层级、动效节奏、可点击反馈
 *  · 通过 prefers-reduced-motion 关闭所有动效，尊重用户系统设置
 *  · 提升颜色对比度，向 WCAG AA 看齐
 *  · 全部使用 transform / opacity 做动画，避免触发布局回流
 * ============================================================ */

:root {
  --nx-blue: #245ad9;
  --nx-blue-deep: #1949ba;
  --nx-blue-soft: #edf3ff;
  --nx-ink: #182b45;
  --nx-ink-soft: #5d6f88;
  --nx-line: #dfe7f0;
  --nx-line-soft: #eef2f7;
  --nx-success: #2f9276;
  --nx-warn: #b87a14;
  --nx-danger: #c64a63;
  --nx-shadow-1: 0 1px 2px #0f264318, 0 2px 6px #0f26430a;
  --nx-shadow-2: 0 4px 12px #0f264318, 0 12px 28px #0f264314;
  --nx-shadow-3: 0 10px 28px #0f26431f, 0 24px 60px #0f264326;
  --nx-radius: 14px;
  --nx-radius-sm: 9px;
  --nx-ease: cubic-bezier(.2,.7,.2,1);
  --nx-dur: 180ms;
}

/* —— 全局 · 字体 / 背景 / 滚动 ————————————————————————— */
html { scroll-behavior: smooth; }
body {
  background:
    radial-gradient(ellipse 80% 60% at 20% -10%, #edf3ff 0%, transparent 60%),
    radial-gradient(ellipse 70% 50% at 95% 110%, #e6efff 0%, transparent 55%),
    linear-gradient(180deg, #f5f8fc 0%, #eef3f9 100%);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "tnum" 1, "ss01" 1;
}
::selection { background: #c5d8ff; color: #142a4d; }

/* —— 跳过导航（可访问性） ————————————————————————— */
.nx-skip {
  position: absolute;
  top: -100px;
  left: 16px;
  background: #182b45;
  color: #fff;
  padding: 10px 16px;
  border-radius: 0 0 var(--nx-radius-sm) var(--nx-radius-sm);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  z-index: 9999;
  transition: top var(--nx-dur) var(--nx-ease);
}
.nx-skip:focus { top: 0; }

/* —— 顶部品牌骨架屏（替换纯文本 initial loader） ————————————— */
.initial {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background:
    radial-gradient(ellipse 70% 50% at 50% 30%, #edf3ff 0%, transparent 65%),
    linear-gradient(180deg, #f5f8fc 0%, #eef3f9 100%);
  padding: 0;
}
.initial::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 30%, #c5d8ff38 0%, transparent 35%),
    radial-gradient(circle at 80% 70%, #d6e3ff1a 0%, transparent 40%);
  pointer-events: none;
}
.initial > * { position: relative; z-index: 1; }

.nx-skeleton {
  display: grid;
  place-items: center;
  gap: 18px;
  text-align: center;
  font-family: inherit;
}
.nx-skeleton .nx-mark {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: linear-gradient(145deg, #416fde, #254ea5);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -1px;
  box-shadow:
    inset 0 1px 0 #ffffff30,
    0 8px 24px #1c376524;
  animation: nxFloat 3.2s ease-in-out infinite;
}
.nx-skeleton .nx-title {
  font-size: 17px;
  font-weight: 600;
  color: #182b45;
  letter-spacing: 0.2px;
}
.nx-skeleton .nx-sub {
  font-size: 13px;
  color: #6b7d92;
  margin-top: -4px;
}
.nx-skeleton .nx-bar {
  width: 220px;
  height: 4px;
  border-radius: 4px;
  background: #e3eaf3;
  overflow: hidden;
  position: relative;
}
.nx-skeleton .nx-bar::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, #4f7af1, transparent);
  animation: nxShimmer 1.6s linear infinite;
}
@keyframes nxFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
@keyframes nxShimmer {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* —— 按钮 · 微交互 ————————————————————————— */
.btn {
  transition:
    background var(--nx-dur) var(--nx-ease),
    border-color var(--nx-dur) var(--nx-ease),
    box-shadow var(--nx-dur) var(--nx-ease),
    transform var(--nx-dur) var(--nx-ease),
    color var(--nx-dur) var(--nx-ease);
  position: relative;
}
.btn:hover {
  transform: translateY(-1px);
}
.btn:active {
  transform: translateY(0);
}
.btn.primary::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, #ffffff18, transparent 50%);
  pointer-events: none;
}

/* —— 卡片 · 阴影 / 悬停 ————————————————————————— */
.panel,
.stat,
.plan,
.account-metrics > a,
.account-profile,
.sub-card,
.manual-code-grid article {
  transition:
    border-color var(--nx-dur) var(--nx-ease),
    box-shadow var(--nx-dur) var(--nx-ease),
    transform var(--nx-dur) var(--nx-ease);
}
.panel:hover,
.stat:hover,
.account-metrics > a:hover,
.sub-card:hover {
  box-shadow: var(--nx-shadow-2);
  border-color: #cbd6e3;
}
.account-metrics > a:hover,
.sub-card:hover {
  transform: translateY(-2px);
}

/* —— 表格 · 行悬停更细腻 ————————————————————————— */
table tbody tr {
  transition: background-color var(--nx-dur) var(--nx-ease);
}

/* —— 表单 · 焦点指示更柔和 ————————————————————————— */
input, select, textarea {
  transition:
    border-color var(--nx-dur) var(--nx-ease),
    box-shadow var(--nx-dur) var(--nx-ease),
    background-color var(--nx-dur) var(--nx-ease);
}
input:hover:not(:focus):not(:read-only),
select:hover:not(:focus),
textarea:hover:not(:focus) {
  border-color: #b9c6d9;
}

/* —— 模态 · 入场动画 ————————————————————————— */
dialog {
  animation: nxModalIn 220ms var(--nx-ease);
}
@keyframes nxModalIn {
  from { opacity: 0; transform: translateY(8px) scale(.98); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
dialog[open]::backdrop {
  animation: nxBackdropIn 200ms var(--nx-ease);
}
@keyframes nxBackdropIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* —— Toast · 更柔和的进入 ————————————————————————— */
#toast.show {
  animation: nxToastIn 240ms var(--nx-ease);
}
@keyframes nxToastIn {
  from { opacity: 0; transform: translateX(-50%) translateY(12px); }
  to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* —— 侧边栏 · 活动链接指示 ————————————————————————— */
.nav-link {
  position: relative;
  transition:
    background-color var(--nx-dur) var(--nx-ease),
    color var(--nx-dur) var(--nx-ease),
    padding-left var(--nx-dur) var(--nx-ease);
}
.nav-link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: transparent;
  border-radius: 0 3px 3px 0;
  transition: background-color var(--nx-dur) var(--nx-ease);
}
.nav-link:hover {
  padding-left: 18px;
}
.nav-link.active::before {
  background: #ffffff80;
}

/* —— 状态徽章 · 颜色更饱和 / 边框更细 ————————————————————————— */
.status {
  font-weight: 600;
  letter-spacing: 0.2px;
}
.status.good { color: var(--nx-success); }
.status.warn { color: var(--nx-warn); }
.status.bad  { color: var(--nx-danger); }

/* —— 链接 · 微动效 ————————————————————————— */
.link {
  position: relative;
  transition: color var(--nx-dur) var(--nx-ease);
}
.link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--nx-dur) var(--nx-ease);
}
.link:hover::after {
  transform: scaleX(1);
}

/* —— 顶部头部 · 玻璃感 ————————————————————————— */
.topbar,
.workspace-header,
.portal-header {
  backdrop-filter: saturate(140%) blur(10px);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
}
.workspace-header {
  background:
    linear-gradient(180deg, #142841, #102036) !important;
}

/* —— Banner · 提升阅读节奏 ————————————————————————— */
.banner {
  line-height: 1.7 !important;
  position: relative;
  overflow: hidden;
}
.banner::before {
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: var(--nx-blue);
  opacity: 0.5;
}

/* —— 进度条 · 平滑过渡 ————————————————————————— */
.progress div {
  transition: width 360ms var(--nx-ease);
}

/* —— Portal Hero · 背景层次更丰富 ————————————————————————— */
.portal-hero {
  position: relative;
  overflow: hidden;
}
.portal-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 100%, #ffffff10, transparent 50%),
    radial-gradient(circle at 90% 0%, #ffffff10, transparent 45%);
  pointer-events: none;
}

/* —— 统计卡片 · 数字字体特性 ————————————————————————— */
.stat-value {
  font-feature-settings: "tnum" 1;
  letter-spacing: -0.5px;
}

/* —— 滚动条 · 干净 ————————————————————————— */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb {
  background: #cfd8e4;
  border-radius: 6px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover { background: #a9b8cb; background-clip: padding-box; border: 2px solid transparent; }
::-webkit-scrollbar-track { background: transparent; }

/* —— 可访问性 · 焦点可见性强化 ————————————————————————— */
:focus-visible {
  outline: 3px solid #8fb1ff;
  outline-offset: 2px;
  border-radius: 4px;
}

/* —— 减弱动效 · 尊重用户偏好 ————————————————————————— */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}

/* —— 暗色模式 · 自动跟随系统 ————————————————————————— */
@media (prefers-color-scheme: dark) {
  body {
    background:
      radial-gradient(ellipse 80% 60% at 20% -10%, #1a2742 0%, transparent 60%),
      radial-gradient(ellipse 70% 50% at 95% 110%, #1d2944 0%, transparent 55%),
      linear-gradient(180deg, #0e1626 0%, #0a111e 100%);
    color: #e7ecf4;
  }
  .panel,
  .stat,
  .plan,
  .account-profile,
  .sub-card,
  .account-metrics > a {
    background: #152038 !important;
    border-color: #243350 !important;
    color: #e7ecf4;
  }
  .topbar,
  .portal-header {
    background: #0f1a2d !important;
    border-color: #243350 !important;
  }
  th {
    background: #18243c !important;
    color: #a9b8d0 !important;
  }
  td { color: #d4dceb; border-color: #1f2c44; }
  .subtitle,
  .muted,
  .cell-secondary { color: #93a3bd; }
  .status.good { background: #143d2e; color: #6ccaa3; }
  .status.warn { background: #3e2f12; color: #e7b25e; }
  .status.bad  { background: #3e1820; color: #f08fa0; }
  .search,
  .filter,
  input, select, textarea {
    background: #1a2540 !important;
    border-color: #2b395a !important;
    color: #e7ecf4 !important;
  }
  .banner {
    background: #18243c !important;
    border-color: #2b3a5d !important;
    color: #c8d4e8;
  }
  .initial {
    background:
      radial-gradient(ellipse 70% 50% at 50% 30%, #1c2842 0%, transparent 65%),
      linear-gradient(180deg, #0e1626 0%, #0a111e 100%);
  }
  .nx-skeleton .nx-title { color: #e7ecf4; }
  .nx-skeleton .nx-sub { color: #93a3bd; }
}

/* —— 打印样式 ————————————————————————— */
@media print {
  .sidebar,
  .topbar,
  .workspace-header,
  .portal-header,
  #toast,
  .actions,
  .btn {
    display: none !important;
  }
  body { background: white; color: black; }
}

/* —— 高对比度模式 · 系统偏好 ————————————————————————— */
@media (prefers-contrast: more) {
  :root {
    --nx-line: #9eafc8;
    --nx-ink-soft: #3a4a62;
  }
  .btn { border-width: 2px; }
  .nav-link.active { box-shadow: inset 0 0 0 2px #ffffff30; }
}
/* ============================================================
 * NEXUS · polish-v52.css — 动效 v2：路由淑入 / Stagger 渐入 / Count-up /
 *                          Chart 曲线 / Spring / Toast 进度条 / Shake
 *
 * 设计原则：
 *  · 与 v51 完全兼容，仅追加、不覆盖现有规则
 *  · 所有动效尊重 prefers-reduced-motion
 *  · 使用 GPU 加速属性 (translate / opacity)
 *  · 通过 .is-loaded 类暂停部分装饰动效，避免干扰交互
 * ============================================================ */

/* —— 物理曲线 · Spring 微回弹 ————————————————————————— */
:root {
  --nx-ease-spring: cubic-bezier(.34, 1.36, .64, 1);
  --nx-ease-smooth: cubic-bezier(.22, .8, .36, 1);
}

/* —— 路由淑入 · 进入或路由变化时的主区域动画 ——————————————— */
.app-shell,
.portal {
  animation: nxRouteEnter 420ms var(--nx-ease-smooth);
}
@keyframes nxRouteEnter {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* 路由切换时短暂的重置（不遮挡下方） */
.app-shell.is-route-switching,
.portal.is-route-switching {
  opacity: 0;
  transition: opacity 140ms linear;
}

/* —— 列表项 Stagger 渐入 ——————————————————————————— */
/* JS 会给每个 item 设置 style="--i:N" */
tbody tr,
.plan-grid > .plan,
.account-metrics > a,
.sub-grid > .panel,
.business-scenarios > article,
.manual-code-grid > article,
.live-client-grid > article,
.panel-body > .node-row,
.account-card,
.section-card {
  --nx-stagger-i: 0;
  --nx-stagger-step: 35ms;
  --nx-stagger-dur: 380ms;
  animation: nxItemIn var(--nx-stagger-dur) var(--nx-ease-smooth) both;
  animation-delay: calc(var(--nx-stagger-i, 0) * var(--nx-stagger-step));
  transform-origin: top center;
}
@keyframes nxItemIn {
  from { opacity: 0; transform: translateY(6px) scale(.985); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* 大块（顶部 stat 卡片 / Hero / 表格容器）单独节奏 */
.stats > .stat,
.panels > .panel,
.clarity-grid > .clarity,
.panel {
  --nx-stagger-i: 0;
  --nx-stagger-step: 60ms;
  animation: nxBlockIn 460ms var(--nx-ease-smooth) both;
  animation-delay: calc(var(--nx-stagger-i, 0) * var(--nx-stagger-step));
}
@keyframes nxBlockIn {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* —— 数字滚动 · count-up ————————————————————————————— */
/* JS 设置 style="--count-from:0; --count-to:NNNN; --count-decimals:0"
   CSS 用 @property 注册无类型数字才能动画自定义属性 */
@property --nx-count {
  syntax: "<number>";
  initial-value: 0;
  inherits: false;
}
.stat-value[data-count] {
  --nx-count-from: var(--count-from, 0);
  --nx-count-to: var(--count-to, 0);
  --nx-count: var(--nx-count-from);
  --count-dur: 1100ms;
  /* counter() 渲染为可见整数部分 */
  --show: counter(--nx-count);
  /* 通过 counter() + content 渲染数字 */
  counter-reset: nx var(--nx-count-from);
  animation: nxCountUp var(--count-dur) var(--nx-ease-smooth) forwards,
             nxCountStep calc(var(--count-dur) / max(1, var(--nx-count-to))) linear forwards;
}
@keyframes nxCountUp {
  to { --nx-count: var(--nx-count-to); }
}
/* 纯 CSS 计数器无法随小数或货币符号 —— 用 ::after 渲染；JS 会接管最终值 */

/* —— SVG 折线图 绘入 ———————————————————————————————— */
.chart .chart-line {
  stroke-dasharray: var(--chart-len, 600);
  stroke-dashoffset: var(--chart-len, 600);
  animation: nxChartDraw 1400ms var(--nx-ease-smooth) 220ms forwards;
}
.chart .chart-area {
  opacity: 0;
  animation: nxChartFade 600ms var(--nx-ease-smooth) 1100ms forwards;
}
.chart .chart-dot {
  opacity: 0;
  transform-origin: center;
  animation: nxChartDot 380ms var(--nx-ease-spring) forwards;
  animation-delay: calc(1200ms + var(--i, 0) * 50ms);
}
@keyframes nxChartDraw { to { stroke-dashoffset: 0; } }
@keyframes nxChartFade { to { opacity: 1; } }
@keyframes nxChartDot { from { opacity: 0; transform: scale(.4); } to { opacity: 1; transform: scale(1); } }

/* —— Toast 进度条 ————————————————————————————————— */
#toast {
  overflow: hidden;
}
#toast.show::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 3px;
  width: 100%;
  background: linear-gradient(90deg, #fff0, #ffffffa8, #fff0);
  transform-origin: left center;
  animation: nxToastBar 3200ms linear forwards;
}
@keyframes nxToastBar {
  from { transform: scaleX(1); }
  to   { transform: scaleX(0); }
}

/* —— 状态徽章颜色平滑 ————————————————————————————— */
.status {
  transition: background-color 360ms var(--nx-ease-smooth),
              color 360ms var(--nx-ease-smooth),
              border-color 360ms var(--nx-ease-smooth);
}

/* —— 表单错误抖动 ————————————————————————————————— */
.field input[aria-invalid="true"],
.field select[aria-invalid="true"],
.field textarea[aria-invalid="true"] {
  animation: nxShake 380ms var(--nx-ease-smooth);
  border-color: var(--nx-danger, #c64a63);
}
@keyframes nxShake {
  0%, 100% { transform: translateX(0); }
  20%      { transform: translateX(-6px); }
  40%      { transform: translateX(6px); }
  60%      { transform: translateX(-4px); }
  80%      { transform: translateX(4px); }
}

/* —— 通知到来呼吸 ————————————————————————————————— */
.has-unread::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle, rgba(220, 80, 100, .35), transparent 65%);
  animation: nxPulse 1.6s ease-in-out 2;
  pointer-events: none;
}
@keyframes nxPulse {
  0%, 100% { opacity: 0; transform: scale(.8); }
  50%      { opacity: 1; transform: scale(1.25); }
}

/* —— 按钮点击反馈更「弹」 ——————————————————————————— */
.btn {
  transition: background var(--nx-dur, 180ms) var(--nx-ease-smooth),
              border-color var(--nx-dur, 180ms) var(--nx-ease-smooth),
              box-shadow var(--nx-dur, 180ms) var(--nx-ease-smooth),
              transform var(--nx-dur, 180ms) var(--nx-ease-spring),
              color var(--nx-dur, 180ms) var(--nx-ease-smooth);
}
.btn.primary:active {
  transform: translateY(1px) scale(.98);
}

/* —— 卡片悬停 spring 上浮 ——————————————————————————— */
.panel,
.stat,
.plan,
.account-metrics > a,
.sub-card {
  transition: border-color var(--nx-dur, 180ms) var(--nx-ease-smooth),
              box-shadow var(--nx-dur, 180ms) var(--nx-ease-smooth),
              transform var(--nx-dur, 220ms) var(--nx-ease-spring);
}
.panel:hover,
.stat:hover {
  transform: translateY(-2px);
}

/* —— 模态入场更柔和 ————————————————————————————————— */
dialog {
  animation: nxModalIn2 260ms var(--nx-ease-spring);
}
@keyframes nxModalIn2 {
  from { opacity: 0; transform: translateY(10px) scale(.96); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* —— Tab/链接下划线更弹 ——————————————————————————— */
.link::after {
  transition: transform var(--nx-dur, 220ms) var(--nx-ease-spring);
}

/* —— 搜索框 / Select 聚焦 ring 淑入 ——————————————————— */
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  animation: nxFocusRing 240ms var(--nx-ease-spring);
}
@keyframes nxFocusRing {
  from { box-shadow: 0 0 0 0 #245ad9aa; }
  to   { box-shadow: 0 0 0 3px #245ad910; }
}

/* —— Skeleton 加载条变种 ——————————————————————————— */
.nx-skel-row {
  background: linear-gradient(90deg, #e3eaf3 0%, #f3f7fc 50%, #e3eaf3 100%);
  background-size: 200% 100%;
  animation: nxSkel 1.4s linear infinite;
  border-radius: 6px;
  height: 14px;
  margin-bottom: 10px;
}
.nx-skel-row.short { width: 40%; }
.nx-skel-row.tall  { height: 60px; }
@keyframes nxSkel {
  from { background-position: 200% 0; }
  to   { background-position: -200% 0; }
}

/* —— Topbar 顶部状态增强 ——————————————————————————— */
.topbar::after,
.workspace-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(36, 90, 217, .25), transparent);
  pointer-events: none;
}

/* —— Banner 进入更柔和 ——————————————————————————— */
.banner {
  animation: nxBannerIn 420ms var(--nx-ease-smooth) both;
}
@keyframes nxBannerIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* —— 进度条平滑 ———————————————————————————————— */
.progress div {
  transition: width 600ms var(--nx-ease-smooth);
}

/* —— Chart 轴网格线淑入 ——————————————————————————— */
.chart text.area {
  animation: nxChartLabel 240ms var(--nx-ease-smooth) both;
  animation-delay: calc(60ms * var(--i, 0));
}
@keyframes nxChartLabel {
  from { opacity: 0; transform: translateY(2px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* —— 路由淑入 · 跳过详情页直接进入 dashboard 的更高阶 ————— */
.app-shell .content > .page-head {
  animation: nxPageHead 320ms var(--nx-ease-smooth);
}
@keyframes nxPageHead {
  from { opacity: 0; transform: translateX(-6px); }
  to   { opacity: 1; transform: translateX(0); }
}

/* —— 全局表单 hover 轻微颜色提示 —————————————————————— */
.field input:hover:not(:focus):not(:disabled),
.field select:hover:not(:focus) {
  border-color: #a9bcdb;
  background-color: #fbfcff;
  transition: border-color var(--nx-dur, 180ms) var(--nx-ease-smooth),
              background-color var(--nx-dur, 180ms) var(--nx-ease-smooth);
}

/* —— 减弱动效 · 全面限制 ——————————————————————————— */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    animation-delay: 0ms !important;
  }
  .app-shell, .portal { animation: none !important; }
}

/* —— 暗色模式适配（继承 v51） —————————————————————————— */
@media (prefers-color-scheme: dark) {
  .nx-skel-row {
    background: linear-gradient(90deg, #1f2c44 0%, #28395a 50%, #1f2c44 100%);
    background-size: 200% 100%;
  }
  .btn.primary:active {
    background: #1949ba;
  }
}
/* ============================================================
 * NEXUS · account-dashboard.css — 个人中心 dashboard 样式
 *
 *  · 覆盖默认 .panel/heading 但不破坏样式表其他部分
 *  · 优先 GPU 加速 / transform
 *  · 暗色模式与 prefers-reduced-motion 适配
 * ============================================================ */

/* —— Hero 个人卡 ——————————————————————————— */
.acc-hero {
  position: relative;
  overflow: hidden;
  padding: 28px 32px !important;
  margin-top: 18px !important;
  background:
    linear-gradient(135deg, #182d50 0%, #1f3b66 60%, #2a4d80 100%) !important;
  border-color: #1c2f4f !important;
  color: #e7ecf4;
  box-shadow: 0 12px 32px #0e1a2f40;
}
.acc-hero-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 100%, #2f5aa633, transparent 45%),
    radial-gradient(circle at 88% 0%, #34578550, transparent 50%);
  pointer-events: none;
}
.acc-hero-inner {
  position: relative;
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
}
.acc-avatar {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: linear-gradient(145deg, #4f7df0 0%, #2a4eb5 100%);
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -1px;
  box-shadow:
    inset 0 1px 0 #ffffff30,
    0 8px 22px #11264a50;
  flex: 0 0 auto;
  animation: nxAccAvatarFloat 4s ease-in-out infinite;
}
@keyframes nxAccAvatarFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
.acc-id { flex: 1; min-width: 240px; }
.acc-id h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.3px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.acc-tag-demo {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 6px;
  background: #ffd96b40;
  color: #fff7d1;
  letter-spacing: 0.5px;
}
.acc-id-meta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 8px;
  font-size: 13px;
  color: #d3e1f4;
}
.acc-id-meta b { color: #fff; }
.acc-id-meta .muted { color: #b8c8e0 !important; }
.acc-id-sub {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 10px;
  font-size: 12px;
  color: #9eb1cc;
}
.acc-hero-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
.acc-hero-actions .btn {
  background: rgba(255,255,255,.08);
  color: #fff;
  border-color: rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
}
.acc-hero-actions .btn:hover {
  background: rgba(255,255,255,.15);
  border-color: rgba(255,255,255,.3);
}
.acc-hero-actions .count {
  margin-left: 4px;
  background: #e55b6f;
}

/* —— 4 项统计卡 ——————————————————————————— */
.acc-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin: 18px 0;
}
.acc-stat {
  padding: 22px !important;
  position: relative;
  overflow: hidden;
  animation: nxAccStatIn 480ms var(--nx-ease-smooth) both;
  animation-delay: calc(var(--nx-stagger-i, 0) * 70ms);
  transition: transform 240ms var(--nx-ease-spring),
              box-shadow 240ms var(--nx-ease-smooth);
}
.acc-stat:hover { transform: translateY(-2px); box-shadow: 0 12px 28px #18304c12; }
.acc-stat header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.acc-stat-icon {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: linear-gradient(145deg, #e3efff, #d0e1ff);
  font-size: 16px;
}
.acc-stat-value {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.5px;
  margin-top: 8px;
  font-variant-numeric: tabular-nums;
}
.acc-stat-foot {
  font-size: 12px;
  color: #6c7e96;
  margin-top: 2px;
  margin-bottom: 12px;
}
.acc-stat-foot b.warn { color: #b87a14; }
.acc-stat .progress { margin-bottom: 8px; }
@keyframes nxAccStatIn {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* —— 两列横排：继续学习 + 售后总览 ——————————————— */
.acc-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 18px;
}
.acc-continue {
  padding: 24px !important;
  background:
    linear-gradient(135deg, #f5f8fd, #ecf2fa) !important;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
.acc-continue h3 { font-size: 18px; margin-top: 6px; }
.acc-continue p { font-size: 13px; color: #5d718e; }
.acc-continue .btn { align-self: flex-start; }

.acc-summary { padding: 22px !important; }
.acc-summary h3 { font-size: 16px; margin: 6px 0 12px; }
.acc-summary-list {
  list-style: none;
  padding: 0;
  margin: 0 0 14px;
}
.acc-summary-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #eef2f7;
  font-size: 13px;
  color: #475972;
}
.acc-summary-list li:last-child { border-bottom: 0; }
.acc-summary-list li b {
  color: #d96a4b;
  font-weight: 600;
  font-size: 14px;
}
.acc-summary-list li.muted { color: #8aa0bb; }
.acc-summary-list li.muted::before { content: "✨ "; }

/* —— 通用 section 头 ——————————————————————————— */
.acc-section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 14px;
  padding: 0;
  border-bottom: 0;
}
.acc-section-head h3 { margin: 0; font-size: 16px; }

/* —— 当前订阅 ——————————————————————————— */
.acc-subs { display: grid; gap: 10px; }
.acc-sub-row {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 2fr) auto auto;
  align-items: center;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid #e3eaf2;
  border-radius: 11px;
  background: #fafcff;
}
.acc-sub-main h4 { margin: 0 0 4px; font-size: 14px; }
.acc-sub-main small { font-size: 11px; }
.acc-sub-progress .progress { margin-bottom: 4px; }
.acc-sub-progress small { font-size: 11px; color: #6c7e96; }
.acc-sub-status { text-align: right; }
.acc-sub-status small { display: block; font-size: 11px; margin-top: 4px; color: #6c7e96; }
.acc-sub-actions { white-space: nowrap; }

/* —— 时间线 ————————————————————————————————— */
.acc-timeline {
  list-style: none;
  padding: 0;
  margin: 0;
}
.acc-timeline li {
  display: grid;
  grid-template-columns: 90px 110px 1fr auto auto;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid #eef2f7;
  font-size: 13px;
}
.acc-timeline li:last-child { border-bottom: 0; }
.acc-timeline time { font-size: 12px; }
.acc-timeline .mono { font-size: 12px; color: #6c7e96; }
.acc-timeline small.muted { color: #6c7e96; font-size: 11px; }

/* —— 工单 ———————————————————————————————— */
.acc-tickets { list-style: none; padding: 0; margin: 0; }
.acc-tickets li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid #eef2f7;
}
.acc-tickets li:last-child { border-bottom: 0; }
.acc-ticket-main strong { display: block; font-size: 14px; }
.acc-ticket-main small { font-size: 11px; }

/* —— 安全概览 ——————————————————————————— */
.acc-security { display: grid; gap: 10px; }
.acc-sec-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid #e3eaf2;
  border-radius: 10px;
  background: #fafcff;
  font-size: 13px;
  color: #475972;
}
.acc-sec-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 4px;
}

/* —— 快捷入口 ——————————————————————————— */
.acc-quicklinks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.acc-link {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px;
  border: 1px solid #e3eaf2;
  border-radius: 11px;
  background: #fafcff;
  text-decoration: none;
  color: #283e60;
  transition: all 200ms var(--nx-ease-smooth);
}
.acc-link b { font-size: 13px; font-weight: 600; }
.acc-link small { font-size: 11px; color: #6c7e96; }
.acc-link:hover {
  border-color: #9eb5d4;
  background: #edf3fd;
  color: #245ad9;
  transform: translateY(-1px);
}

/* —— 响应式 ——————————————————————————— */
@media (max-width: 1100px) {
  .acc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .acc-quicklinks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .acc-row { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .acc-stats { grid-template-columns: 1fr; }
  .acc-quicklinks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .acc-hero-inner { gap: 14px; }
  .acc-avatar { width: 56px; height: 56px; font-size: 24px; border-radius: 16px; }
  .acc-id h2 { font-size: 18px; }
  .acc-sub-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .acc-sub-status { text-align: left; }
  .acc-timeline li {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* —— 减弱动效 ——————————————————————————— */
@media (prefers-reduced-motion: reduce) {
  .acc-avatar { animation: none; }
  .acc-stat, .acc-hero { animation: none; }
}

/* —— 暗色模式 ——————————————————————————— */
@media (prefers-color-scheme: dark) {
  .acc-hero {
    background:
      linear-gradient(135deg, #0d1c34 0%, #152740 60%, #1c3454 100%) !important;
    border-color: #243a5e !important;
  }
  .acc-stat {
    background: #152038 !important;
    border-color: #243350 !important;
  }
  .acc-stat-icon {
    background: linear-gradient(145deg, #1f2c44, #2a3a5e);
  }
  .acc-stat-value { color: #e7ecf4; }
  .acc-stat-foot { color: #93a3bd; }
  .acc-continue {
    background: linear-gradient(135deg, #1a2742, #142037) !important;
  }
  .acc-continue h3 { color: #e7ecf4; }
  .acc-continue p { color: #93a3bd; }
  .acc-summary-list li { color: #a9b8d0; border-color: #243350; }
  .acc-summary-list li b { color: #ff8c5e; }
  .acc-sub-row {
    background: #1a2742;
    border-color: #243350;
  }
  .acc-sub-main h4 { color: #e7ecf4; }
  .acc-sub-main small { color: #93a3bd; }
  .acc-sub-progress small { color: #93a3bd; }
  .acc-sub-status small { color: #93a3bd; }
  .acc-timeline li { border-color: #243350; color: #c8d4e8; }
  .acc-timeline .mono { color: #93a3bd; }
  .acc-tickets li { border-color: #243350; }
  .acc-ticket-main strong { color: #e7ecf4; }
  .acc-ticket-main small { color: #93a3bd; }
  .acc-sec-item {
    background: #1a2742;
    border-color: #243350;
    color: #a9b8d0;
  }
  .acc-link {
    background: #1a2742;
    border-color: #243350;
    color: #d3e1f4;
  }
  .acc-link small { color: #93a3bd; }
  .acc-link:hover {
    background: #1f2d4a;
    border-color: #4a6090;
    color: #fff;
  }
}
/* NEXUS V71: shared visual system and responsive presentation. */
:root{--ink:#102b43;--muted:#607386;--line:#dce5ee;--bg:#f5f7fb;--surface:#fff;--primary:#245ddb;--blue:#245ddb;--nx-blue:#245ddb;--nx-blue-deep:#1848b4;--nx-blue-soft:#edf3ff;--nx-line:#dce5ee;--nx-font-body:"PingFang SC","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif;--nx-font-display:var(--nx-font-body);--nx-font-mono:ui-monospace,Consolas,monospace;--nx-paper:#fff;--nx-ink:#102b43;--nx-accent:#245ddb;color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-top:92px}body{margin:0;background:#f5f7fb;color:#102b43;font-family:var(--nx-font-body);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:#245ddb}h1,h2,h3,h4{font-family:var(--nx-font-body);color:#102b43;letter-spacing:-.025em;line-height:1.35;text-wrap:balance}h1{font-size:clamp(28px,3.7vw,48px);font-weight:750}h2{font-size:24px;font-weight:700}h3{font-size:18px}p{color:#607386;line-height:1.8}img,svg{max-width:100%}.subtitle,.cell-secondary{color:#607386}.mono,pre,code{font-family:ui-monospace,Consolas,monospace}.price,strong{font-variant-numeric:tabular-nums}.price{color:#102b43;font-family:var(--nx-font-body);font-weight:750;letter-spacing:-.04em}.price small{letter-spacing:0;font-size:13px;color:#607386;font-weight:400}
.btn{min-height:44px;padding:10px 18px;border:1px solid #dce5ee;border-radius:9px;background:#fff;color:#102b43;box-shadow:none;font-weight:600;white-space:normal;text-align:center;line-height:1.45;transition:background .15s,border-color .15s;cursor:pointer}.btn.primary{background:#245ddb!important;border-color:#245ddb!important;color:#fff!important;box-shadow:none!important}.btn.primary:hover:not(:disabled){background:#1848b4!important}.btn:hover:not(:disabled){border-color:#9cb5d5;background:#f2f6fc}.btn:disabled{cursor:not-allowed;background:#eef2f6!important;border-color:#dce5ee!important;color:#6a7b8b!important;opacity:1}.btn::after{content:none!important}.btn.danger{color:#b12735}.link{color:#245ddb}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.pill,.status{border-radius:6px;font-size:12px;line-height:1.5;padding:5px 9px}.pill{background:#f1f5fb;border:1px solid #e2eaf3;color:#47617b}.eyebrow,.ip-kicker,.plan-label{font-family:var(--nx-font-body);letter-spacing:.05em;font-size:11px;color:#607386}.eyebrow{display:none}.banner,.metric-note{border-radius:10px;box-shadow:none;line-height:1.8;overflow-wrap:anywhere}.banner{background:#f1f5fc;border:1px solid #dce5ee;color:#435b75}.panel,.clarity,.plan{background:#fff;border:1px solid #dce5ee;border-radius:14px;box-shadow:none}.panel{padding:24px}.panel h2{margin-top:0}.page-head{align-items:flex-start;gap:16px}.page-head p{max-width:68ch}.page-head h1{margin:0 0 8px}.field{font-size:14px;color:#30485e}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:46px;max-width:100%;border:1px solid #cfdbe7;border-radius:8px;color:#102b43;background:#fff;padding:10px 12px;box-shadow:none}textarea{line-height:1.75;min-height:96px}input:focus,select:focus,textarea:focus{border-color:#245ddb;outline:3px solid #dbe7ff;outline-offset:1px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #83b0ff;outline-offset:3px}.field input,.field textarea,.field select{width:100%}.check,.course-complete{min-height:44px;align-items:center}.table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%}th{background:#f3f6fa;color:#52677e;font-size:12px;white-space:nowrap}td,th{padding:15px 16px;border-bottom:1px solid #e6edf4}td{color:#30485e}tbody tr:hover{background:#fafcff}.empty{padding:36px 20px;line-height:1.8}
.portal{min-height:100dvh;background:#f5f7fb}.portal .portal-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px;padding:12px max(24px,calc((100vw - 1200px)/2));background:#fff;border-bottom:1px solid #e1e8ef;box-shadow:none;color:#102b43}.brand{color:#102b43!important;text-decoration:none;gap:10px;font-family:var(--nx-font-body);font-weight:750;font-size:21px;white-space:nowrap}.brand-mark{display:grid;place-items:center;border-radius:9px;background:#102b43!important;color:#fff!important;font-family:var(--nx-font-body);font-size:20px;width:36px;height:36px;border:0;box-shadow:none}.brand-text{display:flex;flex-direction:column;align-items:flex-start;gap:0;line-height:1.2;letter-spacing:.015em}.brand-divider{display:none}.brand-text small{font-size:10px;font-weight:500;letter-spacing:.03em;color:#6a7b8b;margin-top:4px}.portal-nav .nav-root{display:flex;gap:4px;align-items:center;margin:0;padding:0;list-style:none}.portal-nav .nav-link{color:#3f566e;padding:10px 12px;min-height:44px;font-weight:600;border-radius:8px;text-decoration:none;display:flex;align-items:center;gap:5px;background:transparent}.portal-nav .nav-link.active,.portal-nav .is-group-active>.nav-link{background:#edf3ff;color:#245ddb}.portal-nav .nav-link:hover{background:#f1f5fb}.portal-nav .nav-item{position:relative}.portal-nav .nav-dropdown{background:#fff;border:1px solid #dce5ee;border-radius:12px;box-shadow:0 12px 32px #102b4314;min-width:230px;padding:8px}.portal-nav .nav-dropdown-link{padding:11px 12px;min-height:46px;border-radius:7px;color:#30485e;display:flex;flex-direction:column;text-decoration:none}.portal-nav .nav-dropdown-link:hover{background:#f2f6fc}.nav-item-sub{color:#708294;font-size:11px}.portal-header-actions{display:flex;align-items:center;gap:12px}.portal-header-actions .link,.portal-account-link,.portal-admin-link{color:#30485e}.portal-header-actions .btn{padding:10px 16px;min-height:42px}.portal-menu-button{display:none}.portal .portal-main{width:min(1200px,calc(100% - 48px));max-width:1200px;margin:0 auto;padding:38px 0 56px;overflow:visible}.portal-main>section{margin-bottom:32px}.portal .portal-footer{width:min(1200px,calc(100% - 48px));margin:0 auto;display:flex;gap:32px;justify-content:space-between;padding:32px 0;border-top:1px solid #dce5ee;background:transparent}.portal-footer p{font-size:12px;margin:8px 0}.portal-disclosure{max-width:620px;font-size:12px;line-height:1.9;color:#708294}.portal-context-bar{border:1px solid #dce5ee;border-radius:9px;background:#fff;margin-bottom:24px;padding:14px 18px}
.portal .portal-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;padding:42px;background:#fff;border:1px solid #dce5ee;border-radius:18px;min-height:0;box-shadow:none;overflow:hidden}.portal-hero:before,.portal-hero:after,.hero-copy:before{content:none!important}.portal .hero-copy{padding:8px 0;align-self:center;position:relative;background:none}.hero-subject{font-size:12px;color:#607386;margin-bottom:22px;display:block;font-weight:600}.portal .hero-copy h1{font-size:clamp(30px,3.5vw,46px);line-height:1.42;letter-spacing:-.04em;color:#102b43;font-weight:750;margin:0 0 22px}.hero-copy>p{font-size:15px;line-height:1.9;margin:0 0 28px;max-width:40ch}.hero-copy .actions{gap:12px}.hero-footnote{font-size:12px;color:#708294;margin-top:18px}.hero-service-links{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid #e3eaf2;margin-top:26px;padding-top:18px}.hero-service-links a{font-size:12px;text-decoration:none;color:#526c85}.portal .hero-account{padding:0;border-radius:14px;border:0;box-shadow:none;overflow:hidden;background:#102b43;position:relative;align-self:center;color:#fff;min-width:0}.trade-world{display:block;aspect-ratio:2/1;width:100%;height:auto;object-fit:cover}.hero-study{padding:0 28px 26px}.hero-study .portal-mini-tag{font-size:11px;color:#99c1e5;background:transparent;padding:0;border:0}.hero-study h2{font-size:19px;color:#fff;margin:10px 0 18px;font-weight:650;line-height:1.55}.portal .hero-numbers{display:flex;gap:36px;margin:18px 0;border:0;padding:0}.hero-numbers strong{font-family:var(--nx-font-body);font-size:28px;line-height:1.3;color:#fff}.hero-numbers small{font-size:16px;font-weight:400;color:#9bb9d0}.hero-numbers span{display:block;font-size:11px;color:#b3c8dc;margin-top:6px}.hero-card-action{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid #486b89;border-radius:8px;background:#183951;color:#fff;padding:10px 13px;min-height:44px;font-size:13px;cursor:pointer}.hero-card-action:hover{background:#214864}.hub-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hub-services .panel{padding:26px}.hub-services h2{font-size:22px;margin:16px 0 10px}.hub-services p{font-size:14px;max-width:32ch}.service-symbol{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:#edf3ff;color:#245ddb;font-weight:700;font-size:18px}.hub-road-preview{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#edf3ff;border-color:#d8e4fa}.hub-road-preview h2{font-size:23px}.refresh-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.refresh-heading h2{margin:0 0 8px}.refresh-heading p{font-size:14px;margin:0;max-width:68ch}.home-account-summary{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#607386;margin-bottom:16px}.home-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.home-account-card{padding:24px;border:1px solid #dce5ee;border-radius:14px;background:#fff;display:flex;flex-direction:column;box-shadow:none}.home-account-card h3{font-size:17px;line-height:1.7;min-height:58px}.home-account-card .price{margin-top:auto;margin-bottom:16px}.home-account-card p{font-size:12px}.home-account-card .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-account-card .btn{padding:10px 8px;font-size:12px}.home-decision-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.home-decision-grid a{background:#fff;border:1px solid #dce5ee;border-radius:12px;padding:20px;color:#102b43}.home-decision-grid a>span{display:none}.refresh-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px;padding:36px;background:#fff;border:1px solid #dce5ee;border-radius:14px}.refresh-faq details{border-bottom:1px solid #e2eaf1;padding:15px 0}.refresh-faq summary{min-height:30px;cursor:pointer;color:#30485e;font-weight:600}.refresh-faq p{font-size:14px}.ip-market-hero,.growth-hero,.account-market-hero{border-radius:16px;border:1px solid #dce5ee;background:#fff;color:#102b43;box-shadow:none;padding:36px}.ip-market-hero h1,.growth-hero h1{color:#102b43}.ip-market-copy p{font-size:15px;max-width:55ch}.ip-market-hero::before,.ip-market-hero::after{opacity:.05}.ip-trust-row{font-size:12px;color:#607386;gap:18px}.ip-market-visual{background:#edf3ff;border-radius:14px}.ip-orbit{color:#245ddb}.ip-family-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ip-family-tabs button{min-width:0;min-height:76px;border-radius:10px;border:1px solid #dce5ee;background:#fff;text-align:left;padding:16px;box-shadow:none;color:#30485e}.ip-family-tabs button.active{border-color:#245ddb;background:#edf3ff}.ip-family-icon{background:#edf3ff;color:#245ddb;border-radius:8px}.ip-filter-bar{background:#fff;border:1px solid #dce5ee;border-radius:12px;padding:18px;gap:18px}.ip-search{min-width:0;flex:1}.ip-search input{width:100%}.ip-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ip-product-card{min-width:0;border:1px solid #dce5ee;border-radius:13px;padding:22px;background:#fff;box-shadow:none;transform:none}.ip-product-card:hover{transform:none;border-color:#a0b9db;box-shadow:0 6px 20px #102b4308}.ip-product-top h3{font-size:20px}.ip-country-code{background:#edf3ff;color:#245ddb;border-radius:9px}.ip-purchase-flow{border-radius:14px;background:#fff;border:1px solid #dce5ee;padding:30px}.ip-purchase-flow li span{background:#edf3ff;color:#245ddb;border-radius:8px}.ip-assurance{background:#102b43;color:#fff;border-radius:14px;padding:24px}.ip-assurance p{color:#c6d7e6}.ip-assurance .btn.primary{background:#fff!important;color:#245ddb!important;border-color:#fff!important}#account-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}#account-cards>.panel{margin:0;display:flex;flex-direction:column;padding:22px}#account-cards h2{font-size:18px;line-height:1.65;margin:18px 0}#account-cards p{font-size:13px;overflow-wrap:anywhere}#account-cards .actions{margin-top:auto;padding-top:14px;display:grid;grid-template-columns:1fr 1fr}#account-cards .price{font-size:30px}.solution-grid,.hub-task-grid{gap:20px}.solution-card,.hub-task-grid>.panel{border-radius:13px;border:1px solid #dce5ee;background:#fff;box-shadow:none}.course-layout,.trade-course-layout{min-width:0}.course-block{padding:24px;border-radius:12px;background:#fff;border:1px solid #dce5ee}.course-block p,.course-block li{max-width:72ch;line-height:1.9}.course-sidebar,.course-nav{border-radius:12px;border-color:#dce5ee}.course-sidebar button,.course-nav button{min-height:44px}.course-hero{border-radius:14px}.auth{min-height:100dvh;background:#fff}.auth .auth-art{background:#102b43;padding:48px;color:#fff}.auth-art h1{color:#fff;font-family:var(--nx-font-body);font-size:40px;line-height:1.5}.auth-art p{color:#b7cddd}.auth-art .brand{color:#fff!important}.auth-art .brand-mark{background:#245ddb!important}.auth-art .plan-label{color:#9bb9d0}.auth-form{background:#fff;padding:40px}.auth-inner{max-width:420px}.auth-inner h1{font-size:30px}.auth-inner input{font-size:16px}.auth-inner .btn{width:100%}.auth-inner .auth-note{font-size:12px}.sidebar{background:#102b43;color:#c6d7e6}.sidebar .brand{color:#fff!important}.main{background:#f5f7fb}.main .content{max-width:1440px}.metric-card,.stat-card{border-radius:12px;border:1px solid #dce5ee;box-shadow:none}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
dialog#modal{width:min(640px,calc(100% - 32px));max-width:640px;max-height:calc(100dvh - 40px);padding:0;border:1px solid #dce5ee;border-radius:16px;background:#fff;box-shadow:0 24px 80px #102b432b;overflow:auto;color:#102b43}dialog#modal::backdrop{background:#102b4377;backdrop-filter:blur(3px)}.modal-head,.modal-body,.modal-foot{padding:22px 26px}.modal-head{position:sticky;top:0;background:#fff;z-index:2;border-bottom:1px solid #e2eaf1}.modal-head h2{font-size:20px}.modal-head button{min-width:44px;min-height:44px;border-radius:8px}.modal-foot{position:sticky;bottom:0;background:#fff;border-top:1px solid #e2eaf1;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.qrcode-box{display:grid;place-items:center;width:232px;height:232px;max-width:100%;margin:20px auto;padding:16px;border:1px solid #dce5ee;border-radius:12px;background:#fff}.qrcode-box img{width:200px;height:200px;max-width:100%}.pay-channel-tabs{display:flex;gap:10px;flex-wrap:wrap}.pay-channel-tabs button{min-height:44px;padding:9px 18px;border:1px solid #dce5ee;border-radius:8px;background:#fff;color:#102b43}.pay-channel-tabs button.active{background:#edf3ff;border-color:#245ddb;color:#245ddb}.contact-float-trigger,.market-bot-trigger{background:#245ddb!important;color:#fff!important;box-shadow:0 4px 16px #102b431a!important}.contact-float{right:16px}.market-assistant{right:16px}.contact-float-panel,.market-bot-panel{border:1px solid #dce5ee;background:#fff;border-radius:14px;box-shadow:0 18px 48px #102b4326}.contact-float-panel header,.market-bot-panel header{background:#102b43}.market-home-assistant{border-radius:14px;border:1px solid #dce5ee;background:#fff;box-shadow:none}.market-home-assistant h2{color:#102b43}.market-home-assistant .home-assistant-grid{gap:24px}.market-home-assistant form{min-width:0}.market-home-assistant select{width:100%}.nx-skip:focus{z-index:1000;background:#fff;color:#102b43;padding:12px}
@media(min-width:901px){.portal-nav .nav-toggle{display:none}.portal-nav .nav-dropdown{top:calc(100% + 10px)}}
@media(max-width:1100px){.portal .portal-header{padding:12px 24px;gap:16px}.brand-text small{display:none}.portal-nav .nav-link{padding:10px 9px;font-size:13px}.portal .portal-hero{gap:28px;padding:30px}.ip-product-grid,#account-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.home-account-card .actions{grid-template-columns:1fr}}
@media(max-width:900px){.portal .portal-header{flex-wrap:nowrap;min-height:68px;gap:10px;padding:10px 20px}.portal-menu-button{display:flex;align-items:center;gap:6px;justify-content:center;background:#f2f6fc;color:#30485e;border:1px solid #dce5ee;border-radius:8px;min-width:44px;min-height:44px;padding:8px 12px;order:3;font-size:13px}.portal-header-actions{margin-left:auto;gap:10px}.portal-header-actions .portal-admin-link{display:none}.portal .portal-nav{display:none!important;position:absolute;top:100%;left:0;right:0;background:#fff;padding:14px 20px 22px;border-bottom:1px solid #dce5ee;box-shadow:0 14px 20px #102b430f;max-height:calc(100dvh - 80px);overflow:auto;width:100%}.portal .is-menu-open .portal-nav{display:block!important}.portal-nav .nav-root{display:block;width:100%}.portal-nav .nav-item{margin:0 0 4px}.portal-nav .nav-link{font-size:15px;min-height:48px;padding:12px}.portal-nav .nav-toggle{display:block;width:44px;min-height:44px;position:absolute;right:0;top:2px;cursor:pointer;z-index:2}.portal-nav .nav-dropdown{position:static!important;transform:none!important;display:none;opacity:1!important;visibility:visible!important;box-shadow:none;min-width:0;width:100%;border:0;background:#f5f7fb;padding:6px;margin:3px 0 10px}.portal-nav .has-dropdown.open .nav-dropdown,.portal-nav .has-dropdown:focus-within .nav-dropdown{display:block}.portal-nav .nav-dropdown-link{min-height:48px;font-size:14px}.portal .portal-main{width:calc(100% - 40px);padding:24px 0 40px}.portal .portal-hero{grid-template-columns:1fr 1fr;gap:22px;padding:26px}.hero-service-links{gap:10px;font-size:11px}.hero-study{padding:0 20px 20px}.hero-numbers{gap:22px!important}.hub-services{gap:12px}.hub-services .panel{padding:20px}.hub-services h2{font-size:19px}.hub-services p{font-size:13px}.home-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-account-card:last-child{grid-column:1/-1}.home-decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.refresh-faq{gap:28px}.ip-family-tabs{display:flex;overflow-x:auto;gap:10px;padding-bottom:5px;scroll-snap-type:x proximity}.ip-family-tabs button{flex:0 0 180px;scroll-snap-align:start}.ip-filter-bar{flex-wrap:wrap}.ip-result-count{width:100%;font-size:12px}.ip-market-hero{gap:20px;padding:28px}.ip-market-visual{width:220px}.portal .portal-footer{width:calc(100% - 40px)}.contact-float-panel,.market-bot-panel{max-width:calc(100vw - 32px);max-height:calc(100dvh - 130px);overflow-y:auto}.auth .auth-art{padding:30px}.auth-art h1{font-size:30px}}
@media(max-width:640px){body{font-size:14px}.portal .portal-header{padding:10px 16px;gap:8px}.brand{font-size:19px}.brand-mark{width:32px;height:32px;font-size:17px}.portal-header-actions .btn{padding:9px 12px;font-size:12px;min-height:40px}.portal-header-actions>.link{font-size:13px}.portal-menu-button{padding:8px;min-width:40px;min-height:40px}.portal-menu-button span:last-child{display:none}.portal .portal-main{width:calc(100% - 32px);padding:20px 0 32px}.portal-main>section{margin-bottom:22px}.portal .portal-hero{grid-template-columns:1fr;padding:24px;gap:24px;border-radius:14px}.portal .hero-copy h1{font-size:32px;line-height:1.42;margin-bottom:18px}.hero-copy>p{font-size:14px;margin-bottom:20px}.hero-subject{margin-bottom:14px;font-size:11px}.hero-copy .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-copy .btn{padding:11px 7px;font-size:13px}.hero-footnote{font-size:11px}.hero-service-links{padding-top:14px;margin-top:18px;gap:12px}.trade-world{height:170px;object-fit:cover}.hero-study{padding:0 22px 22px}.hero-study h2{font-size:18px}.hero-numbers{gap:46px!important}.hub-services,.home-account-grid,.ip-product-grid,#account-cards,.solution-grid,.hub-task-grid,.decision-grid,.guide-grid,.plan-grid,.portal-plans{grid-template-columns:1fr!important}.hub-services{gap:12px}.hub-services .panel{padding:22px}.hub-services p{max-width:none;font-size:14px}.hub-services .btn{width:100%}.home-account-card:last-child{grid-column:auto}.home-account-card .actions{grid-template-columns:1fr 1fr}.home-account-card h3{min-height:0}.home-account-card{padding:22px}.refresh-heading{align-items:flex-start;flex-direction:column;gap:10px}.refresh-heading h2{font-size:23px}.refresh-heading p{font-size:13px}.hub-road-preview{display:flex;flex-direction:column;align-items:stretch;padding:24px;gap:12px}.hub-road-preview h2{font-size:21px}.hub-road-preview .btn{width:100%}.refresh-faq{grid-template-columns:1fr;padding:24px;gap:12px}.refresh-faq h2{font-size:25px}.home-decision-grid{gap:10px}.home-decision-grid a{padding:16px}.home-decision-grid small{font-size:11px}.ip-market-hero{padding:24px;display:block}.ip-market-copy h1{font-size:28px}.ip-market-visual{display:none}.ip-trust-row{flex-wrap:wrap;gap:8px 16px;font-size:11px}.ip-catalog-heading{display:block}.ip-catalog-heading h2{font-size:23px}.ip-catalog-heading p{font-size:13px}.ip-guide-link{display:inline-block;margin-top:10px}.ip-filter-bar{display:flex;flex-direction:column;align-items:stretch;padding:16px;gap:12px}.ip-search,.ip-select-label{width:100%;min-width:0}.ip-select-label select{width:100%}.ip-family-tabs button{flex-basis:156px;padding:12px;min-height:70px}.ip-product-card{padding:22px}.ip-product-card .actions{display:grid;grid-template-columns:1fr 1fr}.ip-purchase-flow{padding:24px;display:block}.ip-purchase-flow ol{display:flex;flex-direction:column;gap:20px;margin:22px 0 0;padding:0}.ip-assurance{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:24px}.portal-page-head h1,.growth-hero h1{font-size:28px}.panel{padding:20px;border-radius:12px}.page-head{flex-direction:column;gap:12px}.page-head .actions{width:100%}.page-head .actions .btn{flex:1}.panel form,.panel .form-grid,.settings-grid,.sub-meta,.diagnostic-layout{grid-template-columns:1fr!important}.portal .portal-footer{width:calc(100% - 32px);flex-direction:column;gap:14px;padding:26px 0 84px}.portal-footer .brand{font-size:18px}.portal-disclosure{font-size:11px}.auth{display:flex;flex-direction:column}.auth .auth-art{display:block;min-height:0;padding:22px 24px;background:#102b43}.auth-art>div:not(.brand){display:none}.auth-art>p{display:none}.auth .auth-form{padding:30px 24px;min-width:0}.auth-inner{max-width:none;width:100%}.auth-inner h1{font-size:27px}.auth-inner input,.auth-inner select{font-size:16px}.auth-inner .field{margin-bottom:18px}.course-layout,.trade-course-layout,.trade-course-shell,.knowledge-layout{display:flex!important;flex-direction:column;gap:18px}.course-sidebar,.course-nav{position:static!important;max-height:270px;overflow:auto;width:100%}.course-article,.course-block{padding:20px;min-width:0}.course-article h1{font-size:27px}.course-article h2{font-size:22px}.course-article li{line-height:1.9}.course-block pre{font-size:12px}dialog#modal{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:13px}.modal-head,.modal-body,.modal-foot{padding:18px 20px}.modal-head h2{font-size:18px}.modal-foot .btn{flex:1;min-width:100px}.modal-body .actions{display:flex;flex-wrap:wrap}.modal-body .actions .btn{flex:1}.modal-body input,.modal-body select,.modal-body textarea{font-size:16px}.modal-body .price{font-size:30px}.contact-float{right:12px!important;top:auto!important;bottom:calc(18px + env(safe-area-inset-bottom))!important;transform:none!important;z-index:60}.contact-float-trigger{width:48px!important;height:48px!important;border-radius:16px!important}.contact-float-panel{position:fixed!important;right:12px!important;left:12px!important;top:auto!important;bottom:calc(80px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 160px)!important;transform:none!important}.market-assistant{right:12px!important;top:auto!important;bottom:calc(80px + env(safe-area-inset-bottom))!important;transform:none!important;z-index:59}.market-bot-trigger{width:48px!important;height:48px!important;border-radius:16px!important}.market-bot-trigger span{font-size:10px}.market-bot-panel{position:fixed!important;right:12px!important;left:12px!important;top:auto!important;bottom:calc(140px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 220px)!important;transform:none!important}.market-home-assistant{display:block!important;padding:22px!important}.market-home-assistant h2{font-size:24px}.market-home-assistant form,.home-assistant-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px}.market-home-assistant input,.market-home-assistant select{width:100%;font-size:16px}.main{min-width:0}.main .content{padding:18px}.topbar{padding:14px 18px}.sidebar{max-width:100%}.order-progress ol{flex-wrap:wrap;padding-left:18px}.metrics,.cards,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-card,.stat-card{min-width:0;padding:16px}.metric-card strong{font-size:25px}.toast,#toast{max-width:calc(100vw - 24px);overflow-wrap:anywhere}.hero-copy,.hero-account,.panel,.ip-product-card,.home-account-card,.course-block,.portal-content{min-width:0}.panel p,.modal-body p{overflow-wrap:anywhere}}
@media(max-width:360px){.portal .portal-header{padding:10px 12px}.portal-header-actions{gap:8px}.brand-text{font-size:16px}.portal .portal-hero{padding:20px}.portal .hero-copy h1{font-size:29px}.hero-copy .actions{grid-template-columns:1fr}.hero-service-links{gap:8px}.home-decision-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.nx-reveal,.motion-reveal{opacity:1!important;transform:none!important}}

/* Menu visibility is owned here, independent of retired ledger stylesheet. */
@media(min-width:901px){.portal-nav .nav-dropdown{position:absolute;left:0;top:100%;display:none;z-index:60}.portal-nav .has-dropdown:hover>.nav-dropdown,.portal-nav .has-dropdown.open>.nav-dropdown,.portal-nav .has-dropdown:focus-within>.nav-dropdown{display:block}.portal-nav .nav-item:last-child .nav-dropdown{left:auto;right:0}}
.portal-nav .nav-toggle{background:transparent;border:0;color:#526c85}.portal-nav .nav-toggle::after{content:"⌄";font-size:20px}.portal-nav .nav-item.open .nav-toggle::after{content:"⌃"}
@media(max-width:640px){.course-directory{position:static!important;max-height:260px!important;overflow:auto}.course-tools label{width:100%}.course-tools{display:block}.course-filters{display:flex;overflow-x:auto;flex-wrap:nowrap;padding:10px 0}.course-filter{flex:0 0 auto;min-height:44px}.course-tools-bottom{flex-wrap:wrap;gap:12px}.course-lesson summary h2{font-size:19px}.course-lesson-body{padding:18px 0}.course-lessons{min-width:0}.course-hero{padding:24px}.course-start{margin-top:18px}.course-block{padding:18px}.course-block pre{overflow:auto;overflow-wrap:anywhere;white-space:pre-wrap}}

.portal .hero-account .hero-study h2,.portal .hero-account .hero-numbers strong{color:#fff!important}.portal .hero-account .hero-numbers span{color:#b3c8dc!important}.portal .hero-account .hero-card-action{color:#fff!important;background:#183951!important}.portal .hero-account .hero-card-action:hover{background:#214864!important}.trade-world{background:#102b43} .portal-header .brand-divider{display:none!important} .portal-header .brand-text small{font-family:var(--nx-font-body)}
@media(max-width:640px){.portal-header-actions>.link{display:inline-flex!important;min-height:40px;align-items:center}.portal .hero-account .trade-world{height:170px!important}.portal .hero-account .hero-study{padding-top:0}.portal .hero-account .hero-numbers{margin:16px 0!important}}

/* Selected Product Design direction: Global Commerce Editorial. */
:root{--ink:#0d2239;--muted:#65717e;--primary:#112a45;--blue:#112a45;--nx-blue:#112a45;--nx-blue-deep:#203d58;--nx-blue-soft:#f2f4f6;--nx-accent:#a5582e;--nx-line:#e3e5e7;--nx-font-display:"Songti SC","STSong","SimSun",serif;--commerce-copper:#a5582e}
body,.portal,.main{background:#fff;color:#0d2239}.portal .portal-header{height:78px;background:#fff;padding:12px max(28px,calc((100vw - 1360px)/2));border-color:#edf0f2}.portal-header .brand{font-size:27px!important;letter-spacing:.035em}.portal-header .brand-mark{display:none}.portal-header .brand-text small{color:#7b8897;font-size:10px}.portal-nav .nav-link{color:#162a40!important;font-weight:500;background:transparent!important;border-radius:0;padding:12px 14px;position:relative;opacity:1!important}.portal-nav .nav-link.active:after{content:"";position:absolute;bottom:4px;left:14px;right:14px;height:2px;background:#a5582e}.portal-nav .nav-link:hover{color:#a5582e!important}.portal-header-actions .btn{border-radius:4px!important}.btn{border-radius:4px!important;box-shadow:none!important;color:#112a45;border-color:#dfe3e7;font-weight:600}.btn.primary{background:#112a45!important;border-color:#112a45!important}.btn.primary:hover:not(:disabled){background:#203d58!important}.link,a{color:#9b542e}a:hover{color:#743b1d}input:focus,select:focus,textarea:focus{border-color:#8c5738;outline-color:#ede2db}button:focus-visible,a:focus-visible{outline-color:#ba8b6c}.portal .portal-main{width:min(1360px,calc(100% - 56px));max-width:1360px;padding:0 0 60px}.portal-main>section{margin-bottom:56px}.portal .commerce-hero{display:grid;grid-template-columns:42% 58%;gap:0;min-height:690px;background:#fff;border:0;border-radius:0;margin-bottom:0;box-shadow:none;overflow:visible}.commerce-copy{padding:74px 42px 40px 0;align-self:center;min-width:0}.commerce-copy h1{font-family:var(--nx-font-display);font-size:clamp(38px,4.4vw,64px);font-weight:700;line-height:1.48;letter-spacing:-.045em;text-wrap:nowrap;margin:0 0 20px;color:#0d2239}.commerce-copy>p{font-size:17px;line-height:1.9;color:#677381;margin:0 0 32px;max-width:39ch}.commerce-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.commerce-actions .btn{min-height:52px;padding:14px 26px;font-size:15px}.commerce-text-link{font-size:15px;color:#112a45;padding:10px 0;text-decoration:none;border-bottom:1px solid #b57a55;min-height:44px;display:inline-flex;align-items:center}.commerce-course-preview{display:flex;align-items:center;gap:24px;margin-top:54px;text-decoration:none;color:#112a45}.commerce-course-preview img{width:130px;height:110px;object-fit:cover;border-radius:4px;flex:none}.commerce-course-preview span{font-size:12px;color:#a5582e;display:block;margin-bottom:7px}.commerce-course-preview h2{font-family:var(--nx-font-display);font-size:23px;font-weight:600;line-height:1.45;margin:0 0 6px}.commerce-course-preview p{font-size:12px;color:#81909e;line-height:1.6;margin:0 0 10px}.commerce-course-preview b{font-size:13px;font-weight:500;color:#a5582e}.commerce-photo{margin:0;height:690px;min-width:0;position:relative;overflow:hidden}.commerce-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 46%;border-radius:0}.commerce-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:36px 0 38px;border-bottom:1px solid #edf0f2;gap:0}.commerce-services article{display:flex;align-items:center;gap:24px;padding:0 28px;min-width:0;border-right:1px solid #e7ebee}.commerce-services article:first-child{padding-left:0}.commerce-services article:last-child{border-right:0;padding-right:0}.commerce-services img{width:132px;height:132px;object-fit:cover;border-radius:4px;flex:none}.commerce-services h2{font-family:var(--nx-font-display);font-size:27px;font-weight:600;margin:0 0 12px;line-height:1.35}.commerce-services p{font-size:13px;margin:0 0 14px;line-height:1.85}.commerce-services a{font-size:13px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.commerce-services article>div{min-width:0}.panel,.clarity,.plan,.ip-product-card,.home-account-card,.solution-card,.course-block{border-radius:6px!important;box-shadow:none!important;border-color:#e2e6e9}.portal-page-head,.page-head{padding-top:32px}.home-account-showcase .refresh-heading h2,.refresh-heading h2,.hub-road-preview h2{font-family:var(--nx-font-display);font-weight:600;font-size:32px}.home-account-card .price{color:#a5582e;font-size:30px}.home-account-summary{color:#7a6a5f;border-top:1px solid #edf0f2;padding-top:16px}.home-account-card .pill,.ip-country-code,.ip-family-tabs button.active,.pill{color:#425870;background:#f4f5f6;border-color:#e1e5e9}.home-account-card h3{font-weight:500}.hub-road-preview{background:#f5f3f0;border:0;padding:32px}.refresh-faq{border:0;border-top:1px solid #e6e9ec;border-radius:0;background:#fff;padding:36px 0}.home-decision-grid a{border-radius:4px;box-shadow:none}.market-home-assistant{border-radius:6px!important;background:#f6f7f8!important;border:0!important}.market-home-assistant .btn.primary{background:#112a45!important}.ip-market-hero,.account-market-hero,.growth-hero,.course-hero{border-radius:6px;background:#f5f6f7;border-color:#edf0f2;margin-top:28px}.ip-market-visual{border-radius:4px;background:#112a45 url('/assets/commerce-network.webp') center/cover no-repeat;min-height:200px}.ip-market-visual>*{visibility:hidden}.ip-family-tabs button,.ip-filter-bar,.ip-product-card{border-radius:5px}.ip-product-card .price{color:#a5582e}.ip-family-tabs button.active{border-color:#a5582e}.ip-assurance{background:#112a45;border-radius:5px}.portal .portal-footer{max-width:1360px;width:min(1360px,calc(100% - 56px));padding:36px 0;background:#fff}.contact-float-trigger,.market-bot-trigger{background:#112a45!important;border-radius:8px!important;box-shadow:0 3px 12px #0d223914!important}.auth .auth-art{position:relative;overflow:hidden;background:#112a45;padding:42px;color:#fff;isolation:isolate}.auth-art .auth-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;filter:brightness(.48)}.auth-art>.brand,.auth-art>div,.auth-art>p{position:relative;z-index:1}.auth-art h1{font-family:var(--nx-font-display);font-size:44px;line-height:1.5}.auth .auth-form{background:#fff}.auth-inner h1{font-family:var(--nx-font-display);font-size:34px}.auth-inner input,.auth-inner .btn{border-radius:4px}.commerce-photo:before,.commerce-photo:after{content:none}.motion-reveal,.nx-reveal,.reveal{opacity:1!important;transform:none!important}.portal-nav .nav-link,.commerce-hero,.commerce-services{animation:none!important}.desktop-break{display:block}
@media(min-width:1600px){.commerce-copy h1{font-size:64px}.commerce-photo{height:730px}.portal .commerce-hero{min-height:730px}}
@media(max-width:1200px){.commerce-copy{padding:42px 30px 32px 0}.commerce-copy h1{font-size:48px}.commerce-copy>p{font-size:15px}.commerce-photo{height:630px}.portal .commerce-hero{min-height:630px}.commerce-course-preview{gap:16px;margin-top:38px}.commerce-course-preview img{width:100px;height:90px}.commerce-course-preview h2{font-size:19px}.commerce-services article{gap:16px;padding:0 20px}.commerce-services img{width:95px;height:120px}.commerce-services h2{font-size:23px}.commerce-services p{font-size:12px}.commerce-actions{gap:16px}.commerce-actions .btn{padding:14px 20px}}
@media(max-width:900px){.portal .portal-header{height:68px;padding:10px 20px}.portal-header .brand{font-size:23px!important}.portal .portal-main{width:calc(100% - 40px)}.portal .commerce-hero{grid-template-columns:46% 54%;min-height:570px}.commerce-photo{height:570px}.commerce-copy{padding:32px 22px 28px 0}.commerce-copy h1{font-size:38px}.commerce-copy>p{font-size:14px}.desktop-break{display:none}.commerce-actions{gap:10px}.commerce-actions .btn{font-size:13px;padding:13px 16px}.commerce-text-link{font-size:13px}.commerce-course-preview{display:block;margin-top:26px}.commerce-course-preview img{display:none}.commerce-course-preview h2{font-size:20px}.commerce-services{gap:18px;padding:26px 0}.commerce-services article{display:block;padding:0 14px}.commerce-services img{width:100%;height:130px;margin-bottom:18px}.commerce-services h2{font-size:23px}.portal-main>section{margin-bottom:36px}.portal .commerce-hero{margin-bottom:0}.portal .portal-footer{width:calc(100% - 40px)}.auth-art h1{font-size:34px}}
@media(max-width:640px){.portal .portal-header{padding:10px 16px}.portal-header .brand{font-size:20px!important}.portal-header-actions .btn{padding:10px 12px}.portal .portal-main{width:calc(100% - 32px)}.portal .commerce-hero{display:flex;flex-direction:column;min-height:0;margin-bottom:0}.commerce-copy{padding:42px 8px 28px;width:100%}.commerce-copy h1{font-size:clamp(31px,8.4vw,39px);line-height:1.55;letter-spacing:-.045em;white-space:normal;text-wrap:nowrap;margin-bottom:18px}.commerce-copy>p{font-size:15px;line-height:1.9;margin-bottom:24px}.commerce-actions{gap:20px}.commerce-actions .btn{font-size:14px;min-height:48px;padding:12px 20px}.commerce-text-link{font-size:14px}.commerce-course-preview{display:flex;gap:16px;margin-top:30px;padding-top:22px;border-top:1px solid #edf0f2}.commerce-course-preview img{display:block;width:82px;height:82px}.commerce-course-preview h2{font-size:19px;margin-bottom:5px}.commerce-course-preview span{font-size:11px}.commerce-course-preview p{font-size:11px;margin-bottom:5px}.commerce-course-preview b{font-size:12px}.commerce-photo{height:390px;width:100%;border-radius:4px;overflow:hidden}.commerce-photo img{object-position:center 45%}.commerce-services{display:flex;flex-direction:column;gap:0;padding:8px 0 0;margin-bottom:32px!important}.commerce-services article,.commerce-services article:first-child,.commerce-services article:last-child{display:flex;gap:20px;padding:26px 8px;border:0;border-bottom:1px solid #edf0f2;align-items:center}.commerce-services img{width:112px;height:120px;margin:0}.commerce-services h2{font-size:25px;margin:0 0 8px}.commerce-services p{font-size:13px;margin:0 0 4px}.commerce-services a{font-size:13px}.home-account-showcase .refresh-heading h2,.refresh-heading h2,.hub-road-preview h2{font-size:26px}.home-account-card{padding:22px}.portal-main>section{margin-bottom:32px}.portal .commerce-hero{margin-bottom:0}.auth .auth-art{min-height:80px;padding:24px}.auth-art .auth-scene{display:none}.auth .auth-form{padding:30px 24px}.auth-inner h1{font-size:30px}.portal .portal-footer{width:calc(100% - 32px)}.hub-road-preview{padding:24px}.refresh-faq{padding:28px 0}.contact-float-trigger,.market-bot-trigger{border-radius:12px!important}}
@media(max-width:360px){.commerce-copy h1{font-size:29px}.commerce-copy{padding-left:2px;padding-right:2px}.commerce-actions{gap:14px}.commerce-actions .btn{padding:12px 16px}.commerce-course-preview img{width:70px;height:78px}.commerce-course-preview h2{font-size:17px}.commerce-services img{width:100px;height:112px}.commerce-services article{gap:16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.portal,.auth{animation:none!important}.portal-nav .nav-link.active,.portal-nav .is-group-active>.nav-link{background:transparent!important;box-shadow:none!important;border:0!important;color:#112a45!important}.portal-nav .nav-link.active:after{content:""!important;display:block!important}
.home-market-advisor{border-radius:6px!important;box-shadow:none!important;background:#112a45!important}.home-advisor-workspace{border-radius:4px!important}
.portal-header .portal-account-link{color:#112a45!important}.portal-header .portal-account-link .avatar{background:#f0f3f8!important;color:#112a45!important}

/* Scoped classroom annotation: editorial hero, explicit accessible colors. */
.portal .course-hero{display:grid!important;grid-template-columns:1.1fr 1fr;grid-template-rows:auto auto;column-gap:52px;row-gap:24px;padding:40px 0!important;margin:0 0 32px!important;background:#fff!important;color:#112a45!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;align-items:center}
.portal .course-hero>div:first-child{grid-column:1;grid-row:1;align-self:end;min-width:0}
.portal .course-hero .eyebrow{display:block!important;color:#9b542e!important;font-size:11px;letter-spacing:.12em;margin-bottom:18px}
.portal .course-hero h1{font-family:var(--nx-font-display);color:#112a45!important;font-size:clamp(30px,3.1vw,44px)!important;line-height:1.4;letter-spacing:-.035em;margin:0 0 20px;font-weight:700}
.portal .course-hero p{color:#617183!important;font-size:15px;line-height:1.9;margin:0}
.portal .course-stats{margin-top:22px;gap:0;display:flex;flex-wrap:wrap}
.portal .course-stats span{color:#30485e!important;border:0;border-right:1px solid #dfe5e9;border-radius:0;padding:0 14px;font-size:12px;line-height:1.8;background:none!important}
.portal .course-stats span:first-child{padding-left:0}.portal .course-stats span:last-child{border-right:0}
.portal .course-editorial-photo{grid-column:2;grid-row:1/3;margin:0;height:420px;overflow:hidden;align-self:stretch;border-radius:4px}
.portal .course-editorial-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.portal .course-start{grid-column:1;grid-row:2;align-self:start;display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:22px 0 0;border:0;border-top:1px solid #e2e6e9;border-radius:0;background:#fff!important;backdrop-filter:none;color:#112a45;flex-basis:auto}
.portal .course-start>span{color:#9b542e!important;font-size:10px;letter-spacing:.12em}.portal .course-start strong{grid-column:1;color:#112a45!important;font-size:16px;font-weight:500;line-height:1.65;margin:0}.portal .course-start .btn{grid-column:2;grid-row:1/3;align-self:center;color:#fff!important;background:#112a45!important;border-color:#112a45!important;min-height:48px;padding:12px 18px;font-size:13px}
@media(max-width:900px){.portal .course-hero{column-gap:28px}.portal .course-editorial-photo{height:400px}.portal .course-start{display:block}.portal .course-start strong{margin:8px 0 16px}.portal .course-hero h1{font-size:32px!important}}
@media(max-width:640px){.portal .course-hero{grid-template-columns:1fr;gap:24px;padding:28px 0!important}.portal .course-hero h1{font-size:31px!important;max-width:11em}.portal .course-hero>div:first-child{grid-column:1;grid-row:1}.portal .course-start{grid-column:1;grid-row:2;margin:0;display:grid;grid-template-columns:1fr}.portal .course-start strong{margin:0;font-size:16px}.portal .course-start .btn{grid-column:1;grid-row:3;margin-top:12px;justify-self:start}.portal .course-editorial-photo{grid-column:1;grid-row:3;height:250px}.portal .course-stats{gap:8px 0}.portal .course-stats span{padding:0 10px;font-size:11px}.portal .course-hero p{font-size:14px}}

/* Official client identities and a readable first-connection lesson. */
.client-brand{display:flex;align-items:center;gap:16px;margin:20px 0}.client-brand img{width:60px;height:60px;object-fit:contain;border-radius:14px;flex-shrink:0;background:#fff}.client-brand h2{margin:0!important}.static-import-course{margin-top:32px}.import-lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.import-lesson-grid article{position:relative;padding:24px;border:1px solid #dce5ed;border-radius:16px;background:#f8fafc}.import-step{display:inline-block;color:#2553a1;font-weight:700;font-size:14px;letter-spacing:.1em;margin-bottom:8px}.import-lesson-grid h3{color:#102d44;font-size:19px;margin:0 0 14px}.import-lesson-grid p{line-height:1.85;color:#526477;overflow-wrap:anywhere}.proxy-resource dd{overflow-wrap:anywhere}.modal-foot{flex-wrap:wrap}@media(max-width:680px){.import-lesson-grid{grid-template-columns:1fr;gap:14px}.import-lesson-grid article{padding:20px}.client-brand{gap:12px}.modal-foot .btn{flex:1 1 auto}}

/* Editorial video introduction: portrait source, opt-in playback. */
.ip-video-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:38px;padding:32px;margin:30px 0 42px;background:#f4f7f8;border:1px solid #dce4e9;border-radius:20px;align-items:center}.ip-video-preview{position:relative;display:block;width:100%;padding:0;border:0;border-radius:14px;overflow:hidden;aspect-ratio:4/5;background:#e8e7d9;cursor:pointer;box-shadow:0 12px 28px #102d4414}.ip-video-preview img{width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform .25s}.ip-video-preview:hover img{transform:scale(1.025)}.ip-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:13px 21px;background:#102d44;color:white;border-radius:99px;font-size:14px;font-weight:700;white-space:nowrap;box-shadow:0 8px 22px #0003}.ip-video-duration{position:absolute;bottom:14px;left:14px;background:#fffef6;padding:6px 10px;border-radius:6px;color:#102d44;font-size:12px}.ip-video-copy h2{margin:10px 0 14px;color:#102d44;font-size:28px;line-height:1.4}.ip-video-copy p,.ip-video-copy li{color:#526477;line-height:1.8}.ip-video-copy ul{padding-left:20px;margin:12px 0 22px}.ip-video-copy small{display:block;margin-top:16px;color:#64798b;line-height:1.6}.ip-video-card.is-compact{grid-template-columns:160px minmax(0,1fr);gap:28px}.ip-video-card.is-compact .ip-video-copy ul{display:none}.trade-video-modal{width:min(930px,calc(100vw - 32px));max-width:930px}.trade-video-layout{display:grid;grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:32px;align-items:center}.trade-video-screen{background:#0a1722;border-radius:12px;overflow:hidden;text-align:center}.trade-video-screen video{display:block;width:100%;max-height:65vh;aspect-ratio:544/960;object-fit:contain}.trade-video-summary h3{font-size:23px;color:#102d44;margin:12px 0}.trade-video-summary p,.trade-video-summary li{line-height:1.85;color:#526477}.trade-video-summary ol{padding-left:20px}.trade-video-summary .actions{display:flex;flex-wrap:wrap;margin-top:24px}.trade-video-summary #trade-video-finish{padding:14px;background:#eaf3ed;border-radius:10px;margin-top:20px}.trade-video-body{overflow-y:auto;max-height:76vh}.ip-video-preview:focus-visible{outline:3px solid #315ddb;outline-offset:4px}@media(max-width:680px){.ip-video-card,.ip-video-card.is-compact{grid-template-columns:1fr;padding:22px;gap:22px;margin:24px 0}.ip-video-preview{max-width:240px;margin:auto;aspect-ratio:4/5}.ip-video-copy h2{font-size:23px}.trade-video-layout{grid-template-columns:1fr;gap:20px}.trade-video-screen{max-width:320px;margin:auto;width:100%}.trade-video-screen video{max-height:54vh}.trade-video-modal{width:calc(100vw - 20px)}.trade-video-body{padding:16px}.trade-video-summary h3{font-size:20px}}@media(prefers-reduced-motion:reduce){.ip-video-preview img{transition:none}}

.ai-topup-teaser{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:32px 0;background:#f5f8fa}.ai-topup-teaser h2{margin:10px 0;font-size:26px;color:#102d44}.ai-topup-teaser p{color:#526477;line-height:1.8}.ai-topup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0}.ai-topup-product{padding:32px}.ai-topup-product h2{font-size:26px;color:#102d44;margin:18px 0}.ai-topup-product p,.ai-topup-how li{color:#526477;line-height:1.9}.ai-topup-product .price{margin:22px 0}.ai-topup-how li{margin:10px 0}@media(max-width:680px){.ai-topup-teaser{flex-direction:column;align-items:flex-start}.ai-topup-grid{grid-template-columns:1fr}.ai-topup-product{padding:24px}.ai-topup-teaser h2,.ai-topup-product h2{font-size:23px}}

.brand .nx-brand-logo{display:block;background:transparent!important;object-fit:contain;flex:0 0 36px;width:36px;height:36px;border-radius:0!important;box-shadow:none!important}.auth-art .nx-brand-logo{width:42px;height:42px;flex-basis:42px}.load-error{max-width:680px;margin:auto;padding:48px 24px}.load-error .actions{justify-content:center;flex-wrap:wrap}

/* AI assistance: scoped editorial service and request workspace. */
.ai-service-page{color:#102d44}.ai-service-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:64px;align-items:center;padding:48px 0 56px;border-bottom:1px solid #e2e6e9;margin-bottom:48px}.ai-service-hero .eyebrow{color:#9b542e}.ai-service-hero h1{font-size:16px;font-weight:500;margin:18px 0;color:#526477}.ai-hero-lead{font-family:var(--nx-font-display);font-size:clamp(30px,3.5vw,48px);font-weight:700;line-height:1.5;color:#102d44;margin:0 0 22px}.ai-service-hero p:not(.ai-hero-lead){color:#526477;line-height:1.9}.ai-service-hero .actions{margin:26px 0}.ai-hero-tags{display:flex;gap:12px 20px;flex-wrap:wrap;font-size:12px;color:#607283}.ai-hero-tags span:before{content:'✓';margin-right:6px;color:#53735d}.ai-fee-card{padding:32px;background:#f6f3ef;border:1px solid #e6ded5;border-radius:8px}.ai-fee-card h2{font-size:18px;font-weight:500;margin:18px 0 8px}.ai-fee-value{font-size:64px;letter-spacing:-.04em;font-weight:600;line-height:1.2}.ai-fee-value span{font-size:13px;letter-spacing:0;margin-left:12px;color:#647384}.ai-fee-card dl{margin:24px 0}.ai-fee-card dl>div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #e1d9d0;padding:14px 0;font-size:13px}.ai-fee-card dd{margin:0;text-align:right;font-weight:600}.ai-fee-card small,.ai-small{color:#657586;font-size:12px;line-height:1.8}.ai-service-page>section{margin-bottom:48px;scroll-margin-top:100px}.ai-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.ai-section-title h2{font-family:var(--nx-font-display);font-size:28px;margin:10px 0 0}.ai-section-title>p{font-size:13px;color:#657586}.ai-platform-card{border:1px solid #dfe6eb;border-radius:8px;padding:32px;background:#fff}.ai-platform-heading{display:flex;gap:16px;align-items:center}.ai-platform-symbol{width:52px;height:52px;display:grid;place-items:center;background:#edf2f4;color:#102d44;font-size:16px;font-weight:700;border-radius:8px}.ai-platform-heading h3{font-size:24px;margin:0 0 5px}.ai-platform-heading div>span{font-size:12px;color:#657586}.ai-platform-card>p{color:#526477;line-height:1.9;margin:22px 0}.ai-platform-note{padding:14px 0;border-top:1px solid #e6ebee;font-size:13px;color:#526477;margin-bottom:16px}.ai-platform-card .btn{width:100%;min-height:48px}.ai-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.ai-process-grid article{border-top:1px solid #dce4e9;padding-top:22px}.ai-process-grid article>span{font-size:13px;letter-spacing:.1em;color:#9b542e}.ai-process-grid h3{font-size:18px;margin:14px 0 10px}.ai-process-grid p,.ai-request-card>p{color:#526477;font-size:14px;line-height:1.9}.ai-empty{padding:30px;background:#f6f8f9;border:1px dashed #cdd8df;border-radius:8px}.ai-empty h3{font-size:17px;margin:0 0 12px}.ai-empty p{color:#657586;line-height:1.8}.ai-request-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ai-request-card{border:1px solid #dce4e9;border-radius:8px;padding:24px;min-width:0}.ai-request-header{display:flex;align-items:start;justify-content:space-between;gap:14px}.ai-request-header h3{margin:0;font-size:18px;overflow-wrap:anywhere}.ai-request-header .pill{flex-shrink:0}.ai-quote{margin:16px 0;border:1px solid #e0e5e8;background:#f7f9fa;border-radius:4px;padding:14px}.ai-quote pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;line-height:1.8;font-size:13px;color:#30485d}.ai-faq-section details{border-bottom:1px solid #e1e7eb;padding:20px 0}.ai-faq-section summary,.ai-quote summary{cursor:pointer;font-weight:600;line-height:1.6}.ai-faq-section details p{color:#526477;line-height:1.9;max-width:85ch;margin:16px 0 0}.ai-form-intro{padding:18px;background:#f5f7f8;border-radius:6px;margin-bottom:20px}.ai-form-intro p{font-size:13px;line-height:1.8;margin:10px 0 0;color:#526477}.ai-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ai-consent{display:flex;align-items:flex-start;gap:10px;color:#526477;font-size:13px;line-height:1.8;margin:18px 0}.ai-consent input{width:18px;min-width:18px;height:18px;margin-top:3px}.ai-service-page summary:focus-visible{outline:2px solid #9b542e;outline-offset:6px}
@media(max-width:900px){.ai-service-hero{gap:30px}.ai-fee-card{padding:24px}.ai-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-request-list{grid-template-columns:1fr}}
@media(max-width:640px){.ai-service-hero{grid-template-columns:1fr;padding:28px 0;gap:28px}.ai-hero-lead{font-size:30px}.ai-service-page>section{margin-bottom:32px}.ai-service-hero .actions .btn{width:100%}.ai-fee-value{font-size:52px}.ai-section-title{align-items:flex-start;flex-wrap:wrap;gap:10px}.ai-section-title h2{font-size:25px}.ai-section-title>p{margin:0}.ai-platform-card{padding:24px}.ai-topup-grid{gap:16px}.ai-process-grid{gap:20px}.ai-process-grid p{font-size:13px}.ai-request-card{padding:20px}.ai-request-header{flex-direction:column}.ai-form-grid{grid-template-columns:1fr;gap:0}.ai-empty{padding:24px}.ai-service-hero .actions{gap:12px}}

/* Practical trade lessons and an explicit consultation handoff. */
.trade-focus{margin:28px 0 40px}.trade-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.trade-focus-grid article{padding:28px;border:1px solid #dce4e9;border-radius:6px;background:#f7f8f9;display:flex;flex-direction:column;align-items:start}.trade-focus-grid article>span{color:#9b542e;font-size:12px}.trade-focus-grid h3{font-size:19px;line-height:1.5;margin:14px 0}.trade-focus-grid p{color:#526477;font-size:14px;line-height:1.9;flex:1}.trade-focus-grid .btn{min-height:44px}.trade-practice{border-left:3px solid #a5582e!important;background:#faf8f5!important;padding:28px!important}.trade-practice-steps article{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid #e7e1db}.trade-practice-steps article>span{font-size:13px;letter-spacing:.08em;color:#9b542e;flex:0 0 25px;padding-top:3px}.trade-practice h4{margin:0 0 10px;font-size:17px;color:#102d44}.trade-practice-steps p{margin:0;line-height:1.95;color:#526477}.trade-practice-template{padding:20px 0}.trade-practice-template summary{cursor:pointer;font-weight:600;color:#102d44;min-height:44px;line-height:1.8}.trade-practice-template pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;padding:20px;border:1px solid #e3e7e9;border-radius:4px;color:#30485e;font-size:14px;line-height:1.9;font-family:inherit}.trade-practice .course-exercise{padding:22px;background:#fff;margin-top:16px}.trade-mentor{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;padding:34px;border:1px solid #dce4e9;border-radius:6px;background:#f5f7f8;margin:36px 0}.trade-mentor h2{font-family:var(--nx-font-display);font-size:26px;line-height:1.5;margin:12px 0}.trade-mentor p{color:#526477;line-height:1.9}.trade-mentor-example{padding:14px;border-left:2px solid #a5582e;background:#fff;font-size:13px}.trade-mentor-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:14px;min-width:0}.trade-mentor-actions .btn{white-space:normal;min-height:48px;text-align:center}.trade-mentor-actions small{font-size:12px;line-height:1.9;color:#657586}.trade-mentor-actions .link{padding:6px 0}.trade-practice summary:focus-visible{outline:2px solid #9b542e;outline-offset:4px}@media(max-width:900px){.trade-focus-grid{grid-template-columns:1fr}.trade-focus-grid article{padding:24px}.trade-mentor{gap:24px}}@media(max-width:640px){.trade-mentor{grid-template-columns:1fr;padding:24px}.trade-practice{padding:20px!important}.trade-practice-steps article{gap:10px}.trade-practice-steps p{font-size:14px}.trade-practice-template pre{padding:16px;font-size:13px}.trade-mentor h2{font-size:24px}}

/* Unified tools and services entry; follows the existing editorial system. */
.tools-page{color:#102d44}.tools-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:42px 0 48px;border-bottom:1px solid #e1e6ea;margin-bottom:40px}.tools-hero h1{font-family:var(--nx-font-display);font-size:clamp(32px,3.7vw,48px);line-height:1.5;margin:18px 0 22px;letter-spacing:-.035em}.tools-hero p{color:#526477;line-height:1.9;margin-bottom:24px}.tools-hero .tools-hero-note{font-size:12px;margin-top:20px;margin-bottom:0}.tools-hero figure{margin:0;min-width:0;height:330px;overflow:hidden;border-radius:6px}.tools-hero img{width:100%;height:100%;object-fit:cover}.tools-page .actions{flex-wrap:wrap}.tools-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 36px}.tools-card{padding:32px;border:1px solid #dce4e9;border-radius:6px;display:flex;flex-direction:column;align-items:stretch}.tools-card-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0}.tools-card-title h2{font-size:26px;margin:0}.tools-card>p{color:#526477;line-height:1.9}.tools-card dl{margin:12px 0;flex:1}.tools-card dl>div{display:grid;grid-template-columns:72px 1fr;gap:16px;padding:14px 0;border-top:1px solid #e5eaed;font-size:13px;line-height:1.7}.tools-card dt{color:#657586}.tools-card dd{margin:0}.tools-card .btn{min-height:48px}.tools-card small{font-size:12px;line-height:1.8;color:#657586;margin-top:16px}.tools-card .tools-availability{font-size:13px;color:#825130;margin:8px 0 20px}.tools-manage{padding:28px;background:#f5f7f8;border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 40px}.tools-manage h2{font-size:20px;margin:0 0 10px}.tools-manage p{font-size:14px;color:#526477;line-height:1.8;margin:0}.tools-guide{margin-bottom:40px}.tools-guide h2{font-family:var(--nx-font-display);font-size:26px;line-height:1.5;margin:14px 0 24px}.tools-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tools-guide-grid a{padding:24px;border:1px solid #dce4e9;border-radius:6px;text-decoration:none;color:#102d44}.tools-guide-grid strong,.tools-guide-grid span{display:block}.tools-guide-grid span{font-size:13px;line-height:1.8;color:#657586;margin-top:10px}.tools-guide-grid a:hover{border-color:#a5582e;background:#faf8f5}.tools-expectations{padding:28px 0;border-top:1px solid #dce4e9}.tools-expectations h2{font-size:20px}.tools-expectations p{max-width:90ch;color:#526477;line-height:1.9;font-size:14px}.tools-expectations a{font-size:13px}@media(max-width:900px){.tools-hero{gap:28px}.tools-hero figure{height:300px}.tools-manage{align-items:start;flex-direction:column}}@media(max-width:640px){.tools-hero{grid-template-columns:1fr;padding:28px 0;gap:24px}.tools-hero h1{font-size:31px}.tools-hero figure{height:220px}.tools-options,.tools-guide-grid{grid-template-columns:1fr}.tools-card{padding:24px}.tools-card-title{flex-wrap:wrap}.tools-card-title h2{font-size:24px}.tools-hero .actions .btn{flex:1 1 auto}.tools-manage{padding:24px}.tools-manage .actions{width:100%}.tools-guide h2{font-size:24px}.tools-guide-grid a{padding:22px}}

/* Mobile touch layout: restrained hierarchy, comfortable fields, contained menus. */
@media(max-width:760px){
 body{overflow-wrap:break-word}.portal .portal-main{width:calc(100% - 32px);padding-bottom:96px}.portal .portal-header{height:68px;min-height:68px;gap:8px;padding:10px 16px}.portal-header .brand{font-size:21px!important}.portal-header .brand-text small{font-size:9px}.portal-header .portal-account-link>span:last-child{max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-header-actions{gap:8px}.portal-header-actions .btn{font-size:12px;padding:10px 12px}.portal-menu-button{font-size:12px;min-height:44px;padding:8px 10px;background:#f5f7f8;border-radius:8px}.portal .portal-nav{border-radius:0 0 16px 16px;padding:12px 16px 20px;max-height:calc(100dvh - 90px);overscroll-behavior:contain}.portal-nav .nav-root>.nav-item{border-bottom:1px solid #eef1f3;margin:0;padding:4px 0}.portal-nav .nav-link{min-height:50px}.portal-nav .nav-dropdown{border-radius:8px;background:#f5f7f8!important;padding:6px}.portal-nav .nav-dropdown-link{padding:12px;min-height:52px}.portal-nav .nav-item-sub{font-size:12px;line-height:1.7}.portal-nav .nav-toggle{top:7px}.portal-nav .nav-item:focus-within:not(.open) .nav-dropdown{display:none}.portal-nav .has-dropdown.open .nav-dropdown{display:block!important}.portal-context{padding:16px;margin-top:16px;border-radius:10px;gap:14px}.portal-context p{line-height:1.8}.portal-context-actions>a:first-child{display:none}.portal-context-actions .context-next{min-height:44px;display:flex;align-items:center;justify-content:center}.commerce-copy{padding:30px 0 24px}.commerce-copy h1{font-size:clamp(30px,8.4vw,38px);line-height:1.5;text-wrap:wrap;white-space:normal}.commerce-photo{height:290px}.commerce-services article{padding:22px 0;gap:18px}.commerce-services img{width:92px;height:102px}.commerce-services h2{font-size:23px}.portal-main h2{line-height:1.5}.portal-page-head{padding-top:24px}.portal-page-head h1{font-size:28px;line-height:1.45}.portal-page-head p{font-size:14px;line-height:1.85}.home-account-grid,.sub-grid,.hub-services,.stats{grid-template-columns:1fr!important}.home-account-card:last-child{grid-column:auto}.home-account-card,.ip-product-card,.panel.clarity{padding:22px!important;border-radius:10px!important}.ip-product-card .actions,.home-account-card .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ip-family-tabs button{flex-basis:150px;min-height:48px}.ip-filter-bar{gap:12px}.ip-filter-bar input,.ip-filter-bar select{min-height:48px;max-width:100%}.ip-market-hero{padding:24px!important;grid-template-columns:1fr!important}.ip-market-visual{display:none}.refresh-heading{align-items:flex-start;gap:14px;flex-wrap:wrap}.refresh-heading h2{font-size:26px}.course-layout{display:block}.course-directory{display:none}.course-lesson{scroll-margin-top:84px}.course-lesson summary h2{font-size:19px!important}.course-lesson-body{padding:16px!important}.course-lesson-body p,.course-lesson-body li{font-size:14px;line-height:1.9}.course-block{padding:20px!important}.course-tools{padding:18px}.course-filters{display:flex;flex-wrap:nowrap;overflow:auto;padding-bottom:8px}.course-filter{flex-shrink:0;min-height:44px}.course-tools-bottom{gap:14px;flex-wrap:wrap}.tools-hero figure{height:200px}.tools-card,.ai-platform-card,.ai-fee-card{border-radius:10px}.ai-service-hero{padding-top:24px}.ai-hero-lead{font-size:30px}.ai-service-hero .actions .btn{min-height:48px}.ai-process-grid{gap:20px 16px}.contact-float{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));top:auto;transform:none}.contact-float-trigger{width:48px;height:48px;min-height:48px;border-radius:50%!important;box-shadow:0 4px 16px #102d4424!important}.contact-float-trigger b{font-size:9px}.contact-float-panel{position:fixed!important;left:16px;right:16px;top:auto!important;bottom:calc(74px + env(safe-area-inset-bottom));width:auto;max-width:none;max-height:calc(100dvh - 160px);overflow:auto;border-radius:14px}.portal .portal-footer{width:calc(100% - 32px);padding:24px 0 90px;gap:20px}.portal-footer{flex-direction:column}.portal-disclosure{font-size:12px}.auth .auth-form{padding:30px 22px}.auth-inner{width:100%;max-width:420px}.auth-inner h1{font-size:30px}.auth-art{min-height:68px!important;padding:20px!important}.auth-art>div:not(.brand),.auth-art>p{display:none}.field input,.field select,.field textarea,.search,.filter{font-size:16px!important;min-height:48px;border-radius:8px!important;max-width:100%;box-sizing:border-box}textarea{line-height:1.8}.btn{min-height:44px}.table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}dialog{width:calc(100% - 24px)!important;max-width:560px!important;max-height:calc(100dvh - 24px);border-radius:14px!important;overflow:auto}dialog .modal-body{padding:20px!important}dialog .modal-foot{position:sticky;bottom:0;background:#fff;z-index:2;padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #e1e7eb;gap:10px}dialog .modal-foot .btn{min-height:46px;flex:1 1 auto;font-size:13px}.proxy-resource,.ticket-thread{overflow-wrap:anywhere;max-width:100%}.tools-manage .actions .btn{flex:1 1 auto}body:has(.portal-header.is-menu-open){overflow:hidden}.ip-market-visual{background-image:url('/assets/commerce-network-640.webp')}
}
@media(max-width:360px){.portal-header .brand-text small{display:none}.portal-header .brand{font-size:19px!important}.portal-header-actions .btn{padding:9px;font-size:11px}.portal-menu-button{padding:8px;min-width:44px}.portal-menu-button>span:last-child{display:none}.commerce-copy h1{font-size:29px}}

.tutorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.tutorial-card img{width:100%;height:180px;object-fit:cover;border-radius:6px;margin-bottom:20px}.tutorial-card h3{font-size:20px;line-height:1.5}.tutorial-card p{color:#526477;line-height:1.8}.tutorial-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95;margin:24px 0;color:#30485e}.tutorial-library{margin:36px 0}@media(max-width:900px){.tutorial-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.tutorial-grid{grid-template-columns:1fr}.tutorial-card img{height:180px}}


/* v87 conversion, learning and operations refinement */
body:has(.app-shell) .contact-float,
body:has(.app-shell) .market-assistant{display:none!important}

.ip-quick-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:-12px 0 30px;background:#d8e1ea;border:1px solid #d8e1ea}
.ip-quick-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 14px;background:#fff;color:#233f58;text-decoration:none;font-size:13px;font-weight:650;text-align:center}
.ip-quick-nav a:first-child{background:#112a45;color:#fff}
.ip-quick-nav a:hover{background:#eef3f7}
.ip-quick-nav a:first-child:hover{background:#183b5f}
.ip-catalog{scroll-margin-top:92px}
.ip-product-facts{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}
.ip-product-facts>div:last-child{grid-column:1/-1}
.ip-empty-state{grid-column:1/-1;max-width:none;padding:52px 28px;border:1px solid #dce5ee;background:#f7f9fb;text-align:center}
.ip-empty-state p{max-width:54ch;margin-inline:auto;color:#617183;line-height:1.8}
#ip-video-guide,#ip-buying-guide{scroll-margin-top:92px}

.auth-otp small{display:block;margin-top:8px;color:#617183;font-size:12px;line-height:1.6}
.auth-otp:not([hidden]){animation:nxOtpReveal .22s ease-out}
@keyframes nxOtpReveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

.course-directory{position:sticky;top:92px;max-height:calc(100vh - 116px);overflow:auto;align-self:start}
.course-lesson[open]{border-color:#b8c9d8}
.course-lesson[open]>summary{background:#f4f7fa}

@media(max-width:760px){
  .ip-quick-nav{grid-template-columns:1fr 1fr;margin-top:-4px}
  .ip-quick-nav a{min-height:48px;font-size:12px}
  .ip-product-facts{grid-template-columns:1fr}
  .ip-product-facts>div:last-child{grid-column:auto}
  .ip-product-action{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom));z-index:2;box-shadow:0 8px 22px rgba(17,42,69,.18)}
  .course-tools-bottom>div{display:none}
  .course-lesson:not([open]) .course-goal{display:none}
  .course-lesson-body{content-visibility:auto;contain-intrinsic-size:900px}
}

@media(prefers-reduced-motion:reduce){.auth-otp:not([hidden]){animation:none}}
