/* Shared glass header. Sizes stay independent of page and card typography. */
.header{--header-control:42px;--header-ink:#35414c;top:max(12px,env(safe-area-inset-top));width:calc(100% - 40px);max-width:1400px;border:1px solid #ffffffb8;background:linear-gradient(120deg,#ffffffad,#f5fbffa3 50%,#ffffff94);backdrop-filter:blur(32px) saturate(175%);-webkit-backdrop-filter:blur(32px) saturate(175%);box-shadow:0 8px 32px #265a8512,inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff73;isolation:isolate}
.header .navigation{height:68px;min-height:68px;padding:8px 10px 8px 22px;gap:24px;display:flex;align-items:center;overflow:visible}
.header .brand{flex:0 0 auto;margin:0;display:flex;align-items:center}.header .brand img{width:148px;height:auto;max-height:47px;object-fit:contain}
.header .navigation .desktop-nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;gap:3px;margin:0;white-space:nowrap;overflow:visible;font:600 13px/1.3 'DM Sans',sans-serif}
.header .desktop-nav>a,.header .desktop-nav>button,.header-more-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;position:relative;isolation:isolate;flex:0 0 auto;min-height:40px;padding:10px 13px;border:0;border-radius:999px;color:var(--header-ink);background:transparent;font:inherit;text-decoration:none;cursor:pointer;transition:color .2s,box-shadow .2s,background .2s}
.header .desktop-nav>a::before,.header .desktop-nav>button::before{display:none}
.header .desktop-nav>a:hover,.header .desktop-nav>button:hover,.header-more-toggle:hover,.header .desktop-nav>[aria-expanded=true],.header-more-toggle[aria-expanded=true]{background:linear-gradient(145deg,#ffffffc9,#ffffff57 45%,#cfeaff57);box-shadow:inset 0 1px 2px #fff,inset 0 -1px 5px #b4d7f54d,0 4px 12px #527ca414;color:#0064e0}
.header .desktop-nav>a[aria-current=page]{color:#0064e0;background:#ffffff6b}.header .desktop-nav .icon,.header-more-toggle svg{width:15px;height:15px;flex:none}
.header .nav-actions{display:flex;align-items:center;flex:0 0 auto;gap:8px;margin:0}
.header .header-glass-control,.header .alf-header-avatar,.header .mobile-toggle{position:relative;display:inline-grid;place-items:center;flex:0 0 var(--header-control);width:var(--header-control);height:var(--header-control);min-height:var(--header-control);padding:0;border:0;border-radius:50%;aspect-ratio:1;color:var(--header-ink);background:linear-gradient(145deg,#e4f2ffa8,#e2effc66 55%,#ffffff70);box-shadow:inset 0 1px 1px #ffffffed,inset 0 -1px 3px #b6d5ee26;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s}
.header .header-glass-control:hover,.header .mobile-toggle:hover,.header .header-glass-control[aria-expanded=true],.header .alf-header-avatar:not(.is-signed-in):hover{background:linear-gradient(140deg,#ffffffed,#dceeff9c);box-shadow:inset 0 1px 3px #fff,inset 0 -2px 5px #aecfed70,0 4px 13px #326b9a18;color:#0064e0;transform:translateY(-1px)}
.header .header-glass-control svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.header .header-glass-control svg use{fill:none;stroke:currentColor}
.header .alf-header-avatar{font:600 12px/1 'DM Sans',sans-serif}.header .alf-header-avatar.is-signed-in{background:#0081fb;color:white;box-shadow:inset 0 1px 3px #ffffff42,0 2px 8px #0081fb17}.header .alf-header-avatar.is-signed-in:hover{background:#0075e6}
.header .alf-header-avatar.is-signed-in::after{content:'';position:absolute;width:9px;height:9px;bottom:0;right:0;background:#34c759;border:2px solid #fff;border-radius:50%;box-sizing:content-box;box-shadow:0 0 0 1px #daf6df}
.header .alf-header-avatar>svg{width:23px;height:23px}.header .alf-header-avatar>img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
.header .header-count{position:absolute;top:0;right:-2px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#0081fb;color:#fff;border:2px solid #f4fbff;font:700 9px/1 'DM Sans',sans-serif;box-sizing:border-box;pointer-events:none}
.header .header-count[hidden],.header [hidden],.header-more-panel[hidden],.header-notification-panel[hidden]{display:none!important}
.header .navigation>.mobile-toggle{display:none}.header .mobile-toggle svg{width:22px;height:22px}
.header-more{position:relative;flex:none}.header-more-panel{position:absolute;top:calc(100% + 17px);right:0;width:192px;padding:7px}
.header-glass-panel{color:#35414c;border:1px solid #ffffffd9;border-radius:20px;background:linear-gradient(145deg,#fffffff5,#f6fbfff0);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);box-shadow:0 18px 55px #21496d24,inset 0 1px 0 #fff;font-family:'DM Sans',sans-serif;text-align:left}
.header-more-panel nav{display:flex;flex-direction:column;gap:2px}.header .header-more-panel a{display:block;padding:12px 14px;border-radius:12px;font:500 13px/1.4 'DM Sans',sans-serif;color:#35414c;text-decoration:none}.header-more-panel a:hover,.header-more-panel a:focus-visible{background:#e5f1ffb3;color:#0064e0}
.header-notification-panel{position:fixed;z-index:131;overflow:hidden;display:flex;flex-direction:column;animation:header-pop-in .18s ease both}
.header-notification-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 20px 16px;border-bottom:1px solid #dce8f273;flex:none}.header-notification-top h2{margin:0 0 5px;font:700 18px/1.25 'DM Sans',sans-serif;letter-spacing:-.025em;color:#1c1d21}.header-notification-top span{font-size:11px;color:#788594}
.header-panel-close{display:grid;place-items:center;width:30px;height:30px;flex:none;padding:7px;border:0;border-radius:50%;background:#eaf2fa88;color:#687789;cursor:pointer}.header-panel-close svg{width:16px;height:16px}
#header-notification-content{min-height:0;display:flex;flex-direction:column;overflow:hidden}.header-notification-toolbar{padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #e2ebf373;flex:none}.header-notification-toolbar>div{display:flex;gap:4px}.header-notification-toolbar button{display:flex;align-items:center;gap:5px;min-height:30px;padding:7px 10px;border:0;border-radius:999px;background:none;color:#758393;font:600 11px/1.3 'DM Sans',sans-serif;cursor:pointer}.header-notification-toolbar button[aria-pressed=true]{background:#e4f1ff;color:#0064e0}.header-notification-toolbar button>span:not(:only-child){font-size:10px}.header-notification-toolbar button:disabled{opacity:.4;cursor:default}.header-notification-toolbar button svg{width:15px;height:15px}.header-notification-toolbar button[data-header-read-all]{color:#0064e0;padding-inline:6px;font-size:10px}
.header-notification-list{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;min-height:0;max-height:420px;padding:5px 7px}.header-notification-item{display:flex;align-items:flex-start;gap:10px;padding:14px 10px;border-radius:13px;transition:background .18s}.header-notification-item+.header-notification-item{margin-top:3px}.header-notification-item:hover{background:#edf5fe}.header-notification-item.is-unread{background:#eaf3ff99}.header-notification-symbol{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:12px;color:#0081fb;background:#dbeeff9e}.header-notification-symbol svg{width:18px;height:18px}.header-notification-item>a{min-width:0;flex:1;color:inherit;text-decoration:none}.header-notification-item strong{display:block;font:600 13px/1.4 'DM Sans',sans-serif;color:#263441}.header-notification-item p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:4px 0 6px;color:#738292;font:400 12px/1.6 'DM Sans',sans-serif;overflow-wrap:anywhere}.header-notification-item time{font:400 11px/1.4 'DM Sans',sans-serif;color:#8997a6}.header-read-toggle{display:grid;place-items:center;width:27px;height:30px;flex:0 0 27px;border:0;padding:0;border-radius:50%;background:transparent;cursor:pointer}.header-read-toggle span{width:7px;height:7px;border:1.5px solid #b9c8d6;border-radius:50%}.is-unread .header-read-toggle span{border-color:#0081fb;background:#0081fb}.header-read-toggle:hover{background:#d8eafe}
.header-notification-footer{display:flex;align-items:center;justify-content:center;gap:7px;min-height:47px;flex:none;border-top:1px solid #dce8f2;color:#0064e0;font-size:12px;font-weight:600;text-decoration:none}.header-notification-footer svg{width:15px;height:15px}
.header-notification-empty{padding:30px 24px;text-align:center}.header-notification-empty>span{display:grid;place-items:center;margin:0 auto 15px;width:49px;height:49px;border-radius:17px;color:#0081fb;background:#e3f1ff}.header-notification-empty>span svg{width:24px;height:24px}.header-notification-empty h3{margin:0 0 8px;color:#263441;font:600 15px/1.4 'DM Sans',sans-serif}.header-notification-empty p{margin:0;color:#7b8998;font:400 12px/1.7 'DM Sans',sans-serif}.header-notification-empty>div{display:flex;gap:8px;justify-content:center;margin-top:21px}.header-notification-empty button{padding:10px 17px;border:0;border-radius:999px;color:#0064e0;background:#e5f1ff;font:600 12px 'DM Sans',sans-serif;cursor:pointer}.header-notification-empty button:first-child{background:#0081fb;color:white}.header-notification-error{padding:9px 15px;background:#fff5e9;color:#95682d;font-size:11px}
.alf-profile-menu{border-color:#ffffffd9!important;background:linear-gradient(140deg,#fffffff5,#f6fbfff5)!important;backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);box-shadow:0 18px 55px #21496d24!important}.alf-profile-menu nav>a:hover,.alf-profile-menu nav>button:hover,.alf-profile-menu summary:hover{background:#e9f3ff!important;border-radius:10px}.alf-profile-entry{gap:6px}.alf-profile-entry button{background:#e8f3ff;border-radius:10px}.alf-guest-heading{padding:7px 3px 14px}.alf-guest-heading strong{display:block;font-size:15px;color:#263441}.alf-guest-heading p{margin:6px 0 0;color:#7b8998;font-size:11px;line-height:1.6}
.header button:focus-visible,.header a:focus-visible,.header-notification-panel button:focus-visible,.header-notification-panel a:focus-visible{outline:2px solid #0081fb;outline-offset:3px}
@keyframes header-pop-in{from{opacity:0;transform:translateY(-5px) scale(.99)}to{opacity:1;transform:none}}
@media(max-width:1100px){.header .navigation{gap:16px;padding-left:18px}.header .brand img{width:135px}.header .desktop-nav>a,.header .desktop-nav>button,.header-more-toggle{padding-inline:11px;font-size:12px}}
@media(min-width:601px) and (max-width:900px){.header{width:calc(100% - 24px)}.header .navigation{gap:12px;height:64px;min-height:64px;padding:8px 10px 8px 17px}.header .brand img{width:126px}.header .desktop-nav{gap:2px}.header .desktop-nav>a,.header .desktop-nav>button,.header-more-toggle{padding-inline:10px}}
@media(max-width:600px){.header{--header-control:39px;top:max(8px,env(safe-area-inset-top));width:calc(100% - 16px)}.header .navigation{height:58px;min-height:58px;padding:7px 8px;gap:9px}.header .navigation .desktop-nav{display:none}.header .navigation>.mobile-toggle{display:inline-grid}.header .brand img{width:124px;height:auto}.header .nav-actions{margin-left:auto;gap:6px}.header .header-glass-control svg{width:21px;height:21px}.header .alf-header-avatar{font-size:11px}.header .header-count{top:-1px;right:-2px}.header .mega-menu{display:none!important}.header-notification-panel{border-radius:20px}.header-notification-top{padding:18px 17px 14px}.header-notification-list{max-height:54dvh}.hero{padding-top:82px}}
@media(max-width:359px){.header{--header-control:35px}.header .navigation{height:54px;min-height:54px;gap:7px;padding-inline:6px}.header .brand img{width:100px}.header .nav-actions{gap:5px}.header .header-glass-control svg{width:20px;height:20px}.header .mobile-toggle svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.header-notification-panel{animation:none}.header button,.header a{transition:none!important}.header .header-glass-control:hover{transform:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.header,.header-glass-panel{background:#f8fcff}.alf-profile-menu{background:#f8fcff!important}}

@media(max-width:600px){.header .brand{flex-shrink:1;min-width:0}.header .brand img{max-width:100%}}
.header .header-more-panel a{white-space:normal;overflow-wrap:anywhere}

/* Keep the desktop brand within the avatar-height row. */
@media(min-width:901px){.header .navigation .brand img{height:var(--header-control);width:auto;max-height:var(--header-control);max-width:128px;object-fit:contain}}
