.hiring-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.hiring-stats>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;background:white;border:1px solid var(--line);border-radius:12px}.hiring-stats span{font-size:12px;color:var(--muted);font-weight:650}.hiring-stats strong{font-size:26px}.hiring-filters.card{grid-template-columns:1.7fr 1fr 1fr 1fr auto}.hiring-filters .search-field{grid-column:auto}.hiring-count{padding:12px 16px;margin:0;border-top:1px solid var(--line)}.due-date{color:#925812;font-weight:700}.hiring-dialog{width:min(720px,calc(100vw - 28px));max-height:90vh;padding:22px;border:1px solid var(--line);border-radius:14px;color:var(--ink);box-shadow:0 18px 80px #16263844;overflow:auto}.hiring-dialog::backdrop{background:#142c4566}.hiring-dialog>header{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px;align-items:flex-start}.hiring-dialog h2{font-size:21px;margin:0}.hiring-dialog-feedback{margin-top:14px}.hiring-dialog .detail-form{margin-block:18px}.hiring-dialog .detail-form>.button{justify-self:start}.hiring-person{padding:14px;background:#edf4f9;border-radius:9px}.hiring-person h3{font-size:20px}.hiring-person p{color:#425d73;margin-bottom:8px}.hiring-person p:last-child{margin:0}.hiring-history{border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.hiring-history summary{cursor:pointer;font-weight:750}.hiring-history article{border-left:3px solid #c3d4e0;padding:10px 12px;margin-top:12px}.hiring-history small{display:block;color:var(--muted)}.hiring-history p{font-size:12px;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.opening-list{display:flex;flex-wrap:wrap;gap:6px;max-height:170px;overflow:auto}.opening-list .button{text-align:left}.applicant-hiring-card{border:1px solid #c9dce9;border-radius:9px;padding:13px;background:#f7fafc}.applicant-hiring-card h3{font-size:14px}.applicant-hiring-card p{margin:10px 0 0}.interview-list-item{display:grid;gap:3px;width:100%;text-align:left;color:var(--ink);padding:12px;border:1px solid var(--line);border-radius:8px;background:white;margin-top:8px}.interview-list-item:hover{border-color:var(--blue-deep);background:#f1f6fa}.interview-list-item span{color:var(--muted);font-size:12px}.application-interviews{margin-top:20px}
/* Calendar: one date picker, one readable interview list. */
.interview-workspace{display:grid;grid-template-columns:350px minmax(0,1fr);gap:24px;align-items:start}
.calendar-picker,.calendar-agenda{padding:20px}
.calendar-nav{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:16px}
.calendar-nav h3{font-size:21px;margin:0;text-align:center}
.calendar-nav .button{padding:8px 13px}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
.calendar-weekdays span{text-align:center;color:#506377;font-size:14px;padding:6px 0}
.calendar-day{position:relative;min-height:46px;border:2px solid transparent;border-radius:8px;background:white;color:var(--ink);font-size:17px}
.calendar-day:hover{background:#edf4f9;border-color:#9db8cd}
.calendar-day.other-month{color:#6f7b87;background:#f7f8fa}
.calendar-day.today{font-weight:800;border-color:var(--blue-deep)}
.calendar-day.selected-day{background:var(--blue-deep);color:white;border-color:var(--blue-deep)}
.calendar-day.has-interviews:after{content:"";position:absolute;width:5px;height:5px;background:currentColor;border-radius:50%;bottom:3px;left:calc(50% - 2px)}
#calendar-today{width:100%;margin-top:14px}
.calendar-person-filter{display:grid;gap:8px;margin-top:22px;font-size:16px}
#calendar-time-label{font-size:14px;margin:16px 0 0}
#calendar-status:empty{display:none}
#calendar-status{margin:14px 0}
.calendar-agenda h3{font-size:22px;margin:0}
.calendar-date-heading{font-size:16px;color:#415b71;margin:22px 0 8px}
.agenda-item{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;padding:18px 12px;margin:8px 0;text-align:left;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink)}
.agenda-item:hover{background:#f1f6fa;border-color:var(--blue-deep)}
.agenda-item strong{font-size:19px;overflow-wrap:anywhere}
.agenda-time{font-size:17px;font-weight:750}
.agenda-person{display:grid;gap:6px}
.agenda-person small{color:#496176;font-size:16px}
.agenda-item .tag{font-size:14px;white-space:normal;text-align:center}
.agenda-item.no-show .tag{background:var(--amber);color:var(--amber-deep)}
.agenda-item.cancelled{color:#647280;background:#f7f8fa}
.interview-empty{padding:35px 5px;color:#506377;font-size:18px}
.calendar-settings{margin-top:22px;color:#496176}
.calendar-settings>summary{cursor:pointer;font-size:16px;padding:12px 0;width:max-content}
.calendar-controls{display:flex;align-items:end;gap:16px;flex-wrap:wrap;padding:14px 0}
.calendar-controls label{display:grid;gap:8px;min-width:220px}
#section-calendar>.page-heading{align-items:center;margin-bottom:24px}
#section-calendar .button,.interview-form .button{font-size:16px;min-height:44px}
#section-calendar select{font-size:16px;min-height:44px}
.hiring-dialog.interview-dialog{width:min(620px,calc(100vw - 28px))}
.interview-form label{font-size:16px}
.interview-form input,.interview-form select,.interview-form textarea{font-size:17px;min-height:46px}
.interview-form textarea{min-height:88px}
.interview-form .form-grid{gap:16px}
.interview-form>label,.interview-form>.form-grid{margin-bottom:4px}
.interview-form details{border-top:1px solid var(--line);padding-top:14px}
.interview-form summary{padding:4px 0;cursor:pointer;font-size:16px;color:#345c7c}
.interview-form details>.form-grid,.interview-form details>label{margin-top:16px}
.interview-summary{margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid var(--line);font-size:17px}
.interview-summary h3{font-size:24px;margin:0 0 10px}
.interview-summary p{margin:6px 0}
.interview-form .detail-actions{justify-content:flex-start}
.interview-form .primary{min-width:150px}
.interview-form .inline-note{font-size:14px;color:#566c7f;margin:0}
.applicant-picker{position:relative;display:grid;gap:6px}
.applicant-picker>label{font-size:16px;font-weight:700}
.applicant-input{display:flex;position:relative}
.applicant-input input{width:100%;padding-right:48px}
.applicant-input button{position:absolute;right:2px;top:2px;bottom:2px;width:44px;border:0;border-radius:7px;background:transparent;color:var(--ink);font-size:22px}
.applicant-options{position:absolute;top:100%;left:0;right:0;max-height:240px;overflow:auto;z-index:5;padding:4px;background:white;border:1px solid #9db8cd;border-radius:8px;box-shadow:0 6px 18px #142c4522}
.applicant-options button{display:grid;gap:3px;width:100%;padding:12px;text-align:left;border:0;border-radius:5px;background:white;color:var(--ink)}
.applicant-options button:hover,.applicant-options button[aria-selected=true]{background:#e7f1fa}
.applicant-options strong{font-size:17px}
.applicant-options small{font-size:14px;color:#566c7f;overflow-wrap:anywhere}
#interview-applicant-status:empty{display:none}
#section-calendar button:focus-visible,.interview-dialog button:focus-visible,.interview-dialog summary:focus-visible{outline:3px solid #176aab;outline-offset:3px}
@media(max-width:1100px){.hiring-filters.card{grid-template-columns:repeat(2,minmax(0,1fr))}.hiring-filters .search-field{grid-column:span 2}.interview-workspace{grid-template-columns:320px minmax(0,1fr);gap:16px}.agenda-item{grid-template-columns:90px minmax(0,1fr)}.agenda-item .tag{grid-column:2;justify-self:start}}
@media(max-width:780px){.hiring-stats{gap:7px}.hiring-stats>div{padding:12px;display:grid;gap:2px}.hiring-stats span{font-size:11px}.hiring-stats strong{font-size:23px}.hiring-dialog{padding:16px}.applicant-hiring-card .section-title-row{align-items:flex-start;flex-wrap:wrap}.interview-workspace{grid-template-columns:1fr}.calendar-picker{max-width:430px;width:100%;justify-self:center}.calendar-agenda{padding:18px}.calendar-agenda .section-title-row{flex-wrap:wrap;gap:12px}.agenda-item{padding:16px 10px}.interview-form .form-grid{grid-template-columns:1fr}.interview-dialog{max-height:92vh}.interview-form .wide-field{grid-column:auto}}
