:root{--brand-red:#af3e97;--brand-red-dark:#352666;--brand-red-light:#f2e8f6;--accent-gold:#c9960e;--bg-base:#f8f7f5;--bg-card:#fff;--bg-sidebar:#1a1a2e;--text-primary:#1c1917;--text-secondary:#6b6866;--text-muted:#a8a4a1;--border:#e8e5e2;--border-focus:#af3e97;--success:#2d7a4f;--success-bg:#ebf5f0;--error:#c0392b;--error-bg:#fdecea;--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 16px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.04);--shadow-lg:0 12px 40px rgba(0,0,0,.12),0 4px 12px rgba(0,0,0,.06);--radius:10px;--font-main:"DM Sans",system-ui,-apple-system,sans-serif;--font-mono:"DM Mono","Courier New",monospace;--text:var(--text-primary);--muted:var(--text-muted);--surface:var(--bg-card);--bg:var(--bg-base)}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:var(--font-main);background:var(--bg-base);color:var(--text-primary);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;height:100%}a{color:var(--brand-red)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 rgba(175,62,151,.25)}70%{box-shadow:0 0 0 8px rgba(175,62,151,0)}to{box-shadow:0 0 0 0 rgba(175,62,151,0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:var(--radius);padding:.7rem 1.1rem;font-size:14px;font-weight:600;font-family:var(--font-main);cursor:pointer;text-decoration:none;transition:opacity .15s ease}.btn-primary{background:var(--brand-red);color:#fff;box-shadow:0 4px 14px rgba(175,62,151,.3)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.form-input{width:100%;padding:9px 12px;background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);font-family:var(--font-main);font-size:13.5px;color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease;outline:none}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(175,62,151,.1)}.form-input::placeholder{color:var(--text-muted)}.form-input:disabled{background:var(--bg-base);color:var(--text-secondary);cursor:not-allowed}.form-label{display:block;font-size:12px;font-weight:600;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.skeleton{background:linear-gradient(90deg,#f0eeec 25%,#e8e5e2 50%,#f0eeec 75%);background-size:200% 100%;animation:shimmer 1.4s ease infinite;border-radius:6px}.sa-cases-table{table-layout:fixed;width:100%}.sa-cases-table col.sa-cases-table__col-action{width:9.5rem}.table-cell-truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%}.table-cell-truncate--inline{display:inline-block;vertical-align:bottom;max-width:100%}.page-loading-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;background:hsla(40,18%,97%,.82);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:wait;pointer-events:all}.page-loading-overlay__panel{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);padding:28px 32px;display:flex;flex-direction:column;align-items:center;gap:14px;min-width:240px}.page-loading-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--brand-red);border-radius:50%;animation:spin .7s linear infinite}.page-loading-overlay__text{margin:0;font-size:13px;font-weight:500;color:var(--text-secondary);text-align:center}