/* Design tokens — theme: #000 / #f2f2f2 / #6f72d8 */
:root{
  --navy:#6F72D8; --navy-2:#5F62CB; --navy-3:#5457BE;
  --grad:linear-gradient(176deg,#7C7FE6 0%,#6467CF 58%,#5457BE 100%);
  --grad-btn:linear-gradient(180deg,#7B7EE6 0%,#6568D2 100%);
  --paper:#F2F2F2; --card:#FFFFFF;
  --border:#E6E6EC; --border-soft:#EEEEF3;
  --ink:#000000; --ink-soft:#33333D; --muted:#787886;
  --amber:#6F72D8; --amber-dark:#4E51C4; --amber-bg:#EEEFFC;
  --accent-tint:#F1F1FD; --accent-ring:rgba(111,114,216,.20);
  --teal:#1F6F5C; --teal-bg:#E9F3EF;
  --rose:#C0392B; --rose-bg:#FBECEA;
  --radius:14px; --radius-sm:9px;
  --sh-sm:0 1px 2px rgba(24,24,40,.05);
  --sh:0 1px 2px rgba(24,24,40,.04), 0 12px 28px -14px rgba(31,31,60,.20);
  --sh-lg:0 18px 44px -14px rgba(31,31,60,.30);
  --sh-btn:0 2px 8px rgba(84,87,190,.32);
  
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper) radial-gradient(620px 620px at 80% -14%,rgba(111,114,216,.10),transparent 60%) fixed;color:var(--ink);font-family:'Inter',sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
h1,h2,h3,.disp{font-family:'Space Grotesk',sans-serif;letter-spacing:-0.02em;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;}
::selection{background:var(--accent-ring);}
::-webkit-scrollbar{width:11px;height:11px;}
::-webkit-scrollbar-thumb{background:#CFCFDA;border:3px solid var(--paper);border-radius:8px;}
::-webkit-scrollbar-thumb:hover{background:#B9B9C8;}

.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh;}
@media (max-width:900px){.shell{grid-template-columns:1fr;}}

.sidebar{background:var(--grad);color:#EEF0FF;padding:22px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;box-shadow:inset -1px 0 0 rgba(255,255,255,.06), 4px 0 28px -14px rgba(46,48,120,.55);}
.logo{display:flex;align-items:center;gap:10px;padding:6px 8px 24px;}
.logo-mark{width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-family:'Space Grotesk',sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);}
.logo-text{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:17px;color:#fff;letter-spacing:.01em;}
.logo .pill{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.22);}
.sidebar-head-white .logo .pill{background:var(--accent-tint);color:var(--muted);border-color:transparent;}
.logo-img{height:34px;width:auto;max-width:160px;display:block;}
.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:rgba(255,255,255,.74);font-size:13.8px;font-weight:500;background:transparent;border:none;text-align:left;width:100%;margin-bottom:3px;transition:background .16s ease,color .16s ease;}
.nav-item:hover{background:rgba(255,255,255,.12);color:#fff;}
.nav-item.active{background:rgba(255,255,255,.18);color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);}
.sidebar-foot{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);}

.topbar{display:flex;align-items:center;gap:14px;padding:8px 26px;min-height:64px;box-sizing:border-box;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--border-soft);position:sticky;top:0;z-index:20;flex-wrap:wrap;}
.search-box{flex:1;min-width:180px;max-width:380px;display:flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--border-soft);border-radius:11px;padding:4px 13px;color:var(--muted);transition:border-color .16s,box-shadow .16s,background .16s;}
.search-box:focus-within{background:var(--card);border-color:var(--navy);}
.search-box input{border:none;background:transparent;outline:none;font-size:13.5px;width:100%;color:var(--ink);}
.top-right{display:flex;align-items:center;gap:14px;margin-left:auto;}
.user-chip{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:22px;border:1px solid var(--border-soft);background:var(--card);box-shadow:var(--sh-sm);color:var(--ink);}

main.content{width:100%;padding:30px;max-width:1180px;}
.page-head{margin-bottom:22px;}
.page-head h1{font-size:25px;font-weight:600;margin:0 0 5px;}
.page-head p{margin:0;color:var(--muted);font-size:13.5px;}

/* ---------- network directory hero banner (background video + live stat ticker) ---------- */
.network-hero{position:relative;overflow:hidden;border-radius:20px;margin-bottom:24px;isolation:isolate;color:#fff;box-shadow:var(--sh-lg);
  aspect-ratio:1920/850;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;}
.network-hero-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 120% 100% at 20% 0%,#1a1c3d 0%,#0A0B10 55%,#0A0B10 100%);}
.network-hero-net{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;filter:brightness(.8) saturate(1.05);}
.network-hero-overlay{position:absolute;inset:0;z-index:2;
  background:linear-gradient(110deg,rgba(8,9,16,.85) 0%,rgba(12,13,26,.55) 45%,rgba(30,32,84,.3) 100%);}
.network-hero-in{position:relative;z-index:3;padding:42px 40px 26px;max-width:620px;}
.network-hero-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:#E9E9F7;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:6px 13px;border-radius:20px;margin-bottom:16px;backdrop-filter:blur(4px);}
.network-hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px rgba(31,111,92,.3);}
.network-hero-in h1{color:#fff;font-size:clamp(23px,3vw,34px);font-weight:700;margin:0 0 9px;}
.network-hero-in p{color:rgba(255,255,255,.82);font-size:14.5px;margin:0;}
.network-hero-ticker-wrap{position:relative;z-index:3;overflow:hidden;border-top:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.24);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 32px,#000 calc(100% - 32px),transparent);
  mask-image:linear-gradient(90deg,transparent,#000 32px,#000 calc(100% - 32px),transparent);}
.network-hero-ticker{display:flex;gap:36px;width:max-content;padding:11px 24px;white-space:nowrap;animation:nh-ticker 22s linear infinite;}
.network-hero-ticker span{font-size:12px;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.01em;}
@keyframes nh-ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.network-hero-ticker{animation:none;}}
@media(max-width:720px){.network-hero-in{padding:30px 22px 20px;}.network-hero{aspect-ratio:auto;min-height:300px;}}

/* ---------- events hero banner (continuous crossfading image slider) ---------- */
.events-hero{position:relative;overflow:hidden;border-radius:20px;margin-bottom:24px;aspect-ratio:1024/452;min-height:300px;
  display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;color:#fff;box-shadow:var(--sh-lg);background:#0A0B10;}
.events-hero-slides{position:absolute;inset:0;z-index:0;}
.events-hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;
  animation:events-slide-fade 28s infinite;}
.events-hero-slide:nth-child(1){animation-delay:0s,0s;}
.events-hero-slide:nth-child(2){animation-delay:7s,7s;}
.events-hero-slide:nth-child(3){animation-delay:14s,14s;}
.events-hero-slide:nth-child(4){animation-delay:21s,21s;}
.events-hero-overlay{position:absolute;inset:0;z-index:1;
  background:linear-gradient(0deg,rgba(6,7,14,.95) 0%,rgba(8,9,18,.72) 45%,rgba(10,11,24,.4) 100%);}
.events-hero-in{position:relative;z-index:2;padding:34px 40px;max-width:640px;}
.events-hero-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:#E9E9F7;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:6px 13px;border-radius:20px;margin-bottom:14px;backdrop-filter:blur(4px);}
.events-hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px rgba(31,111,92,.3);}
.events-hero-in h1{color:#fff;font-size:clamp(23px,3vw,34px);font-weight:700;margin:0 0 9px;}
.events-hero-in p{color:rgba(255,255,255,.82);font-size:14.5px;margin:0;}
.events-hero-dots{position:relative;z-index:2;display:flex;gap:6px;padding:0 40px 18px;}
.events-hero-dots span{width:16px;height:3px;border-radius:2px;background:rgba(255,255,255,.3);animation:events-dot 28s infinite;}
.events-hero-dots span:nth-child(1){animation-delay:0s;}
.events-hero-dots span:nth-child(2){animation-delay:7s;}
.events-hero-dots span:nth-child(3){animation-delay:14s;}
.events-hero-dots span:nth-child(4){animation-delay:21s;}
@keyframes events-slide-fade{0%{opacity:0;}3%{opacity:1;}22%{opacity:1;}25%{opacity:0;}100%{opacity:0;}}
@keyframes events-dot{0%{background:rgba(255,255,255,.3);}3%{background:#fff;}25%{background:#fff;}28%{background:rgba(255,255,255,.3);}100%{background:rgba(255,255,255,.3);}}
@media(prefers-reduced-motion:reduce){.events-hero-slide,.events-hero-dots span{animation:none;}.events-hero-slide:first-child{opacity:1;}}
@media(max-width:720px){.events-hero-in{padding:26px 22px;}.events-hero-dots{padding:0 22px 14px;}.events-hero{aspect-ratio:auto;min-height:300px;}}
.layout-2col{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start;}
@media (max-width:980px){.layout-2col{grid-template-columns:1fr;gap:0;}}

.card{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px 20px;margin-bottom:16px;box-shadow:var(--sh);}
.widget-title{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:14.5px;margin:0 0 12px;letter-spacing:-.01em;}
.pill{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:20px;background:var(--accent-tint);border:1px solid transparent;color:var(--muted);}
.pill.amber{background:var(--amber-bg);color:var(--amber-dark);}
.pill.teal{background:var(--teal-bg);color:var(--teal);}
.pill.rose{background:var(--rose-bg);color:var(--rose);}
.btn{background:var(--grad-btn);color:#fff;border:none;padding:10px 17px;border-radius:10px;font-size:13px;font-weight:600;display:inline-block;box-shadow:var(--sh-btn);transition:transform .14s ease,box-shadow .14s ease,filter .14s ease;}
.btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(84,87,190,.42);}
.btn:active{transform:translateY(0);filter:brightness(.97);}
.btn.amber{background:var(--grad-btn);color:#fff;}
.btn.ghost{background:var(--card);border:1px solid var(--border);color:var(--ink);box-shadow:var(--sh-sm);}
.btn.ghost:hover{background:var(--accent-tint);border-color:var(--navy);transform:translateY(-1px);}
.btn.sm{padding:7px 12px;font-size:12px;border-radius:8px;}
.muted{color:var(--muted);}

.av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-weight:700;color:#fff;font-size:14px;flex-shrink:0;box-shadow:inset 0 0 0 2px rgba(255,255,255,.5), var(--sh-sm);}
.post{border:1px solid var(--border-soft);border-radius:var(--radius);padding:17px 19px;margin-bottom:14px;background:var(--card);box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;}
.post:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
.post-head{display:flex;gap:10px;align-items:center;margin-bottom:9px;}
.post-actions{display:flex;gap:16px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border-soft);}
.aBtn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--muted);font-size:12.5px;font-weight:500;padding:0;transition:color .14s;}
.aBtn:hover{color:var(--ink);}
.aBtn.active{color:var(--amber-dark);}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media (max-width:860px){.grid-3,.grid-2{grid-template-columns:1fr;}}

input,textarea,select{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:13.5px;font-family:inherit;background:var(--card);color:var(--ink);transition:border-color .16s,box-shadow .16s;}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--navy);}
textarea{min-height:64px;resize:vertical;}
label{font-size:12.5px;font-weight:600;color:var(--muted);display:block;margin:12px 0 5px;}
.error{color:var(--rose);font-size:12.5px;margin-top:4px;}
.auth-card{max-width:400px;width:100%;margin:0 auto;background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:32px;box-shadow:var(--sh-lg);}
.social-btn{display:flex;align-items:center;justify-content:center;gap:9px;text-align:center;border:1px solid var(--border);border-radius:10px;padding:11px;font-size:13px;font-weight:600;margin-bottom:9px;background:var(--card);transition:background .14s,border-color .14s;}
.social-btn:hover{background:var(--accent-tint);border-color:var(--navy);}

