.dashboard-root{display:flex;min-height:100vh;width:100vw;overflow:hidden}.dashboard-sidebar{width:260px;background:var(--sidebar-bg);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:1.5rem 1rem;transition:background .3s ease;flex-shrink:0}.sidebar-logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:var(--ink);margin-bottom:2rem;padding:0 .5rem}.sidebar-logo img{width:32px;height:32px;border-radius:8px;object-fit:contain}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem;flex:1 1}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:10px;color:var(--ink);font-weight:500;opacity:.7;transition:all .2s ease;cursor:pointer;background:transparent;border:none;font-size:.95rem;font-family:Space Grotesk,sans-serif;text-align:left}.sidebar-link.active,.sidebar-link:hover{opacity:1;background:var(--accent-soft)}.sidebar-link.active{color:var(--accent);font-weight:600;border-left:3px solid var(--accent)}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;margin-top:auto;font-family:Space Grotesk,sans-serif;font-size:.9rem;transition:all .2s ease}.theme-toggle:hover{background:var(--accent-soft)}.dashboard-main{flex:1 1;overflow-y:auto;padding:2rem;background:var(--bg);transition:background .3s ease}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;width:100%}.header-actions{display:flex;gap:1rem;align-items:center}.sidebar-section-divider{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.sidebar-section-label{font-size:.75rem;color:var(--ink);padding:0 1rem;opacity:.5;margin-bottom:.75rem;display:block;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.sidebar-link-secondary{padding:.5rem 1rem;opacity:.6;font-size:.9rem}.sidebar-link-secondary:hover{opacity:1}.dashboard-header h1{margin:0;font-size:2rem;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.user-profile-btn{background:var(--card-bg);border:1px solid var(--line);color:var(--ink);padding:.6rem 1.25rem;border-radius:12px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:var(--font-mono);transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.user-profile-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-card{width:min(520px,100%);background:var(--card-bg);border:1px solid var(--line);border-radius:16px;padding:1.25rem;display:grid;grid-gap:.75rem;gap:.75rem}.auth-card label{display:grid;grid-gap:.4rem;gap:.4rem;font-size:.9rem}.auth-card input,.auth-card select{padding:.55rem .7rem;border-radius:10px;border:1px solid var(--line);font-family:Space Grotesk,sans-serif}.oauth-link{display:inline-block;background:#131821;color:#fff;text-decoration:none;padding:.55rem .85rem;border-radius:10px;font-family:IBM Plex Mono,monospace}.auth-divider{border-top:1px dashed var(--line);padding-top:.7rem;color:#5f6470;font-size:.85rem}.auth-error{color:var(--warn);margin:0}.auth-strip{max-width:1200px;margin:1rem auto 0;padding:0 2rem;display:flex;justify-content:flex-end;gap:.6rem;align-items:center}.hero{background:var(--card-bg);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--ink);padding:1.5rem;border-radius:18px;box-shadow:0 18px 60px rgba(19,24,33,.08);animation:rise-in .5s ease-out}.hero-link{display:inline-block;margin-top:.35rem;border:1px solid var(--line);border-radius:10px;padding:.45rem .65rem;text-decoration:none;font-family:IBM Plex Mono,monospace}.hero-link:hover{border-color:var(--accent)}.kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;opacity:.8}.chart-grid,.insight-grid,.metrics-grid{display:grid;grid-gap:1.25rem;gap:1.25rem}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.insight-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.card{background:var(--card-bg);border:1px solid var(--line);border-radius:20px;padding:1.5rem;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 4px 24px rgba(0,0,0,.04);animation:fade-up .5s cubic-bezier(.16,1,.3,1);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s ease}[data-theme=dark] .card{background:rgba(19,24,33,.7);box-shadow:0 8px 32px rgba(0,0,0,.3);border-color:rgba(255,255,255,.08)}.card:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 12px 40px rgba(20,184,166,.12);border-color:var(--accent-soft)}[data-theme=dark] .card:hover{box-shadow:0 12px 40px rgba(0,0,0,.5);border-color:var(--accent)}.metric-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.trend-indicator{display:flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;padding:.25rem .5rem;border-radius:8px;font-family:var(--font-mono)}.trend-indicator.positive{color:#10b981;background:rgba(16,185,129,.1)}.trend-indicator.negative{color:#ef4444;background:rgba(239,68,68,.1)}.trend-label{font-size:.7rem;opacity:.6;margin-left:.2rem;font-weight:400}.confidence-container{margin-top:.5rem}.confidence-label{display:flex;justify-content:space-between;font-size:.75rem;margin-bottom:.4rem;opacity:.8;font-weight:500}.confidence-track{height:6px;background:var(--line);border-radius:10px;overflow:hidden}.confidence-fill{height:100%;border-radius:10px;transition:width 1s cubic-bezier(.34,1.56,.64,1)}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.metric-card h3{margin:0;font-size:.9rem;font-weight:600;opacity:.6;color:var(--ink)}.metric-card strong{display:block;font-size:2.25rem;font-weight:800;letter-spacing:-.01em;margin-top:.25rem}.ai-model-tag{font-size:.75rem;color:var(--ink);opacity:.5;margin-top:-.25rem;margin-bottom:1rem;font-family:var(--font-mono);font-style:italic}.ai-recommendation-list{list-style:none;padding:0;margin:.5rem 0 0}.ai-recommendation-item{margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.ai-recommendation-item:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.ai-recommendation-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem;font-weight:700;font-size:.95rem}.ai-recommendation-reason{margin:0 0 .75rem;font-size:.85rem;opacity:.8;line-height:1.5}.task-input-row{display:flex;gap:.5rem}.task-input-row input{flex:1 1;padding:.6rem .75rem;border-radius:10px;border:1px solid var(--line)}button{border:0;background:var(--accent);color:#fff;border-radius:10px;padding:.55rem .85rem;cursor:pointer;font-family:IBM Plex Mono,monospace}.task-list{list-style:none;margin:.8rem 0 0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.task-list li{display:flex;align-items:center;gap:.5rem}.billing-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem 1rem;gap:.5rem 1rem;margin:0}.billing-grid dt{font-weight:700}.billing-grid dd{margin:0}@media (max-width:700px){.dashboard-root{flex-direction:column}.dashboard-sidebar{width:100%;flex-direction:row;padding:.75rem;overflow-x:auto}.sidebar-nav{flex-direction:row;gap:.25rem}.sidebar-logo{margin-bottom:0;margin-right:1rem}.hero h1{font-size:1.4rem}}.plan-card{text-align:center}.plan-card--active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.plan-price{font-size:1.4rem;display:block;margin:.25rem 0 .5rem}.plan-badge{display:inline-block;background:var(--accent);color:#fff;border-radius:8px;padding:.25rem .6rem;font-size:.8rem;margin-top:.5rem}.invoice-table{width:100%;border-collapse:collapse;font-size:.9rem}.invoice-table td,.invoice-table th{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--line)}.invoice-table th{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.invoice-status{display:inline-block;padding:.15rem .5rem;border-radius:6px;font-size:.8rem;font-weight:600}.invoice-status--paid{background:rgba(20,184,166,.15);color:#14b8a6}.invoice-status--open,.invoice-status--past_due{background:rgba(139,92,246,.15);color:#8b5cf6}.invoice-status--draft{background:rgba(95,100,112,.15);color:#5f6470}.error-card{border-color:var(--warn);background:rgba(239,68,68,.05)}.empty-state{color:#5f6470;font-style:italic}.loading-skeleton{display:grid;grid-gap:1rem;gap:1rem}.skeleton-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.skeleton-block{background:linear-gradient(90deg,var(--line) 25%,var(--card-bg) 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:14px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.plugin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1rem;gap:1rem}.plugin-card{display:flex;flex-direction:column;gap:.5rem}.plugin-card .status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.4rem}.plugin-card .status-indicator--active{background:var(--accent)}.plugin-card .status-indicator--inactive{background:var(--line)}.member-table{width:100%;border-collapse:collapse;font-size:.9rem}.member-table td,.member-table th{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--line)}.member-table th{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.role-badge{display:inline-block;padding:.15rem .5rem;border-radius:6px;font-size:.8rem;font-weight:600;background:rgba(20,184,166,.12);color:#14b8a6}.filter-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.filter-bar,.filter-bar label{display:flex;align-items:center}.filter-bar label{gap:.3rem;font-size:.85rem}.filter-bar input,.filter-bar select{padding:.4rem .6rem;border-radius:8px;border:1px solid var(--line);font-family:Space Grotesk,sans-serif;font-size:.85rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:var(--accent);color:#fff;padding:.5rem 1rem;z-index:100;border-radius:0 0 8px 0;text-decoration:none}.skip-link:focus{top:0}