:root{--font-12:12px;--font-14:14px;--font-16:16px;--font-20:20px;--font-24:24px;--page-gap:1.5rem}body{background-color:#f8fafc;font-family:Inter,sans-serif}.app-shell{color:#0f172a}.app-shell .text-xs{font-size:var(--font-12)!important}.app-shell .text-sm{font-size:var(--font-14)!important}.app-shell .text-base{font-size:var(--font-16)!important}.app-shell .text-xl{font-size:var(--font-20)!important}.app-shell .text-2xl{font-size:var(--font-24)!important}.app-shell .text-3xl,.app-shell .text-4xl{line-height:1.2;font-size:var(--font-24)!important}.app-shell .text-slate-500{color:#475569!important}.app-shell .text-slate-400{color:#64748b!important}.app-shell :focus-visible{outline-offset:2px;outline:2px solid #6366f1}.app-content{gap:var(--page-gap);flex-direction:column;display:flex}.page-header{margin-bottom:.75rem}.page-title{font-size:var(--font-24);color:#0f172a;font-weight:700;line-height:1.2}.page-subtitle{font-size:var(--font-20);color:#475569;margin-top:.25rem;line-height:1.35}.density-compact{--page-gap:1rem}.density-compact .data-table th,.density-compact .data-table td{padding-top:.55rem!important;padding-bottom:.55rem!important}.density-comfortable .data-table th,.density-comfortable .data-table td{padding-top:.85rem!important;padding-bottom:.85rem!important}.density-compact .data-card{padding:.85rem!important}.density-comfortable .data-card{padding:1.15rem!important}.density-compact .header-gap{margin-bottom:.75rem!important}.density-comfortable .header-gap{margin-bottom:1.25rem!important}.filters-panel label{font-size:var(--font-12);text-transform:uppercase;letter-spacing:.02em;color:#64748b;margin-bottom:.35rem;font-weight:700;display:block}.filters-panel input,.filters-panel select,.filters-panel button{border-radius:.6rem}.density-compact .filters-panel input,.density-compact .filters-panel select,.density-compact .filters-panel button{min-height:38px}.density-comfortable .filters-panel input,.density-comfortable .filters-panel select,.density-comfortable .filters-panel button{min-height:44px}.skeleton{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 37%,#e2e8f0 63%) 0 0/400% 100%;animation:1.2s ease-in-out infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:100%}to{background-position:0}}.modal-enter{animation:.18s ease-out modal-enter}@keyframes modal-enter{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.action-busy{animation:1.1s ease-in-out infinite action-pulse}@keyframes action-pulse{0%,to{transform:scale(1)}50%{transform:scale(.985)}}.action-spinner{border:2px solid;border-right-color:#0000;border-radius:9999px;width:14px;height:14px;animation:.7s linear infinite action-spin;display:inline-block}@keyframes action-spin{to{transform:rotate(360deg)}}@media (width<=768px){.app-shell button,.app-shell [role=button],.app-shell select,.app-shell input{min-height:44px}}