/* ---- Auth (login/register) split panel ---- */
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;}
.auth-wrap{max-width:440px;width:100%;margin:0 auto;border-radius:22px;overflow:hidden;background:var(--card);box-shadow:var(--sh-lg);}
.auth-logo-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:28px;}
.auth-logo-row .logo-mark{width:32px;height:32px;border-radius:9px;background:var(--grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:'Space Grotesk',sans-serif;}
.auth-logo-row .logo-text{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:17px;color:var(--ink);letter-spacing:.01em;}
.auth-logo-img{height:42px;width:auto;display:block;}
.auth-panel{padding:44px 40px;}
.auth-panel h1{font-size:24px;margin:0 0 6px;text-align:center;}
.auth-panel .sub{color:var(--muted);font-size:13.5px;margin:0 0 26px;}
.divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin:4px 0 20px;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--border-soft);}
.field{margin-bottom:15px;}
.field label{margin:0 0 6px;}
.input-icon{position:relative;}
.input-icon .ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--muted);pointer-events:none;}
.input-icon input{padding-left:38px;}
.input-icon input[type=password],.input-icon input[type=text]{padding-right:40px;}
.pass-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;padding:7px;border-radius:7px;color:var(--muted);display:flex;transition:color .14s,background .14s;}
.pass-toggle:hover{color:var(--ink);background:var(--accent-tint);}
.pass-toggle .ico{position:static;width:16px;height:16px;}
.form-row-between{display:flex;align-items:center;justify-content:space-between;margin:0 0 20px;font-size:12.5px;}
.check-row{display:flex;align-items:center;gap:7px;color:var(--ink-soft);font-weight:500;}
.check-row input[type=checkbox]{width:auto;accent-color:var(--navy);cursor:pointer;}
.form-row-between a{color:var(--navy);font-weight:600;}
.alert-error{display:flex;gap:9px;align-items:flex-start;background:var(--rose-bg);color:var(--rose);border:1px solid rgba(192,57,43,.22);border-radius:10px;padding:11px 13px;font-size:12.5px;margin-bottom:18px;}
.alert-error .ico{width:16px;height:16px;flex-shrink:0;margin-top:1px;}
.alert-success{display:flex;gap:9px;align-items:flex-start;background:var(--teal-bg);color:var(--teal);border:1px solid rgba(31,111,92,.22);border-radius:10px;padding:11px 13px;font-size:12.5px;margin-bottom:18px;}
.alert-success .ico{width:16px;height:16px;flex-shrink:0;margin-top:1px;}
.auth-foot{text-align:center;font-size:13px;color:var(--muted);margin-top:24px;}
.auth-foot a{color:var(--navy);font-weight:600;}
.auth-back-home{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;font-size:13px;font-weight:600;color:var(--muted);margin-top:18px;}
.auth-back-home:hover{color:var(--navy);}
.auth-back-home .ico{width:14px;height:14px;}
table{width:100%;border-collapse:collapse;font-size:13.5px;}
th{text-align:left;font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--border);}
td{padding:12px;border-bottom:1px solid var(--border-soft);}
tbody tr{transition:background .12s;}
tbody tr:hover{background:var(--accent-tint);}

/* ============================================================
   Home / Activity Feed — "one place to see what's happening"
   ============================================================ */
.feed-wrap{max-width:1220px;}
.feed-hello{position:relative;overflow:hidden;margin-bottom:22px;padding:28px 30px;border-radius:calc(var(--radius) + 4px);
  background:var(--grad);box-shadow:var(--sh-lg);isolation:isolate;}
.feed-hello::before{content:'';position:absolute;top:-90px;right:-40px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.16),transparent 70%);pointer-events:none;}
.feed-hello h1{font-size:clamp(20px,2.4vw,26px);font-weight:700;margin:0 0 6px;color:#fff;position:relative;z-index:1;}
.feed-hello p{margin:0;color:rgba(255,255,255,.82);font-size:13.5px;max-width:560px;position:relative;z-index:1;}

.dash-widgets{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;}
.dash-widgets-col{display:flex;flex-direction:column;gap:18px;min-width:0;}
@media(max-width:640px){.dash-widgets{grid-template-columns:1fr;}}

.feed-layout{display:grid;grid-template-columns:minmax(0,1fr) 304px;gap:24px;align-items:start;}
.feed-col{min-width:0;}

/* --- in-page left nav --- */
.feed-nav{position:sticky;top:84px;display:flex;flex-direction:column;gap:2px;}
.feed-nav a{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;font-size:13.4px;font-weight:500;color:var(--ink-soft);transition:background .15s,color .15s;}
.feed-nav a:hover{background:var(--accent-tint);color:var(--ink);}
.feed-nav a.active{background:var(--grad-btn);color:#fff;box-shadow:var(--sh-btn);}
.feed-nav a.active .ico{opacity:1;}
.feed-nav .ico{width:17px;height:17px;flex-shrink:0;opacity:.66;}
.feed-nav .n{margin-left:auto;font-size:11px;font-weight:600;color:var(--muted);}
.feed-nav a.active .n{color:rgba(255,255,255,.8);}
.feed-nav-sep{height:1px;background:var(--border);margin:8px 4px;}

/* nav as horizontal chips on tablet/mobile */
.feed-chips{display:none;gap:7px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;-webkit-overflow-scrolling:touch;}
.feed-chips::-webkit-scrollbar{display:none;}
.feed-chips a{white-space:nowrap;font-size:12.5px;font-weight:600;color:var(--muted);border:1px solid var(--border-soft);border-radius:20px;padding:7px 13px;background:var(--card);box-shadow:var(--sh-sm);}
.feed-chips a.active{background:var(--grad-btn);color:#fff;border-color:transparent;box-shadow:var(--sh-btn);}

/* --- composer --- */
.composer{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 18px;margin-bottom:18px;box-shadow:var(--sh);}
.composer-top{display:flex;gap:11px;align-items:center;}
.composer-fake{flex:1;text-align:left;border:1px solid var(--border);background:var(--paper);border-radius:24px;padding:11px 17px;font-size:13.3px;color:var(--muted);transition:background .14s,border-color .14s;}
.composer-fake:hover{background:var(--accent-tint);border-color:var(--navy);}
.composer-acts{display:flex;gap:6px;margin-top:12px;padding-top:11px;border-top:1px solid var(--border-soft);flex-wrap:wrap;}
.composer-acts button{display:flex;align-items:center;gap:7px;background:none;border:none;border-radius:8px;padding:7px 11px;font-size:12.8px;font-weight:600;color:var(--ink-soft);transition:background .14s,color .14s;}
.composer-acts button:hover{background:var(--accent-tint);color:var(--ink);}
.composer-acts .ico{width:16px;height:16px;color:var(--amber-dark);}
.composer-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-soft);}
.composer-tabs{display:flex;gap:4px;margin-bottom:11px;}
.composer-tabs button{flex:1;border:1px solid var(--border);background:var(--paper);border-radius:8px;padding:8px;font-size:12.5px;font-weight:600;color:var(--muted);transition:background .14s,border-color .14s,color .14s;}
.composer-tabs button.active{background:var(--amber-bg);border-color:var(--navy);color:var(--amber-dark);}
.composer-form .row-end{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:10px;}
.composer-hint{font-size:11.5px;color:var(--muted);}

/* --- section heading --- */
.feed-sec{display:flex;align-items:baseline;justify-content:space-between;margin:24px 2px 12px;}
.feed-sec:first-child{margin-top:4px;}
.feed-sec h2{font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:600;margin:0;}
.feed-sec a{font-size:12px;font-weight:600;color:var(--amber-dark);}

/* --- announcements --- */
.ann{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:0;margin-bottom:14px;overflow:hidden;box-shadow:var(--sh);}
.ann.high{border-color:var(--amber);}
.ann.high .ann-body{border-left:3px solid var(--amber);}
.ann-banner{width:100%;height:132px;object-fit:cover;display:block;background:var(--navy-2);}
.ann-body{padding:15px 17px;}
.ann-head{display:flex;align-items:center;gap:9px;margin-bottom:7px;}
.ann-badge{width:34px;height:34px;border-radius:9px;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13px;flex-shrink:0;box-shadow:var(--sh-btn);}
.ann-who{font-size:12px;font-weight:700;}
.ann-who span{display:block;font-weight:500;color:var(--muted);font-size:11px;}
.ann h3{font-size:14.5px;margin:0 0 4px;font-family:'Inter',sans-serif;font-weight:700;}
.ann p{margin:0;font-size:13px;line-height:1.55;color:var(--ink-soft);}
.ann-foot{display:flex;align-items:center;gap:14px;margin-top:10px;}
.ann-foot a{font-size:12.5px;font-weight:600;color:var(--amber-dark);}

/* --- feed post --- */
.fpost{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:17px 19px;margin-bottom:14px;position:relative;box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;}
.fpost:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
.fpost-head{display:flex;gap:11px;align-items:flex-start;}
.fpost-id{min-width:0;}
.fpost-name{font-weight:600;font-size:13.6px;}
.fpost-name a:hover{text-decoration:underline;}
.fpost-role{color:var(--muted);font-size:11.6px;margin-top:1px;}
.fpost-time{color:var(--muted);font-size:11.3px;margin-top:1px;}
.fpost-more{margin-left:auto;flex-shrink:0;position:relative;}
.fpost-more>button{background:none;border:none;color:var(--muted);padding:4px;border-radius:6px;line-height:0;transition:background .14s,color .14s;}
.fpost-more>button:hover{background:var(--accent-tint);color:var(--ink);}
.fpost-title{font-weight:600;font-size:14.5px;margin:11px 0 4px;}
.fpost-body{font-size:13.4px;line-height:1.6;color:var(--ink-soft);white-space:pre-line;}
.fpost-media{margin-top:11px;border:1px solid var(--border);border-radius:10px;width:100%;max-height:420px;object-fit:cover;display:block;}
.fpost-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;}
.fpost-count{display:flex;gap:13px;font-size:11.5px;color:var(--muted);margin-top:11px;}
.fpost-bar{display:flex;gap:4px;margin-top:8px;padding-top:7px;border-top:1px solid var(--border-soft);}
.act-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;background:none;border:none;border-radius:8px;padding:8px 6px;color:var(--muted);font-size:12.5px;font-weight:600;transition:background .14s,color .14s;}
.act-btn:hover{background:var(--accent-tint);color:var(--ink);}
.act-btn .ico{width:16px;height:16px;}
.act-btn.on{color:var(--amber-dark);}
.act-btn[disabled]{opacity:.55;}
.act-btn .spin{width:14px;height:14px;}

