:root{--nj-navy:#173D70;--nj-blue:#2878C8;--nj-green:#16A36B;--nj-bg:#F4F6FA;--nj-white:#fff;--nj-text:#1f2937;--nj-muted:#5b6475}
body{background:var(--nj-bg);color:var(--nj-text);font-family:"Inter","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif}
a{color:var(--nj-blue)}
.btn-primary{--bs-btn-bg:var(--nj-blue);--bs-btn-border-color:var(--nj-blue);--bs-btn-hover-bg:var(--nj-navy);--bs-btn-hover-border-color:var(--nj-navy);--bs-btn-active-bg:var(--nj-navy)}
.btn-success{--bs-btn-bg:var(--nj-green);--bs-btn-border-color:var(--nj-green)}
.btn-outline-primary{--bs-btn-color:var(--nj-blue);--bs-btn-border-color:var(--nj-blue);--bs-btn-hover-bg:var(--nj-blue)}
.nj-navbar{background:var(--nj-white);box-shadow:0 1px 8px rgba(23,61,112,.08)}
.nj-navbar .navbar-brand{color:var(--nj-navy);font-size:1.4rem}
.nj-navbar .navbar-brand span{color:var(--nj-blue)}
.nj-footer{background:var(--nj-navy);color:#c9d6ea}
.nj-footer a{color:#c9d6ea;text-decoration:none}.nj-footer a:hover{color:#fff}
.nj-hero{background:linear-gradient(135deg,var(--nj-navy),var(--nj-blue));color:#fff;padding:64px 0}
.nj-card{background:var(--nj-white);border:0;border-radius:12px;box-shadow:0 2px 10px rgba(23,61,112,.07)}
.auth-wrap{max-width:520px;margin:32px auto}
/* dashboards */
.dash{display:flex;min-height:100vh}
.dash-sidebar{width:250px;background:var(--nj-navy);color:#c9d6ea;flex-shrink:0;padding:18px 0;transition:transform .2s}
.dash-sidebar .brand{color:#fff;font-weight:700;font-size:1.25rem;padding:0 20px 16px;display:block;text-decoration:none}
.dash-sidebar a.item{display:flex;align-items:center;gap:10px;color:#c9d6ea;padding:10px 20px;text-decoration:none;font-size:.95rem}
.dash-sidebar a.item:hover,.dash-sidebar a.item.active{background:rgba(255,255,255,.1);color:#fff}
.dash-main{flex:1;min-width:0}
.dash-top{background:#fff;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 6px rgba(23,61,112,.07)}
.dash-content{padding:24px}
.stat-card{padding:18px;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(23,61,112,.07);height:100%}
.stat-card .num{font-size:1.8rem;font-weight:700;color:var(--nj-navy)}
.stat-card .lbl{color:var(--nj-muted);font-size:.85rem}
.notif-item.unread{background:#eef5fd}
@media(max-width:991px){
 .dash-sidebar{position:fixed;inset:0 auto 0 0;z-index:1040;transform:translateX(-100%)}
 .dash-sidebar.open{transform:none}
}

/* NearbyJob final phase refinements */
:root{--nj-blue:#173d70;--nj-cyan:#00a6c7;--nj-bg:#f5f7fb}
body{background:var(--nj-bg);color:#243247}
.nj-card,.stat-card{background:#fff;border:1px solid #e8edf4;border-radius:14px;box-shadow:0 5px 22px rgba(20,45,80,.045)}
.nj-card{overflow:hidden}.nj-hero{padding:76px 0;background:linear-gradient(120deg,#173d70,#2366a5);color:#fff}
.nj-navbar{background:#fff;box-shadow:0 2px 12px rgba(20,45,80,.07)}
.btn-primary{background:#1d5b9e;border-color:#1d5b9e}.btn-primary:hover{background:#174777}
.dash-sidebar{background:#102d50}.dash-content{padding:24px}.dash-top{background:#fff;border-bottom:1px solid #e9eef5}
.table th{font-size:.82rem;color:#61738b;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.form-control,.form-select{border-color:#dce4ef;border-radius:8px;padding:.65rem .8rem}
.form-control:focus,.form-select:focus{border-color:#68a4dc;box-shadow:0 0 0 .2rem rgba(29,91,158,.12)}
.nj-footer{background:#102d50;color:#c9d5e4}.nj-footer a{color:#dce8f7;text-decoration:none}
@media(max-width:767px){.dash-content{padding:14px}.nj-hero{padding:48px 0}}

/* Shared dashboard refinements */
.dash-sidebar{box-shadow:8px 0 28px rgba(12,35,62,.08);overflow-y:auto}
.dash-sidebar .brand{letter-spacing:.2px;padding-top:6px}
.dash-sidebar .item{border-left:3px solid transparent;margin:2px 10px;border-radius:8px;padding:11px 13px!important}
.dash-sidebar .item.active{background:rgba(255,255,255,.14);border-left-color:#62b5ff}
.dash-top{position:sticky;top:0;z-index:1020;min-height:66px}
.dash-content{max-width:1680px;margin:0 auto}
.dash-footer{padding:14px 24px;color:#718096;font-size:.82rem;border-top:1px solid #e9eef5;background:#fff}
.table-responsive{border-radius:10px}
.table thead th{background:#f7f9fc}
@media(max-width:991px){.dash-sidebar{height:100dvh}.dash-sidebar.open:after{content:"";position:fixed;left:250px;top:0;width:calc(100vw - 250px);height:100dvh;background:rgba(10,25,45,.35);pointer-events:none}.dash-top{padding:10px 14px}.dash-content{padding:14px}}

/* NearbyJob modern responsive design system */
:root{--nj-navy:#102b4e;--nj-blue:#2563eb;--nj-blue-dark:#1749a5;--nj-cyan:#12a9c7;--nj-green:#0f9f6e;--nj-bg:#f4f7fb;--nj-text:#17263c;--nj-muted:#68778c;--nj-border:#e5ebf3;--nj-radius:16px;--nj-shadow:0 10px 30px rgba(16,43,78,.07)}
html{scroll-behavior:smooth}body{background:var(--nj-bg);color:var(--nj-text);font-family:Inter,"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;line-height:1.55}a{transition:color .18s ease}img{max-width:100%;height:auto}.container{--bs-gutter-x:1.5rem}
.btn{border-radius:10px;font-weight:600;transition:transform .18s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(16,43,78,.12)}.btn-primary{--bs-btn-bg:var(--nj-blue);--bs-btn-border-color:var(--nj-blue);--bs-btn-hover-bg:var(--nj-blue-dark);--bs-btn-hover-border-color:var(--nj-blue-dark)}.btn-success{--bs-btn-bg:var(--nj-green);--bs-btn-border-color:var(--nj-green)}
.nj-navbar{background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--nj-border);box-shadow:0 4px 18px rgba(16,43,78,.045);min-height:72px}.nj-navbar .navbar-brand{font-size:1.45rem;letter-spacing:-.7px;color:var(--nj-navy)}.nj-navbar .navbar-brand i{color:var(--nj-blue)}.nj-navbar .navbar-brand span{color:var(--nj-blue)}.nj-navbar .nav-link{font-weight:550;color:#43536a;padding:.7rem .85rem!important}.nj-navbar .nav-link:hover,.nj-navbar .nav-link:focus{color:var(--nj-blue)}.nj-contact-link{display:inline-flex;align-items:center;gap:8px;color:var(--nj-navy);font-size:.88rem;font-weight:700;text-decoration:none;padding:7px 10px;border-radius:9px;background:#f1f6ff}.nj-contact-link i{color:var(--nj-blue)}
.nj-hero{position:relative;overflow:hidden;padding:clamp(54px,8vw,100px) 0;background:radial-gradient(circle at 15% 20%,rgba(40,133,255,.25),transparent 32%),linear-gradient(125deg,#102b4e 0%,#174d86 58%,#176da2 100%);color:#fff}.nj-hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-120px;bottom:-210px;box-shadow:0 0 0 35px rgba(255,255,255,.035),0 0 0 75px rgba(255,255,255,.025);pointer-events:none}.nj-hero .container{position:relative;z-index:1}.nj-hero h1{letter-spacing:-1.4px;line-height:1.12}.nj-hero .lead{color:rgba(255,255,255,.84)}.nj-hero .form-control{min-height:54px;border:0;border-radius:11px}.nj-hero .btn{min-height:54px}
.nj-card,.stat-card{background:#fff;border:1px solid var(--nj-border);border-radius:var(--nj-radius);box-shadow:var(--nj-shadow);transition:transform .2s ease,box-shadow .2s ease}.nj-card{overflow:hidden}.nj-card:hover{box-shadow:0 14px 34px rgba(16,43,78,.1)}.stat-card{padding:22px}.stat-card .num{font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.7px;color:var(--nj-navy)}.stat-card .lbl{color:var(--nj-muted);font-weight:550}.auth-wrap{max-width:520px;margin:clamp(24px,5vw,56px) auto}.form-control,.form-select{min-height:44px;border:1px solid #dce5f0;border-radius:10px;padding:.65rem .85rem;color:var(--nj-text)}.form-control:focus,.form-select:focus{border-color:#79a9f8;box-shadow:0 0 0 .22rem rgba(37,99,235,.12)}textarea.form-control{min-height:120px}.form-label{font-weight:600;color:#34445b}.table{--bs-table-color:var(--nj-text);vertical-align:middle}.table th{font-size:.76rem;color:#63748c;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap;font-weight:750}.table thead th{background:#f5f8fc;border-bottom:1px solid var(--nj-border)}.table-responsive{border:1px solid var(--nj-border);border-radius:12px;background:#fff}.alert{border:0;border-radius:12px}.dropdown-menu{border:1px solid var(--nj-border);border-radius:12px;box-shadow:0 14px 35px rgba(16,43,78,.13);padding:.45rem}.dropdown-item{border-radius:8px;padding:.55rem .75rem}.badge{font-weight:650}
.nj-footer{background:linear-gradient(135deg,#0d2543,#153c67);color:#c9d6e8;padding-top:10px}.nj-footer a{color:#dce8f7;text-decoration:none}.nj-footer a:hover{color:#fff;text-decoration:underline}.nj-footer-contact{display:inline-block;margin:3px 0;font-size:.9rem}.nj-contact-panel{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;border:1px solid #dce8f7;border-radius:13px;background:#f5f9ff}.nj-contact-panel a:not(.btn){color:var(--nj-blue);font-size:1.1rem}
/* Dashboard shell */
.dash{display:flex;min-height:100vh;background:var(--nj-bg)}.dash-sidebar{width:264px;flex:0 0 264px;background:linear-gradient(180deg,#102b4e,#0b2039);color:#cbd8e8;padding:18px 0 22px;transition:transform .24s ease;box-shadow:8px 0 28px rgba(12,35,62,.09);overflow-y:auto;z-index:1045}.dash-sidebar .brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:800;font-size:1.3rem;letter-spacing:-.4px;padding:6px 20px 17px;text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#16b6c9);display:inline-flex;align-items:center;justify-content:center;color:white}.sidebar-support{margin:0 15px 15px;padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(255,255,255,.055);font-size:.78rem;color:#b8c9dd}.sidebar-support a{display:block;color:#fff;text-decoration:none;font-weight:700;margin:3px 0 0 25px}.dash-sidebar .item{display:flex;align-items:center;gap:11px;color:#c4d2e3;padding:11px 13px!important;text-decoration:none;font-size:.9rem;font-weight:550;border-left:3px solid transparent;margin:3px 10px;border-radius:9px;transition:background .18s,color .18s}.dash-sidebar .item i{font-size:1.05rem;width:19px;text-align:center}.dash-sidebar .item:hover,.dash-sidebar .item.active{background:rgba(255,255,255,.12);color:#fff}.dash-sidebar .item.active{border-left-color:#56b5ff;background:linear-gradient(90deg,rgba(59,130,246,.28),rgba(255,255,255,.07))}.dash-main{flex:1;min-width:0;display:flex;flex-direction:column}.dash-top{position:sticky;top:0;z-index:1020;min-height:76px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--nj-border);padding:12px 26px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dash-top h1{font-weight:750;letter-spacing:-.35px;color:var(--nj-navy)}.dash-top .btn-light{background:#f4f7fb;border:1px solid var(--nj-border);border-radius:10px}.dash-content{width:100%;max-width:1680px;margin:0 auto;padding:clamp(16px,2.5vw,30px);flex:1}.dash-footer{padding:15px 26px;color:#77869a;font-size:.82rem;border-top:1px solid var(--nj-border);background:#fff}.dash-overlay{display:none}.notif-item.unread{background:#eef5ff}.dash-content h2,.dash-content h3,.dash-content h4{letter-spacing:-.35px;color:#203550}.dash-content .nj-card{padding:clamp(16px,2vw,24px)}
@media(max-width:991.98px){.dash-sidebar{position:fixed;inset:0 auto 0 0;height:100dvh;width:min(290px,86vw);flex-basis:auto;transform:translateX(-105%);z-index:1055}.dash-sidebar.open{transform:translateX(0)}.dash-overlay{display:block;position:fixed;inset:0;border:0;background:rgba(7,20,38,.48);opacity:0;visibility:hidden;z-index:1050;transition:opacity .2s,visibility .2s}.dash-overlay.show{opacity:1;visibility:visible}.dash-top{padding:11px 15px;min-height:66px}.dash-content{padding:16px}.dash-footer{padding:13px 16px}}
@media(max-width:767.98px){.nj-navbar{min-height:62px}.nj-navbar .navbar-brand{font-size:1.25rem}.nj-navbar .navbar-collapse{padding:12px 0 8px}.nj-navbar .navbar-nav{margin-bottom:10px}.nj-nav-actions{align-items:stretch!important}.nj-contact-link{justify-content:center;flex:1}.nj-hero{padding:48px 0}.nj-hero h1{font-size:2.15rem}.nj-hero form>div{width:100%}.nj-hero .form-control,.nj-hero .btn{min-height:48px}.nj-footer .row>div{width:100%}.dash-top .dropdown-toggle{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-content{padding:13px}.dash-content .row{--bs-gutter-x: .8rem;--bs-gutter-y: .8rem}.stat-card{padding:16px}.nj-contact-panel{align-items:flex-start;flex-direction:column}.table-responsive{font-size:.88rem}}
@media(max-width:420px){.dash-top{gap:6px}.dash-top .btn{padding:.4rem .55rem}.dash-top .dropdown-toggle{font-size:.8rem;max-width:112px}.dash-top .dropdown-toggle .small{font-size:.75rem}.dash-content{padding:10px}.nj-hero h1{font-size:1.85rem}.container{--bs-gutter-x:1.1rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* NearbyJob typography, forms and verified-employer identity system */
:root{--nj-font:'Plus Jakarta Sans','DM Sans',system-ui,sans-serif;--nj-focus:rgba(37,99,235,.16);--nj-success:#087f5b;--nj-success-bg:#e8f8f1}
body{font-family:var(--nj-font);font-size:15px;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6,.navbar-brand,.btn,.form-label{font-family:var(--nj-font);letter-spacing:-.035em}
h1,h2,h3{font-weight:800}h4,h5,h6{font-weight:750}
p{line-height:1.72;color:#40516a}
/* Clear, recognizable verified employer badge. Only shown for DB-approved employers. */
.verified-employer-badge{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;white-space:nowrap;margin-left:7px;padding:5px 10px;border:1px solid #a8e5c8;border-radius:999px;background:linear-gradient(135deg,#effdf5,#e3f8ed);color:#087443;font-size:.72rem;line-height:1.2;font-weight:800;letter-spacing:0;box-shadow:0 2px 7px rgba(8,127,91,.07)}
.verified-employer-badge i{font-size:.9rem;color:#07945c}
.verified-employer-badge--sm{padding:4px 8px;font-size:.66rem;gap:5px;margin-left:5px}
/* Buttons */
.btn{min-height:42px;padding:.62rem 1rem;border-radius:11px;font-size:.9rem;font-weight:750;letter-spacing:-.015em;box-shadow:0 2px 5px rgba(16,43,78,.045)}
.btn-sm{min-height:34px;padding:.42rem .75rem;border-radius:9px;font-size:.8rem}
.btn-lg{min-height:50px;padding:.8rem 1.35rem;border-radius:13px}
.btn-primary{--bs-btn-bg:#245fe5;--bs-btn-border-color:#245fe5;--bs-btn-hover-bg:#194bbd;--bs-btn-hover-border-color:#194bbd;--bs-btn-active-bg:#194bbd;--bs-btn-focus-shadow-rgb:37,99,235}
.btn-success{--bs-btn-bg:#07865b;--bs-btn-border-color:#07865b;--bs-btn-hover-bg:#066b49;--bs-btn-hover-border-color:#066b49}
.btn-outline-primary{--bs-btn-color:#245fe5;--bs-btn-border-color:#c8d8fa;--bs-btn-hover-bg:#edf4ff;--bs-btn-hover-color:#194bbd;--bs-btn-hover-border-color:#9dbafa}
.btn:focus-visible,.form-control:focus-visible,.form-select:focus-visible{outline:3px solid var(--nj-focus);outline-offset:2px}
/* Forms */
.form-label{display:block;margin-bottom:.48rem;color:#293c56;font-size:.86rem;font-weight:750}
.form-control,.form-select{min-height:48px;padding:.72rem .95rem;border:1px solid #d9e2ef;border-radius:11px;background-color:#fff;color:#17263c;font-size:.92rem;font-weight:500;box-shadow:0 1px 2px rgba(16,43,78,.025);transition:border-color .18s,box-shadow .18s,background .18s}
.form-control::placeholder{color:#9aa8ba;font-weight:450}
.form-control:focus,.form-select:focus{border-color:#7ba5f5;box-shadow:0 0 0 4px rgba(37,99,235,.11);background:#fff}
textarea.form-control{min-height:132px;resize:vertical;line-height:1.65}
.form-check-input{width:1.1em;height:1.1em;border-color:#bdcadd;cursor:pointer}.form-check-input:checked{background-color:#245fe5;border-color:#245fe5}.form-check-label{color:#43546b;font-weight:550}
.input-group-text{border-color:#d9e2ef;border-radius:11px;background:#f5f8fc;color:#60728a;font-weight:650}
/* Public content cards and listings */
.company-card,.job-result-card{padding:clamp(18px,2.3vw,26px)!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.company-card:hover,.job-result-card:hover{transform:translateY(-3px);border-color:#cbdcf6;box-shadow:0 16px 36px rgba(16,43,78,.09)}
.company-card__top,.job-result-card__top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.company-avatar{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(135deg,#eaf2ff,#dceaff);color:#245fe5;font-size:1.2rem}
.company-openings,.job-type-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f1f5fb;color:#536780;font-size:.73rem;font-weight:750}
.company-title{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-bottom:8px;color:#172f50}
.company-location,.job-posted{color:#77869a;font-size:.78rem;font-weight:600}
.job-result-title{display:inline-block;color:#173b68;font-weight:800;letter-spacing:-.035em;line-height:1.35}
.job-result-title:hover{color:#245fe5}
.job-company-name{display:flex;align-items:center;flex-wrap:wrap;color:#344b68;font-size:.91rem}
/* Content hierarchy and reading comfort */
.container>h1{color:#152f50;letter-spacing:-.055em}
.nj-card h2,.nj-card h3{color:#1b3659}
.nj-card .text-muted,.text-muted{color:#718198!important}
.badge{letter-spacing:.01em;padding:.42em .65em}
/* Dashboard form/card consistency */
.dash-content .nj-card{border-radius:16px}
.dash-content .form-control,.dash-content .form-select{background-color:#fff}
.dash-content .table td{padding:.85rem .8rem}
@media(max-width:767.98px){
 body{font-size:14px}.verified-employer-badge{font-size:.65rem;padding:4px 8px}.verified-employer-badge--sm{font-size:.61rem}
 .btn{min-height:44px}.btn-sm{min-height:36px}.form-control,.form-select{min-height:47px;font-size:16px}
 .company-card__top,.job-result-card__top{align-items:flex-start}.company-title{font-size:1.05rem}
}
@media(prefers-reduced-motion:reduce){.company-card,.job-result-card{transition:none}}
