*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0d1b2a;--navy2:#142032;--navy3:#1a2a40;--navy4:#1e3050;
  --blue:#1d6fa4;--blue2:#2585c3;--accent:#4fa3d1;--accent-pale:#ddeef7;
  --gold:#c8a84b;--white:#fff;--gray100:#edf1f5;--gray200:#d4dce6;
  --gray300:#b0bcc8;--gray400:#7a8fa0;--gray500:#516172;
  --green:#2d8c5f;--red:#b83b3b;--amber:#b5740a;
  --sw:240px;--hh:60px;
  --font:'DM Sans',sans-serif;--serif:'DM Serif Display',serif;
  --r:8px;--rl:12px;
}
body{font-family:var(--font);background:var(--navy);color:var(--white);min-height:100vh;overflow-x:hidden}
#sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sw);height:100vh;background:var(--navy2);border-right:1px solid rgba(255,255,255,0.07);display:flex;flex-direction:column;z-index:100;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}
.sb-logo{padding:20px 22px 16px;border-bottom:1px solid rgba(255,255,255,0.07);flex-shrink:0}
.sb-logo .co{font-family:var(--serif);font-size:15px;line-height:1.2}
.sb-logo .tg{font-size:10px;color:var(--gray400);letter-spacing:.08em;text-transform:uppercase;margin-top:3px}
.nav-sec{padding:12px 12px 4px;font-size:10px;color:var(--gray400);letter-spacing:.1em;text-transform:uppercase}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 14px;margin:1px 8px;border-radius:var(--r);cursor:pointer;font-size:13.5px;color:var(--gray300);transition:all .15s;user-select:none;white-space:nowrap;min-height:38px}
.nav-item:hover{background:rgba(255,255,255,0.06);color:var(--white)}
.nav-item.active{background:rgba(45,133,195,0.22);color:var(--accent)}
.nav-item .ic{font-size:15px;width:18px;text-align:center;flex-shrink:0}
.sb-foot{margin-top:16px;padding:16px;border-top:1px solid rgba(255,255,255,0.07);font-size:12px;color:var(--gray400);flex-shrink:0}
.sb-foot .usr{display:flex;align-items:center;gap:10px}
.avatar{width:28px;height:28px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0}
#header{position:fixed;top:0;left:var(--sw);right:0;height:var(--hh);background:var(--navy2);border-bottom:1px solid rgba(255,255,255,0.07);display:flex;align-items:center;justify-content:space-between;padding:0 28px;z-index:90}
.bc{font-size:13px;color:var(--gray400);display:flex;align-items:center;gap:8px}
.bc .cur{color:var(--white);font-weight:500}
.hdr-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--r);border:none;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:500;transition:all .15s}
.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue2)}
.btn-ghost{background:rgba(255,255,255,0.07);color:var(--gray200)}.btn-ghost:hover{background:rgba(255,255,255,0.12)}
.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{background:#c94444}
.btn-sm{padding:5px 10px;font-size:12px}
.btn-icon{padding:5px 8px;background:rgba(255,255,255,0.06);border:none;color:var(--gray300);border-radius:var(--r);cursor:pointer;font-size:13px;transition:all .15s}
.btn-icon:hover{background:rgba(255,255,255,0.12);color:var(--white)}
.btn-icon.del:hover{background:rgba(184,59,59,0.2);color:#f08080}
#main{margin-left:var(--sw);padding-top:var(--hh);min-height:100vh}
.page{display:none;padding:28px}.page.active{display:block}
.card{background:var(--navy3);border:1px solid rgba(255,255,255,0.07);border-radius:var(--rl);padding:20px}
.card-sm{padding:14px 18px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:24px}
.stat-card{background:var(--navy3);border:1px solid rgba(255,255,255,0.07);border-radius:var(--rl);padding:18px 20px}
.stat-lbl{font-size:11px;color:var(--gray400);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.stat-val{font-size:28px;font-weight:300;color:var(--white);line-height:1}
.stat-sub{font-size:12px;color:var(--gray400);margin-top:5px}
.sec-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.sec-ttl{font-size:15px;font-weight:600;color:var(--white)}
.sec-sub{font-size:13px;color:var(--gray400);margin-top:2px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.g2col{display:grid;grid-template-columns:2fr 1fr;gap:18px}
.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.asset-card{background:var(--navy3);border:1px solid rgba(255,255,255,0.07);border-radius:var(--rl);padding:20px;cursor:pointer;transition:all .18s;position:relative;overflow:hidden}
.asset-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--blue)}
.asset-card:hover{border-color:rgba(45,133,195,0.4);transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,0,0,0.22)}
.ac-hdr{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ac-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;background:rgba(45,133,195,0.15)}
.ac-name{font-size:15px;font-weight:600;color:var(--white)}
.ac-type{font-size:11px;color:var(--gray400);margin-top:2px}
.ac-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.ac-metric .lbl{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.06em}
.ac-metric .val{font-size:15px;font-weight:500;color:var(--white);margin-top:2px}
.ac-foot{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(255,255,255,0.06)}
.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:20px;font-size:11px;font-weight:500}
.badge::before{content:'';width:5px;height:5px;border-radius:50%;flex-shrink:0}
.b-active{background:rgba(45,140,95,0.2);color:#52c488}.b-active::before{background:#52c488}
.b-inactive{background:rgba(255,255,255,0.08);color:var(--gray300)}.b-inactive::before{background:var(--gray300)}
.b-pending{background:rgba(181,116,10,0.2);color:#f0a830}.b-pending::before{background:#f0a830}
.tbl-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13.5px}
thead th{padding:10px 14px;text-align:left;font-size:11px;font-weight:500;color:var(--gray400);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid rgba(255,255,255,0.07)}
tbody td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,0.04);color:var(--gray200);vertical-align:middle}
tbody tr:hover td{background:rgba(255,255,255,0.03)}
tbody tr:last-child td{border-bottom:none}
.td-name{color:var(--white);font-weight:500}
.td-link{color:var(--accent);cursor:pointer}.td-link:hover{text-decoration:underline}
.tab-bar{display:flex;gap:4px;margin-bottom:22px;border-bottom:1px solid rgba(255,255,255,0.07)}
.tab{padding:10px 16px;font-size:13.5px;font-weight:500;color:var(--gray400);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}
.tab:hover{color:var(--white)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.fg{margin-bottom:16px}
.fl{display:block;font-size:12px;font-weight:500;color:var(--gray300);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}
.fc{width:100%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:var(--r);padding:9px 12px;color:var(--white);font-family:var(--font);font-size:13.5px;outline:none;transition:border-color .15s}
.fc:focus{border-color:var(--accent)}.fc::placeholder{color:var(--gray500)}
select.fc option{background:var(--navy3)}
textarea.fc{resize:vertical}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.srch{position:relative;margin-bottom:18px}
.srch input{width:100%;padding:9px 12px 9px 36px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:var(--r);color:var(--white);font-family:var(--font);font-size:13.5px;outline:none}
.srch input:focus{border-color:var(--accent)}
.srch .si{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--gray400)}
.mo{position:fixed;inset:0;background:rgba(0,0,0,0.75);z-index:200;display:none;align-items:center;justify-content:center;padding:20px}
.mo.open{display:flex}
.md{background:var(--navy3);border:1px solid rgba(255,255,255,0.12);border-radius:14px;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;padding:28px}
.md-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.md-ttl{font-size:18px;font-weight:600}
.md-close{background:rgba(255,255,255,0.08);border:none;color:var(--gray300);cursor:pointer;width:30px;height:30px;border-radius:var(--r);font-size:16px;display:flex;align-items:center;justify-content:center}
.act-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.05)}
.act-item:last-child{border-bottom:none}
.act-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:5px}
.act-txt{font-size:13px;color:var(--gray200);line-height:1.5}
.act-time{font-size:11px;color:var(--gray500);margin-top:3px}
.sc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:24px}
.sc-card{background:var(--navy3);border:1px solid rgba(255,255,255,0.07);border-radius:var(--rl);padding:16px;text-align:center;cursor:pointer;transition:all .18s}
.sc-card:hover{border-color:rgba(45,133,195,0.4);background:var(--navy4)}
.sc-icon{font-size:24px;margin-bottom:8px}
.sc-lbl{font-size:12px;font-weight:500;color:var(--gray200)}
.fin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.fin-card{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:var(--r);padding:14px}
.fc-lbl{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px}
.fc-val{font-size:18px;font-weight:500;color:var(--white)}
.sys-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.05)}
.sys-row:last-child{border-bottom:none}
.sys-name{font-size:13.5px;font-weight:500;color:var(--white)}
.sys-dtl{font-size:12px;color:var(--gray400);margin-top:2px}
.acc-yes{color:#52c488;font-size:12px;font-weight:500}
.acc-no{color:var(--gray400);font-size:12px}
.prog{height:4px;background:rgba(255,255,255,0.1);border-radius:2px;overflow:hidden}
.prog-fill{height:100%;border-radius:2px;background:var(--blue)}
.alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--r);margin-bottom:14px;font-size:13px}
.alert-info{background:rgba(29,111,164,0.2);border:1px solid rgba(79,163,209,0.3);color:var(--accent-pale)}
.alert-warn{background:rgba(181,116,10,0.2);border:1px solid rgba(181,116,10,0.4);color:#fce6a0}
.alert-err{background:rgba(184,59,59,0.2);border:1px solid rgba(184,59,59,0.4);color:#f5aaaa}
.doc-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.05)}
.doc-item:last-child{border-bottom:none}
.doc-icon{width:34px;height:34px;border-radius:var(--r);background:rgba(79,163,209,0.15);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.back-btn{display:inline-flex;align-items:center;gap:6px;color:var(--gray400);font-size:13px;cursor:pointer;margin-bottom:20px}
.back-btn:hover{color:var(--accent)}
.empty{text-align:center;padding:48px 20px;color:var(--gray400)}
.empty .ei{font-size:36px;margin-bottom:12px}
.empty .et{font-size:15px;font-weight:500;color:var(--gray300);margin-bottom:6px}
.empty .es{font-size:13px}
.loading{text-align:center;padding:32px;color:var(--gray400);font-size:13px}
.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,0.1);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin-right:8px;vertical-align:middle}
@keyframes spin{to{transform:rotate(360deg)}}
hr{border:none;border-top:1px solid rgba(255,255,255,0.07);margin:20px 0}
.toast{position:fixed;bottom:24px;right:24px;background:var(--navy3);border:1px solid rgba(255,255,255,0.15);border-radius:var(--rl);padding:12px 18px;font-size:13px;color:var(--white);z-index:300;transform:translateY(80px);opacity:0;transition:all .3s;max-width:320px}
.toast.show{transform:translateY(0);opacity:1}
.toast.success{border-color:rgba(45,140,95,0.5);color:#a0f0c0}
.toast.error{border-color:rgba(184,59,59,0.5);color:#f5aaaa}
.confirm-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.75);z-index:250;display:none;align-items:center;justify-content:center}
.confirm-overlay.open{display:flex}
.confirm-box{background:var(--navy3);border:1px solid rgba(255,255,255,0.12);border-radius:var(--rl);padding:28px;max-width:380px;width:100%;text-align:center}
.confirm-box h3{font-size:16px;margin-bottom:10px}
.confirm-box p{font-size:13px;color:var(--gray300);margin-bottom:22px;line-height:1.6}
.confirm-btns{display:flex;gap:10px;justify-content:center}
@media(max-width:900px){#sidebar{transform:translateX(-100%)}#header{left:0}#main{margin-left:0}}

#login-screen{position:fixed;inset:0;background:var(--navy);z-index:999;display:flex;align-items:center;justify-content:center;flex-direction:column}
.login-box{background:var(--navy2);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:40px;width:340px;text-align:center}
.login-logo{font-family:var(--serif);font-size:20px;margin-bottom:4px}
.login-sub{font-size:11px;color:var(--gray400);letter-spacing:.1em;text-transform:uppercase;margin-bottom:32px}
.pin-dots{display:flex;justify-content:center;gap:12px;margin-bottom:24px}
.pin-dot{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,0.1);border:2px solid rgba(255,255,255,0.15);transition:all .2s}
.pin-dot.filled{background:var(--blue);border-color:var(--blue)}
.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.pin-btn{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);border-radius:10px;padding:16px;font-size:18px;font-weight:500;color:var(--white);cursor:pointer;transition:all .15s;font-family:var(--font)}
.pin-btn:hover{background:rgba(255,255,255,0.12)}
.pin-btn:active{background:rgba(45,133,195,0.3);border-color:var(--blue)}
.pin-error{color:#f08080;font-size:13px;min-height:20px;margin-top:4px}
.goal-bar-wrap{background:rgba(255,255,255,0.06);border-radius:20px;height:8px;overflow:hidden;margin-top:6px}
.goal-bar{height:100%;border-radius:20px;transition:width .6s ease;background:var(--blue)}
.goal-bar.green{background:#2d8c5f}
.goal-bar.gold{background:var(--gold)}


#tour-overlay{position:fixed;inset:0;background:rgba(8,15,26,0.97);z-index:998;display:none;align-items:center;justify-content:center;flex-direction:column;padding:40px}
#tour-overlay.open{display:flex}
.tour-slide{display:none;max-width:680px;width:100%;text-align:center;animation:fadeUp .5s ease}
.tour-slide.active{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.tour-logo{font-family:var(--serif);font-size:13px;color:var(--gray400);letter-spacing:.15em;text-transform:uppercase;margin-bottom:40px}
.tour-eyebrow{font-size:11px;color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px}
.tour-name{font-family:var(--serif);font-size:48px;font-weight:400;color:var(--white);line-height:1.1;margin-bottom:12px}
.tour-title{font-size:16px;color:var(--gold);letter-spacing:.05em;margin-bottom:32px;font-weight:500}
.tour-divider{width:60px;height:1px;background:rgba(255,255,255,0.15);margin:0 auto 32px}
.tour-body{font-size:15px;color:var(--gray300);line-height:1.8;max-width:520px;margin:0 auto 40px}
.tour-feature{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:var(--rl);padding:20px 24px;margin-bottom:12px;text-align:left;display:flex;align-items:flex-start;gap:16px}
.tour-feature-icon{font-size:24px;flex-shrink:0;margin-top:2px}
.tour-feature-title{font-size:14px;font-weight:600;color:var(--white);margin-bottom:4px}
.tour-feature-desc{font-size:13px;color:var(--gray400);line-height:1.6}
.tour-nav{display:flex;align-items:center;gap:16px;justify-content:center;margin-top:40px}
.tour-dots{display:flex;gap:8px}
.tour-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.2);transition:all .3s}
.tour-dot.active{background:var(--accent);width:20px;border-radius:3px}
.tour-btn-skip{background:none;border:none;color:var(--gray500);cursor:pointer;font-family:var(--font);font-size:13px;padding:8px 16px}
.tour-btn-skip:hover{color:var(--gray300)}
.tour-btn-next{background:var(--blue);color:#fff;border:none;border-radius:var(--r);padding:12px 28px;font-family:var(--font);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}
.tour-btn-next:hover{background:var(--blue2)}
.tour-btn-enter{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border:none;border-radius:var(--r);padding:14px 36px;font-family:var(--serif);font-size:16px;cursor:pointer;letter-spacing:.05em;transition:all .2s;box-shadow:0 4px 20px rgba(29,111,164,0.4)}
.tour-btn-enter:hover{transform:translateY(-1px);box-shadow:0 6px 28px rgba(29,111,164,0.5)}


/* ── MOBILE RESPONSIVE ─────────────────────────────────── */
@media(max-width:768px){
  :root{--sw:0px;}
  #sidebar{transform:translateX(-260px);width:260px;transition:transform .3s ease;z-index:200}
  #sidebar.open,#sidebar.mobile-open{transform:translateX(0)}
  #mobile-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:199}
  #mobile-overlay.open{display:block}
  #hamburger{display:flex!important;align-items:center;justify-content:center;width:36px;height:36px;background:rgba(255,255,255,0.07);border:none;border-radius:var(--r);cursor:pointer;color:var(--white);font-size:18px;flex-shrink:0}
  #main{margin-left:0;padding-top:var(--hh)}
  #header{left:0;padding:0 16px}
  .page{padding:16px}
  .stats-grid{grid-template-columns:1fr 1fr}
  .g2,.g2col,.g3,.fg2{grid-template-columns:1fr}
  .asset-grid{grid-template-columns:1fr}
  #pipeline-stages{grid-template-columns:1fr!important}
  .tab-bar{overflow-x:auto;flex-wrap:nowrap}
  .tab{white-space:nowrap}
  .md{margin:12px;max-height:90vh;overflow-y:auto}
  .login-box{width:100%;max-width:360px;padding:28px 20px}
  .tour-name{font-size:32px!important}
  #tour-overlay{padding:20px}
  .tour-slide{padding:0 4px}
  .fin-grid{grid-template-columns:1fr 1fr}
  #goals-list{grid-template-columns:1fr!important}
  .bc .cur{display:none}
  .hdr-actions .btn span{display:none}
}
@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr}
  .tour-name{font-size:26px!important}
  .pin-pad{gap:8px}
  .pin-btn{padding:14px}
  .login-box{padding:24px 16px}
}
/* ── END MOBILE ─────────────────────────────────────────── */

