*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif}.app-shell{display:flex;min-height:100vh}.nav-sidebar{width:200px;flex-shrink:0;background:#1a5276;color:#fff;display:flex;flex-direction:column;min-height:100vh}.nav-overlay{display:none}.hamburger-btn{display:none;background:none;border:none;cursor:pointer;padding:.4rem;color:#1a5276;flex-direction:column;gap:5px}.hamburger-btn span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}.mobile-topbar{display:none;align-items:center;gap:.8rem;padding:.75rem 1rem;background:#fff;border-bottom:1px solid #ddd;position:sticky;top:0;z-index:100}.mobile-topbar-title{font-weight:700;color:#1a5276;font-size:1rem}.main-area{flex:1;padding:1.5rem;background:#f5f5f5;min-width:0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px;box-shadow:0 1px 4px #00000014}.table-wrap table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:480px}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.grid-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.8rem}.grid-two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.form-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end;margin-bottom:.5rem}.form-row input,.form-row select{min-width:0;flex:1 1 120px}.card{background:#fff;border-radius:8px;padding:1.2rem;box-shadow:0 1px 4px #00000014}.pagination{display:flex;gap:.5rem;align-items:center;margin-top:1rem;flex-wrap:wrap}.tab-strip{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}@media (max-width: 768px){.nav-sidebar{position:fixed;top:0;left:0;bottom:0;width:240px;transform:translate(-100%);transition:transform .25s ease;z-index:200;box-shadow:none;min-height:100%}.nav-sidebar.open{transform:translate(0);box-shadow:4px 0 24px #00000040}.nav-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:199}.hamburger-btn,.mobile-topbar{display:flex}.main-area{padding:1rem}.grid-cards{grid-template-columns:1fr}.grid-form{grid-template-columns:1fr 1fr}.grid-two-col{grid-template-columns:1fr}.profile-form{max-width:100%!important}}@media (max-width: 480px){.grid-form{grid-template-columns:1fr}.form-row{flex-direction:column}.form-row input,.form-row select{flex:unset;width:100%}}
