@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Manrope:wght@600;700;800&display=swap');
:root{--bg:#f7f7fb;--card:#fff;--text:#15131d;--muted:#6f6b7b;--line:#e7e4ef;--purple:#6d4aff;--purple2:#8d72ff;--dark:#1c1828;--green:#0b9b67;--red:#e14b5a;--amber:#d78700;--shadow:0 18px 55px rgba(37,25,79,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1500px)/2));position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-family:Manrope;font-size:18px;font-weight:800}.brand b{color:var(--purple)}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--purple),var(--purple2));color:white;display:grid;place-items:center;box-shadow:0 10px 22px rgba(109,74,255,.28)}.topbar nav a{font-weight:700;padding:11px 16px;border-radius:12px}.topbar nav a.active{background:#eee9ff;color:var(--purple)}.user-menu{display:flex;align-items:center;gap:14px;color:var(--muted)}.button{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.button.primary{background:linear-gradient(135deg,var(--purple),#7653ff);color:#fff;box-shadow:0 12px 24px rgba(109,74,255,.2)}.button.secondary{background:#eee9ff;color:var(--purple)}.button.ghost{background:#f4f3f8}.button.small{padding:8px 12px;font-size:12px}.button.wide{width:100%}.page-shell{max-width:1500px;margin:0 auto;padding:30px 28px 60px;display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px}.card,.focus-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.sidebar{padding:18px;height:max-content;position:sticky;top:100px}.sidebar-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--purple)}.icon-button{border:0;background:#eee9ff;color:var(--purple);width:32px;height:32px;border-radius:10px;font-weight:800;font-size:20px;cursor:pointer}.project-list{display:grid;gap:7px}.project-link{display:grid;grid-template-columns:10px 1fr;gap:11px;align-items:center;padding:12px;border-radius:14px}.project-link.active{background:#f2efff}.project-link b{display:block;font-size:13px}.project-link small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.project-dot{width:9px;height:9px;border-radius:50%;background:#aaa}.project-dot.active{background:var(--green)}.project-dot.paused{background:var(--amber)}.project-dot.completed{background:var(--purple)}.content{min-width:0}.hero{padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.hero h1{font-family:Manrope;font-size:34px;margin:8px 0}.hero p{color:var(--muted);max-width:780px;margin:0;line-height:1.6}.hero-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.progress-ring{--size:104px;width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--purple) calc(var(--progress)*1%),#eeeaf8 0);position:relative;flex:none}.progress-ring:after{content:"";position:absolute;inset:9px;background:white;border-radius:50%}.progress-ring span{z-index:1;font-family:Manrope;font-size:22px;font-weight:800}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:800;background:#eee}.badge.active,.badge.in_progress{background:#e8f8f1;color:var(--green)}.badge.completed{background:#eee9ff;color:var(--purple)}.badge.blocked{background:#fff0f2;color:var(--red)}.badge.pending,.badge.paused{background:#fff6e5;color:var(--amber)}.focus-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:16px;margin:16px 0 26px}.focus-card{padding:18px;box-shadow:none}.focus-card h3{font-size:14px;line-height:1.5;margin:8px 0 0}.focus-card.next{border-color:#dcd2ff;background:#faf8ff}.focus-card.blocked{border-color:#ffd4da;background:#fffafb}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:26px 0 14px}.section-heading.compact{margin:0 0 14px}.section-heading h2{font-family:Manrope;margin:5px 0 0;font-size:22px}.actions{display:flex;gap:10px}.phase-board{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:16px;align-items:start}.phase-column{padding:17px;box-shadow:none}.phase-column>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:13px}.phase-number{font-size:10px;color:var(--purple);font-weight:800}.phase-column h3{font-family:Manrope;font-size:16px;margin:5px 0 0}.muted{color:var(--muted);font-size:12px;line-height:1.5}.step-list{display:grid;gap:9px;margin-top:14px}.step{display:grid;grid-template-columns:30px 1fr 92px;gap:9px;align-items:center;background:#faf9fc;border:1px solid #eeebf4;padding:10px;border-radius:13px}.step b{font-size:12px;display:block}.step small{display:block;color:var(--muted);font-size:10px;margin-top:4px;line-height:1.4}.step-check{width:28px;height:28px;border:2px solid #cbc5dc;border-radius:9px;background:white;font-weight:800;cursor:pointer}.step.completed{opacity:.72}.step.completed .step-check{background:var(--green);color:white;border-color:var(--green)}.step.blocked .step-check{background:var(--red);color:white;border-color:var(--red)}.step select{width:100%;border:1px solid var(--line);background:white;border-radius:9px;padding:7px 5px;font-size:10px}.add-step{border:0;background:transparent;color:var(--purple);font-weight:800;font-size:12px;margin-top:13px;cursor:pointer}.bottom-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;margin-top:22px}.activity-card,.quick-card{padding:20px}.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:14px 1fr;gap:12px;position:relative;padding-bottom:15px}.timeline-item>span{width:10px;height:10px;background:var(--purple);border-radius:50%;margin-top:5px}.timeline-item:after{content:"";position:absolute;width:2px;background:#e5dfff;left:4px;top:16px;bottom:0}.timeline-item:last-child:after{display:none}.timeline p{margin:0;font-size:12px}.timeline small{color:var(--muted);font-size:10px}.form-stack{display:grid;gap:14px}.form-stack label,.dialog-form label{display:grid;gap:7px;font-weight:700;font-size:12px}input,textarea,select{border:1px solid #dcd7e7;border-radius:12px;padding:12px;background:#fff;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(109,74,255,.1)}textarea{min-height:86px;resize:vertical}.toast{position:fixed;right:24px;top:92px;z-index:80;background:#e9f8f2;color:#08784f;padding:13px 17px;border:1px solid #bdebd9;border-radius:12px;box-shadow:var(--shadow);transition:.4s}.toast.error{background:#fff1f3;color:#b82b3b;border-color:#ffd0d6}.toast.hide{opacity:0;transform:translateY(-10px)}dialog{border:0;border-radius:20px;padding:0;width:min(520px,calc(100vw - 30px));box-shadow:0 30px 90px rgba(20,15,35,.25)}dialog::backdrop{background:rgba(20,15,35,.55);backdrop-filter:blur(3px)}.dialog-form{padding:22px;display:grid;gap:14px}.dialog-form header{display:flex;justify-content:space-between;align-items:center}.dialog-form header h2{margin:0;font-family:Manrope}.dialog-form header button{border:0;background:#f2f0f6;width:32px;height:32px;border-radius:10px;font-size:20px;cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#eee9ff,transparent 44%),#faf9fd}.login-shell{width:min(1050px,100%);min-height:590px;display:grid;grid-template-columns:1.15fr .85fr;background:white;border-radius:28px;overflow:hidden;box-shadow:0 28px 90px rgba(35,25,72,.18)}.login-brand{background:#1d1929;color:white;padding:56px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:360px;height:360px;background:#4d3e76;border-radius:50%;right:-140px;bottom:-170px}.brand-light{position:relative;z-index:1}.login-copy{position:relative;z-index:1}.login-copy h1{font-family:Manrope;font-size:56px;line-height:1.05;margin:18px 0}.login-copy p{color:#d3cfdf;line-height:1.7}.login-form-card{padding:70px 54px;display:flex;flex-direction:column;justify-content:center}.login-form-card h2{font-family:Manrope;font-size:34px;margin:12px 0 26px}.password-wrap{display:flex;position:relative}.password-wrap input{width:100%;padding-right:82px}.password-wrap button{position:absolute;right:7px;top:7px;bottom:7px;border:0;border-radius:9px;background:#eee9ff;color:var(--purple);font-weight:800;cursor:pointer}.alert{padding:12px;border-radius:12px;margin-bottom:16px}.alert.error{background:#fff1f3;color:var(--red)}.empty{padding:50px;text-align:center}.empty h1{font-family:Manrope}
@media(max-width:1100px){.page-shell{grid-template-columns:1fr}.sidebar{position:static}.project-list{grid-template-columns:repeat(3,1fr)}.phase-board{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{height:auto;padding:14px 16px}.topbar nav,.user-menu>span{display:none}.page-shell{padding:18px 14px}.project-list{grid-template-columns:1fr}.hero{align-items:flex-start}.hero h1{font-size:25px}.progress-ring{--size:78px}.focus-grid,.phase-board,.bottom-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;gap:12px;flex-direction:column}.login-shell{grid-template-columns:1fr}.login-brand{min-height:280px;padding:28px}.login-copy h1{font-size:38px}.login-form-card{padding:36px 28px}.step{grid-template-columns:30px 1fr}.step select{grid-column:2}}
/* LOGIN_SIMPLE_OVERRIDE */
.login-brand{
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:56px !important;
}
.login-brand:after{
  display:none !important;
}
.brand-light{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:18px !important;
  margin:0 auto !important;
  font-size:34px !important;
}
.brand-light .brand-mark{
  width:72px !important;
  height:72px !important;
  border-radius:20px !important;
  font-size:30px !important;
}
.brand-light span:last-child{
  font-size:42px !important;
  font-family:Manrope !important;
  font-weight:800 !important;
}
/* SIMPLE_UI_OVERRIDE_START */
.topbar{
  padding:0 18px !important;
}
.topbar nav{
  display:none !important;
}
.page-shell{
  max-width:none !important;
  width:100% !important;
  padding:18px 18px 36px !important;
  grid-template-columns:170px minmax(0,1fr) !important;
  gap:18px !important;
}
.sidebar{
  padding:14px !important;
}
.project-list{
  gap:10px !important;
}
.project-link{
  padding:10px !important;
}
.hero{
  padding:22px !important;
}
.hero h1{
  font-size:30px !important;
  margin:6px 0 !important;
}
.hero p{
  margin-top:8px !important;
  max-width:1000px !important;
}
.focus-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:14px 0 20px !important;
}
.focus-card{
  padding:16px !important;
}
.section-heading{
  margin:18px 0 12px !important;
}
.phase-board{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(250px,1fr)) !important;
  gap:14px !important;
  align-items:start !important;
}
.phase-column{
  padding:14px !important;
}
.phase-column > header{
  padding-bottom:10px !important;
}
.step{
  grid-template-columns:28px 1fr 88px !important;
  gap:8px !important;
  padding:8px !important;
}
.step b{
  font-size:12px !important;
}
.step small{
  font-size:10px !important;
}
.step-check{
  width:26px !important;
  height:26px !important;
}
.add-step{
  margin-top:10px !important;
}
.bottom-grid{
  grid-template-columns:1.3fr .7fr !important;
  gap:14px !important;
  margin-top:18px !important;
}
.activity-card,.quick-card{
  padding:16px !important;
}
.login-brand{
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:48px !important;
}
.login-brand:after{
  display:none !important;
}
.login-brand-stack{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
}
.login-brand .brand-row{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
}
.login-brand .brand-mark{
  width:74px !important;
  height:74px !important;
  border-radius:20px !important;
  font-size:30px !important;
}
.login-brand .brand-row span:last-child{
  font-size:42px !important;
  font-family:Manrope !important;
  font-weight:800 !important;
}
.login-subtitle{
  margin:0 !important;
  color:#ffffff !important;
  font-family:Manrope !important;
  font-size:22px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}
@media (max-width:1700px){
  .phase-board{
    grid-template-columns:repeat(4,minmax(240px,1fr)) !important;
  }
}
@media (max-width:1400px){
  .page-shell{
    grid-template-columns:1fr !important;
  }
  .sidebar{
    position:static !important;
  }
  .phase-board{
    grid-template-columns:repeat(3,minmax(230px,1fr)) !important;
  }
}
@media (max-width:980px){
  .focus-grid,
  .phase-board,
  .bottom-grid{
    grid-template-columns:1fr !important;
  }
}
/* SIMPLE_UI_OVERRIDE_END */
