:root{--bg:#f6f8fb;--card:#fff;--text:#172033;--muted:#667085;--red:#b42318;--amber:#b54708;--green:#067647;--blue:#175cd3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}.shell{padding:28px;max-width:1500px;margin:auto}.hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.muted{color:var(--muted)}.grid{display:grid;gap:14px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid #e4e7ec;border-radius:14px;padding:16px;box-shadow:0 1px 2px #1018280d}.kpi b{font-size:28px;display:block;margin-top:8px}.red{color:var(--red)}.amber{color:var(--amber)}.green{color:var(--green)}.blue{color:var(--blue)}.nav{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.pill{border:1px solid #cfd4dc;background:#fff;border-radius:999px;padding:8px 12px;color:var(--text);text-decoration:none}.tables{grid-template-columns:1fr 1fr}table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:9px;border-bottom:1px solid #eaecf0;text-align:left;vertical-align:top}th{font-size:12px;color:#475467;background:#f9fafb;position:sticky;top:0;z-index:2}.scroll{max-height:540px;overflow:auto}.task-register-scroll{padding:0;isolation:isolate}.task-register-scroll table{min-width:1500px;border-collapse:separate;border-spacing:0}.task-register-scroll thead{position:sticky;top:0;z-index:5}.task-register-scroll th{top:0;z-index:6;background:#f9fafb;border-bottom:1px solid #d0d5dd;box-shadow:0 2px 4px #10182814;background-clip:padding-box}.task-register-scroll th:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#d0d5dd}.task-register-scroll td:first-child,.task-register-scroll th:first-child{padding-left:16px}.task-register-scroll td:last-child,.task-register-scroll th:last-child{padding-right:16px}.status{border-radius:999px;padding:3px 8px;background:#eef4ff;white-space:nowrap}.status.Blocked{background:#fee4e2;color:#912018}.status.Closed,.status.Qualified{background:#dcfae6;color:#05603a}.toolbar{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}input,select,textarea{padding:9px;border:1px solid #d0d5dd;border-radius:8px;background:#fff}button{padding:9px 12px;border-radius:8px;border:0;background:var(--blue);color:#fff;font-weight:700}.form{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wide{grid-column:1/-1}@media(max-width:900px){.form,.kpis,.tables{grid-template-columns:1fr}.hero{display:block}}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 28px;background:#fff;border-bottom:1px solid #e4e7ec}.brand{font-weight:700;color:var(--text);text-decoration:none}.auth-status{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.auth-status button{padding:7px 10px}.auth-page{max-width:640px}.auth-card{margin-top:32px}.auth-form{grid-template-columns:1fr}.auth-form label{display:grid;gap:6px;font-weight:700}.auth-form button{width:max-content}.notice{border:1px solid #fedf89;background:#fffaeb;border-radius:12px;padding:12px;margin:16px 0}.auth-diagnostics dl{display:grid;gap:8px;margin:12px 0}.auth-diagnostics div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #f2f4f7;padding-bottom:6px}.auth-diagnostics dt{font-weight:700}.auth-diagnostics dd{margin:0;text-align:right;word-break:break-word}.success-notice{border:1px solid #abefc6;background:#ecfdf3;color:#05603a;border-radius:12px;padding:12px;margin:16px 0}.error-notice{border:1px solid #fecdca;background:#fef3f2;color:#912018;border-radius:12px;padding:12px;margin:16px 0}.history-card{margin-top:14px}.history-list{display:grid;gap:12px}.history-item{border:1px solid #eaecf0;border-radius:12px;padding:12px;background:#fcfcfd}.history-meta{display:flex;gap:12px;flex-wrap:wrap;color:#475467}.history-meta strong{color:var(--text)}.history-values{display:grid;grid-template-columns:1fr 1fr;gap:12px}.history-values h4{margin:8px 0}.change-list{display:grid;gap:6px;margin:0}.change-list div{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:8px;border-bottom:1px solid #f2f4f7;padding:6px 0}.change-list dt{font-weight:700;text-transform:capitalize;color:#475467}.change-list dd{margin:0;white-space:pre-wrap;word-break:break-word}@media(max-width:900px){.change-list div,.history-values{grid-template-columns:1fr}}