*,:before,:after{box-sizing:border-box}:root{--bg:#f9fafb;--app-header-height:4rem;--app-header-gap:1.5rem;--app-header-offset:calc(var(--app-header-height) + var(--app-header-gap));--surface:#fff;--border:#d1d5db;--border-strong:#9ca3af;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--accent:#3b82f6;--accent-dark:#111827;--green-bg:#ecfdf5;--green-text:#047857;--green-border:#a7f3d0;--amber-bg:#fffbeb;--amber-text:#b45309;--amber-border:#fde68a;--red-bg:#fef2f2;--red-text:#b91c1c;--red-border:#fecaca;--blue-bg:#eff6ff;--blue-text:#1d4ed8;--accent-light:#eff6ff;--accent-mid:#93c5fd;--shadow-lg:0 12px 32px #1118271f, 0 4px 10px #1118270f;--radius-md:12px;--radius-full:9999px}body{-webkit-font-smoothing:antialiased;color:var(--text-primary);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.alert{border-radius:var(--radius-md);border:1px solid #0000;align-items:flex-start;gap:12px;margin-bottom:20px;padding:14px 16px;font-size:13px;display:flex}.alert i{flex-shrink:0;margin-top:1px;font-size:18px}.alert-error{background:var(--red-bg);color:var(--red-text);border-color:var(--red-border)}.alert-warning{background:var(--amber-bg);color:var(--amber-text);border-color:var(--amber-border)}.alert-info{background:var(--blue-bg);color:var(--blue-text);border-color:#bfdbfe}.spinner{border:2px solid var(--border);border-top-color:var(--accent);vertical-align:middle;border-radius:50%;width:18px;height:18px;animation:.65s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.page-spinner{height:40vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.page-spinner-text{font-size:14px;font-weight:500}.toast-container{z-index:200;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);align-items:center;gap:12px;min-width:280px;max-width:400px;padding:14px 18px;font-size:13px;font-weight:500;animation:.25s toastIn;display:flex}.toast i{font-size:18px}.toast.success{border-left:3px solid #10b981}.toast.success i{color:#10b981}.toast.error{border-left:3px solid #ef4444}.toast.error i{color:#ef4444}.toast.info{border-left:3px solid var(--accent)}.toast.info i{color:var(--accent)}@keyframes toastIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@media (min-width:640px){:root{--app-header-height:4rem;--app-header-gap:1.5rem}}@keyframes refresh-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.popover-content-animate{transform-origin:var(--radix-popover-content-transform-origin);animation:.14s ease-out popoverIn}@keyframes popoverIn{0%{opacity:0;transform:scale(.97)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (max-width:639px){.toast-container{bottom:16px;left:16px;right:16px}.toast{width:100%;min-width:0;max-width:none}}
