@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--accent-color:#3b82f6;--accent-hover:#2563eb;--danger-color:#ef4444;--success-color:#10b981;--border-color:#334155;--ring-color:#3b82f680;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #00000080,0 8px 10px -6px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:2rem}.header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:1rem;display:flex}.header-title{background:linear-gradient(90deg,#60a5fa,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2rem;font-weight:700}.card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;display:grid}.card{background-color:var(--bg-secondary);box-shadow:var(--shadow-md);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow-xl);border-color:var(--bg-tertiary);transform:translateY(-4px)}.card-image{object-fit:cover;background-color:var(--bg-tertiary);width:100%;height:200px}.card-content{flex-direction:column;flex:1;padding:1.5rem;display:flex}.card-title{margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.card-desc{color:var(--text-secondary);flex:1;margin-bottom:1rem;font-size:.95rem}.btn{border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--accent-color);color:#fff}.btn-primary:hover{background-color:var(--accent-hover)}.btn-outline{border:1px solid var(--border-color);color:var(--text-primary);background-color:#0000}.btn-outline:hover{background-color:var(--bg-tertiary)}.btn:active{transform:scale(.98)}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.form-input{background-color:var(--bg-secondary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--ring-color);outline:none}.file-drop-area{border:2px dashed var(--border-color);text-align:center;background-color:var(--bg-secondary);cursor:pointer;border-radius:12px;padding:3rem 2rem;transition:all .2s}.file-drop-area:hover,.file-drop-area.active{border-color:var(--accent-color);background-color:#3b82f60d}.text-center{text-align:center}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.ml-2{margin-left:.5rem}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}