/* ── PORTAL TIGHTEN-UP PATCH: desktop sidebar + mobile usability ── */
@media(max-height:720px){
  .sb-logo{padding:14px 22px 12px}
  .nav-sec{padding:9px 12px 3px}
  .nav-item{padding:7px 14px;min-height:34px}
  .sb-foot{padding:12px 16px}
}
@media(max-width:1200px) and (min-width:769px){
  :root{--sw:230px}
  .page{padding:22px}
  .g2col{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
  .sc-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
}
@media(max-width:768px){
  body{overflow-x:hidden}
  #sidebar{left:0;width:280px;max-width:86vw;box-shadow:12px 0 30px rgba(0,0,0,.35)}
  #mobile-overlay.open{display:block}
  .sec-hdr{align-items:flex-start;gap:10px;flex-direction:column}
  .sec-hdr .btn,.sec-hdr button{width:100%;justify-content:center}
  .card,.stat-card,.asset-card{padding:16px}
  .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  table{min-width:720px}
  .mo{padding:10px;align-items:flex-start;overflow-y:auto}
  .md{padding:18px;margin:8px;max-height:calc(100vh - 20px)}
  .fg{margin-bottom:12px}
  .btn{min-height:40px;justify-content:center}
  .hdr-actions{gap:6px}
}
@media(max-width:480px){
  #header{padding:0 10px}
  .page{padding:14px 10px}
  .bc{font-size:12px}
  .hdr-actions .btn{padding:7px 10px}
  .sc-grid{grid-template-columns:1fr 1fr}
  .stat-val{font-size:25px}
}



.fmt-btn{background:none;border:none;color:var(--gray300);cursor:pointer;font-family:var(--font);font-size:13px;padding:3px 7px;border-radius:4px;transition:all .15s}
.fmt-btn:hover{background:rgba(255,255,255,0.1);color:var(--white)}
[contenteditable]:empty:before{content:attr(data-placeholder);color:var(--gray500);pointer-events:none}
.mention-tag{color:var(--accent);font-weight:500;background:rgba(29,111,164,0.15);border-radius:3px;padding:0 3px}
.mention-item{padding:8px 12px;cursor:pointer;border-radius:var(--r);font-size:13px;color:var(--gray200);display:flex;align-items:center;gap:8px}
.mention-item:hover{background:rgba(255,255,255,0.08);color:var(--white)}

.re-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--gray400);cursor:pointer;font-family:var(--font);font-size:13px;font-weight:500;padding:8px 16px;transition:all .15s;margin-bottom:-1px}
.re-tab:hover{color:var(--white)}
.re-tab.active{border-bottom-color:var(--accent);color:var(--accent)}

