/* Customer portal only. Keeps all permissions, routes and authentication intact. */
@font-face{font-family:Manrope;src:url('/store/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--blue:#005efe;--blue2:#005efe;--bg:#f5f6f8;--text:#141922;--muted:#596577;--line:#dce1e8;--soft:#eff3f9;--radius:8px;--radiusSm:5px;--shadow:none}
.portalBrandArt{position:relative;display:block;width:130px;height:46px;overflow:hidden;flex-shrink:0}
.portalBrandArt img{position:absolute;top:50%;transform:translateY(-50%);width:130px;height:130px;max-width:none}
.portalBrand>.portalBrandArt{padding:0}
.portalSidebar{border-right:1px solid var(--line)}
.portalNavItem{border-radius:5px;font-size:13px;transition:background 160ms,color 160ms}
.portalNavItem.active{background:#eaf1ff;box-shadow:inset 3px 0 var(--blue)}
.portalCompany{background:#f4f6f9;border:0;border-radius:5px}
.portalTopbar{background:#fff;backdrop-filter:none}
.portalTopbar h1{font-size:24px}
.heroCard{background:#19212d;border-radius:6px;box-shadow:none;padding:28px}
.heroCard:after{display:none}
.heroCard h2{font-size:27px}
.heroMeta span{border-radius:4px}
.statCard,.panel,.productCard,.storeCard,.supportConversation,.supportFactsPanel,.portalModal{border-radius:6px;box-shadow:none}
.statCard:before{width:2px}
.statCard b{font-size:26px}
.userAvatar{background:var(--blue);box-shadow:none;border-radius:5px}
.portalLoginPage{background:#f4f6f9}
.portalLoginShell{border:1px solid var(--line);border-radius:6px;box-shadow:none}
.portalLoginBrand{background:#edf1f6;color:var(--text)}
.portalLoginBrand:after,.portalLoginBrand:before{display:none}
.portalLoginBrand h1{font-size:34px;line-height:1.15;letter-spacing:-.04em}
.portalLoginBrand p,.portalLoginBrand small{color:var(--muted)}
.portalEyebrow.light{color:var(--blue)}
.portalLoginFormWrap{background:white}
.portalLoginFormHead h2{font-size:28px}
.portalForm input,.portalForm select,.portalForm textarea,.btn{border-radius:5px}
.btn.primary{background:var(--blue);box-shadow:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.portalView:not(.hidden){animation:portalState 180ms ease-out}
@keyframes portalState{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:none}}
body,input,button,select,textarea{font-family:Manrope,system-ui,sans-serif}
.portalNavItem,.portalCompany,.userAvatar,.heroMeta span{border-radius:12px}
.portalNavItem.active{box-shadow:none;background:#eaf1ff}
.statCard,.panel,.productCard,.storeCard,.supportConversation,.supportFactsPanel,.portalModal{border-radius:20px;border:1px solid #e4e9f2;box-shadow:0 5px 18px #17233e05}
.heroCard{border-radius:22px;background:linear-gradient(125deg,#10254b,#074da5);box-shadow:0 12px 32px #10254b14}
.portalLoginPage{background:radial-gradient(ellipse at 20% 20%,#e6efff,transparent 60%),#fafbfe}
.portalLoginShell{border-radius:26px;box-shadow:0 20px 70px #17233e0d;overflow:hidden}
.portalLoginBrand{background:linear-gradient(145deg,#eef4ff,#e0ecff)}
.portalForm input,.portalForm select,.portalForm textarea,.btn{border-radius:12px}
.btn.primary{background:linear-gradient(135deg,#1670ff,#005efe);box-shadow:0 5px 14px #005efe20}
.btn{transition:transform 180ms,box-shadow 180ms}.btn:hover{transform:translateY(-2px)}
@media(max-width:820px){.portalLoginBrand{min-height:240px}.portalLoginBrand h1{font-size:27px}.portalTopbar h1{font-size:22px}}
@media(max-width:820px){
 .portalShell{display:block}
 .portalSidebar{display:flex;position:relative;height:auto;top:auto;bottom:auto;width:100%;transform:none;box-shadow:none;padding:14px 16px;gap:12px;border-right:0;border-bottom:1px solid var(--line)}
 .portalSidebar .portalBrand{display:flex}.portalSidebar .portalBrandArt{width:100px;height:32px}.portalSidebar .portalBrandArt img{width:100px;height:100px}
 .portalSidebar .portalCompany{display:none}
 .portalSidebar .portalNav{display:flex;flex-direction:row;overflow-x:auto;max-width:100%;gap:6px;padding-bottom:4px;scrollbar-width:thin}
 .portalNavItem{flex:0 0 auto;min-height:42px;padding:10px;font-size:12px}.portalNavItem b{display:block}.portalNavDivider{display:none}
 .portalSidebarFoot{position:absolute;right:16px;top:14px;padding:0;border:0;margin:0}.portalSidebarFoot .portalUserMini{display:none}
 .portalTopbar{position:relative;top:auto}.topbarUser{min-width:0;width:auto;padding:6px}.topbarUser>span:last-child{display:none}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
