*{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{color:#1b1b29;-webkit-font-smoothing:antialiased;background:#f5f6fa;margin:0;font-family:Quicksand,ui-sans-serif,system-ui,sans-serif}button,input,select,textarea{font-family:inherit}a{color:inherit}@media (width<=860px){.auth-split-media{display:none!important}.auth-split-form{flex:100%!important}}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{width:100%;position:absolute;top:0;left:0}.print-area *{height:auto!important;max-height:none!important;overflow:visible!important}.no-print{display:none!important}}.app-outlet>*{min-height:0}@media (width<=640px){.tb-label{display:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kpi-page{padding:24px 28px}.kpi-grid-4{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.kpi-grid-tiles{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.kpi-grid-2{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:14px;display:grid}.kpi-net-strip{gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.kpi-bridge{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.kpi-skeleton{animation:1.4s ease-in-out infinite kpi-pulse}.kpi-spin{animation:.9s linear infinite kpi-rotate}@keyframes kpi-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes kpi-rotate{to{transform:rotate(360deg)}}@media (width<=600px){.kpi-page{padding:16px}.kpi-grid-4,.kpi-grid-tiles{grid-template-columns:1fr}.kpi-bridge-arrow{display:none}.kpi-bridge{grid-template-columns:1fr 1fr;display:grid}}@media (prefers-reduced-motion:reduce){.kpi-skeleton,.kpi-spin{animation:none}}.ctl-page{padding:24px 28px}.ctl-grid{grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));align-items:stretch;gap:14px;display:grid}.ctl-chips{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:10px;display:grid}.ctl-figures{flex-wrap:wrap;gap:8px 22px;display:flex}.ctl-card:focus{outline-offset:2px;outline:2px solid #4f3cc9}.ctl-skeleton{animation:1.4s ease-in-out infinite ctl-pulse}.ctl-spin{animation:.9s linear infinite ctl-rotate}@keyframes ctl-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes ctl-rotate{to{transform:rotate(360deg)}}@media (width<=600px){.ctl-page{padding:16px}}@media (prefers-reduced-motion:reduce){.ctl-skeleton,.ctl-spin{animation:none}}
