@import"https://fonts.googleapis.com/icon?family=Material+Icons";.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:Inter,-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;background-color:#f9fafb;color:#111827}:root{--primary-blue: #3B82F6;--primary-navy: #1E3A8A;--secondary-emerald: #10B981;--secondary-dark-green: #047857;--accent-purple: #8B5CF6;--accent-deep-purple: #6D28D9;--bg-light: #F9FAFB;--text-dark: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--success: #22C55E;--warning: #F59E0B;--error: #EF4444;--info: #3B82F6;--bg-white: #FFFFFF;--bg-gray-50: #F9FAFB;--bg-gray-100: #F3F4F6;--bg-gray-200: #E5E7EB;--border-gray: #E5E7EB;--border-gray-300: #D1D5DB;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--text-dark)}h1{font-size:2.25rem;font-weight:700}h2{font-size:1.875rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}h4{font-size:1.25rem;font-weight:600}h5{font-size:1.125rem;font-weight:600}h6{font-size:1rem;font-weight:600}p{line-height:1.6;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;height:40px;border-radius:.5rem;font-weight:500;font-size:.875rem;line-height:1.25;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease-in-out;gap:.5rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.btn-primary{background-color:var(--primary-blue);color:#fff}.btn.btn-primary:hover:not(:disabled){background-color:var(--primary-navy);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn.btn-secondary{background-color:var(--secondary-emerald);color:#fff}.btn.btn-secondary:hover:not(:disabled){background-color:var(--secondary-dark-green);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn.btn-outline{background-color:transparent;color:var(--primary-blue);border:1px solid var(--primary-blue)}.btn.btn-outline:hover:not(:disabled){background-color:var(--primary-blue);color:#fff}.btn.btn-ghost{background-color:transparent;color:var(--text-secondary)}.btn.btn-ghost:hover:not(:disabled){background-color:var(--bg-gray-100);color:var(--text-dark)}.btn.btn-sm{padding:.5rem 1rem;font-size:.75rem}.btn.btn-lg{padding:1rem 2rem;font-size:1rem}.card{background-color:var(--bg-white);border-radius:.75rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-gray);overflow:hidden;transition:all .2s ease-in-out}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card .card-header{padding:1.5rem;border-bottom:1px solid var(--border-gray)}.card .card-header h3{margin:0;font-size:1.25rem;font-weight:600}.card .card-body{padding:1.5rem}.card .card-footer{padding:1rem 1.5rem;background-color:var(--bg-gray-50);border-top:1px solid var(--border-gray)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-dark)}.form-group .form-control{width:100%;padding:.75rem 1rem;border:1px solid var(--border-gray-300);border-radius:.5rem;font-size:.875rem;transition:all .2s ease-in-out}.form-group .form-control:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #3b82f61a}.form-group .form-control.is-invalid{border-color:var(--error)}.form-group .form-error{margin-top:.25rem;font-size:.75rem;color:var(--error)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.d-flex{display:flex}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-none{display:none}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.justify-content-around{justify-content:space-around}.align-items-center{align-items:center}.align-items-start{align-items:flex-start}.align-items-end{align-items:flex-end}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.w-100{width:100%}.h-100{height:100%}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border-gray-300);border-radius:50%;border-top-color:var(--primary-blue);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.badge.badge-success{background-color:#22c55e1a;color:var(--success)}.badge.badge-warning{background-color:#f59e0b1a;color:var(--warning)}.badge.badge-error{background-color:#ef44441a;color:var(--error)}.badge.badge-info{background-color:#3b82f61a;color:var(--info)}@media (max-width: 768px){.container{padding:0 1rem}h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-gray-100)}::-webkit-scrollbar-thumb{background:var(--border-gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*:focus{outline:2px solid var(--primary-blue);outline-offset:2px}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-up{animation:slideUp .3s ease-in-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
