/*
Theme Name: CrewReady
Description: Workforce readiness and contractor management theme.
Version: 0.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: crewready
*/
:root{--ink:#14232f;--hv:#f2c200;--paper:#f3f5f6;--ok:#1f9d55;--warn:#d98200;--bad:#d64545;--mut:#55656f}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#fff}
a{color:inherit}
h1,h2,h3{line-height:1.12;margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:clamp(2.4rem,6vw,4.2rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:800}
h3{font-size:1.1rem}
p{margin:0 0 1em;max-width:62ch}
.w{max-width:1080px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.site-header{background:var(--ink);color:#fff}
.site-header .w{display:flex;justify-content:space-between;align-items:center;padding-top:16px;padding-bottom:16px;gap:16px;flex-wrap:wrap}
.logo{font-weight:800;font-size:1.3rem;text-decoration:none}.logo b{color:var(--hv)}
.nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.nav a{text-decoration:none;color:#c9d3d9;font-weight:600}.nav a:hover{color:#fff}
.btn{display:inline-block;background:var(--hv);color:var(--ink)!important;font-weight:700;padding:14px 26px;border-radius:4px;text-decoration:none;border:0;font-size:1rem;cursor:pointer}
.btn:hover{filter:brightness(.93)}
.btn.sm{padding:9px 16px}
.btn.ghost{background:transparent;color:#fff!important;border:2px solid #4a5d69;margin-left:10px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--hv);outline-offset:2px}
.hero{background:var(--ink);color:#fff;padding:72px 0}
.hero .w{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero p{color:#c9d3d9;font-size:1.15rem}
.roster{background:#fff;color:var(--ink);border-radius:6px;padding:18px;box-shadow:0 0 0 4px rgba(242,194,0,.35)}
.roster h3{font-size:.95rem;color:var(--mut);margin-bottom:10px}
.row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-top:1px solid #e3e8ea;font-weight:600}
.row small{display:block;font-weight:400;color:var(--mut)}
.tag{font-size:.85rem;font-weight:700;padding:4px 10px;border-radius:99px;color:#fff;white-space:nowrap}
.ok{background:var(--ok)}.warn{background:var(--warn)}.bad{background:var(--bad)}
section{padding:72px 0}.alt{background:var(--paper)}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}
.step{border-left:5px solid var(--hv);padding-left:16px}
.price{background:#fff;border:2px solid var(--ink);border-radius:6px;padding:24px}
.price.soon{border-style:dashed;border-color:#9fb0ba}
.big{font-size:2rem;font-weight:800}
form.join{display:flex;flex-wrap:wrap;gap:10px;max-width:640px}
form.join input,form.join select{flex:1 1 200px;padding:14px;border:2px solid var(--ink);border-radius:4px;font-size:1rem;background:#fff;color:var(--ink)}
.msg{padding:12px 16px;border-radius:4px;margin-bottom:14px;font-weight:600;max-width:640px}
.msg.good{background:#dff3e6;color:#12532d}.msg.err{background:#fbe3e3;color:#7a1f1f}
.hp{position:absolute;left:-9999px}
details{border-top:1px solid #cfd8dd;padding:14px 0}summary{cursor:pointer;font-weight:700}
.site-footer{background:var(--ink);color:#c9d3d9;padding:32px 0;font-size:.95rem}.site-footer a{color:#fff}
.page-wrap{padding:56px 0}
.dash .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:24px 0}
.dash .stat{border:2px solid var(--ink);border-radius:6px;padding:16px}.dash .stat b{display:block;font-size:2rem}
@media(max-width:800px){.hero .w{grid-template-columns:1fr}.btn.ghost{margin:10px 0 0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Dashboard & forms (v0.3) */
.tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:2px solid var(--ink);margin:12px 0 24px}
.tabs a{padding:10px 16px;text-decoration:none;font-weight:700;color:var(--mut)}
.tabs a[aria-current]{background:var(--ink);color:#fff}
.f{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.f input,.f select{flex:1 1 170px;padding:12px;border:2px solid var(--ink);border-radius:4px;font-size:1rem;background:#fff;color:var(--ink)}
.f.stack{flex-direction:column;max-width:420px}
.f .chk{display:flex;align-items:center;gap:6px;flex:0 0 auto}.f .chk input{flex:0 0 auto}
.tw{overflow-x:auto}
table.t{width:100%;border-collapse:collapse;min-width:520px}
table.t th,table.t td{text-align:left;padding:10px 8px;border-bottom:1px solid #d5dde1;vertical-align:middle}
table.t th{color:var(--mut);font-size:.9rem}
form.del{display:inline;margin:0}.lnk{background:none;border:0;color:var(--bad);font-weight:700;cursor:pointer;padding:4px;font-size:.95rem}
#loginform input[type=text],#loginform input[type=password]{padding:10px;border:2px solid var(--ink);border-radius:4px;width:100%;max-width:320px}
#loginform input[type=submit]{background:var(--hv);border:0;padding:12px 22px;font-weight:700;border-radius:4px;cursor:pointer}
/* Uploads & review (v0.4) */
.up{border:2px solid var(--ink);border-radius:6px;padding:16px;margin:0 0 16px;max-width:720px}
.uph{display:flex;justify-content:space-between;align-items:center;gap:12px}.uph h3{margin:0}
.up .f{margin:12px 0 0}.up .f input[type=file]{flex:2 1 220px;border:0;padding:8px 0}
.lk{color:var(--ink)}.lk-in{width:100%;padding:10px;border:2px solid var(--ink);border-radius:4px;font-size:.95rem}
form.rv{display:flex;flex-wrap:wrap;gap:6px;margin:0}form.rv input{flex:1 1 140px;padding:8px;border:2px solid var(--ink);border-radius:4px}
.btn.rj{background:#fff;border:2px solid var(--bad);color:var(--bad)!important}
/* Readiness (v0.5) */
.dash .stat.ok{border-color:var(--ok)}.dash .stat.warn{border-color:var(--warn)}.dash .stat.bad{border-color:var(--bad)}
.dash .stat.ok b{color:var(--ok)}.dash .stat.warn b{color:var(--warn)}.dash .stat.bad b{color:var(--bad)}
.dash small{color:var(--mut)}
/* Polish & mobile (v0.8) */
.gs{border:2px solid var(--hv);background:#fffbe6;border-radius:6px;padding:16px 20px;margin:0 0 24px}
.gs h2{font-size:1.2rem;margin-bottom:8px}.gs ol{margin:0;padding-left:20px}.gs li{margin:6px 0}.gs li.done{color:var(--mut)}
@media(max-width:640px){
 body{font-size:16px}.page-wrap{padding:32px 0}section{padding:48px 0}.hero{padding:48px 0}
 .tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.tabs a{white-space:nowrap}
 .f input,.f select,.btn,.lnk{min-height:44px}.f{flex-direction:column}.f input,.f select{flex:1 1 auto;width:100%}
 form.rv{flex-direction:column}.up .f input[type=file]{width:100%}.nav{gap:12px}
 table.t th,table.t td{padding:12px 8px}
}
