:root{--blue:#0269b8;--blue-dk:#01528f;--orange:#f39200;--grey:#dfdfdf;--mid:#8e8e8e;--ink:#1f2933;--bg:#f4f6f9;--r:10px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.6 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--blue)}a:hover{color:var(--blue-dk)}img{max-width:100%;height:auto}
h1,h2,h3{line-height:1.25;color:#123}h1{font-size:1.8rem;margin:.2em 0 .6em}h2{font-size:1.35rem}h3{font-size:1.1rem;margin:.2em 0 .5em}
.wrap{max-width:1140px;margin:0 auto;padding:0 18px}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.site-header{background:#fff;border-bottom:4px solid var(--blue);box-shadow:0 2px 8px rgba(0,0,0,.05)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px}
.logo img{display:block;width:220px}
.main-nav{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.main-nav a,.linkbtn{padding:8px 12px;border-radius:6px;text-decoration:none;color:#123;font-weight:bold;font-size:.95rem}
.main-nav a:hover{background:#eaf3fb;color:var(--blue)}
.nav-toggle,.nav-btn{display:none}
.hero{background:linear-gradient(135deg,var(--blue) 0%,#0a86d8 100%);color:#fff;padding:48px 0 54px}
.hero h1{color:#fff;font-size:2.3rem;margin:0}.hero p{font-size:1.15rem;opacity:.95;margin:.4em 0 1.2em}
.hero-search{display:flex;gap:8px;background:#fff;padding:8px;border-radius:var(--r);max-width:820px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.hero-search input,.hero-search select{border:0;flex:1;font-size:1rem;padding:12px;min-width:0}.hero-search select{flex:0 0 190px;border-left:1px solid var(--grey)}
.main{padding:28px 18px 48px}
.btn{display:inline-block;background:var(--blue);color:#fff;border:0;border-radius:8px;padding:11px 20px;font-weight:bold;font-size:1rem;cursor:pointer;text-decoration:none;text-align:center}
.btn:hover{background:var(--blue-dk);color:#fff}.btn-accent{background:var(--orange)}.btn-accent:hover{background:#d98200}.btn.block{display:block;margin:8px 0}
.linkbtn{background:none;border:0;cursor:pointer;color:var(--blue);padding:2px 6px;font:inherit;font-size:.92rem}.linkbtn.danger{color:#c0392b}
form.inline{display:inline}
.panel{background:#fff;border:1px solid #e3e7ec;border-radius:var(--r);padding:20px 22px;margin-bottom:18px}
.panel-blue{background:var(--blue);color:#fff;border:0}.panel-blue h3{color:#fff}
.grid-home{display:grid;grid-template-columns:1fr 320px;gap:26px}.grid-search{display:grid;grid-template-columns:270px 1fr;gap:26px;align-items:start}
.grid-detail{display:grid;grid-template-columns:1fr 320px;gap:26px;align-items:start}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.more{font-weight:bold;text-decoration:none}
.job-list{display:grid;gap:12px}
.job-card{background:#fff;border:1px solid #e3e7ec;border-left:4px solid var(--grey);border-radius:var(--r);padding:16px 18px;transition:box-shadow .15s}
.job-card:hover{box-shadow:0 4px 14px rgba(2,105,184,.12)}.job-card.featured{border-left-color:var(--orange)}
.job-card h3{margin:0 0 2px}.job-card h3 a{text-decoration:none}.company{color:#445;font-weight:bold}.company.big{font-size:1.1rem;margin:-6px 0 12px}
.meta{margin:8px 0 4px;display:flex;flex-wrap:wrap;gap:6px}.tag{background:#eef2f6;border-radius:20px;padding:2px 10px;font-size:.82rem;color:#334}
.tag-cat{background:#eaf3fb;color:var(--blue)}.tag-hot{background:#fff1dc;color:#a35f00}
.dates,.small{font-size:.85rem}.muted{color:var(--mid)}
.cat-list,.plain{list-style:none;padding:0;margin:0}.cat-list li,.plain li{padding:6px 0;border-bottom:1px solid #f0f2f5;display:flex;justify-content:space-between;gap:8px}.plain li{display:block}
.count{background:#eef2f6;border-radius:20px;padding:0 8px;font-size:.8rem;color:#556}
.filters label,.form label{display:block;font-weight:bold;font-size:.9rem;margin-bottom:12px}
input,select,textarea{width:100%;font:inherit;padding:9px 11px;border:1px solid #c9d1da;border-radius:7px;background:#fff;margin-top:4px}
input:focus,select:focus,textarea:focus{outline:2px solid #9cc8ec;border-color:var(--blue)}
.form label.check{display:flex;gap:8px;align-items:center}.form label.check input{width:auto;margin:0}
.results-count{margin:0 0 10px}.pager{display:flex;gap:6px;margin-top:18px}.pager a{padding:6px 12px;background:#fff;border:1px solid #e3e7ec;border-radius:6px;text-decoration:none}.pager a.current{background:var(--blue);color:#fff}
.crumbs{font-size:.9rem;margin-bottom:10px}
.facts{display:grid;grid-template-columns:140px 1fr;gap:6px 12px;background:#f7f9fb;padding:14px 16px;border-radius:8px;margin:0 0 18px}.facts dt{font-weight:bold;color:#556}.facts dd{margin:0}
.desc{font-size:1.02rem}
.prose{max-width:860px}.prose p{margin:0 0 1em}
.lead{font-size:1.1rem;color:#445}
.article-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.article-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;justify-content:space-between;margin:0}.article-card:hover{border-color:var(--blue)}
.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px}.alert ul{margin:0;padding-left:18px}.alert-ok{background:#e5f6ea;color:#1d6b35}.alert-err{background:#fdecea;color:#9b2c20}.alert-warn{background:#fff4e0;color:#8a5300}
.hp{position:absolute;left:-5000px}
.center{text-align:center}.narrow{max-width:440px;margin:20px auto}
.site-footer{background:#0f2c44;color:#c9d6e2;padding:34px 0 16px;font-size:.92rem}
.footer-inner{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:24px}.site-footer h4{color:#fff;margin:0 0 8px}.site-footer a{color:#c9d6e2;display:block;text-decoration:none;padding:2px 0}.site-footer a:hover{color:#fff}
.footer-logo{background:#fff;border-radius:6px;padding:4px}.copy{border-top:1px solid #24435e;margin-top:20px;padding-top:12px;font-size:.82rem}
/* admin */
.table-wrap{overflow-x:auto;background:#fff;border:1px solid #e3e7ec;border-radius:var(--r)}
.table{width:100%;border-collapse:collapse;font-size:.93rem}.table th,.table td{padding:10px 12px;border-bottom:1px solid #eef1f4;text-align:left;vertical-align:middle}.table th{background:#f7f9fb}
.actions{white-space:nowrap}.actions a{margin-right:6px}
.status{border-radius:20px;padding:2px 10px;font-size:.8rem;font-weight:bold}.s-published{background:#e5f6ea;color:#1d6b35}.s-draft{background:#eef2f6;color:#445}.s-closed{background:#fdecea;color:#9b2c20}
.tabs a{margin-right:12px;text-decoration:none}.tabs a.current{font-weight:bold;border-bottom:2px solid var(--blue)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.span2{grid-column:1/-1}
.inline-form{display:flex;gap:8px;align-items:center}.inline-form input{margin:0}.w-num{max-width:90px}
.msg.unread{border-left:4px solid var(--orange)}.msg-head{margin-bottom:6px}
@media(max-width:900px){.grid-home,.grid-search,.grid-detail{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:700px){
 .nav-btn{display:block;font-size:1.6rem;cursor:pointer;padding:6px 10px}.main-nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-bottom:10px}
 .header-inner{flex-wrap:wrap}.nav-toggle:checked~.main-nav{display:flex}.logo img{width:180px}
 .hero h1{font-size:1.7rem}.hero-search{flex-direction:column}.hero-search select{flex:none;border-left:0;border-top:1px solid var(--grey)}
 .form-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.facts dt{margin-top:6px}}
/* stage 2 */
.nav-cta{background:var(--orange);color:#fff!important}.nav-cta:hover{background:#d98200!important}
.btn-outline{background:#fff;color:var(--blue);border:2px solid var(--blue)}.btn-outline:hover{background:#eaf3fb;color:var(--blue)}
.btn-danger{background:#c0392b}.btn-danger:hover{background:#992d22}
.narrow.wide{max-width:640px}.narrow-left{max-width:560px}
.acc-nav{display:flex;flex-wrap:wrap;gap:4px;border-bottom:2px solid #e3e7ec;margin-bottom:18px}.acc-nav a{padding:8px 14px;text-decoration:none;font-weight:bold;color:#445;border-bottom:3px solid transparent;margin-bottom:-2px}.acc-nav a.current{color:var(--blue);border-bottom-color:var(--blue)}
.consent{font-weight:normal!important;align-items:flex-start!important;background:#f7f9fb;padding:10px;border-radius:8px}.consent input{margin-top:4px!important}
.cv-pick{border:1px solid #e3e7ec;border-radius:8px;padding:10px 14px;margin:0 0 14px}.cv-pick legend{font-weight:bold;font-size:.9rem}.cv-pick label.check{font-weight:normal}
.form-grid3{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:0 14px;align-items:end}.form-grid3 .btn{margin-bottom:12px}
.s-submitted{background:#eaf3fb;color:var(--blue)}.s-viewed{background:#eef2f6;color:#445}.s-shortlisted{background:#e5f6ea;color:#1d6b35}.s-rejected{background:#fdecea;color:#9b2c20}
.app .cover{background:#f7f9fb;padding:10px 12px;border-radius:8px}
@media(max-width:700px){.form-grid3{grid-template-columns:1fr}}
/* stages 3-6 */
.nav-more{position:relative}.nav-more summary{cursor:pointer;padding:8px 12px;font-weight:bold;font-size:.95rem;list-style:none}.nav-more summary::-webkit-details-marker{display:none}
.nav-more>div{position:absolute;right:0;top:100%;background:#fff;border:1px solid #e3e7ec;border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.1);padding:6px;z-index:20;min-width:200px;display:flex;flex-direction:column}
.rec-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.rec-logo{border-radius:8px;border:1px solid #e3e7ec;vertical-align:middle;object-fit:contain;background:#fff;margin-right:8px}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-bottom:20px}.product{margin:0;display:flex;flex-direction:column}.product .price{font-size:1.6rem;font-weight:bold;color:var(--blue);margin:.2em 0}
.s-inv-pending{background:#fff4e0;color:#8a5300}.s-inv-paid{background:#e5f6ea;color:#1d6b35}.s-inv-cancelled,.s-inv-failed{background:#fdecea;color:#9b2c20}
.s-rec-pending{background:#fff4e0;color:#8a5300}.s-rec-approved{background:#e5f6ea;color:#1d6b35}.s-rec-suspended{background:#fdecea;color:#9b2c20}.s-pending{background:#fff4e0;color:#8a5300}
.num{text-align:right;white-space:nowrap}.bank{background:#f7f9fb;padding:12px;border-radius:8px;font-family:monospace}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-bottom:20px}.stat{margin:0;text-decoration:none;color:inherit;display:flex;flex-direction:column}.stat strong{font-size:1.8rem;color:var(--blue)}a.stat:hover{border-color:var(--blue)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.employer-head{display:flex;gap:18px;align-items:center}.emp-logo{object-fit:contain;border-radius:10px;border:1px solid #e3e7ec;background:#fff}.job-logo{vertical-align:middle;object-fit:contain;border-radius:6px}
.emp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.emp-card{margin:0;text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}.emp-card img{object-fit:contain}
.emp-initial{width:64px;height:64px;border-radius:50%;background:#eaf3fb;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:bold}
.on-blue{color:#fff}.event-card{display:flex;gap:16px;align-items:center}.date-badge{background:var(--blue);color:#fff;border-radius:10px;text-align:center;padding:6px 10px;min-width:58px}.date-badge span{display:block;font-size:.75rem;text-transform:uppercase}.date-badge strong{font-size:1.5rem;line-height:1}
.notfound{padding:40px}.center-form{justify-content:center;max-width:460px;margin:16px auto}.code{font-family:monospace;font-size:.9rem}.w-ref{max-width:120px}
@media(max-width:900px){.grid-2{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.nav-more>div{position:static;box-shadow:none}.employer-head{flex-direction:column;align-items:flex-start}.table-wrap{font-size:.85rem}}
