:root{--shadow-xs:0 1px 2px #1a1f180f;--shadow-sm:0 2px 10px -4px #1a1f181a, 0 1px 2px #1a1f180f;--shadow-md:0 10px 28px -10px #1a1f1829, 0 2px 6px -2px #1a1f1814;--shadow-lg:0 24px 56px -16px #1a1f1838, 0 4px 12px -4px #1a1f181a;--shadow-moss:0 10px 26px -10px #0e2c1b73;--radius-lg:14px;--radius-xl:20px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}.portal-shell svg,.portal-guest svg,.chat-dock svg{shape-rendering:geometricprecision}.empty-state span{font-variation-settings:"opsz" 72, "SOFT" 60;font-family:Fraunces,serif;font-size:19px;font-style:italic;display:block}.empty-state-icon{width:38px;height:38px;color:var(--ink-2);opacity:.65;margin:0 auto 16px;display:block}:focus-visible{outline:2px solid var(--moss);outline-offset:3px;border-radius:3px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.pf-grid>*,.req-list>*,.conn-grid>*,.thread-list>.thread-item,.skill-pills>*{animation:fadeInUp .45s var(--ease-out) backwards}.pf-grid>:first-child,.req-list>:first-child,.conn-grid>:first-child{animation-delay:0s}.pf-grid>:nth-child(2),.req-list>:nth-child(2),.conn-grid>:nth-child(2){animation-delay:40ms}.pf-grid>:nth-child(3),.req-list>:nth-child(3),.conn-grid>:nth-child(3){animation-delay:80ms}.pf-grid>:nth-child(4),.req-list>:nth-child(4),.conn-grid>:nth-child(4){animation-delay:.12s}.pf-grid>:nth-child(5),.req-list>:nth-child(5),.conn-grid>:nth-child(5){animation-delay:.16s}.pf-grid>:nth-child(6),.req-list>:nth-child(6),.conn-grid>:nth-child(6){animation-delay:.2s}.pf-grid>:nth-child(n+7),.req-list>:nth-child(n+7),.conn-grid>:nth-child(n+7){animation-delay:.24s}.skeleton{background:var(--paper-deep);border-radius:var(--radius-sm);position:relative;overflow:hidden;color:#0000!important}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff8c,#0000) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}.portal-loading-screen{background:var(--paper);justify-content:center;align-items:center;min-height:100vh;display:flex}.portal-loading-mark{animation:fadeIn .4s var(--ease-out);flex-direction:column;align-items:center;gap:16px;display:flex}.portal-spinner{border:2.5px solid var(--rule);border-top-color:var(--moss);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.portal-loading-mark span{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:11.5px}.portal-guest{background:radial-gradient(ellipse 60% 50% at 85% -10%, #1f4d321a, transparent 60%), radial-gradient(ellipse 50% 40% at 0% 15%, #2c684412, transparent 60%), var(--paper);min-height:100vh}.portal-guest-header{border-bottom:var(--hairline);justify-content:space-between;align-items:center;padding:24px 40px;display:flex}.portal-guest-brand{color:var(--ink);text-decoration:none}.portal-guest-back{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:12px;transition:color .15s}.portal-guest-back:hover{color:var(--moss)}.brand-mark{color:inherit;align-items:center;gap:12px;display:inline-flex}.brand-mark-logo{flex:none;width:auto;height:46px;display:block}.brand-mark-text{flex-direction:column;line-height:1.2;display:flex}.brand-mark-text strong{letter-spacing:-.01em;color:inherit;font-family:Fraunces,serif;font-size:19px;font-weight:600}.brand-mark-text small{letter-spacing:.1em;text-transform:uppercase;color:inherit;opacity:.8;font-family:Geist Mono,monospace;font-size:12px;font-weight:600}.portal-hero-split{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;min-height:600px;display:grid}.portal-hero-copy{flex-direction:column;justify-content:center;max-width:620px;padding:64px 56px;display:flex}.portal-hero-copy .sec-tag{margin-bottom:18px}.portal-hero-copy h1{letter-spacing:-.025em;color:var(--ink);font-variation-settings:"opsz" 144, "SOFT" 30;font-family:Fraunces,serif;font-size:clamp(36px,4.2vw,58px);font-weight:300;line-height:1.06}.portal-hero-copy h1 em{color:var(--moss);font-style:italic;font-weight:400}.portal-hero-copy p.lede{color:var(--ink-2);max-width:50ch;margin-top:20px;font-size:16.5px;line-height:1.75}.portal-hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.portal-hero-fine{color:var(--ink-3);border-left:2px solid var(--rule);max-width:48ch;margin-top:28px;padding-left:14px;font-size:12.5px;line-height:1.6}.portal-hero-panel{background:linear-gradient(165deg, var(--moss-deep), var(--moss-mid) 72%, #357a4e);color:#fff;flex-direction:column;justify-content:center;padding:56px;display:flex;position:relative;overflow:hidden}.portal-hero-panel:before{content:"";background:radial-gradient(circle,#ffffff14,#0000 70%);border-radius:50%;width:440px;height:440px;position:absolute;inset:-20% -15% auto auto}.portal-hero-panel:after{content:"";background:radial-gradient(circle,#ffffff0f,#0000 70%);border-radius:50%;width:360px;height:360px;position:absolute;bottom:-16%;left:-14%}.portal-hero-panel .sec-tag{color:#ffffffb3;margin-bottom:26px;position:relative}.portal-hero-steps{flex-direction:column;gap:6px;display:flex;position:relative}.portal-hero-steps li{border-top:1px solid #ffffff1f;border-radius:12px;align-items:flex-start;gap:18px;padding:22px 14px;transition:background .18s;display:flex}.portal-hero-steps li:hover{background:#ffffff0e}.portal-hero-steps li:last-child{border-bottom:1px solid #ffffff1f}.portal-hero-step-num{color:#fff6;margin-top:8px;font-family:Geist Mono,monospace;font-size:12px}.portal-hero-steps .portal-hero-step-icon{width:52px;height:52px;color:var(--moss-deep);background:#fff;border-radius:14px;flex:none;justify-content:center;align-items:center;display:flex;box-shadow:0 10px 22px #00000038}.portal-hero-steps strong{color:#fff;margin-bottom:5px;font-family:Fraunces,serif;font-size:18px;font-weight:500;display:block}.portal-hero-steps span{color:#ffffffbd;font-size:13.5px;line-height:1.65;display:block}.portal-auth-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.portal-auth-intro{background:linear-gradient(165deg, var(--moss-deep), var(--moss-mid) 72%, #357a4e);color:#fff;align-items:center;padding:64px 60px;display:flex;position:relative;overflow:hidden}.portal-auth-intro:before{content:"";background:radial-gradient(circle,#ffffff14,#0000 70%);border-radius:50%;width:460px;height:460px;position:absolute;inset:-20% -10% auto auto}.portal-auth-intro:after{content:"";background:radial-gradient(circle,#ffffff0f,#0000 70%);border-radius:50%;width:380px;height:380px;position:absolute;bottom:-18%;left:-12%}.portal-auth-intro-inner{max-width:420px;animation:fadeInUp .5s var(--ease-out);position:relative}.portal-auth-intro .sec-tag{color:#ffffffb3}.portal-auth-intro h2{letter-spacing:-.02em;color:#fff;font-family:Fraunces,serif;font-size:clamp(28px,3vw,38px);font-weight:300;line-height:1.12}.portal-auth-intro h2 em{font-style:italic;font-weight:400}.portal-auth-intro>.portal-auth-intro-inner>p{color:#ffffffc7;margin-top:16px;font-size:15px;line-height:1.7}.portal-auth-points{flex-direction:column;gap:18px;margin-top:36px;display:flex}.portal-auth-points li{color:#ffffffe0;align-items:flex-start;gap:13px;font-size:13.5px;line-height:1.6;display:flex}.portal-auth-points svg{color:#fff;opacity:.85;flex:none;width:19px;height:19px;margin-top:1px}.portal-auth-form-side{justify-content:center;align-items:center;padding:48px 20px;display:flex}.portal-auth-wrap{justify-content:center;padding:72px 20px 96px;display:flex}.portal-auth-card{border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);animation:scaleIn .4s var(--ease-out);background:#fff;padding:40px 36px}.portal-auth-card.wide{max-width:560px}.portal-auth-card h1{color:var(--ink);margin-bottom:6px;font-family:Fraunces,serif;font-size:28px;font-weight:500}.portal-auth-card p.sub{color:var(--ink-3);margin-bottom:28px;font-size:14px}.field{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.field label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);font-family:Geist Mono,monospace;font-size:11px}.field input,.field select,.field textarea{color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);width:100%;padding:12px 14px;font-family:Geist,sans-serif;font-size:15px;transition:border-color .18s,box-shadow .18s,background .18s}.field input:hover,.field select:hover,.field textarea:hover{border-color:#b9ae8c}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--moss);box-shadow:0 0 0 4px var(--moss-soft);background:#fff;outline:none}.field textarea{resize:vertical;min-height:90px;font-family:inherit;line-height:1.55}.field .hint{color:var(--ink-3);font-size:12px}.field-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.portal-auth-foot{color:var(--ink-3);text-align:center;margin-top:26px;font-size:13px}.portal-auth-foot a{color:var(--moss);font-weight:500}.portal-clerk-root,.portal-clerk-cardbox{width:100%}.portal-clerk-card{width:100%;box-shadow:none;background:0 0;border:none;margin:0;padding:0}.portal-clerk-header{display:none}.portal-auth-card{overflow:hidden}.portal-clerk-card .cl-main{gap:18px}.portal-clerk-card .cl-socialButtons{gap:10px}.portal-clerk-card .cl-socialButtonsBlockButton{border:1.5px solid var(--rule);padding:12px 16px;transition:border-color .18s,background .18s;position:relative;border-radius:var(--radius-sm)!important}.portal-clerk-card .cl-socialButtonsBlockButton:hover{border-color:var(--moss);background:var(--paper)}.portal-clerk-card .cl-dividerRow{margin:22px 0}.portal-clerk-card .cl-formFieldRow{margin-bottom:16px}.portal-clerk-card .cl-formButtonPrimary{margin-top:6px;padding:13px 20px}.portal-clerk-card .cl-footer{margin-top:22px;padding-top:18px}.portal-clerk-card .cl-badge{display:none}.portal-clerk-card .cl-lastAuthenticationStrategyBadge{z-index:2;background:var(--moss);color:#fff;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 9px;font-family:Geist Mono,monospace;font-size:9.5px;font-weight:600;line-height:1.4;position:absolute;top:-9px;right:10px;box-shadow:0 2px 6px #00000024}.type-choice-field{border:none;margin:0 0 18px;padding:0}.type-choice-field legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px;padding:0;font-family:Geist Mono,monospace;font-size:11px}.type-choice-group{flex-wrap:wrap;gap:8px;display:flex}.type-choice{color:var(--ink-2);border:1.5px solid var(--rule);border-radius:var(--radius-pill);background:var(--paper);align-items:center;gap:6px;padding:8px 14px;font-size:13px;transition:border-color .15s,background .15s,color .15s,transform .15s;display:inline-flex}.type-choice:hover{border-color:var(--moss);transform:translateY(-1px)}.type-choice input{opacity:0;width:0;height:0;position:absolute}.type-choice.active{background:var(--moss);border-color:var(--moss);color:#fff;box-shadow:var(--shadow-moss)}.onboarding-steps{gap:8px;margin-bottom:28px;display:flex}.onboarding-steps span{background:var(--rule);height:3px;transition:background .3s var(--ease-out);border-radius:2px;flex:1}.onboarding-steps span.done{background:var(--moss)}.switch{cursor:pointer;flex:none;width:42px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch .track{background:var(--rule);transition:background .25s var(--ease-out);cursor:pointer;border-radius:999px;position:absolute;inset:0}.switch .track:before{content:"";width:18px;height:18px;transition:transform .25s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch input:checked+.track{background:var(--moss)}.switch input:checked+.track:before{transform:translate(18px)}.switch input:focus-visible+.track{outline:2px solid var(--moss);outline-offset:2px}.switch:active .track:before{width:21px}.portal-shell{background:var(--paper);min-height:100vh;display:flex}.portal-sidebar{background:var(--moss-deep);color:#ffffffd1;background-image:radial-gradient(120% 60% at 0 0,#2c684459,#0000 60%);flex-direction:column;flex:none;width:260px;height:100vh;display:flex;position:sticky;top:0}.portal-sidebar-brand{border-bottom:1px solid #ffffff1a;padding:20px 22px 18px}.portal-sidebar-brand .brand-mark-logo{height:64px}.portal-sidebar-brand .brand-mark-text strong{color:#fff}.portal-sidebar-brand .brand-mark-text small{color:#ffffff8c}.portal-sidebar-user{border-bottom:1px solid #ffffff1a;align-items:center;gap:14px;padding:20px 22px;display:flex}.portal-sidebar-user .avatar{width:58px;height:58px;font-size:18px}.portal-sidebar-user .name{color:#fff;font-size:13.5px;font-weight:600}.portal-sidebar-user .role{color:#ffffff80;margin-top:1px;font-size:11.5px}.avatar{color:#fff;letter-spacing:.02em;box-shadow:0 0 0 2px #ffffff2e, var(--shadow-xs);border-radius:50%;flex:none;justify-content:center;align-items:center;font-family:Geist Mono,monospace;font-weight:600;display:flex}.avatar-sm{width:34px;height:34px;font-size:12px}.avatar-md{width:46px;height:46px;font-size:14px}.avatar-lg{width:88px;height:88px;box-shadow:0 0 0 4px #fff, var(--shadow-md);font-size:25px}.avatar-moss{background:linear-gradient(145deg,#3a7d54,#1f4d32)}.avatar-gold{background:linear-gradient(145deg,#b08a33,#8a6a1f)}.avatar-teal{background:linear-gradient(145deg,#317e8f,#245a67)}.avatar-plum{background:linear-gradient(145deg,#7d6a8a,#5f5069)}.avatar-clay{background:linear-gradient(145deg,#b06a4c,#8c4e38)}.avatar-slate{background:linear-gradient(145deg,#637184,#4a5568)}.avatar-photo{object-fit:cover}.avatar-wrap{flex:none;display:inline-flex;position:relative}.avatar-verified-badge{width:18px;height:18px;color:var(--moss);box-shadow:0 0 0 2px #fff, var(--shadow-xs);background:#fff;border-radius:50%;padding:1.5px;position:absolute;bottom:-2px;right:-2px}.avatar-wrap-lg .avatar-verified-badge{width:24px;height:24px;bottom:-3px;right:-3px}.avatar-edit-wrap{flex:none;display:inline-flex;position:relative}.avatar-edit-btn{background:var(--moss);color:#fff;width:30px;height:30px;box-shadow:0 0 0 3px #fff, var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:background .15s,transform .15s;display:flex;position:absolute;bottom:-4px;right:-4px}.avatar-edit-btn:hover{background:var(--moss-deep);transform:scale(1.07)}.avatar-edit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.portal-nav{flex:1;padding:14px 12px;overflow-y:auto}.portal-nav a{border-radius:var(--radius-sm);color:#ffffffb8;justify-content:space-between;align-items:center;margin-bottom:2px;padding:10px 12px 10px 18px;font-size:13.5px;font-weight:500;transition:background .18s,color .18s,transform .18s;display:flex;position:relative}.portal-nav a:before{content:"";width:3px;height:0;transition:height .2s var(--ease-out);background:#fff;border-radius:0 3px 3px 0;position:absolute;top:50%;left:0;translate:0 -50%}.portal-nav a:hover{color:#fff;background:#ffffff14;transform:translate(2px)}.portal-nav a.active{color:#fff;background:#ffffff24}.portal-nav a.active:before{height:18px}.portal-nav-label{align-items:center;gap:11px;display:flex}.portal-nav-label svg{opacity:.85;flex:none}.portal-nav a.active .portal-nav-label svg,.portal-nav a:hover .portal-nav-label svg{opacity:1}.portal-nav a .count{color:#fff;transition:transform .2s var(--ease-spring);background:#ffffff29;border-radius:999px;padding:1px 7px;font-family:Geist Mono,monospace;font-size:10.5px}.portal-nav a:hover .count{transform:scale(1.08)}.portal-sidebar-foot{border-top:1px solid #ffffff1a;padding:16px 22px}.portal-sidebar-foot a,.portal-sidebar-foot button{text-align:left;cursor:pointer;color:#ffffff8c;background:0 0;border:none;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:0;font-family:inherit;font-size:12.5px;transition:color .15s;display:flex}.portal-sidebar-foot a:hover,.portal-sidebar-foot button:hover{color:#fff}.portal-main{flex:1;min-width:0}.portal-topbar{background:var(--paper);z-index:5;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:16px 36px;transition:box-shadow .25s,border-color .25s,background .25s;display:flex;position:sticky;top:0}.portal-topbar.scrolled{border-color:var(--rule);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f2e8e6}.portal-topbar-badge{letter-spacing:.04em;color:var(--moss);background:var(--moss-soft);border-radius:var(--radius-pill);align-items:center;gap:6px;padding:6px 13px;font-family:Geist Mono,monospace;font-size:11.5px;transition:background .15s,transform .15s;display:inline-flex}.portal-topbar-badge:hover{background:#dcebe0;transform:translateY(-1px)}.portal-sidebar-scrim{display:none}.portal-content{max-width:1180px;animation:fadeIn .3s var(--ease-out);padding:32px 36px 80px}.portal-page-head{margin-bottom:28px}.portal-page-head h1{color:var(--ink);letter-spacing:-.01em;font-family:Fraunces,serif;font-size:30px;font-weight:500}.portal-page-head p{color:var(--ink-3);max-width:60ch;margin-top:6px;font-size:14.5px}.portal-page-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.filter-bar{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:26px;padding:18px;display:flex}.filter-field{flex-direction:column;gap:5px;min-width:150px;display:flex}.filter-field label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:10px}.filter-field input,.filter-field select{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);padding:9px 10px;font-size:13.5px;transition:border-color .18s,box-shadow .18s,background .18s}.filter-field input:focus,.filter-field select:focus{border-color:var(--moss);box-shadow:0 0 0 3px var(--moss-soft);background:#fff;outline:none}.filter-checks{align-items:center;gap:16px;padding-bottom:3px;display:flex}.filter-check{color:var(--ink-2);cursor:pointer;align-items:center;gap:6px;font-size:12.5px;display:flex}.filter-reset{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:9px 4px;font-family:Geist Mono,monospace;font-size:11.5px;transition:color .15s}.filter-reset:hover{color:var(--moss)}.filter-count{color:var(--ink-3);margin-bottom:16px;font-size:13px}.pf-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.pf-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out);background:#fff;flex-direction:column;gap:14px;padding:22px;display:flex}.pf-card:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.pf-card:active{transform:translateY(-2px)}.pf-card-top{align-items:flex-start;gap:14px;display:flex}.pf-card-top>div{min-width:0}.pf-card-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:Fraunces,serif;font-size:17px;font-weight:500;overflow:hidden}.pf-card-headline{color:var(--ink-3);margin-top:2px;font-size:12.5px;line-height:1.4}.pf-card-meta{color:var(--ink-3);flex-wrap:wrap;gap:6px;font-size:11.5px;display:flex}.pf-card-meta span{background:var(--paper-deep);border-radius:999px;padding:3px 9px}.pf-card-bio{color:var(--ink-2);flex:1;font-size:13px;line-height:1.6}.pf-card-avail{flex-wrap:wrap;gap:6px;display:flex}.pf-card-foot{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.avail-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 9px;font-family:Geist Mono,monospace;font-size:10px;transition:transform .15s}.avail-pill.referrals{color:#8a6a1f;background:#8a6a1f24}.role-tag{letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 10px;font-family:Geist Mono,monospace;font-size:10.5px;display:inline-block}.role-mentor{background:var(--moss-deep);color:#fff}.role-member{background:var(--paper-deep);color:var(--ink-3);border:var(--hairline)}.status-pill{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 11px;font-family:Geist Mono,monospace;font-size:10.5px}.status-pending{color:#8a6a1f;background:#8a6a1f24}.status-accepted,.status-active{color:var(--moss);background:#1f4d321f}.status-declined,.status-expired,.status-cancelled{color:var(--ink-3);background:#1a1f1814}.status-completed{color:#245a67;background:#245a671f}.pf-detail-head{animation:fadeInUp .4s var(--ease-out);flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:26px;display:flex}.pf-detail-info h1{color:var(--ink);font-family:Fraunces,serif;font-size:30px;font-weight:500}.pf-detail-info .headline{color:var(--ink-3);margin-top:4px;font-size:15px}.pf-detail-info .meta-line{color:var(--ink-3);margin-top:10px;font-size:13px}.pf-detail-actions{flex-wrap:wrap;gap:10px;margin-left:auto;display:flex}.detail-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);animation:fadeInUp .45s var(--ease-out) backwards;background:#fff;margin-bottom:18px;padding:24px;transition:box-shadow .25s,transform .25s}.detail-card:hover{box-shadow:var(--shadow-sm)}.detail-card h3{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px;font-family:Geist Mono,monospace;font-size:11px}.detail-card p{color:var(--ink-2);font-size:14.5px;line-height:1.7}.skill-pills{flex-wrap:wrap;gap:8px;display:flex}.skill-pills span{background:var(--paper-deep);color:var(--ink-2);border-radius:999px;padding:6px 12px;font-size:12.5px;transition:background .15s,color .15s}.skill-pills span:hover{background:var(--moss-soft);color:var(--moss)}.req-list{flex-direction:column;gap:12px;display:flex}.req-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;align-items:flex-start;gap:16px;padding:18px 20px;transition:box-shadow .25s,transform .25s;display:flex}.req-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.req-card-body{flex:1;min-width:0}.req-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.req-card-name{color:var(--ink);font-size:14.5px;font-weight:600;transition:color .15s}.req-card-name:hover{color:var(--moss)}.req-card-sub{color:var(--ink-3);font-size:12px}.req-card-msg{color:var(--ink-2);margin-top:8px;font-size:13.5px;line-height:1.6}.req-card-tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.req-card-tags span{color:var(--ink-3);background:var(--paper-deep);border-radius:999px;padding:3px 9px;font-family:Geist Mono,monospace;font-size:11px}.req-card-actions{gap:8px;margin-top:12px;display:flex}.btn-sm{border-radius:var(--radius-pill);padding:8px 16px;font-size:12.5px}.btn-primary.btn-sm{padding:8px 18px}.btn-outline.btn-sm{padding:7px 17px}.btn-primary:active,.btn-outline:active,.btn-sm:active{transform:scale(.97)}.btn-primary:disabled,.btn-outline:disabled,.btn-sm:disabled{opacity:.55;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-ghost{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:6px;padding:8px 4px;font-family:Geist Mono,monospace;font-size:11.5px;transition:color .15s;display:inline-flex}.btn-ghost:hover{color:var(--danger,#8c3b2e)}.tabs{border-bottom:var(--hairline);gap:4px;margin-bottom:22px;display:flex}.tabs button{color:var(--ink-3);border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-size:13.5px;font-weight:500;transition:color .2s;position:relative}.tabs button:hover{color:var(--ink-2)}.tabs button.active{color:var(--moss);border-color:var(--moss)}.tabs button .count{color:inherit;opacity:.7;margin-left:6px;font-family:Geist Mono,monospace;font-size:10.5px}.conn-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.conn-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:12px;padding:20px;transition:box-shadow .25s,transform .25s;display:flex}.conn-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px)}.conn-card-top{align-items:center;gap:12px;display:flex}.conn-card-top>div{min-width:0}.conn-card-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:600;display:block;overflow:hidden}.conn-card-sub{color:var(--ink-3);font-size:12px}.conn-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.thread-list{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;gap:6px;padding:8px;display:flex}.thread-list-standalone{max-width:520px}.thread-item{border-radius:var(--radius-sm);text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:none;align-items:center;gap:12px;padding:12px;transition:background .18s,transform .18s;display:flex}.thread-item:hover{background:var(--paper-deep)}.thread-item.active{background:var(--moss-soft)}.thread-item-name{font-size:13.5px;font-weight:600}.thread-item-preview{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;font-size:12px;overflow:hidden}.chat-scroll{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.chat-bubble{max-width:78%;animation:fadeInUp .3s var(--ease-out);border-radius:16px;padding:11px 15px;font-size:13.5px;line-height:1.55}.chat-bubble.theirs{background:var(--paper-deep);color:var(--ink);border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble.mine{background:var(--moss);color:#fff;box-shadow:var(--shadow-moss);border-bottom-right-radius:4px;align-self:flex-end}.chat-bubble .time{opacity:.6;margin-top:5px;font-size:10px;display:block}.chat-bubble.has-attachment{box-shadow:none;background:0 0;max-width:86%;padding:0}.chat-bubble.has-attachment .time{color:var(--ink-3);opacity:1;padding:0 2px}.chat-input-row{border-top:var(--hairline);align-items:center;gap:10px;padding:16px 20px;display:flex}.chat-input-row input{border:1.5px solid var(--rule);border-radius:var(--radius-pill);flex:1;padding:11px 14px;font-size:13.5px;transition:border-color .18s,box-shadow .18s}.chat-input-row input:focus{border-color:var(--moss);box-shadow:0 0 0 3px var(--moss-soft);outline:none}.chat-empty{height:100%;color:var(--ink-3);justify-content:center;align-items:center;gap:8px;font-family:Fraunces,serif;font-style:italic;display:flex}.resume-bubble{border:var(--hairline);min-width:210px;font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:13px;align-items:center;gap:10px;padding:10px 12px;transition:box-shadow .15s,transform .15s;display:flex}.resume-bubble:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.chat-bubble.mine .resume-bubble{background:var(--moss-soft);border-color:#0000}.resume-bubble-icon{background:var(--paper-deep);width:34px;height:34px;color:var(--moss);border-radius:9px;flex:none;justify-content:center;align-items:center;display:flex}.resume-bubble-info{flex:1;min-width:0}.resume-bubble-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600;display:block;overflow:hidden}.resume-bubble-meta{color:var(--ink-3);margin-top:1px;font-size:10.5px;display:block}.resume-bubble-gone{cursor:default;color:var(--ink-3)}.resume-bubble-gone:hover{box-shadow:none;transform:none}.chat-dock{z-index:150;pointer-events:none;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:0;right:24px}.chat-dock-popups{pointer-events:none;flex-direction:row-reverse;align-items:flex-end;gap:10px;display:flex}.chat-dock-popups>*{pointer-events:auto}.chat-dock-bar{width:260px;box-shadow:var(--shadow-lg);pointer-events:auto;background:#fff;border-radius:10px 10px 0 0;flex:none;overflow:hidden}.chat-dock-bar-head{background:var(--moss-deep);color:#fff;border-radius:10px 10px 0 0;align-items:center;gap:8px;width:100%;padding:13px 16px;font-size:13.5px;font-weight:600;transition:background .15s;display:flex}.chat-dock-bar-head:hover{background:var(--moss)}.chat-dock-bar-head span{text-align:left;flex:1}.chat-dock-list{max-height:320px;animation:fadeIn .15s var(--ease-out);padding:6px;overflow-y:auto}.chat-dock-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:9px 10px;transition:background .15s;display:block}.chat-dock-item:hover{background:var(--paper-deep)}.chat-dock-item-name{color:var(--ink);font-size:13px;font-weight:600;display:block}.chat-dock-item-preview{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11.5px;display:block;overflow:hidden}.chat-dock-empty{color:var(--ink-3);text-align:center;padding:20px 10px;font-size:13px}.chat-dock-see-all{text-align:center;color:var(--moss);border-top:var(--hairline);padding:10px;font-size:12px;font-weight:600;transition:background .15s;display:block}.chat-dock-see-all:hover{background:var(--paper-deep)}.chat-popup{width:286px;height:400px;box-shadow:var(--shadow-lg);animation:chatPopupIn .25s var(--ease-spring);background:#fff;border-radius:10px 10px 0 0;flex-direction:column;flex:none;display:flex;overflow:hidden}.chat-popup.minimized{height:auto}@keyframes chatPopupIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chat-popup-head{background:var(--moss-deep);color:#fff;flex:none;align-items:center;gap:9px;padding:9px 8px 9px 12px;display:flex}.chat-popup-head[role=button]{cursor:pointer}.chat-popup-head-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:600;overflow:hidden}.chat-popup-head-actions{flex:none;gap:2px;display:flex}.chat-popup-icon-btn{color:#ffffffd9;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;transition:background .15s,color .15s;display:flex}.chat-popup-icon-btn:hover{color:#fff;background:#ffffff2e}.chat-popup-scroll{padding:14px}.chat-popup-input{gap:6px;padding:10px}.chat-popup-send{background:var(--moss);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s,transform .15s;display:flex}.chat-popup-send:hover:not(:disabled){background:var(--moss-deep);transform:scale(1.05)}.chat-popup-send:disabled{opacity:.5}.chat-attach{flex:none;position:relative}.chat-attach-btn{width:34px;height:34px;color:var(--ink-3);border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.chat-attach-btn:hover,.chat-attach-btn[aria-expanded=true]{background:var(--paper-deep);color:var(--moss)}.chat-attach-menu{width:210px;box-shadow:var(--shadow-lg);animation:scaleIn .15s var(--ease-out);background:#fff;border-radius:10px;padding:6px;position:absolute;bottom:42px;left:0}.chat-attach-menu button{width:100%;color:var(--ink-2);text-align:left;border-radius:7px;align-items:center;gap:8px;padding:9px 10px;font-size:12.5px;transition:background .15s;display:flex}.chat-attach-menu button:hover{background:var(--paper-deep)}.chat-attach-hint{color:var(--ink-3);padding:8px 10px 4px;font-size:11px;display:block}@media (max-width:960px){.portal-shell:has(.portal-sidebar.open) .chat-dock{display:none}}@media (max-width:640px){.chat-dock{left:auto;right:14px}.chat-dock-bar{border-radius:10px 10px 0 0;width:190px}.chat-dock-popups{z-index:160;flex-direction:column;gap:0;position:fixed;inset:0}.chat-dock-popups>:not(:last-child){display:none}.chat-popup{width:100%;height:100%;animation:fadeIn .2s var(--ease-out);border-radius:0}.chat-popup.minimized{display:none}.chat-popup-head{padding:14px 10px 14px 16px}}.progress-track{background:var(--paper-deep);border-radius:999px;flex:1;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--moss-mid), var(--moss));height:100%;transition:width .6s var(--ease-out);border-radius:999px}.stat-row{flex-wrap:wrap;gap:10px;display:flex}.stat-tile{border-radius:var(--radius-sm);flex:1;min-width:0;padding:10px 4px 2px;transition:background .2s}.stat-tile:hover{background:var(--paper-deep)}.stat-num{color:var(--ink);font-family:Fraunces,serif;font-size:27px;line-height:1}.stat-label{color:var(--ink-3);margin-top:6px;font-size:11.5px;line-height:1.4}.profile-head{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:26px;display:flex}.profile-head h1{color:var(--ink);font-family:Fraunces,serif;font-size:26px;font-weight:500}.profile-head .sub{color:var(--ink-3);margin-top:3px;font-size:13.5px}.profile-head-note{color:var(--ink-3);margin-top:8px;font-size:12.5px}.profile-head-edit{margin-left:auto}.profile-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (max-width:900px){.profile-grid{grid-template-columns:1fr}}.resume-drop{border:1.5px dashed var(--rule);border-radius:var(--radius-lg);text-align:center;color:var(--ink-3);padding:28px;font-size:13.5px;transition:border-color .2s,background .2s}.resume-drop:hover{border-color:var(--moss);background:var(--moss-soft)}.resume-drop-icon{width:30px;height:30px;color:var(--ink-2);opacity:.7;margin:0 auto 10px;display:block}.resume-drop strong{color:var(--ink-2);margin-bottom:4px;font-size:14px;display:block}.resume-file{border-radius:var(--radius-md);background:var(--paper-deep);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.resume-file-info{align-items:center;gap:12px;display:flex}.resume-file-icon{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--moss);box-shadow:var(--shadow-xs);background:#fff;flex:none;justify-content:center;align-items:center;display:flex}.resume-file .name{color:var(--ink);font-size:13.5px;font-weight:600}.resume-file .meta{color:var(--ink-3);margin-top:2px;font-size:11.5px}.resume-actions{flex-wrap:wrap;gap:8px;display:flex}.settings-section{margin-bottom:30px}.settings-section h2{color:var(--ink);margin-bottom:4px;font-family:Fraunces,serif;font-size:18px;font-weight:500}.settings-section .desc{color:var(--ink-3);margin-bottom:14px;font-size:13px}.settings-row{border-radius:var(--radius-md);box-shadow:var(--shadow-xs);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;padding:16px 18px;transition:box-shadow .2s;display:flex}.settings-row:hover{box-shadow:var(--shadow-sm)}.settings-row .copy{flex:1;min-width:180px}.settings-row .copy strong{color:var(--ink);font-size:13.5px;display:block}.settings-row .copy span{color:var(--ink-3);font-size:12px}.danger-zone{border-radius:var(--radius-lg);background:#8c3b2e0a;border:1px solid #8c3b2e59;padding:20px}.danger-zone h2{color:#8c3b2e}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;animation:fadeIn .2s var(--ease-out);background:#0e2c1b73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-panel{border-radius:var(--radius-xl);width:100%;max-width:480px;max-height:88vh;box-shadow:var(--shadow-lg);animation:scaleIn .25s var(--ease-out);background:#fff;padding:28px 26px;overflow-y:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.modal-head h2{color:var(--ink);font-family:Fraunces,serif;font-size:20px;font-weight:500}.modal-close{color:var(--ink-3);border-radius:50%;padding:4px;font-size:18px;line-height:1;transition:color .15s,background .15s}.modal-close:hover{color:var(--ink);background:var(--paper-deep)}.modal-sub{color:var(--ink-3);margin-bottom:20px;font-size:13px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.toast-stack{z-index:200;flex-direction:column-reverse;gap:10px;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;translate:-50%}.toast{background:var(--moss-deep);color:#fff;border-radius:var(--radius-pill);box-shadow:var(--shadow-lg);cursor:pointer;white-space:nowrap;animation:toastIn .3s var(--ease-spring);align-items:center;gap:10px;padding:12px 20px 12px 16px;font-size:13.5px;display:flex}.toast-leaving{animation:toastOut .2s var(--ease-out) forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(14px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastOut{to{opacity:0;transform:translateY(8px)scale(.96)}}.toast-icon{background:#fff3;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:flex}.toast-error{background:#6b2a1f}.toast-success{background:var(--moss-deep)}.toast-info{background:var(--ink)}.portal-mobile-toggle{display:none}@media (max-width:960px){.portal-shell{flex-direction:column}.portal-sidebar{z-index:50;transition:transform .3s var(--ease-out);position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 0 100vmax #0000}.portal-sidebar.open{transform:translate(0);box-shadow:20px 0 60px #00000040}.portal-sidebar-scrim{z-index:40;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);animation:fadeIn .2s var(--ease-out);background:#0e2c1b59;display:block;position:fixed;inset:0}.portal-mobile-toggle{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);align-items:center;gap:7px;font-family:Geist Mono,monospace;font-size:12px;transition:color .15s;display:inline-flex}.portal-mobile-toggle:hover{color:var(--moss)}.portal-content{padding:24px 16px 64px}.portal-topbar{padding:14px 16px}.profile-grid,.pf-grid,.conn-grid{grid-template-columns:1fr}.filter-field{flex:140px;min-width:0}.portal-auth-shell{grid-template-columns:1fr;min-height:0}.portal-auth-intro{padding:40px 24px}.portal-auth-points{display:none}.portal-hero-split{grid-template-columns:1fr;min-height:0}.portal-hero-copy{max-width:none;padding:48px 24px 32px}.portal-hero-panel{padding:40px 24px 56px}}@media (max-width:640px){.portal-auth-card{padding:30px 24px}.field-row{grid-template-columns:1fr}.pf-detail-actions{width:100%;margin-left:0}.pf-detail-actions .btn-primary,.pf-detail-actions .btn-outline{flex:1;justify-content:center}.toast-stack{align-items:stretch;left:16px;right:16px;translate:0}.toast{white-space:normal}}