/* comments / answers */
.cbox{margin-top:11px;padding-top:11px;border-top:1px solid var(--border-soft);}
.cmt{display:flex;gap:9px;padding:7px 0;}
.cmt .bubble{background:var(--accent-tint);border:1px solid transparent;border-radius:12px;padding:9px 12px;font-size:12.8px;line-height:1.5;flex:1;min-width:0;}
.cmt .bubble b{font-size:12.3px;}
.cmt .bubble .when{color:var(--muted);font-size:10.8px;font-weight:500;margin-left:5px;}
.cmt-reply{font-size:11px;font-weight:600;color:var(--muted);margin:2px 0 0 11px;background:none;border:none;padding:2px 4px;}
.cmt-reply:hover{color:var(--amber-dark);}
.cmt-children{margin-left:34px;}
.cmt-form{display:flex;gap:8px;margin-top:9px;}
.cmt-form input{border-radius:20px;}
.cmt-form button{flex-shrink:0;}

/* --- question card (visually distinct) --- */
.qcard{background:var(--accent-tint);border:1px solid transparent;border-left:3px solid var(--amber);border-radius:var(--radius);padding:15px 17px;margin-bottom:14px;box-shadow:var(--sh);}
.qcard .q-tag{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--amber-dark);margin-bottom:6px;}
.qcard h3{font-size:14.5px;font-weight:600;margin:0 0 5px;font-family:'Inter',sans-serif;}
.qcard .q-meta{font-size:11.5px;color:var(--muted);margin-bottom:9px;}
.qcard .q-body{font-size:13px;line-height:1.55;color:var(--ink-soft);margin-bottom:10px;}
.qcard .q-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.qcard .q-ans{font-size:12px;font-weight:700;color:var(--teal);background:var(--teal-bg);border-radius:20px;padding:4px 10px;}

/* --- featured insight --- */
.insight2{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:17px 19px;margin-bottom:14px;position:relative;overflow:hidden;box-shadow:var(--sh);}
.insight2::before{content:"\201C";position:absolute;top:-14px;right:14px;font-family:'Space Grotesk',sans-serif;font-size:80px;color:var(--amber-bg);line-height:1;}
.insight2 .i-kind{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--teal);margin-bottom:7px;}
.insight2 h3{font-size:15px;font-weight:600;margin:0 0 6px;position:relative;}
.insight2 p{font-size:13px;line-height:1.6;color:var(--ink-soft);margin:0 0 12px;position:relative;}
.insight2 .i-by{display:flex;align-items:center;gap:9px;}
.insight2 .i-by .who{font-size:12px;font-weight:600;}
.insight2 .i-by .who span{display:block;color:var(--muted);font-weight:500;font-size:11px;}

/* --- right sidebar widgets --- */
.feed-side{position:sticky;top:84px;display:flex;flex-direction:column;gap:16px;}
.widget{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 17px;box-shadow:var(--sh);}
.widget h3{font-family:'Space Grotesk',sans-serif;font-size:13.5px;font-weight:600;margin:0 0 11px;display:flex;align-items:center;gap:7px;justify-content:space-between;letter-spacing:-.01em;}
.widget h3 a{font-size:11.5px;font-weight:600;color:var(--amber-dark);}
.widget h3 .ico{width:15px;height:15px;color:var(--navy);flex-shrink:0;}
.widget-row{padding:9px 0;border-top:1px solid var(--border-soft);}
.widget-row:first-of-type{border-top:none;padding-top:2px;}