.attach-btn{background:none;border:1px solid rgba(255,255,255,0.12);border-radius:var(--r);color:var(--gray300);cursor:pointer;font-family:var(--font);font-size:12px;padding:4px 10px;transition:all .15s}
.attach-btn:hover{background:rgba(255,255,255,0.08);color:var(--white)}
.attachment-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.attachment-chip{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:20px;padding:3px 10px;font-size:11px;color:var(--gray200)}
.attachment-chip a{color:var(--accent);text-decoration:none}
.attachment-chip a:hover{text-decoration:underline}

/* ── FIX & FLIP ANALYZER ─────────────────────────────────── */
#ff-analyzer { font-family: var(--font); }
#ff-analyzer input[type="text"],
#ff-analyzer input[type="number"],
#ff-analyzer select,
#ff-analyzer textarea {
  background: rgba(255,255,255,0.1) !important;
  border: 1.5px solid rgba(255,255,255,0.35) !important;
  border-radius: 6px !important;
  color: #ffffff !important;
  padding: 7px 10px !important;
  font-size: 13px !important;
}
#ff-analyzer input[type="text"]:focus,
#ff-analyzer input[type="number"]:focus,
#ff-analyzer select:focus {
  border-color: #4fa3d1 !important;
  background: rgba(255,255,255,0.15) !important;
  outline: none !important;
}
#ff-analyzer input::placeholder {
  color: rgba(255,255,255,0.35) !important;
}
#ff-analyzer select option {
  background: #1a2a40 !important;
  color: #ffffff !important;
}
#ff-analyzer .field label {
  color: rgba(255,255,255,0.6) !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}
