@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-color:#0f172a;--surface-color:#1e293b;--surface-hover:#334155;--primary-color:#3b82f6;--primary-hover:#2563eb;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#334155;--danger-color:#ef4444;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--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-glow:0 0 20px #3b82f680;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,sans-serif;line-height:1.5}h1{letter-spacing:-.025em;background:linear-gradient(90deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}h2{margin-bottom:1rem;font-size:1.5rem;font-weight:600}p{color:var(--text-secondary)}.container{max-width:1200px;margin:0 auto;padding:2rem}.header{text-align:center;margin-bottom:3rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition);text-align:center;flex-direction:column;align-items:center;padding:2rem;display:flex;position:relative;overflow:hidden}.card:before{content:"";border-radius:var(--radius-xl);-webkit-mask-composite:xor;opacity:0;transition:var(--transition);background:linear-gradient(135deg,#ffffff1a,#fff0);padding:2px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.card:hover{box-shadow:var(--shadow-lg);border-color:#60a5fa80;transform:translateY(-5px)}.card:hover:before{opacity:1}.card.disabled{opacity:.5;cursor:not-allowed;filter:grayscale()}.card.disabled:hover{box-shadow:none;border-color:var(--border-color);transform:none}.card-icon{width:64px;height:64px;color:var(--primary-color);transition:var(--transition);background:#3b82f61a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.card:hover:not(.disabled) .card-icon{background:var(--primary-color);color:#fff;box-shadow:var(--shadow-glow)}.form-container{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-xl);max-width:800px;margin:0 auto;padding:2rem}.form-group{margin-bottom:1.5rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}input[type=text],input[type=date]{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:var(--transition);background-color:#0f172a80;padding:.75rem 1rem;font-family:inherit;font-size:1rem}input[type=text]:focus,input[type=date]:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #3b82f633}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 12px #3b82f64d}.btn-outline{border:1px solid var(--border-color);color:var(--text-primary);background-color:#0000}.btn-outline:hover{border-color:var(--text-primary);background-color:#ffffff0d}.btn-danger{color:var(--danger-color);background-color:#ef44441a}.btn-danger:hover{background-color:#ef444433}.btn-icon{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.btn-icon:hover{color:var(--danger-color);background-color:#ef44441a}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.gap-2{gap:.5rem}.gap-4{gap:1rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.requests-list{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:2rem}.request-item{border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition);background-color:#0f172a4d;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:1rem;display:flex}.request-item:hover{border-color:var(--primary-color);background-color:#0f172a99}.request-details{gap:2rem;display:flex}.request-name{font-weight:600}.request-dates{color:var(--text-secondary);align-items:center;gap:.5rem;display:flex}.dropzone{border:2px dashed var(--border-color);border-radius:var(--radius-xl);text-align:center;cursor:pointer;transition:var(--transition);background-color:#0f172a33;padding:3rem 2rem}.dropzone:hover,.dropzone.active{border-color:var(--primary-color);background-color:#3b82f60d}.dropzone-icon{width:48px;height:48px;color:var(--primary-color);margin:0 auto 1rem}.back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:1rem;font-weight:500;text-decoration:none;display:inline-flex}.back-btn:hover{color:var(--text-primary)}.tabs{border-bottom:1px solid var(--border-color);gap:1rem;margin-bottom:2rem;padding-bottom:1rem;display:flex}.tab{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:var(--transition);background:0 0;border:none;padding:.5rem 1rem;font-size:1rem;font-weight:500}.tab:hover{color:var(--text-primary);background-color:#ffffff0d}.tab.active{color:#fff;background-color:var(--primary-color)}
