﻿/* Homepage portal: isolated from the planner and account layouts. */
.portal-shell{display:grid;grid-template-columns:160px minmax(0,1240px) 160px;gap:28px;justify-content:center;max-width:1700px;margin:auto;padding:24px 24px 0;color:#d9d5cf}.portal-main{min-width:0}.portal-topline{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:#96938c;margin-bottom:18px}.portal-topline a{letter-spacing:0}.portal-hero{position:relative;min-height:380px;display:flex;align-items:center;border:1px solid #514231;background:linear-gradient(90deg,#090c0ee8,transparent),url('/public/img/d4agent-hero-v1.png') center 52%/cover;overflow:hidden}.portal-hero-copy{position:relative;padding:40px;z-index:1}.portal-kicker{font-size:10px;letter-spacing:2.5px;color:#b49a71;margin:0 0 10px}.portal-hero h1{font-size:clamp(30px,3vw,46px);font-weight:750;line-height:1.4;letter-spacing:2px;margin:18px 0;color:#eee8dc}.portal-hero-copy>p:not(.portal-kicker){font-size:13px;line-height:1.9;color:#b7b8b3}.portal-actions{display:flex;align-items:center;gap:26px;margin-top:24px;font-size:13px}.portal-primary{display:flex;gap:35px;background:linear-gradient(#923628,#5e201b);border:1px solid #b26846;padding:12px 20px;color:#fff0d7}.portal-hero-caption{position:absolute;right:20px;bottom:18px;font-size:10px;letter-spacing:3px;color:#b6aa92}.portal-search{display:flex;align-items:center;gap:24px;padding:18px 22px;background:#191a19;border:1px solid #35352f;border-top:0}.portal-search label{font-size:13px;white-space:nowrap;color:#bfa983}.portal-search>div{display:flex;flex:1;min-width:0}.portal-search input{width:100%;min-width:0;background:#101211;border:1px solid #41423a;padding:10px 12px;font-size:12px;color:#ece6da}.portal-search button{white-space:nowrap;background:#34342c;border:1px solid #535143;padding:10px 17px;font-size:12px}.portal-tools{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #3b3931;margin-top:18px;background:#161817}.portal-tool{display:flex;gap:12px;padding:20px 14px;border-right:1px solid #3b3931}.portal-tool:last-child{border:0}.portal-tool-number{font-family:Georgia,serif;font-size:24px;color:#8c7554}.portal-tool h2{font-size:14px;font-weight:650;color:#e4ddcc}.portal-tool h2 span{font-size:12px;color:#9a8462}.portal-tool p{font-size:10px;color:#a09f96;margin:6px 0 9px}.portal-tool small{font-size:9px;color:#9b8869;letter-spacing:1px}.portal-section{margin-top:32px}.portal-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}.portal-section-head h2,.portal-resources h2{font-size:22px;color:#e5dece;font-weight:650}.portal-section-head a{font-size:11px;color:#b5a17f}.portal-classes{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px}.portal-class{position:relative;height:155px;overflow:hidden;border:1px solid #454239;background:radial-gradient(ellipse at top,#41403b,#161919 80%)}.portal-class img{width:100%;height:100%;object-fit:cover;object-position:50% 17%;opacity:.85;transition:transform .2s}.portal-class span{position:absolute;inset:auto 0 0;text-align:center;padding:22px 0 10px;background:linear-gradient(transparent,#080a0bf5 65%);color:#e3d4b9;font-size:12px}.portal-class:hover img{transform:scale(1.04)}.portal-editorial{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px}.portal-note{font-size:11px;line-height:1.8;color:#96958e;margin:0 0 15px}.portal-builds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portal-build{display:flex;flex-direction:column;border:1px solid #3b3c34;background:linear-gradient(120deg,#232622,#151817);padding:18px;min-height:166px}.portal-build-meta{display:flex;justify-content:space-between;font-size:10px;color:#b49a71}.portal-build h3{font-size:15px;color:#dfdbd0;font-weight:600;line-height:1.6;margin:12px 0 8px}.portal-build p{font-size:10px;color:#a3a49b;margin-bottom:15px}.portal-build-bottom{display:flex;justify-content:space-between;margin-top:auto;border-top:1px solid #353a32;padding-top:12px;font-size:10px;color:#9eac9e}.portal-resources{margin-top:32px;padding:22px;border:1px solid #494333;background:linear-gradient(160deg,#27261f,#121615);align-self:start}.portal-resources h2{font-size:20px;margin-bottom:12px}.portal-resource{display:block;border-top:1px solid #474337;padding:17px 0}.portal-resource h3{font-size:13px;color:#d4c6a8;display:flex;justify-content:space-between}.portal-resource p{font-size:11px;color:#a2a196;line-height:1.7;margin-top:7px}.portal-advisor{display:grid;gap:8px;border:1px solid #655038;padding:14px;margin-top:10px;background:#32271e}.portal-advisor span{font-size:11px;color:#afaa9d}.portal-advisor strong{font-size:13px;color:#d6b687}.portal-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #373931;margin-top:38px;padding:24px 0 30px;font-size:10px;color:#96978c}.portal-footer strong{font-size:16px;color:#d9d6cb;margin-right:15px}.portal-footer strong span{color:#b89563}.portal-ad{padding-top:34px}.portal-ad>div{position:sticky;top:24px;height:600px;width:160px;border:1px dashed #393b33;background:linear-gradient(#191b1866,#10121022);display:flex;align-items:center;flex-direction:column;color:#787d6e;font-size:11px;letter-spacing:2px}.portal-ad>div>span:first-child{align-self:end;margin:10px;font-size:9px}.portal-ad-mark{margin-top:190px;font-size:32px;color:#555d4e}.portal-ad p{margin:12px 0}.portal-ad small{font-size:10px;color:#62695a}.portal-main a:hover{color:#f1d6a3}.portal-tool:hover,.portal-build:hover{background-color:#30312a;border-color:#8b7758}.portal-main a:focus-visible,.portal-main button:focus-visible,.portal-main input:focus-visible{outline:2px solid #d2ad72;outline-offset:3px}@media(min-width:1700px){.portal-hero{min-height:410px}.portal-class{height:175px}}@media(max-width:1399px){.portal-shell{grid-template-columns:minmax(0,1180px);padding:22px 28px 0}.portal-ad{display:none}}@media(max-width:900px){.portal-editorial{grid-template-columns:1fr}.portal-resources{margin-top:0}.portal-tools{grid-template-columns:repeat(2,1fr)}.portal-tool:nth-child(2){border-right:0}.portal-tool:nth-child(-n+2){border-bottom:1px solid #3b3931}.portal-classes{grid-template-columns:repeat(4,1fr)}.portal-class{height:170px}}@media(max-width:560px){.portal-shell{padding:16px 14px 0}.portal-topline{font-size:9px;letter-spacing:.8px}.portal-hero{min-height:365px;background-position:60% center}.portal-hero-copy{padding:25px 20px}.portal-hero h1{font-size:30px}.portal-hero-caption{display:none}.portal-kicker{font-size:9px;letter-spacing:1.4px}.portal-search{display:block;padding:14px}.portal-search label{display:block;margin-bottom:10px}.portal-search button{padding:8px 10px}.portal-tool{padding:15px 10px;gap:8px}.portal-tool-number{font-size:19px}.portal-tool h2{font-size:12px}.portal-tool p{line-height:1.6}.portal-tool small{font-size:8px}.portal-classes{gap:7px}.portal-class{height:120px}.portal-class span{font-size:11px}.portal-builds{grid-template-columns:1fr}.portal-section-head h2{font-size:20px}.portal-footer{flex-direction:column}}
/* Forged frames and stone surfaces echo the in-game camp. */
.portal-hero{box-shadow:inset 0 0 0 4px #080b0b88,0 8px 28px #0008}.portal-hero:after{content:"";position:absolute;inset:7px;border:1px solid #ba9b5b30;pointer-events:none}.portal-tools,.portal-resources,.portal-build{background-image:linear-gradient(110deg,#1c211ff0,#111512ed),url('/public/img/d4-s14-ui/background-barbarian-medium.jpg');background-size:cover;box-shadow:inset 0 0 0 3px #0003}.portal-section-head{border-bottom:1px solid #5c5039;padding-bottom:13px;position:relative}.portal-section-head:after{content:"◆";position:absolute;bottom:-7px;left:0;color:#9e8354;font-size:9px}.portal-class{box-shadow:inset 0 0 12px #000,0 3px 8px #0008;border-bottom:2px solid #806844}.portal-class:hover{border-color:#b59a63}.portal-primary{box-shadow:inset 0 0 0 3px #39120c55,0 3px 10px #0009}.portal-build:hover{border-color:#a68b59;background-image:linear-gradient(110deg,#343329ed,#171c17ed),url('/public/img/d4-s14-ui/background-barbarian-medium.jpg')}
/* Builds lead the first screen; the camp artwork supports the content. */
.portal-hero{min-height:165px;background-position:center 58%}.portal-hero-copy{padding:22px 28px;width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:24px}.portal-hero-copy .portal-kicker{grid-column:1;margin:0 0 8px}.portal-hero h1{grid-column:1;font-size:30px;line-height:1.35;margin:0 0 10px}.portal-hero-copy>p:not(.portal-kicker){grid-column:1;margin:0;font-size:12px}.portal-actions{grid-column:2;grid-row:1/4;margin:0;flex-direction:column;gap:12px}.portal-hero-caption{display:none}.portal-editorial{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.portal-editorial>.portal-section{margin-top:24px}.portal-builds{gap:12px}.portal-build{min-height:162px}.portal-resources{margin-top:24px}.portal-section-head h2{font-size:23px}.portal-search{padding:13px 20px}.portal-tools{margin-top:30px}@media(min-width:1700px){.portal-builds{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.portal-editorial{grid-template-columns:1fr}.portal-resources{margin-top:0}.portal-hero h1{font-size:27px}}@media(max-width:560px){.portal-hero{min-height:135px}.portal-hero-copy{padding:18px;display:block}.portal-hero h1{font-size:25px;margin-bottom:8px}.portal-hero-copy>p:not(.portal-kicker){font-size:11px}.portal-actions{display:none}.portal-search{padding:12px}.portal-search label{display:none}.portal-editorial>.portal-section{margin-top:20px}.portal-section-head h2{font-size:20px}.portal-build{min-height:145px;padding:15px}.portal-note{font-size:10px}.portal-topline{margin-bottom:12px}}
/* Neutral charcoal, cold iron, and blood-red selection. */
.portal-shell{color:#d2cfd0}.portal-tools,.portal-resources,.portal-build{background:linear-gradient(135deg,#242326,#141416);border-color:#454246;box-shadow:inset 0 0 0 3px #08080966}.portal-build:hover,.portal-tool:hover{background:linear-gradient(135deg,#30282a,#191619);border-color:#806164}.portal-build-meta,.portal-kicker,.portal-section-head a,.portal-resource h3,.portal-tool small,.portal-tool-number{color:#baa6a2}.portal-build-bottom{border-color:#403b3e;color:#b8b0b1}.portal-resource{border-color:#494044}.portal-note,.portal-resource p,.portal-build p,.portal-tool p{color:#a9a3a6}.portal-section-head{border-color:#645358}.portal-section-head:after{color:#a66d67}.portal-search{background:#1b191c;border-color:#454045}.portal-search input{background:#111013;border-color:#50484c;color:#e5e0e1}.portal-search button{background:#3b2b2e;border-color:#705055}.portal-search label{color:#c3b2ad}.portal-advisor{background:linear-gradient(#42272a,#291b1f);border-color:#785157}.portal-advisor strong{color:#dfc8be}.portal-ad>div{background:linear-gradient(#1c191c66,#14121422);border-color:#403b40;color:#8c858b}.portal-ad small,.portal-ad-mark{color:#787077}.portal-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}.portal-filters button{display:flex;gap:8px;align-items:center;background:#1b191c;border:1px solid #4b4348;color:#c1b9bb;font-size:12px;padding:9px 11px;min-height:38px;transition:background .15s}.portal-filters button span{font-size:10px;opacity:.7}.portal-filters button:hover{background:#35252a;border-color:#8b555c}.portal-filters button[aria-pressed=true]{background:linear-gradient(#74332f,#471f22);border-color:#a76861;color:#f2ddd5;box-shadow:inset 0 0 0 2px #200b0c66}.portal-empty{padding:24px;border:1px solid #4b4145;background:#1d181b;color:#beb4b7;font-size:13px;line-height:1.8}.portal-empty a{display:block;color:#d5aaa3;margin-top:8px}.portal-builds>[style*="display: none"]{display:none!important}
.portal-feed-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 18px;color:#b9afb3;font-size:12px}.portal-feed-controls label{display:flex;align-items:center;gap:8px}.portal-feed-controls select,.portal-feed-controls input{padding:8px;background:#161417;border:1px solid #55474e;color:#e5dbde;max-width:100%}.portal-genres{padding-top:10px;border-top:1px solid #453b40}.portal-like{padding:6px 10px;border:1px solid #715055;background:#291d22;color:#dfb9b9;font-size:12px}.portal-like[aria-pressed=true]{background:#602a30;color:#ffe0db}.portal-like:disabled{opacity:.6}.portal-build-bottom{align-items:center}.portal-empty button{padding:5px 12px;border:1px solid #785057;margin-left:10px}
/* Restore the full camp masthead; build filtering remains below class portraits. */
.portal-hero{min-height:410px;background-position:center 52%}.portal-hero-copy{display:block;width:auto;padding:40px}.portal-hero-copy .portal-kicker{margin:0 0 10px}.portal-hero h1{font-size:clamp(30px,3vw,46px);line-height:1.4;margin:18px 0;letter-spacing:2px}.portal-hero-copy>p:not(.portal-kicker){font-size:13px;line-height:1.9;margin:0;color:#b7b8b3}.portal-actions{display:flex;flex-direction:row;align-items:center;gap:26px;margin-top:24px}.portal-hero-caption{display:block}.portal-search{padding:18px 22px}.portal-tools{margin-top:18px}@media(max-width:900px){.portal-hero{min-height:380px}}@media(max-width:560px){.portal-hero{min-height:365px;background-position:60% center}.portal-hero-copy{padding:25px 20px}.portal-hero h1{font-size:30px}.portal-hero-caption{display:none}.portal-search{padding:14px}.portal-search label{display:block;margin-bottom:10px}}
.portal-community .portal-section{margin-top:24px}.portal-community .portal-builds{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-community .portal-section-head>a{display:none}@media(max-width:1000px){.portal-community .portal-builds{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.portal-community .portal-builds{grid-template-columns:1fr}}
/* A continuous field ledger, shared by home and community. */
.portal-build-ledger{border-top:2px solid #75615b;border-bottom:1px solid #50464a;background:linear-gradient(90deg,#1c1b1e,#141416)}.portal-build-row{display:grid;grid-template-columns:76px minmax(0,1fr) 112px;align-items:center;gap:20px;min-height:137px;padding:17px 20px;border-bottom:1px solid #403b3d;position:relative}.portal-build-row:last-child{border-bottom:0}.portal-build-row:before{content:'';position:absolute;left:0;top:18px;bottom:18px;width:2px;background:#7a3a35;opacity:.45}.portal-build-row:hover{background:linear-gradient(90deg,#35242699,#27232666)}.portal-build-row:hover:before{opacity:1;background:#b76450}.portal-row-portrait{position:relative;width:70px;height:96px;overflow:hidden;background:radial-gradient(#494043,#171619);border:1px solid #63504c;box-shadow:inset 0 0 0 3px #0005}.portal-row-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 14%;filter:saturate(.6)}.portal-row-portrait>span{position:absolute;bottom:0;left:0;right:0;padding:16px 2px 5px;text-align:center;font-size:10px;color:#decfc3;background:linear-gradient(transparent,#0b0a0bea 55%)}.portal-row-content{min-width:0}.portal-row-byline{display:flex;gap:12px;align-items:center;font-size:11px;color:#b4a8a5;margin-bottom:10px}.portal-row-source{font-size:9px;color:#89818a;border-left:1px solid #51454c;padding-left:12px}.portal-build-row h3{font-size:17px;font-weight:650;line-height:1.6;margin:0 0 12px;color:#e8ddd2;overflow-wrap:anywhere}.portal-build-row h3 a:hover{color:#f0c79d}.portal-row-tags{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:11px;color:#969095}.portal-row-tags>span:first-child{color:#c5a99e}.portal-row-tags a{color:#ac9994}.portal-row-stats{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.portal-row-stats .portal-like{border:0;background:transparent;font-size:13px;padding:6px 0 10px;color:#bea3a4}.portal-row-stats .portal-like:hover,.portal-row-stats .portal-like[aria-pressed=true]{color:#f09d94}.portal-row-stats time{font-size:11px;color:#a39b9c}.portal-row-stats>span{font-size:9px;color:#777079}.portal-community .portal-build-row{min-height:132px}.portal-community .portal-row-content h3{font-size:18px}@media(max-width:700px){.portal-build-row{grid-template-columns:54px minmax(0,1fr) 80px;gap:12px;padding:15px 12px}.portal-row-portrait{width:52px;height:78px}.portal-build-row h3,.portal-community .portal-row-content h3{font-size:14px}.portal-row-tags{font-size:10px;gap:7px}.portal-row-byline{font-size:10px;gap:8px}.portal-row-source{display:none}.portal-row-stats time{font-size:10px}}@media(max-width:420px){.portal-build-row{grid-template-columns:46px minmax(0,1fr);gap:10px}.portal-row-portrait{width:44px;height:70px;grid-row:1/3;align-self:start}.portal-row-stats{grid-column:2;flex-direction:row;align-items:center;gap:12px}.portal-row-stats .portal-like{padding:0;margin-right:auto}.portal-row-stats>span{display:none}.portal-build-row h3{margin-bottom:8px}.portal-row-byline{margin-bottom:5px}}
.portal-build-row{grid-template-columns:76px minmax(0,1fr) minmax(220px,300px) 86px;gap:16px}.portal-row-loadout{min-width:0}.portal-skill-strip{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.portal-skill{display:block;position:relative;width:43px;height:43px;border:1px solid #8b7360;background:#121013;box-shadow:inset 0 0 0 2px #0008}.portal-skill img{width:100%;height:100%;object-fit:cover}.portal-skill small{position:absolute;bottom:-1px;right:-1px;min-width:14px;text-align:center;background:#0b090de8;border:1px solid #7c6253;font-size:9px;color:#edd7ba}.portal-skill-empty{display:block;text-align:center;line-height:40px;color:#776a6c}.portal-row-loadout>p{font-size:9px;color:#96888c;text-align:right;margin:8px 0 0}.portal-skill:hover{border-color:#edd0a0;box-shadow:0 0 8px #b8754444}@media(max-width:1000px){.portal-build-row{grid-template-columns:60px minmax(0,1fr) 86px}.portal-row-loadout{grid-column:2;grid-row:2}.portal-row-stats{grid-column:3;grid-row:1/3}.portal-row-portrait{grid-row:1/3}.portal-skill-strip{justify-content:flex-start}.portal-row-loadout>p{text-align:left}}@media(max-width:600px){.portal-build-row{grid-template-columns:46px minmax(0,1fr);gap:10px}.portal-row-stats{grid-column:2;grid-row:3;flex-direction:row;align-items:center}.portal-row-portrait{width:44px;height:70px}.portal-skill{width:34px;height:34px}.portal-row-stats .portal-like{margin-right:auto;padding:0}}

/* Homepage tier board. */
.portal-tier-tabs{display:flex;gap:8px;border-bottom:1px solid #594346;margin-top:20px;padding-bottom:8px}
.portal-tier-tabs button{min-height:40px;padding:8px 18px;border:1px solid #55464a;background:#211b1e;color:#c8b9ae;font-size:14px;cursor:pointer}
.portal-tier-tabs button:hover,.portal-tier-tabs button:focus-visible{border-color:#ac7567;color:#f0d8bd}
.portal-tier-tabs button[aria-pressed=true]{border-color:#ae8065;background:linear-gradient(#634032,#322221);color:#f4d9b3;box-shadow:inset 0 -2px #d3a06c}
.portal-tier-no-candidates{margin:14px 0 18px}
.portal-tier-variant{display:block;color:#c5aa91;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:600px){.portal-tier-tabs button{flex:1;padding:8px 10px}}
.portal-tier-heading{display:flex;justify-content:space-between;align-items:center;margin:22px 0 10px;gap:12px}.portal-tier-heading h3{font-size:19px;color:#e5dece}.portal-tier-heading>span{font-size:11px;color:#ad9b84}.portal-tier-board{min-width:0}.portal-tier-row{--tier:#b47770;display:grid;grid-template-columns:72px minmax(0,1fr);border:1px solid #453b40;margin-bottom:10px;background:#151416}.portal-tier-row[data-tier=A]{--tier:#b49a71}.portal-tier-row[data-tier=B]{--tier:#879d89}.portal-tier-row[data-tier=C]{--tier:#8297ae}.portal-tier-row[data-tier=unrated]{--tier:#96918d}.portal-tier-rank{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 4px;color:var(--tier);border-right:2px solid var(--tier);background:#211d20}.portal-tier-rank strong{font:700 30px Georgia,serif}.portal-tier-rank span{font-size:11px}.portal-tier-row[data-tier=unrated] .portal-tier-rank strong{font:600 14px sans-serif}.portal-tier-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;padding:10px;min-width:0}.portal-tier-card{display:flex;gap:12px;min-width:0;padding:10px;border:1px solid #42383c;background:linear-gradient(120deg,#282125,#1b191b);transition:border-color .15s}.portal-tier-card:hover,.portal-tier-card:focus-visible{border-color:var(--tier);outline:1px solid var(--tier)}.portal-tier-card>img{width:48px;height:64px;object-fit:cover;object-position:top;border:1px solid #504348}.portal-tier-card>div{min-width:0}.portal-tier-class,.portal-tier-author,.portal-tier-card small{display:block;font-size:10px;color:#a99f9f;line-height:1.7}.portal-tier-class{color:#b49a71}.portal-tier-card h4{font-size:13px;line-height:1.5;color:#e5dbde;margin:3px 0;overflow-wrap:anywhere}.portal-tier-empty{font-size:11px;color:#8e878b;padding:16px 8px;margin:0}@media(max-width:600px){.portal-tier-row{grid-template-columns:50px minmax(0,1fr)}.portal-tier-cards{grid-template-columns:minmax(0,1fr);padding:7px}.portal-tier-heading>span{font-size:10px}.portal-tier-card{padding:8px}}
.portal-tier-cards{grid-template-columns:repeat(auto-fit,minmax(205px,1fr))}
.portal-tier-card{position:relative;align-items:center;gap:9px;min-height:61px;padding:6px 8px;border-color:#3e373b;background:#191719}
.portal-tier-card:before,.portal-tier-card:after{content:"";position:absolute;width:9px;height:9px;pointer-events:none}
.portal-tier-card:before{top:-1px;left:-1px;border-top:1px solid var(--tier);border-left:1px solid var(--tier)}
.portal-tier-card:after{right:-1px;bottom:-1px;border-right:1px solid var(--tier);border-bottom:1px solid var(--tier)}
.portal-tier-card .portal-tier-icon{flex:0 0 42px;width:42px;height:42px;object-fit:contain;object-position:center;background:#100f11;border:1px solid #615558}
.portal-tier-card .portal-tier-card-copy{flex:1;min-width:0}
.portal-tier-card h4{margin:0 0 4px;font-size:13px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-tier-card .portal-tier-author{font-size:10px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-tier-card .portal-tier-emblem{flex:0 0 31px;width:31px;height:34px;object-fit:contain;border:0;opacity:.4;filter:grayscale(1)}
.portal-tier-empty{grid-column:1/-1}
/* Game emblems replace ordinal numbers in the home tool shortcuts. */
.portal-tool{align-items:center;gap:14px;min-width:0;padding:20px 16px}
.portal-tool-icon{display:flex;align-items:center;justify-content:center;flex:0 0 62px;width:62px;height:72px;background:radial-gradient(ellipse,#b5965822,transparent 72%)}
.portal-tool-icon img{display:block;width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 3px 3px #000);transition:filter .15s}
.portal-tool:first-child .portal-tool-icon img{width:50px;height:56px;filter:sepia(.5) saturate(.7) brightness(1.18) drop-shadow(0 3px 3px #000)}
.portal-tool>div{min-width:0}
.portal-tool h2{font-size:16px;line-height:1.5}
.portal-tool p{font-size:12px;line-height:1.7;color:#c0b8ad;margin:6px 0 9px}
.portal-tool small{font-size:10px;line-height:1.5;letter-spacing:.5px;color:#b7a48d}
.portal-tool:hover .portal-tool-icon img{filter:brightness(1.2) drop-shadow(0 3px 5px #000)}
@media(min-width:901px) and (max-width:1100px){.portal-tool{gap:9px;padding:18px 12px}.portal-tool-icon{flex-basis:48px;width:48px}.portal-tool-icon img{width:46px;height:50px}.portal-tool h2{font-size:15px}}
@media(max-width:560px){.portal-tool{flex-direction:column;align-items:flex-start;gap:8px;padding:16px 14px}.portal-tool-icon{flex-basis:auto;width:54px;height:56px}.portal-tool-icon img{width:50px;height:50px}.portal-tool h2{font-size:15px}.portal-tool p{font-size:12px;min-height:41px}.portal-tool small{font-size:10px;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){.portal-tool-icon img{transition:none}}