#ff-analyzer .sec-head {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 8px !important;
}
#ff-analyzer .section {
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}
#ff-analyzer .sec-body {
  padding: 14px !important;
}
#ff-analyzer .calc-row {
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
#ff-analyzer .clabel {
  color: rgba(255,255,255,0.55) !important;
}
#ff-analyzer .cval {
  color: #ffffff !important;
}
#ff-analyzer .cval.neg {
  color: #f08080 !important;
}
#ff-analyzer .total .clabel,
#ff-analyzer .total .cval {
  color: #ffffff !important;
  font-weight: 600 !important;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
#ff-analyzer { font-family: var(--font-sans); }

.wrap { padding: 1.5rem 0; }

.header {
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 0.5px solid var(--color-border-tertiary);
}
.logo-mark {
  width: 36px; height: 36px; border-radius: 6px;
  background: #2d3a4b;
  display: flex; align-items: center; justify-content: center;
  font-weight: 500; font-size: 13px; color: #e7e7e2; letter-spacing: 0.5px;
  flex-shrink: 0;
}
.header-text { flex: 1; }
.header-title { font-size: 16px; font-weight: 500; color: var(--color-text-primary); }
.header-sub { font-size: 12px; color: var(--color-text-secondary); margin-top: 2px; }

.verdict-bar {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px;
  margin-bottom: 1.5rem;
}
.v-card {
  background: var(--color-background-secondary);
  border-radius: var(--border-radius-md);
  padding: 12px 14px;
}
.v-label { font-size: 11px; color: var(--color-text-secondary); margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.5px; }
.v-value { font-size: 20px; font-weight: 500; color: var(--color-text-primary); }
.v-value.good { color: var(--color-text-success); }
.v-value.bad { color: var(--color-text-danger); }
.v-value.warn { color: var(--color-text-warning); }

.verdict-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight: 500;
  margin-bottom: 1.5rem;
}
.pill-pass { background: var(--color-background-success); color: var(--color-text-success); }
.pill-warn { background: var(--color-background-warning); color: var(--color-text-warning); }
.pill-fail { background: var(--color-background-danger); color: var(--color-text-danger); }

.sections { display: flex; flex-direction: column; gap: 1rem; }

.section {
  background: var(--color-background-primary);
  border: 0.5px solid var(--color-border-tertiary);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
.sec-head {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 16px;
  cursor: pointer;
  border-bottom: 0.5px solid var(--color-border-tertiary);
  user-select: none;
}
.sec-head:hover { background: var(--color-background-secondary); }
.sec-icon { font-size: 16px; color: #2d3a4b; }
.sec-title { font-size: 14px; font-weight: 500; color: var(--color-text-primary); flex: 1; }
.sec-badge {
  font-size: 11px; padding: 2px 8px; border-radius: 10px;
  background: var(--color-background-secondary); color: var(--color-text-secondary);
}
.sec-badge.bad { background: var(--color-background-danger); color: var(--color-text-danger); }
.sec-badge.good { background: var(--color-background-success); color: var(--color-text-success); }
.sec-badge.warn { background: var(--color-background-warning); color: var(--color-text-warning); }
.sec-chevron { font-size: 14px; color: var(--color-text-secondary); transition: transform 0.2s; }
.sec-chevron.open { transform: rotate(180deg); }
.sec-#ff-analyzer { padding: 16px; display: none; }
.sec-body.open { display: block; }

.field-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.field { display: flex; flex-direction: column; gap: 4px; }
.field label { font-size: 12px; color: var(--color-text-secondary); }
.field input, .field select {
  height: 36px; padding: 0 10px;
  border: 0.5px solid var(--color-border-secondary);
  border-radius: var(--border-radius-md);
  background: var(--color-background-primary);
  color: var(--color-text-primary);
  font-size: 14px; font-family: var(--font-sans);
}
.field input:focus, .field select:focus { outline: none; border-color: #2d3a4b; box-shadow: 0 0 0 2px rgba(45,58,75,0.12); }

.divider { height: 0.5px; background: var(--color-border-tertiary); margin: 14px 0; }

.calc-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 6px 0; font-size: 13px;
}
.calc-row .clabel { color: var(--color-text-secondary); }
.calc-row .cval { font-weight: 500; color: var(--color-text-primary); }
.calc-row .cval.neg { color: var(--color-text-danger); }
.calc-row .cval.pos { color: var(--color-text-success); }
.calc-row.total .clabel { font-weight: 500; color: var(--color-text-primary); font-size: 14px; }
.calc-row.total .cval { font-size: 16px; }

.comps-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 10px; }
.comp-head { font-size: 11px; color: var(--color-text-secondary); text-align: center; }
.comps-row { display: grid; grid-template-columns: 2fr 1fr 1.2fr 0.8fr 1fr; gap: 6px; }
.comps-row input { text-align: center; font-size: 12px; padding: 0 4px; }

.flag-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 8px; margin-top: 8px; }
.flag-item {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 10px; border-radius: var(--border-radius-md);
  border: 0.5px solid var(--color-border-tertiary);
  font-size: 13px;
}
.flag-item.red { border-color: var(--color-border-danger); background: var(--color-background-danger); color: var(--color-text-danger); }
.flag-item.green { border-color: var(--color-border-success); background: var(--color-background-success); color: var(--color-text-success); }
.flag-item.gray { color: var(--color-text-secondary); }

