/* Nannajee Solutions Fusion UI V5
   Enterprise application redesign layered over existing CI4 bindings.
   Design language: bento + spatial hierarchy, restrained clay/neomorphism,
   skeuomorphic document surfaces, maximal accents only for priority moments. */
:root{
  --ns5-ink:#14213d;--ns5-ink-2:#243757;--ns5-muted:#6c7c96;
  --ns5-bg:#edf3fa;--ns5-surface:#ffffff;--ns5-soft:#f5f8fc;--ns5-soft-2:#e8eff8;
  --ns5-line:#d6e1ef;--ns5-primary:var(--ns-primary,#155eef);--ns5-secondary:var(--ns-secondary,#4d6bfe);
  --ns5-accent:var(--ns-accent,#17b8ce);--ns5-warm:#ffb13b;--ns5-success:#12845a;--ns5-danger:#d13f5c;
  --ns5-radius-xl:28px;--ns5-radius-lg:22px;--ns5-radius:16px;--ns5-radius-sm:12px;
  --ns5-shadow:0 18px 50px rgba(30,58,105,.12);--ns5-shadow-sm:0 8px 24px rgba(30,58,105,.09);
  --ns5-inset:inset 3px 3px 7px rgba(33,66,112,.08),inset -4px -4px 8px rgba(255,255,255,.88);
  --ns4-sidebar:288px;--ns4-rail:78px;--ns4-topbar:76px;--ns4-radius:22px;
  --ns4-bg:var(--ns5-bg);--ns4-surface:var(--ns5-surface);--ns4-surface-2:var(--ns5-soft);--ns4-surface-3:var(--ns5-soft-2);
  --ns4-text:var(--ns5-ink);--ns4-muted:var(--ns5-muted);--ns4-border:var(--ns5-line);
  --ns4-shadow-xs:0 2px 5px rgba(26,52,91,.05);--ns4-shadow-sm:var(--ns5-shadow-sm);--ns4-shadow-md:var(--ns5-shadow);
}
html[data-color-mode="dark"]{
  --ns5-ink:#f1f5ff;--ns5-ink-2:#d7e1f3;--ns5-muted:#9eb0ca;--ns5-bg:#081321;--ns5-surface:#101d30;
  --ns5-soft:#16243a;--ns5-soft-2:#1c2c45;--ns5-line:#2b405e;--ns5-shadow:0 22px 55px rgba(0,0,0,.35);
  --ns5-shadow-sm:0 10px 28px rgba(0,0,0,.27);--ns5-inset:inset 3px 3px 7px rgba(0,0,0,.25),inset -3px -3px 7px rgba(255,255,255,.025);
}
body[data-portal="admin"],body[data-portal="member"]{font-size:15px;line-height:1.55;background:
 radial-gradient(circle at 88% 4%,color-mix(in srgb,var(--ns5-primary) 8%,transparent),transparent 26rem),
 linear-gradient(90deg,color-mix(in srgb,var(--ns5-line) 38%,transparent) 1px,transparent 1px),
 linear-gradient(color-mix(in srgb,var(--ns5-line) 38%,transparent) 1px,transparent 1px),var(--ns5-bg);background-size:auto,34px 34px,34px 34px,auto}
body[data-portal="admin"] .ns4-main,body[data-portal="member"] .ns4-main{isolation:isolate}
body[data-portal="admin"] .ns4-main::before,body[data-portal="member"] .ns4-main::before{content:"";position:fixed;z-index:-1;inset:76px 0 auto auto;width:38vw;height:38vw;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--ns5-primary) 9%,transparent),transparent 68%);filter:blur(14px)}

