@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;600;700&display=swap";:root,[data-theme=dark]{--bg: #0a0a0a;--bg-panel: #0f0f0f;--bg-hover: #141414;--border: #252525;--text: #c8c8c8;--text-dim: #999999;--text-muted: #666666;--accent: #c8c8c8;--accent-inv: #0a0a0a;--green: #8ec58e;--red: #d47b7b;--yellow: #c9b458;--blue: #7ba1d4;--purple: #b48ed4;--selection-bg: #c8c8c8;--selection-fg: #0a0a0a}[data-theme=light]{--bg: #fafafa;--bg-panel: #f3f3f3;--bg-hover: #ececec;--border: #d8d8d8;--text: #1a1a1a;--text-dim: #444444;--text-muted: #6a6a6a;--accent: #1a1a1a;--accent-inv: #fafafa;--green: #3a8a3a;--red: #c04040;--yellow: #8a7520;--blue: #2a5aa0;--purple: #7a3aaa;--selection-bg: #1a1a1a;--selection-fg: #fafafa}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;font-family:JetBrains Mono,monospace;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px;transition:background .2s,color .2s}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--selection-bg);color:var(--selection-fg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:JetBrains Mono,monospace;cursor:pointer}input{font-family:JetBrains Mono,monospace}.dash-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.dash-header-left{display:flex;align-items:center;gap:1rem}.dash-header-right{display:flex;gap:1rem;align-items:center}.dash-cols{display:flex;flex:1;overflow:hidden}.dash-left{width:380px;border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.dash-center{flex:1;display:flex;flex-direction:column;overflow:hidden}.dash-right{width:400px;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.dash-footer{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;border-top:1px solid var(--border);font-size:.85rem;color:var(--text-muted)}.mobile-tabs{display:none}.desktop-only{display:flex}.mobile-only{display:none}.member-btn-text:after{content:"[ become a member ]"}@media(max-width:1024px){.dash-left{width:300px}.dash-right{width:320px}}@media(max-width:768px){.dash-cols{flex-direction:column}.dash-left,.dash-right{width:100%;border-right:none;border-left:none;flex-shrink:1}.dash-left,.dash-right{display:none}.dash-left.mobile-active,.dash-center.mobile-active,.dash-right.mobile-active{display:flex;flex:1;overflow:hidden}.dash-center{display:none}.mobile-tabs{display:flex;border-bottom:1px solid var(--border)}.mobile-tabs button{flex:1;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-dim);padding:.6rem 0;font-size:.85rem;font-family:JetBrains Mono,monospace;cursor:pointer;transition:color .15s,border-color .15s}.mobile-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.desktop-only{display:none!important}.mobile-only{display:flex}.dash-header{padding:.5rem .75rem}.dash-header-left span:last-child{display:none}.member-btn-text:after{content:"[ member ]"}.dash-footer{font-size:.75rem;gap:.5rem;flex-wrap:wrap;justify-content:center}.dash-footer span:last-child{display:none}.auth-hero{padding:1.5rem 1.25rem 2rem!important;gap:2rem!important}.auth-nav{padding:1rem 1.25rem!important}.auth-feature-grid{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important;max-width:100%!important}.auth-title{font-size:1.4rem!important}.auth-logo{font-size:.35rem!important}.auth-corner{display:none}}@media(max-width:480px){.auth-feature-grid{grid-template-columns:1fr!important}.auth-hero{gap:1.5rem!important}.dash-header-right{gap:.4rem}.dash-header-right button{font-size:.72rem!important;padding:.15rem .4rem!important}.member-btn-text:after{content:"[ member ]"}}@media(max-width:768px){input,textarea,select{font-size:16px!important}}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 #22c55e80}50%{opacity:.7;box-shadow:0 0 0 6px #22c55e00}}