.dist-grid { display: flex; flex-direction: column; gap: 6px; }
.dist-row { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.dist-name { width: 120px; color: var(--color-text-secondary); flex-shrink: 0; }
.dist-pct { width: 56px; }
.dist-pct input { text-align: center; }
.dist-amt { font-weight: 500; color: var(--color-text-primary); min-width: 90px; text-align: right; }

.offer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 10px; }
.offer-card {
  border-radius: var(--border-radius-md); border: 0.5px solid var(--color-border-tertiary);
  padding: 10px; text-align: center;
}
.offer-card.mao { border-color: #2d3a4b; border-width: 2px; }
.offer-label { font-size: 10px; color: var(--color-text-secondary); text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
.offer-val { font-size: 15px; font-weight: 500; color: var(--color-text-primary); }
.offer-card.mao .offer-val { color: #2d3a4b; }

.note { font-size: 11px; color: var(--color-text-secondary); margin-top: 6px; }

/* ── END ANALYZER ── */

@keyframes shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}


/* ── BUSINESS ANALYZER STABILIZATION PATCH ─────────────── */
#biz-funnel.biz-kanban-board{display:grid!important;grid-template-columns:repeat(8,minmax(210px,1fr));gap:12px;margin-bottom:28px;overflow-x:auto;padding:4px 4px 12px}
.biz-kanban-col{background:rgba(255,255,255,0.035);border:1px solid rgba(255,255,255,0.08);border-radius:12px;min-height:172px;padding:12px;cursor:pointer;transition:all .18s}
.biz-kanban-col:hover{border-color:rgba(79,163,209,0.35);transform:translateY(-1px)}
.biz-kanban-col.active{border-color:var(--accent);background:rgba(29,111,164,0.14)}
.biz-kanban-col.completed{border-color:rgba(82,196,136,0.35);background:rgba(82,196,136,0.08)}
.biz-kanban-col.locked{opacity:.54;cursor:not-allowed;filter:grayscale(.2)}
.biz-kanban-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:10px}
.biz-kanban-phase{font-size:10px;color:var(--gray400);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.biz-kanban-title{font-size:13.5px;font-weight:600;color:var(--white);line-height:1.25}
.biz-kanban-status{font-size:10px;border-radius:14px;padding:3px 7px;background:rgba(255,255,255,0.07);color:var(--gray300);white-space:nowrap}
.biz-kanban-col.active .biz-kanban-status{background:rgba(79,163,209,.18);color:var(--accent-pale)}
.biz-kanban-col.completed .biz-kanban-status{background:rgba(82,196,136,.15);color:#a0f0c0}
.biz-kanban-progress{height:5px;background:rgba(255,255,255,.08);border-radius:5px;overflow:hidden;margin:10px 0}
.biz-kanban-fill{height:100%;background:var(--accent);border-radius:5px;transition:width .25s}
.biz-kanban-col.completed .biz-kanban-fill{background:#52c488}
.biz-kanban-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.biz-kanban-metric{font-size:10.5px;color:var(--gray400);line-height:1.35}.biz-kanban-metric b{display:block;color:var(--gray200);font-size:13px;margin-top:2px}
.biz-kanban-missing{margin-top:10px;font-size:11px;color:#f0a830;line-height:1.4}
.biz-required-box{border:1px solid rgba(79,163,209,.22);background:rgba(29,111,164,.08);border-radius:10px;padding:12px;margin:14px 0}
.biz-required-box h4{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--accent-pale);margin-bottom:8px}
.biz-required-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px 14px;font-size:12px;color:var(--gray300)}
.biz-required-list span.done{color:#a0f0c0}.biz-required-list span.missing{color:#f0a830}
.biz-doc-box{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:10px;padding:14px;margin-top:16px}
.biz-doc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.biz-doc-title{font-size:13px;font-weight:600;color:var(--white)}
.biz-doc-sub{font-size:11px;color:var(--gray400);margin-top:2px;line-height:1.45}
.biz-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.biz-doc-item{border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px;background:rgba(0,0,0,.08)}
.biz-doc-label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--gray200);line-height:1.35;margin-bottom:7px}
.biz-doc-label .req{color:#f0a830;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.biz-doc-item input[type=file]{width:100%;font-size:11px;color:var(--gray400)}
.biz-doc-file{font-size:11px;color:#a0f0c0;margin-top:6px;word-break:break-word}
.biz-block-msg{border:1px solid rgba(184,59,59,.35);background:rgba(184,59,59,.12);border-radius:10px;padding:12px;margin-top:12px;color:#f5aaaa;font-size:12px;line-height:1.5}
/* ── END BUSINESS ANALYZER PATCH ───────────────────────── */



/* ── FY GOALS COMMAND CENTER PATCH ─────────────────────── */
.fy-command-shell{margin-bottom:32px}
.fy-command-top{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:16px}
.fy-hero-card{background:linear-gradient(135deg,rgba(29,111,164,.22),rgba(200,168,75,.08));border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:20px 22px;position:relative;overflow:hidden}
.fy-hero-card:after{content:'';position:absolute;right:-60px;top:-70px;width:190px;height:190px;border-radius:50%;background:rgba(79,163,209,.08)}
.fy-kicker{font-size:10px;color:var(--accent-pale);letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px}
.fy-hero-title{font-family:var(--serif);font-size:26px;line-height:1.12;color:var(--white);position:relative;z-index:1}
.fy-hero-sub{font-size:12px;color:var(--gray300);line-height:1.55;margin-top:8px;max-width:640px;position:relative;z-index:1}
.fy-hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;position:relative;z-index:1}
.fy-hero-metric{background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px}
.fy-hero-metric .lbl{font-size:10px;color:var(--gray400);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.fy-hero-metric .val{font-size:20px;font-weight:600;color:var(--white)}
.fy-report-card{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.fy-report-card h3{font-size:14px;color:var(--white);margin-bottom:6px}
.fy-report-card p{font-size:12px;color:var(--gray400);line-height:1.55}
.fy-overall-card{background:var(--navy3);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:18px 20px;margin-bottom:16px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.fy-overall-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}
.fy-overall-title{font-size:12px;font-weight:700;color:var(--gray200);text-transform:uppercase;letter-spacing:.1em}
.fy-overall-sub{font-size:11px;color:var(--gray500);margin-top:3px}
.fy-overall-numbers{display:flex;gap:20px;align-items:center;font-size:12px;color:var(--gray400);flex-wrap:wrap}
.fy-overall-numbers b{color:var(--white);font-size:15px;margin-left:4px}
.fy-quarter-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.fy-quarter-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.075);border-radius:12px;padding:12px}
.fy-quarter-card .q{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}
.fy-quarter-card .qrow{display:flex;justify-content:space-between;font-size:11px;color:var(--gray400);padding:2px 0}
.fy-quarter-card .qrow b{color:var(--gray200);font-size:12px}
.fy-vertical-grid{display:grid;grid-template-columns:repeat(3,minmax(270px,1fr));gap:14px;margin-bottom:20px}
.fy-vertical-card{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.fy-vertical-card:hover{border-color:rgba(79,163,209,.25)}
.fy-vert-hdr{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.fy-vert-icon{width:38px;height:38px;border-radius:11px;background:rgba(79,163,209,.12);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;color:var(--accent)}
.fy-vert-name{font-size:14px;font-weight:700;color:var(--white);line-height:1.2}
.fy-vert-sub{font-size:11px;color:var(--gray400);line-height:1.45;margin-top:3px}
.fy-vert-actual{font-size:28px;font-weight:300;color:var(--white);line-height:1}
.fy-vert-actual-lbl{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.08em;margin-top:5px}
.fy-q-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fy-q-block{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:8px}
.fy-q-lbl{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.fy-q-input-wrap{display:flex;align-items:center;gap:5px;background:rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:4px 7px;color:var(--gray400);font-size:12px}
.fy-input{width:100%;background:transparent!important;border:none!important;color:var(--white)!important;padding:2px 0!important;font-size:13px!important;outline:none!important}
.fy-actual-input{color:#a0f0c0!important}
.fy-annual-total{display:flex;justify-content:space-between;align-items:center;background:rgba(200,168,75,.08);border:1px solid rgba(200,168,75,.16);border-radius:10px;margin:10px 0 0;padding:9px 10px;font-size:11px;color:var(--gray300);text-transform:uppercase;letter-spacing:.07em}
.fy-annual-total span{font-size:14px;color:var(--gold);font-weight:700;letter-spacing:0;text-transform:none}
.fy-note-panel{background:rgba(29,111,164,.08);border:1px solid rgba(79,163,209,.18);border-radius:12px;padding:12px 14px;font-size:12px;color:var(--gray300);line-height:1.55;margin-top:14px}
@media(max-width:1100px){.fy-command-top{grid-template-columns:1fr}.fy-vertical-grid{grid-template-columns:1fr}.fy-quarter-strip{grid-template-columns:1fr 1fr}}
/* ── END FY GOALS COMMAND CENTER PATCH ─────────────────── */


/* ── DESKTOP SIDEBAR FIT + APP ICON PATCH ───────────────── */
@media(min-width:769px){
  :root{--sw:300px}
  #sidebar{overflow-y:hidden;overflow-x:hidden}
  .sb-logo{padding:16px 20px 12px}
  .sb-logo .co{font-size:15px;line-height:1.12}
  .sb-logo .tg{font-size:9px;margin-top:3px}
  .nav-sec{padding:8px 12px 2px;font-size:9px;line-height:1.1}
  .nav-item{margin:0 8px;padding:6px 13px;min-height:30px;font-size:13px;gap:10px}
  .nav-item .ic{font-size:14px;width:18px}
  .sb-foot{padding:10px 14px}
  .avatar{width:24px;height:24px;font-size:10px}
  .sb-foot .usr{gap:8px}
  .sb-foot button{margin-top:8px!important;padding:5px!important}
}
@media(min-width:769px) and (max-height:680px){
  .sb-logo{padding:10px 18px 8px}
  .sb-logo .co{font-size:14px}
  .sb-logo .tg{display:none}
  .nav-sec{padding:5px 12px 1px;font-size:8px}
  .nav-item{padding:4px 12px;min-height:26px;font-size:12px}
  .sb-foot{padding:8px 12px}
  .sb-foot button{display:none}
}


.onboarding-email-box{background:rgba(45,133,195,0.08);border:1px solid rgba(45,133,195,0.22);border-radius:var(--r);padding:12px;font-size:12.5px;color:var(--gray200);line-height:1.55;white-space:pre-wrap;margin-top:12px}
.tc-locked-note{font-size:11px;color:var(--gold);margin-top:6px}


/* BSIG PE-style Real Estate Command Center */
.pe-stage-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:10px;margin-bottom:14px}
.pe-stage-card{background:linear-gradient(180deg,rgba(31,49,75,.96),rgba(14,31,49,.96));border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px 12px;cursor:pointer;transition:.18s ease;min-height:72px;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.pe-stage-card:hover{transform:translateY(-1px);border-color:rgba(45,133,195,.55);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.pe-stage-card.active{border-color:rgba(45,133,195,.9);box-shadow:inset 0 0 0 1px rgba(45,133,195,.35)}
.pe-stage-name{font-size:11px;font-weight:700;color:var(--white);display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:7px;line-height:1.15;min-height:24px;text-align:center;width:100%}
.pe-stage-count{font-size:25px;line-height:1;font-weight:700;color:var(--white);text-align:center}
.pe-stage-meta{display:none}
.pe-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;background:rgba(31,49,75,.55);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:10px;margin:14px 0}
.pe-toolbar-left,.pe-toolbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pe-chip{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:var(--gray300);border-radius:10px;padding:8px 12px;font-size:12px;cursor:pointer}
.pe-chip.active{background:rgba(45,133,195,.24);border-color:rgba(45,133,195,.6);color:var(--white)}
.pe-search{width:280px;max-width:100%;padding:9px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.11);background:rgba(9,24,39,.72);color:var(--white)}
.pe-select{padding:9px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.11);background:rgba(9,24,39,.72);color:var(--white);font-size:12px}
.pe-table-card{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;overflow:hidden;margin-bottom:14px}
.pe-table-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.pe-table-title{font-size:16px;font-weight:700;color:var(--white)}
.pe-table-sub{font-size:12px;color:var(--gray500);margin-top:3px}
.pe-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}
.pe-table th{padding:12px 13px;text-align:left;color:var(--gray400);font-size:10px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid rgba(255,255,255,.07);font-weight:700}
.pe-table td{padding:12px 13px;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle;color:var(--gray300)}
.pe-table tr{cursor:pointer;transition:.15s ease}.pe-table tr:hover{background:rgba(45,133,195,.07)}
.pe-property-name{font-weight:700;color:var(--white);line-height:1.3}.pe-property-sub{font-size:11px;color:var(--gray500);margin-top:3px;line-height:1.35}
.pe-status-pill{display:inline-flex;padding:6px 10px;border-radius:9px;border:1px solid rgba(255,255,255,.12);font-size:11px;font-weight:700;white-space:nowrap}
.pe-health-wrap{display:flex;align-items:center;gap:10px}.pe-ring{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--score)*1%), rgba(255,255,255,.08) 0);position:relative;font-size:11px;font-weight:700;color:var(--white)}
.pe-ring:after{content:'';position:absolute;width:30px;height:30px;border-radius:50%;background:var(--navy3)}.pe-ring span{position:relative;z-index:1}
.pe-bottom-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:14px;margin-top:14px}.pe-panel{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:15px;min-height:170px}
.pe-panel-title{display:flex;justify-content:space-between;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray300);font-weight:700;margin-bottom:12px}.pe-panel-count{background:rgba(45,133,195,.18);color:var(--accent);padding:1px 8px;border-radius:20px;font-size:11px;letter-spacing:0;text-transform:none}
.pe-mini-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.055);cursor:pointer}.pe-mini-row:last-child{border-bottom:0}.pe-mini-main{font-size:12px;font-weight:700;color:var(--white);line-height:1.3}.pe-mini-sub{font-size:11px;color:var(--gray500);margin-top:2px}.pe-mini-tag{font-size:10px;border-radius:7px;padding:3px 7px;background:rgba(255,255,255,.07);color:var(--gray300);white-space:nowrap}
.pe-donut-row{display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center}.pe-donut{width:92px;height:92px;border-radius:50%;margin:0;background:conic-gradient(var(--accent) 0 35%, #06b6d4 35% 55%, #8b5cf6 55% 70%, var(--gold) 70% 82%, #52c488 82% 100%);display:grid;place-items:center}.pe-donut-inner{width:60px;height:60px;border-radius:50%;background:var(--navy3);display:grid;place-items:center;text-align:center;font-size:10px;color:var(--gray500)}.pe-value-metric{padding:5px 0}.pe-value-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray500)}.pe-value-number{font-size:19px;font-weight:700;color:var(--white);line-height:1.15}.pe-icon{width:16px;height:16px;display:inline-block;vertical-align:-3px;color:currentColor}.pe-stage-name .pe-icon{margin-right:6px}
.re-dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.ff-summary-grid{grid-template-columns:repeat(4,1fr)}.re-dash-card{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:16px;min-height:118px}.re-dash-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.re-dash-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray400);font-weight:700}.re-dash-num{font-size:30px;font-weight:700;color:var(--white);line-height:1}.re-dash-sub{font-size:12px;color:var(--gray500);margin-top:7px}.re-dash-table{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;overflow:hidden}.re-dash-table table{width:100%;border-collapse:collapse;font-size:12px}.re-dash-table th{padding:12px 14px;text-align:left;color:var(--gray400);font-size:10px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid rgba(255,255,255,.07)}.re-dash-table td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--gray300)}

