:root{--dark:#151a18;--green:#b8ec33;--blue:#0b83f6;--paper:#fff;--soft:#f4f4f4;--peach:#fff1e8;--text:#1c201f;--muted:#8d918f;--line:#e5e5e5}
*{box-sizing:border-box}html{background:#fff}body{margin:0;background:var(--paper);color:var(--text);font:14px/1.35 Arial,Helvetica,sans-serif}.topbar{height:72px;background:var(--dark);display:flex;align-items:center}.topbar-inner{width:min(920px,calc(100% - 40px));margin:auto;color:var(--green);font-size:23px;font-weight:700}.container{width:min(920px,calc(100% - 40px));margin:52px auto 90px}.oauth-card{display:grid;grid-template-columns:1fr 1fr;gap:28px 52px;padding:25px 28px 21px;background:var(--peach);border-radius:14px}.oauth-copy>b{font-size:15px}.oauth-copy p{margin:12px 0 0;color:var(--muted);line-height:1.3}.oauth-form{display:grid;gap:12px}.oauth-form label,.filter-box label{display:flex;flex-direction:column;gap:7px;font-weight:700}.oauth-form input{height:39px;padding:0 13px;border:1px solid #ddd3cc;border-radius:11px;background:transparent;font:inherit}.oauth-form button,.primary-action{height:41px;padding:0 15px;border:0;border-radius:10px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;font:inherit;cursor:pointer}.oauth-form a{color:var(--text);font-size:12px}.oauth-card.connected{background:#eff9d7}.oauth-card.connected .oauth-copy p{color:#5f7240}#oauth-status{grid-column:1/-1;font-size:12px}.search-card{margin-top:20px}.profession-search{position:relative;display:flex;align-items:center;min-height:48px;border-radius:12px;background:var(--soft);padding:0 48px}.profession-search textarea{width:100%;height:48px;min-height:48px;padding:14px 0;border:0;outline:0;resize:vertical;background:transparent;font:inherit}.search-icon{position:absolute;left:22px;width:14px;height:14px;border:2px solid #aeb2b0;border-radius:50%}.search-icon:after{content:"";position:absolute;width:6px;height:2px;background:#aeb2b0;transform:rotate(45deg);right:-5px;bottom:-2px}.upload-icon{position:absolute;right:16px;color:var(--blue);font-size:21px;cursor:pointer}.upload-icon input,.file-link input{display:none}.selection-summary{display:flex;justify-content:space-between;padding:8px 4px;color:var(--muted);font-size:11px}.filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:2px}.filter-box{min-width:0;padding:14px;background:var(--soft);border-radius:12px}.filter-box label{font-size:12px}.filter-box label small{font-weight:400;color:var(--muted)}.filter-box select,.filter-box textarea,.filter-box input{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.filter-box select[multiple]{height:118px;padding:4px}.filter-box select[multiple] option{padding:5px}.filter-box textarea{margin-top:9px;resize:vertical}.file-link{margin-top:8px;color:var(--blue);cursor:pointer;font-size:11px!important}.selection-note,.limit-note{display:block;margin-top:7px;color:var(--muted);font-size:11px}.compact-fields{display:flex;flex-direction:column;gap:12px}.primary-action{width:100%;margin-top:60px;justify-content:center;position:relative}.primary-action b{position:absolute;right:16px}.primary-action:disabled,.oauth-form button:disabled{opacity:.55}.error{color:#b21f2d!important}#status{min-height:20px;margin-top:12px;font-size:12px}.results-panel{margin-top:90px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-heading h2{font-size:15px;margin:0}.section-heading select{padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.metrics article{padding:16px;background:#fafafa}.metrics small{display:block;color:var(--muted);font-size:11px}.metrics strong{display:block;margin-top:9px;font-size:20px}.chart-wrap{margin-top:18px;padding:18px;background:#fafafa;border-radius:12px}.chart-wrap h3{display:flex;justify-content:space-between;margin:0 0 15px;font-size:13px}.chart-wrap h3 small{color:var(--muted);font-weight:400}.chart{min-height:140px}.chart.empty{display:grid;place-items:center;color:#bbb}.bar-row{display:grid;grid-template-columns:170px 1fr 100px;gap:12px;align-items:center;margin:9px 0}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:18px;background:#e7e7e7;border-radius:5px;overflow:hidden}.bar{height:100%;background:var(--blue)}.bar-value{text-align:right;font-weight:700}.method{color:var(--muted);font-size:11px}.history-panel{margin-top:90px}.history-table{min-height:320px;border-radius:12px;background:#fafafa;overflow:hidden}.history-head,.history-row{display:grid;grid-template-columns:2fr 1.3fr .7fr .7fr;gap:15px;padding:13px 18px}.history-head{color:var(--muted);font-size:10px;border-bottom:1px solid #eee}.history-row{border-bottom:1px solid #eee;font-size:12px}.history-row small{display:none}footer{padding:25px 20px;background:var(--dark);color:#d9e0dc;text-align:center;font-size:12px}footer a{color:var(--green);text-decoration:none}footer a:hover{text-decoration:underline}
@media(max-width:760px){.topbar{height:60px}.topbar-inner{font-size:19px}.container{margin-top:25px}.oauth-card{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr 1fr}.primary-action{margin-top:25px}.metrics{grid-template-columns:1fr 1fr}.history-head,.history-row{grid-template-columns:1.5fr 1fr .7fr .7fr}.results-panel,.history-panel{margin-top:55px}}
@media(max-width:480px){.container{width:min(100% - 24px,920px)}.filter-grid{grid-template-columns:1fr}.selection-summary{display:block}.selection-summary span{display:block;margin-top:4px}.bar-row{grid-template-columns:90px 1fr 80px}.oauth-card{padding:20px}.metrics strong{font-size:16px}}
.jobs-panel{margin:18px 0 30px;padding:20px;border:1px solid #dfe5e2;border-radius:16px;background:#f8faf9}.active-jobs{display:grid;gap:12px}.job-card{padding:16px;border:1px solid #d9dfdc;border-radius:12px;background:#fff}.job-card-head,.job-card-meta,.job-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.job-card-head strong{font-size:16px}.job-card-head span{padding:4px 9px;border-radius:999px;background:#e8f2ff;color:#0869bd;font-size:12px}.job-card-head span.completed{background:#e1f5e8;color:#08763c}.job-card-head span.partial{background:#fff0dc;color:#9b5600}.job-card-head span.failed{background:#f5dddd;color:#b21f2d}.job-card-head span.cancelled{background:#ecefee;color:#68716d}.job-card-meta{margin:8px 0;color:#66706b;font-size:13px}.job-progress{height:10px;overflow:hidden;border-radius:999px;background:#e5e9e7}.job-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#91ca31,#4aa84e);transition:width .35s ease}.job-card-actions{justify-content:flex-end;margin-top:11px}.job-card-actions button,.job-card-actions a{border:0;border-radius:8px;padding:8px 12px;color:#fff;background:#0b83f6;text-decoration:none;cursor:pointer}.job-card-actions .cancel-job{color:#842828;background:#f5dddd}.estimate-dialog .dialog-shell{max-width:680px}.estimate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.estimate-grid>div{padding:14px;border-radius:12px;background:#f1f4f2}.estimate-grid small,.estimate-grid strong{display:block}.estimate-grid strong{margin-top:5px;font-size:20px}#status.success{color:#16844f}#status.warning{color:#a15d2b}@media(max-width:640px){.jobs-panel{padding:14px}.job-card-head,.job-card-meta{align-items:flex-start;flex-direction:column}.estimate-grid{grid-template-columns:1fr}}
