@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #0a0e1a;--bg-secondary: #0f172a;--glass-bg: rgba(30, 41, 59, .45);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .16);--text-primary: #f8fafc;--text-muted: #b6c2d4;--accent-cyan: #22d3ee;--accent-violet: #a78bfa;--brand-logo-url: url(/leohubsso-logo.svg);--color-success: #10b981;--color-error: #f43f5e;--color-info: #3b82f6;font-family:Plus Jakarta Sans,sans-serif;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary)}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 50% 0%,#1e1b4b 0%,var(--bg-primary) 70%)}.container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem;position:relative;min-height:100vh;display:flex;flex-direction:column}.glow-sphere{position:absolute;border-radius:50%;filter:blur(100px);z-index:0;opacity:.15;pointer-events:none}.glow-1{width:400px;height:400px;top:10%;left:-100px;background:var(--accent-cyan)}.glow-2{width:400px;height:400px;bottom:10%;right:-100px;background:var(--accent-violet)}.header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;margin-bottom:3.5rem;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.logo-area{display:flex;align-items:center;gap:.75rem}.logo-icon{width:2rem;height:2rem;display:inline-flex;flex:0 0 auto;background:center / contain no-repeat var(--brand-logo-url);filter:drop-shadow(0 6px 12px rgba(249,115,22,.24))}.title-gradient{font-family:Outfit,sans-serif;font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,#fff,#dbeafe);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-admin-badge{display:inline-flex;align-items:center;min-height:1.35rem;padding:.2rem .55rem;border-radius:.35rem;background:#f8fafc;color:#111827;-webkit-text-fill-color:#111827;-webkit-background-clip:border-box;background-clip:border-box;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 1px #22d3ee2e,0 8px 18px #00000047;font-size:.75rem;font-weight:800;line-height:1}.badge-system{background:#a78bfa38;border:1px solid rgba(196,181,253,.42);color:#ede9fe;padding:.25rem .75rem;border-radius:9999px;font-size:.85rem;font-weight:600}.dashboard-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;flex:1}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:1.25rem;padding:2rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:0 8px 32px #0000005e}.card:hover{transform:translateY(-4px);border-color:var(--glass-border-hover);box-shadow:0 12px 40px #00000080}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.card h3{font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:600;margin-bottom:1rem}.card-header h3{margin-bottom:0}.card-description{font-size:.95rem;color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.status-container{background:#0f172a99;border-radius:.75rem;padding:1.25rem;margin-bottom:2rem;flex:1;display:flex;align-items:center}.status-text{text-align:center;width:100%}.status-detail{width:100%;display:flex;flex-direction:column;gap:.75rem}.status-badge{display:inline-block;align-self:flex-start;padding:.2rem .6rem;border-radius:.375rem;font-size:.75rem;font-weight:700;letter-spacing:.05em}.status-badge.success{background:#10b98126;color:var(--color-success);border:1px solid rgba(16,185,129,.3)}.status-badge.error{background:#f43f5e26;color:var(--color-error);border:1px solid rgba(244,63,94,.3)}.status-badge.info{background:#3b82f626;color:var(--color-info);border:1px solid rgba(59,130,246,.3)}.status-badge.warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.info-row{display:flex;justify-content:space-between;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.04);padding-bottom:.5rem}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row .label{color:var(--text-muted)}.info-row .value{font-weight:500}.info-row .value.code{font-family:monospace;color:var(--accent-cyan)}.detail-text{font-size:.9rem;font-weight:600}.help-text{font-size:.8rem;color:var(--text-muted)}.pulse-indicator{display:inline-block;width:10px;height:10px;border-radius:50%;position:relative}.pulse-indicator:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%;top:0;left:0;transform:scale(1);animation:pulse 2s infinite ease-out}.pulse-indicator.success{background-color:var(--color-success)}.pulse-indicator.success:after{background-color:var(--color-success)}.pulse-indicator.error{background-color:var(--color-error)}.pulse-indicator.error:after{background-color:var(--color-error)}.pulse-indicator.loading{background-color:var(--accent-cyan)}.pulse-indicator.loading:after{background-color:var(--accent-cyan)}@keyframes pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(2.5);opacity:0}}.btn-primary{width:100%;background:linear-gradient(135deg,var(--accent-cyan) 0%,var(--accent-violet) 100%);color:#000;font-weight:700;border:none;border-radius:.75rem;padding:.85rem 1.5rem;font-size:.95rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px #22d3ee33}.btn-primary:hover:not(:disabled){opacity:.9;transform:scale(1.01);box-shadow:0 4px 25px #8b5cf666}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.package-list{display:flex;flex-direction:column;gap:1rem}.package-item{display:flex;justify-content:space-between;align-items:center;background:#0f172a66;border:1px solid rgba(255,255,255,.04);padding:1rem;border-radius:.75rem;transition:border-color .2s}.package-item:hover{border-color:#ffffff1a}.package-info{display:flex;align-items:center;gap:1rem}.pkg-icon{font-size:1.5rem}.package-info h4{font-size:.95rem;font-weight:600;margin-bottom:.15rem}.muted{color:var(--text-muted)}.package-info p{font-size:.8rem}.footer{position:relative;z-index:1;text-align:center;padding:2.5rem 0 1rem;font-size:.85rem;border-top:1px solid var(--glass-border);margin-top:4rem}.oidc-card{max-width:460px;width:100%;margin:2rem auto;align-self:center}.oidc-form{display:flex;flex-direction:column;gap:1.25rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.5rem;text-align:left}.form-group label{font-size:.85rem;font-weight:600;color:#d7deea}.form-control{background:#0f172a99;border:1px solid var(--glass-border);border-radius:.5rem;padding:.75rem 1rem;color:var(--text-primary);font-family:inherit;font-size:.95rem;transition:all .2s ease}.form-control:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 10px #22d3ee26;background:#0f172acc}.code-input{font-size:1.8rem;letter-spacing:.35em;font-weight:700}.client-logo-md{width:64px;height:64px;object-fit:contain;border-radius:.75rem;background:#ffffff0d;padding:.5rem;margin-bottom:1rem;border:1px solid var(--glass-border)}.logo-icon-lg{width:4rem;height:4rem;display:block;margin-bottom:1rem;margin-left:auto;margin-right:auto;background:center / contain no-repeat var(--brand-logo-url);filter:drop-shadow(0 8px 18px rgba(249,115,22,.25))}.scopes-container{background:#0f172a66;border:1px solid var(--glass-border);border-radius:.75rem;padding:1.25rem;max-height:240px;overflow-y:auto;text-align:left}.scopes-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.scope-item{display:flex;align-items:flex-start;gap:.75rem}.scope-check{color:var(--color-success);font-weight:700;font-size:1.1rem;line-height:1.2}.oidc-actions{width:100%}.grid-col-2{display:grid;grid-template-columns:1fr 1fr}.gap-sm{gap:1rem}.w-full{width:100%}.text-center{text-align:center}.text-sm{font-size:.9rem}.text-xs{font-size:.8rem}.mt-xs{margin-top:.25rem}.mt-sm{margin-top:.75rem}.mt-md{margin-top:1.5rem}.mb-md{margin-bottom:1.5rem}.btn-secondary{width:100%;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:.75rem;padding:.85rem 1.5rem;font-size:.95rem;color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#ffffff1a;border-color:var(--glass-border-hover)}
