/* Jobs home + new job wizard (uses tokens from editor.css) */
body{overflow:auto}
.jobsapp{min-height:100%;display:flex;flex-direction:column}
.jobsapp .bar,.wiz .bar{position:sticky;top:0}
.jobsmain{padding-block:20px 48px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));max-width:1200px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.jobsnote{font-size:12.5px;color:var(--muted);line-height:1.45;max-width:70ch}
.jobgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.jobcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.jobcard .thumb{aspect-ratio:16/10;background:#fff center/contain no-repeat;border-bottom:1px solid var(--line);cursor:pointer}
.jobcard .jb{padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.jobcard h3{margin:0;font-size:16px;font-family:"Montserrat",var(--f-ui);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jobcard .meta{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.jobcard .acts{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 14px}
.jobcard .acts .btn{padding:6px 10px;font-size:13px}
.empty{background:var(--surface);border:1px dashed var(--line);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:10px;max-width:640px}
.empty h2{margin:0;font-size:18px}
.empty p{margin:0;color:var(--muted);line-height:1.5}
.wiz{position:fixed;inset:0;background:var(--bg);z-index:30;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}
.wizbody{flex:1;overflow:auto;padding-block:18px 60px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:14px;max-width:1000px;width:100%;margin:0 auto}
.wizname{max-width:420px}
.floorcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}
.floorcard .row{align-items:flex-end}
.floorcard .fhead{display:flex;align-items:center;gap:8px;font-weight:600}
.floorcard .fhead .x{margin-left:auto}
.prev{position:relative;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:crosshair;max-width:100%}
.prev canvas{display:block;width:100%;height:auto}
.prev .crop{position:absolute;border:2px solid #1f6fd1;background:rgba(31,111,209,.08);box-shadow:0 0 0 9999px rgba(15,23,32,.35);pointer-events:none}
.prev .ph{padding:40px 16px;text-align:center;color:#5d6b7b;font-size:13px;cursor:default}
.ftools{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ftools .btn{padding:6px 10px;font-size:13px}
.ftools .info{font-size:12.5px;color:var(--muted)}
#wizErr{color:var(--warn);min-height:1em}
.f input[type=file]{padding:6px}
@media (max-width:860px){ .jobsapp .bar .btn,.wiz .bar .btn{padding:6px 10px;font-size:13px} .jobsapp .brand .bt span,.wiz .brand .bt span{display:none} }
.bar .btn{white-space:nowrap}
