*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif}#root{width:100%;height:100%}input:focus{outline-offset:0;outline:2px solid #1d4ed8;border-color:#0000!important}button:focus{outline:none}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.roofos-sidebar{z-index:100;background:#0f172a;flex-direction:column;width:220px;height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0}.roofos-main{background:#f1f5f9;flex:1;min-height:100vh;margin-left:220px}.roofos-page{padding:24px}.roofos-mobile-header,.roofos-bottomnav,.roofos-drawer-backdrop,.drawer-close-btn{display:none}.dark-mode .roofos-main{background:#0f172a!important}.dark-mode .roofos-page,.dark-mode .roofos-page>div,.dark-mode .roofos-page>form{color:#f1f5f9}@media (width<=768px){.roofos-sidebar{width:260px;display:none}.roofos-sidebar.drawer-open{z-index:999;animation:.2s slideInLeft;display:flex;position:fixed;top:0;bottom:0;left:0}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.drawer-close-btn{display:block!important}.roofos-main{min-height:100vh;padding-top:48px;padding-bottom:64px;margin-left:0!important}.roofos-page{padding:14px 12px}.roofos-mobile-header{z-index:200;background:#0f172a;border-bottom:1px solid #1e293b;align-items:center;gap:10px;height:48px;padding:0 14px;display:flex;position:fixed;top:0;left:0;right:0}.roofos-bottomnav{z-index:200;height:60px;padding-bottom:env(safe-area-inset-bottom,0px);background:#0f172a;border-top:1px solid #1e293b;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.roofos-drawer-backdrop{z-index:998;background:#0000008c;display:block;position:fixed;inset:0}}