.home-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;flex-wrap:wrap}.home-title{font-family:var(--serif);font-size:25px;color:var(--white);line-height:1.1}.home-sub{font-size:13px;color:var(--gray400);margin-top:5px}.home-actions{display:flex;gap:8px;flex-wrap:wrap}.home-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin-bottom:16px}.home-kpi{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:14px;min-height:96px;display:flex;flex-direction:column;justify-content:space-between}.home-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-kpi-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray400);font-weight:700}.home-kpi-icon{width:26px;height:26px;border-radius:9px;background:rgba(45,133,195,.13);display:grid;place-items:center;color:var(--accent)}.home-kpi-value{font-size:24px;font-weight:700;color:var(--white);line-height:1}.home-kpi-sub{font-size:11px;color:var(--gray500);margin-top:4px}.home-command-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-bottom:14px}.home-panel-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.home-panel{background:var(--navy3);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:15px}.home-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.home-panel-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray300);font-weight:700}.home-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.055)}.home-row:last-child{border-bottom:0}.home-row-main{font-size:13px;font-weight:700;color:var(--white);line-height:1.25}.home-row-sub{font-size:11px;color:var(--gray500);margin-top:3px}.home-pill{font-size:10px;border-radius:20px;padding:4px 8px;background:rgba(255,255,255,.07);color:var(--gray300);white-space:nowrap}.home-split-card{display:grid;grid-template-columns:1fr 1fr;gap:12px}.home-mini-metric{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px}.home-mini-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--gray500);font-weight:700}.home-mini-value{font-size:21px;font-weight:700;color:var(--white);margin-top:5px}.home-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-quick{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:12px;cursor:pointer;transition:.15s ease}.home-quick:hover{border-color:rgba(45,133,195,.55);transform:translateY(-1px)}.home-quick i{font-size:18px;color:var(--accent);margin-bottom:8px;display:block}.home-quick span{font-size:12px;font-weight:700;color:var(--white)}
@media(max-width:1180px){.home-kpi-grid{grid-template-columns:repeat(3,1fr)}.home-command-grid,.home-panel-grid{grid-template-columns:1fr}.home-quick-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.home-kpi-grid,.home-split-card,.home-quick-grid{grid-template-columns:1fr}.home-actions{width:100%}.home-actions .btn{flex:1}}

