@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_fe8b9d92-module__LINzvG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_fe8b9d92-module__LINzvG__variable{--font-inter:"Inter","Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_c302529-module__OsiXdW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_c302529-module__OsiXdW__variable{--font-jetbrains:"JetBrains Mono","JetBrains Mono Fallback"}
:root{--bg-primary:#050508;--bg-secondary:#0a0a0f;--bg-tertiary:#0f0f15;--bg-card:#0c0c12;--bg-hover:#12121a;--brand-primary:#4af7b0;--brand-dark:#203749;--accent-primary:#4af7b0;--accent-secondary:#3dd99a;--accent-gradient:linear-gradient(135deg,#4af7b0,#3dd99a);--status-completed:#4af7b0;--status-in-progress:#38bdf8;--status-review:#fbbf24;--status-planned:#ffffff26;--text-primary:#f0f0f5;--text-secondary:#8888a0;--text-muted:#4a4a60;--border-color:#ffffff0d;--border-hover:#ffffff1a;--glow-primary:#4af7b026;--client-col-width:260px;--week-col-width:160px;--row-height:56px;--font-mono:"JetBrains Mono","Fira Code",monospace;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;height:100vh;font-size:13px;line-height:1.5;overflow:hidden}.ambient-bg{pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 50% -20%,#4af7b00f,#0000),radial-gradient(60% 40% at 100%,#3b82f60a,#0000),radial-gradient(60% 40% at 0 80%,#4af7b008,#0000);position:fixed;inset:0}@keyframes pulse{0%,to{box-shadow:0 0 #4af7b0b3}50%{box-shadow:0 0 0 8px #4af7b000}}@keyframes glow{0%,to{box-shadow:0 0 5px #4af7b033}50%{box-shadow:0 0 20px #4af7b066}}.animate-pulse-custom{animation:2s infinite pulse}.animate-glow{animation:3s infinite glow}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.milestone{text-align:center;cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:140px;padding:10px 12px;transition:all .3s;display:flex}.milestone:hover{transform:translateY(-2px)}.milestone.completed{color:#6ee7b7;background:#10b98126;border:1px solid #10b9814d}.milestone.completed:hover{background:#10b98140;box-shadow:0 4px 20px #10b98133}.milestone.in-progress{color:#a5b4fc;background:#6366f126;border:1px solid #6366f14d;animation:3s infinite glow}.milestone.in-progress:hover{background:#6366f140}.milestone.review{color:#fcd34d;background:#f59e0b26;border:1px solid #f59e0b4d}.milestone.review:hover{background:#f59e0b40;box-shadow:0 4px 20px #f59e0b33}.milestone.planned{color:var(--text-muted);background:#64748b1a;border:1px dashed #64748b4d}.milestone.planned:hover{background:#64748b33;border-style:solid}.legend-dot{border-radius:4px;width:12px;height:12px}.legend-dot.completed{background:var(--status-completed)}.legend-dot.in-progress{background:var(--status-in-progress)}.legend-dot.review{background:var(--status-review)}.legend-dot.planned{background:var(--status-planned)}input,select,textarea{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;padding:10px 14px;font-size:14px;transition:all .2s}input:focus,select:focus,textarea:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #6366f133}input::placeholder,textarea::placeholder{color:var(--text-muted)}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-card);border-color:var(--border-hover)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-tertiary)}.btn-danger{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.btn-danger:hover{background:#ef444440}.dragging{opacity:.5}.drop-target{background:#6366f11a;border:2px dashed var(--accent-primary)!important}.drag-overlay{cursor:grabbing}.has-vacation{background:#ef444408}.has-vacation:after{content:"";background:linear-gradient(90deg,#0000,#ef444480,#0000);height:2px;position:absolute;bottom:0;left:0;right:0}.vacation-overlay{animation:2s ease-in-out infinite vacationPulse}@keyframes vacationPulse{0%,to{border-color:#ef444433}50%{border-color:#ef444466}}
