/* JobMatcha Premium UI — coded to match the generated product-board mockup */
:root{
  --jm-cream:#f8f6ec;
  --jm-cream-2:#efefe3;
  --jm-surface:#fffdf6;
  --jm-green-950:#062b16;
  --jm-green-900:#0b3b20;
  --jm-green-800:#15552d;
  --jm-green-700:#1f6b35;
  --jm-green-600:#2f7d3f;
  --jm-matcha:#7bbf3a;
  --jm-lime:#b8df72;
  --jm-soft:#eef8df;
  --jm-mint:#dff3d6;
  --jm-ink:#132018;
  --jm-muted:#667567;
  --jm-line:rgba(31,72,38,.14);
  --jm-shadow:0 26px 70px rgba(23,48,26,.14),0 6px 20px rgba(23,48,26,.08);
  --jm-soft-shadow:0 18px 45px rgba(23,48,26,.10);
  --jm-radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:
  radial-gradient(circle at 13% 6%,rgba(184,223,114,.38),transparent 31rem),
  radial-gradient(circle at 82% 14%,rgba(223,243,214,.72),transparent 26rem),
  linear-gradient(135deg,#fbfaf3 0%,#f4f3e8 42%,#edf4e1 100%)!important;
  color:var(--jm-ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;}
a{color:inherit}.jh-app{background:transparent!important;min-height:100vh}.hidden{display:none!important}
.jh-logo-mark{background:linear-gradient(145deg,#1d6a35,#77bd3d)!important;color:#fff!important;border-radius:10px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 10px 22px rgba(14,64,27,.23)}
.jh-btn{border-radius:999px!important;min-height:48px;font-weight:750!important;letter-spacing:-.01em;transition:.18s ease!important}.jh-btn:hover{transform:translateY(-1px)}
.jh-btn-primary{background:linear-gradient(135deg,#0c421f,#1e7136 64%,#5da53a)!important;color:white!important;border:0!important;box-shadow:0 16px 34px rgba(17,81,37,.22)!important}.jh-btn-secondary{background:rgba(255,255,255,.78)!important;border:1px solid rgba(28,87,42,.18)!important;color:#19391e!important;box-shadow:0 8px 20px rgba(23,48,26,.06)!important}.jh-btn-ghost{background:transparent!important;color:var(--jm-muted)!important}.jh-btn-sm{min-height:38px!important;height:38px!important;padding:0 17px!important;font-size:.86rem!important}
.jh-chip,.jh-pill,.jh-kw{border-radius:999px!important;border:1px solid rgba(34,99,45,.14)!important;background:#eef8df!important;color:#285c2c!important;font-weight:700!important}.jh-chip.ok,.jh-pill.ok,.jh-kw.matched{background:#e5f5d5!important;color:#17612b!important}.jh-chip.warn,.jh-pill.warn{background:#fff2ce!important;color:#815005!important}.jh-chip.danger,.jh-pill.danger{background:#ffe2df!important;color:#991b1b!important}.jh-input,textarea,select{border:1px solid rgba(31,72,38,.18)!important;background:rgba(255,255,255,.84)!important;border-radius:16px!important}.jh-input:focus,textarea:focus,select:focus{outline:0!important;border-color:#2f7d3f!important;box-shadow:0 0 0 4px rgba(47,125,63,.15)!important}.jh-mute,.jh-mute-2{color:var(--jm-muted)!important}.jh-card,.jh-kpi{background:rgba(255,253,246,.86)!important;border:1px solid var(--jm-line)!important;border-radius:24px!important;box-shadow:var(--jm-soft-shadow)!important;overflow:hidden;position:relative}.jh-card:before,.jh-kpi:before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(184,223,114,.12),transparent 38%,rgba(255,255,255,.5));pointer-events:none}.jh-card>*,.jh-kpi>*{position:relative;z-index:1}.jh-scorebar,.jh-scorebar-3{background:#e8edde!important;border-radius:999px!important;overflow:hidden!important}.jh-scorebar .fill{background:linear-gradient(90deg,#b5dc6b,#3f8a3f,#12642d)!important;border-radius:999px!important}
/* Landing/product board */
.jm-board-page{min-height:100vh;padding:24px;}.jm-product-board{max-width:1800px;margin:0 auto;display:grid;grid-template-columns:640px minmax(740px,1fr) 220px;grid-template-rows:auto auto;gap:24px;align-items:start}.jm-panel{background:rgba(255,253,246,.88);border:1px solid var(--jm-line);border-radius:24px;box-shadow:var(--jm-shadow);overflow:hidden;position:relative}.jm-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(184,223,114,.18),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.55),transparent 45%);pointer-events:none}.jm-panel>*{position:relative;z-index:1}.jm-topnav{display:flex;align-items:center;gap:26px;padding:22px 28px}.jm-brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:-.04em;text-decoration:none}.jm-brand-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(145deg,#236d34,#7dbd39);display:grid;place-items:center;color:#fff;font-weight:850;font-size:.82rem}.jm-navlinks{display:flex;gap:24px;font-size:.82rem;font-weight:700;color:#26362a;margin-left:auto}.jm-landing-panel{grid-column:1;min-height:930px}.jm-hero-exact{padding:54px 48px 0;min-height:490px;display:grid;grid-template-columns:1fr 310px;gap:28px;align-items:start}.jm-hero-copy h1{font-size:4.25rem;line-height:.95;letter-spacing:-.075em;margin:48px 0 22px;color:#0d2717}.jm-hero-copy em{font-family:'Source Serif 4',serif;color:#23713b;font-style:italic;font-weight:700}.jm-hero-copy p{font-size:1.02rem;line-height:1.65;color:#475b4d;max-width:370px}.jm-hero-actions{display:flex;gap:12px;margin-top:28px}.jm-preview-stack{position:relative;height:300px;margin-top:48px}.jm-main-match-card{position:absolute;right:42px;top:0;width:215px;background:rgba(255,253,246,.94);border:1px solid var(--jm-line);border-radius:16px;box-shadow:0 22px 55px rgba(22,53,28,.16);padding:20px}.jm-bg-match-card{position:absolute;right:-50px;top:58px;width:202px;height:210px;transform:rotate(8deg);opacity:.68;background:rgba(255,253,246,.85);border:1px solid var(--jm-line);border-radius:16px;box-shadow:0 16px 42px rgba(22,53,28,.12);padding:18px}.jm-score-large{font-size:2.2rem;color:#3e8a31;font-weight:850;letter-spacing:-.06em}.jm-progress-line{height:9px;border-radius:999px;background:#e5ebdb;overflow:hidden}.jm-progress-line span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#9ccf51,#2e7b37)}.jm-mini-tags{display:flex;gap:5px;flex-wrap:wrap;margin:13px 0}.jm-mini-tags span{background:#e9f4d8;color:#49703e;border-radius:999px;padding:5px 8px;font-size:.64rem;font-weight:800}.jm-steps{padding:0 48px 28px}.jm-section-label{font-size:1.18rem;font-weight:850;margin:0 0 18px;color:#1b2b1f}.jm-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.jm-step-card{padding:22px;border:1px solid var(--jm-line);background:rgba(255,255,255,.62);border-radius:14px;min-height:160px}.jm-step-icon{width:30px;height:30px;border-radius:9px;background:#e9f5d5;display:grid;place-items:center;color:#22713c}.jm-step-card h3{font-size:.98rem;margin:20px 0 8px}.jm-step-card p{font-size:.82rem;line-height:1.55;color:#526151;margin:0}.jm-testimonial-strip{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;padding:0 48px 42px}.jm-quote{background:rgba(255,255,255,.62);border:1px solid var(--jm-line);border-radius:16px;padding:24px}.jm-quote-mark{font-family:'Source Serif 4',serif;font-size:3rem;color:#80b943;line-height:1}.jm-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.jm-stat{background:rgba(255,255,255,.62);border:1px solid var(--jm-line);border-radius:14px;padding:16px}.jm-stat strong{display:block;color:#2d803b;font-size:1.25rem}.jm-footer-band{background:linear-gradient(135deg,#164d2b,#0a351d);color:white;padding:30px 48px;display:flex;justify-content:space-between;align-items:center}.jm-heart{width:46px;height:46px;border-radius:999px;border:2px solid #b8df72;display:grid;place-items:center;color:#b8df72}.jm-dashboard-panel{grid-column:2;min-height:500px;display:grid;grid-template-columns:190px 1fr;background:rgba(255,253,246,.92)}.jm-dashboard-side{background:linear-gradient(180deg,#124526,#062e18);color:white;padding:24px 20px;display:flex;flex-direction:column;gap:22px;min-height:500px}.jm-dash-nav{display:flex;flex-direction:column;gap:10px;margin-top:10px}.jm-dash-nav a{display:flex;gap:11px;align-items:center;text-decoration:none;color:rgba(255,255,255,.74);font-weight:700;font-size:.88rem;padding:13px 12px;border-radius:11px}.jm-dash-nav a.active{background:linear-gradient(135deg,#478d2d,#2a7437);color:white}.jm-dash-user{margin-top:auto;background:rgba(255,255,255,.08);border-radius:16px;padding:12px;display:flex;gap:10px;align-items:center}.jm-avatar{width:33px;height:33px;border-radius:50%;background:#f4e1c8}.jm-dashboard-main{padding:32px}.jm-dash-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.jm-dash-head h2{font-size:1.9rem;letter-spacing:-.05em;margin:0}.jm-dash-head p{margin:6px 0 0;color:var(--jm-muted)}.jm-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}.jm-kpi-card{background:rgba(255,255,255,.66);border:1px solid var(--jm-line);border-radius:14px;padding:18px}.jm-kpi-card .lab{font-size:.78rem;color:#526151;font-weight:700}.jm-kpi-card strong{display:block;font-size:1.9rem;letter-spacing:-.05em;margin:14px 0 4px}.jm-dash-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.jm-dash-card{background:rgba(255,255,255,.66);border:1px solid var(--jm-line);border-radius:18px;padding:22px}.jm-match-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(31,72,38,.08)}.jm-company-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#1f74bd;color:white;font-size:.75rem;font-weight:850}.jm-circle-score{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#2e7b37 0 91%,#e6ecdc 91%);font-size:.72rem;font-weight:850;color:#125226}.jm-inclusion-banner{grid-column:1/-1;margin-top:20px;background:rgba(248,250,229,.85);border:1px solid var(--jm-line);border-radius:18px;padding:20px;display:flex;align-items:center;gap:18px}.jm-shield{width:62px;height:62px;border-radius:20px;background:#edf8db;display:grid;place-items:center;font-size:2rem}.jm-mobile-panel{grid-column:3;grid-row:1;align-self:start;background:transparent;border:0;box-shadow:none;padding-top:62px}.jm-phone{width:208px;background:#fffdf6;border:1px solid var(--jm-line);border-radius:36px;box-shadow:var(--jm-shadow);padding:16px 14px 20px}.jm-phone-status{display:flex;justify-content:space-between;font-size:.68rem;font-weight:850;margin-bottom:24px}.jm-phone-card{background:#f8f6ec;border:1px solid rgba(31,72,38,.10);border-radius:16px;padding:14px;margin-bottom:12px}.jm-bottom-tabs{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;gap:4px;font-size:.55rem;color:#617165;text-align:center;margin-top:12px}.jm-plus-tab{width:36px;height:36px;border-radius:999px;background:#3e8a31;color:white;display:grid;place-items:center;font-size:1.1rem;margin:auto}.jm-floating-cards{grid-column:2 / 4;display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:18px}.jm-float-card{min-height:170px;background:rgba(255,253,246,.88);border:1px solid var(--jm-line);border-radius:22px;box-shadow:var(--jm-soft-shadow);padding:20px}.jm-float-card h3{font-size:1rem;margin:0 0 12px}.jm-ai-card{background:linear-gradient(145deg,#145027,#0b361d)!important;color:white}.jm-employers-list{display:grid;gap:12px}.jm-employer-line{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.jm-matcha-brand-panel{grid-column:3;grid-row:2;background:linear-gradient(145deg,#124725,#0b341c);color:white;border-radius:24px;min-height:270px;box-shadow:var(--jm-shadow);padding:34px 28px;position:relative;overflow:hidden}.jm-matcha-brand-panel:before{content:"";position:absolute;right:-45px;bottom:-30px;width:180px;height:130px;border-radius:50%;background:radial-gradient(circle,#e8f6d8 0 22%,#a4c982 23% 32%,#8fb071 33% 40%,#d8d6be 41% 72%,#77624a 73%);box-shadow:0 20px 60px rgba(0,0,0,.22)}.jm-matcha-brand-panel:after{content:"";position:absolute;right:38px;top:42px;width:78px;height:100px;background:linear-gradient(45deg,transparent 35%,rgba(184,223,114,.75) 36% 52%,transparent 53%),linear-gradient(-45deg,transparent 35%,rgba(119,189,61,.7) 36% 52%,transparent 53%);opacity:.8}.jm-matcha-brand-panel h2{font-family:'Source Serif 4',serif;font-size:2.65rem;line-height:.92;margin:0 0 18px;letter-spacing:-.04em}.jm-matcha-brand-panel p{color:rgba(255,255,255,.82);line-height:1.5;margin:0}.jm-reference-note{max-width:1800px;margin:18px auto 0;color:#607061;font-size:.92rem;text-align:center}.jm-mobile-cta{display:none}
/* App shell restyle */
.jh-shell{display:grid!important;grid-template-columns:240px 1fr!important;min-height:100vh;padding:20px;gap:0}.jh-side{background:linear-gradient(180deg,#104525,#062d17)!important;color:white!important;border:0!important;border-radius:24px 0 0 24px!important;box-shadow:var(--jm-shadow)!important;padding:28px 20px!important}.jh-logo{gap:11px!important;margin-bottom:28px!important}.jh-logo-text{color:white!important;font-weight:850!important}.jh-side-section{color:rgba(255,255,255,.42)!important;font-size:.72rem!important;letter-spacing:.08em;text-transform:uppercase;margin:24px 0 8px}.jh-side-link{color:rgba(255,255,255,.76)!important;border-radius:13px!important;padding:13px 14px!important;font-weight:700!important}.jh-side-link:hover{background:rgba(255,255,255,.08)!important;color:white!important}.jh-side-link.active{background:linear-gradient(135deg,#477f2d,#1f7138)!important;color:white!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)!important}.jh-side-foot{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;padding:14px!important}.jh-side-user .name{color:white!important}.jh-side-user .email{color:rgba(255,255,255,.54)!important}.jh-avatar{background:#f3dec5!important;color:#0f3a1e!important}.jh-main{background:rgba(255,253,246,.78)!important;border:1px solid var(--jm-line);border-left:0;border-radius:0 24px 24px 0;box-shadow:var(--jm-shadow);overflow:hidden}.jh-topbar{background:rgba(255,253,246,.8)!important;backdrop-filter:blur(18px);border-bottom:1px solid var(--jm-line)!important}.jh-search{background:#f8f6ec!important;border:1px solid rgba(31,72,38,.12)!important;border-radius:999px!important}.jh-content{background:transparent!important;padding:34px!important}.jh-pagehead h1{font-size:2.35rem!important;letter-spacing:-.06em!important}.jh-kpi{padding:20px!important}.jh-kpi .val{font-size:2rem!important;color:#18351d!important}.jh-card{padding:24px!important}.jh-table th{background:#f6f4e8!important;color:#48584b!important}.jh-table td{border-color:rgba(31,72,38,.08)!important}
/* Auth / other page polish */
body:has(.jh-auth){background:radial-gradient(circle at 12% 10%,rgba(184,223,114,.45),transparent 28rem),linear-gradient(135deg,#fffdf6,#edf5df)!important}.jh-auth-card{background:rgba(255,253,246,.87)!important;border:1px solid var(--jm-line)!important;border-radius:32px!important;box-shadow:var(--jm-shadow)!important}.jh-auth-visual{background:linear-gradient(145deg,#104525,#2f7d3f 52%,#b8df72)!important;border-radius:32px!important;box-shadow:var(--jm-shadow)!important}.jm-filterbar{background:rgba(255,253,246,.86)!important;border:1px solid var(--jm-line)!important;border-radius:24px!important;box-shadow:var(--jm-soft-shadow)!important}
/* Mobile/responsive */
.jm-mobile-menu{display:none;position:fixed;right:18px;bottom:18px;z-index:50;border:0;border-radius:999px;width:58px;height:58px;background:linear-gradient(135deg,#104525,#75b83d);color:white;box-shadow:0 20px 40px rgba(16,69,37,.28);font-size:1.4rem}.jm-overlay{display:none;position:fixed;inset:0;background:rgba(16,32,24,.35);z-index:38}.jm-overlay.show{display:block}
@media(max-width:1300px){.jm-product-board{grid-template-columns:1fr;}.jm-landing-panel,.jm-dashboard-panel,.jm-mobile-panel,.jm-floating-cards,.jm-matcha-brand-panel{grid-column:1!important;grid-row:auto!important}.jm-mobile-panel{padding-top:0;display:flex;justify-content:center}.jm-floating-cards{grid-template-columns:repeat(2,1fr)}.jm-product-board{max-width:980px}.jm-landing-panel{min-height:auto}.jm-hero-exact{grid-template-columns:1fr}.jm-preview-stack{height:320px}.jm-main-match-card{right:50%;transform:translateX(50%)}.jm-bg-match-card{right:18%}}
@media(max-width:980px){.jh-shell{display:block!important;padding:0}.jh-side{position:fixed!important;z-index:39;inset:0 auto 0 0;width:min(84vw,310px)!important;border-radius:0!important;transform:translateX(-105%);transition:transform .22s ease}.jh-side.jm-open{transform:translateX(0)}.jh-main{border-radius:0!important;border:0!important}.jm-mobile-menu{display:grid;place-items:center}.jh-content{padding:22px 16px 92px!important}.jh-content [style*="grid-template-columns:repeat(4"],.jh-content [style*="grid-template-columns: repeat(4"],.jh-content [style*="grid-template-columns:repeat(3"],.jh-content [style*="grid-template-columns:repeat(2"],.jh-content [style*="grid-template-columns:1.5fr"],.jh-content [style*="grid-template-columns:1fr 1.2fr"],.jh-content [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}.jh-topbar{overflow:auto}.jh-search{min-width:230px}table{display:block;overflow:auto;white-space:nowrap}}
@media(max-width:720px){.jm-board-page{padding:12px}.jm-topnav{padding:16px}.jm-navlinks{display:none}.jm-hero-exact{padding:36px 24px 0}.jm-hero-copy h1{font-size:3.05rem}.jm-hero-actions{flex-direction:column}.jm-hero-actions .jh-btn{width:100%}.jm-preview-stack{display:none}.jm-steps,.jm-testimonial-strip{padding-left:24px;padding-right:24px}.jm-step-grid,.jm-testimonial-strip,.jm-stats-grid,.jm-kpis,.jm-dash-grid,.jm-floating-cards{grid-template-columns:1fr!important}.jm-dashboard-panel{grid-template-columns:1fr}.jm-dashboard-side{border-radius:0;min-height:auto}.jm-dashboard-main{padding:22px}.jm-footer-band{padding:24px;display:block}.jm-phone{width:min(100%,230px)}.jh-auth{display:block!important;padding:18px!important}.jh-auth>*{width:100%!important;max-width:100%!important}.jh-auth-visual{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Real icon image — override the gradient .jh-logo-mark / .jm-brand-mark
   styles that assumed text-content. The new icon is already opaque green so
   no background gradient is needed. */
img.jh-logo-mark, img.jm-brand-mark {
  background: transparent !important;
  padding: 0 !important;
  display: block;
  object-fit: cover;
  flex-shrink: 0;
}
img.jh-logo-mark {
  width: 32px; height: 32px; border-radius: 9px;
  box-shadow: 0 8px 18px rgba(14,64,27,.18);
}
img.jm-brand-mark {
  width: 28px; height: 28px; border-radius: 8px;
  box-shadow: 0 6px 14px rgba(14,64,27,.18);
}
