/*
 * NS Care+ 1.5.0 visual concept layer
 * Rebuilds the live plugin UX around the supplied NS Care+ HTML concept while
 * leaving the existing REST, permissions and operational workflows intact.
 */
:root {
  --nsc-navy:#082b62;
  --nsc-text:#173452;
  --nsc-muted:#718198;
  --nsc-blue:#087cf0;
  --nsc-green:#18a565;
  --nsc-purple:#8244e8;
  --nsc-orange:#ff5b08;
  --nsc-red:#e73e49;
  --nsc-soft:#f5f8fc;
  --nsc-line:#dce6ef;
  --nsc-shadow:0 12px 30px rgba(8,43,98,.07);
  --nsc-shadow-lg:0 24px 58px rgba(8,43,98,.11);
}

body.nscc-app-page,
body.nscc-login-page {
  background:#f5f8fc !important;
  color:var(--nsc-text);
  font-family:Arial,Helvetica,sans-serif !important;
}
body.nscc-app-page :where(.site-header,.site-footer,.entry-header,.page-header),
body.nscc-login-page :where(.site-header,.site-footer,.entry-header,.page-header) { display:none !important; }
body.nscc-app-page :where(.site-main,.content-area,.site-content,.entry-content,.wp-site-blocks),
body.nscc-login-page :where(.site-main,.content-area,.site-content,.entry-content,.wp-site-blocks) { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }

/* ---------------------------------------------------------
   PORTAL SELECTOR, directly based on supplied HTML structure
   --------------------------------------------------------- */
