:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#202124;background:#f3f6f8;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#10253d,#263b50 58%,#183f63)}.login-card{width:min(460px,100%);background:#fff;border-radius:24px;padding:36px;box-shadow:0 24px 70px #00000047}.brand-mark{width:68px;height:68px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,#1b1b1b,#2f6f9f);color:#fff;font-weight:900;font-size:24px;box-shadow:inset 0 0 0 2px #ffffff1f}.small-mark{width:46px;height:46px;border-radius:14px;font-size:17px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:8px;color:#183f63}h2{margin-bottom:8px}.lead{line-height:1.55;color:#666;margin-bottom:28px}.eyebrow{color:#2f6f9f;letter-spacing:.12em;font-weight:800;font-size:12px;margin-bottom:8px}.small{margin:24px 0 0;font-size:12px;color:#858585;text-align:center}.stack{display:grid;gap:16px}label{display:grid;gap:7px;font-weight:700;font-size:13px;color:#3f3f3f}input,select,textarea{width:100%;border:1px solid #c9c9c9;border-radius:12px;padding:12px 13px;color:#202124;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:#4f9bc8;box-shadow:0 0 0 3px #158fe71f}.primary{border:0;border-radius:12px;background:#2f6f9f;color:#fff;padding:12px 18px;font-weight:800}.primary:hover{background:#183f63}.primary:disabled{opacity:.45;cursor:not-allowed}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;background:#13283d;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.logo-row{display:flex;gap:12px;align-items:center;margin-bottom:36px}.logo-row strong,.logo-row span{display:block}.logo-row span{font-size:12px;color:#bdbdbd;margin-top:3px}nav{display:grid;gap:8px}nav button{text-align:left;border:0;border-radius:12px;padding:12px 14px;color:#eee;background:transparent;font-weight:700}nav button span{float:right;font-size:10px;color:#fff}nav .nav-active{background:#2f6f9f;color:#fff}.sidebar-footer{display:grid;gap:4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}.sidebar-footer small{color:#bdbdbd;text-transform:capitalize}.sidebar-footer button{margin-top:10px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;padding:9px 10px;border-radius:10px}.content{min-width:0;padding:28px}.topbar{display:flex;gap:20px;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.topbar p:last-child{color:#666}.panel{background:#fff;border:1px solid #dddddd;border-radius:18px;padding:22px;box-shadow:0 8px 30px #0000000f;margin-bottom:20px}.company-bar{display:flex;align-items:center;justify-content:space-between;gap:20px}.company-bar p{margin:4px 0 0;color:#707070;font-size:13px}.company-bar select{max-width:360px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metrics article{background:#fff;border:1px solid #dddddd;border-radius:16px;padding:18px}.metrics strong{display:block;color:#183f63;font-size:28px}.metrics span{color:#6d6d6d;font-size:13px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pill{padding:7px 10px;background:#f1f1f1;color:#183f63;border-radius:999px;font-size:12px;font-weight:800}.empty-state{text-align:center;padding:46px 16px 30px}.empty-icon{margin:0 auto 16px;width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#f1f1f1;color:#2f6f9f;font-weight:900}.empty-state p{color:#777}.job-list{display:grid;gap:12px;margin-top:18px}.job-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;border:1px solid #dddddd;border-radius:15px;padding:16px}.job-ref{font-weight:900;color:#2f6f9f;background:#f1f1f1;border-radius:10px;padding:9px 11px}.job-main h3{margin-bottom:4px}.job-main p{color:#666;margin-bottom:9px}.job-meta{display:flex;gap:14px;flex-wrap:wrap;color:#777;font-size:12px}.status{border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;text-transform:capitalize;background:#eef3f7}.status.in_progress{background:#e8f2f8;color:#245c83}.status.completed{background:#e8f7ed;color:#237a42}.status.closed{background:#f1f1f1;color:#666}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end}.form-grid.two{grid-template-columns:repeat(2,1fr)}.wide{grid-column:1 / -1}.actions{display:flex;justify-content:flex-end}.message{color:#183f63}.banner{background:#eef6fb;border:1px solid #bfd5e4;padding:12px 14px;border-radius:12px;margin-bottom:18px}.modal-backdrop{position:fixed;inset:0;padding:20px;background:#0000009e;display:grid;place-items:center;z-index:50}.modal{width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:24px}.ghost{border:1px solid #cccccc;border-radius:10px;background:#fff;padding:9px 12px;color:#444;font-weight:700}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:15px}.sidebar>div:first-child{display:grid;grid-template-columns:1fr}.logo-row{margin-bottom:14px}nav{grid-template-columns:repeat(4,1fr);overflow-x:auto}nav button{text-align:center;min-width:110px}.sidebar-footer{display:none}.content{padding:18px}.metrics{grid-template-columns:repeat(2,1fr)}.form-grid,.form-grid.two,.job-card{grid-template-columns:1fr}.company-bar,.topbar{align-items:stretch;flex-direction:column}.company-bar select{max-width:none}.topbar .primary{width:100%;min-height:48px}}@media(max-width:520px){.content{padding:12px}.panel{padding:16px;border-radius:14px}.metrics{gap:8px}.metrics article{padding:14px}.metrics strong{font-size:23px}.login-card{padding:26px 20px}}.secondary{border:1px solid #2f6f9f;border-radius:12px;background:#fff;color:#183f63;padding:12px 18px;font-weight:800}.top-actions{display:flex;gap:10px;flex-wrap:wrap}.company-logo{width:46px;height:46px;object-fit:contain;border-radius:12px;background:#fff;padding:4px}.logo-upload{min-width:180px}.logo-upload input{margin-top:6px;padding:8px}.connection-ok,.linked-company{padding:12px;border-radius:12px;background:#e8f7ed;color:#237a42;font-weight:700}.trx-job-list{display:grid;gap:10px;max-height:360px;overflow:auto}.trx-job{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid #dddddd;border-radius:12px;padding:14px}.trx-job p{margin:4px 0 0;color:#707070;font-size:12px}.notice{padding:12px;border-radius:12px;background:#eef6fb;border:1px solid #bfd5e4;color:#294b65}@media(max-width:900px){.top-actions{display:grid;width:100%}.top-actions button{width:100%;min-height:48px}.trx-job{align-items:stretch;flex-direction:column}}.compact-empty{padding:28px 12px 12px}.jobflow-wordmark{font-size:17px!important;font-weight:900;color:#9fd0ec!important;letter-spacing:.02em}.powered{display:block;color:#8399aa!important;font-size:9px!important;margin-top:3px}.powered-main{display:block;color:#7b8c99;margin-top:-8px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:18px 0}.choice-card{display:grid;gap:7px;text-align:left;border:1px solid #bfd5e4;border-radius:16px;padding:18px;background:#f7fbfd;color:#20394d}.choice-card strong{font-size:16px;color:#183f63}.choice-card span{font-size:12px;line-height:1.45;color:#617786}.choice-card:hover{border-color:#4f9bc8;box-shadow:0 8px 22px #183f631a}.choice-card.future{opacity:.72}.scan-box{border:2px dashed #79acd0;border-radius:16px;padding:18px;background:#f4f9fc;margin:14px 0}.scan-status{padding:12px 14px;border-radius:12px;background:#e8f3fa;color:#294b65;margin:12px 0;font-size:13px}.actions{gap:10px}.logo-row .company-logo{box-shadow:0 0 0 2px #ffffff24}@media(max-width:700px){.choice-grid{grid-template-columns:1fr}.choice-card{min-height:88px}}.optional{font-size:.78rem;color:#64748b;font-weight:500}.client-picker{position:relative}.client-suggestions{margin-top:6px;border:1px solid #b8d4e8;border-radius:12px;background:#fff;box-shadow:0 10px 26px #0f2a4329;overflow:hidden;z-index:20}.client-suggestion{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:11px 13px;border:0;border-bottom:1px solid #e5edf3;background:#f8fbfd;color:#102f49;cursor:pointer}.client-suggestion:hover{background:#e7f3fb}.client-suggestion span{font-size:.78rem;color:#5c7182}.client-suggestion.register{background:#edf6fc}.selected-client{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:6px;padding:9px 11px;border:1px solid #8fc0df;border-radius:10px;background:#eef7fc}.selected-client span{font-size:.78rem;color:#536b7d}.form-grid select{width:100%;min-height:40px;border:1px solid #b8c6d1;border-radius:8px;background:#fff;padding:8px;color:#17364f}.client-job-groups{display:grid;gap:18px;margin-top:18px}.client-job-group{border:1px solid #d7e2ea;border-radius:16px;background:#fbfdfe;overflow:hidden}.client-group-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;background:#eef5f9;border-bottom:1px solid #d7e2ea}.client-group-heading h3{margin:2px 0 0;color:#183f63}.client-group-label{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#617786}.client-job-group .job-list{margin:0;padding:12px}.client-job-group .job-card{background:#fff}@media(max-width:900px){nav{grid-template-columns:repeat(6,minmax(105px,1fr))}.client-group-heading{align-items:flex-start}.client-job-group .job-list{padding:8px}}
