/* Layout refinement, isolated from the approved sign-in artwork. */
.portal{--sidebar:228px}
.portal .sidebar{padding:18px 14px 12px}
.community-wordmark{display:flex;flex-direction:column;align-items:center;padding:0;gap:8px}
.community-logo{display:block;width:200px;height:117px;background:url('./brand-lockup-small.webp') left center/427px auto no-repeat;mix-blend-mode:normal}
.community-label{font:500 .54rem/1.3 'Bahnschrift','Segoe UI',sans-serif;letter-spacing:.22em;color:#a39b8e}
.portal .sidebar-rule{margin:16px 9px}
.portal .nav-label{margin-bottom:9px}
.portal .sidebar nav{gap:6px}
.portal .sidebar nav>a{min-height:43px;padding:10px 12px}
.portal .sidebar-art{min-height:0;height:145px;max-height:145px;padding:75px 22px 14px;margin:0 -14px;flex-shrink:1}
.portal .sidebar-art::before{background:linear-gradient(#151719 0%,#15171920 25%,#15171930 75%,#151719),url('./hero.webp') left 35%/auto 300px no-repeat;opacity:.82;filter:saturate(.65)}
.sidebar-signout{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:37px;margin-top:8px;background:transparent;border:1px solid transparent;border-radius:6px;color:#a7a7a2;font-size:.73rem;cursor:pointer}
.sidebar-signout>.icon,.sidebar-signout>span>.icon{width:15px;height:15px}.sidebar-signout:hover{color:#ecd4c1;background:#332826;border-color:#66473b}
.portal .topbar{position:relative;min-height:70px;height:70px;padding:9px 24px;gap:12px}
.header-season{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:164px;display:flex;align-items:center;mix-blend-mode:normal}
.header-season img{display:block;width:100%;height:56px;object-fit:contain;mix-blend-mode:normal}
.portal .breadcrumb{gap:10px}.portal .topbar-actions{margin-left:auto}.portal .server-identity{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.portal main{width:100%;max-width:1800px;min-height:calc(100dvh - 111px);padding:18px 24px}
.portal .footer{min-height:41px;padding:10px 24px}
.portal .page-heading{margin-bottom:14px;align-items:center;gap:14px}.portal .page-heading h1{font-size:1.5rem;margin-bottom:4px}.portal .page-heading p{font-size:.76rem;margin:0}.portal .page-heading .button{min-height:35px;font-size:.74rem}
.portal .section-topline,.portal .map-topline{margin:0 0 12px;font-size:.75rem}.portal .section-topline p{margin:0}
.portal .source-note{line-height:1.55}

/* One continuous piece of scenery behind the overview, not a separate image card. */
.overview-layout{max-width:none;position:relative;isolation:isolate;padding:0 18px 18px;border:1px solid #484742;border-radius:12px;overflow:hidden;background:#181c1f}
.overview-layout::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#14181c10 0,#14181c1a 210px,#14181ce8 430px,#181c1f 100%),url('./hero.webp') center top/100% auto no-repeat}
.overview-cover{min-height:188px;height:188px;margin:0;padding:23px 6px;overflow:visible;border:0;border-radius:0;background:transparent;align-items:flex-start}
.overview-cover::before,.overview-cover::after{display:none}
.overview-cover .cover-copy{max-width:38%;padding:10px 16px 12px;background:linear-gradient(90deg,#10161cda,#10161c60);border-left:2px solid #c99b79;border-radius:0 5px 5px 0}
.overview-cover .cover-copy h1{font-size:clamp(1.5rem,2vw,2rem);font-weight:550;margin:7px 0;color:#f3e4d3;letter-spacing:-.03em;overflow-wrap:anywhere;text-shadow:0 2px 7px #000}
.overview-cover .cover-copy .eyebrow{font-size:.55rem;letter-spacing:.14em}.overview-cover .cover-copy p{font-size:.78rem}.overview-cover .cover-status{margin:10px 8px 0 0}
.overview-layout .stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 14px}
.overview-layout .stat{min-height:92px;padding:12px 17px;background:linear-gradient(140deg,#182128e8,#161b20e8);border-color:#8e7c6755;box-shadow:0 5px 18px #0003}
.overview-layout .stat strong{font-size:1.5rem;margin:6px 0 3px}.overview-layout .stat small{font-size:.65rem;color:#abb3b5}
.overview-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.overview-cards>.card{min-height:278px;background:linear-gradient(140deg,#242b30f5,#1c2226fa);border-color:#51545699}
.overview-cards .card-heading{padding:14px 16px}.overview-cards .card-heading h2{font-size:.83rem}.overview-cards .card-body{padding:16px;min-width:0}
.overview-rules .rule-list{grid-template-columns:1fr 1fr;gap:18px 12px;padding:3px 0}.overview-rules .rule-list strong{font-size:.74rem}.overview-rules .rule-list li>.icon{display:none}.overview-rules .rule-list small{color:#a5b0b3;font-size:.63rem}
.overview-survivor{grid-column:auto}.overview-survivor .card-body{display:block}.overview-survivor .person-summary{flex-wrap:nowrap;margin-bottom:15px}.overview-survivor .person-summary h3{font-size:.96rem}.overview-survivor .survivor-link{margin-top:13px}.overview-survivor .survivor-place{display:flex;border-bottom:1px solid #444c50;padding-bottom:12px}
.overview-connect .server-address code{font-size:.76rem;overflow-wrap:anywhere}.overview-connect .connection-hint{font-size:.68rem;color:#a8b0b2}
.overview-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.overview-shortcuts>a,.overview-shortcuts>button{min-height:59px;padding:11px 16px;background:#20272bcc}.overview-shortcuts small{display:block}
.overview-online .card-body{display:flex;flex-direction:column;gap:10px}.online-summary{display:flex;align-items:center;gap:6px;font-size:.73rem}.online-summary strong{font-weight:500}.online-summary small{margin-left:auto;font-size:.6rem;color:#96a6aa}.online-summary .status-dot{margin:0}
.online-players{margin:0;padding:0;list-style:none;max-height:145px;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#667477 #1b2429;scroll-margin:10px}
.online-players li{display:flex;align-items:center;gap:9px;min-height:35px;padding:7px 1px;border-bottom:1px solid #3c484b;font-size:.79rem;color:#dedbd1}.online-players li>.icon{width:15px;height:15px;color:#a89b87;flex-shrink:0}.online-players li>span:first-of-type{overflow-wrap:anywhere;min-width:0}.online-indicator{flex-shrink:0;width:5px;height:5px;border-radius:50%;background:#9bc59c;margin-left:auto}.online-update{font-size:.58rem;line-height:1.4;color:#93a5a9;margin:auto 0 0}.online-empty{font-size:.76rem;line-height:1.6;color:#adb6b5;margin:0}.online-empty .badge{margin-bottom:7px}

/* Compact section art leaves the main controls and results in the first viewport. */
.reference-banner{position:relative;min-height:122px;padding:18px 24px;margin:0 0 16px;justify-content:space-between;isolation:isolate;background-color:#171e23;background-size:cover;background-position:center 62%;border-color:#4d5555}
.catalog-banner{background-image:linear-gradient(90deg,#11191fe8,#11191f75 42%,transparent 80%),url('./supplies.webp')}
.craft-banner{background-image:linear-gradient(90deg,#11191feb,#11191f70 45%,#11191f20),url('./workshop.webp')}
.reference-banner::before{display:none}
.reference-banner h1{font-size:1.65rem;font-weight:550;letter-spacing:-.02em;line-height:1.2;margin:6px 0;color:#f0e4d3}.reference-banner p{font-size:.76rem;margin:5px 0 0;line-height:1.4;color:#bac4c3}.reference-banner .eyebrow{font-size:.52rem}.reference-count{padding:9px 12px;border:1px solid #a997704f;border-radius:6px;background:#141d25dc;font-size:.59rem}
.catalog-controls,.craft-controls{gap:12px}.catalog-summary,.craft-results-caption{margin:10px 0;font-size:.72rem}.catalog-grid{gap:1px}.catalog-item{min-height:137px;padding:13px 16px}.catalog-item>strong{font-size:.79rem}.catalog-item>.item-art{height:46px}.catalog-item>.item-category{font-size:.56rem}.catalog-results .pagination{padding:9px 15px}.catalog-source{margin:10px 0 0}
.craft-layout{height:calc(100dvh - 445px);max-height:680px;min-height:360px;grid-template-columns:290px minmax(0,1fr);gap:14px}.recipe-detail-heading{padding:13px 18px}.recipe-detail-heading h3{font-size:1.15rem}.recipe-detail-body{padding:17px 18px}.craft-page>.source-note{font-size:.65rem;margin:10px 0 0}

.character-layout{grid-template-columns:255px minmax(0,1fr);gap:17px}.character-layout .record-list{display:flex;flex-direction:column;gap:10px;max-height:500px;overflow:auto;scrollbar-width:thin}.character-layout .record-choice{padding:13px;flex-shrink:0}.character-detail .character-banner{min-height:157px;padding:23px 26px}.character-detail .definition-grid{padding:20px 26px;gap:19px}.character-detail .character-banner::before{background:linear-gradient(90deg,#131819ee,#1318197a 50%,#13181905),url('./greenhouse.webp') center 51%/cover}.character-detail>.button-row{padding:0 26px}.character-detail>.source-note{padding:13px 26px 18px}
.character-motto{height:104px;display:flex;align-items:center;gap:17px;margin-top:14px;padding:8px 21px 8px 12px;background:linear-gradient(110deg,#20282b,#1a2023);border:1px solid #454a46;border-radius:9px;overflow:hidden}.character-motto>img{width:95px;height:95px;object-fit:contain;mix-blend-mode:normal;flex-shrink:0}.character-motto h3{font:400 1.07rem Georgia,serif;margin:0 0 7px;color:#d6c9b3}.character-motto small{font-size:.73rem;color:#9bacae}.character-motto>.text-link{margin-left:auto;font-size:.74rem;white-space:nowrap;display:flex;align-items:center;gap:12px}
.map-layout{grid-template-columns:minmax(0,1fr) 267px}.map-card>.card-heading{padding:12px 18px}.map-card>.card-heading h2{font-size:.94rem}.map-card>.card-heading p{margin:3px 0 0;font-size:.65rem}.map-canvas-wrap{height:clamp(400px,calc(100dvh - 365px),820px);min-height:400px}.map-side{padding:17px;max-height:clamp(400px,calc(100dvh - 365px),820px);overflow:auto;scrollbar-width:thin}.map-side h2{font-size:.94rem}.map-side>.secondary{font-size:.68rem}.map-side input{min-height:36px;font-size:.73rem}.map-record{padding:9px}.map-expanded .map-canvas-wrap,.map-expanded .map-side{height:100%;max-height:none;min-height:0}

.store-cover{min-height:168px;padding:22px 28px;background:radial-gradient(ellipse at 100% 0,#70543233,transparent 65%),linear-gradient(120deg,#20272b,#182024);position:relative}.store-cover>div{max-width:100%;flex:1}.store-cover>img{width:190px;height:160px;max-width:25%;object-fit:contain;mix-blend-mode:normal}.store-cover h1{font-size:1.65rem;line-height:1.2;font-weight:550;margin:7px 0 0;color:#f0e4d3}.store-cover p{font-size:.76rem;line-height:1.5;max-width:760px;margin:8px 0 10px}.store-cover .store-tagline{font:italic 1rem Georgia,serif;color:#cabb9f;margin:5px 0 8px}.store-cover .eyebrow{font-size:.53rem}.store-section-heading{margin:18px 0 14px}.store-collection{padding:16px 20px}.collection-art{height:165px;margin-bottom:12px}.store-collection h3{font-size:1.4rem}.store-collection p{margin-bottom:15px}.store-collection .badge.season-active{background:#293e35;color:#bed3bc;border-color:#53755e}.store-collection>small{margin-top:9px}
.signout-art{height:195px;padding:0 24px 0 10px;background:radial-gradient(ellipse at 20% 50%,#6e52262e,transparent 70%),#141a1d;gap:8px}.signout-art::after{display:none}.signout-art>img{width:210px;height:195px;object-fit:contain;mix-blend-mode:normal}.signout-art>span{max-width:135px;align-self:center;line-height:1.9;color:#c4b596;font-size:.66rem;letter-spacing:.13em}
.profile-cover{min-height:0;height:200px}.profile-grid{gap:17px}.profile-grid .card-heading{padding:14px 19px}.profile-grid .card-body{padding:18px 20px}.profile-grid .alias-form{margin:0 0 18px;padding:14px}.profile-grid .stack{gap:14px}

@media(min-width:1101px){
 .catalog-results #item-results{max-height:calc(100dvh - 500px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#586669 #1a2326}
 .profile-grid .card-body>.source-note{margin-bottom:0}
}
@media(max-width:1440px) and (min-width:1101px){.overview-cards,.overview-layout .stat-grid,.overview-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-cards>.card{min-height:230px}.overview-cover{height:160px;min-height:160px}.overview-layout .stat{min-height:88px}.online-players{max-height:115px}.overview-layout::before{background-size:auto 405px}}
@media(max-width:1100px){
 .portal .header-season{width:132px}.portal .server-identity{max-width:135px}.portal .preview-tag{display:none}
 .overview-cards,.overview-layout .stat-grid,.overview-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-cards>.card{min-height:245px}.overview-cover .cover-copy{max-width:65%}.overview-layout::before{background-size:auto 430px}
 .craft-layout{height:550px;max-height:none;min-height:0;grid-template-columns:245px minmax(0,1fr)}
 .character-layout{grid-template-columns:1fr}.character-layout .record-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-height:240px}.character-layout>aside>.source-note{margin:8px 0 0}
 .map-layout{grid-template-columns:minmax(0,1fr) 230px}.map-canvas-wrap{height:500px}.map-side{max-height:500px}
}
@media(max-width:760px){
 .portal .topbar{padding:9px 14px;min-height:61px;height:61px}.portal .breadcrumb{font-size:.7rem}.portal .header-season{position:static;transform:none;margin-left:auto;width:112px}.header-season img{height:43px}.portal .topbar-actions{margin:0;gap:7px}.portal .topbar-actions>a{display:none}.portal .topbar-actions .icon-button{width:30px}.portal main{padding:14px;min-height:calc(100dvh - 104px)}.portal .footer{padding:10px 14px}.portal .sidebar-art{height:115px;max-height:115px;padding-top:58px}
 .overview-layout{padding:0 12px 12px}.overview-cover{height:auto;min-height:195px;padding:17px 0}.overview-cover .cover-copy{max-width:100%;width:fit-content;padding:9px 12px}.overview-cover .cover-copy h1{font-size:1.55rem}.overview-cover .cover-status{margin:14px 0 0;width:fit-content}.overview-layout::before{background-size:auto 360px;background-position:60% 0}.overview-layout .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px}.overview-layout .stat{min-height:102px;padding:11px 8px}.overview-layout .stat strong{font-size:1.02rem}.overview-layout .stat small{font-size:.55rem}.overview-layout .stat-label{font-size:.58rem}.overview-cards{grid-template-columns:1fr;gap:12px}.overview-cards>.card{min-height:0}.overview-shortcuts{grid-template-columns:1fr;gap:10px}.online-players{max-height:175px}
 .reference-banner{min-height:114px;padding:16px 18px;margin-bottom:13px;background-position:65% center}.reference-banner h1{font-size:1.55rem}.reference-banner p{font-size:.71rem;max-width:92%}.catalog-item{min-height:137px;padding:13px}.catalog-item>strong{font-size:.75rem}.catalog-results #item-results{max-height:none}.catalog-controls,.craft-controls{gap:10px}.craft-layout{display:flex;flex-direction:column;height:auto;max-height:none}.craft-detail{min-height:450px}.craft-browser{max-height:340px}.craft-page>.source-note{font-size:.61rem}
 .character-layout .record-list{grid-template-columns:1fr;max-height:235px}.character-detail .character-banner{padding:20px;min-height:150px}.character-detail .definition-grid{padding:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.character-detail>.button-row{padding:0 20px}.character-detail>.source-note{padding:14px 20px}.character-motto{height:112px;padding:8px 12px;gap:9px}.character-motto>img{width:86px;height:86px}.character-motto h3{font-size:1rem;line-height:1.4}.character-motto small{font-size:.65rem}.character-motto>.text-link{display:none}
 .map-layout{grid-template-columns:1fr}.map-canvas-wrap{height:440px;min-height:350px}.map-side{max-height:430px}.map-topline{flex-wrap:wrap;gap:9px}.map-expanded .map-layout{display:grid;grid-template-columns:1fr}.map-expanded .map-side{display:none}
 .store-cover{min-height:0;padding:20px;text-align:left}.store-cover>img{max-width:100%;width:140px;height:125px;align-self:center}.store-cover .store-tagline{font-size:.95rem}.store-section-heading h3{line-height:1.4}.store-section-heading p{line-height:1.6}.store-grid{grid-template-columns:1fr}.store-collection{padding:20px}.collection-art{height:180px}.signout-art{height:170px;padding:0 12px}.signout-art>img{width:180px;height:170px}.signout-art>span{display:block!important;font-size:.55rem;max-width:120px}
 .profile-cover{height:215px}.profile-grid .card-body{padding:18px}.profile-grid .alias-form{padding:12px}
}
@media(prefers-reduced-motion:reduce){.portal *{scroll-behavior:auto}}
