@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--background:#f8fafc;--foreground:#0f172a;--card:#fff;--card-border:#e2e8f0;--card-foreground:#0f172a;--primary:#2563eb;--primary-foreground:#fff;--secondary:#f1f5f9;--secondary-foreground:#1e293b;--muted:#f1f5f9;--muted-foreground:#64748b;--accent:#0284c7;--accent-foreground:#fff;--destructive:#ef4444;--destructive-foreground:#fff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--border:#e2e8f0;--input:#fff;--ring:#2563eb;--card-hover:#f1f5f9;--radius:.75rem}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}.mono{font-family:JetBrains Mono,monospace}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}.glass{background:var(--card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:var(--radius)}.container{flex:1;width:100%;padding:2rem}.btn{cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{background-color:var(--accent)}.btn-secondary{background-color:var(--secondary);color:var(--secondary-foreground);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--card-hover)}.btn-outline{border:1px solid var(--border);color:var(--foreground);background-color:#0000}.btn-outline:hover{background-color:var(--secondary)}.form-group{margin-bottom:1rem}.form-label{color:var(--foreground);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.form-input{background-color:var(--input);border:1px solid var(--border);width:100%;color:var(--foreground);border-radius:.5rem;padding:.5rem .75rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--ring);outline:none;box-shadow:0 0 0 2px #3b82f633}.card{background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--card-border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.card-header{margin-bottom:1rem}.card-title{font-size:1.25rem;font-weight:600}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-muted{color:var(--muted-foreground)}.bg-success{background-color:var(--success)}.bg-warning{background-color:var(--warning)}.bg-danger{background-color:var(--danger)}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(var(--pulse-color), .7);transform:scale(.95)}70%{box-shadow:0 0 0 6px rgba(var(--pulse-color), 0);transform:scale(1)}to{box-shadow:0 0 0 0 rgba(var(--pulse-color), 0);transform:scale(.95)}}.status-dot{border-radius:50%;width:12px;height:12px;display:inline-block}.status-dot.green{background-color:var(--success);--pulse-color:16, 185, 129;animation:2s infinite pulse}.status-dot.amber{background-color:var(--warning);--pulse-color:245, 158, 11;animation:2s infinite pulse}.status-dot.red{background-color:var(--danger);--pulse-color:239, 68, 68;animation:2s infinite pulse}.app-layout{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--card-border);flex-direction:column;width:250px;display:flex}.sidebar-header{border-bottom:1px solid var(--card-border);padding:1.5rem}.logo{color:var(--primary);font-size:1.25rem;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.nav-item{color:var(--foreground);border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background-color:#0000000a;text-decoration:none}.nav-divider{background-color:var(--card-border);height:1px;margin:1rem 0}.main-content{flex-direction:column;flex:1;height:100vh;display:flex;overflow-y:auto}.top-header{border-bottom:1px solid var(--card-border);z-index:10;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.user-profile{align-items:center;gap:.75rem;display:flex}.avatar{background-color:var(--primary);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:700;display:flex}.content-container{flex:1;padding:2rem}.icon-box{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.flex-row-reverse{flex-direction:row-reverse}.shrink-0{flex-shrink:0}.items-start{align-items:flex-start}.w-8{width:2rem}.h-8{height:2rem}.w-12{width:3rem}.h-12{height:3rem}.w-full{width:100%}.h-full{height:100%}.max-w-4xl{max-width:56rem}.max-w-\[80\%\]{max-width:80%}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-2{margin-top:.5rem}.p-0{padding:0}.p-3{padding:.75rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.px-4{padding-left:1rem;padding-right:1rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-4{padding-left:1rem}.pr-12{padding-right:3rem}.pb-1{padding-bottom:.25rem}.gap-3{gap:.75rem}.gap-6{gap:1.5rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.uppercase{text-transform:uppercase}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-white{color:#fff}.text-primary{color:var(--primary)}.bg-primary{background-color:var(--primary)}.border{border:1px solid var(--border)}.border-b{border-bottom:1px solid var(--border)}.border-t{border-top:1px solid var(--border)}.border-0,.last\:border-0:last-child{border:0}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-full{border-radius:9999px}.rounded-tl{border-top-left-radius:.25rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-tr-none{border-top-right-radius:0}.rounded-tl-none{border-top-left-radius:0}.bg-\[var\(--card-hover\)\],.hover\:bg-\[var\(--card-hover\)\]:hover{background-color:#0000000a}.hover\:border-primary:hover{border-color:var(--primary)}.hover\:text-primary:hover{color:var(--primary)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.relative{position:relative}.absolute{position:absolute}.inset-0{inset:0}.right-2{right:.5rem}.top-1\/2{top:50%}.-translate-y-1\/2{transform:translateY(-50%)}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:col-span-2{grid-column:span 2/span 2}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s forwards fadeIn}
