:root{--gm-primary: #0cb5bf;--gm-primary-dark: #0e9384;--gm-primary-light: rgba(12, 181, 191, .12);--gm-bg: #f5f7fa;--gm-paper: #ffffff;--gm-text: #2c3e50;--gm-text-muted: #64748b;--gm-error: #ef4444;--gm-warning: #f59e0b;--gm-success: #10b981;--gm-info: #0e9384;--gm-grey-50: #f8fafc;--gm-grey-100: #f1f5f9;--gm-grey-200: #e2e8f0;--gm-grey-300: #cbd5e1;--gm-grey-400: #94a3b8;--gm-grey-500: #64748b;--gm-radius-card: 12px;--gm-radius-btn: 8px;--gm-radius-field: 8px;--gm-radius-chip: 16px;--gm-radius-menu: 8px;--gm-shadow-card: 0 4px 16px rgba(0,0,0,.08);--gm-shadow-card-hover: 0 8px 24px rgba(0,0,0,.12);--gm-shadow-dialog: 0 2px 12px rgba(0,0,0,.08);--gm-shadow-menu: 0 4px 20px rgba(0,0,0,.15);--gm-shadow-btn-hover: 0 6px 16px rgba(0,0,0,.12);--gm-font: "Avenir", "Helvetica Neue", Helvetica, Arial, sans-serif;--gm-space-half: 4px;--gm-space-1: 8px;--gm-space-2: 16px;--gm-space-3: 24px;--gm-space-4: 32px;--gm-modal-grad-create: linear-gradient(135deg, #f0f9ff 0%, #e3f2fd 100%);--gm-modal-grad-edit: linear-gradient(135deg, #f3f0ff 0%, #ede7f6 100%);--gm-modal-grad-delete: linear-gradient(135deg, #fff5f5 0%, #fee2e2 100%);--gm-modal-grad-view: linear-gradient(135deg, #f8f9ff 0%, #eef2ff 100%);--gm-modal-border-create: #90caf9;--gm-modal-border-edit: #ce93d8;--gm-modal-border-delete: #fca5a5;--gm-modal-border-view: #e2e8f0}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0;width:100%}body{font-family:var(--gm-font);background-color:var(--gm-bg);color:var(--gm-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#root{max-width:100%;position:relative;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#c1c1c1 #f1f1f1}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background-color:#f1f1f1;border-radius:4px}*::-webkit-scrollbar-thumb{background-color:#c1c1c1;border-radius:4px}*::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}h1,h2,h3,h4,h5,h6{font-family:var(--gm-font);color:var(--gm-text);margin:0}p{margin:0}a{font-family:var(--gm-font);color:var(--gm-primary-dark);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.8;text-decoration:underline}button{font-family:var(--gm-font);cursor:pointer}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#f8f8f8,#f0f0f0 75%);background-size:200% 100%;animation:gm-shimmer 1.5s infinite linear}@keyframes gm-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.gm-fade-in{opacity:0;animation:gm-fadeIn .4s ease forwards}@keyframes gm-fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.gm-hover-lift{transition:transform .2s ease,box-shadow .2s ease}.gm-hover-lift:hover{transform:translateY(-3px);box-shadow:var(--gm-shadow-card-hover)}.gm-page{padding:var(--gm-space-3);background-color:var(--gm-bg);min-height:100%}.gm-status-success{color:var(--gm-success)}.gm-status-error{color:var(--gm-error)}.gm-status-warning{color:var(--gm-warning)}.gm-status-info{color:var(--gm-info)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.auth-container{height:100vh;display:flex;overflow:hidden;background-color:#f5f7fa}.auth-content{width:100%;max-width:100%;display:flex;align-items:center;justify-content:center}.auth-form-container{width:100%;max-width:450px;padding:2.5rem;background-color:#fff;border-radius:16px;box-shadow:0 10px 30px #00000014;transition:all .3s ease}.auth-logo{margin-bottom:2rem}.animate-fade-in{opacity:0;animation:fadeIn .5s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bg-gradient-primary{background:linear-gradient(135deg,var(--gm-primary) 0%,var(--gm-primary-dark) 100%)}.bg-gradient-secondary{background:linear-gradient(135deg,var(--gm-primary-dark) 0%,var(--gm-primary) 100%)}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#f8f8f8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite linear}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 20px #0000001a}.footer-spacer{height:56px;width:100%}