.evt{display:flex;gap:11px;}
.evt-date{width:42px;flex-shrink:0;text-align:center;border:1px solid var(--border-soft);border-radius:8px;overflow:hidden;}
.evt-date b{display:block;background:var(--grad-btn);color:#fff;font-family:'Space Grotesk',sans-serif;font-size:15px;padding:3px 0;}
.evt-date span{display:block;font-size:10px;color:var(--muted);padding:2px 0;text-transform:uppercase;}
.evt-info{min-width:0;}
.evt-info .t{font-size:12.8px;font-weight:600;line-height:1.35;}
.evt-info .m{font-size:11px;color:var(--muted);margin-top:2px;}
.evt-info .a{display:flex;gap:6px;margin-top:6px;}
.evt-info .a a,.evt-info .a button{font-size:11px;font-weight:600;border-radius:7px;padding:5px 10px;border:1px solid var(--border);background:var(--card);color:var(--ink);transition:background .14s,border-color .14s;}
.evt-info .a a:hover,.evt-info .a button:hover{background:var(--accent-tint);border-color:var(--navy);}
.evt-info .a .join{background:var(--grad-btn);border-color:transparent;color:#fff;box-shadow:var(--sh-sm);}
.evt-info .a .join:hover{background:var(--grad-btn);filter:brightness(1.03);}
.evt-info .a .pill{margin:0;}
.evt-info .a .pill .ico{width:11px;height:11px;flex-shrink:0;}

.mmini{display:flex;gap:10px;align-items:flex-start;}
.mmini-id{min-width:0;flex:1;}
.mmini-id .nm{font-size:12.8px;font-weight:600;}
.mmini-id .ro{font-size:11px;color:var(--muted);margin-top:1px;line-height:1.35;}
.mmini-id .rg{font-size:10.5px;color:var(--muted);margin-top:3px;}
.mmini-act{display:flex;gap:6px;margin-top:7px;}
.mmini-act a,.mmini-act button{font-size:11px;font-weight:600;border-radius:7px;padding:5px 11px;border:1px solid var(--border);background:var(--card);color:var(--ink);transition:background .14s,border-color .14s;}
.mmini-act a:hover,.mmini-act button:hover{background:var(--accent-tint);border-color:var(--navy);}
.mmini-act .con{background:var(--grad-btn);border-color:transparent;color:#fff;box-shadow:var(--sh-sm);}

.region-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--border-soft);}
.region-row:first-of-type{border-top:none;}
.region-row .dot{width:8px;height:8px;border-radius:50%;background:var(--amber);flex-shrink:0;box-shadow:0 0 0 3px var(--amber-bg);}
.region-row .rn{font-size:12.5px;font-weight:600;flex:1;}
.region-row .rs{font-size:10.8px;color:var(--muted);}
.region-row:hover .rn{color:var(--amber-dark);}

/* pill helpers reused; small addition */
.pill.xs{font-size:10px;padding:2px 7px;}

/* --- states --- */
.empty{background:var(--card);border:1px dashed var(--border);border-radius:var(--radius);padding:28px 18px;text-align:center;color:var(--muted);margin-bottom:14px;box-shadow:var(--sh-sm);}
.empty .ico{width:26px;height:26px;margin-bottom:8px;opacity:.5;}
.empty b{display:block;color:var(--ink);font-size:13.5px;margin-bottom:3px;}
.empty p{margin:0 auto;font-size:12.3px;max-width:280px;line-height:1.5;}

.banner-error{background:var(--rose-bg);border:1px solid var(--rose);color:var(--rose);border-radius:var(--radius);padding:12px 15px;font-size:12.8px;margin-bottom:14px;display:flex;gap:9px;align-items:flex-start;}

.sk{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:17px 19px;margin-bottom:14px;box-shadow:var(--sh);}
.sk-line{height:10px;border-radius:5px;background:linear-gradient(90deg,#ECECF3 25%,#F5F5FA 37%,#ECECF3 63%);background-size:400% 100%;animation:sk 1.4s ease infinite;margin-bottom:9px;}
.sk-line.w40{width:40%;}.sk-line.w60{width:60%;}.sk-line.w90{width:90%;}
@keyframes sk{0%{background-position:100% 0;}100%{background-position:-100% 0;}}
.is-busy{opacity:.6;pointer-events:none;}

/* --- dropdown / share sheet --- */
.sheet{position:absolute;right:0;top:calc(100% + 6px);z-index:40;background:var(--card);border:1px solid var(--border-soft);border-radius:12px;padding:6px;min-width:186px;box-shadow:var(--sh-lg);}
.sheet button,.sheet a{display:flex;align-items:center;gap:9px;width:100%;background:none;border:none;text-align:left;padding:8px 10px;border-radius:8px;font-size:12.6px;font-weight:500;color:var(--ink);transition:background .12s;}
.sheet button:hover,.sheet a:hover{background:var(--accent-tint);}
.sheet .ico{width:15px;height:15px;color:var(--muted);}
.sheet-sep{height:1px;background:var(--border-soft);margin:4px 0;}

/* --- mobile nav toggle --- */
.feed-menu-toggle{display:none;}

@media(max-width:1120px){
  .feed-layout{grid-template-columns:minmax(0,1fr) 288px;}
}
@media(max-width:900px){
  .feed-layout{grid-template-columns:minmax(0,1fr);}
  .feed-side{position:static;flex-direction:column;}
  .feed-col.feed-right{order:3;}
}
@media(max-width:560px){
  main.content{padding:16px;}
  .composer-acts{justify-content:space-between;}
  .composer-acts button{padding:7px 8px;font-size:12px;}
  .act-btn{font-size:0;gap:0;padding:9px 4px;}
  .act-btn .ico{width:18px;height:18px;}
  .act-btn .cnt{font-size:12px;}
  .fpost-count{gap:10px;}
}

/* --- plans / pricing (mirrors landing.blade.php's .lp-plan-card look) --- */
.plans-hero{text-align:center;max-width:640px;margin:12px auto 40px;}
.plans-hero h1{font-size:32px;margin:14px 0 10px;}
.plans-hero .lead{color:var(--muted);font-size:14.5px;line-height:1.6;}

.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1240px;margin:0 auto 40px;align-items:stretch;}
.plans-grid .plan-card{padding:26px 20px;}
.plan-card{position:relative;background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:30px 26px;box-shadow:var(--sh);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.plan-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:rgba(111,114,216,.35);}
.plan-card.featured{border-color:var(--navy);box-shadow:var(--sh-lg);}
.plan-card.featured:hover{transform:none;}
.plan-badge{position:absolute;top:-12px;left:24px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:#fff;background:var(--grad-btn);border-radius:20px;padding:5px 12px;box-shadow:var(--sh-btn);white-space:nowrap;}
.plan-name{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
.plan-price{font-family:'Space Grotesk',sans-serif;font-size:32px;font-weight:700;margin:10px 0 8px;}
.plan-price span{font-family:'Inter',sans-serif;font-size:13px;font-weight:500;color:var(--muted);margin-left:2px;}
.plan-sub{font-size:13px;color:var(--ink-soft);line-height:1.6;margin:0 0 20px;min-height:40px;}
.plan-feat{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:11px;}
.plan-feat li{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--ink-soft);}
.plan-feat .ico{width:16px;height:16px;color:var(--navy);flex-shrink:0;margin-top:1px;}

@media(max-width:1100px){.plans-grid{grid-template-columns:repeat(2,1fr);max-width:760px;}}
@media(max-width:640px){.plans-grid{grid-template-columns:1fr;max-width:420px;}}

/* --- admin plan card variants (edit/deactivate/delete) --- */
.plan-card.is-inactive{opacity:.6;}
.plan-badge-off{left:auto;right:24px;background:var(--muted);box-shadow:none;}
.plan-admin-acts{display:flex;gap:7px;justify-content:flex-end;margin-top:18px;padding-top:16px;border-top:1px solid var(--border-soft);flex-wrap:nowrap;}

/* --- site footer --- */
.site-foot{margin-top:38px;background:#0B0B10;color:rgba(255,255,255,.85);}
.site-foot-in{max-width:1180px;padding:32px 30px 24px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px;}
.site-foot .logo-row{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.site-foot .fmark{width:28px;height:28px;border-radius:8px;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:13px;box-shadow:var(--sh-btn);}
.site-foot .logo-row b{color:#fff;}
.site-foot .fmark-img{height:34px;width:auto;display:block;}
/* White tile behind the footer logo only, so the full colour logo reads on the dark footer. */
.site-foot .fmark-box{display:inline-flex;align-items:center;background:#fff;border-radius:12px;padding:8px 14px;box-shadow:0 4px 14px rgba(0,0,0,.25);}
.site-foot .fbrand p{font-size:12.3px;color:rgba(255,255,255,.6);line-height:1.6;margin:0;max-width:300px;}
.site-foot h4{font-family:'Space Grotesk',sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.45);margin:0 0 9px;}
.site-foot a{display:block;font-size:12.7px;color:rgba(255,255,255,.82);padding:4px 0;transition:color .14s;}
.site-foot a:hover{color:#fff;}
.site-foot span.f-plain{display:block;font-size:12.7px;color:rgba(255,255,255,.82);padding:4px 0;}
.site-foot-bar{max-width:1180px;padding:14px 30px 26px;font-size:12.7px;color:rgba(255,255,255,.5);display:flex;justify-content:space-between;gap:12px;flex-wrap:nowrap;border-top:1px solid rgba(255,255,255,.12);}
@media(max-width:820px){.site-foot-in{grid-template-columns:1fr 1fr;}}
@media(max-width:720px){.site-foot-bar{flex-direction:column;align-items:flex-start;flex-wrap:wrap;}}
@media(max-width:520px){.site-foot-in{grid-template-columns:repeat(3,auto);justify-content:space-between;gap:24px 16px;}.site-foot-in .fbrand{grid-column:1/-1;}.site-foot-bar{font-size:12.7px;gap:8px;}}

/* ============================================================
   Global nav: icons + mobile drawer
   ============================================================ */
.ico{width:16px;height:16px;flex-shrink:0;}
/* ^ base fallback size for any <svg class="ico"> not otherwise scoped — without
   this, a <symbol viewBox="0 0 24 24"> used outside a sized context (e.g. a
   plain .search-box or .btn not wrapped in .app-search/.app-post-btn) renders
   at the browser's replaced-element default (300x150), which looks huge/broken.
   More specific rules below (.nav-item .ico, .app-search .ico, etc.) still win. */
.nav-item .ico{width:17px;height:17px;flex-shrink:0;opacity:.8;}
.sidebar-head{display:flex;align-items:center;justify-content:space-between;}
.sidebar-head-white{background:#fff;border-radius:0;margin:-22px -16px 0;padding:0 16px;min-height:64px;box-sizing:border-box;border-bottom:1px solid var(--border-soft);}
.sidebar-head-white .logo{padding:0;}
.sidebar-head-white .nav-burger{background:var(--accent-tint);border-color:transparent;color:var(--navy);}
.sidebar-head-white .nav-burger:hover{background:var(--border-soft);}
.nav-burger{display:none;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:9px;width:36px;height:36px;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
.nav-burger .ico{width:18px;height:18px;}
.nav-burger:hover{background:rgba(255,255,255,.22);}

@media (max-width:900px){
  .sidebar{height:auto;position:sticky;top:0;z-index:40;padding:14px 18px;box-shadow:0 2px 14px -8px rgba(0,0,0,.4);}
  .sidebar-head{position:relative;}
  .sidebar-head-white{margin:-14px -18px 0;padding-bottom:7px;}
  .nav-burger{display:flex;}
  .sidebar-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy-3);padding:10px 16px 18px;
    max-height:calc(100vh - 62px);overflow-y:auto;box-shadow:0 24px 44px -20px rgba(0,0,0,.55);}
  .sidebar.open .sidebar-nav{display:block;}
}

/* ============================================================
   Filter bars — search + selects, reused on Network / Discussions /
   Events / Peer Insights
   ============================================================ */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--card);border:1px solid var(--border-soft);
  border-radius:var(--radius);padding:12px;margin-bottom:16px;box-shadow:var(--sh-sm);}
.filter-bar input[type="search"]{flex:2;min-width:200px;margin:0;}
.filter-bar select{flex:1;min-width:150px;margin:0;width:auto;}
.filter-bar .btn{flex-shrink:0;}
@media(max-width:640px){.filter-bar{flex-direction:column;align-items:stretch;}.filter-bar select,.filter-bar input{width:100%;}}

/* ============================================================
   Member card (Network / Members directory)
   ============================================================ */
.mcard{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;margin-bottom:16px;
  box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;display:flex;flex-direction:column;}
.mcard:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
.mcard-head{display:flex;gap:11px;align-items:flex-start;margin-bottom:10px;}
.mcard-id{min-width:0;}
.mcard-name{font-weight:600;font-size:14.5px;}
.mcard-name a:hover{text-decoration:underline;}
.mcard-loc{color:var(--muted);font-size:11.3px;display:flex;align-items:center;gap:4px;margin-top:3px;}
.mcard-bio{font-size:12.6px;color:var(--ink-soft);line-height:1.55;margin:0 0 10px;}
.mcard-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:12px;}
.mcard-acts{display:flex;gap:6px;margin-top:auto;}

/* ============================================================
   Member profile page (members/show.blade.php)
   ============================================================ */
.layout-2col aside .widget{margin-bottom:16px;}
.profile-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:34px 20px;color:var(--muted);}
.profile-empty .ico{color:var(--border);}
.profile-empty p{margin:0;font-size:13px;}

.profile-cover-slider{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:1024/354;margin-bottom:24px;
  border-radius:20px;background:var(--grad);box-shadow:var(--sh-lg);}
.profile-cover-slider .hero-slide{position:absolute;inset:0;z-index:0;background-size:100% 100%;background-repeat:no-repeat;background-position:center;opacity:0;
  animation:events-slide-fade 28s infinite;}
.profile-cover-slider .hero-slide:nth-child(1){animation-delay:0s;}
.profile-cover-slider .hero-slide:nth-child(2){animation-delay:7s;}
.profile-cover-slider .hero-slide:nth-child(3){animation-delay:14s;}
.profile-cover-slider .hero-slide:nth-child(4){animation-delay:21s;}
.profile-cover-slider::after{content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(20,20,45,.1) 0%,rgba(20,20,45,.45) 100%);}
@media(prefers-reduced-motion:reduce){.profile-cover-slider .hero-slide{animation:none;}.profile-cover-slider .hero-slide:first-child{opacity:1;}}


.profile-hero-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;}
.profile-hero-acts{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:2px;}
/* LinkedIn — only rendered when the member saved a LinkedIn URL.
   .li-mini: small brand-blue logo beside a name; .li-chip: "in LinkedIn" chip in the profile meta row. */
.mcard-name{display:flex;align-items:center;flex-wrap:wrap;gap:5px;}
.li-mini{display:inline-flex;flex:0 0 auto;color:#0A66C2;line-height:0;border-radius:3px;transition:transform .15s ease,opacity .15s ease;}
.li-mini svg{width:15px;height:15px;}
.li-mini:hover{transform:translateY(-1px);opacity:.85;text-decoration:none !important;}
.profile-chip.li-chip{color:#0A66C2;text-decoration:none;transition:background .15s ease,border-color .15s ease;}
.profile-chip.li-chip svg{width:13px;height:13px;}
.profile-chip.li-chip:hover{background:#E8F1FB;border-color:#B9D4F1;}
.profile-hero-acts form{display:flex;}
.profile-hero-acts form .btn{width:100%;}
.profile-hero-name{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
.profile-hero-name h1{font-size:21px;font-weight:600;margin:0;font-family:'Space Grotesk',sans-serif;letter-spacing:-.01em;}
.profile-hero-role{font-size:13.5px;color:var(--ink-soft);margin:3px 0 12px;}
.profile-hero-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.profile-chip{display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;color:var(--ink-soft);
  background:var(--paper);border:1px solid var(--border-soft);border-radius:20px;padding:5px 11px;}
.profile-chip .ico{width:12px;height:12px;color:var(--navy);}
.profile-chip.stat{color:var(--navy);background:var(--accent-tint);border-color:transparent;}
.profile-hero-intro{font-size:13.5px;line-height:1.65;color:var(--ink-soft);margin:0 0 16px;padding-top:16px;border-top:1px solid var(--border-soft);}
.profile-hero-tags{margin-bottom:0;}
@media(max-width:520px){
  .profile-hero-acts{flex:1;justify-content:flex-end;min-width:0;}
  .profile-hero-acts .btn{padding-left:16px;padding-right:16px;font-size:13px;white-space:normal;text-align:center;}
}

/* "rail" — infinite marquee row of member-mini widgets (Recommended for you).
   .rail-wrap clips the overflow; .rail is the flex track holding the item
   set TWICE back to back and sliding exactly -50% so the loop point is
   invisible — the duplicate set is already in position to take over. */
.rail-wrap{overflow:hidden;margin-bottom:6px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);
  mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);}
.rail{display:flex;gap:12px;width:max-content;animation:rail-marquee 32s linear infinite;}
.rail:hover{animation-play-state:paused;}
.rail-item{flex:0 0 260px;width:260px;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:4px 12px;box-shadow:var(--sh-sm);}
@keyframes rail-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.rail{animation:none;}}

/* ============================================================
   Event card (Events page + widgets)
   ============================================================ */
.ecard{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;margin-bottom:16px;
  box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;display:flex;min-height:230px;}
.ecard:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
/* Image side of the split card */
.ecard-media{position:relative;flex:0 0 40%;display:flex;flex-direction:column;justify-content:space-between;padding:14px;
  background:var(--grad);background-size:cover;background-position:center;color:#fff;isolation:isolate;}
.ecard-media::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,20,45,.35) 0%,rgba(20,20,45,0) 45%,rgba(20,20,45,.6) 100%);}
.ecard-tags{display:flex;flex-wrap:wrap;gap:6px;}
.ecard-tag{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:rgba(255,255,255,.18);
  border-radius:6px;padding:4px 9px;backdrop-filter:blur(4px);}
