:root{--bg:#11161d;--panel:#222;--panel2:#1b2028;--line:#333b46;--text:#f3f6f9;--muted:#97a3af;--blue:#168be8;--green:#15945a;--red:#ef315d;--field:#2a2a2a;--fieldLine:#3d4652;--white:#e9e9e9}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:#1494ff;text-decoration:none}.topbar{height:58px;background:#1b222b;border-bottom:1px solid #2b3440;display:flex;align-items:center;padding:0 24px;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px rgba(0,0,0,.18)}.brand{font-size:22px;font-weight:800;letter-spacing:.3px;white-space:nowrap}.menu{margin-left:auto;display:flex;align-items:center;gap:18px}.menu a{display:inline-flex;align-items:center;height:38px;padding:0 4px;color:#cbd6e2;font-size:16px}.menu a:hover{color:#fff}.menu .exit{height:38px;border:1px solid #158454;color:#20d374;border-radius:7px;padding:0 15px}.wrap{max-width:1368px;margin:0 auto;padding:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:18px;margin-bottom:18px;box-shadow:0 1px 0 rgba(255,255,255,.02)}h1,h2,h3{margin:0 0 16px}h2{font-size:24px}h3{font-size:20px}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}label{display:block;font-weight:700;margin:0 0 8px;color:#eef3f8}input,select{width:100%;height:47px;background:var(--field);border:1px solid var(--fieldLine);color:#fff;border-radius:6px;padding:0 13px;font-size:16px;outline:none}input:focus,select:focus{border-color:#168be8;box-shadow:0 0 0 2px rgba(22,139,232,.15)}button,.btn{display:inline-flex;align-items:center;justify-content:center;height:46px;background:var(--green);color:#fff;border:0;border-radius:6px;padding:0 18px;font-size:16px;cursor:pointer;text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}.blue{background:var(--blue)}.red{background:var(--red)}.danger{color:#ff5577}.ok{color:#00d084}.tabs{display:flex;gap:0;margin:8px 0 18px;border-bottom:1px solid var(--line)}.tabs a{display:inline-flex;padding:15px 22px;background:#171d25;border:1px solid var(--line);border-bottom:0;color:#1494ff}.tabs a.active{background:#2a2f38;color:#fff}table{width:100%;border-collapse:collapse}th,td{padding:14px 12px;border-bottom:1px solid #333;text-align:left;vertical-align:middle}th{font-weight:800;color:#fff}.summary-table td,.summary-table th{font-size:16px}.total{background:#ddd!important;color:#111!important;font-weight:800}.total *{color:#111!important}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.list-head,.rowcard{display:grid;grid-template-columns:150px 140px 130px 190px 1fr 94px;gap:14px;align-items:center}.list-head{color:#fff;font-weight:800;padding:0 14px 10px;border-bottom:1px solid #343434;margin-top:8px}.rowcard{background:#202020;border:1px solid #333;border-radius:8px;padding:14px;margin:10px 0;cursor:pointer;transition:.15s}.rowcard:hover{border-color:#4a5563;background:#242424}.rowcard small{color:#aeb8c3}.details{display:none;background:#171717;border:1px solid #444;border-radius:8px;padding:16px;margin:-5px 0 14px}.details p{margin:8px 0}.pill{display:inline-flex;padding:5px 10px;background:#333;border-radius:999px;color:#e8e8e8}.notice{background:#182633;border:1px solid #294156;color:#cfe8ff;padding:12px 14px;border-radius:7px;margin-bottom:14px}.stack{display:grid;gap:12px}.input-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.salary-total{font-size:20px;font-weight:800}.table-wrap{overflow:auto}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.card-title-row h2{margin:0}.tab-buttons{gap:0;margin:8px 0 18px;border-bottom:1px solid var(--line)}.tab-buttons a.tab-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#171d25;border:1px solid var(--line);border-bottom:0;border-radius:0;color:#1494ff;height:54px;padding:0 28px;font-size:18px}.tab-buttons a.tab-btn.active{background:#2a2f38;color:#fff}.hidden{display:none!important}.income-head,.rowcard.income-row,.income-total{grid-template-columns:150px 140px 190px 1fr 46px!important}.expenses-head,.rowcard.expense-row,.expense-total{grid-template-columns:150px 1fr 170px 130px 46px!important}.inline-form{display:inline;margin:0}.mini-submit{height:34px;padding:0 12px;font-size:13px;border-radius:999px;background:#15945a;white-space:nowrap}.pill.done{background:#164e36;color:#7dffb2}.expense-row{cursor:default!important}.expense-row:hover{background:#202020;border-color:#333}.delete-icon{display:inline-flex;align-items:center;justify-content:center;background:transparent!important;color:#ef4444!important;text-decoration:none;font-size:20px;width:30px;height:30px;min-width:30px;border-radius:6px;justify-self:end;transition:.15s ease}.delete-icon:hover{background:rgba(239,68,68,.14)!important;color:#ff6b6b!important;transform:scale(1.08)}

.week-card{padding:18px 20px}.week-nav-pro{display:grid;grid-template-columns:220px 1fr 220px;align-items:center;gap:16px;margin-bottom:12px}.week-center{text-align:center;background:linear-gradient(180deg,#242b35,#1b2028);border:1px solid #394656;border-radius:14px;padding:14px 18px;box-shadow:0 8px 22px rgba(0,0,0,.16)}.week-caption{font-size:13px;color:#97a3af;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.week-title-pro{font-size:28px;font-weight:900;color:#fff;line-height:1.1}.week-arrow{display:inline-flex;align-items:center;justify-content:center;height:46px;border-radius:10px;background:#1f2937;border:1px solid #374151;color:#fff!important;font-weight:800;text-decoration:none;transition:.15s}.week-arrow:hover{background:#168be8;border-color:#168be8;transform:translateY(-1px)}.week-help{text-align:center;margin:4px 0 16px}.alert-error{background:#3b1320;border:1px solid #ef315d;color:#ffd2dc;border-radius:8px;padding:12px 14px;margin:0 0 16px;font-weight:700}.person-row{position:relative;display:grid;grid-template-columns:2fr 1fr 1.45fr 1fr;gap:12px;align-items:end;margin-bottom:10px;background:#1c222b;border:1px solid #2f3946;border-radius:10px;padding:14px 14px 14px 56px}.person-delete-icon{position:absolute;left:12px;top:34px;width:34px;height:34px;min-width:34px;padding:0;background:transparent;color:#ef4444;border:1px solid rgba(239,68,68,.35);border-radius:8px;font-size:18px}.person-delete-icon:hover{background:rgba(239,68,68,.14);color:#ff6b6b}.salary-preview{background:#162131!important;color:#4ade80!important;font-weight:900}.danger-text{color:#ef315d!important}

@media(max-width:980px){.wrap{padding:12px}.topbar{height:auto;min-height:58px;align-items:flex-start;flex-direction:column;padding:12px 16px;gap:8px}.menu{margin-left:0;flex-wrap:wrap;gap:10px}.grid,.grid3,.input-row,.person-row,.list-head,.rowcard{grid-template-columns:1fr!important}.list-head{display:none}.rowcard{gap:8px}.card{padding:14px}button,.btn{width:100%}.actions button,.actions .btn{width:auto}.tab-buttons .tab-btn{width:auto}.delete-icon{justify-self:start}.mini-submit{width:auto}.week-nav-pro{grid-template-columns:1fr}.week-center{order:-1}.week-title-pro{font-size:22px}.week-arrow{width:100%}.person-row{padding:54px 12px 12px}.person-delete-icon{top:12px;left:12px}}


/* v15 polished week navigation + compact person delete */
.brand{color:#f3f6f9!important;text-decoration:none!important;display:inline-flex;align-items:center;height:38px}
.brand:hover{color:#fff!important;opacity:.9}
.week-card{padding:22px 24px!important}
.week-nav-pro{
  display:grid!important;
  grid-template-columns:230px minmax(280px,1fr) 230px!important;
  align-items:center!important;
  gap:18px!important;
  margin:0 0 16px!important;
}
.week-center{
  text-align:center!important;
  background:linear-gradient(180deg,#273241,#19212c)!important;
  border:1px solid #405166!important;
  border-radius:16px!important;
  padding:16px 22px!important;
  box-shadow:0 10px 25px rgba(0,0,0,.22)!important;
}
.week-caption{
  font-size:12px!important;
  color:#9fb0c3!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  margin-bottom:7px!important;
  font-weight:800!important;
}
.week-title-pro{
  font-size:30px!important;
  font-weight:900!important;
  color:#fff!important;
  line-height:1.1!important;
  letter-spacing:.2px!important;
}
.week-arrow{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:48px!important;
  padding:0 18px!important;
  border-radius:12px!important;
  background:#182231!important;
  border:1px solid #3b4a5e!important;
  color:#d8e7ff!important;
  font-weight:900!important;
  text-decoration:none!important;
  transition:.15s ease!important;
  white-space:nowrap!important;
}
.week-arrow:hover{background:#168be8!important;border-color:#168be8!important;color:#fff!important;transform:translateY(-1px)}
.week-help{text-align:center!important;margin:6px 0 18px!important}
.person-row{
  position:relative!important;
  grid-template-columns:2fr 1fr 1.45fr 1fr!important;
  padding:16px 56px 16px 16px!important;
  background:#1c222b!important;
  border:1px solid #2f3946!important;
  border-radius:12px!important;
}
.person-delete-icon{
  position:absolute!important;
  right:14px!important;
  top:14px!important;
  left:auto!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(239,49,93,.10)!important;
  color:#ff5d7f!important;
  border:1px solid rgba(239,49,93,.35)!important;
  border-radius:8px!important;
  font-size:15px!important;
  line-height:1!important;
}
.person-delete-icon:hover{background:rgba(239,49,93,.22)!important;color:#fff!important;transform:scale(1.04)}
.alert-error{background:#3b1320!important;border:1px solid #ef315d!important;color:#ffd2dc!important;border-radius:8px!important;padding:12px 14px!important;margin:0 0 16px!important;font-weight:800!important}
#saveIncomeBtn:disabled{opacity:.45!important;cursor:not-allowed!important;filter:grayscale(.35)}
@media(max-width:980px){
  .week-nav-pro{grid-template-columns:1fr!important}
  .week-center{order:-1!important}
  .week-title-pro{font-size:22px!important}
  .week-arrow{width:100%!important}
  .person-row{grid-template-columns:1fr!important;padding:54px 12px 12px!important}
  .person-delete-icon{top:12px!important;right:12px!important;left:auto!important}
}
