.ts-detail{display:flex;flex-direction:column;gap:1rem;animation:tt-fade-in .25s ease-out}.ts-detail__topbar{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);backdrop-filter:blur(12px)}.ts-detail__back-btn{padding:.375rem .75rem;font-size:.8125rem;font-weight:500;color:var(--tt-muted);background:transparent;border:1px solid var(--tt-border);border-radius:var(--tt-rs);cursor:pointer;transition:all var(--tt-ease);white-space:nowrap}.ts-detail__back-btn:hover{background:var(--tt-close-hover);color:var(--tt-white);border-color:var(--tt-border-h)}.ts-detail__topbar-info{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.ts-detail__employee-name{font-size:.9375rem;font-weight:600;color:var(--tt-white)}.ts-detail__period{font-size:.75rem;color:var(--tt-dim)}.ts-detail__topbar-actions{display:flex;align-items:center;gap:.625rem;flex-shrink:0}.ts-detail__action-btn{padding:.4375rem 1rem;font-size:.8125rem;font-weight:600;border:none;border-radius:var(--tt-rs);cursor:pointer;transition:all var(--tt-ease)}.ts-detail__action-btn--submit{color:var(--tt-on-primary);background:var(--tt-primary)}.ts-detail__action-btn--submit:hover{background:var(--tt-primary-h)}.ts-detail__action-btn--recall{color:var(--tt-warning);background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2)}.ts-detail__action-btn--recall:hover{background:rgba(245,158,11,.2)}.ts-detail__action-btn--delete{color:var(--tt-error);background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2)}.ts-detail__action-btn--delete:hover{background:rgba(239,68,68,.2)}.ts-detail__action-btn:disabled{opacity:.5;cursor:not-allowed}.ts-detail__rejection-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:var(--tt-r);animation:tt-fade-in .25s ease-out}.ts-detail__rejection-icon{font-size:1.25rem;flex-shrink:0}.ts-detail__rejection-content{flex:1;min-width:0}.ts-detail__rejection-content strong{display:block;font-size:.875rem;color:#ef4444;margin-bottom:.125rem}.ts-detail__rejection-text{font-size:.8125rem;color:var(--tt-muted);margin:0}.ts-detail__body{display:grid;grid-template-columns:1fr auto;gap:1.5rem;padding:1.25rem;background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);backdrop-filter:blur(12px)}.ts-detail__info-section{display:flex;flex-direction:column;gap:.75rem}.ts-detail__field{display:flex;flex-direction:column;gap:.1875rem}.ts-detail__label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--tt-dim)}.ts-detail__value{font-size:.875rem;color:var(--tt-text)}.ts-detail__client{color:var(--tt-muted)}.ts-detail__lock-notice{font-size:.8125rem;color:var(--tt-dim);padding:.375rem 0}.ts-detail__hours-card{background:var(--tt-row-alt);border:1px solid var(--tt-border);border-radius:var(--tt-rs);padding:.75rem 1rem;min-width:280px}.ts-detail__hours-table{width:100%;border-collapse:collapse}.ts-detail__hours-table th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--tt-dim);padding:.375rem .75rem;text-align:right;white-space:nowrap}.ts-detail__hours-table th:first-child{text-align:left}.ts-detail__hours-label{font-size:.8125rem;color:var(--tt-text);padding:.375rem .75rem;display:flex;align-items:center;gap:.375rem}.ts-detail__hours-indicator{width:3px;height:1rem;border-radius:999px;flex-shrink:0}.ts-detail__hours-indicator--billable{background:var(--tt-primary)}.ts-detail__hours-indicator--nonbillable{background:var(--tt-dim)}.ts-detail__hours-value{font-size:.8125rem;color:var(--tt-text);padding:.375rem .75rem;text-align:right;font-variant-numeric:tabular-nums}.ts-detail__hours-total{border-top:1px solid var(--tt-border)}.ts-detail__hours-total td{padding-top:.5rem}.ts-detail__entries-section{background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);backdrop-filter:blur(12px);overflow:hidden}.ts-entries-table{width:100%;border-collapse:collapse}.ts-entries-table__th{padding:.625rem 1.25rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--tt-dim);text-align:left;background:var(--tt-subtle-bg);border-bottom:1px solid var(--tt-border);white-space:nowrap}.ts-entries-table__th--right{text-align:right}.ts-entries-table__row{border-bottom:1px solid var(--tt-subtle-border);transition:background var(--tt-ease)}.ts-entries-table__row:hover{background:var(--tt-row-hover)}.ts-entries-table__row:last-child{border-bottom:none}.ts-entries-table__date-cell{padding:.625rem 1rem;vertical-align:top;border-right:1px solid var(--tt-border);min-width:80px}.ts-entries-table__date-label{font-size:.8125rem;font-weight:600;color:var(--tt-text);white-space:nowrap}.ts-entries-table__date-weekday{font-size:.6875rem;color:var(--tt-dim)}.ts-entries-table__td{padding:.625rem 1.25rem;font-size:.8125rem;color:var(--tt-text);vertical-align:middle}.ts-entries-table__td--right{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;color:var(--tt-white)}.ts-entries-table__empty{padding:2rem;text-align:center;color:var(--tt-dim);font-size:.8125rem}.ts-detail__totals-box{padding:.875rem 1.25rem;background:var(--tt-subtle-bg);border-top:1px solid var(--tt-border)}.ts-detail__totals-row{display:flex;justify-content:flex-end;align-items:center;gap:2rem;font-size:.875rem;color:var(--tt-text)}.ts-detail__totals-row span:last-child{font-weight:700;font-variant-numeric:tabular-nums;color:var(--tt-white);min-width:4rem;text-align:right}.ts-detail__approval-section{background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);padding:1rem 1.25rem;backdrop-filter:blur(12px)}.approval-panel{background:var(--tt-row-alt);border:1px solid var(--tt-border);border-radius:var(--tt-rs);padding:1rem}.approval-panel--empty,.approval-panel--error,.approval-panel--loading{color:var(--tt-muted);font-size:.8125rem;padding:1rem}.approval-panel__title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--tt-dim);margin:0 0 .75rem}.approval-panel__chain{display:flex;flex-direction:column;padding-left:.75rem;border-left:2px solid var(--tt-border)}.approval-step{position:relative;padding:.5rem 0 .5rem 1rem}.approval-step__connector{position:absolute;left:-.875rem;top:0;width:2px;height:.5rem;background:var(--tt-border)}.approval-step__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.approval-step__icon{width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.625rem;flex-shrink:0;background:var(--tt-card);border:1px solid var(--tt-border);position:relative;left:-1.625rem;margin-right:-1.125rem}.approval-step--approved .approval-step__icon{background:rgba(34,197,94,.15);border-color:var(--tt-success);color:var(--tt-success)}.approval-step--rejected .approval-step__icon{background:rgba(239,68,68,.15);border-color:var(--tt-error);color:var(--tt-error)}.approval-step--pending .approval-step__icon{background:rgba(59,130,246,.15);border-color:#60a5fa;color:#60a5fa}.approval-step--waiting .approval-step__icon{background:rgba(100,116,139,.15);border-color:var(--tt-dim);color:var(--tt-dim)}.approval-step--skipped .approval-step__icon{background:rgba(139,92,246,.15);border-color:#a78bfa;color:#a78bfa}.approval-step--skipped{opacity:.7}.approval-step__level{font-size:.75rem;font-weight:600;color:var(--tt-text)}.approval-step__body{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.approval-step__role{font-size:.75rem;color:var(--tt-muted)}.approval-step__name{font-size:.8125rem;font-weight:500;color:var(--tt-text)}.approval-step__status{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .625rem;border-radius:999px}.approval-step__status--approved{color:var(--tt-status-success-fg);background:var(--tt-status-success-bg)}.approval-step__status--rejected{color:var(--tt-status-error-fg);background:var(--tt-status-error-bg)}.approval-step__status--pending{color:var(--tt-status-info-fg);background:var(--tt-status-info-bg)}.approval-step__status--waiting{color:var(--tt-status-neutral-fg);background:var(--tt-status-neutral-bg)}.approval-step__status--skipped{color:#a78bfa;background:rgba(139,92,246,.15)}.approval-step__time{font-size:.6875rem;color:var(--tt-dim);font-variant-numeric:tabular-nums;margin-top:.125rem}.approval-step__comments{font-size:.75rem;color:var(--tt-muted);font-style:italic;margin-top:.125rem}.summary-footer{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:var(--tt-subtle-bg);border-top:1px solid var(--tt-border)}.summary-footer__item{display:flex;align-items:center;gap:.375rem}.summary-footer__item--total .summary-footer__value{color:var(--tt-white)}.summary-footer__item--submitted .summary-footer__value{color:var(--tt-success)}.summary-footer__item--pending .summary-footer__value{color:var(--tt-warning)}.summary-footer__value{font-size:.9375rem;font-weight:700;font-variant-numeric:tabular-nums}.summary-footer__label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em;color:var(--tt-dim)}.summary-footer__submit-arrow{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:var(--tt-primary);border:none;border-radius:50%;color:var(--tt-on-primary);cursor:pointer;font-size:1rem;margin-left:.375rem;transition:all var(--tt-ease)}.summary-footer__submit-arrow:hover{background:var(--tt-primary-h);transform:scale(1.1)}@media (max-width:768px){.ts-detail__body{grid-template-columns:1fr}.ts-detail__hours-card{min-width:auto}.ts-detail__topbar{flex-wrap:wrap}.ts-detail__topbar-actions{width:100%;justify-content:flex-end}.summary-footer{flex-wrap:wrap}.ts-page-header{flex-wrap:wrap;gap:.75rem}.ts-tabs{overflow-x:auto}}.ts-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.ts-page-header__nav{display:flex;align-items:center;gap:.5rem;margin-left:auto}.ts-page-header__nav-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background:var(--tt-card);border:1px solid var(--tt-border-h);border-radius:var(--tt-rs);color:var(--tt-text);cursor:pointer;transition:all var(--tt-ease)}.ts-page-header__nav-btn:hover{background:var(--tt-card-hover);color:var(--tt-white);border-color:var(--tt-primary)}.ts-page-header__period{font-size:.9375rem;font-weight:600;color:var(--tt-white);min-width:10rem;text-align:center}.ts-tabs{display:flex;gap:0;border-bottom:1px solid var(--tt-border);margin-bottom:1rem}.ts-tabs__tab{position:relative;padding:.75rem 1.25rem;font-size:.8125rem;font-weight:500;color:var(--tt-muted);background:transparent;border:none;cursor:pointer;transition:color var(--tt-ease);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.ts-tabs__tab:hover{color:var(--tt-white)}.ts-tabs__tab--active{color:var(--tt-primary);font-weight:600}.ts-tabs__tab--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--tt-primary);border-radius:1px 1px 0 0}.ts-tabs__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .375rem;font-size:.6875rem;font-weight:700;color:var(--tt-on-primary)!important;background:var(--tt-primary);border-radius:999px}.ts-tab-content{animation:tt-fade-in .2s ease-out}.ts-table-panel__bulk-bar{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.2);border-radius:var(--tt-rs);margin-bottom:.75rem}.ts-table-panel__bulk-count{font-size:.8125rem;font-weight:600;color:var(--tt-primary);margin-right:auto}.ts-data-table__td--checkbox,.ts-data-table__th--checkbox{width:2.5rem;text-align:center}.ts-data-table__td--center,.ts-data-table__th--center{text-align:center}.ts-data-table__td--actions{display:flex;gap:.375rem;align-items:center;justify-content:flex-end}.ts-detail__action-btn--sm{padding:.25rem .5rem;font-size:.75rem;min-width:1.75rem;display:inline-flex;align-items:center;justify-content:center}.ts-data-table__zero{color:var(--tt-dim);font-size:.75rem}.ts-data-table__row--footer{border-top:2px solid var(--tt-border)}.ts-data-table__row--footer td{font-weight:600;padding-top:.75rem}.weekly-grid__day-header{display:flex;flex-direction:column;align-items:center;gap:.0625rem}.weekly-grid__day-name{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.weekly-grid__day-date{font-size:.625rem;font-weight:400;color:var(--tt-dim)}.weekly-grid__cell{min-width:3.5rem;font-variant-numeric:tabular-nums}.weekly-grid__cell--filled{color:var(--tt-primary);font-weight:600;background:rgba(59,130,246,.04)}.weekly-grid__grand-total{color:var(--tt-primary);font-size:.9375rem}.ts-timeline{background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);padding:1rem 1.25rem;backdrop-filter:blur(12px)}.ts-timeline__title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--tt-dim);margin:0 0 .75rem}.ts-timeline__list{display:flex;flex-direction:column}.ts-timeline__item{display:flex;gap:.75rem;min-height:2.5rem}.ts-timeline__connector{flex-direction:column}.ts-timeline__connector,.ts-timeline__dot{display:flex;align-items:center;flex-shrink:0;width:1.75rem}.ts-timeline__dot{height:1.75rem;justify-content:center;font-size:.875rem;border:2px solid var(--tt-border);border-radius:50%;background:var(--tt-card)}.ts-timeline__line{flex:1;width:2px;background:var(--tt-border);min-height:.75rem}.ts-timeline__content{flex:1;padding-bottom:.75rem}.ts-timeline__header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ts-timeline__label{font-size:.8125rem;color:var(--tt-white)}.ts-timeline__level{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.0625rem .5rem;border-radius:999px;background:rgba(59,130,246,.1);color:var(--tt-primary)}.ts-timeline__time{font-size:.6875rem;color:var(--tt-dim);margin-left:auto;cursor:help;font-variant-numeric:tabular-nums}.ts-timeline__comments{margin:.25rem 0 0;font-size:.75rem;color:var(--tt-muted);font-style:italic}.ts-timeline__loading{font-size:.8125rem;color:var(--tt-muted);padding:.5rem 0}.ts-delegation__panel{padding:1rem 1.25rem}.ts-delegation__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.ts-delegation__title{font-size:.9375rem;font-weight:600;color:var(--tt-white);margin:0}.ts-delegation__section{margin-bottom:1rem}.ts-delegation__subtitle{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--tt-dim);margin:0 0 .5rem}.ts-delegation__card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:var(--tt-row-alt);border:1px solid var(--tt-border);border-radius:var(--tt-rs);margin-bottom:.5rem}.ts-delegation__info{display:flex;flex-direction:column;gap:.125rem}.ts-delegation__info strong{font-size:.875rem;color:var(--tt-white)}.ts-delegation__meta{font-size:.75rem;color:var(--tt-muted)}.ts-delegation__form{padding:1rem;background:var(--tt-row-alt);border:1px solid var(--tt-border);border-radius:var(--tt-rs);max-width:480px}.ts-delegation__field{margin-bottom:.75rem}.ts-delegation__field-label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--tt-dim);margin-bottom:.25rem}.ts-delegation__input,.ts-delegation__select{width:100%;padding:.5rem .75rem;font-size:.8125rem;color:var(--tt-text);background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-rs);outline:none;transition:border-color var(--tt-ease)}.ts-delegation__input[type=date]{color-scheme:dark}[data-theme=light] .ts-delegation__input[type=date]{color-scheme:light}.ts-delegation__input:focus,.ts-delegation__select:focus{border-color:var(--tt-primary)}.ts-delegation__actions{display:flex;gap:.5rem;margin-top:1rem}.approval-workflow{background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);padding:1.25rem;backdrop-filter:blur(12px);animation:tt-fade-in .25s ease-out}.approval-workflow--loading{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.approval-workflow__skeleton{height:2rem;border-radius:var(--tt-rs);background:linear-gradient(90deg,var(--tt-subtle-bg) 25%,var(--tt-subtle-border) 50%,var(--tt-subtle-bg) 75%);background-size:200% 100%;animation:ts-skeleton-shimmer 1.5s ease-in-out infinite}.approval-workflow__skeleton--short{width:60%}.approval-workflow__section{margin-bottom:1rem}.approval-workflow__section:last-child{margin-bottom:0}.approval-workflow__title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--tt-dim);margin:0 0 .75rem}.approval-workflow__chain{display:flex;flex-direction:column}.approval-workflow__step{display:flex;gap:.875rem;min-height:3rem}.approval-workflow__step-track{flex-direction:column}.approval-workflow__dot,.approval-workflow__step-track{display:flex;align-items:center;flex-shrink:0;width:1.5rem}.approval-workflow__dot{height:1.5rem;border-radius:50%;justify-content:center;transition:all .3s ease}.approval-workflow__dot--approved{background:var(--tt-atm-green-bg);border:2px solid var(--tt-atm-green);color:var(--tt-atm-green)}.approval-workflow__dot--rejected{background:var(--tt-atm-red-bg);border:2px solid var(--tt-atm-red);color:var(--tt-atm-red)}.approval-workflow__dot--pending{background:var(--tt-atm-blue-bg);border:2px solid var(--tt-atm-blue);color:var(--tt-atm-blue);animation:atm-pulse 2s ease-in-out infinite}.approval-workflow__dot--waiting{background:var(--tt-atm-gray-bg);border:2px solid var(--tt-atm-gray);color:var(--tt-atm-gray)}.approval-workflow__check-icon,.approval-workflow__wait-icon,.approval-workflow__x-icon{width:.75rem;height:.75rem}.approval-workflow__pending-ring{width:.375rem;height:.375rem;border-radius:50%;background:var(--tt-atm-blue)}.approval-workflow__line{flex:1;width:2px;min-height:.75rem;background:var(--tt-atm-line)}.approval-workflow__step-content{flex:1;padding-bottom:.75rem;display:flex;flex-direction:column;gap:.1875rem}.approval-workflow__step-header{display:flex;align-items:center;gap:.5rem}.approval-workflow__step-level{font-size:.8125rem;font-weight:600;color:var(--tt-white)}.approval-workflow__badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .625rem;border-radius:999px;white-space:nowrap}.approval-workflow__badge--approved{color:var(--tt-atm-green);background:var(--tt-atm-green-bg)}.approval-workflow__badge--rejected{color:var(--tt-atm-red);background:var(--tt-atm-red-bg)}.approval-workflow__badge--pending{color:var(--tt-atm-blue);background:var(--tt-atm-blue-bg)}.approval-workflow__badge--waiting{color:var(--tt-atm-gray);background:var(--tt-atm-gray-bg)}.approval-workflow__step-info{display:flex;align-items:center;gap:.375rem}.approval-workflow__step-role{font-size:.75rem;color:var(--tt-muted)}.approval-workflow__step-name{font-size:.8125rem;font-weight:500;color:var(--tt-text)}.approval-workflow__step-time{font-size:.6875rem;color:var(--tt-dim);font-variant-numeric:tabular-nums}.approval-workflow__step-comment{font-size:.75rem;color:var(--tt-muted);font-style:italic;margin:.125rem 0 0}.approval-workflow__view-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.625rem 1rem;margin:.5rem 0;font-size:.8125rem;font-weight:600;color:var(--tt-atm-green);background:var(--tt-atm-green-bg);border:1px solid var(--tt-atm-green);border-radius:var(--tt-rs);cursor:pointer;transition:all var(--tt-ease)}.approval-workflow__view-btn:hover{background:var(--tt-atm-green);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(46,181,125,.25)}.approval-workflow__view-icon{flex-shrink:0}.approval-workflow__history{display:flex;flex-direction:column;gap:.25rem}.approval-workflow__history-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--tt-atm-card-bg);border-radius:var(--tt-rs);transition:background var(--tt-ease)}.approval-workflow__history-item:hover{background:var(--tt-row-hover)}.approval-workflow__history-left{display:flex;align-items:center;gap:.5rem}.approval-workflow__history-icon{font-size:.875rem;flex-shrink:0}.approval-workflow__history-label{font-size:.8125rem;font-weight:600}.approval-workflow__history-label--approved{color:var(--tt-atm-green)}.approval-workflow__history-label--rejected{color:var(--tt-atm-red)}.approval-workflow__history-label--resubmitted,.approval-workflow__history-label--submitted{color:var(--tt-atm-blue)}.approval-workflow__history-label--recalled{color:var(--tt-warning)}.approval-workflow__history-label--locked{color:var(--tt-dim)}.approval-workflow__history-level{font-size:.625rem;font-weight:600;text-transform:uppercase;padding:.0625rem .5rem;border-radius:999px;background:var(--tt-atm-blue-bg);color:var(--tt-atm-blue)}.approval-workflow__history-time{font-size:.6875rem;color:var(--tt-dim);font-variant-numeric:tabular-nums;cursor:help}.atm{max-width:680px}.atm__body{padding:0 1.5rem 1.5rem}.atm__submission-card{display:flex;align-items:flex-start;gap:.875rem;padding:1.25rem;background:var(--tt-atm-card-bg);border:1px solid var(--tt-border);border-radius:var(--tt-r);margin-bottom:1.5rem;animation:atm-slide-in .3s ease-out}.atm__submission-info{display:flex;flex-direction:column;gap:.25rem}.atm__submission-text{font-size:.875rem;color:var(--tt-text);line-height:1.5}.atm__submission-date{font-size:.75rem;color:var(--tt-dim);font-variant-numeric:tabular-nums}.atm__avatar{width:2.5rem;height:2.5rem;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;color:#fff;background:var(--tt-atm-green);text-transform:uppercase}.atm__avatar--sm{width:2rem;height:2rem;font-size:.6875rem}.atm__timeline{display:flex;flex-direction:column;padding-left:.25rem}.atm__timeline-item{display:flex;gap:1rem;animation:atm-slide-in .35s ease-out both}.atm__timeline-item:first-child{animation-delay:0ms}.atm__timeline-item:nth-child(2){animation-delay:80ms}.atm__timeline-item:nth-child(3){animation-delay:.16s}.atm__timeline-item:nth-child(4){animation-delay:.24s}.atm__timeline-track{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:1rem}.atm__dot{width:1rem;height:1rem;border-radius:50%;flex-shrink:0;animation:atm-dot-pop .3s ease-out}.atm__dot.atm__status--approved{background:var(--tt-atm-green);box-shadow:0 0 0 3px var(--tt-atm-green-bg)}.atm__dot.atm__status--rejected{background:var(--tt-atm-red);box-shadow:0 0 0 3px var(--tt-atm-red-bg)}.atm__dot.atm__status--pending{background:var(--tt-atm-blue);box-shadow:0 0 0 3px var(--tt-atm-blue-bg);animation:atm-dot-pop .3s ease-out,atm-pulse 2s ease-in-out infinite}.atm__dot.atm__status--waiting{background:var(--tt-atm-gray);box-shadow:0 0 0 3px var(--tt-atm-gray-bg)}.atm__connector{flex:1;width:2px;min-height:1rem;background:var(--tt-atm-line)}.atm__timeline-content{flex:1;padding-bottom:1.5rem;display:flex;flex-direction:column;gap:.375rem}.atm__timeline-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.atm__status-label{font-size:.9375rem;font-weight:600}.atm__status-label.atm__status--approved{color:var(--tt-atm-green)}.atm__status-label.atm__status--rejected{color:var(--tt-atm-red)}.atm__status-label.atm__status--pending{color:var(--tt-atm-blue)}.atm__status-label.atm__status--waiting{color:var(--tt-atm-gray)}.atm__timeline-date{font-size:.75rem;color:var(--tt-dim);font-variant-numeric:tabular-nums}.atm__actor-row{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-top:.375rem}.atm__actor-card{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;background:var(--tt-atm-card-bg);border:1px solid var(--tt-border);border-radius:var(--tt-rs);min-width:0}.atm__actor-info{display:flex;flex-direction:column;gap:.0625rem;min-width:0}.atm__actor-name{font-size:.8125rem;font-weight:600;color:var(--tt-white)}.atm__actor-email,.atm__actor-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atm__actor-email{font-size:.6875rem;color:var(--tt-muted)}.atm__behalf-section{display:flex;align-items:center;gap:.5rem}.atm__behalf-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.1875rem .625rem;border-radius:999px;background:var(--tt-atm-behalf-bg);color:var(--tt-atm-behalf-fg);white-space:nowrap}.atm__comment{font-size:.8125rem;color:var(--tt-muted);font-style:italic;margin:.25rem 0 0;line-height:1.4;padding-left:.75rem;border-left:2px solid var(--tt-atm-line)}.atm__activity-feed{margin-top:.5rem}.atm__activity-divider{height:1px;background:var(--tt-border);margin:1rem 0 1.25rem}.atm__activity-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;border:1px solid var(--tt-border);border-radius:var(--tt-r);margin-bottom:.625rem;background:var(--tt-atm-card-bg);transition:all var(--tt-ease);animation:atm-slide-in .3s ease-out both}.atm__activity-item:hover{border-color:var(--tt-border-h);box-shadow:0 2px 8px rgba(0,0,0,.08)}.atm__activity-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.atm__activity-name{font-size:.875rem;font-weight:600;color:var(--tt-white)}.atm__activity-action{font-size:.8125rem;font-weight:500}.atm__activity-action--approved{color:var(--tt-atm-green)}.atm__activity-action--rejected{color:var(--tt-atm-red)}.atm__activity-action--resubmitted,.atm__activity-action--submitted{color:var(--tt-atm-blue)}.atm__activity-action--recalled{color:var(--tt-warning)}.atm__activity-action--locked{color:var(--tt-dim)}.atm__activity-comment{font-size:.75rem;color:var(--tt-muted);font-style:italic;margin:.125rem 0 0}.atm__activity-date{font-size:.6875rem;color:var(--tt-dim);font-variant-numeric:tabular-nums;margin-top:.25rem}@keyframes atm-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes atm-dot-pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes atm-pulse{0%,to{box-shadow:0 0 0 3px var(--tt-atm-blue-bg)}50%{box-shadow:0 0 0 6px var(--tt-atm-blue-bg),0 0 12px var(--tt-atm-blue-bg)}}@media (max-width:640px){.atm{max-width:none}.atm__actor-row{flex-direction:column}.atm__behalf-section{margin-left:0}}.modal--wide{max-width:640px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.5rem .875rem;border-bottom:1px solid var(--tt-border)}.modal__title{font-size:1.0625rem;font-weight:600;color:var(--tt-white);margin:0}.modal__close{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--tt-dim);font-size:1.25rem;cursor:pointer;border-radius:var(--tt-rs);transition:all var(--tt-ease)}.modal__close:hover{background:var(--tt-close-hover);color:var(--tt-white)}.modal__body{padding:1.125rem 1.5rem}.modal__error{padding:.5rem .75rem;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);border-radius:var(--tt-rs);color:#fca5a5;font-size:.8125rem}.modal__error,.modal__field{margin-bottom:.875rem}.modal__label{display:block;font-size:.75rem;font-weight:500;color:var(--tt-muted);margin-bottom:.3125rem}.modal__required{color:var(--tt-error)}.modal__label-row{display:flex;align-items:center;gap:.25rem;margin-bottom:.3125rem}.modal__label-row .modal__label{margin-bottom:0}.modal__input,.modal__select,.modal__textarea{width:100%;padding:.5rem .75rem;font-size:.8125rem;color:var(--tt-text);background:var(--tt-input);border:1px solid var(--tt-border);border-radius:var(--tt-rs);outline:none;transition:border-color var(--tt-ease)}.modal__input:focus,.modal__select:focus,.modal__textarea:focus{border-color:var(--tt-primary);box-shadow:0 0 0 2px rgba(99,102,241,.15)}.modal__textarea{min-height:3.5rem;resize:vertical;font-family:inherit}.modal__hours-mode{display:flex;gap:1rem;margin-bottom:.5rem;font-size:.75rem;color:var(--tt-muted)}.modal__hours-mode label{display:flex;align-items:center;gap:.25rem;cursor:pointer}.modal__hours-mode input[type=radio]{accent-color:var(--tt-primary)}.modal__footer{display:flex;justify-content:flex-end;gap:.625rem;padding:.875rem 1.5rem;border-top:1px solid var(--tt-border)}.modal__btn{padding:.5rem 1.125rem;font-size:.8125rem;font-weight:600;border-radius:var(--tt-rs);cursor:pointer;transition:all var(--tt-ease)}.modal__btn--primary{color:var(--tt-on-primary);background:var(--tt-primary);border:none}.modal__btn--primary:hover:not(:disabled){background:var(--tt-primary-h)}.modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}.modal__btn--secondary{color:var(--tt-muted);background:transparent;border:1px solid var(--tt-border)}.modal__btn--secondary:hover:not(:disabled){border-color:var(--tt-border-h);color:var(--tt-white)}.modal__btn--danger{color:var(--tt-on-primary);background:var(--tt-error);border:none}.modal__btn--danger:hover:not(:disabled){background:#dc2626}.modal--confirm{text-align:center;padding:1.5rem}.modal__confirm-icon{font-size:2rem;line-height:1;margin-bottom:.75rem}.modal__confirm-title{font-size:1.0625rem;font-weight:600;color:var(--tt-white);margin:0 0 .5rem}.modal__confirm-message{font-size:.8125rem;color:var(--tt-muted);margin:0 0 .375rem;line-height:1.5}.modal__confirm-detail{font-size:.75rem;color:var(--tt-dim);margin:0 0 1rem}.modal__description{font-size:.8125rem;color:var(--tt-muted);margin-bottom:.875rem}.modal__empty{padding:2rem 1.5rem;text-align:center;font-size:.875rem;color:var(--tt-muted);background:var(--tt-subtle-bg);border:1px dashed var(--tt-border);border-radius:var(--tt-rs)}.calendar-view{background:var(--tt-card);border:1px solid var(--tt-border);border-radius:var(--tt-r);overflow:hidden;overflow-x:auto;backdrop-filter:blur(12px)}.calendar-view--loading{padding:3rem;text-align:center;color:var(--tt-muted)}.calendar-grid{width:100%;border-collapse:collapse;table-layout:fixed}.calendar-grid__header-cell{padding:.5rem .375rem;text-align:center;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--tt-dim);background:var(--tt-subtle-bg);border-bottom:1px solid var(--tt-border)}.calendar-grid__header-cell--total{color:var(--tt-muted)}.week-row__total{text-align:center;font-size:.75rem;font-weight:700;color:var(--tt-white);font-variant-numeric:tabular-nums;background:var(--tt-row-alt)}.day-cell,.week-row__total{padding:.375rem;border-bottom:1px solid var(--tt-subtle-border)}.day-cell{vertical-align:top;min-height:5rem;height:5rem;border-right:1px solid var(--tt-subtle-border);position:relative;transition:background var(--tt-ease)}.day-cell:hover{background:var(--tt-row-hover)}.day-cell--today{background:rgba(99,102,241,.06)}.day-cell--weekend{background:hsla(0,0%,100%,.01)}.day-cell--other-month{opacity:.35}.day-cell__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.day-cell__number{font-size:.6875rem;font-weight:500;color:var(--tt-muted)}.day-cell__number--today{color:var(--tt-primary);font-weight:700}.day-cell__add-btn{width:1.125rem;height:1.125rem;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--tt-border);border-radius:var(--tt-rs);color:var(--tt-dim);cursor:pointer;font-size:.75rem;line-height:1;opacity:0;transition:all var(--tt-ease)}.day-cell:hover .day-cell__add-btn{opacity:1}.day-cell__add-btn:hover{background:var(--tt-primary);border-color:var(--tt-primary);color:var(--tt-on-primary)}.day-cell__entries{display:flex;flex-direction:column;gap:.125rem;overflow:hidden}.day-cell__entry-pill{display:flex;justify-content:space-between;align-items:center;padding:.125rem .3125rem;background:rgba(99,102,241,.1);border:none;border-radius:2px;cursor:pointer;width:100%;text-align:left;transition:background var(--tt-ease)}.day-cell__entry-pill:hover{background:rgba(99,102,241,.2)}.day-cell__entry-name{font-size:.5625rem;color:var(--tt-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-cell__entry-duration{font-size:.5625rem;color:var(--tt-primary);font-weight:600;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:.25rem}.day-cell__holiday-bar{padding:.0625rem .25rem;margin-top:.125rem;background:rgba(245,158,11,.1);border-radius:2px;font-size:.5rem;color:var(--tt-warning);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-dropdown select,.project-dropdown select{width:100%;font-size:.8125rem;color:var(--tt-text);background:var(--tt-input);border:1px solid var(--tt-border);border-radius:var(--tt-rs);outline:none;cursor:pointer;transition:border-color var(--tt-ease);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding:.5rem 2rem .5rem .75rem}.job-dropdown select:focus,.project-dropdown select:focus{border-color:var(--tt-primary);box-shadow:0 0 0 2px rgba(99,102,241,.15)}.generate-ts__select-all{padding:.5rem 0;border-bottom:1px solid var(--tt-border);margin-bottom:.75rem}.generate-ts__select-all label{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--tt-muted);cursor:pointer}.generate-ts__list{display:flex;flex-direction:column;gap:.25rem;max-height:300px;overflow-y:auto}.generate-ts__item{border:1px solid var(--tt-border);border-radius:var(--tt-rs);transition:all var(--tt-ease)}.generate-ts__item--selected{border-color:rgba(99,102,241,.3);background:rgba(99,102,241,.05)}.generate-ts__label{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;cursor:pointer;width:100%}.generate-ts__details{flex:1;display:flex;flex-direction:column;gap:.125rem}.generate-ts__project{font-size:.8125rem;font-weight:500;color:var(--tt-white)}.generate-ts__job{font-size:.75rem;color:var(--tt-muted)}.generate-ts__client{font-size:.6875rem;color:var(--tt-dim)}.generate-ts__stats{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem;font-size:.75rem;color:var(--tt-muted);font-variant-numeric:tabular-nums}.generate-ts__summary{display:flex;justify-content:space-between;padding:.75rem 0 0;border-top:1px solid var(--tt-border);margin-top:.75rem;font-size:.8125rem;color:var(--tt-muted)}@keyframes tt-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tt-float-in{0%{opacity:0;transform:translateY(1rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tt-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes tt-timer-pulse{0%,to{opacity:1;text-shadow:0 0 0 transparent}50%{opacity:.7;text-shadow:0 0 8px rgba(99,102,241,.4)}}.day-cell__entry-pill-container{position:relative;display:flex;align-items:center;width:100%}.day-cell__delete-btn{position:absolute;right:.125rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:.875rem;height:.875rem;font-size:.625rem;color:var(--tt-dim);background:var(--tt-modal-bg);border:1px solid var(--tt-border);border-radius:2px;cursor:pointer;opacity:0;transition:all var(--tt-ease);line-height:1;padding:0}.day-cell__entry-pill-container:hover .day-cell__delete-btn{opacity:1}.day-cell__delete-btn:hover{background:var(--tt-error);color:var(--tt-on-primary);border-color:var(--tt-error)}@media (max-width:768px){.calendar-grid{font-size:.6875rem}.day-cell{height:3.5rem;min-height:3.5rem}}@media (max-width:1024px){.day-cell{height:4rem;min-height:4rem}}.nte-page-title{color:var(--text-heading)}.nte-page-subtitle{color:var(--text-secondary)}.nte-breadcrumb__link{color:var(--text-muted)}.nte-breadcrumb__link:hover{color:var(--text-link)}.nte-breadcrumb__current{color:var(--text-heading)}.nte-stat-card{background:var(--surface-primary);border-color:var(--border-default)}.nte-stat-card:hover{box-shadow:var(--shadow-card)}.nte-stat-card__label{color:var(--text-muted)}.nte-stat-card__value{color:var(--text-heading)}.nte-table-container{background:var(--surface-primary);border-color:var(--border-default)}.nte-table__header-row{background:var(--surface-secondary)}.nte-table__th{color:var(--text-muted);border-bottom:1px solid var(--border-default)}.nte-table__row:hover{background:var(--surface-hover)}.nte-table__divide>*+*{border-color:var(--border-subtle)}.nte-action-btn{color:var(--text-muted)}.nte-action-btn:hover{color:var(--text-link);background:var(--surface-hover)}.nte-skeleton{background:linear-gradient(90deg,var(--surface-secondary) 25%,var(--surface-hover) 50%,var(--surface-secondary) 75%);background-size:200% 100%;animation:nte-shimmer 1.5s ease-in-out infinite}@keyframes nte-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.nte-empty__icon{background:var(--surface-secondary);color:var(--text-muted)}.nte-empty__title{color:var(--text-heading)}.nte-empty__subtitle{color:var(--text-muted)}.nte-filter-bar{background:var(--surface-primary);border-color:var(--border-default)}.nte-filter-bar__label,.nte-filter-bar__search-icon{color:var(--text-muted)}.nte-filter-bar__input{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}.nte-filter-bar__input:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--input-focus-ring)}.nte-filter-bar__input::-moz-placeholder{color:var(--text-muted)}.nte-filter-bar__input::placeholder{color:var(--text-muted)}.nte-filter-bar__select{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}.nte-filter-bar__select:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--input-focus-ring)}.nte-toggle--off{background:var(--border-default)}.nte-confirm__backdrop{background:var(--surface-overlay)}.nte-confirm__panel{background:var(--surface-primary);border-color:var(--border-default)}.nte-confirm__title{color:var(--text-heading)}.nte-btn--ghost,.nte-confirm__message{color:var(--text-secondary)}.nte-btn--ghost:hover{background:var(--surface-hover);color:var(--text-heading)}.nte-status--active{color:var(--status-success)}.nte-status--inactive{color:var(--text-muted)}.nte-cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#6366f1,#4f46e5);transition:all .2s;box-shadow:0 1px 3px rgba(99,102,241,.3)}.nte-cta-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(99,102,241,.35)}.nte-cta-btn:active{transform:translateY(0)}.nte-cta-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;filter:none}.nte-migration__result{background:#0f172a;color:#22c55e;font-family:SF Mono,Fira Code,Consolas,monospace}.nte-migration__result-line--error{color:#ef4444}.nte-migration__success-banner{background:rgba(22,197,94,.08);border-color:rgba(22,197,94,.2);color:var(--status-success)}