:root{--ink:#1d1d1b;--muted:#77736d;--line:#dedbd5;--surface:#f4f3f0;--dark:#191917;--gold:#b88a42;--ok:#377657;--bad:#9d4141;--warn:#9a6a21;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--surface)}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}header{min-height:86px;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff;background:var(--dark)}.title{display:flex;align-items:center;gap:12px}.title>span{color:var(--gold);font-size:20px}.title div{display:grid}.title strong{font-size:17px}.title small,header .actions>span{color:#aaa69f;font-size:11px}.actions{display:flex;align-items:center;gap:8px}button{min-height:38px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;font-weight:800}.primary{border-color:transparent;color:#fff;background:var(--gold)}.secondary.plain{border-color:var(--line);color:var(--ink);background:#fff}header .secondary{border-color:#ffffff38;color:#fff;background:transparent}button:disabled{opacity:.5;cursor:not-allowed}main{padding:28px}.summary-grid,.hero,.deadline-grid{max-width:1120px;margin:0 auto}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.summary-grid article{padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff}.summary-grid span{display:block;color:var(--muted);font-size:10px}.summary-grid strong{display:block;margin-top:6px;font-size:24px}h1,h2,h3,p{margin:0}.hero{margin-top:14px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:14px;color:#fff;background:linear-gradient(125deg,#191917,#2f312d)}.hero small,.panel-title small{color:#aaa69f;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.hero h1{margin:6px 0 8px;font-size:38px}.hero p{max-width:650px;color:#c9c4bc;font-size:13px;line-height:1.5}.hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.deadline-grid{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title h2{margin-top:3px;font-size:20px}.deadline-row{padding:12px 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;border-bottom:1px solid #ebe9e5;font-size:11px}.deadline-row:last-child{border:0}.deadline-row strong{display:block;margin-bottom:3px;font-size:12px}.deadline-row span{color:var(--muted)}.deadline-row button{min-height:30px;padding:6px 8px;font-size:10px}.badge{display:inline-flex;align-items:center;width:max-content;margin-top:5px;padding:4px 7px;border-radius:99px;font-size:9px;font-weight:900;text-transform:uppercase}.badge.ok{color:var(--ok);background:#deeee5}.badge.warn{color:var(--warn);background:#f6ead5}.badge.bad{color:var(--bad);background:#f3dddd}.badge.done{color:#706a62;background:#ece9e3}.empty{padding:26px 8px;color:var(--muted);font-size:12px;text-align:center}dialog{width:min(650px,calc(100% - 28px));padding:0;border:0;border-radius:14px;box-shadow:0 25px 80px #0005}dialog::backdrop{background:#111a}dialog form{padding:24px;display:grid;gap:16px}dialog label{display:grid;gap:6px;font-size:10px;font-weight:800}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head button{padding:0;width:34px;border:0;background:#eee}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{grid-column:1/-1}dialog input,dialog select,dialog textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toast{position:fixed;right:20px;bottom:20px;padding:12px 14px;border-radius:9px;color:#fff;background:var(--dark);opacity:0}.toast.show{opacity:1}@media(max-width:760px){header{padding:12px 14px}.actions>span,#logout-button{display:none}main{padding:14px}.summary-grid{grid-template-columns:1fr 1fr;gap:8px}.summary-grid article{padding:12px}.summary-grid strong{font-size:21px}.hero{display:grid;padding:20px}.hero h1{font-size:30px}.hero-actions{justify-content:stretch}.hero-actions button{flex:1}.deadline-grid{grid-template-columns:1fr}.deadline-row{grid-template-columns:1fr}.deadline-row button{width:100%}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.dialog-actions{grid-template-columns:1fr}}


@media(max-width:760px){
  body{background:#fff}
  header{position:sticky;top:0;z-index:10;min-height:68px;border-bottom:1px solid #2f2e2b}
  .title strong{font-size:15px}
  .title small{font-size:10px}
  .actions{gap:6px}
  header .secondary{min-height:34px;padding:7px 10px}
  main{padding:0;background:#f4f3f0}
  .summary-grid{width:100%;max-width:none;margin:0;padding:10px;grid-template-columns:1fr 1fr;background:#fff;border-bottom:1px solid var(--line)}
  .summary-grid article{border-radius:10px;text-align:center}
  .summary-grid span{font-size:10px}
  .summary-grid strong{font-size:22px}
  .hero{width:100%;max-width:none;margin:0;padding:20px 15px;border-radius:0;text-align:center}
  .hero h1{font-size:29px;letter-spacing:0}
  .hero p{max-width:330px;margin:0 auto;font-size:12px}
  .hero-actions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .hero-actions button{width:100%;min-height:46px;font-size:13px}
  .deadline-grid{width:100%;max-width:none;margin:0;display:grid;gap:10px;padding:10px}
  .panel{padding:17px 14px;border-radius:0;border-right:0;border-left:0}
  .panel-title{justify-content:center;text-align:center}
  .panel-title h2{font-size:21px}
  .deadline-row{min-height:86px;padding:15px 0;text-align:center}
  .deadline-row strong{font-size:14px}
  .deadline-row span,.deadline-row small{font-size:12px}
  .deadline-row button{min-height:42px;margin-top:4px;font-size:12px}
  .badge{margin:8px auto 0}
  dialog{width:calc(100% - 18px);border-radius:12px}
  dialog form{padding:18px 15px}
}

.employee-section{max-width:1120px;margin:14px auto 0}
.summary-grid{grid-template-columns:repeat(5,1fr)}
.employee-row{padding:12px 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;border-bottom:1px solid #ebe9e5;font-size:11px}
.employee-row:last-child{border:0}
.employee-row strong{display:block;margin-bottom:3px;font-size:12px}
.employee-row span{color:var(--muted)}
.employee-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.employee-row button{min-height:30px;padding:6px 8px;font-size:10px}
@media(max-width:760px){
  .summary-grid{grid-template-columns:1fr 1fr}
  .employee-section{width:100%;max-width:none;margin:0;padding:10px}
  .employee-row{grid-template-columns:1fr;text-align:center}
  .employee-row-actions{display:grid;grid-template-columns:1fr}
  .employee-row button{width:100%;min-height:42px;font-size:12px}
}

.hero{
  text-align:center;
}
.hero>div:first-child{
  width:100%;
  display:grid;
  justify-items:center;
}
.hero p{
  margin-right:auto;
  margin-left:auto;
}
.hero-actions{
  justify-content:center;
}
@media(min-width:761px){
  .hero{
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
  }
  .hero-actions{
    width:min(760px,100%);
  }
  .hero-actions button{
    min-width:180px;
  }
}
@media(max-width:760px){
  .hero{
    min-height:312px;
    padding:26px 15px 20px;
    grid-template-columns:minmax(0,1fr);
    align-content:center;
    justify-items:center;
    gap:18px;
  }
  .hero>div:first-child{
    width:100%;
    max-width:360px;
    justify-self:stretch;
    margin:0 auto;
  }
  .hero small,
  .hero h1,
  .hero p{
    width:100%;
    text-align:center;
  }
  .hero small{
    display:block;
    margin:0 auto;
  }
  .hero h1{
    margin:8px auto 10px;
    font-size:31px;
    line-height:1.08;
  }
  .hero p{
    max-width:310px;
    line-height:1.45;
  }
  .hero-actions{
    width:100%;
    max-width:360px;
    margin:0 auto;
    justify-self:stretch;
  }
}
