.portal-page{background:linear-gradient(180deg,#071420,#050f17);padding-bottom:54px}.portal-hero{position:relative;min-height:350px;background-size:cover;background-position:center;border-bottom:1px solid #173554}.tools-hero{background-image:linear-gradient(90deg,#03102088,transparent),url(tools-hero.png)}.news-hero{background-image:linear-gradient(90deg,#03102088,transparent),url(news-hero.png)}.portal-hero-content{padding:42px 48px 25px;position:relative}.portal-hero h1{font-size:clamp(32px,4.5vw,60px);letter-spacing:3px;line-height:1.25;font-weight:900;text-shadow:0 3px 20px #00152c}.eyebrow{font-size:10px;letter-spacing:3px;color:#7ccfff;margin-bottom:8px}.hero-subtitle{font-size:24px;letter-spacing:5px;margin:10px 0}.hero-description{font-size:13px;letter-spacing:1px;color:#cad8ed;margin-bottom:20px;max-width:65%}.portal-search{display:flex;align-items:center;width:min(600px,65%);height:52px;border:1px solid #558bbb;border-radius:30px;background:#0b1b2de6;overflow:hidden;box-shadow:0 5px 25px #0003}.portal-search svg{margin-left:18px;color:#cce7ff}.portal-search input{background:transparent;border:0;color:#fff;padding:12px;min-width:0;width:100%;outline:none}.portal-search button{align-self:stretch;border:0;color:white;font-weight:600;background:linear-gradient(100deg,#2976ff,#534aff);min-width:105px}.search-hints{display:flex;gap:8px;align-items:center;margin-top:13px;color:#b6c7df;font-size:11px;flex-wrap:wrap}.search-hints a{padding:2px 8px;background:#14253bd9;border-radius:4px}.hero-signature{position:absolute;right:30px;bottom:40px;font-family:KaiTi,STKaiti,serif;font-size:29px;line-height:1.4;transform:rotate(-10deg);text-shadow:0 2px 9px #050b24}.hero-signature small{font-family:system-ui;font-size:10px;letter-spacing:2px;display:block;margin-top:10px;color:#a7badb}.tool-category-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px;padding:24px 0 28px}.category-tile{background:linear-gradient(130deg,#0d1e2a,#0b1823);border:1px solid #102332;border-radius:7px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 5px;gap:9px}.category-tile svg{width:38px;height:38px;color:var(--accent);margin-bottom:7px;filter:drop-shadow(0 2px 9px color-mix(in srgb,var(--accent) 25%,transparent))}.category-tile strong{font-size:15px}.category-tile small{font-size:11px;color:#88a5c6}.category-tile:hover,.category-tile.selected{border-color:#3e80ff;background:#122b46;transform:translateY(-2px)}.portal-columns{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(280px,1fr);gap:22px}.portal-primary{min-width:0}.portal-heading{display:flex;gap:16px;align-items:center;margin:0 0 14px;min-height:32px;flex-wrap:wrap}.portal-heading h2{font-size:21px;font-weight:750;letter-spacing:.5px}.portal-heading>span{color:#6f91b5;font-size:12px}.portal-heading>a{margin-left:auto;color:#b8cce9;font-size:12px}.tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.tool-card{background:linear-gradient(135deg,#112333,#0c1a27);border:1px solid #12293b;border-radius:7px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px 12px 18px;transition:border-color .2s,transform .2s;min-width:0}.tool-card:hover{border-color:#3e71bb;transform:translateY(-3px)}.tool-mark{width:61px;height:61px;border-radius:50%;background:radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--accent) 35%,#101729),#080f25);color:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 10%,transparent);display:inline-flex;align-items:center;justify-content:center;font-size:25px;font-weight:850;letter-spacing:-1px;border:2px solid color-mix(in srgb,var(--accent) 65%,transparent);flex-shrink:0}.tool-card h3{font-size:16px;line-height:1.5;margin:14px 0 6px}.tool-tag{font-size:10px;background:#213551;color:#b8d5ff;border-radius:5px;padding:1px 8px}.tool-platform{font-size:10px;color:#9fb9d8;margin-top:12px;min-height:30px}.tool-description{font-size:11px;color:#8ca6c4;line-height:1.65;margin:5px 0 15px;min-height:36px}.tool-card .button{margin-top:auto;min-width:110px;border-radius:8px;background:linear-gradient(115deg,#5243ff,#087eff);border:0}.portal-section{margin-top:32px}.tool-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.category-detail{display:flex;gap:16px;padding:22px 15px;background:linear-gradient(120deg,#102333,#0d1a26);border-radius:7px;border:1px solid #142838}.category-detail svg{color:var(--accent);width:33px;height:33px;align-self:center}.category-detail h3{font-size:13px}.category-detail p{color:#7f9cbd;font-size:11px;margin:5px 0 14px}.category-detail span{font-size:11px;color:#b3d1f7}.tool-collections{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tool-collection{border:1px solid #174970;border-radius:8px;padding:20px;min-height:160px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 100% 100%,#1359b9,#041421 70%)}.tool-collection h3{font-size:15px;position:relative;z-index:1}.tool-collection p{font-size:11px;color:#b4c7e2;margin:7px 0 22px;position:relative;z-index:1}.tool-collection svg{position:absolute;bottom:5px;right:0;width:85px;height:85px;color:#3f9fff;opacity:.5;transform:rotate(-12deg)}.tool-collection span{font-size:11px;font-weight:600;border-radius:20px;color:#001625;background:#13c4ff;padding:5px 17px;position:relative}.collection-1,.collection-3{background:radial-gradient(ellipse at 100% 100%,#08743d,#041421 70%)}.collection-1 svg,.collection-3 svg{color:#34e285}.portal-sidebar{display:flex;flex-direction:column;gap:16px;min-width:0}.portal-promo{display:block;min-height:168px;border:1px solid #284fa2;border-radius:8px;padding:22px 20px;background-size:cover;background-position:center;overflow:hidden}.portal-promo h2{font-size:23px;text-shadow:0 2px 8px #001134}.portal-promo p{font-size:13px;color:#bed6f9;margin:8px 0 16px;max-width:76%}.tools-promo{background-image:linear-gradient(90deg,#18329ce6,#0f247844),url(tools-hero.png)}.community-promo{background-image:linear-gradient(90deg,#143182e6,#11297533),url(hero.png)}.sidebar-panel{padding:16px;border:1px solid #142838;border-radius:8px}.sidebar-panel .portal-heading{margin-bottom:6px}.sidebar-panel h2{font-size:17px}.sidebar-caption{font-size:11px;color:#7896b7;margin:5px 0 13px}.tool-shortlist{list-style:none;margin:0;padding:0}.tool-shortlist li{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #192b3c}.tool-shortlist li:last-child{border:0}.list-number{background:#293d59;border-radius:4px;padding:0 5px;color:#fff;font-size:12px}.tool-shortlist li:first-child .list-number{background:#ff585a}.tool-shortlist li:nth-child(2) .list-number{background:#18b9ed}.tool-shortlist li:nth-child(3) .list-number{background:#f0a32b}.tool-shortlist .tool-mark,.update-row .tool-mark{width:35px;height:35px;font-size:13px;border-width:1px}.tool-shortlist strong,.update-row strong{font-size:12px;display:block}.tool-shortlist small,.update-row small{display:block;font-size:10px;color:#859fbd;margin-top:2px}.tool-shortlist li>div{flex:1;min-width:0}.tool-shortlist li>a{color:#519aff;border:1px solid #456ff4;padding:2px 10px;border-radius:15px;font-size:10px}.update-row{display:flex;align-items:center;gap:11px;padding:11px 0}.update-row>span:nth-child(2){flex:1}.update-row b{color:#4da5ff}.portal-note{padding:20px 0;color:#7d99b8;font-size:12px;max-width:850px}.portal-note strong{color:#b4c7df}.portal-note p{margin-top:6px}.filter-summary{padding:10px 14px;background:#112235;border-radius:6px;margin-bottom:14px;color:#b7cde8;font-size:12px}.filter-summary a{float:right;color:#60caff}.portal-empty{padding:55px 20px;background:#0e1d2b;text-align:center}.portal-empty p{margin:12px 0 20px;color:#8fa8c6}.news-category-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin:22px 0}.news-category-nav a{padding:16px 7px;border-radius:6px;background:#10202d;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px}.news-category-nav svg{color:#5babff}.news-category-nav .selected{background:linear-gradient(110deg,#3b53fa,#258aff);box-shadow:0 3px 15px #254ffe44}.news-category-nav .selected svg{color:#fff}.news-columns{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.news-list-panel{padding:18px;border:1px solid #132839;border-radius:8px;background:linear-gradient(120deg,#10202d,#0c1722)}.news-list-panel>.portal-heading{border-bottom:1px solid #243446;padding-bottom:14px}.news-tabs{display:flex;gap:20px;margin-left:auto;font-size:12px}.news-tabs a{padding:5px;color:#90a9ca}.news-tabs .selected{color:#e9f5ff;border-bottom:2px solid #3fbfff}.news-row{display:grid;grid-template-columns:32% minmax(0,1fr) 12px;gap:22px;padding:18px 0;border-bottom:1px solid #203244;align-items:center}.news-thumb{position:relative;overflow:hidden;border:1px solid #365170;border-radius:9px;aspect-ratio:1.64;background:linear-gradient(135deg,#183b65,#131632)}.news-thumb img{width:100%;height:100%;object-fit:cover}.news-thumb .fallback{height:100%;display:grid;place-items:center}.news-thumb .fallback svg{width:70px;height:70px;color:#4c91ec}.news-thumb>span:last-child{position:absolute;top:12px;left:12px;padding:3px 13px;background:linear-gradient(110deg,#4157ff,#19a2ff);border-radius:9px;font-size:11px;box-shadow:0 3px 18px #126bff66}.news-row h2{font-size:18px;line-height:1.65;margin-bottom:10px}.news-row p{font-size:12px;color:#96aac4;line-height:1.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-byline{margin-top:14px;font-size:11px;color:#8199b6}.news-arrow{color:#8fa7c9;font-size:27px}.news-row:last-child{border:0}.news-picks{margin:0;padding:0;list-style:none}.news-picks li{display:flex;align-items:center;gap:10px;padding:10px 0}.news-picks img{width:86px;height:58px;object-fit:cover;border-radius:6px}.news-picks strong{font-size:12px;display:block}.news-picks small{font-size:10px;color:#8099b8}.news-topic{display:block;position:relative;border:1px solid #31517c;border-radius:8px;margin-top:10px;padding:18px 14px;background-size:cover;background-position:center;min-height:120px}.news-topic h3{font-size:21px}.news-topic p{font-size:11px;margin:4px 0 12px;color:#c2d9f8}.news-topic span{font-size:11px;background:#22baf1;padding:4px 15px;border-radius:16px;color:#031823}.news-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.news-tool-grid a{background:#1a2b3d;display:flex;align-items:center;gap:10px;padding:14px 10px;border-radius:5px;font-size:11px}.news-tool-grid svg{color:#21c9ed}.news-pagination{padding:22px 0 5px;text-align:center}.news-pagination .page-numbers{display:inline-flex;padding:3px 11px;border:1px solid #284763;border-radius:5px;margin:3px}.news-pagination .current{background:#2347bb}.news-count{font-size:11px;text-align:center;color:#8ba4bf;margin-top:18px}
@media(min-width:1600px){.portal-hero{min-height:390px}.portal-hero-content{padding-top:50px}}
@media(max-width:1200px){.portal-columns{gap:16px;grid-template-columns:minmax(0,2.4fr) minmax(260px,1fr)}.tools-grid,.tool-category-grid{gap:10px}.tool-card{padding:18px 8px}.tool-card h3{font-size:14px}.tool-category-nav{gap:10px}.category-tile strong{font-size:13px}.category-detail{gap:10px;padding:18px 10px}.category-detail svg{width:25px}.portal-heading>span{font-size:11px}.portal-hero-content{padding-left:36px}.hero-signature{font-size:23px}.news-row{gap:16px}.news-row h2{font-size:16px}.news-category-nav a{gap:7px;font-size:11px}.portal-promo h2{font-size:20px}.tool-collection{padding:16px 12px}}
@media(max-width:950px){.portal-columns{grid-template-columns:minmax(0,1fr)}.portal-sidebar{display:grid;grid-template-columns:1fr 1fr;align-items:start}.tool-category-nav{grid-template-columns:repeat(4,1fr)}.category-tile{padding:18px 7px}.tool-category-nav{padding:18px 0}.portal-hero-content{padding-left:22px;padding-right:22px}.hero-signature{display:none}.portal-hero{min-height:325px}.portal-search{width:70%}.hero-description{max-width:70%}.news-category-nav{grid-template-columns:repeat(4,1fr)}.news-row h2{font-size:18px}}
@media(max-width:600px){.portal-page{padding-bottom:25px}.portal-hero{min-height:325px;background-position:65% center}.portal-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#031020d9,#03102044)}.portal-hero-content{padding:30px 10px 24px}.portal-hero h1{font-size:34px;letter-spacing:1px}.news-hero h1{font-size:29px}.hero-subtitle{font-size:17px;letter-spacing:2px;margin:12px 0}.hero-description{font-size:11px;max-width:90%;line-height:1.8;margin-bottom:16px}.portal-search{width:100%;height:46px}.portal-search input{font-size:12px;padding:10px}.portal-search button{min-width:72px}.search-hints{font-size:10px;gap:5px}.category-tile{padding:14px 3px;gap:4px}.category-tile svg{width:29px;height:29px;margin:0 0 5px}.category-tile strong{font-size:11px}.category-tile small{font-size:9px}.tool-category-nav{gap:7px}.tools-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tool-card{padding:19px 10px}.tool-card h3{font-size:14px}.portal-heading{gap:7px;margin-bottom:12px}.portal-heading h2{font-size:18px}.portal-heading>span{font-size:10px}.portal-heading>a{font-size:10px}.tool-category-grid,.tool-collections{grid-template-columns:1fr 1fr}.category-detail{padding:18px 12px}.portal-sidebar{display:flex;margin-top:10px}.portal-promo{min-height:165px}.sidebar-panel{padding:18px}.tool-collections{gap:10px}.tool-collection{min-height:150px}.portal-section{margin-top:24px}.news-category-nav{gap:7px;margin:16px 0}.news-category-nav a{font-size:10px;padding:12px 3px;gap:5px}.news-category-nav svg{width:17px;height:17px}.news-list-panel{padding:12px}.news-tabs{gap:10px;font-size:11px}.news-row{grid-template-columns:105px minmax(0,1fr);gap:12px;padding:16px 0;align-items:start}.news-thumb{aspect-ratio:1.1}.news-thumb>span:last-child{top:6px;left:5px;font-size:9px;padding:2px 7px}.news-row h2{font-size:14px;line-height:1.5;margin-bottom:7px}.news-row p{font-size:10px;-webkit-line-clamp:2}.news-byline{font-size:9px;margin-top:7px}.news-arrow{display:none}.filter-summary a{float:none;margin-left:10px}.portal-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.tool-card,.category-tile{transition:none;transform:none!important}}
@media(max-width:600px){.portal-sidebar{align-items:stretch}}
