
[hidden] { display:none !important; }
.advisor-work-layout { display:block; }
.is-advisor { container-type:inline-size; }
.advisor-work-topbar { display:block; margin-bottom:18px; }
.advisor-work-date { max-width:280px; margin-bottom:0; }
.is-advisor .advisor-work-topbar { display:grid; grid-template-columns:minmax(190px,280px) minmax(280px,1fr); gap:20px; align-items:start; }
.advisor-work-timing { justify-self:end; width:100%; max-width:620px; background:#fff; border:1px solid var(--border); border-radius:10px; padding:14px 16px; }
.advisor-timer-row { display:flex; align-items:center; gap:12px; padding-bottom:12px; border-bottom:1px solid var(--border-light); }
.advisor-timer-caption { font-size:12px; color:var(--text-secondary); white-space:nowrap; }
.advisor-clock { font-size:20px; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:.02em; line-height:1.2; }
.advisor-timer-row button { margin-left:auto; padding:6px 10px; font-size:12px; white-space:nowrap; box-shadow:none; }
.advisor-time-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; margin-top:12px; }
.advisor-time-fields .form-label { font-size:12px; margin-bottom:5px; }
.advisor-time-fields .form-input { padding:8px 10px; font-size:13px; min-width:0; height:38px; }
.advisor-minute-input { position:relative; }
.advisor-minute-input input { padding-right:42px !important; }
.advisor-minute-input > span { position:absolute; right:10px; top:50%; transform:translateY(-50%); color:var(--text-tertiary); font-size:12px; pointer-events:none; }
.advisor-time-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:10px; flex-wrap:wrap; }
.advisor-time-footer .hint { font-size:11px; margin:0; }
.advisor-time-total { margin-left:auto; font-size:11px; color:var(--text-secondary); white-space:nowrap; }
.advisor-time-total strong { display:inline; color:var(--primary); font-size:12px; font-weight:600; margin-left:4px; }
.advisor-work-content { margin-bottom:0; }
@container (max-width:540px) {
  .is-advisor .advisor-work-topbar { grid-template-columns:1fr; gap:14px; }
  .advisor-work-date { max-width:none; }
}
.advisor-work-duration { color:var(--text-secondary); font-size:12px; margin-top:8px; }
.service-term-dates { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.service-term-dates label { font-size:12px; color:var(--text-secondary); }
.service-term-dates input { margin-top:6px; }
@media (max-width:760px) {
  .is-advisor .advisor-work-topbar { grid-template-columns:1fr; gap:14px; }
  .service-term-dates { grid-template-columns:1fr; }
}