.nsc-concept-login.nscc-login-shell { padding:0 !important; min-height:100vh; background:#f7faff !important; }
.nsc-login-section,.nsc-login-section *{box-sizing:border-box}
.nsc-login-section{width:100%;min-height:100vh;padding:38px clamp(18px,3vw,48px) 45px;position:relative;overflow:hidden;color:var(--nsc-text);background:linear-gradient(180deg,#fbfdff 0%,#f7faff 55%,#eef6ff 100%)}
.nsc-login-inner{width:min(1700px,100%);margin:auto;position:relative;z-index:5}
.nsc-bg-orb{position:absolute;border-radius:50%;pointer-events:none}.nsc-orb-one{width:500px;height:500px;top:-280px;left:-180px;background:rgba(8,124,240,.045)}.nsc-orb-two{width:650px;height:650px;right:-410px;bottom:-390px;background:rgba(255,91,8,.045)}
.nsc-login-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;align-items:stretch}
.nsc-login-card{--role:var(--nsc-blue);--role-soft:#edf6ff;--role-rgb:8,124,240;position:relative;min-width:0;overflow:hidden;background:#fff;border:1px solid rgba(216,226,236,.92);border-radius:24px;box-shadow:0 18px 48px rgba(19,53,85,.09);transition:transform .22s ease,box-shadow .22s ease}
.nsc-login-card:hover{transform:translateY(-5px);box-shadow:0 25px 62px rgba(19,53,85,.14)}
.nsc-admin-card{--role:#087cf0;--role-soft:#edf6ff;--role-rgb:8,124,240}.nsc-worker-card{--role:#18a565;--role-soft:#edf9f3;--role-rgb:24,165,101}.nsc-participant-card{--role:#8244e8;--role-soft:#f5efff;--role-rgb:130,68,232}.nsc-family-card{--role:#ff5b08;--role-soft:#fff2ea;--role-rgb:255,91,8}
.nsc-card-hero{min-height:305px;padding:27px 25px 0;position:relative;overflow:hidden}.nsc-card-hero::after{content:"NS";position:absolute;top:-42px;right:-28px;color:rgba(var(--role-rgb),.035);font-size:165px;line-height:1;font-weight:900;font-style:italic;letter-spacing:-58px;pointer-events:none}
.nsc-card-logo-wrap{width:100%;min-height:43px;position:relative;z-index:10;display:flex;flex-direction:column;align-items:flex-start}.nsc-card-logo{width:196px;max-width:78%;height:auto;display:block;object-fit:contain;object-position:left center}.nsc-logo-tagline{margin-top:5px;margin-left:5px;color:var(--role);font-size:5.7px;line-height:1;font-weight:900;letter-spacing:1.35px;text-transform:uppercase}
.nsc-role-badge{width:fit-content;min-height:29px;margin-top:25px;padding:0 10px;position:relative;z-index:9;display:inline-flex;align-items:center;color:var(--role);background:var(--role-soft);border:1px solid rgba(var(--role-rgb),.18);border-radius:8px;font-size:8px;line-height:29px;font-weight:800;letter-spacing:.2px}
.nsc-hero-layout{min-height:175px;position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(120px,.9fr);align-items:end}.nsc-hero-copy{padding:16px 0 25px;position:relative;z-index:7}.nsc-hero-copy h2{margin:0 0 10px;color:var(--nsc-navy);font-size:clamp(18px,1.45vw,24px);line-height:1.08;letter-spacing:-.55px}.nsc-hero-copy p{max-width:210px;margin:0;color:#51647b;font-size:10px;line-height:1.55}
.nsc-person-wrap{width:165px;height:180px;margin-left:auto;position:relative;align-self:end}.nsc-person-image{width:100%;height:100%;position:absolute;z-index:5;left:0;bottom:0;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 9px 11px rgba(14,42,73,.07))}.nsc-person-orb{width:130px;height:130px;position:absolute;z-index:1;right:-6px;bottom:6px;border-radius:50%;background:rgba(var(--role-rgb),.085)}.nsc-person-dots{width:84px;height:84px;position:absolute;z-index:2;left:-5px;top:17px;opacity:.55;background-image:radial-gradient(circle,rgba(var(--role-rgb),.54) 1.75px,transparent 2px);background-size:14px 14px}
.nsc-login-form{padding:18px 25px 27px;position:relative;z-index:6;background:#fff}.nsc-gateway-copy{min-height:76px;padding:12px 13px;margin-bottom:14px;background:var(--role-soft);border-radius:12px;display:grid;align-content:center;gap:5px}.nsc-gateway-copy strong{color:var(--nsc-navy);font-size:11px}.nsc-gateway-copy span{color:#60758f;font-size:9px;line-height:1.5}
.nsc-sign-in{width:100%;min-height:50px;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff !important;background:var(--role);border-radius:12px;box-shadow:0 9px 21px rgba(var(--role-rgb),.22);text-decoration:none !important;font-size:13px;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.nsc-sign-in:hover{color:#fff !important;transform:translateY(-2px);filter:brightness(.96);box-shadow:0 14px 28px rgba(var(--role-rgb),.29)}
.nsc-help{min-height:57px;margin-top:29px;padding:9px 11px;display:flex;align-items:center;gap:9px;background:linear-gradient(135deg,#fff,#fbfcfe);border:1px solid #e0e7ed;border-radius:10px}.nsc-help strong,.nsc-help small{display:block}.nsc-help strong{color:var(--nsc-navy);font-size:8px}.nsc-help small{margin-top:3px;color:var(--nsc-muted);font-size:7px}.nsc-help-arrow{margin-left:auto;color:#93a4b5;font-size:20px}.nsc-security-footer{margin-top:38px;display:flex;align-items:center;justify-content:center;gap:12px;text-align:left}.nsc-security-footer strong,.nsc-security-footer small{display:block}.nsc-security-footer strong{color:var(--nsc-navy);font-size:13px}.nsc-security-footer small{margin-top:5px;color:#63758b;font-size:8px}

/* ---------------------------------------------------------
   AUTH PAGES - preserve real plugin authentication, visual rebuild only
   --------------------------------------------------------- */
.nscc-login-shell:not(.nsc-concept-login){min-height:100vh !important;padding:32px 18px !important;background:radial-gradient(circle at 14% 8%,rgba(8,124,240,.09),transparent 27%),radial-gradient(circle at 88% 78%,rgba(255,91,8,.09),transparent 30%),linear-gradient(180deg,#fbfdff,#eef6ff) !important}
.nscc-auth-card{width:min(560px,100%) !important;padding:28px !important;border:1px solid #dce6ef !important;border-radius:24px !important;background:#fff !important;box-shadow:0 22px 58px rgba(8,43,98,.12) !important;position:relative;overflow:hidden}
.nscc-auth-card::after{content:"NS";position:absolute;right:-22px;top:-42px;font-size:140px;font-weight:900;font-style:italic;letter-spacing:-46px;color:rgba(8,124,240,.035);pointer-events:none}.nscc-auth-card.nscc-role-worker::after{color:rgba(24,165,101,.045)}.nscc-auth-card.nscc-role-participant::after{color:rgba(130,68,232,.045)}.nscc-auth-card.nscc-role-representative::after{color:rgba(255,91,8,.045)}
.nscc-auth-card .nscc-login-brand,.nscc-auth-card .nscc-auth-hero,.nscc-auth-card .nscc-auth-form,.nscc-auth-card .nscc-auth-links,.nscc-auth-card .nscc-security-note{position:relative;z-index:2}.nscc-auth-card .nscc-auth-product{color:var(--nsc-navy);font-size:24px;font-weight:900}.nscc-auth-card .nscc-auth-role{display:inline-flex;padding:8px 10px;border-radius:8px;background:#edf6ff;color:#087cf0;font-size:9px;font-weight:900;letter-spacing:.08em}.nscc-role-worker .nscc-auth-role{background:#edf9f3;color:#18a565}.nscc-role-participant .nscc-auth-role{background:#f5efff;color:#8244e8}.nscc-role-representative .nscc-auth-role{background:#fff2ea;color:#ff5b08}
.nscc-auth-card h1{color:var(--nsc-navy) !important;letter-spacing:-.035em}.nscc-auth-card .nscc-field input{min-height:52px;border:1px solid #d7e0e9 !important;border-radius:12px !important;background:#fff !important}.nscc-auth-card .nscc-button-primary{border-radius:12px !important;background:#087cf0 !important;box-shadow:0 9px 21px rgba(8,124,240,.22) !important}.nscc-role-worker .nscc-button-primary{background:#18a565 !important}.nscc-role-participant .nscc-button-primary{background:#8244e8 !important}.nscc-role-representative .nscc-button-primary{background:#ff5b08 !important}

/* ---------------------------------------------------------
   APPLICATION SHELL
   --------------------------------------------------------- */
#nscc-app{--nscc-personal:#087cf0;width:100%;min-height:100vh;background:#f5f8fc;color:var(--nsc-text);font-family:Arial,Helvetica,sans-serif}
#nscc-app .nscc-shell{min-height:100vh;background:#f5f8fc}
#nscc-app .nscc-layout{grid-template-columns:230px minmax(0,1fr);min-height:100vh}
#nscc-app .nscc-sidebar{min-height:100vh;padding:24px 14px;border-right:1px solid #dfe7ef;background:#fff;box-shadow:8px 0 24px rgba(8,43,98,.035);overflow-y:auto}
#nscc-app .nscc-sidebar-brand{min-height:74px;padding:0 10px 16px;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:6px;border-bottom:1px solid #e7edf3}
.nscc-concept-brand-logo{display:block;width:178px;max-width:100%;height:auto;object-fit:contain;object-position:left center}.nscc-concept-brand-tag{color:var(--nscc-personal);font-size:5.5px;font-weight:900;letter-spacing:1.25px;margin-left:4px}
#nscc-app .nscc-nav{position:static;margin-top:20px;gap:17px}#nscc-app .nscc-nav-label{padding:0 11px 5px;color:#8a99aa;font-size:8px;font-weight:900;letter-spacing:.12em}#nscc-app .nscc-nav button{min-height:40px;padding:8px 10px;border-radius:10px;color:#526b87;font-size:10px;font-weight:800}#nscc-app .nscc-nav button:hover{background:#f4f7fa;transform:none;color:var(--nsc-navy)}#nscc-app .nscc-nav button[aria-current="page"]{background:color-mix(in srgb,var(--nscc-personal) 9%,white);color:var(--nscc-personal);box-shadow:inset 3px 0 0 var(--nscc-personal)}#nscc-app .nscc-nav button[aria-current="page"] .nscc-nav-icon{background:color-mix(in srgb,var(--nscc-personal) 10%,white)}
#nscc-app .nscc-sidebar-promo{margin-top:28px;padding:13px;border-radius:14px;background:linear-gradient(145deg,#f8fbfe,#f2f7fb);border:1px solid #e3eaf1}#nscc-app .nscc-sidebar-promo strong{color:var(--nsc-navy);font-size:10px}#nscc-app .nscc-sidebar-promo span{color:#6b7f97;font-size:8px;line-height:1.55}
#nscc-app .nscc-workspace{min-width:0;background:#f5f8fc}#nscc-app .nscc-topbar{position:relative;top:auto;z-index:1000;width:auto;min-height:72px;margin:14px 16px 0;padding:12px 16px;border:1px solid rgba(198,213,229,.92);border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 10px 28px rgba(8,43,98,.08);backdrop-filter:none}#nscc-app .nscc-topbar-kicker{color:#7b8ca1;font-size:7px;font-weight:900;letter-spacing:.1em}#nscc-app .nscc-topbar-context>strong{margin-top:3px;color:var(--nsc-navy);font-size:15px;font-weight:900}#nscc-app .nscc-security-pill,#nscc-app .nscc-notification-pill{min-height:34px;border:1px solid #e0e8f0;border-radius:10px;background:#f8fafc;color:#526b87;font-size:8px}#nscc-app .nscc-account-trigger{padding:5px 7px;border-radius:12px}#nscc-app .nscc-topbar-user strong{font-size:10px;color:var(--nsc-navy)}#nscc-app .nscc-topbar-user small{font-size:7px;color:#73859b}.nscc-avatar{background:color-mix(in srgb,var(--nscc-personal) 14%,white) !important;color:var(--nscc-personal) !important;border:1px solid color-mix(in srgb,var(--nscc-personal) 24%,white)}
#nscc-app .nscc-build-banner{margin:10px 16px 0;padding:9px 12px;border:1px solid #cfe3f8;border-radius:12px;background:#eef7ff;color:#476887;box-shadow:none;font-size:8px}#nscc-app .nscc-build-banner strong{font-size:8px}#nscc-app .nscc-build-banner span{font-size:7px}
#nscc-app .nscc-main{padding:20px 18px 82px;background:transparent;min-height:calc(100vh - 100px)}#nscc-app .nscc-page{max-width:1600px;margin:0 auto}

/* Page typography and cards follow prototype scale */
.nsc-concept-page-header{padding:4px 4px 2px;margin-bottom:16px;align-items:flex-end}.nsc-concept-page-header .nscc-kicker{color:var(--nscc-personal);font-size:7px;letter-spacing:1px}.nsc-concept-page-header h1{margin:4px 0 5px;color:var(--nsc-navy);font-size:clamp(25px,2.7vw,38px);line-height:1.05}.nsc-concept-page-header p{color:#60758f;font-size:11px;line-height:1.55;max-width:820px}
#nscc-app .nscc-card,#nscc-app .nscc-panel{border:1px solid #dce6ef;background:#fff;box-shadow:var(--nsc-shadow);border-radius:18px;backdrop-filter:none}#nscc-app .nscc-card{padding:18px}#nscc-app .nscc-card h2{font-size:17px}#nscc-app .nscc-card h3{font-size:14px}#nscc-app .nscc-muted{color:#6b7f97 !important;font-size:9px;line-height:1.5}
#nscc-app .nscc-button{min-height:38px;padding:0 14px;border-radius:11px;font-size:10px;font-weight:800}#nscc-app .nscc-button-primary{background:#087cf0;color:#fff !important;box-shadow:0 8px 18px rgba(8,124,240,.2)}#nscc-app .nscc-button-secondary{background:#ff5b08;color:#fff !important;box-shadow:0 8px 18px rgba(255,91,8,.18)}#nscc-app .nscc-button-quiet{background:#fff;border-color:#d8e3ed;color:#173d66 !important}#nscc-app .nscc-button-danger{border-color:#ffd0d0;background:#fff2f2;color:#c72f39 !important}
#nscc-app .nscc-field label,#nscc-app .nscc-field>span{color:#62758e;font-size:8px;font-weight:900;letter-spacing:.06em}#nscc-app .nscc-field input,#nscc-app .nscc-field select,#nscc-app .nscc-field textarea{min-height:42px;padding:9px 11px;border:1px solid #d7e2ed;border-radius:11px;background:#fff;color:#12365f;font:700 11px/1.4 Arial,Helvetica,sans-serif;outline:0}#nscc-app .nscc-field textarea{min-height:88px}#nscc-app .nscc-field input:focus,#nscc-app .nscc-field select:focus,#nscc-app .nscc-field textarea:focus{border-color:var(--nscc-personal);box-shadow:0 0 0 3px color-mix(in srgb,var(--nscc-personal) 10%,transparent)}
#nscc-app .nscc-status{border-radius:999px;font-size:7px;font-weight:900;letter-spacing:.04em}
#nscc-app .nscc-table-wrap{border:1px solid #dde6ef;border-radius:16px;background:#fff;box-shadow:var(--nsc-shadow);overflow:auto}#nscc-app .nscc-table th{background:#f7f9fc;color:#6e8198;font-size:8px;letter-spacing:.08em}#nscc-app .nscc-table td{font-size:9px;color:#29486f}
#nscc-app .nscc-row{border-color:#dfe7ef;background:#fff;border-radius:14px;box-shadow:0 4px 12px rgba(8,43,98,.035);font-size:9px}#nscc-app .nscc-row-main strong{color:var(--nsc-navy)}#nscc-app .nscc-row-main span{color:#647a93;font-size:8px}

/* Dashboard hero from concept */
.nscnew-dashboard-banner{min-height:245px;padding:30px 34px !important;position:relative;overflow:hidden;border:1px solid #dce6ef !important;border-radius:24px;background:linear-gradient(116deg,#f7fbff 0%,#fff 52%,#fff9f4 100%) !important;box-shadow:var(--nsc-shadow-lg) !important;display:block !important}.nscnew-dashboard-banner::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,rgba(8,124,240,.08),transparent 24%),radial-gradient(circle at 78% 80%,rgba(255,91,8,.1),transparent 28%);pointer-events:none}.nscnew-banner-copy{position:relative;z-index:8;max-width:48%;padding-top:16px}.nscnew-banner-copy h1{margin:7px 0 7px;color:var(--nsc-navy);font-size:clamp(30px,3.6vw,50px);line-height:1.02;letter-spacing:-.045em}.nscnew-banner-copy p{color:#526b88;font-size:12px}.nscnew-eyebrow{color:#087cf0 !important;font-size:8px !important;letter-spacing:1px !important}.nscnew-people-zone{position:absolute;right:8%;bottom:0;width:360px;height:240px;z-index:5}.nscnew-people-image{position:absolute;right:0;bottom:0;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 20px rgba(8,43,98,.08))}.nscnew-orange-pill{position:absolute;right:18px;bottom:22px;width:160px;height:70px;border-radius:999px;background:rgba(255,91,8,.1);transform:rotate(-13deg)}.nscnew-orange-dot{position:absolute;right:18px;top:35px;width:16px;height:16px;border-radius:50%;background:#ff5b08}.nscnew-art{position:absolute;pointer-events:none;opacity:.7}.nscnew-peach-wave{left:42%;bottom:-40px;width:170px}.nscnew-blue-wave{left:49%;top:-40px;width:150px}.nscnew-blue-orb{right:32%;top:20px;width:65px}.nscnew-dashboard-banner .nscc-dashboard-actions{margin-top:18px;position:relative;z-index:9}
#nscc-app .nscc-metric-strip{gap:10px;margin-top:13px}#nscc-app .nscc-metric{min-height:98px;padding:13px 15px;border-top:3px solid #087cf0;border-radius:15px}#nscc-app .nscc-metric-value{font-size:24px;color:var(--nsc-navy)}#nscc-app .nscc-metric-label{font-size:9px;color:#516986}#nscc-app .nscc-metric-sub{font-size:7px;color:#74869a}
#nscc-app .nscc-dashboard-grid{gap:12px}#nscc-app .nscc-quick-action{min-height:76px;border-radius:15px;border:1px solid #dfe7ef;background:#fff;box-shadow:0 7px 18px rgba(8,43,98,.05)}

/* ---------------------------------------------------------
   TIMELINE ROSTER - based on supplied nscx interactive structure
   --------------------------------------------------------- */
.nscx-hidden{display:none!important}.nscx-roster{--slot-h:28px;--admin:#087cf0;margin:0 0 24px;color:#14365f;font-family:Arial,Helvetica,sans-serif}.nscx-roster *{box-sizing:border-box}.nscx-roster-toolbar{padding:15px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:1px solid #dce6f0;border-radius:20px;background:#fff;box-shadow:var(--nsc-shadow)}.nscx-roster-tabs{grid-column:1/-1;display:flex;align-items:center;gap:6px;padding:5px;border-radius:14px;background:#edf3f8}.nscx-roster-tabs button{min-height:38px;flex:1;border:0;border-radius:10px;background:transparent;color:#657a94;font:800 10px Arial;cursor:pointer}.nscx-roster-tabs button.active{background:#fff;color:#087cf0;box-shadow:0 4px 12px rgba(8,43,98,.1)}.nscx-field{display:grid;gap:6px}.nscx-field>span{color:#62758e;font-size:8px;font-weight:900;letter-spacing:.9px}.nscx-field input,.nscx-field select{width:100%;min-height:40px;padding:9px 11px;border:1px solid #d7e2ed;border-radius:11px;background:#fff;color:#12365f;font:700 11px/1.4 Arial;outline:0}.nscx-filter-actions{display:flex;align-items:end;gap:8px}.nscx-service-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.nscx-service-chip{min-height:28px;padding:0 10px;display:inline-flex;align-items:center;border:1px solid #dce5ee;border-radius:999px;background:#fff;color:#4e6683;font:800 8px Arial}
.nscx-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:13px 0}.nscx-summary article{min-height:72px;padding:13px 15px;border:1px solid #dfe8f0;border-top:3px solid #087cf0;border-radius:15px;background:#fff;box-shadow:0 7px 18px rgba(8,43,98,.05)}.nscx-summary article:nth-child(2){border-top-color:#18a565}.nscx-summary article:nth-child(3){border-top-color:#ff7a18}.nscx-summary article:nth-child(4){border-top-color:#e73e49}.nscx-summary strong,.nscx-summary span{display:block}.nscx-summary strong{font-size:23px;color:#082b62}.nscx-summary span{margin-top:4px;color:#677b93;font-size:9px;font-weight:700}
.nscx-roster-grid-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:13px;align-items:start}.nscx-calendar-card,.nscx-attention{border:1px solid #dce6ef;border-radius:20px;background:#fff;box-shadow:var(--nsc-shadow)}.nscx-calendar-card{min-width:0;overflow:hidden}.nscx-calendar-headline{min-height:60px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e4ebf2}.nscx-calendar-headline span,.nscx-calendar-headline strong{display:block}.nscx-calendar-headline>div>span{color:#087cf0;font-size:8px;font-weight:900;letter-spacing:1px}.nscx-calendar-headline strong{margin-top:4px;color:#082b62;font-size:15px}.nscx-roster-help{max-width:260px;color:#71839a;font-size:8px;text-align:right}.nscx-calendar-scroll{max-height:660px;overflow:auto;position:relative}.nscx-time-calendar{min-width:980px;display:grid;grid-template-columns:64px repeat(var(--lane-count),minmax(125px,1fr));position:relative}.nscx-time-header{min-height:54px;position:sticky;top:0;z-index:8;display:grid;place-items:center;border-right:1px solid #dfe7ef;border-bottom:1px solid #dfe7ef;background:#f7f9fc;text-align:center}.nscx-time-header.is-today{background:#edf7ff;color:#087cf0}.nscx-time-header strong,.nscx-time-header span{display:block}.nscx-time-header strong{font-size:10px;color:#14365f}.nscx-time-header span{margin-top:3px;font-size:8px;color:#70839a}.nscx-time-axis{position:relative;height:calc(var(--slot-h) * var(--slot-count));border-right:1px solid #dfe7ef;background:#fbfcfe}.nscx-time-label{height:calc(var(--slot-h) * 2);padding:4px 7px 0;color:#8291a4;font-size:8px;text-align:right}.nscx-drop-lane{height:calc(var(--slot-h) * var(--slot-count));position:relative;border-right:1px solid #e2e9f0;background:repeating-linear-gradient(to bottom,#fff 0,#fff calc(var(--slot-h) - 1px),#edf2f7 calc(var(--slot-h) - 1px),#edf2f7 var(--slot-h))}.nscx-drop-lane::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--slot-h)*2 - 1px),rgba(8,43,98,.08) calc(var(--slot-h)*2 - 1px),rgba(8,43,98,.08) calc(var(--slot-h)*2))}.nscx-drop-lane.valid{box-shadow:inset 0 0 0 3px rgba(8,124,240,.28);background-color:#eff8ff}.nscx-drop-lane.invalid{box-shadow:inset 0 0 0 3px rgba(231,62,73,.3);background-color:#fff1f2}
.nscx-support{width:calc(100% - 10px);min-height:38px;padding:7px 8px;position:absolute;left:5px;z-index:4;overflow:hidden;border:1px solid #b9daf8;border-left:4px solid #087cf0;border-radius:10px;background:linear-gradient(145deg,#f8fcff,#eaf5ff);color:#12365f;text-align:left;box-shadow:0 5px 12px rgba(8,43,98,.09);cursor:grab;touch-action:none;transition:box-shadow .16s ease,transform .16s ease}.nscx-support:hover{z-index:6;transform:translateY(-1px);box-shadow:0 10px 20px rgba(8,43,98,.16)}.nscx-support:focus-visible{outline:3px solid rgba(8,124,240,.28);outline-offset:2px}.nscx-support.dragging{z-index:30;cursor:grabbing;transform:scale(1.018);box-shadow:0 18px 34px rgba(8,43,98,.26);opacity:.92}.nscx-support.status-draft{border-color:#d7c8fa;border-left-color:#8244e8;background:#f7f3ff}.nscx-support.status-unfilled{border-color:#ffd5b8;border-left-color:#ff6a0b;background:#fff5ed}.nscx-support.status-conflict{border-color:#ffc0c5;border-left-color:#e73e49;background:#fff1f2}.nscx-support.status-cancelled{border-color:#d8dee6;border-left-color:#8492a5;background:#f4f6f8;opacity:.7;cursor:default}.nscx-support-time{display:flex;align-items:center;gap:5px;color:#0872d5;font-size:8px;font-weight:900}.nscx-support-time .nscc-nav-icon{width:12px;height:12px}.nscx-support strong{display:block;margin-top:3px;font-size:9px;line-height:1.15;padding-right:10px}.nscx-support small{display:block;margin-top:3px;color:#60758f;font-size:7px;line-height:1.2}.nscx-support-status{position:absolute;right:6px;top:6px;width:7px;height:7px;border-radius:50%;background:#18a565}.nscx-support-status.draft{background:#8244e8}.nscx-support-status.unfilled{background:#ff6a0b}.nscx-support-status.conflict,.nscx-support-status.cancelled{background:#e73e49}.nscx-drag-handle{position:absolute;right:4px;bottom:4px;color:#7890aa;font-size:10px;letter-spacing:-2px}
.nscx-drag-feedback{position:fixed;z-index:2147483600;min-width:200px;padding:9px 11px;border-radius:10px;background:#082b62;color:#fff;box-shadow:0 12px 28px rgba(8,43,98,.25);font:800 10px/1.4 Arial;pointer-events:none}.nscx-drag-feedback span{color:#ffc7cb}.nscx-drag-placeholder{position:absolute;left:5px;width:calc(100% - 10px);z-index:20;padding:7px;border:2px dashed #8ec9fa;border-radius:10px;background:rgba(234,246,255,.78);pointer-events:none;color:#0872d5;font:800 9px Arial}
.nscx-attention{padding:17px}.nscx-attention h2{margin:0;color:#082b62;font-size:20px}.nscx-attention-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:13px 0}.nscx-attention-grid div{padding:9px 3px;border-radius:10px;background:#f4f7fa;text-align:center}.nscx-attention-grid strong,.nscx-attention-grid span{display:block}.nscx-attention-grid strong{font-size:17px}.nscx-attention-grid span{margin-top:3px;color:#687c94;font-size:6px;font-weight:900}.nscx-attention-list{display:grid;gap:6px;margin:10px 0 14px}.nscx-attention-list button{padding:9px;border:1px solid #e0e8f0;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.nscx-attention-list strong,.nscx-attention-list span{display:block}.nscx-attention-list strong{color:#14365f;font-size:9px}.nscx-attention-list span{margin-top:3px;color:#71839a;font-size:7px}

/* ---------------------------------------------------------
   PROFILE, copied structurally from supplied concept and wired to live API
   --------------------------------------------------------- */
.nscx-profile-header{padding:20px 22px;display:flex;align-items:center;gap:18px;border:1px solid #dce6ef;border-radius:20px;background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:var(--nsc-shadow);position:relative;overflow:hidden}.nscx-profile-header::after{content:"NS";position:absolute;right:-28px;top:-48px;color:color-mix(in srgb,var(--nscc-personal) 6%,transparent);font-size:150px;font-weight:900;font-style:italic;letter-spacing:-50px}.nscx-profile-avatar-wrap{position:relative;z-index:2}.nscx-profile-avatar{width:92px;height:92px;display:grid;place-items:center;overflow:hidden;border:4px solid #fff;border-radius:28px;background:color-mix(in srgb,var(--nscc-personal) 12%,white);color:var(--nscc-personal);box-shadow:0 12px 28px rgba(8,43,98,.12);font-size:26px;font-weight:900}.nscx-profile-avatar img{width:100%;height:100%;object-fit:cover}.nscx-avatar-camera{width:34px;height:34px;position:absolute;right:-7px;bottom:-7px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;background:var(--nscc-personal);color:#fff;cursor:pointer}.nscx-profile-identity{position:relative;z-index:2}.nscx-profile-identity>span:first-child{color:var(--nscc-personal);font-size:7px;font-weight:900;letter-spacing:1px}.nscx-profile-identity h1{margin:5px 0 4px;color:#082b62;font-size:31px;line-height:1}.nscx-profile-identity p{margin:0;color:#62768f;font-size:10px}.nscx-profile-status{display:inline-flex;margin-top:10px;padding:5px 8px;border-radius:999px;background:#edf9f3;color:#18a565;font-size:7px;font-weight:900}.nscx-profile-header-actions{margin-left:auto;position:relative;z-index:2}.nscx-profile-complete{width:78px;height:78px;display:grid;place-items:center;align-content:center;border-radius:50%;background:#fff;border:1px solid #dce6ef;box-shadow:0 8px 18px rgba(8,43,98,.08)}.nscx-profile-complete strong{color:var(--nscc-personal);font-size:19px}.nscx-profile-complete small{color:#73859a;font-size:7px}
.nscx-profile-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;margin-top:14px}.nscx-profile-summary{padding:18px;border:1px solid #dce6ef;border-radius:18px;background:#fff;box-shadow:var(--nsc-shadow)}.nscx-completion-ring{--p:calc(var(--complete)*1%);width:112px;height:112px;margin:2px auto 20px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#fff 61%,transparent 62%),conic-gradient(var(--nscc-personal) var(--p),#e9eef4 0)}.nscx-completion-ring strong{color:#082b62;font-size:20px}.nscx-profile-summary h3{margin:0 0 12px;color:#082b62;font-size:14px}.nscx-profile-summary dl{margin:0;display:grid;gap:10px}.nscx-profile-summary dl div{padding-top:9px;border-top:1px solid #edf1f5}.nscx-profile-summary dt{color:#7a8ca2;font-size:7px;font-weight:900;text-transform:uppercase}.nscx-profile-summary dd{margin:3px 0 0;color:#24466e;font-size:9px;font-weight:700}
.nscx-profile-editor{min-width:0;border:1px solid #dce6ef;border-radius:18px;background:#fff;box-shadow:var(--nsc-shadow);overflow:hidden}.nscx-profile-tabs{display:flex;gap:2px;padding:7px;background:#f5f8fb;border-bottom:1px solid #e1e9f1;overflow:auto}.nscx-profile-tabs button{min-height:38px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:#6c8098;font:900 8px Arial;letter-spacing:.4px;white-space:nowrap;cursor:pointer}.nscx-profile-tabs button.active{background:#fff;color:var(--nscc-personal);box-shadow:0 4px 11px rgba(8,43,98,.08)}.nscx-profile-panel{padding:18px}.nscx-profile-panel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.nscx-profile-panel-head h2{margin:0;color:#082b62;font-size:20px}.nscx-profile-panel-head p{margin:5px 0 0;color:#71839a;font-size:9px}.nscx-profile-panel .nscc-profile-form-card{box-shadow:none;border-radius:14px;margin:0 0 12px}.nscx-profile-panel .nscc-profile-form-card legend{color:#082b62;font-size:11px;font-weight:900}
.nscx-photo-preview{padding:16px;display:flex;align-items:center;gap:16px;border:1px solid #dfe7ef;border-radius:16px;background:#fbfcfe}.nscx-photo-preview .nscx-profile-avatar{width:86px;height:86px;border-radius:24px}.nscx-photo-preview strong{display:block;color:#082b62;font-size:12px}.nscx-photo-preview p{margin:4px 0 10px;color:#6d8096;font-size:8px}.nscx-photo-actions{display:flex;flex-wrap:wrap;gap:7px}.nscx-button{min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d9e4ef;border-radius:12px;background:#fff;color:#12365f;font:800 11px Arial,Helvetica,sans-serif;cursor:pointer}.nscx-button.primary{border-color:var(--nscc-personal);background:var(--nscc-personal);color:#fff}.nscx-button.danger{border-color:#ffd0d0;background:#fff2f2;color:#c72f39}.nscx-button.small{min-height:32px;padding:0 11px;font-size:10px}.nscx-appearance-group{margin-top:18px}.nscx-appearance-group h3{margin:0;color:#082b62;font-size:14px}.nscx-appearance-group p{margin:5px 0 12px;color:#71839a;font-size:9px}.nscx-swatches{display:flex;flex-wrap:wrap;gap:9px}.nscx-swatch{width:32px;height:32px;padding:0;border:3px solid #fff;border-radius:10px;background:var(--swatch);box-shadow:0 0 0 1px #d7e1eb;cursor:pointer}.nscx-swatch.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--nscc-personal) 32%,white)}.nscx-swatch-custom{position:relative;overflow:hidden}.nscx-swatch-custom::after{content:"+";display:grid;place-items:center;width:100%;height:100%;color:#fff;font-weight:900;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.nscx-setting-list{display:grid;gap:8px;margin-top:18px}.nscx-setting-row{min-height:60px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dfe7ef;border-radius:13px;background:#fff}.nscx-setting-row strong,.nscx-setting-row span{display:block}.nscx-setting-row strong{color:#173d66;font-size:10px}.nscx-setting-row span{margin-top:3px;color:#788a9e;font-size:8px}.nscx-segment{display:flex;padding:4px;border-radius:10px;background:#edf3f8}.nscx-segment button{min-height:30px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:#6e8197;font:800 8px Arial;cursor:pointer}.nscx-segment button.active{background:#fff;color:var(--nscc-personal);box-shadow:0 3px 8px rgba(8,43,98,.08)}.nscx-security-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}.nscx-security-cards article{padding:14px;border:1px solid #dfe7ef;border-radius:14px;background:#f9fbfd}.nscx-security-cards span,.nscx-security-cards strong{display:block}.nscx-security-cards span{color:#72849a;font-size:7px;font-weight:900;text-transform:uppercase}.nscx-security-cards strong{margin-top:5px;color:#12365f;font-size:11px}.nscx-profile-savebar{margin-top:15px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #e6edf3;background:#fbfcfe}.nscx-profile-savebar strong,.nscx-profile-savebar span{display:block}.nscx-profile-savebar strong{color:#173d66;font-size:10px}.nscx-profile-savebar span{margin-top:3px;color:#74869b;font-size:8px}

/* Role portal refinements */
#nscc-app .nscc-shell-worker .nscc-nav button[aria-current="page"]{--nscc-personal:#18a565}#nscc-app .nscc-shell-participant .nscc-nav button[aria-current="page"]{--nscc-personal:#8244e8}#nscc-app .nscc-shell-representative .nscc-nav button[aria-current="page"]{--nscc-personal:#ff5b08}
#nscc-app .nscc-worker-hero,#nscc-app .nscc-participant-hero{border:1px solid #dce6ef;border-radius:22px;background:linear-gradient(120deg,#fff,#f8fbfe);box-shadow:var(--nsc-shadow);overflow:hidden}#nscc-app .nscc-worker-next,#nscc-app .nscc-participant-next{border-radius:18px}

/* Personal density + motion */
#nscc-app.nscc-density-compact .nscc-main{padding-top:14px}#nscc-app.nscc-density-compact .nscc-card{padding:13px}#nscc-app.nscc-density-compact .nscc-section{margin-top:16px}#nscc-app.nscc-density-compact .nscc-row{padding:10px 12px}#nscc-app.nscc-density-compact .nscx-profile-panel{padding:13px}
#nscc-app.nscc-motion-reduced *,#nscc-app.nscc-motion-reduced *::before,#nscc-app.nscc-motion-reduced *::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}

/* Focus */
#nscc-app :focus-visible,.nsc-login-section :focus-visible,.nscc-auth-card :focus-visible{outline:3px solid color-mix(in srgb,var(--nscc-personal,#087cf0) 32%,transparent);outline-offset:2px}

@media(max-width:1250px){.nsc-login-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nsc-card-hero{min-height:325px}.nsc-person-wrap{width:195px;height:205px}.nscnew-people-zone{right:2%;width:320px}.nscnew-banner-copy{max-width:56%}}
@media(max-width:1050px){#nscc-app .nscc-layout{grid-template-columns:205px minmax(0,1fr)}.nscx-roster-grid-layout{grid-template-columns:1fr}.nscx-attention{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start}.nscx-attention-grid{margin:0}.nscx-profile-layout{grid-template-columns:1fr}.nscx-profile-summary{display:grid;grid-template-columns:130px 1fr;gap:12px}.nscnew-people-zone{opacity:.55}.nscnew-banner-copy{max-width:68%}}
@media(max-width:820px){#nscc-app .nscc-layout{display:block}#nscc-app .nscc-sidebar{display:none}#nscc-app .nscc-topbar{margin:10px 10px 0;border-radius:13px}#nscc-app .nscc-main{padding:16px 12px 92px}.nscx-roster-toolbar{grid-template-columns:1fr 1fr}.nscx-attention{display:block}.nscnew-dashboard-banner{min-height:225px;padding:24px !important}.nscnew-banner-copy{max-width:68%}.nscnew-people-zone{right:-25px;width:270px;height:210px}.nscx-profile-header{align-items:flex-start}.nscx-profile-layout{display:block}.nscx-profile-summary{margin-bottom:12px}.nscx-profile-summary{display:grid}.nsc-login-grid{grid-template-columns:1fr}.nsc-login-card{width:min(570px,100%);margin:auto}}
@media(max-width:620px){.nsc-login-section{padding:17px 11px 30px}.nsc-card-hero{min-height:315px;padding:22px 18px 0}.nsc-login-form{padding:16px 18px 23px}.nsc-card-logo{width:177px}.nsc-hero-layout{grid-template-columns:minmax(0,1fr) 140px}.nsc-person-wrap{width:150px;height:168px}.nsc-hero-copy h2{font-size:20px}.nsc-hero-copy p{font-size:9px}.nscx-roster-toolbar{grid-template-columns:1fr}.nscx-roster-tabs,.nscx-service-chips{grid-column:auto}.nscx-summary{grid-template-columns:1fr 1fr}.nscnew-dashboard-banner{min-height:250px}.nscnew-banner-copy{max-width:100%;padding-right:84px}.nscnew-banner-copy h1{font-size:30px}.nscnew-people-zone{opacity:.22;right:-80px;width:250px}.nscx-profile-header{flex-direction:column}.nscx-profile-header-actions{margin:0}.nscx-profile-summary{display:block}.nscx-profile-avatar{width:82px;height:82px}.nscx-profile-identity h1{font-size:27px}.nscx-profile-tabs{position:sticky;top:0;z-index:5}.nscx-security-cards{grid-template-columns:1fr}.nscx-profile-savebar{align-items:flex-start;flex-direction:column}.nscx-profile-savebar .nscx-button{width:100%}}

/* ---------------------------------------------------------
   DIALOGS, ACCOUNT MENUS AND FORM OVERLAYS
   Keep all existing modal workflows, but present them in the supplied concept language.
   --------------------------------------------------------- */
.nscc-modal-backdrop{position:fixed!important;inset:0!important;z-index:10000!important;display:grid!important;place-items:center!important;padding:24px!important;background:rgba(8,43,98,.28)!important;backdrop-filter:blur(8px)!important}
.nscc-modal{width:min(760px,100%)!important;max-height:min(88vh,900px)!important;overflow:auto!important;border:1px solid rgba(205,219,233,.95)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 30px 90px rgba(8,43,98,.24)!important}
.nscc-modal-head{position:sticky!important;top:0!important;z-index:4!important;min-height:68px!important;padding:14px 18px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;border-bottom:1px solid #e6edf4!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(10px)!important}
.nscc-modal-head h2{margin:0!important;color:#082b62!important;font-size:20px!important;line-height:1.15!important;letter-spacing:-.02em!important}.nscc-modal-body{padding:18px!important}.nscc-modal .nscc-card{box-shadow:none!important}.nscc-icon-button{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;padding:0!important;border:1px solid #dce5ee!important;border-radius:11px!important;background:#f8fafc!important;color:#526b87!important;font-size:21px!important;cursor:pointer!important}.nscc-icon-button:hover{background:#eef4f9!important;color:#082b62!important}
#nscc-app .nscc-account-menu{z-index:5000!important;min-width:250px!important;padding:8px!important;border:1px solid #dce6ef!important;border-radius:16px!important;background:#fff!important;box-shadow:0 18px 46px rgba(8,43,98,.16)!important}#nscc-app .nscc-account-menu button,#nscc-app .nscc-account-menu a{min-height:40px!important;border-radius:10px!important;color:#355676!important;font-size:9px!important;font-weight:800!important}#nscc-app .nscc-account-menu button:hover,#nscc-app .nscc-account-menu a:hover{background:#f3f7fa!important;color:#082b62!important}
#nscc-app .nscc-form .nscc-field label,#nscc-app .nscc-field>label{color:#516983!important;font-size:8px!important;font-weight:900!important;letter-spacing:.02em!important}#nscc-app .nscc-form input,#nscc-app .nscc-form select,#nscc-app .nscc-form textarea{border:1px solid #d6e1eb!important;border-radius:11px!important;background:#fff!important;color:#173d66!important;box-shadow:none!important}#nscc-app .nscc-form input:focus,#nscc-app .nscc-form select:focus,#nscc-app .nscc-form textarea:focus{border-color:color-mix(in srgb,var(--nscc-personal) 55%,#d6e1eb)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--nscc-personal) 9%,transparent)!important;outline:0!important}
@media(max-width:620px){.nscc-modal-backdrop{padding:10px!important;place-items:end center!important}.nscc-modal{width:100%!important;max-height:92vh!important;border-radius:20px 20px 12px 12px!important}.nscc-modal-body{padding:14px!important}}

/* =========================================================
   RELEASE 1.5.0 · supplied-concept fidelity + NS CARE+ logo palette
   ========================================================= */
.nsc-card-logo,.nscc-concept-brand-logo,#nscc-app .nscc-mobile-brand img,#nscc-app .nscc-payroll-hero-logo img{filter:var(--nscc-logo-filter,none)!important;transition:filter .18s ease,transform .18s ease}
.nsc-admin-card{--nscc-logo-filter:brightness(0) saturate(100%) invert(37%) sepia(96%) saturate(2816%) hue-rotate(196deg) brightness(99%) contrast(96%)}
.nsc-worker-card{--nscc-logo-filter:brightness(0) saturate(100%) invert(47%) sepia(91%) saturate(633%) hue-rotate(103deg) brightness(91%) contrast(92%)}
.nsc-participant-card{--nscc-logo-filter:brightness(0) saturate(100%) invert(36%) sepia(92%) saturate(1904%) hue-rotate(246deg) brightness(92%) contrast(98%)}
.nsc-family-card{--nscc-logo-filter:brightness(0) saturate(100%) invert(46%) sepia(98%) saturate(2722%) hue-rotate(3deg) brightness(105%) contrast(104%)}
#nscc-app .nscc-shell-admin{--nscc-logo-filter:brightness(0) saturate(100%) invert(37%) sepia(96%) saturate(2816%) hue-rotate(196deg) brightness(99%) contrast(96%)}
#nscc-app .nscc-shell-worker{--nscc-logo-filter:brightness(0) saturate(100%) invert(47%) sepia(91%) saturate(633%) hue-rotate(103deg) brightness(91%) contrast(92%)}
#nscc-app .nscc-shell-participant{--nscc-logo-filter:brightness(0) saturate(100%) invert(36%) sepia(92%) saturate(1904%) hue-rotate(246deg) brightness(92%) contrast(98%)}
#nscc-app .nscc-shell-representative{--nscc-logo-filter:brightness(0) saturate(100%) invert(46%) sepia(98%) saturate(2722%) hue-rotate(3deg) brightness(105%) contrast(104%)}
/* The supplied brand file contains its own CARE. CONNECT. EMPOWER. tagline. */
.nsc-card-logo-wrap .nsc-logo-tagline,#nscc-app .nscc-concept-brand-tag{display:none!important}
.nsc-card-logo{width:210px!important;max-width:82%!important}.nscc-concept-brand-logo{width:190px!important}.nscc-mobile-brand img{width:118px!important;height:auto!important}
#nscc-app .nscc-sidebar{padding-top:20px!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 70%,#f7fbff 100%)!important}
#nscc-app .nscc-sidebar-brand{min-height:88px!important;padding-bottom:19px!important}
#nscc-app .nscc-nav{gap:15px!important}
#nscc-app .nscc-nav button{position:relative!important;overflow:hidden!important}
#nscc-app .nscc-nav button[aria-current="page"]::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--nscc-personal)}
#nscc-app .nscc-page{max-width:1540px;margin:0 auto}
#nscc-app .nscc-page-header{padding-left:4px}
#nscc-app .nscc-page-header h1{font-size:clamp(28px,3vw,43px)!important;letter-spacing:-.045em!important}
#nscc-app .nscc-page-header p{max-width:780px!important;color:#526b88!important;line-height:1.55!important}
#nscc-app .nscc-panel,#nscc-app .nscc-card{border-color:#dfe8f0!important;box-shadow:0 10px 27px rgba(8,43,98,.055)!important}
#nscc-app .nscc-panel{border-radius:18px!important;overflow:hidden}
#nscc-app .nscc-card{border-radius:17px!important}
#nscc-app .nscc-button{border-radius:11px!important;font-weight:800!important}

/* SCHADS flags in roster forms */
.nscc-award-shift-fields{margin:18px 0!important;padding:16px!important;border:1px solid #dce8f2!important;background:linear-gradient(145deg,#fbfdff,#f5faff)!important}
.nscc-award-shift-fields legend{padding:0 7px;color:#082b62;font-size:11px;font-weight:900}.nscc-award-checks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:10px}

/* =========================================================
   ADMIN-ONLY AUDIT LOG
   ========================================================= */
.nscc-audit-hero{position:relative;min-height:190px;margin:12px 0 20px;padding:26px 28px;display:grid;grid-template-columns:58px minmax(0,1fr) minmax(270px,.55fr);align-items:center;gap:18px;overflow:hidden;border:1px solid #d8e5f0;border-radius:22px;background:radial-gradient(circle at 94% 15%,rgba(8,124,240,.09),transparent 26%),linear-gradient(135deg,#fff 0%,#f8fbff 68%,#eef7ff 100%);box-shadow:0 16px 38px rgba(8,43,98,.07)}
.nscc-audit-hero::after{content:"NS";position:absolute;right:310px;top:-52px;color:rgba(8,43,98,.025);font-size:180px;font-style:italic;font-weight:900;letter-spacing:-60px;pointer-events:none}.nscc-audit-hero-mark{width:54px;height:54px;padding:14px;display:grid;place-items:center;color:#087cf0;background:#edf6ff;border:1px solid rgba(8,124,240,.15);border-radius:16px}.nscc-audit-hero-mark .nscc-nav-icon{width:26px;height:26px}.nscc-audit-hero h2{margin:5px 0 7px;color:#082b62;font-size:25px;letter-spacing:-.035em}.nscc-audit-hero p{margin:0;max-width:700px;color:#536b87;font-size:11px;line-height:1.6}.nscc-audit-verify{position:relative;z-index:2;min-height:106px;padding:15px;display:flex;align-items:center;gap:12px;border:1px solid #dce6ef;border-radius:16px;background:rgba(255,255,255,.92);box-shadow:0 10px 25px rgba(8,43,98,.055)}.nscc-audit-verify strong,.nscc-audit-verify span,.nscc-audit-verify small{display:block}.nscc-audit-verify strong{color:#082b62;font-size:12px}.nscc-audit-verify span{margin-top:5px;color:#4f6785;font-size:8px}.nscc-audit-verify small{margin-top:5px;color:#8291a3;font-size:7px}.nscc-audit-shield{width:40px;height:40px;padding:9px;display:grid;place-items:center;border-radius:12px}.nscc-audit-shield.is-verified{color:#11794c;background:#edf9f3}.nscc-audit-shield.is-exception{color:#b42c3e;background:#fff0f2}.nscc-audit-metrics .nscc-card{min-height:122px;display:flex;flex-direction:column;justify-content:center}.nscc-audit-metrics span{color:#6c7f94;font-size:9px;font-weight:800}.nscc-audit-metrics strong{margin:7px 0;color:#082b62;font-size:25px;letter-spacing:-.04em}.nscc-audit-metrics small{color:#7c8da1;font-size:8px;line-height:1.45}.nscc-audit-panel{margin-top:20px}.nscc-audit-controls{padding:12px;display:grid;grid-template-columns:minmax(220px,1.4fr) 190px 150px 150px auto auto;gap:9px;border:1px solid #e2eaf1;border-radius:14px;background:#f8fafc}.nscc-audit-controls input,.nscc-audit-controls select{min-height:40px;border:1px solid #d8e2eb;border-radius:10px;background:#fff;color:#29486f;font:700 9px Arial,Helvetica,sans-serif}.nscc-audit-search{position:relative}.nscc-audit-search>.nscc-nav-icon{position:absolute;left:11px;top:10px;width:17px;height:17px;color:#7890a8}.nscc-audit-search input{width:100%;padding-left:34px}.nscc-audit-table{margin-top:14px;border:1px solid #e0e8ef;border-radius:14px;overflow:hidden}.nscc-audit-row{width:100%;min-height:68px;padding:10px 13px;display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(135px,1fr) minmax(120px,.8fr) minmax(110px,.75fr) minmax(105px,.7fr) minmax(140px,.9fr);align-items:center;gap:11px;text-align:left;border:0;border-bottom:1px solid #e8edf3;background:#fff;color:#29486f;font-family:inherit;cursor:pointer}.nscc-audit-row:last-child{border-bottom:0}.nscc-audit-row:not(.nscc-audit-head):hover{background:#f8fbfe}.nscc-audit-row>span{min-width:0}.nscc-audit-row strong,.nscc-audit-row small{display:block}.nscc-audit-row strong{overflow:hidden;color:#173d66;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.nscc-audit-row small{margin-top:4px;overflow:hidden;color:#7b8da1;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.nscc-audit-row code{font-size:7px;color:#435d78}.nscc-audit-head{min-height:36px;background:#f5f8fb!important;color:#7a8ca0!important;font-size:7px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;cursor:default}.nscc-audit-dot{width:8px;height:8px;margin-right:6px;display:inline-block;border-radius:50%;background:#758da5}.nscc-audit-dot.is-access{background:#087cf0}.nscc-audit-dot.is-roster{background:#18a565}.nscc-audit-dot.is-payroll{background:#8244e8}.nscc-audit-dot.is-quality{background:#e4475b}.nscc-audit-dot.is-integration{background:#ff5b08}.nscc-audit-dot.is-configuration{background:#082b62}.nscc-audit-footer{padding:11px 2px 0;color:#778ba1;font-size:8px}.nscc-audit-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.nscc-audit-detail-grid>div{min-height:62px;padding:11px;border:1px solid #e2e9f0;border-radius:11px;background:#f8fafc}.nscc-audit-detail-grid span,.nscc-audit-detail-grid strong{display:block}.nscc-audit-detail-grid span{color:#8090a4;font-size:7px;font-weight:800;text-transform:uppercase}.nscc-audit-detail-grid strong{margin-top:5px;overflow-wrap:anywhere;color:#173d66;font-size:9px}.nscc-audit-detail details{margin-top:12px;padding:11px;border:1px solid #e0e7ee;border-radius:11px}.nscc-audit-detail summary{color:#173d66;font-size:9px;font-weight:900;cursor:pointer}.nscc-audit-detail pre,.nscc-payload-preview pre{max-height:310px;overflow:auto;padding:12px;border-radius:9px;background:#081d38;color:#d9ecff;font:8px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}

/* =========================================================
   SCHADS + PAYROLL / ERP HUB
   ========================================================= */
.nscc-payroll-hero{min-height:205px;margin:12px 0 20px;padding:27px 30px;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:22px;overflow:hidden;border:1px solid #dbe7ef;border-radius:22px;background:radial-gradient(circle at 85% 20%,rgba(24,165,101,.11),transparent 26%),radial-gradient(circle at 95% 90%,rgba(255,91,8,.07),transparent 30%),linear-gradient(135deg,#fff,#f6fbf8);box-shadow:0 16px 40px rgba(8,43,98,.07)}.nscc-payroll-hero h2{margin:6px 0 8px;color:#082b62;font-size:27px;letter-spacing:-.04em}.nscc-payroll-hero p{max-width:800px;margin:0;color:#526b87;font-size:11px;line-height:1.6}.nscc-payroll-rule-pills{margin-top:14px;display:flex;flex-wrap:wrap;gap:7px}.nscc-payroll-rule-pills span{padding:7px 9px;border:1px solid rgba(24,165,101,.17);border-radius:8px;background:#edf9f3;color:#18754e;font-size:7px;font-weight:900}.nscc-payroll-hero-logo{height:145px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(24,165,101,.16);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 12px 29px rgba(8,43,98,.055)}.nscc-payroll-hero-logo img{max-width:180px;filter:brightness(0) saturate(100%) invert(47%) sepia(91%) saturate(633%) hue-rotate(103deg) brightness(91%) contrast(92%)!important}.nscc-payroll-hero-logo strong{margin-top:5px;color:#18a565;font-size:7px;letter-spacing:.09em}.nscc-payroll-workspace{align-items:start}.nscc-payroll-summary{margin-top:16px}.nscc-payroll-summary .nscc-card{min-height:124px}.nscc-payroll-summary span{color:#6e8197;font-size:9px;font-weight:800}.nscc-payroll-summary strong{display:block;margin:7px 0;color:#082b62;font-size:23px}.nscc-payroll-summary small{color:#7e90a4;font-size:8px;line-height:1.4}.nscc-payroll-warnings{margin:14px 0;padding:15px;border:1px solid #f3d6a9;border-radius:14px;background:#fff8ec}.nscc-payroll-warnings>strong{display:block;margin-bottom:8px;color:#8f5a0b;font-size:10px}.nscc-payroll-warnings>div{padding:6px 0;display:flex;align-items:flex-start;gap:8px;color:#72541e;font-size:8px;line-height:1.5}.nscc-payroll-warnings .nscc-nav-icon{width:15px;height:15px;color:#d08a19}.nscc-pay-lines{margin-top:15px}.nscc-pay-lines code{font-size:8px;color:#385e7e}.nscc-payload-preview{margin-top:14px}.nscc-payload-preview summary{color:#294d73;font-size:9px;font-weight:900;cursor:pointer}.nscc-payroll-review-bar{margin-top:14px;padding:15px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d9e5ed;border-radius:14px;background:#f7fbfd}.nscc-payroll-review-bar .nscc-checkbox{max-width:820px}.nscc-connector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.nscc-connector-card{min-height:235px;padding:17px;display:grid;grid-template-columns:43px 1fr;align-content:start;gap:12px;border:1px solid #dfe7ef;border-top:4px solid #bdc9d5;border-radius:18px;background:#fff;box-shadow:0 10px 27px rgba(8,43,98,.055)}.nscc-connector-card.is-enabled{border-top-color:#18a565}.nscc-connector-icon{width:41px;height:41px;padding:9px;display:grid;place-items:center;border-radius:12px;background:#f1f6fa;color:#087cf0}.nscc-connector-icon .nscc-nav-icon{width:21px;height:21px}.nscc-connector-card h3{margin:4px 0 7px;color:#082b62;font-size:14px}.nscc-connector-card p{min-height:52px;margin:0;color:#667b92;font-size:8px;line-height:1.55}.nscc-connector-state{margin-top:10px;display:flex;align-items:center;gap:8px}.nscc-connector-state small{color:#7d8ea2;font-size:7px}.nscc-connector-actions{grid-column:1/-1;margin-top:auto;display:flex;align-items:center;gap:7px}.nscc-worker-payroll-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.nscc-worker-payroll-grid .nscc-card{min-height:145px}.nscc-worker-payroll-grid .nscc-section-title>div{display:flex;align-items:center;gap:9px}.nscc-worker-payroll-grid p{color:#72859a;font-size:8px}.nscc-worker-payroll-grid .nscc-avatar{width:35px;height:35px;font-size:9px}

@media(max-width:1180px){.nscc-audit-hero{grid-template-columns:54px 1fr}.nscc-audit-verify{grid-column:1/-1}.nscc-audit-controls{grid-template-columns:1fr 1fr 1fr}.nscc-audit-row{grid-template-columns:minmax(180px,1.3fr) minmax(130px,1fr) minmax(110px,.8fr) minmax(120px,.9fr)}.nscc-audit-row>span:nth-child(4),.nscc-audit-head>span:nth-child(4),.nscc-audit-row>span:nth-child(6),.nscc-audit-head>span:nth-child(6){display:none}.nscc-connector-grid,.nscc-worker-payroll-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.nscc-audit-hero{display:block;padding:20px}.nscc-audit-hero-mark{margin-bottom:12px}.nscc-audit-verify{margin-top:15px}.nscc-audit-controls{grid-template-columns:1fr}.nscc-audit-table{overflow:auto}.nscc-audit-row{min-width:650px}.nscc-audit-detail-grid{grid-template-columns:1fr}.nscc-payroll-hero{display:block;padding:21px}.nscc-payroll-hero-logo{height:110px;margin-top:16px}.nscc-payroll-review-bar{align-items:stretch;flex-direction:column}.nscc-connector-grid,.nscc-worker-payroll-grid{grid-template-columns:1fr}}

/* =========================================================
   Release 1.6.0 interaction visibility repairs
   ========================================================= */
/* Keep concept quick actions readable even when the host theme applies a
   global button:hover colour such as white text on dark buttons. */
#nscc-app .nscc-quick-action,
#nscc-app .nscc-quick-action:hover,
#nscc-app .nscc-quick-action:focus,
#nscc-app .nscc-quick-action:active,
#nscc-app .nscc-participant-quick button,
#nscc-app .nscc-participant-quick button:hover,
#nscc-app .nscc-participant-quick button:focus,
#nscc-app .nscc-participant-quick button:active {
  color:#082b62!important;
  background:#fff!important;
  text-shadow:none!important;
}
#nscc-app .nscc-quick-action strong,
#nscc-app .nscc-quick-action:hover strong,
#nscc-app .nscc-quick-action:focus strong,
#nscc-app .nscc-participant-quick button strong,
#nscc-app .nscc-participant-quick button:hover strong,
#nscc-app .nscc-participant-quick button:focus strong { color:#082b62!important; }
#nscc-app .nscc-quick-action small,
#nscc-app .nscc-quick-action:hover small,
#nscc-app .nscc-quick-action:focus small,
#nscc-app .nscc-participant-quick button small,
#nscc-app .nscc-participant-quick button:hover small,
#nscc-app .nscc-participant-quick button:focus small { color:#718198!important; }

/* Modals must not visually wash out the application beneath them. This keeps
   validation/error context visible while retaining click-outside behaviour. */
.nscc-modal-backdrop{
  background:rgba(245,248,252,.08)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nscc-toast-zone{z-index:10050!important}
.nscc-toast{box-shadow:0 16px 48px rgba(8,43,98,.24)!important}
.nscc-toast-error{background:#b42318!important;color:#fff!important}

/* Invitation composer */
.nscc-invite-recipient{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid #dfe8f0;border-radius:16px;background:#f8fbfe}
.nscc-invite-recipient strong,.nscc-invite-recipient span{display:block}.nscc-invite-recipient strong{color:#082b62;font-size:12px}.nscc-invite-recipient span{margin-top:3px;color:#718198;font-size:10px}
.nscc-invite-badge{padding:6px 9px;border-radius:999px;background:#edf6ff;color:#087cf0;font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.nscc-invite-editor{display:grid;gap:14px;margin-top:16px}
.nscc-invite-editor textarea{min-height:190px;resize:vertical}
.nscc-invite-link{word-break:break-all}
.nscc-invite-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin-top:4px}