@media(max-width:1200px){.pe-stage-grid{grid-template-columns:repeat(4,1fr)}.pe-bottom-grid{grid-template-columns:1fr}.re-dash-grid,.ff-summary-grid{grid-template-columns:1fr 1fr}.pe-table{table-layout:auto}.pe-hide-sm{display:none}}
@media(max-width:800px){.pe-stage-grid,.pe-bottom-grid,.ff-summary-grid{grid-template-columns:1fr}.pe-toolbar{align-items:stretch;flex-direction:column}.pe-toolbar-left,.pe-toolbar-right{width:100%}.pe-search{width:100%}}



/* ── EXECUTIVE COMMAND CENTER V2 ───────────────────────── */
.exec-shell{display:flex;flex-direction:column;gap:18px;max-width:1500px;margin:0 auto;padding-bottom:28px}
.exec-brief{background:linear-gradient(135deg,rgba(242,96,14,.14),rgba(45,58,75,.72));border:1px solid rgba(242,96,14,.26);border-radius:24px;padding:24px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:22px;box-shadow:0 22px 70px rgba(0,0,0,.25)}
.exec-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:800;margin-bottom:8px}.exec-title{font-family:var(--serif);font-size:30px;line-height:1.1;color:var(--white)}
.exec-sub{font-size:13px;color:var(--gray300);margin-top:9px;line-height:1.6}.exec-focus-list{display:grid;gap:9px;margin-top:17px}.exec-focus{display:flex;gap:10px;align-items:flex-start;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);padding:10px 12px;border-radius:14px;font-size:13px;color:var(--gray200)}
.exec-focus i{color:var(--accent);font-size:18px;flex-shrink:0}.exec-health-card{background:rgba(8,17,31,.72);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:18px;display:flex;align-items:center;gap:18px;justify-content:center}
.exec-score-ring{width:118px;height:118px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--score,90)*1%),rgba(255,255,255,.08) 0);display:grid;place-items:center;position:relative;flex-shrink:0}.exec-score-ring:after{content:'';position:absolute;inset:12px;border-radius:50%;background:#101a2b}.exec-score-ring strong{position:relative;z-index:1;font-size:30px;color:var(--white)}
.exec-score-copy{min-width:0}.exec-score-copy .label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--gray400);font-weight:800}.exec-score-copy .status{font-size:18px;color:var(--white);font-weight:700;margin-top:5px}.exec-score-copy .note{font-size:12px;color:var(--gray400);line-height:1.55;margin-top:6px}
.exec-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.exec-section-title{font-size:13px;text-transform:uppercase;letter-spacing:.13em;color:var(--gray300);font-weight:800}.exec-section-sub{font-size:12px;color:var(--gray500);margin-top:3px}
.exec-capital-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.exec-metric{background:var(--navy3);border:1px solid rgba(255,255,255,.075);border-radius:18px;padding:15px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between}.exec-metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.exec-metric-label{font-size:11px;color:var(--gray400);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.exec-metric-icon{width:32px;height:32px;border-radius:10px;background:rgba(242,96,14,.12);display:grid;place-items:center;color:var(--accent);font-size:18px}.exec-metric-value{font-size:24px;font-weight:800;color:var(--white);line-height:1;margin-top:18px}.exec-metric-sub{font-size:11px;color:var(--gray500);margin-top:7px;line-height:1.35}
.exec-main-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.exec-card{background:var(--navy3);border:1px solid rgba(255,255,255,.075);border-radius:20px;padding:17px}.exec-card.tight{padding:14px}.exec-table{width:100%;border-collapse:collapse}.exec-table th{font-size:10px;color:var(--gray500);text-transform:uppercase;letter-spacing:.1em;font-weight:800;text-align:left;padding:0 0 10px}.exec-table td{font-size:13px;color:var(--gray300);padding:12px 0;border-top:1px solid rgba(255,255,255,.055);vertical-align:middle}.exec-table .name{color:var(--white);font-weight:700}.exec-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);padding:5px 8px;border-radius:999px;font-size:10px;color:var(--gray300);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.exec-pill.hot{border-color:rgba(242,96,14,.25);color:var(--accent);background:rgba(242,96,14,.09)}.exec-pill.green{border-color:rgba(82,196,136,.24);color:#52c488;background:rgba(82,196,136,.08)}
.exec-work-list{display:grid;gap:9px}.exec-work-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055)}.exec-work-main{font-size:13px;color:var(--white);font-weight:700}.exec-work-sub{font-size:11px;color:var(--gray500);margin-top:4px;line-height:1.4}
.exec-three-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.exec-snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.exec-snap{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055);border-radius:15px;padding:12px}.exec-snap-label{font-size:11px;color:var(--gray500);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.exec-snap-value{font-size:21px;color:var(--white);font-weight:800;margin-top:8px}.exec-snap-sub{font-size:11px;color:var(--gray500);margin-top:4px}
.exec-health-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.exec-health-mini{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.065);border-radius:16px;padding:13px}.exec-health-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.exec-health-label{font-size:11px;color:var(--gray400);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.exec-health-num{font-size:23px;color:var(--white);font-weight:800}.exec-bar{height:6px;background:rgba(255,255,255,.07);border-radius:999px;overflow:hidden;margin-top:10px}.exec-bar span{display:block;height:100%;width:var(--w,90%);background:var(--accent);border-radius:999px}.exec-drivers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.driver-box{border-radius:14px;padding:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.055)}.driver-title{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--gray400);font-weight:800;margin-bottom:8px}.driver-box ul{margin:0;padding-left:18px}.driver-box li{font-size:12px;color:var(--gray300);margin:6px 0;line-height:1.4}
.exec-update-row{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid rgba(255,255,255,.055)}.exec-update-row:first-child{border-top:0;padding-top:0}.exec-update-icon{width:30px;height:30px;border-radius:10px;background:rgba(242,96,14,.1);display:grid;place-items:center;color:var(--accent);flex-shrink:0}.exec-update-main{font-size:13px;color:var(--white);font-weight:650}.exec-update-sub{font-size:11px;color:var(--gray500);margin-top:3px}.exec-empty{font-size:13px;color:var(--gray500);padding:14px 0;text-align:center}.exec-nav-sec{font-size:10px;color:var(--gray500);font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:16px 16px 8px}.exec-nav-spacer{height:6px}
@media(max-width:1200px){.exec-capital-grid{grid-template-columns:repeat(3,1fr)}.exec-main-grid,.exec-brief{grid-template-columns:1fr}.exec-three-grid{grid-template-columns:1fr 1fr}.exec-health-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.exec-capital-grid,.exec-three-grid,.exec-health-grid,.exec-snapshot-grid,.exec-drivers{grid-template-columns:1fr}.exec-title{font-size:24px}.exec-metric{min-height:auto}.exec-table th:nth-child(3),.exec-table td:nth-child(3){display:none}}


