@charset "UTF-8";:root{--topbar-inner-h: 56px;--topbar-h: calc(var(--topbar-inner-h) + env(safe-area-inset-top, 0px));--drawer-w: 280px;--bg: #fafaf7;--surface: #ffffff;--fg: #111111;--muted: #666666;--line: #ececec;--accent: #ef4444;--accent-hover: #dc2626;--scrim: rgba(0, 0, 0, .4)}html,body{margin:0;padding:0;min-height:100dvh;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{font-size:1.1rem}app-root{display:block;min-height:100dvh}.shell{position:relative;min-height:100dvh}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:.75rem;height:var(--topbar-h);padding:env(safe-area-inset-top,0px) .75rem 0;box-sizing:border-box;background:var(--bg);border-bottom:1px solid var(--line)}.title{font-weight:600;font-size:1.1rem;letter-spacing:-.01em;text-transform:uppercase}.who{margin-left:auto;font-size:.85rem;color:var(--muted);max-width:50vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--fg);text-decoration:none;flex:0 0 auto}.topbar-bell:hover{background:#0000000d}.topbar-bell:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar-bell .material-symbols-outlined{font-size:22px;opacity:.7}.topbar-bell:hover .material-symbols-outlined{opacity:1}.topbar-bell--chat{margin-left:auto}.notif-row{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:.6rem;color:inherit;text-align:left;width:100%;box-sizing:border-box;transition:border-color .15s ease,background .15s ease;position:relative}.notif-row:hover{border-color:#d0d0d0;background:#fafafa}.notif-row.notif-row--unread:before{content:"";position:absolute;left:.4rem;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--accent)}.notif-row-avatar{display:inline-flex;flex:0 0 auto;border-radius:50%;text-decoration:none;color:inherit}.notif-row-avatar:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notif-row-body{flex:1;min-width:0;display:block;background:transparent;border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.topbar-bell-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg);line-height:1}.topbar-avatar-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:50%;flex:0 0 auto}.topbar-avatar-link:focus-visible{outline:2px solid var(--accent, #4f46e5);outline-offset:2px}.topbar-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#eee}.topbar-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:#f1f1f1;color:#555;font-size:.75rem;font-weight:600;text-transform:uppercase}.menu-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:8px;cursor:pointer;color:inherit}.menu-btn:hover{background:#0000000d}.menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bars{display:inline-flex;flex-direction:column;gap:5px;width:20px}.bars span{display:block;height:2px;width:100%;background:currentColor;border-radius:2px}.drawer{position:fixed;top:0;left:0;bottom:0;width:var(--drawer-w);max-width:85vw;background:var(--bg);border-right:1px solid var(--line);transform:translate(-100%);transition:transform .2s ease;z-index:50;padding-top:var(--topbar-h);display:flex;flex-direction:column;overflow-y:auto}.drawer.open{transform:translate(0)}.drawer nav{flex:1}.drawer nav ul{list-style:none;margin:0;padding:.5rem 0}.drawer nav a,.drawer nav .link-btn{display:flex;align-items:center;gap:.85rem;width:100%;text-align:left;padding:.85rem 1.25rem;color:var(--fg);background:transparent;border:0;text-decoration:none;font-size:1.008rem;font-weight:500;line-height:1.2;cursor:pointer}.drawer nav a:hover,.drawer nav .link-btn:hover{background:#0000000a}.drawer nav a.active{color:var(--accent);font-weight:600}.drawer-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:24px;line-height:1;color:var(--muted);flex:0 0 auto}.drawer nav a.active .drawer-nav-icon{color:var(--accent)}.drawer-nav-label{flex:0 1 auto}.drawer-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.25rem;padding:0 .4rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700}.inbox-row-unread{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.1rem;padding:0 .35rem;margin-left:.5rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700}.inbox-row-time{flex:0 0 auto;align-self:flex-start;margin-top:.1rem;font-size:.72rem;color:var(--muted);white-space:nowrap}.thread{max-width:720px;margin:0 auto;padding:0;display:flex;flex-direction:column;height:calc(100dvh - var(--topbar-h));box-sizing:border-box;background:var(--bg)}.thread__header{display:flex;align-items:center;gap:.75rem;flex:0 0 auto;padding:.75rem 1rem;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 1px #00000005;position:relative}.thread__header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(to right,var(--accent),transparent 65%);opacity:.5;pointer-events:none}.thread__back{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;color:var(--fg);text-decoration:none;flex:0 0 auto}.thread__back .material-symbols-outlined{font-size:22px;opacity:.7}.thread__back:hover{background:#0000000f}.thread__back:hover .material-symbols-outlined{opacity:1}.thread__back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.thread__person{display:inline-flex;align-items:center;gap:.5rem;color:inherit;text-decoration:none;font-weight:600}.thread__avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#e5e7eb}.thread__avatar--initials{display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:var(--fg);background:#e5e7eb}.thread__messages{list-style:none;padding:1rem .75rem;margin:0;flex:1 1 auto;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem}.thread__bubble{align-self:flex-start;max-width:75%;padding:.5rem .75rem .35rem;border-radius:4px 14px 14px;background:var(--surface);color:var(--fg);border:1px solid var(--line);position:relative;display:flex;flex-direction:column;gap:.1rem}.thread__bubble--mine{align-self:flex-end;background:var(--accent);color:#fff;border-color:var(--accent);border-top-left-radius:14px;border-top-right-radius:4px;box-shadow:0 2px 6px -3px #ef444473}.thread__bubble--mine .thread__body{font-weight:500}.thread__bubble--mine .thread__time{color:#fffc}.thread__bubble--deleted{font-style:italic;color:var(--muted);background:transparent;border:1px dashed var(--line);box-shadow:none}.thread__body{margin:0;white-space:pre-wrap;word-wrap:break-word;font-size:1.05rem;line-height:1.35}.thread__time{align-self:flex-end;font-size:.65rem;color:#00000073;line-height:1;margin-top:.15rem}.thread__bubble--deleted .thread__time{color:var(--muted)}.thread__delete{display:none;position:absolute;top:-1.4rem;right:.25rem;background:#000000b3;color:#fff;border:0;border-radius:4px;font-size:.65rem;padding:.1rem .4rem;cursor:pointer}.thread__bubble:hover .thread__delete{display:inline-block}.message-composer{flex:0 0 auto;display:flex;flex-direction:column;gap:.4rem;padding:.6rem .75rem;background:var(--surface);border-top:1px solid var(--line)}.message-composer__notice{margin:0;padding:.35rem .6rem;background:#dc262614;color:#b91c1c;border-radius:6px;font-size:.85rem}.message-composer__row{display:flex;align-items:flex-end;gap:.5rem}.message-composer__input{flex:1 1 auto;box-sizing:border-box;border:1px solid var(--line);border-radius:22px;padding:.55rem .95rem;font:inherit;font-size:1.1rem;font-weight:500;line-height:1.35;background:#fff;resize:none;min-height:2.5rem;max-height:8rem;overflow-y:auto}.message-composer__input:focus{outline:none;border-color:var(--accent)}.message-composer__send{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:var(--accent);color:#fff;cursor:pointer;transition:background .12s ease}.message-composer__send .material-symbols-outlined{font-size:22px}.message-composer__send:hover:not(:disabled){background:var(--accent-hover)}.message-composer__send:disabled{background:#d1d5db;color:#fff;cursor:default}.message-composer__send:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drawer-user{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line)}.drawer-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;background:#eee;flex:0 0 auto}.drawer-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:#f1f1f1;color:#666;font-size:1.2rem;font-weight:600;text-transform:uppercase}.drawer-user-meta{display:flex;flex-direction:column;min-width:0;line-height:1.25}.drawer-user-name{font-size:1.05rem;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-user-email{font-size:.85rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-footer{padding:.75rem 1.25rem 1rem;border-top:1px solid var(--line)}.drawer-signout{width:100%;height:38px;padding:0 .85rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#111;font-size:.9rem;font-weight:500;cursor:pointer}.drawer-signout:hover{background:#f5f5f5}.scrim{position:fixed;inset:0;background:var(--scrim);border:0;padding:0;z-index:40;opacity:0;pointer-events:none;transition:opacity .2s ease;cursor:pointer}.scrim.visible{opacity:1;pointer-events:auto}.content{min-height:calc(100dvh - var(--topbar-h));padding-bottom:env(safe-area-inset-bottom,0px)}.auth-page{min-height:calc(100dvh - var(--topbar-h));display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.auth-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:1rem;padding:1.75rem;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px 2px #0000000a}.auth-card h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:600;letter-spacing:-.01em}.auth-card label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:#444}.auth-card input{height:40px;padding:0 .75rem;border:1px solid #d4d4d4;border-radius:8px;font-size:.95rem;background:#fff;color:#111}.auth-card input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.auth-card button[type=submit]{height:42px;border:0;border-radius:8px;background:#111;color:#fff;font-size:.95rem;font-weight:500;cursor:pointer;transition:background .15s ease}.auth-card button[type=submit]:hover:not(:disabled){background:var(--accent)}.auth-card button[type=submit]:disabled{opacity:.55;cursor:not-allowed}.auth-card .error{margin:0;color:#b91c1c;font-size:.875rem}.auth-card .alt{margin:0;font-size:.85rem;color:#555;text-align:center}.auth-card .alt a{color:var(--accent);text-decoration:none}.auth-card .alt a:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:.75rem;color:#888;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.google-button-host{display:flex;justify-content:center;min-height:40px}.google-unavailable{margin:0;font-size:.8rem;color:#888;text-align:center}.home{min-height:100%}.hero{position:relative;overflow:hidden;padding:clamp(3rem,9vw,6rem) 1.25rem clamp(3rem,7vw,5rem);text-align:center}.hero-bg{position:absolute;inset:0;z-index:0;background:var(--bg);pointer-events:none}.hero-inner{position:relative;z-index:1;max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.hero-eyebrow{display:inline-block;padding:.35rem .75rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:.75rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.hero-title{margin:0;font-size:clamp(2rem,5.5vw,3.5rem);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--fg)}.hero-title .accent{color:var(--accent)}.hero-sub{margin:0;max-width:560px;font-size:clamp(1rem,1.6vw,1.125rem);line-height:1.55;color:var(--muted)}.hero-cta{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.cta{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 1.4rem;border-radius:999px;font-size:.95rem;font-weight:500;text-decoration:none;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.cta-primary{background:var(--accent);color:#fff;border:1px solid var(--accent);box-shadow:0 6px 18px -10px #ef44448c}.cta-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px)}.cta-secondary{background:var(--surface);color:var(--fg);border:1px solid var(--line)}.cta-secondary:hover{background:#f5f5f5;transform:translateY(-1px)}.hero-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:1.25rem;margin:1rem 0 0;padding:0;list-style:none;font-size:.85rem;color:var(--muted)}.hero-meta li{display:inline-flex;align-items:center;gap:.4rem}.hero-meta .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e}.audiences{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:1080px;margin:0 auto;padding:0 1.25rem clamp(3rem,6vw,4.5rem)}.audience{padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:.5rem;transition:transform .15s ease,box-shadow .15s ease}.audience:hover{transform:translateY(-2px);box-shadow:0 12px 30px -18px #11111140}.audience h3{margin:.25rem 0 0;font-size:1.1rem;font-weight:600;letter-spacing:-.01em;color:var(--fg)}.audience p{margin:0;font-size:.9rem;line-height:1.55;color:var(--muted)}.audience-tag{align-self:flex-start;padding:.2rem .55rem;border-radius:999px;background:#ef444414;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.profile{max-width:920px;margin:0 auto;padding:2.5rem 1.25rem 3rem}.profile-header{display:flex;align-items:flex-start;gap:3rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}@media(max-width:640px){.profile-header{flex-direction:column;align-items:center;gap:1.5rem;text-align:center}}.profile-avatar-wrap{position:relative;flex:0 0 auto}.profile-avatar{display:flex;align-items:center;justify-content:center;width:150px;height:150px;border-radius:50%;object-fit:cover;background:#f4f4f5;font-size:2.4rem;font-weight:600;color:#888;text-transform:uppercase}@media(max-width:640px){.profile-avatar{width:110px;height:110px;font-size:1.85rem}}.profile-avatar-placeholder{background:#f1f1f1}.profile-avatar-change{position:absolute;right:4px;bottom:4px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;cursor:pointer;box-shadow:0 2px 8px #0000002e;transition:background .15s ease}.profile-avatar-change:hover{background:var(--accent-hover)}.profile-avatar-change.uploading{opacity:.7;cursor:progress}.profile-avatar-change .material-symbols-outlined{font-size:20px}.profile-avatar-change input[type=file]{display:none}.profile-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem}@media(max-width:640px){.profile-meta{align-items:center}}.profile-meta-top{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.35rem}@media(max-width:640px){.profile-meta-top{justify-content:center}}.profile-name{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}.profile-edit-btn{height:38px;padding:0 1rem;font-size:.88rem}.profile-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.1rem 0 .35rem}@media(max-width:640px){.profile-actions{justify-content:center}}.profile-message-btn{display:inline-flex;align-items:center;gap:.4rem}.profile-message-btn .material-symbols-outlined{font-size:18px;opacity:.85}.profile-handle{margin:0;font-size:.95rem;color:var(--muted)}.profile-follow-counts{display:inline-flex;align-items:center;gap:.4rem;margin:.35rem 0 0;font-size:.9rem;color:var(--muted)}.profile-follow-counts__link{color:inherit;text-decoration:none}.profile-follow-counts__link strong{color:var(--fg);font-weight:600;margin-right:.25rem}.profile-follow-counts__link:hover strong,.profile-follow-counts__link:focus-visible strong{text-decoration:underline}.profile-follow-counts__link:focus-visible{outline:2px solid rgba(239,68,68,.35);outline-offset:2px;border-radius:4px}.profile-follow-counts__sep{color:var(--muted)}.profile-location{display:inline-flex;align-items:center;gap:.3rem;margin:0;font-size:.9rem;color:var(--muted)}.profile-location .material-symbols-outlined{font-size:18px}.profile-stats{list-style:none;margin:.6rem 0 0;padding:0;display:flex;gap:2rem;flex-wrap:wrap}@media(max-width:640px){.profile-stats{gap:1.5rem;justify-content:center}}.profile-stats li{display:inline-flex;align-items:baseline;gap:.3rem;font-size:.9rem;color:var(--muted)}.profile-stats strong{font-size:1.1rem;font-weight:700;color:var(--fg)}.profile-upload-error{margin:.5rem 0 0;padding:.4rem .75rem;border-radius:8px;background:#dc262614;color:#b91c1c;font-size:.85rem}.profile-tabs{display:flex;justify-content:center;gap:3rem;margin:0;padding:1rem 0;border-bottom:1px solid var(--line)}@media(max-width:640px){.profile-tabs{gap:1.5rem}}.profile-tab{display:inline-flex;align-items:center;gap:.4rem;padding:1.05rem 0 .4rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-top:2px solid transparent;margin-top:-1.05rem}.profile-tab .material-symbols-outlined{font-size:18px}.profile-tab.active{color:var(--fg);border-top-color:var(--fg)}.profile-section{margin-top:1.75rem}.profile-section-title{margin:0 0 .9rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.profile-affil-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.85rem}.profile-affil-card{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:border-color .15s ease,transform .15s ease}.profile-affil-card:hover{border-color:#0000001f;transform:translateY(-1px)}.profile-affil-logo{width:52px;height:52px;flex:0 0 auto;border-radius:12px;object-fit:cover;background:#f4f4f5;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;text-transform:uppercase}.profile-affil-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.profile-affil-name{font-size:.95rem;font-weight:600;color:var(--fg);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-affil-name:hover{color:var(--accent)}.profile-affil-meta{margin:0;font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-affil-edit{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:var(--muted);text-decoration:none;flex:0 0 auto}.profile-affil-edit:hover{background:#0000000d;color:var(--fg)}.profile-affil-edit .material-symbols-outlined{font-size:20px}.institutions{max-width:1080px;margin:0 auto;padding:2rem 1.25rem 3rem}.institutions-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem}.institutions-pill{height:34px;padding:0 .95rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--text);font:inherit;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.institutions-pill:hover:not(.is-active){background:#1118270d;border-color:#1118272e}.institutions-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.institutions-pill.is-active{background:#222;border-color:#222;color:#fff}.institutions-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;margin-bottom:1rem}.institutions-header h1{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.015em}.institutions-header p{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.institutions-search{flex:0 1 320px;min-width:200px;height:40px;padding:0 .85rem;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.9rem}.institutions-search:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.institution-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.institution-card{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--fg);text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.institution-card:hover{transform:translateY(-2px);border-color:#d4dcf8;box-shadow:0 14px 30px -20px #11111140}.institution-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.institution-card-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.25rem}.institution-logo{width:44px;height:44px;border-radius:10px;object-fit:cover;background:#f4f4f5;flex:0 0 auto}.institution-logo-placeholder{display:inline-flex;align-items:center;justify-content:center;background:#ef444414;color:var(--accent);font-size:1.15rem;font-weight:700;text-transform:uppercase}.institution-type-tag{padding:.25rem .6rem;border-radius:999px;background:#ef444414;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.institution-name{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em;color:var(--fg)}.institution-meta{margin:0;font-size:.85rem;color:var(--muted)}.institution-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;padding-top:.5rem}.institution-pill{padding:.2rem .55rem;border-radius:999px;background:#f4f4f5;color:#444;font-size:.72rem;font-weight:500}.institution-domain{font-size:.78rem;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.institution-grid.is-loading{opacity:.55;transition:opacity .15s ease}.pager{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.75rem}.pager button{height:36px;padding:0 1rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--fg);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.pager button:hover:not(:disabled){background:#f5f5f5;border-color:#d0d0d0}.pager button:disabled{opacity:.45;cursor:not-allowed}.pager-status{font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.my-institutions{max-width:880px;margin:0 auto;padding:2rem 1.25rem 3rem}.my-institutions-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;margin-bottom:1.5rem}.my-institutions-header h1{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.015em}.my-institutions-header p{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:2rem;border:1px dashed var(--line);border-radius:14px;background:#fafafa}.empty-state p{margin:0;color:var(--muted)}.mine-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.mine-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:12px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.mine-row:hover{border-color:#d4dcf8;box-shadow:0 6px 16px -12px #1111112e}.mine-row-main{display:flex;align-items:center;gap:.85rem;min-width:0;flex:1}.mine-row-text{min-width:0}.mine-row-text h3{margin:0;font-size:1rem;font-weight:600}.mine-row-text h3 a{color:var(--fg);text-decoration:none}.mine-row-text h3 a:hover{color:var(--accent)}.mine-row-text .institution-meta{margin:.2rem 0 0;font-size:.82rem;color:var(--muted);display:flex;align-items:center;gap:.4rem}.mine-edit{flex:0 0 auto;display:inline-flex;align-items:center;height:34px;padding:0 .85rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--fg);font-size:.85rem;font-weight:500;text-decoration:none}.mine-edit:hover{background:#f5f5f5}@media(max-width:640px){.my-institutions{padding:1.25rem .85rem 2rem}.my-institutions-header h1{font-size:1.4rem}.mine-row{flex-direction:column;align-items:stretch;gap:.6rem;padding:.75rem .85rem}.mine-row-text h3{font-size:.98rem}.mine-row-text .institution-meta{display:block;line-height:1.35}.mine-row .affiliation-row-actions{justify-content:flex-end;padding-top:.5rem;border-top:1px solid var(--line)}}.institution-form-page{max-width:640px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.institution-form-page h1{margin:.5rem 0 1.25rem;font-size:1.5rem;font-weight:700;letter-spacing:-.015em}.institution-form{display:flex;flex-direction:column;gap:1rem}.institution-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:#444}.institution-form input,.institution-form select,.institution-form textarea{height:40px;padding:0 .75rem;border:1px solid #d4d4d4;border-radius:8px;font-size:.95rem;background:#fff;color:#111;font-family:inherit}.institution-form input:focus-visible,.institution-form select:focus-visible,.institution-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.institution-form textarea{height:auto;padding:.6rem .75rem;resize:vertical}.institution-form select{appearance:none;-webkit-appearance:none;text-transform:capitalize}.institution-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:480px){.institution-form .form-row{grid-template-columns:1fr}}.institution-form .form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.institution-form .error{margin:0;color:#b91c1c;font-size:.875rem}.affiliation-row{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:.6rem;color:inherit;text-decoration:none;transition:border-color .15s ease,background .15s ease}.affiliation-row:hover{border-color:#d0d0d0;background:#fafafa}.affiliation-row-main{flex:1;min-width:0}.affiliation-row-title{display:flex;align-items:center;gap:.4rem;font-size:.95rem;font-weight:600;color:var(--fg)}.affiliation-row-title a{color:inherit;text-decoration:none}.affiliation-row-title a:hover{color:var(--accent)}.affiliation-row-meta{margin:.25rem 0 0;font-size:.85rem;color:var(--muted);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.affiliation-row-actions{display:flex;gap:.4rem;flex:0 0 auto}@media(max-width:640px){.affiliation-row:has(.affiliation-row-actions){flex-wrap:wrap;align-items:center;column-gap:.75rem;row-gap:.6rem;padding:.75rem .85rem}.affiliation-row:has(.affiliation-row-actions) .affiliation-row-actions{flex:1 0 100%;justify-content:flex-end;flex-wrap:wrap;padding-top:.5rem;border-top:1px solid var(--line)}.my-institutions-header .institutions-search{flex:1 1 100%;width:100%}}app-manage-alumni .affiliation-row .institution-logo{width:53px;height:53px;font-size:1.4rem}.affiliation-row-avatar{display:inline-flex;flex:0 0 auto;border-radius:50%;text-decoration:none;color:inherit}.affiliation-row-avatar:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.confirm-scrim{position:fixed;inset:0;background:#11111173;z-index:100;animation:confirm-fade .12s ease-out}.confirm-dialog{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:101;width:min(420px,100vw - 2.5rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 60px -20px #11111159;padding:1.25rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.6rem;animation:confirm-pop .14s cubic-bezier(.2,.7,.3,1.2)}.confirm-dialog-title{margin:0;font-size:1.1rem;font-weight:700;letter-spacing:-.01em;color:var(--fg)}.confirm-dialog-message{margin:0;font-size:.95rem;color:var(--muted);line-height:1.4}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.6rem}.confirm-dialog-actions .cta{height:38px;padding:0 1rem;font-size:.88rem}.cta-danger{background:var(--accent);border:1px solid var(--accent);color:#fff}.cta-danger:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.cta-danger:disabled{opacity:.6;cursor:not-allowed}@keyframes confirm-fade{0%{opacity:0}to{opacity:1}}@keyframes confirm-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.settings-page{display:flex;flex-direction:column;gap:1rem}.settings-notice{margin:0;padding:.55rem .85rem;background:#22c55e1a;color:#15803d;border-radius:8px;font-size:.88rem}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.85rem}.settings-card header{display:flex;flex-direction:column;gap:.2rem}.settings-card header h2{margin:0;font-size:1rem;font-weight:600;color:var(--fg)}.settings-card header p{margin:0;font-size:.85rem;color:var(--muted);line-height:1.4}.settings-card--danger{border-color:#ef444459;background:#ef444408}.settings-toggle{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;font-size:.9rem;color:var(--fg)}.settings-toggle input{position:absolute;opacity:0;pointer-events:none}.settings-toggle .settings-toggle-track{position:relative;width:40px;height:22px;background:#d1d5db;border-radius:999px;transition:background .15s ease}.settings-toggle .settings-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000026;transition:transform .15s ease}.settings-toggle input:checked+.settings-toggle-track{background:var(--accent)}.settings-toggle input:checked+.settings-toggle-track:after{transform:translate(18px)}.settings-toggle input:disabled+.settings-toggle-track{opacity:.6}.settings-brand-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.settings-brand-row .cta{height:38px;padding:0 .95rem;font-size:.85rem}.settings-brand-swatch{width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.settings-brand-input{flex:1 1 140px;min-width:0;height:38px;padding:0 .7rem;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.9rem;text-transform:lowercase}.settings-brand-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.settings-error{margin:0;font-size:.82rem;color:var(--accent)}.verified-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;border-radius:999px;background:#22c55e1f;color:#15803d;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.affiliation-section{margin-top:2rem}.affiliation-section h2{margin:0 0 .75rem;font-size:1rem;font-weight:600;letter-spacing:-.01em}.affiliation-section .empty-state{padding:1.25rem;border:1px dashed var(--line);border-radius:12px;background:#fafafa;color:var(--muted);font-size:.9rem}.institution-detail{max-width:880px;margin:0 auto;padding:1.25rem 1.25rem 3rem}.back-link{display:inline-block;margin-bottom:1rem;color:var(--muted);font-size:.85rem;text-decoration:none}.back-link:hover{color:var(--accent)}.institution-hero{position:relative;margin-bottom:1.5rem}.institution-cover{display:block;width:100%;height:180px;border-radius:16px;object-fit:cover;background:#f4f4f5}.institution-cover-fallback{background:#9ca3af1a}.institution-hero-card{position:relative;display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin:-36px 1rem 0;padding:1.25rem;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px -16px #1113}.institution-detail-logo{width:72px;height:72px;border-radius:14px;object-fit:cover;background:#f4f4f5;flex:0 0 auto;border:3px solid #fff;box-shadow:0 4px 10px -6px #11111140;margin-top:-32px;font-size:1.5rem;display:inline-flex;align-items:center;justify-content:center}.institution-hero-body{flex:1;min-width:0}.institution-hero-body h1{margin:.35rem 0 0;font-size:1.5rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}.institution-hero-body .institution-meta{margin:.3rem 0 0}.institution-hero-facts{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.4rem}.institution-hero-facts strong{font-weight:600;color:var(--fg)}.institution-hero-facts-sep{color:var(--muted)}.institution-hero-actions{flex:0 0 auto;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;margin-left:auto}@media(max-width:640px){.institution-hero-actions{width:100%;justify-content:flex-start;margin-left:0;margin-top:.75rem}}.institution-section{margin-top:1.75rem}.institution-section h2{margin:0 0 .6rem;font-size:1rem;font-weight:600;color:var(--fg);letter-spacing:-.01em}.institution-section p{margin:0;color:#333;line-height:1.6;font-size:.95rem}.institution-facts{display:grid;grid-template-columns:max-content 1fr;column-gap:1.25rem;row-gap:.5rem;margin:0;font-size:.9rem}.institution-facts dt{color:var(--muted);font-weight:500}.institution-facts dd{margin:0;color:var(--fg)}.institution-facts dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.institution-facts dd a{color:var(--accent);text-decoration:none}.institution-facts dd a:hover{text-decoration:underline}.users{max-width:720px;margin:0 auto;padding:2rem 1.25rem}.users header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.25rem}.users header h1{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.01em}.users button{height:34px;padding:0 .85rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#111;font-size:.85rem;cursor:pointer}.users button:hover:not(:disabled){background:#f5f5f5}.users button:disabled{opacity:.5;cursor:not-allowed}.users button.danger{border-color:#d99;color:#a33}.users button.danger:hover{background:#fbecec}.users table{width:100%;border-collapse:collapse;font-size:.9rem}.users th,.users td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid #eee;vertical-align:middle}.users th{color:#666;font-weight:500}.users td:last-child{text-align:right}.users td.actions{display:flex;gap:.4rem;justify-content:flex-end}.users .edit-fields{display:flex;gap:.4rem}.users .edit-fields input{flex:1;min-width:0;height:32px;padding:0 .5rem;border:1px solid #d4d4d4;border-radius:6px;font-size:.85rem}.users .row-avatar{display:inline-block;width:32px;height:32px;border-radius:50%;object-fit:cover;background:#eee;vertical-align:middle}.users .row-avatar-placeholder{background:#f1f1f1}.users .status,.users .error{margin:.5rem 0;color:#666}.users .error{color:#a33}.autocomplete-wrap{position:relative;width:100%}.autocomplete-input{width:100%;height:40px;padding:0 .75rem;border:1px solid #d4d4d4;border-radius:8px;font-size:.95rem;background:#fff;color:#111;font-family:inherit}.autocomplete-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;margin:0;padding:4px 0;list-style:none;background:#fff;border:1px solid #d4d4d8;border-radius:6px;max-height:240px;overflow-y:auto;box-shadow:0 8px 24px #00000014}.autocomplete-row{padding:6px 12px;cursor:pointer;font-size:.9rem}.autocomplete-row:hover,.autocomplete-row.is-active{background:#f4f4f5}.modal-scrim{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:60;padding:1rem}.modal-card{width:100%;max-width:480px;background:#fff;border-radius:14px;padding:1.75rem;box-shadow:0 24px 48px -16px #00000059;display:flex;flex-direction:column;gap:.75rem}.modal-card h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;letter-spacing:-.01em}.modal-card form{display:flex;flex-direction:column;gap:.85rem}.modal-card label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:#444}.modal-card input,.modal-card textarea{padding:.6rem .75rem;border:1px solid #d4d4d4;border-radius:8px;font:inherit;font-size:.95rem;resize:vertical}.modal-card input:focus-visible,.modal-card textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.modal-card textarea{min-height:80px}.modal-card .form-actions{display:flex;justify-content:flex-end;gap:.5rem}.modal-card .error{margin:0;color:#b91c1c;font-size:.875rem}.modal-card .status{margin:0;color:var(--accent);font-size:.875rem}.invite-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.invite-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:10px;background:#fff}.invite-row-main{display:flex;flex-direction:column;flex:1;min-width:0}.invite-meta{font-size:.8rem;color:var(--muted)}.invite-row-actions{display:flex;gap:.4rem;flex:0 0 auto}.invite-row-actions button{height:32px;padding:0 .75rem;border:1px solid #d4d4d4;border-radius:6px;background:#fff;color:#111;font-size:.85rem;cursor:pointer}.invite-row-actions button:hover:not(:disabled){background:#f5f5f5}.invite-row-actions button:disabled{opacity:.5;cursor:not-allowed}.invite-row-actions button.danger{border-color:#d99;color:#a33}.invite-row-actions button.danger:hover:not(:disabled){background:#fbecec}.invite-accept-page{max-width:480px;margin:2rem auto;padding:0 1rem}.invite-card{display:flex;flex-direction:column;gap:.85rem;padding:2rem;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px -16px #0000002e}.invite-card h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.015em}.invite-card .institution-logo{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#f4f4f5}.invite-note{margin:0;padding:.75rem 1rem;border-left:3px solid var(--accent);background:#f8fafc;font-size:.95rem;color:#374151}.invite-foot{margin:.5rem 0 0;font-size:.85rem;color:var(--muted)}.invite-foot a{color:var(--accent);text-decoration:none}.manage-shell{max-width:1080px;margin:0 auto;padding:1.25rem 1.25rem 3rem}.manage-header{margin-bottom:1.25rem}.manage-header h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.015em}.manage-header__title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.4rem}.manage-header__view{display:inline-flex;align-items:center;gap:.35rem;height:34px;padding:0 .85rem;font-size:.82rem;flex:0 0 auto}.manage-header__view .material-symbols-outlined{font-size:16px}.manage-body{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;align-items:start}@media(max-width:768px){.manage-body{grid-template-columns:1fr}}.manage-sidebar{position:sticky;top:calc(var(--topbar-h) + 1rem);align-self:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.5rem 0}.manage-sidebar ul{list-style:none;margin:0;padding:0}.manage-sidebar a{display:flex;align-items:center;gap:.65rem;padding:.6rem 1rem;color:var(--fg);text-decoration:none;font-size:.95rem;border-left:3px solid transparent}.manage-sidebar a:hover{background:#00000008}.manage-sidebar a.active{color:var(--accent);font-weight:600;border-left-color:var(--accent);background:#ef44440f}@media(max-width:768px){.manage-sidebar{display:none}}.manage-sidebar-icon{font-size:20px;color:var(--muted);flex:0 0 auto}.manage-sidebar a.active .manage-sidebar-icon{color:var(--accent)}.manage-mobile-tabs{display:none}@media(max-width:768px){.manage-mobile-tabs{display:flex;gap:.4rem;margin-bottom:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.manage-mobile-tabs::-webkit-scrollbar{display:none}}.manage-mobile-tab{flex:1 1 0;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.55rem .4rem;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--fg);text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.manage-mobile-tab .manage-mobile-tab-icon{font-size:22px;color:var(--muted)}.manage-mobile-tab .manage-mobile-tab-label{font-size:.72rem;line-height:1.1;text-align:center}.manage-mobile-tab:hover{background:#00000008}.manage-mobile-tab.active{color:var(--accent);border-color:#ef444473;background:#ef44440f;font-weight:600}.manage-mobile-tab.active .manage-mobile-tab-icon{color:var(--accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.manage-content{min-width:0}.overview{display:flex;flex-direction:column;gap:1.25rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.85rem}.stat-tile{display:flex;flex-direction:column;gap:.25rem;padding:1.1rem 1.25rem;background:#fff;border:1px solid var(--line);border-radius:12px}.stat-value{font-size:1.6rem;font-weight:700;letter-spacing:-.01em;color:var(--fg);font-variant-numeric:tabular-nums}.stat-label{font-size:.8rem;color:var(--muted)}.overview-actions{display:flex;flex-wrap:wrap;gap:.5rem}.team-section{display:flex;flex-direction:column;gap:1rem}.team-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.team-header h2{margin:0;font-size:1.15rem;font-weight:600}.team-subheading{margin:.75rem 0 .25rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.team-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.team-row{display:flex;align-items:center;gap:.85rem;padding:.6rem 1rem;background:#fff;border:1px solid var(--line);border-radius:10px}.team-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#f1f1f1;flex:0 0 auto}.team-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:#f1f1f1;color:#555;font-size:.9rem;font-weight:600;text-transform:uppercase}.team-row__meta{display:flex;flex-direction:column;gap:.1rem;flex:1 1 auto;min-width:0}.team-row__name{font-weight:600;color:var(--text);text-decoration:none;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-row__name:hover{color:var(--accent)}.team-row__name--loading{color:var(--muted);font-weight:500}.team-row__sub{font-size:.75rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-role-tag{padding:.15rem .55rem;border-radius:999px;background:#ef444414;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;flex:0 0 auto}.team-user-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}.branding-block{position:relative;margin-bottom:2.5rem}.branding-cover-wrap{position:relative;border-radius:16px;overflow:hidden}.branding-cover-wrap:hover .branding-cover-scrim,.branding-cover-wrap:focus-within .branding-cover-scrim{background:#00000059}.branding-cover-wrap:hover .branding-cover-actions,.branding-cover-wrap:focus-within .branding-cover-actions{opacity:1}.branding-cover{display:block;width:100%;height:180px;border-radius:16px;object-fit:cover;background:#f4f4f5;border:0;padding:0}.branding-cover-scrim{position:absolute;inset:0;background:#0000;transition:background .15s ease-out;pointer-events:none;border-radius:16px}.branding-cover-actions{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.4rem;opacity:0;transition:opacity .15s ease-out}.branding-cover-actions button{padding:.35rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.6);background:#fffffff2;color:var(--fg);font-size:.8rem;font-weight:600;cursor:pointer}.branding-cover-actions button:hover{background:#fff}.branding-cover-actions button:disabled{opacity:.6;cursor:not-allowed}.branding-confirm-remove{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border-radius:999px;background:#fffffff7;font-size:.8rem}.branding-confirm-remove button{padding:.2rem .55rem;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.75rem;font-weight:600;cursor:pointer}.branding-confirm-remove-logo{top:auto;bottom:0;right:auto;left:7.5rem}.branding-logo-wrap{position:absolute;left:1rem;bottom:-32px;width:96px;height:96px}.branding-logo-wrap:hover .branding-logo-actions,.branding-logo-wrap:focus-within .branding-logo-actions{opacity:1}.branding-logo{display:block;width:96px;height:96px;border-radius:16px;object-fit:cover;background:#fff;border:4px solid #fff;box-shadow:0 2px 8px #0000001f;padding:0}.branding-logo-actions{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;border-radius:12px;background:#00000073;opacity:0;transition:opacity .15s ease-out}.branding-logo-actions button{padding:.2rem .55rem;border-radius:999px;border:0;background:#fffffff2;color:var(--fg);font-size:.7rem;font-weight:600;cursor:pointer}.branding-empty{display:flex;align-items:center;justify-content:center;width:100%;cursor:pointer;border:2px dashed var(--line);background:#fafafa;color:var(--muted);font-size:.85rem;font-weight:500}.branding-empty:hover{background:#f4f4f5;color:var(--fg)}.branding-cover.branding-empty{height:180px}.branding-logo.branding-empty{position:absolute;left:1rem;bottom:-32px;width:96px;height:96px;border-radius:16px;font-size:.7rem;text-align:center;padding:0 .25rem}.branding-progress{position:absolute;top:0;left:0;height:3px;background:var(--accent);transition:width .15s linear;border-radius:16px 0 0;pointer-events:none}.branding-helper{margin:1.5rem 0 0 7.5rem;font-size:.8rem;color:var(--muted)}.branding-error{margin:.5rem 0 0 7.5rem;padding:.4rem .75rem;border-radius:8px;background:#dc262614;color:#b91c1c;font-size:.85rem;animation:branding-fade-out 4s ease-out forwards}@keyframes branding-fade-out{0%,85%{opacity:1}to{opacity:0}}@media(max-width:640px){.branding-cover,.branding-cover.branding-empty{height:130px}.branding-logo,.branding-logo-wrap,.branding-logo.branding-empty{width:72px;height:72px;bottom:-24px}.branding-cover-actions,.branding-logo-actions{opacity:1}.branding-cover-scrim{background:#0003}.branding-helper,.branding-error{margin-left:6rem}.branding-confirm-remove-logo{left:6rem}}.post-feed{display:flex;flex-direction:column;gap:1rem;margin:3.5rem 0 2rem}.post-feed-new{align-self:flex-start}.post-feed-title{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.post-feed-empty{margin:1rem 0;font-size:.95rem;color:var(--muted)}.post-feed-more,.post-comments-more{align-self:center;margin-top:.5rem;padding:.5rem 1.25rem;background:transparent;border:1px solid var(--line);border-radius:999px;font-size:.85rem;color:var(--fg);cursor:pointer}.post-feed-more:hover,.post-comments-more:hover{background:#0000000a}.post-composer{display:flex;flex-direction:column;gap:.65rem;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:14px;box-sizing:border-box;width:100%;max-width:100%}.post-composer-field{display:flex;flex-direction:column;gap:.25rem;position:relative;min-width:0}.post-composer-field input,.post-composer-field textarea{width:100%;box-sizing:border-box;padding:.65rem .85rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.95rem;background:#fafafa;resize:vertical}.post-composer-field input:focus,.post-composer-field textarea:focus{outline:2px solid rgba(239,68,68,.35);outline-offset:0;background:#fff}.post-composer-counter{align-self:flex-end;font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.post-composer-counter.over{color:#b91c1c}.post-composer-error{margin:0;padding:.4rem .75rem;border-radius:8px;background:#dc262614;color:#b91c1c;font-size:.85rem}.post-composer-actions{display:flex;justify-content:flex-end;gap:.5rem}.post-composer-actions .cta{height:34px;padding:0 .85rem;font-size:.82rem}.post-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.25rem;background:#fff;border:1px solid var(--line);border-radius:14px;position:relative}.post-card-header{display:flex;align-items:center;gap:.65rem}.post-card-avatar{width:36px;height:36px;border-radius:50%;background:#f4f4f5;object-fit:cover}.post-card-avatar-placeholder{background:#d1d5db}.post-card-byline{display:flex;flex-direction:column;line-height:1.2}.post-card-name{font-weight:600;font-size:.92rem;color:var(--fg)}.post-card-time{font-size:.78rem;color:var(--muted)}.post-edited{margin-left:.25rem;font-style:italic}.post-card-spacer{flex:1}.post-card-follow-pill{background:var(--accent);color:#fff;border:0;border-radius:999px;padding:.25rem .85rem;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .12s ease}.post-card-follow-pill:hover:not(:disabled){background:var(--accent-hover)}.post-card-follow-pill:disabled{opacity:.6;cursor:default}.post-card-follow-pill:focus-visible{outline:2px solid rgba(239,68,68,.45);outline-offset:2px}.post-card-menu-trigger{background:transparent;border:0;font-size:1.1rem;color:var(--muted);cursor:pointer;padding:.25rem .5rem;border-radius:6px}.post-card-menu-trigger:hover{background:#0000000d;color:var(--fg)}.post-card-menu{position:absolute;top:2.75rem;right:1rem;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 14px #00000014;display:flex;flex-direction:column;z-index:10}.post-card-menu button{padding:.5rem 1rem;background:transparent;border:0;text-align:left;font-size:.9rem;cursor:pointer}.post-card-menu button:hover{background:#0000000a}.post-card-title{margin:.25rem 0 0;font-size:1.1rem;font-weight:700;color:var(--fg);letter-spacing:-.01em}.post-card-body{margin:0;font-size:.95rem;color:var(--fg);white-space:pre-wrap;line-height:1.5}.post-show-more{align-self:flex-start;background:transparent;border:0;color:var(--accent);font-size:.85rem;cursor:pointer;padding:0}.post-card-footer{display:flex;align-items:center;gap:.75rem;margin-top:.4rem;position:relative}.post-like-btn,.post-comment-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;background:transparent;border:1px solid var(--line);border-radius:999px;font-size:.85rem;color:var(--fg);cursor:pointer}.post-like-btn:hover,.post-comment-toggle:hover{background:#0000000a}@media(max-width:640px){.post-card{padding:.85rem .9rem;border-radius:12px;gap:.4rem}.post-card-header{gap:.55rem;flex-wrap:wrap;padding-right:1.75rem}.post-card-avatar{width:32px;height:32px}.post-card-name{font-size:.88rem}.post-card-time{font-size:.74rem}.post-card-spacer{display:none}.post-card-follow-pill{font-size:.74rem;padding:.2rem .7rem}.post-card-menu-trigger{position:absolute;top:.35rem;right:.35rem}.post-card-menu{top:2.35rem;right:.5rem}.post-card-title{font-size:1rem}.post-card-body{font-size:.9rem}.post-card-footer{gap:.5rem}.post-like-btn,.post-comment-toggle{padding:.3rem .6rem;font-size:.82rem}}.post-like-btn-liked{border-color:#dc262666;color:#b91c1c}.post-like-btn-disabled{opacity:.55}.post-engage-popover{position:absolute;bottom:calc(100% + .5rem);left:0;padding:.4rem .7rem;background:#111827;color:#fff;font-size:.78rem;border-radius:8px;box-shadow:0 4px 12px #0000002e;white-space:nowrap}.post-engage-note{margin:.5rem 0;font-size:.85rem;color:var(--muted)}.post-engage-note a{color:var(--accent);text-decoration:none}.post-comments{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.75rem}.post-comment-composer{display:flex;flex-direction:column;gap:.4rem}.post-comment-composer textarea{width:100%;padding:.55rem .75rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.9rem;background:#fafafa;resize:vertical}.post-comment-composer textarea:focus{outline:2px solid rgba(239,68,68,.35);background:#fff}.post-comment-composer-row{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.post-comments-loading,.post-comments-empty{margin:0;font-size:.85rem;color:var(--muted)}.post-comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.post-comment{display:flex;flex-direction:column;gap:.25rem}.post-comment-header{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.post-comment-avatar{width:28px;height:28px;border-radius:50%;background:#f4f4f5;object-fit:cover}.post-comment-avatar-placeholder{background:#d1d5db}.post-comment-name{font-weight:600;color:var(--fg)}.post-comment-time{color:var(--muted);font-size:.78rem}.post-comment-spacer{flex:1}.post-comment-menu{display:inline-flex;gap:.4rem}.post-comment-menu button{background:transparent;border:0;color:var(--muted);font-size:.78rem;cursor:pointer;padding:.15rem .4rem;border-radius:6px}.post-comment-menu button:hover{background:#0000000a;color:var(--fg)}.post-comment-body{margin:0 0 0 2rem;font-size:.92rem;color:var(--fg);white-space:pre-wrap;line-height:1.45}.post-comment-edit{margin-left:2rem;display:flex;flex-direction:column;gap:.4rem}.post-comment-edit textarea{width:100%;padding:.55rem .75rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.9rem;background:#fafafa;resize:vertical}.post-comment-edit-row{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.alumni-strip{margin:1.5rem 0 .5rem}.alumni-strip-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.alumni-strip-header h2{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.005em}.alumni-strip-viewall{font-size:.85rem;color:var(--accent);text-decoration:none}.alumni-strip-viewall:hover{text-decoration:underline}.alumni-strip-row{list-style:none;margin:0;padding:.25rem 0;display:flex;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.alumni-strip-row::-webkit-scrollbar{display:none}.alumni-strip-item{flex:0 0 auto}.alumni-strip-avatar-link{display:inline-flex;border-radius:50%;text-decoration:none;color:inherit;transition:transform .12s ease,box-shadow .12s ease}.alumni-strip-avatar-link:hover .alumni-strip-avatar,.alumni-strip-avatar-link:focus-visible .alumni-strip-avatar{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.alumni-strip-avatar-link:focus-visible{outline:2px solid rgba(239,68,68,.45);outline-offset:2px}.alumni-strip-avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;object-fit:cover;background:#f4f4f5;border:2px solid #fff;box-shadow:0 1px 3px #00000014;font-size:.78rem;font-weight:600;color:var(--fg);letter-spacing:.02em;text-transform:uppercase}.alumni-strip-avatar-placeholder{background:#d1d5db;color:#fff}.event-feed{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.event-feed-title{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.event-feed-empty{margin:0;font-size:.9rem;color:var(--muted)}.event-feed-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;align-items:stretch}.event-feed-cards>app-event-card{display:block;min-width:0}.event-feed-cards>app-event-card .event-card{height:100%;flex-direction:column;align-items:stretch;gap:.75rem}.event-feed-cards>app-event-card .event-card-date{flex:0 0 auto;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:.5rem;padding:.45rem .7rem;text-align:left}.event-feed-cards>app-event-card .event-card-date-main{font-size:.78rem}.event-feed-cards>app-event-card .event-card-date-time{margin-top:0;font-size:.78rem}.event-feed-cards>app-event-card .event-card-date-tz{display:none}@media(max-width:640px){.event-feed-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.4rem;margin:0 -.85rem;padding-left:.85rem;padding-right:.85rem}.event-feed-cards::-webkit-scrollbar{display:none}.event-feed-cards>app-event-card{flex:0 0 85%;scroll-snap-align:start}}.event-card{display:flex;gap:1rem;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--line);border-radius:14px}.event-card-date{flex:0 0 100px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.75rem .5rem;border-radius:12px;background:#ef444414;color:var(--accent)}@media(max-width:480px){.event-card-date{flex-basis:80px}}.event-card-date-main{font-size:.85rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1.2}.event-card-date-time{margin-top:.25rem;font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--fg)}.event-card-date-tz{margin-top:.1rem;font-size:.7rem;color:var(--muted)}.event-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem;position:relative}.event-card-header{display:flex;align-items:center;gap:.5rem}.event-card-title{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.event-card-spacer{flex:1}.event-card-meta{display:inline-flex;align-items:center;gap:.3rem;margin:0;font-size:.85rem;color:var(--muted)}.event-card-meta .material-symbols-outlined{font-size:18px}.event-card-description{margin:0;font-size:.92rem;color:var(--fg);white-space:pre-wrap;line-height:1.5}.event-card-footer{display:flex;align-items:center;gap:.75rem;margin-top:.3rem;position:relative}@media(max-width:640px){.event-card{gap:.75rem;padding:.85rem .9rem;border-radius:12px}.event-card-date{flex:0 0 64px;padding:.55rem .35rem}.event-card-date-main{font-size:.78rem}.event-card-date-time{font-size:.72rem}.event-card-date-tz{display:none}.event-card-header{flex-direction:column;align-items:flex-start;gap:.1rem;padding-right:1.75rem}.event-card-title{font-size:1rem;line-height:1.25}.event-card-spacer{display:none}.event-card-body>.event-card-header .post-card-menu-trigger{position:absolute;top:-.15rem;right:-.25rem}.event-card-meta{font-size:.82rem}.event-card-description{font-size:.9rem}}.event-going-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:.85rem;font-weight:500;color:var(--fg);cursor:pointer}.event-going-btn .material-symbols-outlined{font-size:18px}.event-going-btn .event-going-count{color:var(--muted);font-variant-numeric:tabular-nums}.event-going-btn:hover{background:#0000000a}.event-going-btn-going{background:var(--accent);border-color:var(--accent);color:#fff}.event-going-btn-going .event-going-count{color:#ffffffd9}.event-going-btn-going:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.event-going-btn-disabled{opacity:.55}.event-composer{display:flex;flex-direction:column;gap:.65rem;padding:1rem;margin-bottom:1rem;background:var(--surface);border:1px solid var(--line);border-radius:14px}.event-composer-banner{display:flex;flex-direction:column;gap:.5rem}.event-composer-banner-preview{width:100%;height:160px;border-radius:12px;background:#f4f4f5;overflow:hidden;display:flex;align-items:center;justify-content:center}.event-composer-banner-preview img{width:100%;height:100%;object-fit:cover;display:block}.event-composer-banner-preview--empty{border:1px dashed #d1d5db;background:#00000004}.event-composer-banner-hint{color:var(--muted, #6b7280);font-size:.85rem}.event-composer-banner-actions{display:inline-flex;align-items:center;gap:.5rem}.event-composer-banner-pick{cursor:pointer}.event-composer-field{display:flex;flex-direction:column;gap:.25rem;position:relative}.event-composer-field input,.event-composer-field textarea{width:100%;padding:.65rem .85rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.95rem;background:#fafafa;resize:vertical}.event-composer-field input:focus,.event-composer-field textarea:focus{outline:2px solid rgba(239,68,68,.35);outline-offset:0;background:#fff}.event-composer-label{font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.event-composer-row{display:flex;gap:.75rem}@media(max-width:520px){.event-composer-row{flex-direction:column}}.event-composer-row .event-composer-field{flex:1;min-width:0}.event-composer-datetime{display:flex;gap:.5rem;align-items:stretch;min-width:0}.event-composer-datetime app-date-picker{flex:1 1 auto;min-width:0}.event-composer-time{flex:0 0 130px;min-width:0}.manage-events{display:flex;flex-direction:column;gap:1rem}.manage-events-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.manage-events-head h2{margin:0;font-size:1.15rem;font-weight:600}.manage-events-head .cta{display:inline-flex;align-items:center;gap:.35rem;padding:0 1rem;height:38px;font-size:.88rem}.manage-events-head .cta .material-symbols-outlined{font-size:18px}.manage-events-tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--line)}.manage-events-tab{padding:.5rem .85rem;background:transparent;border:0;font-size:.85rem;font-weight:500;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.manage-events-tab.active{color:var(--fg);border-bottom-color:var(--accent)}.manage-events-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.manage-events-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}.manage-events-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.manage-events-row-title{font-size:.95rem;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manage-events-row-meta{font-size:.82rem;color:var(--muted)}.manage-events-row-actions{display:flex;gap:.75rem;flex-shrink:0}@media(max-width:640px){.manage-events-row{flex-direction:column;align-items:stretch;gap:.6rem;padding:.75rem .85rem}.manage-events-row-title{white-space:normal}.manage-events-row-actions{flex-wrap:wrap;gap:.5rem 1rem;padding-top:.5rem;border-top:1px solid var(--line)}}.event-attendees{display:flex;flex-direction:column;gap:1rem}.event-attendees-head{display:flex;flex-direction:column;gap:.25rem}.event-attendees-head h2{margin:0;font-size:1.15rem;font-weight:700}.event-attendees-meta{margin:0;font-size:.9rem;color:var(--muted)}.event-attendees-meta strong{color:var(--fg);font-weight:700}.event-attendees-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.event-attendee{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}.event-attendee-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;background:#f4f4f5;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:600;color:#888;text-transform:uppercase}.event-attendee-avatar-placeholder{background:#d1d5db;color:#fff}.event-attendee-name{font-size:.95rem;color:var(--fg)}.connections{max-width:920px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem;padding:2.5rem 1.25rem 3rem}.connections-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem}.connections-header h1{margin:0 0 .25rem;font-size:1.5rem}.connections-header p{margin:0;color:var(--muted)}.connections-controls{display:flex;flex-wrap:wrap;gap:.5rem}.connection-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.connection-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid var(--line);border-radius:.5rem;background:var(--surface);color:inherit;text-decoration:none;transition:border-color .15s ease,background .15s ease}.connection-card:hover,.connection-card:focus-visible{text-decoration:none;border-color:#d0d0d0;background:#fafafa}.connection-card-main{min-width:0;display:flex;flex-direction:column;gap:.35rem}.connection-card-name{margin:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection-chips{display:flex;flex-wrap:wrap;gap:.25rem}.connection-chip{display:inline-block;padding:.15rem .5rem;border-radius:999px;background:var(--bg);border:1px solid var(--line);color:var(--muted);font-size:.75rem;line-height:1.3;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-public .profile-header{flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.profile-public .profile-avatar{width:200px;height:200px;font-size:3rem}@media(max-width:640px){.profile-public .profile-avatar{width:150px;height:150px;font-size:2.4rem}}.profile-public .profile-meta{align-items:center}.profile-public .profile-meta-top{justify-content:center}.home-feed{max-width:920px;margin:0 auto;padding:2.5rem 1.25rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.home-feed__error{background:#fee2e2;color:#991b1b;border-radius:12px;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.home-feed__posts{display:flex;flex-direction:column;gap:1rem}.home-feed__more{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:.5rem}.home-feed__more-error{color:#b91c1c;font-size:.875rem;margin:0}.home-feed__be-first{color:#6b7280;text-align:center;padding:1.5rem 0}.home-composer{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:16px;padding:1rem 1.25rem 1.1rem;display:flex;flex-direction:column;gap:.7rem}.home-composer__byline{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.1rem}.home-composer__avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#e5e7eb}.home-composer__avatar--initials{display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;color:var(--fg);background:#e5e7eb;letter-spacing:.02em}.home-composer__byline-text{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1 1 auto}.home-composer__byline-name{font-weight:600;font-size:.95rem;color:var(--fg);line-height:1.2}.home-composer__byline-to{display:inline-flex;flex-wrap:wrap;align-items:center;column-gap:.4rem;row-gap:.3rem;font-size:.85rem;color:var(--muted);line-height:1.3}.home-composer__inst-static{color:var(--accent);font-weight:500}.home-composer__pills{display:inline-flex;flex-wrap:wrap;gap:.35rem}.home-composer__pill{border:1px solid var(--line);background:#fff;color:var(--fg);border-radius:999px;padding:.22rem .7rem;font:inherit;font-size:.8rem;line-height:1.2;cursor:pointer;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-composer__pill:hover{background:#f3f4f6}.home-composer__pill:focus-visible{outline:2px solid rgba(239,68,68,.35);outline-offset:1px}.home-composer__pill.is-selected{background:var(--accent);border-color:var(--accent);color:#fff}.home-composer__pill.is-selected:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.home-composer__title,.home-composer__body{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:.65rem .85rem;font:inherit;background:#fafafa;resize:vertical}.home-composer__title:focus,.home-composer__body:focus{outline:2px solid rgba(239,68,68,.35);outline-offset:0;background:#fff}.home-composer__title{font-weight:600;font-size:1.05rem}.home-composer__error{margin:0;padding:.4rem .75rem;border-radius:8px;background:#dc262614;color:#b91c1c;font-size:.85rem}.home-composer__success{margin:0;padding:.4rem .75rem;border-radius:8px;background:#16a34a1a;color:#15803d;font-size:.85rem}.home-composer__actions{display:flex;justify-content:flex-end}.home-upcoming{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:16px;padding:1rem 1.25rem}.home-upcoming__heading{font-size:.95rem;font-weight:600;color:#374151;margin:0 0 .75rem}.home-upcoming__list{display:flex;flex-direction:column;gap:.75rem}.home-empty{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:16px;padding:2rem 1.5rem;text-align:center}.home-empty h2{margin:0 0 .4rem}.home-empty p{color:#6b7280;margin:0 0 1rem}.post-card__institution,.event-card__institution{display:inline-block;font-size:.75rem;font-weight:500;color:#222;background:#2222220f;padding:.15rem .55rem;border-radius:999px;text-decoration:none;margin-top:.2rem;width:max-content}.post-card__institution:hover,.event-card__institution:hover,.post-card__institution:focus,.event-card__institution:focus{text-decoration:none;background:#2222221f}.app-form-page{max-width:640px;margin:0 auto;padding:2rem 1.25rem 3rem}.app-form-page .back-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--muted);text-decoration:none;margin-bottom:1rem}.app-form-page .back-link:hover{color:var(--text)}.app-form-page__title{margin:0 0 .25rem;font-size:1.75rem;letter-spacing:-.01em}.app-form-page__lede{color:var(--muted);margin:0 0 1.5rem;font-size:.95rem}.app-form{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:16px;padding:1.25rem 1.5rem 1.5rem;box-shadow:0 1px 2px #11182708;gap:1.25rem}.app-form__section{border:0;margin:0;padding:0 0 1rem;display:flex;flex-direction:column;gap:.85rem;border-bottom:1px solid rgba(17,24,39,.06)}.app-form__section:last-of-type{border-bottom:0;padding-bottom:0}.app-form__legend{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;padding:0;margin-bottom:.25rem}.app-form__legend .material-symbols-outlined{font-size:1.1rem;color:#222}.app-form__error{margin:0;padding:.6rem .85rem;background:#fee2e2;color:#991b1b;border-radius:10px;font-size:.875rem}.app-form__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.25rem}@media(max-width:480px){.app-form{padding:1rem 1rem 1.25rem;border-radius:12px}.app-form__actions{flex-direction:column-reverse}.app-form__actions .cta{width:100%;text-align:center}}.date-picker{position:relative;width:100%}.date-picker__trigger{width:100%;height:40px;display:inline-flex;align-items:center;gap:.55rem;padding:0 .75rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#111;font:inherit;font-size:.95rem;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.date-picker__trigger:hover{border-color:#b5b5b5}.date-picker__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.date-picker__trigger .material-symbols-outlined{font-size:1.1rem;color:#222;flex:0 0 auto}.date-picker__trigger .date-picker__chev{margin-left:auto;color:#6b7280}.date-picker__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-picker__trigger.is-empty .date-picker__value{color:#9ca3af}.date-picker__panel{position:absolute;z-index:50;top:calc(100% + 6px);left:0;width:320px;max-width:calc(100vw - 1.5rem);background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:14px;box-shadow:0 12px 32px #1118271f,0 2px 4px #1118270d;padding:.85rem;display:flex;flex-direction:column;gap:.65rem}.date-picker__header{display:flex;align-items:center;gap:.4rem}.date-picker__selects{flex:1 1 auto;display:flex;gap:.4rem;justify-content:center}.date-picker__select{appearance:none;-webkit-appearance:none;height:32px;padding:0 .55rem;border:1px solid rgba(17,24,39,.1);border-radius:8px;background:#fff;font:inherit;font-size:.9rem;font-weight:600;color:#111;cursor:pointer}.date-picker__select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.date-picker__nav{width:32px;height:32px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;color:#222}.date-picker__nav:hover{background:#1118270d}.date-picker__nav:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.date-picker__nav .material-symbols-outlined{font-size:1.25rem}.date-picker__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:.72rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;text-align:center;padding:0 .1rem}.date-picker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.date-picker__cell{height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;font:inherit;font-size:.875rem;color:#111;cursor:pointer;transition:background .12s ease}.date-picker__cell:hover:not(.is-selected){background:#1118270d}.date-picker__cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.date-picker__cell.is-other{color:#cbd1d9}.date-picker__cell.is-today:not(.is-selected){border-color:#22222259;font-weight:600}.date-picker__cell.is-selected{background:var(--accent);color:#fff;font-weight:600}.date-picker__cell.is-selected:hover{background:var(--accent-hover)}.date-picker__footer{display:flex;justify-content:flex-end;gap:.4rem;padding-top:.4rem;border-top:1px solid rgba(17,24,39,.06)}.date-picker__action{background:transparent;border:1px solid transparent;border-radius:8px;height:32px;padding:0 .85rem;font:inherit;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer}.date-picker__action:hover{background:#1118270d;color:#111}.date-picker__action--primary{color:var(--accent)}.date-picker__action--primary:hover{background:#ef444414;color:var(--accent-hover)}.time-picker{position:relative;width:100%}.time-picker__trigger{width:100%;height:40px;display:inline-flex;align-items:center;gap:.45rem;padding:0 .55rem 0 .7rem;border:1px solid #d4d4d4;border-radius:8px;background:#fff;color:#111;font:inherit;font-size:.95rem;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.time-picker__trigger:hover{border-color:#b5b5b5}.time-picker__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.time-picker__trigger .material-symbols-outlined{font-size:1.1rem;color:#222;flex:0 0 auto}.time-picker__trigger .time-picker__chev{margin-left:auto;color:#6b7280}.time-picker__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.time-picker__trigger.is-empty .time-picker__value{color:#9ca3af}.time-picker__panel{position:absolute;z-index:50;top:calc(100% + 6px);right:0;background:#fff;border:1px solid rgba(17,24,39,.1);border-radius:14px;box-shadow:0 12px 32px #1118271f,0 2px 4px #1118270d;padding:.6rem;display:flex;flex-direction:column;gap:.55rem}.time-picker__columns{display:flex;align-items:stretch;gap:.3rem}.time-picker__col{width:64px;max-height:216px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:2px;scrollbar-width:thin}.time-picker__col::-webkit-scrollbar{width:6px}.time-picker__col::-webkit-scrollbar-thumb{background:#11182726;border-radius:3px}.time-picker__sep{align-self:center;font-size:1.1rem;font-weight:600;color:#9ca3af;padding:0 .1rem}.time-picker__cell{height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;font:inherit;font-size:.875rem;font-variant-numeric:tabular-nums;color:#111;cursor:pointer;transition:background .12s ease}.time-picker__cell:hover:not(.is-selected){background:#1118270d}.time-picker__cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.time-picker__cell.is-selected{background:var(--accent);color:#fff;font-weight:600}.time-picker__cell.is-selected:hover{background:var(--accent-hover)}.time-picker__footer{display:flex;justify-content:flex-end;gap:.4rem;padding-top:.4rem;border-top:1px solid rgba(17,24,39,.06)}.time-picker__action{background:transparent;border:1px solid transparent;border-radius:8px;height:30px;padding:0 .75rem;font:inherit;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer}.time-picker__action:hover{background:#1118270d;color:#111}.time-picker__action--primary{color:var(--accent)}.time-picker__action--primary:hover{background:#ef444414;color:var(--accent-hover)}.profile-edit__avatar-row{display:flex;align-items:center;gap:1rem}.profile-edit__avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#f1f1f1;flex:0 0 auto}.profile-edit__avatar--placeholder{display:inline-flex;align-items:center;justify-content:center;color:#555;font-size:1.5rem;font-weight:600;text-transform:uppercase}.profile-edit__avatar-actions{display:flex;flex-direction:column;gap:.4rem;min-width:0}.profile-edit__avatar-btn{position:relative;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;width:max-content}.profile-edit__avatar-btn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.profile-edit__avatar-btn .material-symbols-outlined{font-size:1.05rem}.profile-edit__avatar-btn.is-disabled{opacity:.6;pointer-events:none}.profile-edit__avatar-hint{margin:0;font-size:.78rem;color:var(--muted)}@media(max-width:480px){.profile-edit__avatar-row{align-items:flex-start}}.job-card{display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:14px;position:relative;margin-bottom:.85rem}.job-card--inactive{opacity:.78}.job-card-head{display:flex;align-items:flex-start;gap:.75rem}.job-card-titleblock{flex:1;min-width:0}.job-card-titleblock .job-card-title{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.job-card-titleblock .job-card-title a{color:var(--fg);text-decoration:none}.job-card-titleblock .job-card-title a:hover{color:var(--accent)}.job-card-titleblock .job-card-company{margin:.15rem 0 0;font-size:.9rem;color:var(--muted)}.job-card-chips{display:flex;flex-wrap:wrap;gap:.4rem}.job-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;background:#ef444414;color:var(--accent);font-size:.75rem;font-weight:600}.job-chip .material-symbols-outlined{font-size:16px}.job-chip--inactive{background:#0000000d;color:var(--muted)}.job-card-body{margin:0;font-size:.92rem;color:var(--fg);white-space:pre-wrap;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.job-card-foot{display:flex;align-items:center;gap:.6rem}.job-card-apply{display:inline-flex;align-items:center;gap:.35rem;height:36px;padding:0 .95rem;font-size:.85rem}.job-card-apply .material-symbols-outlined{font-size:18px}.job-card-apply--disabled{opacity:.5;pointer-events:none}.job-composer{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:.85rem}.job-composer label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--fg)}.job-composer label input,.job-composer label select,.job-composer label textarea{border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem;font:inherit;font-size:.95rem;background:#fff}.job-composer label textarea{resize:vertical}.job-composer-actions{display:flex;justify-content:flex-end;gap:.5rem}.job-empty{margin:1.5rem 0;font-size:.95rem;color:var(--muted);text-align:center}.job-banner{margin:0 0 1rem;padding:.65rem .95rem;background:#0000000a;color:var(--muted);border-radius:8px;font-size:.9rem}.institution-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin:1.5rem 0 .5rem}.institution-toolbar__btn{display:inline-flex;align-items:center;gap:.4rem;height:36px;padding:0 .95rem;font-size:.85rem}.institution-toolbar__btn .material-symbols-outlined{font-size:18px}.institution-toolbar__member{display:inline-flex;align-items:center;gap:.35rem;height:36px;padding:0 .85rem;border-radius:999px;background:#22c55e1f;color:#15803d;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none}.institution-toolbar__member:hover{background:#22c55e2e}.institution-toolbar__member .material-symbols-outlined{font-size:16px;text-transform:none}.institution-jobs{margin:3.5rem 0 2rem}.institution-jobs-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.institution-jobs-head h2{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.institution-jobs-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;align-items:stretch}.institution-jobs-cards>app-job-card{display:block;min-width:0}.institution-jobs-cards>app-job-card .job-card{margin-bottom:0;height:100%}@media(max-width:640px){.institution-jobs-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.4rem;margin:0 -.85rem;padding-left:.85rem;padding-right:.85rem}.institution-jobs-cards::-webkit-scrollbar{display:none}.institution-jobs-cards>app-job-card{flex:0 0 85%;scroll-snap-align:start}}@media(max-width:640px){.job-card{padding:.85rem .9rem;border-radius:12px}.job-card-title{font-size:1rem}}.membership-composer{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:.85rem}.membership-composer label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--fg)}.membership-composer label input,.membership-composer label select,.membership-composer label textarea{border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem;font:inherit;font-size:.95rem;background:#fff;box-sizing:border-box;width:100%}.membership-composer-static{margin:0;font-size:.95rem;color:var(--fg)}.membership-composer-actions{display:flex;justify-content:flex-end;gap:.5rem}.membership-composer-actions .cta{height:36px;padding:0 .95rem;font-size:.85rem}.member-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;margin-left:.5rem;background:#22c55e1f;color:#15803d;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.member-chip .material-symbols-outlined{font-size:14px}.settings-card>label:not(.settings-toggle),.settings-membership-row label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:var(--muted)}.settings-card>label:not(.settings-toggle)>span:first-child,.settings-membership-row label>span:first-child{letter-spacing:.02em}.settings-card>label:not(.settings-toggle) input[type=number],.settings-card>label:not(.settings-toggle) input[type=text]:not(.settings-brand-input),.settings-card>label:not(.settings-toggle) select,.settings-card>label:not(.settings-toggle) textarea,.settings-membership-row label input[type=number],.settings-membership-row label input[type=text]:not(.settings-brand-input),.settings-membership-row label select,.settings-membership-row label textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;padding:.55rem .7rem;font:inherit;font-size:.95rem;font-weight:400;color:var(--fg);background:#fff}.settings-card>label:not(.settings-toggle) input[type=number]:focus,.settings-card>label:not(.settings-toggle) input[type=text]:not(.settings-brand-input):focus,.settings-card>label:not(.settings-toggle) select:focus,.settings-card>label:not(.settings-toggle) textarea:focus,.settings-membership-row label input[type=number]:focus,.settings-membership-row label input[type=text]:not(.settings-brand-input):focus,.settings-membership-row label select:focus,.settings-membership-row label textarea:focus{outline:2px solid rgba(239,68,68,.35);outline-offset:0;border-color:transparent}.settings-card>label:not(.settings-toggle) textarea,.settings-membership-row label textarea{resize:vertical;min-height:5rem;line-height:1.4}.settings-card>label:not(.settings-toggle) select,.settings-membership-row label select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:1.2rem;padding-right:2rem}.settings-membership-row{display:flex;gap:.75rem;flex-wrap:wrap}.settings-membership-row label{flex:1 1 140px;min-width:0}.settings-membership-actions{display:flex;justify-content:flex-end;margin-top:.25rem}.settings-membership-actions .cta{height:36px;padding:0 .95rem;font-size:.85rem}.membership-info-dialog{width:min(520px,100vw - 2.5rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-height:calc(100vh - 4rem);overflow-y:auto}.membership-info-dialog__head{display:flex;flex-direction:column;gap:.25rem;padding-right:.5rem}.membership-info-dialog__price{margin:0;font-size:1rem;color:var(--muted)}.membership-info-dialog__price strong{color:var(--accent);font-weight:700;margin-right:.35rem}.membership-info-dialog__body{display:flex;flex-direction:column;gap:.6rem;margin-top:.4rem}.membership-info-dialog__body h3{margin:.5rem 0 0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.membership-info-dialog__body p{margin:0;font-size:.95rem;color:var(--fg);line-height:1.45}.membership-info-dialog__perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.membership-info-dialog__perks li{display:flex;align-items:flex-start;gap:.7rem}.membership-info-dialog__perks li>.material-symbols-outlined{flex:0 0 auto;font-size:22px;color:var(--accent);margin-top:.1rem}.membership-info-dialog__perks li>div{display:flex;flex-direction:column;gap:.15rem}.membership-info-dialog__perks li strong{font-size:.95rem;font-weight:600;color:var(--fg)}.membership-info-dialog__perks li span{font-size:.88rem;color:var(--muted);line-height:1.4}.membership-info-dialog__instructions{white-space:pre-wrap;padding:.55rem .75rem;background:#00000008;border-radius:8px}.membership-info-dialog__status{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .7rem;background:#22c55e1f;color:#15803d;border-radius:999px;font-size:.85rem;font-weight:600;align-self:flex-start}.membership-info-dialog__status .material-symbols-outlined{font-size:16px}.membership-return{max-width:640px;margin:4rem auto}.membership-return .settings-card{text-align:center}.membership-return .settings-card h2{margin-bottom:.75rem}.membership-return .settings-card p{margin-bottom:1.5rem}.settings-hint{font-size:.875rem;color:var(--text-secondary, #6b7280);margin:.25rem 0 .75rem}.transactions-filterbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin:1rem 0 1.25rem}.transactions-filterbar label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;min-width:8rem}.transactions-filterbar label span{color:var(--text-secondary, #6b7280)}.transactions-filterbar label input,.transactions-filterbar label select{padding:.45rem .6rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem}.transactions-filterbar__search{flex:1 1 14rem}.transactions-filterbar .cta{flex:0 0 auto}.transactions-table{width:100%;border-collapse:collapse;font-size:.95rem}.transactions-table th,.transactions-table td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb}.transactions-table th{font-weight:600;color:var(--text-secondary, #6b7280);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}@media(max-width:640px){.transactions-table thead{display:none}.transactions-table tr{display:block;padding:.6rem 0;border-bottom:1px solid #e5e7eb}.transactions-table td{display:flex;justify-content:space-between;border:none;padding:.25rem 0}.transactions-table td:before{content:attr(data-label);font-weight:600;color:var(--text-secondary, #6b7280)}}.transactions-status{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.8rem;font-weight:600}.transactions-status--paid{background:#22c55e1f;color:#15803d}.transactions-status--failed{background:#ef44441f;color:#b91c1c}.transactions-status--pending{background:#f59e0b24;color:#b45309}.transactions-status--muted{background:#0000000d;color:#4b5563}.transactions-ref{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;background:none;border:1px dashed #d1d5db;border-radius:4px;padding:.15rem .4rem;cursor:pointer}.transactions-ref:hover{border-style:solid}.transactions-pager{display:flex;align-items:center;gap:1rem;margin-top:1rem;justify-content:center;color:var(--text-secondary, #6b7280);font-size:.9rem}.transactions-empty{text-align:center;padding:2.5rem 1rem}.plans-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.plans-page__title{flex:1 1 auto;min-width:0}.plans-page__title h2{margin:0 0 .25rem}.plans-page__title p{margin:0 0 .5rem}.plans-page__archive-toggle{margin-top:.5rem}.plans-page__create{flex:0 0 auto;margin-left:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:.35rem}.plans-page__create .material-symbols-outlined{font-size:18px}.plans-section{margin-top:1.5rem}.plans-section h3{margin-bottom:.5rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #6b7280)}.plan-card{display:flex;justify-content:space-between;align-items:center;padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;gap:.75rem;flex-wrap:wrap}.plan-card--archived{opacity:.6}.plan-card__main{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1 1 auto}.plan-card__description{display:block;margin-top:.25rem;font-size:.85rem;color:var(--text-secondary, #6b7280);white-space:pre-line}.plan-card__actions{display:flex;align-items:center;gap:.35rem}.plan-card__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#4b5563;cursor:pointer;padding:0}.plan-card__icon-btn .material-symbols-outlined{font-size:18px}.plan-card__icon-btn:hover{border-color:#94a3b8;color:#1f2937}.plan-card__icon-btn--danger{color:#b91c1c}.plan-card__icon-btn--danger:hover{border-color:#ef4444;color:#991b1b;background:#ef444414}.plan-form{display:flex;flex-direction:column;gap:.75rem}.plan-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.plan-form label input,.plan-form label select{padding:.5rem .6rem;border:1px solid #d1d5db;border-radius:6px}.plan-picker{--plan-slots: 3;--plan-card-w: 240px;--plan-gap: 1.5rem;--plan-pad: 4rem;width:min(var(--plan-card-w) * var(--plan-slots) + var(--plan-gap) * (var(--plan-slots) - 1) + var(--plan-pad) * 2,92vw);max-width:min(var(--plan-card-w) * var(--plan-slots) + var(--plan-gap) * (var(--plan-slots) - 1) + var(--plan-pad) * 2,92vw);max-height:90vh;overflow-y:auto;padding:var(--plan-pad) var(--plan-pad) 1.5rem}.plan-picker__head{text-align:center;margin-bottom:1.5rem}.plan-picker__title{margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.plan-picker__instructions{margin:0 auto;max-width:540px;color:var(--text-secondary, #6b7280);font-size:.95rem}.plan-picker__member{display:inline-flex;align-items:center;gap:.35rem;margin:.75rem auto 0;padding:.35rem .75rem;background:#22c55e1f;color:#15803d;border-radius:999px;font-size:.85rem;font-weight:600}.plan-picker__member .material-symbols-outlined{font-size:16px}.plan-picker__empty{text-align:center;color:var(--text-secondary, #6b7280);padding:2rem 0}.plan-picker__group{margin-top:2rem}.plan-picker__group:first-of-type{margin-top:.5rem}.plan-picker__group-title{position:relative;text-align:center;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary, #6b7280);margin:0 0 1.25rem}.plan-picker__group-title:before,.plan-picker__group-title:after{content:"";position:absolute;top:50%;width:calc(50% - 5rem);height:1px;background:#e5e7eb}.plan-picker__group-title:before{left:0}.plan-picker__group-title:after{right:0}.plan-picker__toggle{display:flex;justify-content:center;margin-bottom:1.5rem}.plan-picker__toggle-pill{display:inline-flex;align-items:center;gap:4px;padding:4px;background:#f1f5f9;border-radius:999px}.plan-picker__toggle-btn{border:none;background:transparent;padding:.5rem 1.4rem;border-radius:999px;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.plan-picker__toggle-btn:hover{color:#0f172a}.plan-picker__toggle-btn--active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a1a}.plan-picker__row{display:flex;flex-wrap:nowrap;justify-content:center;gap:1rem;padding:.25rem 0 .75rem;overflow-x:auto}.plan-picker__row::-webkit-scrollbar{height:8px}.plan-picker__row::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.plan-picker__footer{position:sticky;bottom:-1.5rem;background:#fff;display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:1.75rem;padding:1rem 0;border-top:1px solid #e5e7eb}.plan-picker__pay{padding:.5rem 1.25rem;font-size:.9rem;font-weight:600}.plan-picker__pay:disabled{opacity:.55;cursor:not-allowed}.plan-picker__error{text-align:center;margin-top:1rem}.pricing-card{flex:0 0 240px;display:flex;flex-direction:column;padding:1.75rem 1.25rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,background .2s ease}.pricing-card:hover{border-color:#94a3b8;transform:translateY(-2px);box-shadow:0 8px 24px #0f172a14}.pricing-card--selected{border-color:#ef4444;background:#ef44440a;box-shadow:0 0 0 1px #ef4444 inset,0 10px 28px #ef44441f}.pricing-card--selected:hover{border-color:#ef4444}.pricing-card__head{text-align:center;margin-bottom:1rem}.pricing-card__name{margin:0;font-size:1rem;font-weight:600;color:#111827}.pricing-card__price{text-align:center;margin-bottom:1.5rem}.pricing-card__amount{display:block;font-size:2.25rem;font-weight:700;line-height:1.1;color:#111827;letter-spacing:-.02em}.pricing-card__period{display:block;font-size:.85rem;color:var(--text-secondary, #6b7280);margin-top:.35rem}.pricing-card__description{margin:0 0 1.25rem;font-size:.85rem;color:var(--text-secondary, #6b7280);text-align:center;line-height:1.4;white-space:pre-line}.pricing-card__select{width:100%;margin-top:auto;padding:.5rem .75rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;transition:background .15s ease,color .15s ease,border-color .15s ease}.pricing-card__select .material-symbols-outlined{font-size:18px}.pricing-card__select:hover{border-color:#94a3b8}.pricing-card__select--active{background:#ef4444;color:#fff;border-color:#ef4444}.pricing-card__select--active:hover{border-color:#b91c1c;background:#dc2626}.donate-dialog{width:min(480px,92vw);max-width:min(480px,92vw);display:flex;flex-direction:column;gap:.9rem;padding:1.75rem 1.75rem 1.5rem}.donate-dialog__head{text-align:center;margin-bottom:.25rem}.donate-dialog__tagline{margin:0;color:var(--text-secondary, #6b7280);font-size:.95rem}.donate-dialog__amount-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.donate-dialog__chip{padding:.55rem .5rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.donate-dialog__chip:hover{border-color:#94a3b8}.donate-dialog__chip--active{background:#ef4444;color:#fff;border-color:#ef4444}.donate-dialog>label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-secondary, #6b7280)}.donate-dialog input[type=text],.donate-dialog input[type=number],.donate-dialog textarea{width:100%;padding:.6rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;font-family:inherit;color:#111827;background:#fff;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.donate-dialog input[type=text]:focus,.donate-dialog input[type=number]:focus,.donate-dialog textarea:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b833}.donate-dialog textarea{min-height:5rem;resize:vertical;line-height:1.4}.donate-dialog__recurring{display:flex;flex-direction:row!important;align-items:center;gap:.55rem;font-size:.9rem;color:#1f2937;cursor:pointer;padding:.25rem 0}.donate-monthly-pill{margin-left:.4rem;font-size:.7rem;padding:.15rem .45rem}.event-capacity-chip{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.8rem;font-weight:600;background:#3b82f61f;color:#1d4ed8;margin-right:.5rem}.event-capacity-chip--sold-out{background:#ef44441f;color:#b91c1c}.event-detail{max-width:720px;margin:2rem auto;padding:0 1rem}.event-detail .back-link{display:inline-block;margin-bottom:1rem}.event-detail__hero{position:relative;margin-bottom:1rem;border-radius:16px;overflow:hidden}.event-detail__cover{display:block;width:100%;height:200px;object-fit:cover;background:#f4f4f5}.event-detail__cover--banner{height:280px}.event-detail__cover--fallback{background:linear-gradient(135deg,#3b82f62e,#a855f72e)}.event-detail__hero-inst{position:absolute;left:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .85rem .4rem .45rem;background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;box-shadow:0 6px 20px -10px #00000059;text-decoration:none;color:#111827;font-weight:600;font-size:.9rem;max-width:calc(100% - 2rem)}.event-detail__hero-inst:hover{background:#fff}.event-detail__hero-logo{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#f4f4f5;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.event-detail__hero-logo--placeholder{background:#e5e7eb;color:#4b5563;font-size:.9rem;font-weight:700}.event-detail__hero-inst-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-detail__card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem 1.5rem 2rem}.event-detail__head{display:flex;gap:1.25rem;align-items:flex-start;margin-bottom:1.25rem}.event-detail__head h1{margin:0 0 .35rem;font-size:1.5rem}.event-detail__meta{margin:0 0 .5rem;color:var(--text-secondary, #6b7280);font-size:.95rem;display:inline-flex;align-items:center;gap:.3rem}.event-detail__meta-icon{font-size:18px}.event-detail__price{margin:1rem 0 1.25rem;font-size:1.25rem;font-weight:600;color:#111827}.event-detail__hint{display:block;margin-top:.25rem;font-size:.85rem;font-weight:500;color:var(--text-secondary, #6b7280)}.event-detail__actions{display:flex;gap:.5rem;margin-bottom:1.5rem}.event-detail__about{border-top:1px solid #e5e7eb;padding-top:1.25rem}.event-detail__about h2{font-size:1rem;margin:0 0 .5rem}.event-detail__about p{margin:0;white-space:pre-line;color:#1f2937}.event-booking-dialog{width:min(440px,92vw);max-width:min(440px,92vw);padding:1.5rem 1.5rem 1.25rem}.event-booking-dialog__head{margin-bottom:1rem}.event-booking-dialog__when{margin:.25rem 0 0;color:var(--text-secondary, #6b7280);font-size:.9rem}.event-booking-dialog__qty-wrap{display:flex;flex-direction:column;gap:.4rem;margin:.5rem 0 1rem}.event-booking-dialog__qty-wrap>span{font-size:.9rem;color:var(--text-secondary, #6b7280)}.event-booking-dialog__qty{display:inline-flex;align-items:center;gap:.5rem}.event-booking-dialog__qty input{width:4rem;padding:.5rem .4rem;text-align:center;border:1px solid #d1d5db;border-radius:6px;font-size:1.1rem;font-weight:600}.event-booking-dialog__qty-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:1.25rem;font-weight:700;color:#1f2937;cursor:pointer}.event-booking-dialog__qty-btn:hover:not(:disabled){border-color:#94a3b8}.event-booking-dialog__qty-btn:disabled{opacity:.4;cursor:not-allowed}.event-booking-dialog__totals{display:flex;justify-content:space-between;align-items:baseline;padding:.6rem 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;font-size:1rem}.event-booking-dialog__totals strong{font-size:1.2rem;font-weight:700}.event-booking-dialog__hint{margin:.5rem 0 0;font-size:.85rem;color:#15803d}.event-booking-dialog__error{margin-top:.75rem;text-align:center}.event-card__going-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;background:#22c55e1f;color:#15803d;border-radius:999px;font-size:.75rem;font-weight:600}.event-card__going-badge .material-symbols-outlined{font-size:14px}.event-card--linked{position:relative;cursor:pointer;transition:background .12s ease}.event-card--linked:hover{background:#00000005}.event-card__cover-link{position:absolute;inset:0;z-index:1;text-decoration:none;border-radius:inherit}.event-card__cover-link:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}.event-card--linked .event-card__institution,.event-card--linked .post-card-menu-trigger,.event-card--linked .post-card-menu{position:relative;z-index:2}.booking-confirmed{text-align:center;padding:2rem 1.5rem 1.75rem}.booking-confirmed__icon{display:inline-block;font-size:64px;color:#15803d;line-height:1;margin-bottom:.5rem}.booking-confirmed h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.booking-confirmed__lead{margin:0 auto 1.25rem;max-width:36ch;color:#1f2937;font-size:1rem;line-height:1.45}.booking-confirmed__details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0 auto 1.5rem;padding:.85rem 1rem;background:#22c55e14;border-radius:12px;max-width:480px}.booking-confirmed__details div{display:flex;flex-direction:column;align-items:center;gap:.15rem}.booking-confirmed__details dt{margin:0;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted, #6b7280);font-weight:600}.booking-confirmed__details dd{margin:0;font-size:.95rem;font-weight:600;color:#111827}@media(max-width:480px){.booking-confirmed__details{grid-template-columns:1fr}}.booking-confirmed__actions{display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