/* Drawer + navigation rail */
.ns4-drawer{background:color-mix(in srgb,var(--ns5-surface) 95%,var(--ns5-primary) 5%);box-shadow:12px 0 45px rgba(24,51,91,.08)}
.ns4-brand{height:76px;padding:0 18px}.ns4-brand-mark{width:44px;height:44px;flex-basis:44px;border-radius:15px;background:linear-gradient(145deg,#07162c,#123b72);box-shadow:inset 2px 2px 5px rgba(255,255,255,.12),inset -3px -3px 8px rgba(0,0,0,.24),0 10px 22px rgba(18,59,114,.22)}
.ns4-brand-copy strong{font-size:.92rem}.ns4-brand-copy small{font-size:.61rem;letter-spacing:.12em}
.ns4-workspace{margin:15px 13px 8px;padding:13px 14px;border-radius:17px;background:linear-gradient(145deg,var(--ns5-surface),var(--ns5-soft));box-shadow:var(--ns5-inset)}
.ns4-workspace small{font-size:.62rem}.ns4-workspace strong{font-size:.82rem;margin-top:2px}
.ns4-nav-search{margin:8px 13px 5px;min-height:44px;border-radius:14px;background:var(--ns5-soft);box-shadow:var(--ns5-inset)}.ns4-nav-search input{font-size:.82rem}
.ns4-nav{padding:7px 10px 24px}.ns4-nav-group{margin-top:16px}.ns4-nav-label{padding:0 11px 7px;font-size:.61rem;letter-spacing:.13em}
.ns4-nav-link{min-height:44px;padding:10px 11px;border-radius:14px;font-size:.8rem;font-weight:740}.ns4-nav-link>i{width:22px;font-size:1rem}.ns4-nav-link:hover{transform:translateX(3px);background:color-mix(in srgb,var(--ns5-primary) 7%,var(--ns5-surface))}.ns4-nav-link.active{background:linear-gradient(135deg,#0e4ec5,var(--ns5-primary) 58%,var(--ns5-accent));box-shadow:0 12px 28px color-mix(in srgb,var(--ns5-primary) 26%,transparent)}
.ns4-online{font-size:.7rem;border-radius:13px}.ns4-drawer-foot{padding:13px}
body.ns4-rail .ns4-nav-link{min-height:46px;border-radius:15px}body.ns4-rail .ns4-nav-link>i{font-size:1.08rem}

/* App bar + tab bar */
.ns4-appbar{height:76px;padding:0 22px;background:color-mix(in srgb,var(--ns5-surface) 89%,transparent);backdrop-filter:blur(24px) saturate(145%);box-shadow:0 7px 24px rgba(28,52,91,.055)}
.ns4-appbar-title h1{font-size:1.08rem;font-weight:850}.ns4-appbar-title p{font-size:.72rem;margin-top:2px}.ns4-actions{gap:8px}.ns4-icon-btn{min-width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,var(--ns5-surface),var(--ns5-soft));box-shadow:var(--ns5-shadow-sm)}.ns4-icon-btn:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(30,58,105,.14)}.ns4-icon-btn .ns4-label{font-size:.72rem}.ns4-user{min-height:44px;border-radius:15px;padding:4px 11px 4px 4px;box-shadow:var(--ns5-shadow-sm)}.ns4-avatar{width:35px;height:35px;border-radius:11px}.ns4-user-copy strong{font-size:.72rem}.ns4-user-copy small{font-size:.61rem}
.ns4-tabbar{top:76px;min-height:54px;padding:8px 22px;gap:7px;background:color-mix(in srgb,var(--ns5-surface) 94%,transparent);backdrop-filter:blur(20px)}.ns4-tabbar a{padding:9px 13px;border-radius:12px;font-size:.72rem}.ns4-tabbar a.active{color:#fff;background:linear-gradient(135deg,var(--ns5-primary),var(--ns5-secondary));box-shadow:0 8px 18px color-mix(in srgb,var(--ns5-primary) 24%,transparent)}
.ns4-content{max-width:1680px;padding:24px 26px 74px}

/* Shared bento and spatial cards */
.panel,.ns-panel,.member-panel,.ns4-card,.ns4-bento-card,.ns11-card,.ns12-card,.ns-card{border:1px solid color-mix(in srgb,var(--ns5-line) 92%,transparent)!important;border-radius:var(--ns5-radius-lg)!important;background:color-mix(in srgb,var(--ns5-surface) 97%,transparent)!important;box-shadow:var(--ns5-shadow-sm)!important;overflow:hidden}
.panel:hover,.ns4-bento-card:hover,.ns4-card:hover{border-color:color-mix(in srgb,var(--ns5-primary) 24%,var(--ns5-line))!important}
.panel-head,.panel-header,.panel-title,.ns4-card-head,.ns-panel-heading{padding:17px 19px}.panel-body{padding:19px}.panel-title h3,.panel-head h3,.ns-panel h3,.member-panel h3{letter-spacing:-.025em}.panel-title,.ns4-card-title{font-size:1rem}.ns4-card-text,.form-hint,.text-muted{line-height:1.55}
.ns4-bento{gap:16px}.ns4-bento-card{position:relative;padding:20px}.ns4-bento-card::after{content:"";position:absolute;right:-36px;top:-40px;width:120px;height:120px;border-radius:36px;background:linear-gradient(145deg,color-mix(in srgb,var(--ns5-primary) 8%,transparent),transparent);transform:rotate(14deg);pointer-events:none}.ns4-bento-card>*{position:relative;z-index:1}.ns4-spatial{transform-style:preserve-3d}.ns4-spatial:hover{transform:translateY(-3px) perspective(800px) rotateX(.35deg) rotateY(-.35deg)}
.ns4-maximal{background:radial-gradient(circle at 88% 15%,rgba(255,255,255,.16),transparent 24%),linear-gradient(135deg,#103e9b,var(--ns5-primary) 55%,#635bff)!important;border:0!important;box-shadow:0 24px 56px color-mix(in srgb,var(--ns5-primary) 28%,transparent)!important}
.ns4-kicker,.ns-eyebrow,.ns-panel-kicker{font-size:.67rem!important;letter-spacing:.13em!important;font-weight:900!important;text-transform:uppercase}.ns4-card-title{font-size:1.06rem}.ns4-metric strong{font-size:2rem}.ns4-metric small{font-size:.74rem}.ns4-metric-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--ns5-primary) 12%,var(--ns5-surface)),var(--ns5-soft));box-shadow:var(--ns5-inset)}

/* Forms: neomorphic inputs, clay buttons, accessible checkbox */
.form-label,.form-premium label,.ns-field label{font-size:.72rem!important;font-weight:820!important;color:var(--ns5-ink-2);margin-bottom:7px}.form-control,.form-select,.ns-input-wrap{min-height:46px;border:1px solid var(--ns5-line)!important;border-radius:14px!important;background:var(--ns5-soft)!important;color:var(--ns5-ink)!important;box-shadow:var(--ns5-inset)!important;padding:11px 13px}.form-control:focus,.form-select:focus{border-color:color-mix(in srgb,var(--ns5-primary) 48%,var(--ns5-line))!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--ns5-primary) 13%,transparent),var(--ns5-inset)!important;background:var(--ns5-surface)!important}.form-control::placeholder{color:color-mix(in srgb,var(--ns5-muted) 76%,transparent)}textarea.form-control{min-height:112px}.form-hint{font-size:.72rem;color:var(--ns5-muted)}
.btn{min-height:42px;border-radius:13px;font-size:.77rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px;box-shadow:0 7px 18px rgba(30,58,105,.08);transition:.18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{border:0;background:linear-gradient(135deg,var(--ns5-primary),var(--ns5-secondary) 60%,var(--ns5-accent));box-shadow:inset 2px 2px 4px rgba(255,255,255,.24),inset -3px -3px 7px rgba(8,43,118,.2),0 11px 25px color-mix(in srgb,var(--ns5-primary) 25%,transparent)}.btn-dark{border:0;background:linear-gradient(145deg,#17233a,#0a1322)}.btn-light{background:linear-gradient(145deg,var(--ns5-surface),var(--ns5-soft));border:1px solid var(--ns5-line);color:var(--ns5-ink);box-shadow:var(--ns5-inset)}
input[type="checkbox"]{appearance:none;width:21px;height:21px;display:inline-grid;place-content:center;border:1px solid var(--ns5-line);border-radius:7px;background:var(--ns5-soft);box-shadow:var(--ns5-inset);vertical-align:middle;cursor:pointer}input[type="checkbox"]::before{content:"";width:10px;height:6px;border-left:2px solid white;border-bottom:2px solid white;transform:rotate(-45deg) scale(0);transition:.15s}input[type="checkbox"]:checked{background:linear-gradient(135deg,var(--ns5-primary),var(--ns5-accent));border-color:transparent}input[type="checkbox"]:checked::before{transform:rotate(-45deg) scale(1)}

/* Tables + chips + status */
.table{--bs-table-bg:transparent;color:var(--ns5-ink);font-size:.78rem}.table>:not(caption)>*>*{padding:13px 14px;border-color:var(--ns5-line)}.table thead th{font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ns5-muted);background:var(--ns5-soft)}.table tbody tr:hover{background:color-mix(in srgb,var(--ns5-primary) 4%,transparent)}
.status-badge,.ns-status,.member-status,.code-chip,.ns4-chip,.ns-count-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 10px;border:1px solid color-mix(in srgb,var(--ns5-primary) 22%,var(--ns5-line));border-radius:999px;background:color-mix(in srgb,var(--ns5-primary) 7%,var(--ns5-surface));color:var(--ns5-primary);font-size:.65rem;font-weight:850;text-transform:capitalize;line-height:1}.status-badge::before,.ns-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 12%,transparent)}
.status-badge.approved,.status-badge.active,.status-badge.paid,.ns-status.mode-normal{color:var(--ns5-success);background:color-mix(in srgb,var(--ns5-success) 8%,var(--ns5-surface))}.status-badge.pending,.status-badge.warning{color:#ad6500;background:#fff7e8}.status-badge.rejected,.status-badge.locked,.status-badge.failed{color:var(--ns5-danger);background:#fff0f3}

/* Project command centre: corrected page from screenshot */
.ns5-project-page{display:grid;gap:18px}.ns5-project-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:24px 26px;border-radius:28px;background:radial-gradient(circle at 87% 12%,rgba(255,255,255,.18),transparent 30%),linear-gradient(135deg,#123b8f,var(--ns5-primary) 55%,#655cf6);color:#fff;box-shadow:0 24px 58px color-mix(in srgb,var(--ns5-primary) 28%,transparent);overflow:hidden}.ns5-project-hero::after{content:"";position:absolute;right:-90px;bottom:-150px;width:330px;height:330px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.04),0 0 0 98px rgba(255,255,255,.025)}.ns5-project-hero>*{position:relative;z-index:1}.ns5-project-identity{display:flex;align-items:flex-start;gap:16px}.ns5-project-icon{width:56px;height:56px;flex:0 0 56px;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.13);box-shadow:inset 3px 3px 8px rgba(255,255,255,.14),inset -4px -4px 10px rgba(0,0,0,.14);font-size:1.35rem}.ns5-project-hero h2{margin:5px 0 5px;font-size:clamp(1.45rem,2.2vw,2.2rem);letter-spacing:-.045em}.ns5-project-hero p{margin:0;color:rgba(255,255,255,.76)}.ns5-project-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.ns5-project-chips span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.1);font-size:.68rem;font-weight:800}.ns5-project-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.ns5-project-actions .btn{box-shadow:none}.ns5-project-actions .btn-outline-light{background:rgba(255,255,255,.08)}
.ns5-stage-shell{padding:16px 18px;border:1px solid var(--ns5-line);border-radius:20px;background:var(--ns5-surface);box-shadow:var(--ns5-shadow-sm);overflow:auto}.ns5-stage-track{min-width:860px;display:grid;grid-template-columns:repeat(8,1fr);position:relative}.ns5-stage-track::before{content:"";position:absolute;left:4%;right:4%;top:18px;height:3px;border-radius:4px;background:var(--ns5-soft-2)}.ns5-stage{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;color:var(--ns5-muted);font-size:.65rem;font-weight:780;text-align:center}.ns5-stage b{width:36px;height:36px;display:grid;place-items:center;border:4px solid var(--ns5-surface);border-radius:50%;background:var(--ns5-soft-2);box-shadow:0 0 0 1px var(--ns5-line)}.ns5-stage.done b,.ns5-stage.current b{color:#fff;background:linear-gradient(135deg,var(--ns5-primary),var(--ns5-accent));box-shadow:0 0 0 1px color-mix(in srgb,var(--ns5-primary) 40%,transparent),0 8px 18px color-mix(in srgb,var(--ns5-primary) 23%,transparent)}.ns5-stage.current{color:var(--ns5-primary)}
.ns5-project-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.ns5-span-8{grid-column:span 8}.ns5-span-4{grid-column:span 4}.ns5-command-card{padding:21px;border:1px solid var(--ns5-line);border-radius:24px;background:var(--ns5-surface);box-shadow:var(--ns5-shadow-sm)}.ns5-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:17px}.ns5-card-head h3{margin:3px 0 0;font-size:1.2rem;letter-spacing:-.035em}.ns5-card-head p{margin:4px 0 0;color:var(--ns5-muted);font-size:.76rem}.ns5-command-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.ns5-command-metrics>div{padding:15px;border:1px solid var(--ns5-line);border-radius:17px;background:linear-gradient(145deg,var(--ns5-soft),var(--ns5-surface));box-shadow:var(--ns5-inset)}.ns5-command-metrics small,.ns5-data-list small{display:block;color:var(--ns5-muted);font-size:.66rem}.ns5-command-metrics strong{display:block;margin-top:4px;font-size:1.05rem}.ns5-progress{height:12px;margin:16px 0;border-radius:999px;background:var(--ns5-soft-2);overflow:hidden;box-shadow:inset 2px 2px 4px rgba(28,56,95,.09)}.ns5-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ns5-primary),var(--ns5-secondary),var(--ns5-accent));box-shadow:0 0 18px color-mix(in srgb,var(--ns5-accent) 34%,transparent)}.ns5-scope{padding:17px 18px;border-left:4px solid var(--ns5-primary);border-radius:0 16px 16px 0;background:color-mix(in srgb,var(--ns5-primary) 5%,var(--ns5-soft))}.ns5-scope h4{font-size:.74rem;margin:0 0 7px}.ns5-scope p{margin:0;color:var(--ns5-muted)}
.ns5-access-card{position:sticky;top:148px}.ns5-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.ns5-access-grid .full{grid-column:1/-1}.ns5-access-note{display:flex;gap:10px;margin-top:14px;padding:12px;border-radius:14px;background:#fff7e8;color:#8f5708;font-size:.72rem}.ns5-access-submit{width:100%;margin-top:14px}
.ns5-data-list{display:grid;gap:0}.ns5-data-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--ns5-line)}.ns5-data-list>div:last-child{border-bottom:0}.ns5-data-list strong{text-align:right;font-size:.78rem}
.ns5-timeline{position:relative;display:grid;gap:0;margin-top:4px}.ns5-timeline::before{content:"";position:absolute;left:18px;top:15px;bottom:15px;width:2px;background:linear-gradient(var(--ns5-primary),var(--ns5-line))}.ns5-timeline-item{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;padding:0 0 18px}.ns5-timeline-dot{z-index:1;width:38px;height:38px;display:grid;place-items:center;border:5px solid var(--ns5-surface);border-radius:50%;background:linear-gradient(135deg,var(--ns5-primary),var(--ns5-accent));color:#fff;box-shadow:0 0 0 1px var(--ns5-line),0 7px 15px color-mix(in srgb,var(--ns5-primary) 20%,transparent)}.ns5-timeline-content{padding:13px 15px;border:1px solid var(--ns5-line);border-radius:16px;background:var(--ns5-soft)}.ns5-timeline-content time{display:block;color:var(--ns5-muted);font-size:.64rem}.ns5-timeline-content h4{margin:3px 0 4px;font-size:.94rem}.ns5-timeline-content p{margin:0;color:var(--ns5-muted);font-size:.75rem}

/* Member project page shares the command-centre language */
.ns-project-hero{padding:22px 24px;border-radius:26px!important;background:radial-gradient(circle at 88% 10%,rgba(255,255,255,.16),transparent 25%),linear-gradient(135deg,#123d92,var(--ns5-primary) 58%,#655cf6)!important;color:#fff!important;box-shadow:0 24px 56px color-mix(in srgb,var(--ns5-primary) 25%,transparent)!important}.ns-project-hero h2,.ns-project-hero p{color:#fff}.ns-project-layout{gap:18px}.client-project-stats>div,.proposal-money>div,.client-module-grid>article{border-radius:16px!important;background:var(--ns5-soft)!important;box-shadow:var(--ns5-inset)!important}.client-timeline-item section{border-radius:15px;background:var(--ns5-soft);padding:12px 14px}

/* Snackbar, dialogs, bottom sheets, tabs, carousel */
.ns4-snackbar,.ns8-flash{border-radius:16px!important;box-shadow:0 18px 45px rgba(20,40,75,.19)!important;backdrop-filter:blur(16px)}.ns4-dialog{backdrop-filter:blur(8px)}.ns4-dialog-box{border-radius:24px!important;box-shadow:0 32px 90px rgba(5,17,36,.32)!important}.ns4-bottom-sheet{border-radius:28px 28px 0 0!important}.ns4-sheet-grid a{min-height:84px;border-radius:17px!important;box-shadow:var(--ns5-inset)}
.ns5-tabs{display:flex;gap:7px;overflow:auto;padding:6px;border:1px solid var(--ns5-line);border-radius:15px;background:var(--ns5-soft)}.ns5-tabs button,.ns5-tabs a{border:0;border-radius:11px;padding:9px 12px;background:transparent;color:var(--ns5-muted);font-size:.72rem;font-weight:800;white-space:nowrap}.ns5-tabs .active{background:var(--ns5-surface);color:var(--ns5-primary);box-shadow:var(--ns5-shadow-sm)}
.ns5-carousel{position:relative;overflow:hidden}.ns5-carousel-track{display:flex;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.ns5-carousel-slide{min-width:100%}.ns5-carousel-dots{display:flex;gap:7px;justify-content:center;margin-top:14px}.ns5-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:999px;background:var(--ns5-line)}.ns5-carousel-dots button.active{width:28px;background:var(--ns5-primary)}

/* Auth compact premium workspace */
.ns4-auth-page{padding:24px;background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--ns5-primary) 14%,transparent),transparent 30rem),linear-gradient(135deg,#e8f0fb,#f8fbff)}.ns4-auth-shell{width:min(1040px,100%);grid-template-columns:minmax(0,1fr) 390px;border-radius:30px;box-shadow:0 35px 90px rgba(22,48,90,.18)}.ns4-auth-main{padding:42px}.ns4-auth-side{padding:38px;background:radial-gradient(circle at 85% 12%,rgba(255,255,255,.16),transparent 29%),linear-gradient(155deg,#092b64,#155eef 60%,#645cf6)}.ns4-auth-content{max-width:480px;margin-top:34px}.ns-auth-heading h2{font-size:1.7rem}.ns-auth-heading p{font-size:.78rem}.ns-auth-form{gap:16px}.ns-auth-submit{min-height:49px;border-radius:14px}.ns-auth-meta,.ns-auth-foot{font-size:.69rem}.ns4-auth-side h2{font-size:1.8rem;letter-spacing:-.04em}.ns4-auth-side p{font-size:.8rem;line-height:1.65}

/* Better desktop balance and mobile behaviour */
@media(max-width:1280px){.ns5-command-metrics{grid-template-columns:repeat(2,1fr)}.ns5-span-8,.ns5-span-4{grid-column:1/-1}.ns5-access-card{position:static}.ns5-project-bento{grid-template-columns:1fr}}
@media(max-width:992px){.ns4-content{padding:18px 16px 94px}.ns5-project-hero{grid-template-columns:1fr}.ns5-project-actions{justify-content:flex-start}.ns4-bottom-nav{height:68px;border-radius:21px;padding:7px}.ns4-bottom-nav a,.ns4-bottom-nav button{font-size:.58rem}.ns4-bottom-nav i{font-size:1.02rem}.ns4-fab{width:54px;height:54px;border-radius:19px}.ns4-auth-shell{grid-template-columns:1fr}.ns4-auth-side{display:none}}
@media(max-width:767.98px){body[data-portal="admin"],body[data-portal="member"]{font-size:14px}.ns4-appbar{height:68px;padding:0 12px}.ns4-tabbar{top:68px;padding:7px 12px}.ns4-content{padding-inline:12px}.ns5-project-hero{padding:20px;border-radius:23px}.ns5-project-identity{display:block}.ns5-project-icon{margin-bottom:12px}.ns5-project-actions .btn{flex:1}.ns5-command-card{padding:16px;border-radius:20px}.ns5-command-metrics{grid-template-columns:1fr 1fr}.ns5-access-grid{grid-template-columns:1fr}.ns5-access-grid .full{grid-column:1}.ns5-timeline-item{grid-template-columns:34px minmax(0,1fr);gap:10px}.ns5-timeline-dot{width:34px;height:34px}.ns5-timeline::before{left:16px}.ns4-auth-page{padding:12px}.ns4-auth-main{padding:28px 20px}.table-responsive td{font-size:.76rem}.panel-body{padding:15px}}
@media(max-width:460px){.ns5-command-metrics{grid-template-columns:1fr}.ns5-project-actions{display:grid;grid-template-columns:1fr 1fr}.ns5-project-actions .btn:last-child{grid-column:1/-1}.ns4-appbar-title h1{font-size:.94rem}.ns4-user{display:none}.ns4-actions{gap:5px}}
@media print{.ns5-project-hero{background:#fff!important;color:#172033!important;box-shadow:none!important;border:1px solid #d7dee8}.ns5-project-hero h2,.ns5-project-hero p{color:#172033!important}.ns5-stage-shell,.ns5-command-card{box-shadow:none!important}}
/* Keep NS Copilot clear of mobile bottom navigation. */
@media(max-width:992px){body[data-portal="admin"] .portal-ai-launch,body[data-portal="member"] .portal-ai-launch{right:16px;bottom:92px}body[data-portal="admin"] .portal-ai-panel,body[data-portal="member"] .portal-ai-panel{right:12px;bottom:154px;height:min(560px,calc(100vh - 176px))}}
