body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color: #1976d2;--primary-light: #42a5f5;--primary-dark: #1565c0;--secondary-color: #dc004e;--success-color: #2e7d32;--warning-color: #f57c00;--error-color: #d32f2f;--info-color: #0288d1;--background-color: #fafafa;--surface-color: #ffffff;--on-surface: #212121;--text-primary: #212121;--text-secondary: #757575;--divider: #e0e0e0;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--shadow-sm: 0px 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0px 4px 8px rgba(0, 0, 0, .15);--shadow-lg: 0px 8px 16px rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--background-color);color:var(--text-primary);line-height:1.5}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.flex{display:flex}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-start{display:flex;justify-content:flex-start;align-items:center}.flex-end{display:flex;justify-content:flex-end;align-items:center}.flex-wrap{flex-wrap:wrap}.flex-grow{flex-grow:1}.m-0{margin:0}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-0{margin-left:0}.ml-xs{margin-left:var(--spacing-xs)}.ml-sm{margin-left:var(--spacing-sm)}.ml-md{margin-left:var(--spacing-md)}.ml-lg{margin-left:var(--spacing-lg)}.ml-xl{margin-left:var(--spacing-xl)}.mr-0{margin-right:0}.mr-xs{margin-right:var(--spacing-xs)}.mr-sm{margin-right:var(--spacing-sm)}.mr-md{margin-right:var(--spacing-md)}.mr-lg{margin-right:var(--spacing-lg)}.mr-xl{margin-right:var(--spacing-xl)}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.pt-0{padding-top:0}.pt-xs{padding-top:var(--spacing-xs)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pt-xl{padding-top:var(--spacing-xl)}.pb-0{padding-bottom:0}.pb-xs{padding-bottom:var(--spacing-xs)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}.pb-xl{padding-bottom:var(--spacing-xl)}.pl-0{padding-left:0}.pl-xs{padding-left:var(--spacing-xs)}.pl-sm{padding-left:var(--spacing-sm)}.pl-md{padding-left:var(--spacing-md)}.pl-lg{padding-left:var(--spacing-lg)}.pl-xl{padding-left:var(--spacing-xl)}.pr-0{padding-right:0}.pr-xs{padding-right:var(--spacing-xs)}.pr-sm{padding-right:var(--spacing-sm)}.pr-md{padding-right:var(--spacing-md)}.pr-lg{padding-right:var(--spacing-lg)}.pr-xl{padding-right:var(--spacing-xl)}.w-full{width:100%}.w-auto{width:auto}.w-fit{width:fit-content}.max-w-sm{max-width:400px}.max-w-md{max-width:600px}.max-w-lg{max-width:800px}.max-w-xl{max-width:1000px}.h-full{height:100%}.h-auto{height:auto}.min-h-screen{min-height:100vh}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--success-color)}.text-warning{color:var(--warning-color)}.text-error{color:var(--error-color)}.text-info{color:var(--info-color)}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.card{background:var(--surface-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.card-header{border-bottom:1px solid var(--divider);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-lg)}.card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.btn-group{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.form-group{margin-bottom:var(--spacing-md)}.form-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.form-col{flex:1;min-width:200px}.mobile-form-spacing{margin-bottom:var(--spacing-sm)}.mobile-form-input,.mobile-form-select{min-height:44px}.mobile-dialog-padding{padding:var(--spacing-sm)}.mobile-dialog-actions{padding:var(--spacing-sm);gap:var(--spacing-sm)}.mobile-dialog-actions>*{min-height:44px;min-width:100px}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.mobile-stack{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-full-width{width:100%}.mobile-hidden{display:none}.mobile-text-sm{font-size:.875rem}.mobile-p-xs{padding:var(--spacing-xs)}.mobile-m-xs{margin:var(--spacing-xs)}.touch-target{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.touch-button{padding:var(--spacing-sm) var(--spacing-md);min-height:44px;font-size:1rem}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm)}@media (max-width: 599px){.container{padding:0 var(--spacing-xs)}.mobile-stack{gap:var(--spacing-xs)}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.form-row,.btn-group{flex-direction:column}.card-title{font-size:1.125rem}.mobile-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.mobile-table-compact{font-size:.875rem}.mobile-table-compact th,.mobile-table-compact td{padding:var(--spacing-xs) var(--spacing-sm)}}@media (min-width: 600px) and (max-width: 959px){.container{padding:0 var(--spacing-md)}.tablet-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}}@media (min-width: 960px){.mobile-hidden,.desktop-show{display:block}}@media (max-width: 959px) and (orientation: landscape){.landscape-compact{padding:var(--spacing-xs) var(--spacing-sm)}.MuiDrawer-paper{height:100vh!important}}@supports (-webkit-touch-callout: none){.ios-safe-area{padding-bottom:env(safe-area-inset-bottom)}}@media screen and (max-width: 767px){input[type=text],input[type=number],input[type=email],input[type=password],select,textarea{font-size:16px!important}}@media (min-resolution: 2dppx){.high-dpi-text{font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media (prefers-color-scheme: dark){:root{--background-color: #121212;--surface-color: #1e1e1e;--on-surface: #ffffff;--text-primary: #ffffff;--text-secondary: #b3b3b3;--divider: #333333}}.hidden{display:none}.visible{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--divider);border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
