.new-hire-calendar{margin-top:24px}
.nht-annual-gantt,.nht-annual-gantt *{box-sizing:border-box}
.nht-annual-gantt{overflow:hidden;border:1px solid var(--workspace-line,#e7e3eb);border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(42,30,64,.07);color:var(--workspace-ink,#111126)}
.nht-gantt-header{display:grid;align-items:center;gap:16px;padding:18px 20px 16px;background:#fff}
.nht-gantt-intro{min-width:260px}
.nht-gantt-header .nht-kicker{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:#5420d5;font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.nht-gantt-header .nht-kicker .material-symbols-rounded{font-size:18px}
.nht-gantt-header h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:35px;line-height:1;letter-spacing:-.035em}
.nht-gantt-controls{display:grid;grid-template-columns:auto auto auto minmax(220px,1fr);align-items:center;gap:9px;width:100%}
.nht-gantt-controls button,.nht-gantt-year,.nht-gantt-search{height:40px;border:1px solid var(--workspace-line,#e7e3eb);border-radius:10px;background:#fff}
.nht-gantt-controls button{padding:0 18px;color:#555164;font-family:inherit;font-size:11px;font-weight:800;line-height:1;cursor:pointer}
.nht-gantt-controls button:hover:not(:disabled){border-color:#8b5cf6;background:#faf8ff;color:#5420d5}
.nht-gantt-controls button:focus-visible,.nht-gantt-search:focus-within{outline:2px solid #7c3aed;outline-offset:2px}
.nht-gantt-controls button:disabled{color:#bbb5c4;cursor:not-allowed}
.nht-gantt-year{display:flex;align-items:center;gap:8px;padding:0 15px;font-size:11px}
.nht-gantt-year .material-symbols-rounded{font-size:17px;color:#6f6879}
.nht-gantt-zoom{display:flex}
.nht-gantt-zoom button{border-radius:0}
.nht-gantt-zoom button:first-child{border-radius:10px 0 0 10px}
.nht-gantt-zoom button:last-child{margin-left:-1px;border-radius:0 10px 10px 0}
.nht-gantt-zoom button[aria-pressed="true"]{position:relative;z-index:1;border-color:#6d28d9;color:#5b21d6;background:#fff}
.nht-gantt-search{display:flex;align-items:center;gap:8px;width:min(270px,24vw);padding:0 13px}
.nht-gantt-search .material-symbols-rounded{font-size:18px;color:#777184}
.nht-gantt-search input{width:100%;border:0;outline:0;background:transparent;color:#19152b;font-family:inherit;font-size:11px;font-weight:600;line-height:1.2}
.nht-gantt-search input::placeholder{color:#aaa4b2}
.nht-gantt-summary{display:flex;align-items:center;min-height:48px;border-block:1px solid var(--workspace-line,#e7e3eb);padding:0 24px;background:#fff;color:#625c6c;font-size:11px}
.nht-gantt-summary>span{display:flex;align-items:center;gap:6px;padding-right:28px}
.nht-gantt-summary>span+span{border-left:1px solid #ddd8e2;padding-left:28px}
.nht-gantt-summary .material-symbols-rounded{font-size:17px;color:#746d80}
.nht-gantt-summary strong{color:#302a3b}
.nht-gantt-scroll{overflow-x:auto;background:#fff;scrollbar-color:#c8baf0 transparent}
.nht-gantt-canvas{--label-width:205px;--gantt-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;position:relative;width:100%;min-width:1440px;background:#fff;font-family:var(--gantt-font)}
.nht-annual-gantt.is-six-month .nht-gantt-canvas{min-width:2200px}
.nht-gantt-axis{position:relative;z-index:5;display:grid;grid-template-columns:var(--label-width) 1fr;height:42px;border-bottom:1px solid #e7e3eb;background:#fff}
.nht-gantt-axis>strong{position:sticky;left:0;z-index:7;display:flex;align-items:center;padding:0 16px;border-right:1px solid #ddd8e2;background:#fff;font-size:10px}
.nht-gantt-months{display:flex;min-width:0}
.nht-gantt-months span{display:grid;place-items:center;flex:var(--month-days) 0 0;border-right:1px solid #ddd8e2;font-size:11px;font-weight:850}
.nht-gantt-week-axis{position:relative;z-index:4;display:grid;grid-template-columns:var(--label-width) 1fr;height:28px;border-bottom:1px solid #e7e3eb;background:#fbfafc}
.nht-gantt-week-axis>span{position:sticky;left:0;z-index:6;border-right:1px solid #ddd8e2;background:#fbfafc}
.nht-gantt-week-axis>div,.nht-gantt-grid-lines>div{position:relative}
.nht-gantt-week-axis i,.nht-gantt-grid-lines i{position:absolute;top:0;bottom:0;width:1px;border-left:1px dotted #e8e3eb;font-style:normal}
.nht-gantt-week-axis i span{position:absolute;top:8px;left:4px;color:#8b8493;font-size:7px;font-weight:800}
.nht-gantt-grid-lines{position:absolute;z-index:0;inset:70px 0 0;display:grid;grid-template-columns:var(--label-width) 1fr;pointer-events:none}
.nht-gantt-grid-lines>span{border-right:1px solid #ddd8e2;background:#fff}
.nht-gantt-rows{position:relative;z-index:2}
.nht-gantt-quarter{margin:0;padding:0 0 5px;border-bottom:1px solid #e7e3eb}
.nht-gantt-quarter:last-child{border-bottom:0}
.nht-gantt-quarter>h3{position:sticky;left:0;z-index:5;width:var(--label-width);height:27px;margin:0;padding:10px 16px 0;background:#fff;color:#5b21d6;font-size:10px;line-height:1;font-weight:900}
.nht-gantt-row{display:grid;grid-template-columns:var(--label-width) 1fr;min-height:29px}
.nht-gantt-cohort{position:sticky;left:0;z-index:4;display:flex;align-items:center;gap:8px;min-width:0;border:0;border-right:1px solid #ddd8e2;padding:0 16px;background:#fff;color:#312a3b;text-align:left;font-family:var(--gantt-font);font-size:12px;font-weight:500;line-height:1.2;letter-spacing:-.012em;cursor:pointer}
.nht-gantt-cohort:hover{color:var(--class-color)}
.nht-gantt-cohort:focus-visible,.nht-gantt-bar:focus-visible{outline:2px solid var(--class-color);outline-offset:-2px}
.nht-gantt-cohort>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nht-gantt-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--class-color)}
.nht-gantt-track{position:relative;min-width:0}
.nht-gantt-bar{position:absolute;top:5px;left:var(--bar-start);width:var(--bar-width);height:20px;border:0;padding:0;background:transparent;cursor:pointer;filter:drop-shadow(0 2px 3px color-mix(in srgb,var(--class-color) 14%,transparent));transition:filter .16s ease,transform .16s ease}
.nht-gantt-bar:hover{filter:drop-shadow(0 5px 5px color-mix(in srgb,var(--class-color) 24%,transparent));transform:translateY(-1px)}
.nht-gantt-bar span{position:absolute;top:0;display:flex;align-items:center;justify-content:center;height:20px;overflow:hidden;border:1px solid color-mix(in srgb,var(--class-color) 52%,#fff);color:var(--class-color);font-family:var(--gantt-font);font-size:7.5px;font-weight:600;line-height:1;letter-spacing:-.01em;white-space:nowrap}
.nht-gantt-bar .training{left:0;width:var(--training-share);border-radius:3px 0 0 3px;background:var(--class-tint)}
.nht-gantt-bar .nesting{left:var(--nesting-left);width:var(--nesting-share);border-radius:0 3px 3px 0;background:var(--class-color);color:#fff;font-size:7.5px;font-weight:600;letter-spacing:-.01em}
.nht-gantt-today-track{position:absolute;z-index:8;top:63px;right:0;bottom:0;left:var(--label-width);pointer-events:none}
.nht-gantt-today-line{position:absolute;top:0;bottom:0;width:2px;background:#7c3aed}
.nht-gantt-today-line:before{content:"";position:absolute;top:-5px;left:-3px;width:8px;height:8px;border-radius:50%;background:#7c3aed}
.nht-gantt-today-line span{position:absolute;top:-23px;left:50%;transform:translateX(-50%);border-radius:5px;padding:4px 6px;background:#5b21d6;color:#fff;font-size:7px;font-weight:900;white-space:nowrap}
.nht-gantt-empty{min-height:130px;margin:0;padding:48px 24px 48px calc(var(--label-width) + 24px);color:#777184;font-size:12px}
.nht-gantt-legend{display:flex;align-items:center;gap:22px;min-height:52px;border-top:1px solid #e7e3eb;padding:0 28px;background:#fff;color:#504959;font-size:10px}
.nht-gantt-legend span{display:flex;align-items:center;gap:8px;white-space:nowrap}
.nht-gantt-legend i{width:12px;height:12px;background:#777}
.nht-gantt-legend .us i{background:#4d83ee}.nht-gantt-legend .emea i{background:#955ae9}.nht-gantt-legend .bangalore i{background:#36ad9e}.nht-gantt-legend .delhi i{background:#fb873d}
.nht-gantt-legend b{width:1px;height:22px;background:#ddd8e2}
.nht-gantt-legend p{margin:0;color:#777184}
@media(max-width:1060px){
  .nht-gantt-header{align-items:flex-start}
  .nht-gantt-controls{width:100%;max-width:none}
  .nht-gantt-search{width:100%}
}
@media(max-width:760px){
  .new-hire-calendar{margin-top:18px}
  .nht-gantt-header{display:grid;padding:18px}
  .nht-gantt-header h2{font-size:31px}
  .nht-gantt-controls{display:grid;grid-template-columns:auto 1fr;width:100%;max-width:none}
  .nht-gantt-year{justify-content:center}
  .nht-gantt-zoom{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
  .nht-gantt-search{grid-column:1/-1;width:100%}
  .nht-gantt-summary{overflow-x:auto;padding:0 18px;white-space:nowrap}
  .nht-gantt-canvas{--label-width:170px;min-width:1220px}
  .nht-gantt-legend{overflow-x:auto;padding:0 18px}
}
@media(min-width:1400px){
  .nht-gantt-header{display:flex;justify-content:space-between;gap:28px}
  .nht-gantt-intro{flex:0 0 auto}
  .nht-gantt-controls{width:auto;min-width:700px;grid-template-columns:auto auto auto minmax(250px,1fr)}
}
@media(prefers-reduced-motion:reduce){.nht-gantt-bar{transition:none}}
