.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;min-width:200px;padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s;box-shadow:0 2px 10px #0000000a}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #2563eb12}.dashboard-card-icon{margin-bottom:10px;font-size:24px}.dashboard-card h2{letter-spacing:-.5px;font-size:32px;font-weight:700;line-height:1}.dashboard-card p{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-top:10px;font-size:13px;font-weight:500}.dashboard-card.total h2{color:#1d4ed8}.dashboard-card.reported h2{color:#be123c}.dashboard-card.progress h2{color:#b45309}.dashboard-card.resolved h2{color:#15803d}.dashboard-card.workers h2{color:#7c3aed}.dashboard-card.total{background:#eff6ff;border-color:#bfdbfe}.dashboard-card.reported{background:#fff1f2;border-color:#fecdd3}.dashboard-card.progress{background:#fffbeb;border-color:#fde68a}.dashboard-card.resolved{background:#f0fdf4;border-color:#bbf7d0}.dashboard-card.workers{background:#f5f3ff;border-color:#ddd6fe}.dashboard-layout{width:100%;display:flex}.dashboard-main{background:#f8fafc;flex:1;min-height:100vh;font-family:DM Sans,sans-serif}.dashboard-page{padding:32px}.dashboard-header{margin-bottom:28px}.dashboard-header h1{color:#0f172a;letter-spacing:-1px;margin-bottom:6px;font-family:Playfair Display,serif;font-size:32px;font-weight:700}.dashboard-header p{color:#64748b;font-size:14px}.dashboard-content{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}@media (width<=768px){.dashboard-page{padding:24px 20px}.dashboard-header h1{font-size:28px}.dashboard-content{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}}@media (width<=480px){.dashboard-page{padding:20px 16px}.dashboard-header h1{font-size:24px}.dashboard-content{grid-template-columns:1fr;gap:14px}}.admin-issues-page{color:#1e293b;background:#f8fafc;min-height:100vh;padding-top:64px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.issues-header{padding:28px 32px 0}.issues-header h1{color:#0f172a;letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-weight:700}.issues-header p{color:#64748b;margin:0;font-size:14px}.issues-stats{flex-wrap:wrap;gap:10px;padding:20px 32px;display:flex}.stat-pill{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:baseline;gap:8px;padding:10px 16px;display:flex}.stat-num{letter-spacing:-.02em;color:#0f172a;font-size:18px;font-weight:700;line-height:1}.stat-lbl{color:#64748b;font-size:12px;font-weight:500}.stat-pill.reported .stat-num{color:#be123c}.stat-pill.progress .stat-num{color:#b45309}.stat-pill.resolved .stat-num{color:#15803d}.issues-filters{flex-wrap:wrap;align-items:center;gap:12px;padding:0 32px 16px;display:flex}.search-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:220px;padding:0 12px;transition:border-color .15s;display:flex}.search-box:focus-within{border-color:#2563eb}.search-icon{color:#94a3b8;font-size:14px}.search-box input{color:#1e293b;background:0 0;border:none;outline:none;flex:1;padding:9px 0;font-family:inherit;font-size:13px}.search-box input::placeholder{color:#94a3b8}.search-clear{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:12px}.search-clear:hover{color:#475569}.filter-chips{gap:6px;display:flex}.chip{color:#64748b;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.chip:hover{color:#334155;border-color:#94a3b8}.chip.active{color:#fff;background:#0f172a;border-color:#0f172a}.category-select{color:#334155;cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #e2e8f0;border-radius:8px;outline:none;padding:9px 32px 9px 12px;font-family:inherit;font-size:13px;transition:border-color .15s}.category-select:focus{border-color:#2563eb}.results-count{color:#94a3b8;padding:0 32px 10px;font-size:12px;font-weight:500}.issues-table-wrap{padding:0 32px 48px}.issues-table{border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;width:100%;overflow:hidden}.issues-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:9px 14px;font-size:11px;font-weight:600}.issues-table tbody tr{transition:background .1s}.issues-table tbody tr:hover{background:#f8fafc}.issues-table tbody tr:not(:last-child) td{border-bottom:1px solid #f1f5f9}.issues-table td{color:#334155;vertical-align:middle;padding:8px 14px;font-size:13px}.cell-id{color:#94a3b8;font-size:12px;font-weight:600}.table-thumb{object-fit:cover;background:#f1f5f9;border-radius:6px;width:36px;height:36px;display:block}.cell-title{color:#0f172a;font-size:13px;font-weight:600}.cell-desc{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:11.5px;overflow:hidden}.cell-location{color:#64748b;white-space:nowrap;font-size:12.5px}.issue-cat-badge{color:#475569;background:#f1f5f9;border-radius:6px;align-items:center;gap:5px;width:fit-content;padding:3px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.issue-status{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:6px;padding:3px 9px;font-size:10.5px;font-weight:600}.issue-status.reported{color:#be123c;background:#fff1f2}.issue-status.progress{color:#b45309;background:#fffbeb}.issue-status.resolved{color:#15803d;background:#f0fdf4}.table-actions{gap:6px;display:flex}.action-btn{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:5px 11px;font-family:inherit;font-size:11.5px;font-weight:500;transition:background .15s,border-color .15s,color .15s}.view-btn{color:#1d4ed8;border-color:#dbeafe}.view-btn:hover{background:#eff6ff;border-color:#1d4ed8}.delete-btn{color:#be123c;border-color:#fecdd3}.delete-btn:hover{background:#fff1f2;border-color:#be123c}.skeleton-row{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:8px;height:44px;margin-bottom:8px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.issues-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:64px 32px;display:flex}.issues-empty span{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}.issues-empty p{color:#64748b;margin:0;font-size:14px}.issues-empty button{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;margin-top:6px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:background .15s}.issues-empty button:hover{background:#1e293b}.modal-overlay{z-index:99999;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-shell{background:#fff;border-radius:12px;flex-direction:column;width:min(560px,100%);max-height:88vh;animation:.16s ease-out modalIn;display:flex;overflow:hidden;box-shadow:0 12px 40px #0f172a2e}@keyframes modalIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.modal-header{z-index:1;background:#fff;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:14px 20px;display:flex;position:sticky;top:0}.modal-header-left{align-items:center;gap:8px;display:flex}.modal-id-tag{color:#64748b;font-family:SF Mono,Consolas,monospace;font-size:12px;font-weight:600}.modal-close-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;transition:background .15s;display:flex}.modal-close-btn:hover{color:#1e293b;background:#e2e8f0}.modal-body{flex-direction:column;gap:16px;padding:18px 20px;display:flex;overflow-y:auto}.modal-summary-row{gap:14px;display:flex}.modal-thumb{object-fit:cover;background:#f1f5f9;border-radius:8px;flex-shrink:0;width:76px;height:76px}.modal-summary-text{flex-direction:column;gap:4px;min-width:0;display:flex}.modal-cat-row{text-transform:uppercase;letter-spacing:.04em;color:#6366f1;align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.modal-issue-title{color:#0f172a;margin:0;font-size:16px;font-weight:700;line-height:1.3}.modal-issue-desc{color:#64748b;margin:0;font-size:13px;line-height:1.5}.modal-meta-row{background:#f8fafc;border-radius:8px;flex-wrap:wrap;align-items:center;gap:18px;padding:10px 12px;display:flex}.meta-item{flex-direction:column;gap:2px;display:flex}.meta-key{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:600}.meta-val{color:#334155;font-size:12.5px;font-weight:500}.btn-map{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-left:auto;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s}.btn-map:hover{color:#4f46e5;background:#eef2ff;border-color:#6366f1}.modal-resolution-box{background:#f0fdf4;border-left:3px solid #16a34a;border-radius:6px;padding:10px 12px}.resolution-label{text-transform:uppercase;letter-spacing:.05em;color:#15803d;margin-bottom:4px;font-size:10.5px;font-weight:700;display:block}.modal-resolution-box p{color:#166534;margin:0;font-size:13px;line-height:1.5}.modal-divider{border:none;border-top:1px solid #f1f5f9;margin:0}.action-block{flex-direction:column;gap:7px;display:flex}.action-label{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;margin:0;font-size:11px;font-weight:700}.action-row{gap:8px;display:flex}.modal-select{color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;flex:1;padding:9px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.modal-select:focus{border-color:#6366f1}.modal-select:disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.modal-textarea{color:#1e293b;resize:vertical;box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;width:100%;min-height:72px;padding:9px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.modal-textarea:focus{border-color:#6366f1}.modal-textarea:disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.action-primary-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#0f172a;border:none;border-radius:8px;padding:9px 16px;font-family:inherit;font-size:12.5px;font-weight:600;transition:background .15s}.action-primary-btn:hover:not(:disabled){background:#1e293b}.action-primary-btn:disabled{opacity:.4;cursor:not-allowed}.file-upload-label{color:#475569;cursor:pointer;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12.5px;font-weight:500;transition:border-color .15s,background .15s;display:inline-flex}.file-upload-label:hover{color:#4f46e5;background:#eef2ff;border-color:#6366f1}.file-upload-label input{display:none}.file-name-hint{color:#94a3b8;font-size:11.5px}.proof-preview{object-fit:cover;border-radius:8px;width:100%;max-height:140px}.modal-bottom-actions{background:#fff;border-top:1px solid #f1f5f9;gap:8px;padding:14px 20px;display:flex;position:sticky;bottom:0}.btn-resolve{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:8px;flex:1;padding:10px 0;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}.btn-resolve:hover:not(:disabled){background:#15803d}.btn-resolve:disabled{opacity:.35;cursor:not-allowed}.btn-danger{color:#be123c;cursor:pointer;background:#fff;border:1px solid #fecdd3;border-radius:8px;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}.btn-danger:hover{background:#fff1f2}@media (width<=900px){.issues-table-wrap{overflow-x:auto}.issues-table{min-width:760px}}@media (width<=640px){.issues-header{padding:20px 16px 0}.issues-stats{padding:14px 16px}.issues-filters{padding:0 16px 14px}.issues-table-wrap{padding:0 16px 32px}.results-count{padding:0 16px 10px}.modal-summary-row{flex-direction:column}.modal-thumb{width:100%;height:140px}.modal-meta-row{flex-direction:column;align-items:flex-start}.btn-map{margin-left:0}}:root{--wk-ink:#14181f;--wk-ink-soft:#4a5161;--wk-line:#e4e7ec;--wk-surface:#fff;--wk-bg:#f6f7f9;--wk-accent:#2563eb;--wk-accent-ink:#fff;--wk-good:#15803d;--wk-good-bg:#ecfdf3;--wk-bad:#b42318;--wk-bad-bg:#fef3f2;--wk-radius:10px;--wk-mono:"SF Mono", "JetBrains Mono", Consolas, monospace}.workers-page{background:var(--wk-bg);min-height:100vh;color:var(--wk-ink);padding:32px 36px 56px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.wk-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.wk-header h1{letter-spacing:-.01em;margin:0 0 4px;font-size:26px;font-weight:700}.wk-subtitle{color:var(--wk-ink-soft);margin:0;font-size:14px}.wk-stats{gap:12px;display:flex}.wk-stat{background:var(--wk-surface);border:1px solid var(--wk-line);border-radius:var(--wk-radius);flex-direction:column;align-items:center;min-width:76px;padding:10px 18px;display:flex}.wk-stat-value{font-size:20px;font-weight:700;font-family:var(--wk-mono)}.wk-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--wk-ink-soft);margin-top:2px;font-size:11px}.wk-stat--active .wk-stat-value{color:var(--wk-good)}.wk-form-card{background:var(--wk-surface);border:1px solid var(--wk-line);border-radius:14px;margin-bottom:24px;padding:22px 24px;box-shadow:0 1px 2px #1018280a}.wk-form-title{text-transform:uppercase;letter-spacing:.04em;color:var(--wk-ink-soft);margin:0 0 16px;font-size:14px;font-weight:600}.wk-form-grid{grid-template-columns:1.3fr 1fr 1.2fr 1.2fr auto;align-items:end;gap:12px;display:grid}.wk-field{flex-direction:column;gap:6px;display:flex}.wk-field label{color:var(--wk-ink-soft);font-size:12px;font-weight:600}.wk-field input,.wk-field select{border:1px solid var(--wk-line);background:var(--wk-surface);color:var(--wk-ink);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.wk-field input:focus,.wk-field select:focus{border-color:var(--wk-accent);outline:none;box-shadow:0 0 0 3px #2563eb1f}.wk-add-btn{background:var(--wk-accent);color:var(--wk-accent-ink);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:11px 20px;font-size:14px;font-weight:600;transition:background .15s,transform 50ms}.wk-add-btn:hover:not(:disabled){background:#1d4fd1}.wk-add-btn:active:not(:disabled){transform:translateY(1px)}.wk-add-btn:disabled{cursor:not-allowed;background:#93b4f5}.wk-form-error{background:var(--wk-bad-bg);color:var(--wk-bad);border-radius:8px;margin-top:12px;padding:10px 14px;font-size:13px;font-weight:500}.wk-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.wk-search{border:1px solid var(--wk-line);background:var(--wk-surface);border-radius:8px;flex:1;min-width:220px;max-width:320px;padding:10px 14px;font-size:14px}.wk-search:focus{border-color:var(--wk-accent);outline:none;box-shadow:0 0 0 3px #2563eb1f}.wk-filter-chips{flex-wrap:wrap;gap:6px;display:flex}.wk-chip{border:1px solid var(--wk-line);background:var(--wk-surface);color:var(--wk-ink-soft);cursor:pointer;white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500;transition:all .15s}.wk-chip:hover{border-color:var(--wk-accent);color:var(--wk-accent)}.wk-chip--active{background:var(--wk-ink);border-color:var(--wk-ink);color:#fff}.wk-chip--active:hover{color:#fff}.wk-table-card{background:var(--wk-surface);border:1px solid var(--wk-line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px #1018280a}.worker-table{border-collapse:collapse;width:100%}.worker-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--wk-ink-soft);border-bottom:1px solid var(--wk-line);background:#fafbfc;padding:14px 18px;font-size:12px;font-weight:600}.worker-table td{border-bottom:1px solid var(--wk-line);vertical-align:middle;padding:14px 18px;font-size:14px}.worker-table tbody tr:last-child td{border-bottom:none}.worker-table tbody tr:hover{background:#fafbfc}.wk-name-cell{align-items:center;gap:12px;display:flex}.wk-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.wk-name-text{flex-direction:column;display:flex}.wk-name{color:var(--wk-ink);font-weight:600}.wk-id{font-size:11px;font-family:var(--wk-mono);color:var(--wk-ink-soft)}.wk-phone{font-family:var(--wk-mono);color:var(--wk-ink-soft);font-size:13px}.wk-dept-badge{border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.dept-roads{color:#b54708;background:#fef3e2}.dept-garbage{color:#475467;background:#eef0f4}.dept-lights{color:#a35a00;background:#fef9e7}.dept-water{color:#0b6bb3;background:#e6f4fd}.dept-traffic{color:#c0292c;background:#fdeaea}.dept-property{color:#1d7a37;background:#e9f6ec}.dept-default{color:#555;background:#f1f1f1}.wk-avatar.dept-roads{background:#b54708}.wk-avatar.dept-garbage{background:#475467}.wk-avatar.dept-lights{background:#a35a00}.wk-avatar.dept-water{background:#0b6bb3}.wk-avatar.dept-traffic{background:#c0292c}.wk-avatar.dept-property{background:#1d7a37}.wk-avatar.dept-default{background:#6b7280}.wk-status{border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:600;display:inline-flex}.wk-status-dot{border-radius:50%;width:7px;height:7px}.wk-status--active{background:var(--wk-good-bg);color:var(--wk-good)}.wk-status--active .wk-status-dot{background:var(--wk-good)}.wk-status--inactive{color:#667085;background:#f2f4f7}.wk-status--inactive .wk-status-dot{background:#98a2b3}.wk-delete-btn{border:1px solid var(--wk-line);background:var(--wk-surface);color:var(--wk-bad);cursor:pointer;border-radius:7px;padding:7px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.wk-delete-btn:hover:not(:disabled){background:var(--wk-bad-bg);border-color:#f3a39a}.wk-delete-btn:disabled{opacity:.5;cursor:not-allowed}.wk-empty{color:var(--wk-ink-soft);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:56px 24px;font-size:14px;display:flex}.wk-empty-icon{font-size:32px}.wk-spinner{border:2px solid var(--wk-line);border-top-color:var(--wk-accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite wk-spin}@keyframes wk-spin{to{transform:rotate(360deg)}}@media (width<=980px){.wk-form-grid{grid-template-columns:1fr 1fr}.wk-add-btn{grid-column:span 2}}@media (width<=640px){.workers-page{padding:20px 16px 40px}.wk-form-grid{grid-template-columns:1fr}.wk-add-btn{grid-column:span 1}.worker-table{white-space:nowrap;display:block;overflow-x:auto}}*,:before,:after{box-sizing:border-box}.assignments-page{color:#1e293b;background:#f1f5f9;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.asg-header{background:#fff;padding:40px 40px 0}.asg-header-eyebrow{display:none}.asg-header h1{color:#0f172a;letter-spacing:-.02em;margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:800}.asg-header p{color:#64748b;margin:0;font-size:14px}.asg-stats{background:#fff;flex-wrap:wrap;gap:10px;padding:24px 40px 28px;display:flex}.asg-stat-pill{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;align-items:center;gap:10px;padding:10px 18px;display:flex}.asg-stat-num{letter-spacing:-.03em;color:#0f172a;font-size:20px;font-weight:800;line-height:1}.asg-stat-lbl{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.asg-stat-pill.total .asg-stat-num{color:#2563eb}.asg-stat-pill.progress .asg-stat-num{color:#d97706}.asg-stat-pill.resolved .asg-stat-num{color:#16a34a}.asg-filters{background:#fff;border-bottom:1px solid #f1f5f9;flex-wrap:wrap;align-items:center;gap:10px;padding:0 40px 20px;display:flex}.asg-search-box{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:220px;padding:0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.asg-search-box:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.asg-search-icon{color:#94a3b8;font-size:15px}.asg-search-box input{color:#1e293b;background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-family:inherit;font-size:13px}.asg-search-box input::placeholder{color:#94a3b8}.asg-search-clear{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:12px;transition:color .1s}.asg-search-clear:hover{color:#475569}.asg-filter-chips{gap:6px;display:flex}.asg-chip{color:#64748b;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #e2e8f0;border-radius:6px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s}.asg-chip:hover{color:#2563eb;border-color:#2563eb}.asg-chip.active{color:#fff;background:#2563eb;border-color:#2563eb}.asg-results-count{color:#94a3b8;letter-spacing:.02em;text-transform:uppercase;padding:14px 40px 6px;font-size:12px;font-weight:600}.asg-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;padding:10px 40px 48px;display:grid}.asg-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.asg-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a1a}.asg-card-top{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px 10px;display:flex}.asg-lifecycle{align-items:center;gap:4px;display:flex}.asg-lifecycle-step{background:#e2e8f0;border-radius:99px;width:24px;height:4px;transition:background .2s}.asg-lifecycle-step.done{background:#2563eb}.asg-lifecycle-step.active-progress{background:#fbbf24}.asg-lifecycle-step.active-resolved{background:#34d399}.asg-cat-badge{color:#475569;background:#f1f5f9;border-radius:6px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.asg-card-body{flex-direction:column;flex:1;gap:10px;padding:14px 16px;display:flex}.asg-card-title{color:#0f172a;letter-spacing:-.01em;font-size:14px;font-weight:700;line-height:1.4}.asg-card-meta{color:#64748b;align-items:center;gap:6px;font-size:12px;display:flex}.asg-meta-dot{background:#cbd5e1;border-radius:50%;width:3px;height:3px}.asg-card-footer{justify-content:space-between;align-items:center;gap:8px;padding:10px 16px 14px;display:flex}.asg-worker-cell{align-items:center;gap:8px;display:flex}.asg-avatar{color:#fff;letter-spacing:.02em;background:#1d4ed8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:flex}.asg-worker-name{color:#334155;font-size:12.5px;font-weight:600}.asg-status{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:99px;padding:4px 10px;font-size:10.5px;font-weight:700}.asg-status.reported{color:#be123c;background:#fff1f2}.asg-status.progress{color:#b45309;background:#fffbeb}.asg-status.resolved{color:#15803d;background:#f0fdf4}.asg-skeleton-card{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:12px;height:160px;animation:1.4s infinite asg-shimmer}@keyframes asg-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.asg-empty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:72px 40px;display:flex}.asg-empty-icon{margin-bottom:4px;font-size:36px}.asg-empty span{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:700}.asg-empty p{color:#64748b;max-width:340px;margin:0;font-size:14px;line-height:1.6}@media (width<=640px){.asg-header{padding:24px 20px 0}.asg-stats{padding:16px 20px 20px}.asg-filters{padding:0 20px 16px}.asg-grid{grid-template-columns:1fr;padding:10px 20px 36px}.asg-results-count{padding:12px 20px 4px}.asg-empty{padding:48px 20px}}.auth-page{min-height:100vh;display:flex}.auth-left{background:linear-gradient(135deg,#1e40af 0%,#1d4ed8 50%,#2563eb 100%);justify-content:center;align-items:center;width:45%;padding:60px 56px;display:flex;position:relative;overflow:hidden}.auth-left:before{content:"";background:#ffffff0d;border-radius:50%;width:380px;height:380px;position:absolute;top:-120px;right:-120px}.auth-left:after{content:"";background:#ffffff0d;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-80px;left:-80px}.auth-left-content{z-index:1;color:#fff;position:relative}.auth-brand{align-items:center;gap:10px;margin-bottom:48px;display:flex}.auth-brand-icon{font-size:28px}.auth-brand-name{letter-spacing:-.3px;font-size:22px;font-weight:700}.auth-left-content h2{letter-spacing:-.5px;margin-bottom:18px;font-size:36px;font-weight:700;line-height:1.2}.auth-left-content p{opacity:.8;max-width:340px;margin-bottom:48px;font-size:16px;line-height:1.7}.auth-stats{gap:32px;display:flex}.auth-stat{flex-direction:column;gap:4px;display:flex}.auth-stat strong{letter-spacing:-.5px;font-size:26px;font-weight:700}.auth-stat span{opacity:.7;text-transform:uppercase;letter-spacing:.05em;font-size:12px}.auth-right{background:#f8fafc;flex:1;justify-content:center;align-items:center;padding:48px 40px;display:flex}.auth-card{width:100%;max-width:420px}.auth-card-header{margin-bottom:36px}.auth-card-header h1{color:#0f172a;letter-spacing:-.5px;margin-bottom:8px;font-size:30px;font-weight:700}.auth-card-header p{color:#64748b;font-size:15px}.auth-form{flex-direction:column;gap:20px;margin-bottom:20px;display:flex}.field-group{flex-direction:column;gap:7px;display:flex}.field-group label{color:#334155;letter-spacing:.01em;font-size:13px;font-weight:600}.field-group input{color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;padding:12px 16px;font-family:DM Sans,sans-serif;font-size:15px;transition:border-color .15s,box-shadow .15s}.field-group input::placeholder{color:#94a3b8}.field-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.auth-submit-btn{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:10px;width:100%;margin-top:4px;padding:13px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;transition:background .15s,transform .1s}.auth-submit-btn:hover:not(:disabled){background:#1e40af}.auth-submit-btn:active:not(:disabled){transform:scale(.98)}.auth-submit-btn:disabled{opacity:.65;cursor:not-allowed}.auth-message{border-radius:10px;margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.auth-message.success{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.auth-message.error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.auth-switch{text-align:center;color:#64748b;font-size:14px}.auth-switch a{color:#2563eb;font-weight:600;text-decoration:none}.auth-switch a:hover{text-decoration:underline}.back-btn{color:#64748b;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:32px;padding:0;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:color .15s;display:inline-flex}.back-btn:hover{color:#1d4ed8}@media (width<=900px){.auth-left{padding:40px}.auth-left-content h2{font-size:28px}.auth-stats{gap:20px}}@media (width<=768px){.auth-page{flex-direction:column}.auth-left{width:100%;display:none}.auth-right{background:#fff;padding:40px 20px}}.admin-navbar{z-index:1000;box-sizing:border-box;background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;width:100%;height:70px;padding:0 48px;display:flex;position:fixed;top:0;left:0}.admin-navbar-left,.admin-navbar-right{align-items:center;display:flex}.admin-mobile-btn{display:none}.admin-logo{align-items:center;gap:10px;min-width:240px;text-decoration:none;display:flex}.admin-logo-img{width:80px;height:auto;display:block}.admin-logo-text{color:#64748b;font-size:18px;font-weight:700}.admin-links{flex:1;justify-content:center;align-items:center;gap:28px;display:flex}.admin-link{color:#475569;white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:15px;font-weight:500;text-decoration:none;transition:all .2s}.admin-link:hover{color:#2563eb;background:#f1f5f9}.admin-link.active{color:#2563eb;background:#eff6ff;font-weight:600}.admin-logout-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:14px;min-width:120px;padding:12px 24px;font-size:16px;font-weight:600;transition:all .2s}.admin-logout-btn:hover{background:#1d4ed8}@media (width<=1024px){.admin-navbar{padding:0 24px}.admin-links{gap:14px}.admin-link{padding:6px 10px;font-size:14px}.admin-logo{min-width:auto}}@media (width<=768px){.admin-navbar{height:70px;padding:0 16px}.admin-mobile-btn{cursor:pointer;color:#475569;background:0 0;border:none;margin-right:8px;padding:4px;font-size:24px;line-height:1;display:block}.admin-logo-img{width:65px}.admin-logo-text{font-size:16px}.admin-links{z-index:999;background:#fff;border-bottom:1px solid #e2e8f0;flex-direction:column;gap:8px;width:100%;padding:16px;display:none;position:absolute;top:70px;left:0;box-shadow:0 10px 15px -3px #0000000d}.admin-links.mobile-open{display:flex}.admin-link{text-align:left;width:100%;padding:10px 14px;font-size:15px}.admin-logout-btn{border-radius:10px;min-width:auto;padding:8px 16px;font-size:14px}}@media (width<=480px){.admin-logo-text{display:none}}:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}
