:root{--bg: #0e1016;--surface: #161922;--surface-2: #1d212c;--border: #262b38;--text: #e8eaf0;--muted: #8b93a7;--primary: #8b7cff;--primary-dim: #6b5cd6;--level-fatal: #ff4d6d;--level-error: #ff6b57;--level-warning: #ffb020;--level-info: #4aa3ff;--level-debug: #8b93a7}html[data-theme=light]{--bg: #f7f8fb;--surface: #ffffff;--surface-2: #f0f2f7;--border: #e2e5ee;--text: #12141c;--muted: #5a6376;--primary: #6b4cff;--primary-dim: #8b7cff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0;background-color:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{display:flex;flex-direction:column;height:100dvh}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;font-weight:700}h1{font-size:28px;line-height:1.2}h2{font-size:24px;line-height:1.25}h3{font-size:20px;line-height:1.3}h4{font-size:16px;line-height:1.4;font-weight:600}p{margin:0}code,pre{font-family:JetBrains Mono,Courier New,monospace}.app-container{display:flex;flex-direction:column;height:100%}.app-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.page-wrapper{flex:1;padding:0}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:8px;font-weight:600;font-size:14px;transition:all .2s ease-out;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dim);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background-color:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--surface-2);border-color:var(--muted)}.btn-danger{background-color:#ff6b5726;color:var(--level-error)}.btn-danger:hover{background-color:#ff6b5740}.btn-ghost{color:var(--muted);transition:all .2s ease-out}.btn-ghost:hover{color:var(--text)}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{padding:12px 24px;font-size:16px}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}.card-lg{padding:24px}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.badge-primary{background-color:#8b7cff26;color:var(--primary)}.badge-subtle{background-color:var(--surface-2);color:var(--muted)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],select,textarea{font-family:inherit;font-size:inherit;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background-color:var(--surface-2);color:var(--text);transition:border-color .2s ease-out;width:100%}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}label{display:block;margin-bottom:8px;font-weight:500;color:var(--text)}.form-group{margin-bottom:16px}.form-error{color:var(--level-error);font-size:12px;margin-top:4px}.flex{display:flex}.flex-col{flex-direction:column}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.w-full{width:100%}.text-center{text-align:center}.text-muted{color:var(--muted)}.text-sm{font-size:12px}.text-lg{font-size:16px}.font-mono{font-family:JetBrains Mono,Courier New,monospace}.font-semibold{font-weight:600}.space-y-2>*+*{margin-top:8px}.space-y-4>*+*{margin-top:16px}.opacity-50{opacity:.5}.skeleton{background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: no-preference){.fade-enter{animation:fade-in .2s ease-out}.slide-enter{animation:slide-in .3s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 1023px){.app-container{display:flex;flex-direction:column;height:100%}.app-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding-bottom:60px}.page-wrapper{flex:1;padding:0}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:1rem;background-color:var(--bg)}.auth-card{width:100%;max-width:420px}}@media (min-width: 1024px){.app-container-desktop{display:flex;flex-direction:row;height:100%}.app-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;background-color:var(--bg)}.page-wrapper{flex:1;padding:32px;max-width:1400px;margin:0 auto;width:100%}.app-container-desktop>aside{flex-shrink:0}.app-container-desktop+.BottomNav{display:none}}.trace-line{position:relative}.trace-line:before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--primary),transparent);filter:drop-shadow(0 0 6px rgba(139,124,255,.4));opacity:.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (max-width: 1023px){.projects-grid{display:grid;gap:16px}}@media (min-width: 1024px){.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.issues-table{width:100%;border-collapse:collapse}.issues-table thead{background-color:var(--surface-2);border-bottom:1px solid var(--border);position:sticky;top:0}.issues-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.issues-table tbody tr{border-bottom:1px solid var(--border);transition:background-color .2s ease-out}.issues-table tbody tr:hover{background-color:var(--surface-2);cursor:pointer}.issues-table tbody tr:focus-within{background-color:var(--surface-2)}.issues-table td{padding:14px 16px;font-size:14px}.issues-table td:first-child{padding-left:16px}.issues-table td:last-child{padding-right:16px}.issue-detail-layout{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.issue-detail-main{min-width:0}.issue-detail-sidebar{position:sticky;top:32px}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.dashboard-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:1rem}.auth-card{width:100%;max-width:420px}}
