@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary: #3b82f6;--primary-hover: #2563eb;--bg: #f8fafc;--card: rgba(255, 255, 255, .75);--border: #e2e8f0;--text: #0f172a;--text-muted: #64748b;--shadow-sm: 0 1px 3px rgba(0,0,0,.04);--shadow-md: 0 10px 25px -5px rgba(0,0,0,.05), 0 8px 10px -6px rgba(0,0,0,.01)}body{margin:0;padding:0;font-family:Outfit,sans-serif;background:var(--bg);background-image:radial-gradient(at 0% 0%,hsla(210,100%,93%,1) 0,transparent 50%),radial-gradient(at 100% 100%,hsla(210,100%,93%,1) 0,transparent 50%);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased}.app-layout{display:flex;height:100vh}aside{width:270px;background-color:#fff9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-right:1px solid rgba(255,255,255,.8);padding:2rem 1.5rem;display:flex;flex-direction:column;z-index:10;box-shadow:2px 0 10px #00000005}main{flex:1;padding:2.5rem 3.5rem;overflow-y:auto}.card{background:var(--card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,1);border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-md);transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-2px);box-shadow:0 20px 30px -5px #0000000d,0 10px 15px -5px #00000005}table{width:100%;border-collapse:collapse}th{padding:1.25rem 1rem;text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}td{padding:1rem;text-align:left;border-bottom:1px solid #f1f5f9;font-size:.95rem;vertical-align:middle}tr{transition:background-color .2s}tbody tr:hover{background-color:#ffffff80}.btn{padding:.6rem 1.25rem;border-radius:8px;cursor:pointer;border:1px solid transparent;font-weight:600;display:inline-flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;gap:6px}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg,var(--primary),#1d4ed8);color:#fff;box-shadow:0 4px 10px #2563eb40;border:none}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 6px 15px #2563eb59;transform:translateY(-1px)}.btn-outline{background:rgba(255,255,255,.8);border-color:#cbd5e1;color:var(--text)}.btn-outline:hover{background:#ffffff;border-color:#94a3b8;box-shadow:0 2px 5px #00000005}.form-input{padding:.65rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-family:inherit;width:100%;box-sizing:border-box;transition:all .2s;background:rgba(255,255,255,.8);color:var(--text)}.form-input:focus{outline:none;border-color:var(--primary);background:#ffffff;box-shadow:0 0 0 3px #3b82f640}.toast-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.toast{padding:12px 24px;border-radius:12px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.5);box-shadow:0 10px 15px -3px #0000001a;color:#0f172a;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:10px;animation:slideInRight .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left:4px solid #10b981}.toast-error{border-left:4px solid #ef4444}.sidebar-item-active{background:linear-gradient(90deg,rgba(59,130,246,.1) 0%,transparent 100%);color:var(--primary)!important;box-shadow:inset 4px 0 0 var(--primary)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px;display:block;min-height:20px}.skeleton-text{width:100%;height:12px;margin-bottom:8px}.skeleton-title{width:60%;height:24px;margin-bottom:12px}.status{box-shadow:0 2px 4px #00000005}.status-completed{background:#dcfce7;color:#166534;border:1px solid rgba(22,101,52,.1);box-shadow:0 2px 8px #22c55e26}.card{border:1px solid rgba(255,255,255,.5)}.kpi-card{position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary);opacity:.5}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .4s ease-out forwards}