.ecard-date{display:flex;flex-direction:column;line-height:1.15;}
.ecard-date b{font-family:'Space Grotesk',sans-serif;font-size:24px;}
.ecard-date span{font-size:11.5px;font-weight:600;color:rgba(255,255,255,.85);}
/* Text side */
.ecard-body{flex:1;min-width:0;padding:16px 18px;display:flex;flex-direction:column;}
.ecard-body .ecard-foot{margin-top:auto;}
.ecard-body .ecard-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
@media (max-width:560px){.ecard{flex-direction:column;}.ecard-media{flex-basis:auto;height:160px;}}
.ecard-title{font-weight:600;font-size:15.5px;margin-bottom:6px;}
.ecard-title a:hover{text-decoration:underline;}
.ecard-desc{font-size:12.8px;color:var(--ink-soft);line-height:1.55;margin:0 0 10px;}
.ecard-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink-soft);margin-bottom:2px;}
.ecard-meta span{display:flex;align-items:center;gap:4px;}
.ecard-foot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:8px;}

/* ============================================================
   Event detail page (events/show.blade.php)
   ============================================================ */
.event-hero-slider{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;
  gap:14px;aspect-ratio:1024/452;min-height:300px;padding:26px 30px;margin-bottom:24px;border-radius:20px;background:#0A0B10;color:#fff;box-shadow:var(--sh-lg);}
.event-hero-slider .hero-slide{position:absolute;inset:0;z-index:0;background-size:cover;background-repeat:no-repeat;background-position:center;opacity:0;
  animation:events-slide-fade 28s infinite;}
.event-hero-slider .hero-slide:nth-child(1){animation-delay:0s;}
.event-hero-slider .hero-slide:nth-child(2){animation-delay:7s;}
.event-hero-slider .hero-slide:nth-child(3){animation-delay:14s;}
.event-hero-slider .hero-slide:nth-child(4){animation-delay:21s;}
.event-hero-slider::after{content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(110deg,rgba(6,7,14,.75) 0%,rgba(8,9,18,.5) 45%,rgba(10,11,24,.3) 100%);}
.event-hero-date{position:relative;z-index:2;display:flex;flex-direction:column;line-height:1.1;}
.event-hero-date b{font-family:'Space Grotesk',sans-serif;font-size:34px;}
.event-hero-date span{font-size:12px;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:.04em;}
.event-hero-badges{position:relative;z-index:2;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
@media(prefers-reduced-motion:reduce){.event-hero-slider .hero-slide{animation:none;}.event-hero-slider .hero-slide:first-child{opacity:1;}}
@media(max-width:720px){.event-hero-slider{aspect-ratio:auto;min-height:300px;}}
@media(max-width:520px){.event-hero-slider{flex-direction:column;align-items:flex-start;min-height:240px;}.event-hero-badges{justify-content:flex-start;}}
.event-hero-title{font-size:22px;font-weight:600;margin:0 0 14px;font-family:'Space Grotesk',sans-serif;letter-spacing:-.01em;}
.event-hero-desc{font-size:13.5px;line-height:1.7;color:var(--ink-soft);margin:0;padding-top:16px;border-top:1px solid var(--border-soft);white-space:pre-line;}
.event-attendees{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.event-attendee{display:block;border-radius:50%;transition:transform .15s ease;}
.event-attendee:hover{transform:translateY(-2px);}
.event-attendee-more{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;
  background:var(--paper);color:var(--muted);font-size:11px;font-weight:700;flex-shrink:0;}
.event-rsvp{margin-bottom:16px;}
.event-rsvp-price{font-family:'Space Grotesk',sans-serif;font-size:26px;font-weight:700;}

/* ============================================================
   Insight card (Peer Insights page)
   ============================================================ */
.icard{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px;margin-bottom:16px;
  box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;}
.icard:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
.icard-head{display:flex;align-items:center;gap:6px;margin-bottom:9px;}
.icard-title{font-size:15px;font-weight:600;margin:0 0 6px;font-family:'Inter',sans-serif;}
.icard-title a:hover{text-decoration:underline;}
.icard-desc{font-size:12.8px;color:var(--ink-soft);line-height:1.55;margin:0 0 12px;}
.icard-by{display:flex;align-items:center;gap:9px;margin-bottom:12px;}
.icard-by .who{font-size:12px;font-weight:600;}
.icard-by .who span{display:block;color:var(--muted);font-weight:500;font-size:11px;}
.icard-foot{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:8px;}
.icard-counts{display:flex;gap:12px;font-size:12px;color:var(--muted);}

/* ============================================================
   Pagination
   ============================================================ */
.pager{display:flex;align-items:center;justify-content:center;gap:14px;margin:22px 0 8px;}
.pager-btn{font-size:12.8px;font-weight:600;color:var(--navy);padding:8px 14px;border:1px solid var(--border);border-radius:8px;background:var(--card);transition:background .14s,border-color .14s;}
.pager-btn:hover{background:var(--accent-tint);border-color:var(--navy);}
.pager-btn.disabled{color:var(--muted);opacity:.5;pointer-events:none;}
.pager-info{font-size:12px;color:var(--muted);}

/* ============================================================
   Page eyebrow (Network / Discussions / Events / Peer Insights headers)
   ============================================================ */
.page-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--navy);background:var(--accent-tint);border-radius:20px;padding:5px 12px;margin-bottom:10px;}
.page-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--teal);flex-shrink:0;}
.verified-badge{width:14px;height:14px;color:var(--navy);flex-shrink:0;vertical-align:-2px;}
.btn.dark{background:#0B0B10;color:#fff;box-shadow:0 4px 14px -4px rgba(0,0,0,.4);}
.btn.dark:hover{background:#1c1c22;transform:translateY(-1px);}

/* ============================================================
   Top navbar app shell (Home / Network / Discussions / Events /
   Peer Insights). The header itself (.lp-header/.lp-nav/...) is
   NOT styled here — it reuses public/css/nav.css, the same rules
   landing.blade.php's own header uses (loaded via @guest in this
   layout's <head>), so there's one source of truth for the public
   navbar's look instead of a duplicated copy. Admin keeps its own
   separate .shell/.sidebar layout in layouts/admin.blade.php —
   nothing here touches those selectors, so the admin console is
   unaffected.
   ============================================================ */
.topshell{display:flex;flex-direction:column;min-height:100vh;}

main.content{margin:0 auto;}
.site-foot-in,.site-foot-bar{margin:0 auto;}

/* ---------- region dropdown (replaces the old region-pills row) ---------- */
.region-select{position:relative;}
.region-select-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9px;
  border:1px solid var(--border-soft);background:var(--card);font-size:12.8px;font-weight:600;
  color:var(--ink);cursor:pointer;transition:border-color .14s,background .14s;}
.region-select-btn:hover{border-color:var(--navy);background:var(--accent-tint);}
.region-select-btn .ico{width:14px;height:14px;color:var(--navy);flex-shrink:0;}
.region-caret{font-size:9px;color:var(--muted);margin-left:1px;}
.region-select-menu{right:0;left:auto;min-width:170px;}
.sheet a.active{background:var(--accent-tint);color:var(--navy);font-weight:700;}

/* ---------- notification bell ---------- */
.notif-wrap{position:relative;}
.notif-btn{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;
  border:1px solid var(--border-soft);background:var(--card);color:var(--ink-soft);flex-shrink:0;transition:background .14s,border-color .14s;}
.notif-btn:hover{background:var(--accent-tint);border-color:var(--navy);}
.notif-btn .ico{width:17px;height:17px;}
.notif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--rose);
  color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;box-shadow:0 0 0 2px var(--card);}
