.portal-layout{background:#f5f7fb;display:flex;min-height:calc(100vh - 64px)}.portal-shell{flex:0 0 260px;width:260px}.portal-sidebar{background:#fff;border-right:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 64px);overflow-y:auto;padding:24px 16px;position:sticky;top:64px;width:260px}.logo-mark{color:#0f172a;flex:1;font-size:18px;font-weight:700}.sidebar-collapse{background:transparent;border:0;color:#6b7280;cursor:pointer;font-size:20px}.sidebar-profile{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;color:inherit;display:flex;gap:10px;margin-top:auto;padding:10px 12px;text-decoration:none}.sidebar-avatar{align-items:center;background:#7c3aed;border-radius:999px;color:#fff;display:flex;flex-shrink:0;font-size:22px;font-weight:700;height:36px;justify-content:center;width:36px}.sidebar-profile-info{display:flex;flex-direction:column;min-width:0}.sidebar-profile-name{color:#111827;font-size:14px;font-weight:600;line-height:1.2}.sidebar-profile-email{color:#6b7280;display:block;font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-nav{flex:1}.portal-nav ul{list-style:none;margin:0;padding:0}.portal-nav li{margin:0 0 6px;padding:0}.portal-nav a{align-items:center;border-radius:8px;color:#1e293b;display:flex;font-size:15px;font-weight:500;min-height:44px;padding:10px 14px;text-decoration:none;transition:background .2s ease,color .2s ease}.portal-nav a:hover{background:#f3f4f6;color:#111827}.portal-nav .hs-menu-item.active-branch>a,.portal-nav .hs-menu-item.active>a{background:#eef2ff;color:#4338ca;font-weight:600}.portal-main{flex:1 1 auto;padding:32px}.portal-main-inner{max-width:1360px}@media (max-width:991px){.portal-layout{flex-direction:column}.portal-shell,.portal-sidebar{width:100%}.portal-sidebar{min-height:auto;position:relative}.portal-main{padding:20px}}.portal-header{align-items:center;background:#000;background:linear-gradient(90deg,#000,#940002 53%,#000);color:#fff;display:flex;height:64px;padding:0 24px;position:sticky;top:0;z-index:1000}.portal-header-inner{align-items:center;display:flex;justify-content:space-between;width:100%}.portal-title{font-size:18px;font-weight:600}.portal-header-right{align-items:center;display:flex;gap:16px}.portal-user{font-size:14px;opacity:.9}.portal-login-btn,.portal-logout-btn{background:#fff;border-radius:6px;color:#6b21a8;font-size:14px;font-weight:600;padding:8px 14px;text-decoration:none}.portal-header-left{align-items:center;display:flex;gap:12px}.portal-logo{height:36px;object-fit:contain;width:auto}.portal-nav a:before{display:inline-block;font-family:Font Awesome\ 6 Free;font-weight:900;margin-right:10px;text-align:center;width:16px}.portal-nav a[href="https://portal.us.solidcam.com"]:before{content:"\f015"}.portal-nav a[href*=tickets]:before{content:"\f007"}.portal-nav a[href*=knowledge-base]:before{content:"\f059"}.portal-nav a[href*=documentation]:before{content:"\f15c"}.portal-nav a[href*=downloads]:before{content:"\f019"}.portal-nav a[href*=licenses]:before{content:"\f023"}.portal-nav a[href*=learning]:before{content:"\f19d"}.portal-nav a[href*=orders]:before{content:"\f07a"}.portal-nav a[href*=quotes]:before{content:"\f543"}.portal-nav a[href*=training]:before{content:"\f51c"}.portal-main--centered{align-items:flex-start;display:flex;justify-content:center}.portal-main--centered .portal-main-inner{max-width:640px;width:100%}.sidebar-overlay{background:rgba(0,0,0,.45);display:none;inset:0;position:fixed;z-index:998}.sidebar-overlay.is-open{display:block}.portal-hamburger{background:transparent;border:none;color:#fff;cursor:pointer;display:none;flex-shrink:0;font-size:22px;height:36px;line-height:1;margin-right:8px;padding:4px 8px;width:36px}.portal-hamburger i{text-align:center;width:16px}@media (max-width:991px){.portal-hamburger{align-items:center;display:flex;justify-content:center}.portal-shell{height:calc(100vh - 64px);left:0;position:fixed;top:64px;transform:translateX(-100%);transition:transform .28s ease;width:280px;z-index:999}.portal-shell.is-open{transform:translateX(0)}.portal-sidebar{box-shadow:4px 0 16px rgba(0,0,0,.15);height:100%;position:relative;top:auto;width:100%}.portal-layout{flex-direction:column}.portal-main{padding:20px;width:100%}}