:root{
  --primary:#3157d5;
  --primary-2:#6c4ff8;
  --ink:#17203a;
  --muted:#68728a;
  --surface:#ffffff;
  --soft:#f4f6fb;
  --line:#e6eaf2;
  --shadow:0 18px 50px rgba(29,43,84,.12);
  --radius:24px;
  --safe-bottom:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:320px;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:#eef1f7;
}
button,a{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
.app-shell{
  width:min(760px,100%);
  min-height:100vh;
  margin:auto;
  background:var(--soft);
  position:relative;
  padding-bottom:calc(84px + var(--safe-bottom));
  box-shadow:0 0 60px rgba(22,32,58,.08);
}
.splash{
  position:fixed;inset:0;z-index:9999;
  display:grid;place-content:center;text-align:center;
  background:linear-gradient(145deg,#fff,#f2f4ff);
  transition:opacity .45s ease,visibility .45s ease;
}
.splash.hide{opacity:0;visibility:hidden}
.splash img{width:112px;margin:auto;border-radius:28px;box-shadow:var(--shadow)}
.splash h1{margin:20px 0 4px;letter-spacing:.14em;font-size:29px}
.splash p{margin:0;color:var(--muted)}
.splash small{margin-top:28px;color:#8b93a8}

.topbar{
  position:sticky;top:0;z-index:50;
  min-height:72px;padding:10px 18px;
  display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(230,234,242,.9);
}
.brand-button{
  flex:1;min-width:0;border:0;background:transparent;padding:0;
  display:flex;align-items:center;gap:11px;text-align:left;color:var(--ink);
}
.brand-button img{width:43px;height:43px;border-radius:13px;object-fit:cover}
.brand-button span{display:grid;min-width:0}
.brand-button strong{letter-spacing:.12em;font-size:16px}
.brand-button small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icon-btn,.install-btn{
  border:1px solid var(--line);background:#fff;color:var(--ink);
  min-height:40px;border-radius:13px;padding:0 13px;font-weight:700;
}
.icon-btn{width:40px;padding:0;font-size:22px}
.install-btn{color:var(--primary)}

.view{display:none;animation:fade .25s ease}
.view.active{display:block}
@keyframes fade{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}

.hero{
  margin:16px 16px 0;
  padding:34px 26px 24px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 0%,rgba(255,255,255,.25),transparent 28%),
    linear-gradient(140deg,#3157d5,#7351ef 60%,#9a65ef);
  box-shadow:0 22px 55px rgba(60,66,183,.27);
  overflow:hidden;
}
.eyebrow{
  display:block;margin-bottom:8px;
  text-transform:uppercase;letter-spacing:.14em;
  font-size:11px;font-weight:850;color:var(--primary);
}
.hero .eyebrow{color:#dfe6ff}
.hero h1{
  margin:0;font-size:clamp(34px,9vw,54px);
  line-height:1.02;letter-spacing:-.045em;
}
.hero>p{max-width:510px;margin:16px 0 24px;line-height:1.55;color:#edf0ff}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.hero-stats div{
  padding:12px 10px;border:1px solid rgba(255,255,255,.2);
  border-radius:17px;background:rgba(255,255,255,.11);
}
.hero-stats strong{display:block;font-size:20px}
.hero-stats span{font-size:11px;color:#e4e9ff}

.section{padding:27px 16px 0}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:14px}
.section-heading h2,.calendar-title h2{margin:0;font-size:24px;letter-spacing:-.03em}
.text-btn{border:0;background:transparent;color:var(--primary);font-weight:800;padding:8px}

.community-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.community-card{
  min-height:112px;padding:15px;border:1px solid var(--line);border-radius:22px;
  background:#fff;box-shadow:0 9px 25px rgba(31,42,77,.06);
  text-align:left;display:grid;grid-template-columns:50px 1fr auto;
  align-items:center;gap:10px;color:var(--ink);
  transition:transform .2s ease,box-shadow .2s ease;
}
.community-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.community-icon{
  width:48px;height:48px;border-radius:16px;
  display:grid;place-items:center;color:#fff;font-weight:900;
  background:linear-gradient(135deg,#3157d5,#7453ef);
}
.approdi .community-icon{background:linear-gradient(135deg,#091f43,#ca9b29)}
.cipi .community-icon{background:linear-gradient(135deg,#071e40,#13a8cb)}
.brlabs .community-icon{background:linear-gradient(135deg,#111827,#3b82f6)}
.iais .community-icon{background:linear-gradient(135deg,#4c1d95,#a855f7)}
.ikadcs .community-icon{background:linear-gradient(135deg,#9a3412,#f59e0b)}
.community-copy{display:grid;min-width:0}
.community-copy strong{font-size:16px}
.community-copy small{color:var(--muted);margin-top:4px;line-height:1.3}
.arrow{font-size:25px;color:#a1a9ba}

.event-preview{
  display:grid;grid-template-columns:62px 1fr;gap:14px;
  padding:15px;margin-bottom:11px;background:#fff;
  border:1px solid var(--line);border-radius:20px;
}
.date-box{
  height:64px;border-radius:17px;background:#eff2ff;
  display:grid;place-content:center;text-align:center;color:var(--primary)
}
.date-box strong{font-size:24px;line-height:1}.date-box span{font-size:10px;font-weight:800;margin-top:4px}
.badge{
  display:inline-block;padding:4px 8px;border-radius:999px;background:#e9edff;
  color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.08em
}
.badge.gold{background:#fff2cb;color:#8a620e}
.event-preview h3{margin:7px 0 5px;font-size:16px;line-height:1.35}
.event-preview p{margin:0;color:var(--muted);font-size:13px}

.workspace-hero{
  margin:16px;padding:24px;border-radius:28px;
  display:flex;align-items:center;gap:17px;color:#fff;
  background:linear-gradient(140deg,#071e40,#153b73 60%,#c99a28);
  box-shadow:0 20px 45px rgba(7,30,64,.2);
}
.workspace-logo{
  width:66px;height:66px;flex:0 0 auto;border-radius:20px;
  display:grid;place-items:center;font-weight:900;font-size:23px;
  color:#071e40;background:linear-gradient(135deg,#fff4ba,#c99722)
}
.platform-label{text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#f4d775;font-weight:900}
.workspace-hero h1{margin:4px 0 3px;font-size:29px}
.workspace-hero p{margin:0;color:#d8e1f1;font-size:13px}
.workspace-content{padding:0 16px 24px}
.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:15px}
.action-card{
  min-height:84px;padding:15px;border-radius:20px;text-decoration:none;color:var(--ink);
  background:#fff;border:1px solid var(--line);display:flex;align-items:center;gap:12px;
  box-shadow:0 9px 24px rgba(31,42,77,.06)
}
.action-card.primary{background:#172c52;color:#fff;border-color:#172c52}
.action-icon{
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
  background:#f0f3fa;color:var(--primary);font-size:22px;font-weight:700
}
.primary .action-icon{background:rgba(255,255,255,.13);color:#f6d978}
.action-card span:last-child{display:grid}.action-card small{margin-top:3px;color:var(--muted)}
.action-card.primary small{color:#cbd4e5}

.calendar-card{
  background:#fff;border:1px solid var(--line);border-radius:25px;padding:16px;
  box-shadow:0 12px 32px rgba(31,42,77,.07)
}
.calendar-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.live-dot{font-size:11px;font-weight:900;color:#0f7a4e;background:#ddf8eb;padding:7px 10px;border-radius:999px}
.calendar-frame{width:100%;height:650px;border:0;border-radius:17px;background:#fff}
.calendar-note{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 3px 0}

.coming-soon,.simple-view{margin:16px;padding:36px 25px;background:#fff;border:1px solid var(--line);border-radius:28px;text-align:center}
.coming-soon>span{font-size:45px;color:var(--primary)}
.coming-soon h2,.simple-view h1{margin:12px 0 8px;font-size:30px}
.coming-soon p,.simple-view>p{color:var(--muted);line-height:1.6}
.primary-btn{
  border:0;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--primary-2));
  color:#fff;padding:13px 17px;font-weight:850
}
.profile-card{display:flex;gap:15px;align-items:center;text-align:left;margin-top:20px;padding:18px;border-radius:20px;background:var(--soft)}
.avatar{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:#dfe5ff;color:var(--primary);font-weight:900}
.profile-card p{margin:5px 0 0;color:var(--muted)}

.bottom-nav{
  position:fixed;z-index:60;bottom:0;left:50%;transform:translateX(-50%);
  width:min(760px,100%);height:calc(70px + var(--safe-bottom));
  padding:8px 10px var(--safe-bottom);display:grid;grid-template-columns:repeat(5,1fr);
  background:rgba(255,255,255,.95);backdrop-filter:blur(18px);
  border-top:1px solid var(--line)
}
.nav-item{border:0;background:transparent;color:#8b93a6;display:grid;place-items:center;align-content:center;gap:3px}
.nav-item span{font-size:22px}.nav-item small{font-size:10px;font-weight:800}
.nav-item.active{color:var(--primary)}
.nav-ai span{width:42px;height:42px;margin-top:-24px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 10px 25px rgba(68,74,203,.35)}

.ai-fab{
  position:fixed;right:max(18px,calc((100vw - 760px)/2 + 18px));bottom:92px;z-index:70;
  width:56px;height:56px;border:0;border-radius:19px;color:#fff;font-size:25px;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  box-shadow:0 14px 30px rgba(68,74,203,.38)
}
.ai-panel{
  position:fixed;z-index:80;right:max(16px,calc((100vw - 760px)/2 + 16px));bottom:86px;
  width:min(390px,calc(100vw - 32px));border-radius:25px;background:#fff;border:1px solid var(--line);
  box-shadow:0 28px 80px rgba(20,29,58,.25);overflow:hidden;
  opacity:0;visibility:hidden;transform:translateY(15px) scale(.98);transition:.2s ease
}
.ai-panel.open{opacity:1;visibility:visible;transform:none}
.ai-header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#17284f;color:#fff}
.ai-header div{display:grid}.ai-header small{color:#bfc9df;margin-top:3px}
.ai-header button{border:0;background:transparent;color:#fff;font-size:25px}
.ai-messages{max-height:260px;overflow:auto;padding:16px;background:#f6f7fb}
.message{max-width:88%;padding:11px 13px;border-radius:15px;margin-bottom:9px;font-size:14px;line-height:1.45}
.message.bot{background:#fff;border:1px solid var(--line)}
.message.user{margin-left:auto;background:#3157d5;color:#fff}
.quick-prompts{display:flex;gap:7px;overflow:auto;padding:12px}
.quick-prompts button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 11px;font-size:12px;font-weight:750;color:var(--ink)}

@media(max-width:520px){
  .topbar{padding-inline:13px}
  .brand-button small{font-size:10px}
  .hero{margin:10px 10px 0;padding:28px 20px 21px;border-radius:25px}
  .hero-stats div{padding:10px 7px}
  .section{padding-inline:10px}
  .community-grid{grid-template-columns:1fr}
  .community-card{min-height:86px}
  .workspace-hero{margin:10px;padding:19px;border-radius:24px}
  .workspace-logo{width:57px;height:57px;border-radius:17px}
  .workspace-content{padding-inline:10px}
  .quick-actions{grid-template-columns:1fr}
  .calendar-frame{height:560px}
  .calendar-card{padding:10px}
  .calendar-title h2{font-size:20px}
  .ai-fab{right:14px}
}
@media(min-width:700px){
  .calendar-frame{height:720px}
}

/* NEXORA v0.2.0 */
.capture-btn{border:0;border-radius:12px;background:#3157d5;color:#fff;font-weight:800;padding:11px 14px;cursor:pointer;box-shadow:0 8px 20px rgba(49,87,213,.22)}
.next-agenda-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#101d42,#3157d5 70%,#6b8cff);box-shadow:0 18px 42px rgba(29,57,137,.25)}
.next-agenda-card h3{margin:6px 0;font-size:1.2rem}.next-agenda-card p{margin:0;color:rgba(255,255,255,.8)}.next-agenda-card .eyebrow{color:#a9c2ff}
.role-pill{flex:0 0 auto;padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);font-size:.76rem;font-weight:800}
.timeline-list{display:grid;gap:12px}.timeline-item{display:grid;grid-template-columns:58px 1fr auto;gap:13px;align-items:center;padding:15px;background:#fff;border:1px solid #e7eaf2;border-radius:18px;box-shadow:0 6px 20px rgba(20,35,80,.05)}
.timeline-time{text-align:center;border-right:1px solid #e7eaf2;padding-right:12px}.timeline-time strong,.timeline-time span{display:block}.timeline-time strong{font-size:.95rem;color:#1d3375}.timeline-time span{font-size:.67rem;color:#7a839d;text-transform:uppercase;margin-top:3px}
.timeline-copy h3{font-size:.95rem;margin:3px 0 5px;color:#121a31}.timeline-copy p{font-size:.78rem;margin:0;color:#747d94}.timeline-copy .badge{font-size:.62rem}
.timeline-role{font-size:.68rem;font-weight:800;color:#3157d5;background:#eef2ff;border-radius:999px;padding:7px 9px;white-space:nowrap}
.filter-row{display:flex;gap:8px;overflow:auto;padding:8px 0 16px;scrollbar-width:none}.filter-chip{border:1px solid #dfe4f1;background:#fff;color:#5c6479;padding:9px 13px;border-radius:999px;font-weight:700;white-space:nowrap;cursor:pointer}.filter-chip.active{background:#3157d5;border-color:#3157d5;color:#fff}.full-agenda{margin-top:8px}
.profile-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.profile-summary div{background:#fff;border:1px solid #e7eaf2;border-radius:15px;padding:14px}.profile-summary span,.profile-summary strong{display:block}.profile-summary span{font-size:.72rem;color:#7a839d;margin-bottom:5px}.status-active{color:#16865a}
.subsection-title{font-size:1.1rem;margin:24px 0 12px}.membership-list{display:grid;gap:11px}.membership-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid #e7eaf2;border-radius:17px;padding:14px}
.membership-logo{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#edf2ff;color:#3157d5;font-weight:900}.membership-card strong,.membership-card small{display:block}.membership-card small{color:#7a839d;margin-top:4px}.membership-status{text-align:right;font-size:.7rem;font-weight:800}.membership-status.active{color:#16865a}.membership-status.expiring{color:#c37b09}
.ai-input-row{display:grid;grid-template-columns:1fr 42px;gap:8px;padding:12px;border-top:1px solid #e8ebf3;background:#fff}.ai-input-row input{min-width:0;border:1px solid #dfe4f1;border-radius:12px;padding:11px;font:inherit}.ai-input-row button{border:0;border-radius:12px;background:#3157d5;color:#fff;font-size:1.1rem;cursor:pointer}
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(7,15,37,.62);display:grid;place-items:center;padding:18px;backdrop-filter:blur(4px)}.capture-modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:22px;box-shadow:0 28px 80px rgba(0,0,0,.35)}
.modal-heading{display:flex;justify-content:space-between;gap:15px;align-items:start}.modal-heading h2{margin:4px 0}.modal-close{border:0;background:#eef1f7;width:36px;height:36px;border-radius:50%;font-size:1.3rem;cursor:pointer}.capture-modal>p{color:#687188;line-height:1.55}
.capture-modal textarea{box-sizing:border-box;width:100%;resize:vertical;border:1px solid #dce1ed;border-radius:15px;padding:13px;font:inherit;margin:5px 0 12px}.capture-result{border-top:1px solid #e8ebf3;margin-top:17px;padding-top:17px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.result-grid label{font-size:.72rem;font-weight:800;color:#596278}.result-grid input,.result-grid select{box-sizing:border-box;width:100%;margin-top:6px;border:1px solid #dce1ed;border-radius:11px;padding:10px;font:inherit;color:#17213a;background:#fff}.result-grid .wide{grid-column:1/-1}
.confidence-note{font-size:.75rem;color:#8a6313;background:#fff7dd;border-radius:10px;padding:9px 11px;margin:12px 0}.hidden{display:none!important}
@media(max-width:620px){.command-section .section-heading{align-items:flex-start}.capture-btn{font-size:.72rem;padding:9px 10px}.timeline-item{grid-template-columns:52px 1fr}.timeline-role{grid-column:2;justify-self:start}.next-agenda-card{align-items:flex-start;flex-direction:column}.result-grid{grid-template-columns:1fr}.result-grid .wide{grid-column:auto}}