.notif-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:340px;max-width:calc(100vw - 24px);max-height:420px;overflow-y:auto;
  background:var(--card);border:1px solid var(--border-soft);border-radius:14px;box-shadow:var(--sh-lg);}
.notif-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--border-soft);
  position:sticky;top:0;background:var(--card);}
.notif-panel-head b{font-family:'Space Grotesk',sans-serif;font-size:13.5px;}
.notif-panel-head button{background:none;border:none;color:var(--amber-dark);font-size:11.5px;font-weight:600;}
.notif-panel-head button:hover{text-decoration:underline;}
.notif-item{display:block;padding:11px 15px;border-bottom:1px solid var(--border-soft);transition:background .12s;}
.notif-item:last-child{border-bottom:none;}
.notif-item:hover{background:var(--accent-tint);}
.notif-item.unread{background:var(--amber-bg);}
.notif-item.unread:hover{background:var(--accent-tint);}
.notif-item .nt-row{display:flex;align-items:flex-start;gap:8px;}
.notif-item .nt-dot{width:7px;height:7px;border-radius:50%;background:var(--navy);flex-shrink:0;margin-top:5px;}
.notif-item .nt-body{min-width:0;flex:1;}
.notif-item .nt-title{font-size:12.8px;font-weight:600;line-height:1.4;}
.notif-item .nt-msg{font-size:12px;color:var(--ink-soft);line-height:1.45;margin-top:2px;}
.notif-item .nt-time{font-size:10.8px;color:var(--muted);margin-top:4px;}
.notif-empty{padding:32px 16px;text-align:center;color:var(--muted);font-size:12.8px;}

/* ============================================================
   Admin console — dashboard stats, quick links, tables, forms
   ============================================================ */
