@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--primary:#2563eb;--primary-hover:#1d4ed8;--secondary:#64748b;--success:#10b981;--success-hover:#059669;--danger:#ef4444;--danger-hover:#dc2626;--warning:#f59e0b;--info:#3b82f6;--light:#f8fafc;--dark:#1e293b;--background:#fff;--foreground:#0f172a;--border:#e2e8f0;--card-bg:#fff;--shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--radius:0.75rem;--transition:all 0.2s ease}@media (prefers-color-scheme:dark){:root{--primary:#3b82f6;--primary-hover:#2563eb;--secondary:#94a3b8;--success:#22c55e;--success-hover:#16a34a;--danger:#f87171;--danger-hover:#ef4444;--warning:#fbbf24;--info:#60a5fa;--light:#1e293b;--dark:#f1f5f9;--background:#0f172a;--foreground:#f1f5f9;--border:#334155;--card-bg:#1e293b;--shadow:0 1px 3px 0 rgba(0,0,0,.3),0 1px 2px -1px rgba(0,0,0,.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,.3),0 2px 4px -2px rgba(0,0,0,.3);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.3),0 4px 6px -4px rgba(0,0,0,.3)}}body,html{max-width:100vw;overflow-x:hidden;scroll-behavior:smooth}body{color:var(--foreground);background:var(--background);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn{border-radius:calc(var(--radius) - .25rem);font-weight:500;transition:var(--transition);border:none}.btn-primary{background-color:var(--primary);border-color:var(--primary)}.btn-primary:hover{background-color:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-success{background-color:var(--success);border-color:var(--success)}.btn-success:hover{background-color:var(--success-hover);border-color:var(--success-hover);transform:translateY(-1px)}.btn-danger{background-color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background-color:var(--danger-hover);border-color:var(--danger-hover);transform:translateY(-1px)}.modal-content{border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-lg);background:var(--card-bg)}.modal-header{border-bottom:1px solid var(--border);background:var(--light)}.modal-footer{border-top:1px solid var(--border);background:var(--light)}.form-control,.form-select{border-radius:calc(var(--radius) - .25rem);border:1px solid var(--border);transition:var(--transition)}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem rgba(37,99,235,.25)}@keyframes spin{to{transform:rotate(1turn)}}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:2rem;height:2rem;animation:spin .8s linear infinite}.image-loading{background:linear-gradient(90deg,var(--light) 25%,var(--border) 50%,var(--light) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.image-fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.badge{border-radius:calc(var(--radius) - .5rem);font-weight:500;padding:.25rem .75rem}.alert{border-radius:calc(var(--radius) - .25rem);border:1px solid}.list-group-item{border:1px solid var(--border);background:var(--card-bg);transition:var(--transition)}.list-group-item:hover{background:var(--light)}.progress{border-radius:calc(var(--radius) - .25rem);background-color:var(--light)}.progress-bar{background-color:var(--primary);transition:width .3s ease}img{max-width:100%;height:auto}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--light)}::-webkit-scrollbar-thumb{background:var(--secondary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--dark)}@media (prefers-color-scheme:dark){html{color-scheme:dark}}