.alloc-tab{padding:8px 16px;border-radius:var(--r);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s;background:rgba(255,255,255,0.05);color:var(--gray300);border:1px solid rgba(255,255,255,0.08);white-space:nowrap;display:flex;align-items:center;gap:7px}.alloc-tab.active{background:rgba(45,133,195,0.22);color:var(--accent);border-color:rgba(45,133,195,0.3)}.alloc-table{width:100%;border-collapse:collapse}.alloc-table th{font-size:10px;color:var(--gray400);text-transform:uppercase;letter-spacing:.08em;text-align:left;font-weight:600;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.alloc-table td{font-size:13px;color:var(--gray200);padding:12px;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle}.alloc-donut{width:190px;height:190px;border-radius:50%;background:conic-gradient(var(--accent) 0 34%,#52c488 34% 54%,var(--gold) 54% 74%,#8b5cf6 74% 84%,#f97316 84% 92%,rgba(255,255,255,.2) 92% 100%);display:flex;align-items:center;justify-content:center}.alloc-donut>div{width:116px;height:116px;border-radius:50%;background:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.alloc-donut strong{font-size:22px;font-weight:600;color:var(--white)}.alloc-donut span{font-size:10px;color:var(--gray400);margin-top:4px}.alloc-mini-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13px}.alloc-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:8px}.alloc-kpi-grid .stat-card{min-height:104px}@media(max-width:1200px){.alloc-kpi-grid{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:760px){.alloc-kpi-grid{grid-template-columns:1fr!important}}