.btn.rose{background:linear-gradient(180deg,#D8503F,#B93524);color:#fff;box-shadow:0 4px 14px -4px rgba(192,57,43,.42);}
.btn.rose:hover{filter:brightness(1.05);}

.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:18px;}
.stat-card{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--sh);position:relative;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease;}
.stat-card:hover{box-shadow:var(--sh-lg);transform:translateY(-3px);}
.stat-card::after{content:'';position:absolute;right:-18px;bottom:-18px;width:74px;height:74px;border-radius:50%;background:var(--accent-tint);z-index:0;}
.stat-card .stat-ico{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;background:var(--grad-btn);color:#fff;box-shadow:var(--sh-btn);position:relative;z-index:1;}
.stat-card .stat-ico .ico{width:19px;height:19px;}
.stat-card b{font-family:'Space Grotesk',sans-serif;font-size:28px;display:block;letter-spacing:-.02em;position:relative;z-index:1;}
.stat-card span{font-size:12px;color:var(--muted);font-weight:600;position:relative;z-index:1;}
.stat-card.teal .stat-ico{background:linear-gradient(180deg,#278D74,#1F6F5C);box-shadow:0 4px 14px -4px rgba(31,111,92,.42);}
.stat-card.amber .stat-ico{background:linear-gradient(180deg,#E7A93C,#C98A20);box-shadow:0 4px 14px -4px rgba(201,138,32,.42);}
.stat-card.rose .stat-ico{background:linear-gradient(180deg,#D8503F,#B93524);box-shadow:0 4px 14px -4px rgba(192,57,43,.42);}

.admin-quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px;}
.qlink{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:13px 15px;box-shadow:var(--sh-sm);font-weight:600;font-size:13px;transition:border-color .15s,transform .15s,box-shadow .15s;}
.qlink:hover{border-color:var(--navy);transform:translateY(-2px);box-shadow:var(--sh);}
.qlink .qico{width:34px;height:34px;border-radius:9px;background:var(--accent-tint);color:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.qlink .qico .ico{width:17px;height:17px;}

.region-bar-row{display:flex;align-items:center;gap:12px;padding:10px 2px;border-top:1px solid var(--border-soft);}
.region-bar-row:first-of-type{border-top:none;}
.region-bar-row .rn{width:112px;flex-shrink:0;font-size:12.8px;font-weight:600;}
.region-bar-track{flex:1;height:8px;border-radius:6px;background:var(--paper);overflow:hidden;}
.region-bar-fill{height:100%;background:var(--grad-btn);border-radius:6px;}
.region-bar-row .rc{width:76px;text-align:right;flex-shrink:0;font-size:11.5px;color:var(--muted);font-weight:600;}


.role-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:capitalize;white-space:nowrap;}
.role-badge.admin{background:var(--rose-bg);color:var(--rose);}
.role-badge.moderator{background:var(--amber-bg);color:var(--amber-dark);}
.role-badge.member{background:var(--teal-bg);color:var(--teal);}

.admin-user-cell{display:flex;align-items:center;gap:11px;}
.admin-user-cell .av{width:32px;height:32px;font-size:12px;}
.role-select-wrap select{width:auto;min-width:132px;padding:7px 10px;font-size:12.5px;}

.admin-card-form{background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px 22px;margin-bottom:20px;box-shadow:var(--sh);}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;}
.form-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.form-foot{display:flex;justify-content:flex-end;margin-top:14px;}
@media(max-width:700px){.form-grid,.form-grid.cols-4{grid-template-columns:1fr;}}

.ann-admin{display:flex;gap:13px;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 18px;margin-bottom:14px;box-shadow:var(--sh);transition:box-shadow .18s ease,transform .18s ease;}
.ann-admin:hover{box-shadow:var(--sh-lg);transform:translateY(-2px);}
.ann-admin .aico{width:36px;height:36px;border-radius:10px;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--sh-btn);}
.ann-admin.high .aico{background:linear-gradient(180deg,#E7A93C,#C98A20);box-shadow:0 4px 14px -4px rgba(201,138,32,.42);}
.ann-admin-body{min-width:0;flex:1;}
.ann-admin-head{display:flex;align-items:center;gap:8px;margin-bottom:3px;flex-wrap:wrap;}
.ann-admin-head b{font-size:14px;}
.ann-admin p{margin:2px 0 6px;font-size:13px;color:var(--ink-soft);line-height:1.55;}

.admin-empty{background:var(--card);border:1px dashed var(--border);border-radius:var(--radius);padding:36px 20px;text-align:center;color:var(--muted);box-shadow:var(--sh-sm);}
.admin-empty .ico{width:28px;height:28px;margin-bottom:10px;opacity:.5;}

/* ---- generic modal (used by admin "New …" popup forms) ---- */
.modal-overlay{position:fixed;inset:0;background:rgba(12,12,20,.5);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100;opacity:0;pointer-events:none;transition:opacity .16s ease;}
.modal-overlay.open{opacity:1;pointer-events:auto;}
.modal-box{background:var(--card);border-radius:18px;box-shadow:var(--sh-lg);width:100%;max-width:560px;max-height:88vh;overflow-y:auto;padding:24px 26px;transform:translateY(10px) scale(.98);transition:transform .16s ease;}
.modal-overlay.open .modal-box{transform:translateY(0) scale(1);}
.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.modal-head h2{font-size:17px;margin:0;}
.modal-close{background:var(--paper);border:1px solid var(--border-soft);color:var(--muted);width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .14s,color .14s;}
.modal-close:hover{background:var(--accent-tint);color:var(--ink);}
.modal-close .ico{width:15px;height:15px;}
.page-head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.btn-ico{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;flex-shrink:0;}
.btn-ico .ico{width:14px;height:14px;flex-shrink:0;}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:9px;flex-shrink:0;}
.icon-btn .ico{width:15px;height:15px;}
.icon-btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none;}
@media(max-width:520px){.page-head-row{align-items:flex-start;}.btn-ico{width:100%;justify-content:center;}}
.modal-box .field:first-child label{margin-top:0;}
.modal-box .form-grid .field{margin-bottom:0;}
@media(max-width:520px){.modal-box{padding:20px;}}

/* ---- delete confirmation popup ---- */
.confirm-overlay{z-index:200;}
.confirm-box{max-width:440px;text-align:center;padding:30px 28px 24px;}
.confirm-icon{width:56px;height:56px;border-radius:50%;background:var(--rose-bg);color:var(--rose);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 0 0 8px rgba(192,57,43,.08);}
.confirm-icon.neutral{background:var(--accent-tint);color:var(--navy);box-shadow:0 0 0 8px rgba(111,114,216,.08);}
.confirm-icon .ico{width:24px;height:24px;}
.confirm-title{font-size:19px;margin:0 0 6px;}
.confirm-name{display:inline-block;max-width:100%;font-weight:600;font-size:13px;background:var(--paper);border:1px solid var(--border-soft);border-radius:20px;padding:4px 12px;margin-bottom:14px;word-break:break-word;}
.confirm-affects{text-align:left;background:var(--rose-bg);border:1px solid rgba(192,57,43,.18);border-radius:12px;padding:12px 14px;margin-bottom:20px;}
.confirm-affects-h{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--rose);margin-bottom:6px;}
.confirm-affects ul{margin:0;padding-left:18px;font-size:13px;line-height:1.7;color:var(--ink);}
.confirm-acts{display:flex;gap:10px;justify-content:center;}
.confirm-acts .btn{min-width:120px;justify-content:center;}

/* ---- flash toasts ---- */
.toast-stack{position:fixed;top:18px;right:18px;z-index:300;display:flex;flex-direction:column;gap:10px;max-width:calc(100vw - 36px);}
.toast{display:flex;align-items:flex-start;gap:12px;width:360px;max-width:100%;background:var(--card);border-radius:14px;padding:14px 12px 14px 14px;box-shadow:var(--sh-lg);border:1px solid var(--border-soft);border-left:4px solid var(--teal);opacity:0;transform:translateX(24px);transition:opacity .25s ease,transform .25s ease;}
.toast.show{opacity:1;transform:translateX(0);}
.toast-ico{width:30px;height:30px;border-radius:50%;background:var(--teal-bg);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.toast-ico .ico{width:16px;height:16px;}
.toast-h{font-weight:700;font-size:13.5px;}
.toast-t{font-size:12.8px;color:var(--muted);margin-top:2px;word-break:break-word;}
.toast-x{margin-left:auto;background:none;border:0;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;padding:0 4px;}
.toast-error{border-left-color:var(--rose);}
.toast-error .toast-ico{background:var(--rose-bg);color:var(--rose);}
@media(max-width:520px){.toast-stack{left:18px;right:18px;top:12px;}.toast{width:100%;}}

/* ============================================================
   Messages (messages/index.blade.php)
   ============================================================ */
.msg-shell{display:grid;grid-template-columns:296px 1fr;height:calc(100vh - 150px);min-height:460px;
  background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--sh);overflow:hidden;}
.msg-sidebar{border-right:1px solid var(--border-soft);overflow-y:auto;}
.msg-sidebar-head{padding:14px 16px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between;}
.msg-sidebar-head b{font-family:'Space Grotesk',sans-serif;font-size:14px;}
.msg-sidebar-head a{font-size:11.5px;font-weight:600;color:var(--amber-dark);}
.msg-conv{display:flex;gap:11px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-soft);transition:background .12s;}
.msg-conv:hover{background:var(--accent-tint);}
.msg-conv.active{background:var(--amber-bg);}
.msg-conv-id{min-width:0;flex:1;}
.msg-conv-id .nm{font-size:13px;font-weight:600;}
.msg-conv-id .pv{font-size:11.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}

.msg-thread{display:flex;flex-direction:column;height:100%;min-width:0;}
.msg-thread-head{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid var(--border-soft);flex-shrink:0;}
.msg-thread-head .nm{font-size:13.8px;font-weight:600;}
.msg-thread-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px;}
.msg-bubble{max-width:66%;padding:10px 13px;border-radius:14px;font-size:13.2px;line-height:1.5;align-self:flex-start;background:var(--paper);color:var(--ink);word-break:break-word;}
.msg-bubble.me{align-self:flex-end;background:var(--grad-btn);color:#fff;}
.msg-bubble .time{font-size:10.3px;opacity:.65;margin-top:4px;}
.msg-attach{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:9px;background:rgba(255,255,255,.16);font-size:12px;font-weight:600;margin-top:4px;}
.msg-bubble:not(.me) .msg-attach{background:var(--card);border:1px solid var(--border-soft);}
.msg-attach .ico{width:14px;height:14px;flex-shrink:0;}
.msg-attach:hover{text-decoration:underline;}
.msg-attach-img{display:block;max-width:220px;max-height:220px;border-radius:10px;margin-top:4px;cursor:pointer;object-fit:cover;}

.msg-composer{display:flex;align-items:center;gap:9px;padding:12px 16px;border-top:1px solid var(--border-soft);flex-shrink:0;}
.msg-composer input[type=text]{border-radius:22px;margin:0;}
.msg-composer .file-btn{flex-shrink:0;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--paper);border:1px solid var(--border-soft);color:var(--muted);cursor:pointer;transition:background .14s,color .14s;position:relative;overflow:hidden;}
.msg-composer .file-btn:hover{background:var(--accent-tint);color:var(--ink);}
.msg-composer .file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.msg-composer .file-btn.has-file{background:var(--amber-bg);color:var(--amber-dark);border-color:transparent;}
.msg-composer button[type=submit]{flex-shrink:0;border-radius:22px;}
.msg-file-chip{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--amber-dark);font-weight:600;padding:0 16px 10px;margin-top:-4px;}

.msg-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);text-align:center;padding:30px;}
.msg-empty .ico{width:30px;height:30px;opacity:.4;}
.msg-empty p{margin:0;font-size:13px;}

@media(max-width:760px){
  .msg-shell{grid-template-columns:1fr;height:auto;}
  .msg-sidebar{max-height:280px;}
}

/* ============================================================
   Public info pages — About Us / Contact Us
   ============================================================ */
.page-hero{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:clamp(300px,38vw,420px);padding:48px 24px 150px;margin-bottom:28px;border-radius:20px;background:#0A0B10;color:#fff;box-shadow:var(--sh-lg);}
.page-hero .hero-slide{position:absolute;inset:0;z-index:0;background-size:cover;background-repeat:no-repeat;background-position:center;opacity:0;
  animation:events-slide-fade 28s infinite;}
.page-hero .hero-slide:nth-child(1){animation-delay:0s;}
.page-hero .hero-slide:nth-child(2){animation-delay:7s;}
.page-hero .hero-slide:nth-child(3){animation-delay:14s;}
.page-hero .hero-slide:nth-child(4){animation-delay:21s;}
.page-hero::after{content:'';position:absolute;inset:0;z-index:1;
  background:radial-gradient(ellipse at center,rgba(8,9,20,.45) 0%,rgba(8,9,20,.72) 100%);}
.page-hero-in{position:relative;z-index:2;max-width:720px;}
/* Picture-only hero (About): lighter overlay, no text block; title stays for screen readers. */
.page-hero--photo{padding:0;}
.page-hero--photo::after{background:linear-gradient(180deg,rgba(8,9,20,.05) 0%,rgba(8,9,20,.25) 100%);}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#E6E6F0;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px);padding:7px 14px;border-radius:20px;margin-bottom:16px;}
.page-hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:#2FAE7E;box-shadow:0 0 0 3px rgba(47,174,126,.3);}
.page-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(28px,4.4vw,46px);line-height:1.12;margin:0 0 14px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5);}
.page-hero h1:last-child{margin-bottom:0;}
.page-hero p{font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.85);margin:0;text-shadow:0 1px 8px rgba(0,0,0,.5);}
@media(prefers-reduced-motion:reduce){.page-hero .hero-slide{animation:none;}.page-hero .hero-slide:first-child{opacity:1;}}

.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-bottom:24px;}
.info-card{background:var(--card);border:1px solid var(--border-soft);border-radius:16px;padding:24px;box-shadow:var(--sh-sm);transition:transform .18s,box-shadow .18s;}
.info-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);}
.info-card h3{font-family:'Space Grotesk',sans-serif;font-size:17px;margin:14px 0 8px;}
.info-card p{font-size:13.5px;line-height:1.7;color:var(--muted);margin:0;}
.info-ico{width:44px;height:44px;border-radius:12px;background:var(--grad);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 16px -6px rgba(84,87,190,.55);}
.info-ico .ico{width:20px;height:20px;}

