.offline-banner[data-v-15ac7a67]{position:fixed;bottom:0;left:0;right:0;background:#b45309;color:#fff;text-align:center;padding:.5rem;font-size:.85rem;z-index:50}:root{--brand: #2563eb;--brand-dark: #1d4ed8;--bg: #f8fafc;--card: #ffffff;--text: #0f172a;--muted: #64748b;--border: #e2e8f0;--danger: #dc2626;--warn: #b45309;--ok: #16a34a;--radius: 12px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Noto Sans TC,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}button{font:inherit;cursor:pointer}.container{max-width:960px;margin:0 auto;padding:1rem}.container-narrow{max-width:680px;margin:0 auto;padding:1rem}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--brand);color:#fff;border:none;border-radius:10px;padding:.7rem 1.2rem;font-weight:600;transition:background .15s ease}.btn:hover{background:var(--brand-dark)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--brand);border:1px solid var(--border)}.btn-ghost:hover{background:#eff6ff}.btn-danger{background:var(--danger)}.grid{display:grid;gap:1rem}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.muted{color:var(--muted)}.tag{display:inline-block;background:#eff6ff;color:var(--brand-dark);border-radius:999px;padding:.1rem .6rem;font-size:.75rem}input,select,textarea{font:inherit;width:100%;padding:.55rem .7rem;border:1px solid var(--border);border-radius:8px;background:#fff}label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.3rem}.field{margin-bottom:.9rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--border);font-size:.9rem}.progress{height:8px;background:var(--border);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--brand)}.sticky-actions{position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 70%,transparent);padding:1rem 0;display:flex;gap:.75rem}.option{display:block;border:2px solid var(--border);border-radius:10px;padding:.9rem 1rem;margin-bottom:.6rem;transition:border-color .12s ease,background .12s ease}.option.selected{border-color:var(--brand);background:#eff6ff}.col-job{width:4.5rem;max-width:5.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-filters{position:sticky;top:0;z-index:20;margin-bottom:1rem;background:var(--card);box-shadow:0 1px 0 var(--border);border-radius:var(--radius)}.drawer-overlay,.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:40;display:flex}.drawer-overlay{justify-content:flex-end}.modal-overlay{align-items:center;justify-content:center;padding:1.5rem;z-index:50;overflow:hidden}.drawer-panel{width:min(520px,100%);height:100%;background:#fff;box-shadow:-8px 0 24px #0f172a1f;padding:1.25rem 1.35rem 2rem;overflow:auto}.modal-panel{width:min(960px,100%);max-height:calc(100vh - 3rem);background:#fff;border-radius:12px;box-shadow:0 16px 48px #0f172a33;display:flex;flex-direction:column;overflow:hidden}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--border)}.modal-body{padding:1.25rem;overflow:auto}@media (max-width: 640px){.container,.container-narrow{padding:.75rem}}