.stat-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;background:var(--grad);color:#fff;border-radius:18px;padding:28px 20px;margin-bottom:24px;text-align:center;box-shadow:var(--sh-lg);}
.stat-band b{display:block;font-family:'Space Grotesk',sans-serif;font-size:clamp(28px,4vw,38px);line-height:1.1;}
.stat-band span{display:block;font-size:12.5px;color:rgba(255,255,255,.8);margin-top:4px;}

.cta-band{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:26px 28px;box-shadow:var(--sh-sm);}
.cta-band h2{font-family:'Space Grotesk',sans-serif;font-size:21px;margin:0 0 4px;}
.cta-band p{font-size:13.5px;color:var(--muted);margin:0;}
.cta-acts{display:flex;gap:10px;flex-wrap:wrap;}

.contact-layout{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:start;}
.contact-side h2,.contact-form h2{font-family:'Space Grotesk',sans-serif;font-size:20px;margin:0 0 16px;}
.contact-topic{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--border-soft);border-radius:14px;padding:14px 16px;margin-bottom:12px;box-shadow:var(--sh-sm);}
.contact-topic b{display:block;font-size:14px;}
.contact-topic span:not(.info-ico){display:block;font-size:12.5px;color:var(--muted);margin-top:2px;}
.contact-form{margin:0;padding:26px;}
@media(max-width:820px){.contact-layout{grid-template-columns:1fr;}}
@media(max-width:520px){.page-hero{padding:36px 18px;border-radius:16px;}.cta-band{padding:22px 20px;}}

.vm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-bottom:24px;}
.vm-card{position:relative;overflow:hidden;border-radius:18px;padding:30px 28px;background:var(--grad);color:#fff;box-shadow:var(--sh-lg);}
.vm-card::after{content:'';position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.1);}
.vm-card.vm-alt{background:var(--card);color:var(--ink);border:1px solid var(--border-soft);box-shadow:var(--sh-sm);}
.vm-card.vm-alt::after{background:var(--accent-tint);}
.vm-tag{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:6px 12px;border-radius:20px;background:rgba(255,255,255,.18);margin-bottom:14px;}
.vm-tag .ico{width:13px;height:13px;}
.vm-alt .vm-tag{background:var(--accent-tint);color:var(--navy);}
.vm-card h2{position:relative;z-index:1;font-family:'Space Grotesk',sans-serif;font-size:clamp(19px,2.4vw,24px);line-height:1.25;margin:0 0 12px;}
.vm-card p{position:relative;z-index:1;font-size:14px;line-height:1.7;margin:0;color:rgba(255,255,255,.88);}
.vm-card ul{position:relative;z-index:1;margin:0;padding-left:18px;font-size:13.5px;line-height:1.75;color:var(--ink-soft);}
.vm-card li{margin-bottom:4px;}

.contact-row{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--border-soft);}
.contact-row:first-of-type{border-top:0;padding-top:4px;}
.contact-row b{display:block;font-size:13px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;}
.contact-row span:not(.info-ico){display:block;font-size:15px;line-height:1.6;color:var(--ink);}
.contact-link{display:inline-block;font-size:15px;color:var(--navy-3);font-weight:600;word-break:break-word;}
.contact-row span + .contact-link{font-size:13px;margin-top:4px;}

/* ---- admin tabs (Pages) ---- */
.admin-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border-soft);margin-bottom:20px;overflow-x:auto;}
.admin-tab{position:relative;padding:11px 20px;font-size:14px;font-weight:600;color:var(--muted);border-radius:10px 10px 0 0;white-space:nowrap;transition:color .14s,background .14s;}
.admin-tab:hover{color:var(--ink);background:var(--accent-tint);}
.admin-tab.active{color:var(--navy-3);background:var(--accent-tint);}

/* ---- profile edit page ---- */
.profile-card{max-width:660px;margin:0 auto;background:var(--card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--sh);overflow:hidden;}
.profile-cover{height:128px;background:var(--grad);position:relative;}
.profile-cover::after{content:'';position:absolute;inset:0;background:radial-gradient(460px 220px at 88% -25%,rgba(255,255,255,.28),transparent 62%);}
.profile-head{display:flex;flex-direction:column;align-items:center;padding:0 28px 24px;margin-top:-54px;}
.profile-avatar-wrap{position:relative;}
.profile-avatar{width:108px;height:108px;border-radius:50%;border:4px solid var(--card);box-shadow:var(--sh-lg);overflow:hidden;background:var(--accent-tint);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;color:var(--navy);}
.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.profile-photo-btn{position:absolute;bottom:2px;right:2px;width:34px;height:34px;border-radius:50%;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh-btn);border:3px solid var(--card);cursor:pointer;transition:transform .14s ease;}
.profile-photo-btn:hover{transform:scale(1.07);}
.profile-photo-btn .ico{width:14px;height:14px;}
.profile-name-head{text-align:center;margin-top:14px;}
.profile-name-head h1{font-size:21px;margin:0 0 3px;}
.profile-name-head p{color:var(--muted);font-size:13px;margin:0;}
.profile-body{padding:6px 28px 28px;}
.profile-section-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:22px 0 12px;display:flex;align-items:center;gap:8px;}
.profile-section-label:first-child{margin-top:4px;}
.profile-section-label::after{content:'';flex:1;height:1px;background:var(--border-soft);}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;}
.profile-grid .field{margin-bottom:14px;}
.profile-grid .field.full{grid-column:1/-1;}
@media(max-width:560px){.profile-grid{grid-template-columns:1fr;}}
.profile-input-icon{position:relative;display:flex;align-items:center;}
.profile-input-icon .ico{position:absolute;left:12px;width:15px;height:15px;color:var(--muted);pointer-events:none;}
.profile-input-icon input{padding-left:35px;}
.profile-actions{display:flex;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-soft);}
.profile-actions .btn{flex:1;text-align:center;}
.admin-tab.active::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--navy);}

/* ============================================================
   About Us — long-form sections (content from the original GRN site)
   ============================================================ */
.ab-split{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:28px 48px;align-items:start;
  background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:36px 40px;margin-bottom:24px;box-shadow:var(--sh-sm);}
.ab-label{font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:700;line-height:1.35;color:var(--ink);margin:4px 0 0;}
.ab-body{max-width:640px;}
.ab-lead{font-family:'Space Grotesk',sans-serif;font-size:clamp(24px,3vw,34px);font-weight:600;line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:0 0 22px;}
.ab-text{font-size:16px;line-height:1.75;color:var(--ink-soft);margin:0 0 16px;}
.ab-text-lg{font-size:17.5px;}
.ab-text strong{color:var(--ink);font-weight:700;}
.ab-small{font-size:14.5px;line-height:1.7;color:var(--ink-soft);margin:0;}
/* Hand-drawn style accents from the original design: indigo underline + circled phrase */
.ab-u{
  text-decoration:underline;text-decoration-color:var(--navy);text-decoration-thickness:2px;text-underline-offset:5px;}
.ab-o{padding:1px 6px;margin:0 -2px;border:1.5px solid var(--navy);border-radius:999px;box-decoration-break:clone;-webkit-box-decoration-break:clone;}

.ab-h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(26px,3.2vw,36px);font-weight:700;letter-spacing:-.02em;color:var(--ink);margin:0 0 22px;}
.ab-access{background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:36px 40px;margin-bottom:24px;box-shadow:var(--sh-sm);}
.ab-access-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.ab-access-grid h3{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:700;margin:0 0 14px;color:var(--ink);}
.ab-access-grid h3 .ab-u{text-underline-offset:7px;}
.ab-access-grid h4{font-size:16.5px;font-weight:500;line-height:1.45;color:var(--ink);margin:0 0 12px;}
.ab-access-grid p{font-size:14.5px;line-height:1.7;color:var(--ink-soft);margin:0;}

.ab-offer{margin-bottom:6px;}
.ab-offer .ab-h2{margin-left:4px;}
.ab-offer-grid{grid-template-columns:repeat(3,1fr);}
@media(max-width:960px){.ab-offer-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.ab-offer-grid{grid-template-columns:1fr;}}

.ab-faq{background:var(--card);border:1px solid var(--border-soft);border-radius:18px;padding:36px 40px;margin-bottom:24px;box-shadow:var(--sh-sm);}
.ab-faq-list{display:flex;flex-direction:column;}
.ab-faq-item{border-top:1px solid var(--border-soft);}
.ab-faq-item:last-child{border-bottom:1px solid var(--border-soft);}
.ab-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px 2px;font-size:16px;font-weight:600;color:var(--ink);}
.ab-faq-item summary::-webkit-details-marker{display:none;}
.ab-faq-item summary::after{content:'+';flex-shrink:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  font-size:18px;font-weight:500;color:var(--navy-3);background:var(--accent-tint);transition:transform .2s;}
.ab-faq-item[open] summary::after{transform:rotate(45deg);}
.ab-faq-item summary:hover{color:var(--navy-3);}
.ab-faq-item p{font-size:14.5px;line-height:1.75;color:var(--ink-soft);margin:0;padding:0 44px 20px 2px;}

@media(max-width:860px){
  .ab-split{grid-template-columns:1fr;gap:14px;padding:26px 22px;}
  .ab-access,.ab-faq{padding:26px 22px;}
  .ab-access-grid{grid-template-columns:1fr;gap:26px;}
  .ab-faq-item p{padding-right:4px;}
}
