:root{--navy:#12204a;--navy2:#1c3471;--blue:#2563eb;--blue2:#3b82f6;--cyan:#06b6d4;--mint:#14b8a6;--bg:#f4f8ff;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#dbe7f5;--soft:#edf5ff;--good:#dcfce7;--danger:#fee2e2;--shadow:0 18px 45px rgba(15,23,42,.10);--radius:20px}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f8fbff,#edf5ff);color:var(--ink);font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.side{background:linear-gradient(180deg,var(--navy),var(--navy2));padding:18px;color:#e8f1ff;display:flex;flex-direction:column;gap:16px;box-shadow:8px 0 32px rgba(2,6,23,.15)}.brand{display:flex;align-items:center;gap:12px}.brand.big{margin-bottom:22px}.brand b,.brand h1{margin:0;font-weight:850;letter-spacing:-.04em}.brand span,.brand p{display:block;color:#bfd2ff;margin:2px 0 0}.mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#3b82f6,#06b6d4);display:grid;place-items:center;color:#fff;font-weight:900;box-shadow:0 12px 24px rgba(37,99,235,.3)}nav{display:flex;flex-direction:column;gap:6px}.nav,.logout{width:100%;border:0;text-align:left;padding:12px 14px;border-radius:14px;background:transparent;color:#dbeafe;cursor:pointer;font-weight:700}.nav:hover,.logout:hover{background:rgba(255,255,255,.10)}.nav.active{background:linear-gradient(135deg,#4f7fe3,#2857c8);color:#fff;box-shadow:0 12px 24px rgba(20,45,100,.28)}.logout{margin-top:auto}.main{padding:28px 32px 56px;overflow:auto}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.top h1{font-size:31px;line-height:1.1;margin:0 0 8px;letter-spacing:-.05em}.top p{margin:0;color:var(--muted)}.actions,.toolbar,.form-actions,.week-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.btn{border:0;min-height:38px;padding:10px 15px;border-radius:13px;background:#eaf2ff;color:#173b80;font-weight:800;cursor:pointer}.btn:hover{filter:brightness(.98);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,#2563eb,#0f55d8);color:#fff}.btn.good{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#065f46}.btn.danger,.danger{background:#fee2e2;color:#991b1b}.btn.tiny{min-height:30px;padding:6px 10px;border-radius:10px}.wide{width:100%;justify-content:center;text-align:center}.input,.select,.textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;min-height:44px;padding:10px 13px;color:var(--ink)}.textarea{min-height:82px;resize:vertical}.input:focus,.select:focus,.textarea:focus{outline:3px solid rgba(37,99,235,.15);border-color:#93b4ff}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,#dbeafe,#f8fbff 55%)}.login-card{width:min(560px,100%);background:#fff;border-radius:28px;padding:32px;box-shadow:0 32px 80px rgba(15,23,42,.18);display:grid;gap:16px}.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;border-radius:14px;padding:12px 14px;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stat,.card,.summary>div,.calendar-panel{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat{padding:20px}.stat b{display:block;font-size:32px;letter-spacing:-.05em}.stat span,.muted,small{color:var(--muted)}.card{padding:20px;margin-bottom:18px}.card h2{margin:0 0 14px;font-size:20px;letter-spacing:-.04em}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.miniweek{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.miniweek button{border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f5f9ff);border-radius:16px;padding:13px 8px;cursor:pointer}.miniweek strong,.miniweek b{display:block}.miniweek strong{color:var(--muted);font-size:12px}.miniweek b{font-size:18px;color:#1d4ed8}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:16px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px 14px;border-bottom:1px solid #edf2f7;text-align:left;vertical-align:top}.table th{background:#f4f8ff;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.table small{display:block}.week th:first-child{min-width:260px}.cell{width:100%;min-height:42px;border:1px dashed #bfd3f4;border-radius:12px;background:#f8fbff;color:#2563eb;font-weight:850;cursor:pointer}.cell.has{border-style:solid;background:linear-gradient(180deg,#e0f2fe,#dbeafe);color:#173b80}.week-head{justify-content:space-between;margin-bottom:14px}.week-head h2{margin:0;font-size:22px}.strip{border:1px solid #cfe0f6;background:#eef6ff;border-radius:14px;padding:12px 14px;margin-bottom:14px;display:flex;gap:18px}.calendar-panel{padding:16px;overflow:auto}.calendar{width:100%;min-width:1100px;border-collapse:separate;border-spacing:0}.calendar th,.calendar td{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar thead th{background:linear-gradient(180deg,#4779cc,#2f62b9);color:white;padding:12px 10px;text-align:center}.calendar thead th.today{background:linear-gradient(180deg,#2563eb,#1649bd)}.calendar thead th span{display:block;font-size:12px;opacity:.92}.calendar tbody th{width:90px;background:#f7fbff;color:#64748b;font-size:12px;text-align:right;padding:12px 10px;position:sticky;left:0;z-index:2}.calendar td{height:70px;background:#fff;position:relative;vertical-align:top;padding:6px;cursor:pointer}.calendar td:hover{background:#f0f7ff;box-shadow:inset 0 0 0 2px #93c5fd}.calendar .leave{height:38px;color:#475569;cursor:default}.plus{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:9px;border:1px dashed #93b7ff;background:#eff6ff;color:#2563eb;font-weight:900;z-index:3;cursor:pointer}.block{display:block;width:calc(100% - 34px);border:0;border-left:4px solid #2563eb;border-radius:10px;background:linear-gradient(180deg,#e0f2fe,#dbeafe);padding:6px 8px;text-align:left;color:#173b80;cursor:pointer;margin:2px 30px 4px 0}.block b,.block span,.block small{display:block}.block small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#334155}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.summary>div{padding:18px}.summary h3{margin:0 0 8px}.summary b{font-size:28px}.bars{height:260px;display:flex;align-items:end;gap:34px;padding:20px;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.bar-col{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:6px;min-width:56px}.bar{width:34px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#67e8f9,#2563eb)}.split{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px}.tree details{margin:8px 0}.tree summary{cursor:pointer;font-weight:800;padding:8px;border-radius:10px}.tree p{margin:6px 0 6px 18px;color:var(--muted)}.badge{display:inline-block;border-radius:999px;padding:5px 10px;font-weight:800;font-size:12px;background:#eaf2ff;color:#1d4ed8}.badge.approved,.badge.open{background:#dcfce7;color:#166534}.badge.rejected,.badge.disabled{background:#fee2e2;color:#991b1b}.badge.submitted{background:#fef3c7;color:#92400e}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);display:grid;place-items:center;z-index:9999;padding:22px}.modal{width:min(980px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:28px;box-shadow:0 40px 100px rgba(15,23,42,.35);padding:28px}.modal h2{margin:0 0 18px;font-size:26px}.version{font-size:12px;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:6px 9px;vertical-align:middle}.form{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.preview{background:#f8fbff;border:1px solid var(--line);border-radius:14px;padding:12px}.empty{border:1px dashed #bfd3f4;background:#f8fbff;border-radius:16px;padding:24px;text-align:center;color:var(--muted)}#toast{position:fixed;right:18px;bottom:18px;background:#0f172a;color:#fff;padding:12px 16px;border-radius:14px;box-shadow:0 14px 40px rgba(15,23,42,.25);opacity:0;transform:translateY(10px);transition:.2s;z-index:99999}#toast.show{opacity:1;transform:translateY(0)}@media(max-width:1100px){.shell{grid-template-columns:1fr}.side{position:relative}.main{padding:22px}.stats,.grid2,.summary,.split{grid-template-columns:1fr}.miniweek{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}}
.readonly-field{min-height:42px;display:flex;align-items:center;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;color:#10233f;font-weight:700}
.cell.saved{outline:2px solid #22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.16)}

.hintline{border:1px dashed #bfdbfe;background:#f8fbff;color:#334155;border-radius:14px;padding:10px 12px;margin:0 0 14px;font-weight:650}
.week thead small{display:block;text-transform:none;letter-spacing:0;font-size:11px;margin-top:3px;color:#2563eb;font-weight:800}
.cell-summary{display:grid;gap:4px;background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:14px}
.cell-summary b{font-size:17px}.cell-summary span{color:#475569}

/* V21 QA standard additions */
.report-bars{display:grid;gap:12px}.report-row{display:grid;grid-template-columns:minmax(160px,260px) 1fr 70px;align-items:center;gap:12px}.report-row span{font-weight:700;color:#18243a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-row div{height:12px;border-radius:999px;background:#eaf1ff;overflow:hidden}.report-row i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#06b6d4)}.report-row b{text-align:right}.pill{display:inline-flex;margin-left:8px;padding:2px 8px;border-radius:999px;background:#eef6ff;color:#1d4ed8;font-size:11px}.cell-summary{display:grid;gap:6px;padding:12px;border:1px solid #dbe7ff;border-radius:16px;background:#f8fbff;margin-bottom:14px}.readonly-field{padding:13px 14px;border:1px solid #d7e3f8;background:#f8fbff;border-radius:14px;font-weight:700}.hintline{color:#64748b;margin:12px 0}.miniweek button span{display:block;color:#64748b;font-size:12px;margin-top:4px}.badge.pending,.badge.submitted{background:#fff3cd;color:#92400e}.badge.approved,.badge.active,.badge.open{background:#dcfce7;color:#166534}.badge.rejected,.badge.disabled,.badge.archived{background:#fee2e2;color:#991b1b}.btn.good{background:#dcfce7;color:#166534}.btn.danger{background:#fee2e2;color:#991b1b}.empty{padding:18px;border-radius:16px;background:#f8fbff;color:#64748b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:900px){.report-row{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}
.comment-pill{display:inline-block;max-width:360px;padding:4px 8px;border-radius:999px;background:#eef6ff;color:#123a6f;border:1px solid #cfe5ff;white-space:normal;line-height:1.35;font-size:12px}
.table td .comment-pill{vertical-align:middle}

/* V21 standards QA refinements */
.select.small{max-width:160px;min-width:120px;height:40px}.select.mini{height:32px;min-width:116px;font-size:13px}.toolbar-wrap{flex-wrap:wrap;gap:10px}.linklike{appearance:none;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer;padding:0}.linklike b{display:block;color:#0f172a}.linklike small{display:block;color:#64748b}.detail-stack{display:grid;gap:14px}.mini-summary{grid-template-columns:repeat(4,minmax(120px,1fr));margin:0}.comment-list{display:grid;gap:10px;margin:10px 0 16px}.comment-row{border:1px solid #dbeafe;background:#f8fbff;border-radius:14px;padding:12px;display:grid;gap:4px}.comment-row b{color:#0f172a}.comment-row span{color:#334155}.comment-row small,.small-empty{color:#64748b}.version{font-size:12px;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:4px 8px;vertical-align:middle}.chart-head{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap}.bars{min-height:230px}.table td .btn.tiny + .btn.tiny{margin-left:6px}

/* V24 final workflow QA */
.kv{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf2f7}.kv:last-child{border-bottom:0}.kv span{color:#64748b}.kv b{text-align:right}.warn{color:#b45309!important}.danger-text{color:#b91c1c!important}.task-mini-list{display:grid;gap:10px}.task-mini{border:1px solid #dbe7f5;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:14px;padding:12px;text-align:left;cursor:pointer}.task-mini b,.task-mini span,.task-mini i{display:block}.task-mini span{color:#64748b}.task-mini i{color:#1d4ed8;font-style:normal;font-weight:700;margin-top:4px}.badge.in_progress{background:#e0f2fe;color:#075985}.badge.ready_for_review{background:#fef3c7;color:#92400e}.badge.completed{background:#dcfce7;color:#166534}.cell.closed{background:#f1f5f9;color:#64748b;border-color:#cbd5e1;cursor:not-allowed}.select.mini{min-width:150px}.summary.mini-summary{grid-template-columns:repeat(5,minmax(110px,1fr))}.locked-note{display:inline-block;border:1px solid #cbd5e1;background:#f8fafc;color:#64748b;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}

.checkline{display:flex;align-items:center;gap:10px;font-weight:700}.checkline input{width:auto}.task-mini{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.task-mini .linklike{min-width:0}

/* V29 confirmation QA */
.week-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(180px,1fr) minmax(200px,1fr) auto;align-items:center;gap:10px;margin:12px 0 14px;padding:12px;border:1px solid #dbeafe;background:linear-gradient(180deg,#ffffff,#f8fbff);border-radius:16px}.week-filters .input,.week-filters .select{min-height:38px;border-radius:12px}.week-filters .muted{white-space:nowrap;font-size:12px}.week tbody tr{transition:background .15s ease}.week tbody tr:hover{background:#f8fbff}.week tbody th{position:sticky;left:0;background:#fff;z-index:3;box-shadow:1px 0 0 #edf2f7}.week thead th:first-child{position:sticky;left:0;z-index:4}.cell{transition:background .15s ease,border-color .15s ease,transform .1s ease}.cell:hover{transform:translateY(-1px);border-color:#60a5fa}.cell.closed:hover{transform:none}.task-order-note{font-size:12px;color:#64748b}@media(max-width:1200px){.week-filters{grid-template-columns:1fr 1fr}.week-filters .muted{grid-column:1/-1}}@media(max-width:720px){.week-filters{grid-template-columns:1fr}.week th:first-child{min-width:220px}}

/* V29 confirmation QA additions */
.confirm-message{white-space:pre-line;color:#0f172a;font-weight:750;line-height:1.55;background:#f8fbff;border:1px solid #dbe7f5;border-radius:16px;padding:14px;margin:0 0 12px}
.confirm-warning{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:14px;padding:12px 14px;font-weight:800;margin-bottom:16px}
.status-hint{display:block;color:#64748b;font-size:11px;margin-top:4px;font-weight:700;text-transform:none;letter-spacing:0}
.select.mini{min-height:34px;border-radius:10px;padding:6px 10px;font-weight:750}


/* V29 branding/profile/theme customizer */
.brand-logo-box{width:44px;height:44px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.12);box-shadow:0 12px 24px rgba(2,6,23,.18);flex:0 0 auto;position:relative}
.brand-logo{width:100%;height:100%;object-fit:cover;display:block;background:#020617}
.brand-logo-box .brand-fallback{display:none;position:absolute;inset:0;width:100%;height:100%;border-radius:14px}
.big-logo{width:74px;height:74px;border-radius:22px;background:#020617}.login-logo{object-fit:contain;padding:0;background:#020617}
.side-company{margin-top:auto;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.08);display:grid;gap:4px;color:#dbeafe;overflow:hidden}.side-company b,.side-company span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-company span{color:#bfd2ff;font-size:12px}.logout{margin-top:0}.login-company-profile{border:1px solid var(--line);background:#f8fbff;border-radius:16px;padding:12px 14px;display:grid;gap:4px}.login-company-profile b{font-size:16px}.login-company-profile span{color:var(--muted)}
.brand-preview{display:flex;gap:16px;align-items:center}.preview-logo{width:96px;height:96px;border-radius:24px;background:#020617}.preview-logo .brand-logo{object-fit:contain;padding:0}.brand-preview h3{margin:0;font-size:24px;letter-spacing:-.04em}.brand-preview p{margin:4px 0;color:var(--muted)}.brand-preview small{display:block;color:var(--muted);margin-top:3px}.theme-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.theme-swatches div{border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px;display:grid;gap:7px}.theme-swatches i{height:38px;border-radius:12px;display:block;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}.theme-swatches span{font-weight:800}.theme-swatches b{font-size:12px;color:var(--muted)}
.form-section{border:1px solid var(--line);border-radius:20px;background:#fbfdff;padding:16px;display:grid;gap:12px}.form-section h3{margin:0;font-size:17px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-upload-row{display:flex;gap:16px;align-items:flex-start}.grow{flex:1;display:grid;gap:12px}.color-line{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center}.color-line input[type=color]{width:58px;height:44px;border:1px solid var(--line);border-radius:13px;background:white;padding:4px}.checkline{display:flex;align-items:center;gap:8px;font-weight:700;color:#334155}.checkline input{width:18px;height:18px}
@media(max-width:800px){.form-grid.two,.brand-upload-row{grid-template-columns:1fr;display:grid}.preview-logo{width:76px;height:76px}}

/* V29 theme variable overrides */
body{background:linear-gradient(135deg,#ffffff,var(--bg) 48%,var(--soft));}
.login{background:radial-gradient(circle at 50% 0,var(--soft),var(--bg) 55%)}
.mark{background:linear-gradient(135deg,var(--blue),var(--cyan))}
.btn.primary{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff}.nav.active{background:linear-gradient(135deg,var(--blue2),var(--blue));color:#fff}.miniweek b{color:var(--blue)}.bar{background:linear-gradient(180deg,var(--cyan),var(--blue))}.calendar thead th{background:linear-gradient(180deg,var(--blue2),var(--blue))}.calendar thead th.today{background:linear-gradient(180deg,var(--cyan),var(--blue))}.cell{color:var(--blue)}.cell.has{color:var(--navy)}

/* V31 conflict visibility improvements */
.day-entry-panel {
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--primary) 5%, #ffffff 95%);
  border-radius: 16px;
  padding: 12px;
  display: grid;
  gap: 8px;
}
.day-entry-panel > b { color: var(--ink); }
.day-entry-panel > small { color: var(--muted); line-height: 1.35; }
.table.compact th,
.table.compact td { padding: 8px 10px; font-size: 13px; }
.mini-scroll { max-height: 220px; overflow: auto; }
.conflict-row td { background: #fff1f2 !important; }
.conflict-row td:first-child { border-left: 4px solid #ef4444; }

.badge.warning{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.alert.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.maintenance-note{border:1px dashed #f59e0b;background:#fffbeb;padding:12px;border-radius:14px;margin-top:12px}
.day-entry-panel.task-scope .note { display:block; margin-top:10px; font-size:12px; }
.day-entry-panel.task-scope .small-empty { border:1px dashed rgba(37,99,235,.25); background:rgba(37,99,235,.04); }

/* V39 Timesheet-style UI/functions */
.live-timer{font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--blue)}
.timer-monitor-note{border:1px solid var(--line);background:#f8fbff;border-radius:14px;padding:12px;color:#475569}
.timer-running-row td{background:#fbfdff}


/* V39 Timesheet-style UI/functions */
.row-running-timer td,
.week tbody tr.row-running-timer th {
  background: linear-gradient(90deg, rgba(20,184,166,.08), rgba(37,99,235,.04));
}
.task-timer-indicator {
  display: inline-grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 7px 8px;
  min-width: 150px;
  padding: 7px 10px;
  border-radius: 14px;
  border: 1px solid rgba(37,99,235,.20);
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 12px;
  font-weight: 850;
}
.task-timer-indicator small {
  grid-column: 2;
  color: #475569;
  font-weight: 700;
  white-space: nowrap;
}
.task-timer-indicator.mine {
  border-color: rgba(20,184,166,.35);
  background: #ecfdf5;
  color: #065f46;
}
.task-timer-indicator.compact {
  margin-top: 6px;
  padding: 4px 8px;
  min-width: 0;
  display: inline-flex;
  font-size: 11px;
}
.task-timer-indicator.compact small { display: none; }
.pulse-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34,197,94,.55);
  animation: pulseTimer 1.4s infinite;
}
@keyframes pulseTimer {
  0% { box-shadow: 0 0 0 0 rgba(34,197,94,.55); }
  70% { box-shadow: 0 0 0 8px rgba(34,197,94,0); }
  100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); }
}
.tiny-text { font-size: 12px; }
.task-timer-list { display: grid; gap: 10px; margin: 8px 0 16px; }
.task-timer-row {
  display: grid;
  grid-template-columns: minmax(180px,1fr) minmax(150px,.8fr) minmax(120px,.6fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  background: #f8fbff;
  border-radius: 16px;
  padding: 12px;
}
.task-timer-row.mine {
  border-color: rgba(20,184,166,.35);
  background: #ecfdf5;
}
.task-timer-row b,.task-timer-row span,.task-timer-row small { display: block; }
.task-timer-row small { font-size: 11px; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; font-weight: 850; }
.task-mini.has-running-timer { border-color: rgba(20,184,166,.35); background: linear-gradient(180deg,#f0fdfa,#ffffff); }
.table td .task-timer-indicator { vertical-align: middle; }
@media(max-width:900px){.task-timer-row{grid-template-columns:1fr}.task-timer-indicator{min-width:0}}

/* V39 Timesheet-style UI/functions polish */
.btn.micro{font-size:11px;padding:2px 7px;border-radius:999px;margin-left:8px;vertical-align:middle}
.table td small,.table th small{display:block;line-height:1.25;color:var(--muted,#64748b);font-weight:500}
.warn-box,.confirm-warning,.hintline{line-height:1.45}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.form-grid.three{grid-template-columns:1fr}.table-scroll{overflow:auto}.split{grid-template-columns:1fr}}

/* V39 Timesheet-style UI/functions */
.timesheet-shell{grid-template-columns:220px minmax(0,1fr);background:#f3f8ff}
.timesheet-shell .side{border-radius:0;background:linear-gradient(180deg,#253968,#14265a);box-shadow:6px 0 24px rgba(15,23,42,.14);padding:20px 16px}
.timesheet-shell .nav{border-radius:8px;padding:11px 12px;font-weight:750;color:#d6e5ff}
.timesheet-shell .nav.active{background:#3d6ebf;color:#fff;box-shadow:none}
.timesheet-shell .main{padding:0 0 44px;background:linear-gradient(180deg,#eef6ff,#f8fbff 180px)}
.acti-top{padding:28px 36px 20px;margin:0 0 0;background:rgba(255,255,255,.86);border-bottom:1px solid #dbe7f5;position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}
.acti-top h1{font-size:28px;font-weight:760;letter-spacing:-.04em;color:#17233f}
.acti-top .actions{align-items:center}.circle-help{width:34px;height:34px;border-radius:999px;border:1px solid #c9d9f0;background:#f7fbff;color:#426aa3;font-weight:900;display:grid;place-items:center;cursor:pointer}.avatar-pill{width:36px;height:36px;border-radius:999px;background:#a9db31;color:white;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px rgba(22,101,52,.16)}
.main>.stats,.main>.grid2,.main>.summary,.main>.card,.main>.split,.main>.calendar-panel,.main>.acti-dashboard{margin-left:36px;margin-right:36px}.main>.stats{margin-top:18px}
.acti-dashboard{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(420px,1.2fr) minmax(260px,.62fr);gap:22px;align-items:start;padding-top:28px}.shortcuts-panel,.widgets-panel,.create-report-panel{background:rgba(255,255,255,.96);border:1px solid #dbe7f5;border-radius:0;box-shadow:0 10px 30px rgba(30,64,120,.08);padding:26px;min-height:286px}.shortcuts-panel h2,.section-title h2,.create-report-panel h2{font-size:18px;margin:0 0 18px;color:#17233f}.shortcut-empty{height:286px;display:grid;place-items:center;align-content:center;gap:10px;background:#f6fbff;border-style:dashed}.shortcut-empty .empty-icon{font-size:52px;color:#a8c1e4}.shortcut-list{display:grid;gap:12px}.shortcut-list button{border:1px solid #dbe7f5;background:#f8fbff;text-align:left;border-radius:12px;padding:13px;cursor:pointer}.shortcut-list span{display:block;color:#2e6fb8;font-size:12px;font-weight:900}.shortcut-list b{display:block;font-size:15px;color:#17233f}.shortcut-list small{display:block;margin-top:3px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-title span{color:#43a047;font-size:13px;font-weight:700}.widget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.acti-widget{position:relative;border:1px solid #dbe7f5;border-radius:6px;background:#fff;box-shadow:0 5px 18px rgba(15,23,42,.06);padding:24px 24px 18px;min-height:218px;overflow:hidden}.acti-widget h3{font-size:19px;margin:10px 0 24px;font-weight:700}.widget-tools{position:absolute;right:14px;top:12px;display:flex;gap:10px}.widget-tools button{border:0;background:transparent;color:#94a3b8;font-size:19px;cursor:pointer}.widget-legend{display:grid;gap:8px;max-width:70%}.widget-legend span{display:flex;align-items:center;gap:8px;color:#3f4b63;font-weight:700}.widget-legend i{width:10px;height:10px;border-radius:999px;display:inline-block}.widget-total{position:absolute;right:24px;top:74px;text-align:right}.widget-total small{display:block}.widget-total b{font-size:34px;font-weight:500;color:#111827}.sparkline{position:absolute;left:0;right:0;bottom:46px;height:56px;background:#e7f6ff;border-top:1px solid #d7eaff}.sparkline svg{position:absolute;inset:0;width:100%;height:100%}.sparkline polyline{fill:none;stroke:#55a6e8;stroke-width:3}.widget-footer{position:absolute;left:24px;bottom:16px}.create-report-panel{padding:26px 22px}.create-report-panel h3{font-size:16px;margin:18px 0 8px;color:#1d2a44}.create-report-panel p{color:#26364f;line-height:1.45;margin:0 0 12px}.create-report-panel button{width:100%;height:36px;border:0;background:#e5f2fb;color:#34658c;margin:0 0 6px;text-align:left;padding:0 28px;font-weight:760;cursor:pointer}.create-report-panel button:hover{background:#d7ebf8}.acti-timesheet{padding:20px;margin-top:24px}.acti-week{min-width:1180px}.acti-week thead th{background:linear-gradient(180deg,#5da1ea,#286ae6)!important;color:white!important;text-align:center;text-transform:none;letter-spacing:0;font-size:15px;padding:16px 10px}.acti-week thead th:first-child{text-align:left}.acti-week thead small{color:#eef6ff!important}.acti-week .leave-row th,.acti-week .location-row th{background:#f7fbff!important;color:#17233f;text-transform:none;font-size:14px}.acti-week .leave-row td,.acti-week .location-row td{height:48px;background:#fff;color:#475569}.location-cell{color:#276da6;text-decoration:underline}.info-dot{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:999px;background:#dbeafe;color:#2563eb;font-size:11px}.acti-week .cell{min-height:42px;background:#fff;border:1px dashed #b9d3f4}.acti-week .cell.has{background:#e9f6ff;border-color:#82b5ed;color:#1b4d7d}.acti-week tfoot th,.acti-week tfoot td{background:#fbfdff;font-weight:850}.acti-calendar-panel{margin-top:24px}.acti-calendar thead th{height:74px;vertical-align:middle}.acti-calendar .block em{display:block;font-style:normal;color:#47709a;font-size:11px;margin-top:2px}.acti-task-page{align-items:start;margin-top:24px}.acti-tree{padding:16px}.tree-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.tree-head h2{margin:0}.tree-project{width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:10px;color:#31405b;cursor:pointer}.tree-project:hover{background:#eef6ff}.acti-task-table{min-width:1220px}.acti-task-table th{white-space:nowrap}.acti-task-table td:nth-child(3){min-width:250px}.users-tabs{display:flex;gap:20px;padding:0 14px;margin-top:24px}.users-tabs button{border:0;background:transparent;padding:15px 0;font-weight:800;color:#516070;cursor:pointer}.users-tabs .active{color:#123a6f;border-bottom:3px solid #2b70d6}.acti-users{margin-top:0}.users-table{min-width:1080px}.user-chip{display:flex;align-items:center;gap:11px}.user-chip>span{width:32px;height:32px;border-radius:999px;background:#8b5cf6;color:white;display:grid;place-items:center;font-size:11px;font-weight:900}.user-chip b,.user-chip small{display:block}.perm-icons{display:flex;gap:8px;opacity:.75}.task-picker-tabs{display:flex;gap:4px;margin-bottom:0}.task-picker-tabs button{border:1px solid #dbe7f5;border-bottom:0;background:#fff;border-radius:10px 10px 0 0;padding:10px 14px;font-weight:800;color:#64748b}.task-picker-tabs .active{color:#286ae6;background:#f8fbff}.task-choice-list{max-height:420px;overflow:auto;border-top:1px solid #e5edf7}.task-choice{display:block;width:100%;border:0;border-bottom:1px solid #edf2f7;background:white;text-align:left;padding:15px 12px;cursor:pointer}.task-choice:hover{background:#f7fbff}.task-choice b{display:block;color:#2d6a9f;text-transform:uppercase}.task-choice span,.task-choice small{display:block}.location-list{display:grid;gap:10px}.location-edit-row{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(180px,1fr) auto;gap:12px;align-items:center;border:1px solid #e4edf8;border-radius:14px;background:#fbfdff;padding:12px}.import-drop{border:2px dashed #cfe0f6;background:#f7fbff;border-radius:18px;display:grid;place-items:center;gap:10px;min-height:150px;padding:20px;text-align:center}.import-columns{display:flex;gap:8px;flex-wrap:wrap}.import-columns span{border:1px solid #dbe7f5;background:#fff;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:760;color:#42627e}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.form-tabs{display:flex;gap:14px;border-bottom:1px solid #dbe7f5}.form-tabs button{border:0;background:transparent;padding:12px 0;font-weight:850;color:#64748b}.form-tabs .active{color:#2563eb;border-bottom:3px solid #2563eb}.switchline{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dbe7f5;background:#fbfdff;border-radius:14px;padding:12px}.workweek-inputs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.workweek-inputs input{text-align:center}.report-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-choice-list button{border:1px solid #dbe7f5;background:#f8fbff;border-radius:14px;padding:14px;text-align:left;font-weight:850;color:#1e3a8a;cursor:pointer}.pill{display:inline-block;border-radius:999px;background:#eef6ff;color:#2563eb;padding:3px 8px;font-size:11px;font-weight:850}.table td,.table th{vertical-align:middle}
@media(max-width:1400px){.acti-dashboard{grid-template-columns:1fr}.widget-grid{grid-template-columns:1fr 1fr}.create-report-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.create-report-panel h2{grid-column:1/-1}}
@media(max-width:900px){.main>.stats,.main>.grid2,.main>.summary,.main>.card,.main>.split,.main>.calendar-panel,.main>.acti-dashboard{margin-left:18px;margin-right:18px}.acti-top{position:relative;padding:22px 18px}.widget-grid,.report-choice-list,.location-edit-row,.workweek-inputs{grid-template-columns:1fr}.create-report-panel{display:block}}

/* V52 video-based actiTIME function upgrades */
.actions-dropdown{position:relative;display:inline-block}
.actions-dropdown .actions-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:230px;background:#fff;border:1px solid #dbe7f5;border-radius:12px;box-shadow:0 18px 45px rgba(15,23,42,.18);padding:8px;z-index:50}
.actions-dropdown:hover .actions-menu,.actions-dropdown:focus-within .actions-menu{display:grid;gap:4px}
.actions-menu button{border:0;background:#fff;text-align:left;padding:10px 12px;border-radius:9px;color:#1d3557;font-weight:780;cursor:pointer}
.actions-menu button:hover{background:#eef6ff;color:#1d4ed8}
.import-links{display:flex;justify-content:flex-end;gap:16px;margin:-6px 0 10px;flex-wrap:wrap}
.import-links .linklike{font-size:12px;font-weight:850;color:#2b6cb0;text-decoration:underline}
.report-wizard-grid{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(380px,1.2fr);gap:20px;align-items:start}
.report-choice-list.onecol{grid-template-columns:1fr;max-height:520px;overflow:auto}
.report-radio{display:block;border:1px solid #dbe7f5;background:#f8fbff;border-radius:12px;padding:10px 12px;cursor:pointer}
.report-radio input{margin-right:8px}.report-radio b{display:inline-block;color:#1e3a8a}.report-radio small{display:block;margin:4px 0 0 25px;color:#64748b}
.column-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px}
.column-checks label{border:1px solid #e5edf7;background:#fbfdff;border-radius:10px;padding:9px 10px;font-weight:720;color:#334155}
.batch-task-table{min-width:900px}.batch-task-table .input,.batch-task-table .select{height:34px}.batch-task-table .mini{min-width:80px}
.settings-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:22px;margin:24px 36px}.settings-menu{background:#eef4fb;border:1px solid #dbe7f5;border-radius:8px;padding:14px;display:grid;align-content:start;gap:4px}.settings-menu button{border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:8px;font-weight:820;color:#426078;cursor:pointer}.settings-menu button.active,.settings-menu button:hover{background:#dfeaff;color:#1d4ed8}.settings-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-panel{margin:0!important}.settings-kv{display:grid;gap:9px}.settings-kv div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #edf2f7;border-radius:10px;background:#fbfdff;padding:10px}.settings-kv span{color:#64748b;font-weight:720}.settings-kv b{text-align:right;color:#14213d;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 36px}.guide-card{margin:0!important}.guide-card h2{color:#17345e}.guide-card p{margin:9px 0;color:#334155;line-height:1.45}.report-detail-table,.billing-table{min-width:1100px}.billable-cell{background:#eaf8e8;font-weight:850}
@media(max-width:1000px){.report-wizard-grid,.settings-layout,.settings-panels,.guide-grid,.column-checks{grid-template-columns:1fr}.settings-layout,.guide-grid{margin-left:18px;margin-right:18px}.actions-dropdown .actions-menu{right:auto;left:0}}

/* V52 settings page from uploaded actiTIME function video */
.settings-video-grid{display:grid;grid-template-columns:minmax(380px,.92fr) minmax(480px,1.08fr);gap:22px;margin:24px 36px 18px}.feature-map,.general-settings-card{margin:0!important}.feature-group{border:1px solid #dbe7f5;background:linear-gradient(180deg,#ffffff,#f8fbff);border-radius:16px;padding:14px;margin:12px 0}.feature-group h3{margin:0 0 10px;color:#17345e;font-size:15px}.feature-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #eef3fb;padding:10px 0;font-weight:760;color:#31405b}.feature-toggle:first-of-type{border-top:0}.feature-toggle input{width:42px;height:23px;accent-color:#2563eb;cursor:pointer}.feature-toggle input:disabled{cursor:not-allowed;opacity:.55}.general-settings-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.general-settings-layout aside,.list-management-shell aside{background:#eef4fb;border:1px solid #dbe7f5;border-radius:14px;padding:10px;display:grid;gap:4px;align-content:start}.general-settings-layout aside button,.list-management-shell aside button{border:0;background:transparent;text-align:left;padding:10px 11px;border-radius:10px;color:#426078;font-weight:820;cursor:pointer}.general-settings-layout aside button.active,.general-settings-layout aside button:hover,.list-management-shell aside button.active,.list-management-shell aside button:hover{background:#dfeaff;color:#1d4ed8}.kv-list{display:grid;gap:9px}.kv-list div,.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #edf2f7;border-radius:12px;background:#fbfdff;padding:10px 12px}.kv-list span,.list-row span{color:#64748b;font-weight:720;text-align:right}.kv-list b,.list-row b{color:#14213d}.settings-mini-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.settings-mini-cards div{border:1px solid #e4edf8;border-radius:14px;background:#fff;padding:13px;display:grid;gap:5px}.settings-mini-cards b{color:#17345e}.settings-mini-cards span{color:#64748b;font-size:12px;line-height:1.35}.list-management-preview{display:grid;gap:10px}.list-management-preview .section-title{margin-bottom:4px}.list-row span{max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-management-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start;max-height:68vh;overflow:auto}.list-management-fields{display:grid;gap:14px}.list-management-fields label{display:grid;gap:6px;font-weight:760;color:#334155}.column-chooser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 14px}.column-chooser label{border:1px solid #e5edf7;background:#fbfdff;border-radius:10px;padding:9px 10px;font-weight:720;color:#334155}@media(max-width:1100px){.settings-video-grid,.general-settings-layout,.list-management-shell,.settings-mini-cards,.column-chooser{grid-template-columns:1fr}.settings-video-grid{margin-left:18px;margin-right:18px}.list-row{align-items:flex-start;flex-direction:column}.list-row span{max-width:100%;text-align:left;white-space:normal}}

/* V52 arrangement: Timesheet-style narrow left sidebar + adjacent Customers & Projects panel */
.timesheet-shell{grid-template-columns:132px minmax(0,1fr);background:#edf3fb;min-height:100vh}
.timesheet-shell .side.acti-left-nav{padding:13px 0 14px;background:linear-gradient(180deg,#162653 0%,#1f3165 48%,#17234b 100%);box-shadow:inset -1px 0 0 rgba(255,255,255,.06),8px 0 24px rgba(2,6,23,.16);gap:10px;overflow:hidden}
.acti-nav-brand{padding:4px 12px 12px;gap:8px;align-items:center}.acti-nav-brand .brand-logo-box{width:31px;height:31px;border-radius:9px;background:#051022}.acti-nav-brand b{color:#a8e22b;font-size:13px;letter-spacing:-.02em}.acti-nav-brand span{font-size:10px;color:#98a8ce;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:88px}.side-main-nav,.side-bottom-nav{display:grid;gap:2px}.side-main-nav{padding:10px 0 0}.side-bottom-nav{margin-top:auto;padding:10px 0 0;border-top:1px solid rgba(255,255,255,.06)}
.acti-left-nav .nav,.acti-left-nav .logout{border-radius:0;min-height:33px;padding:9px 14px 9px 16px;color:#a8bbef;font-weight:760;font-size:12px;display:flex;align-items:center;gap:9px;position:relative;box-shadow:none}.acti-left-nav .nav span:last-child{white-space:normal;line-height:1.15}.acti-left-nav .nav:hover,.acti-left-nav .logout:hover{background:rgba(102,138,226,.16);color:#fff}.acti-left-nav .nav.active,.acti-left-nav .nav.active-parent{background:linear-gradient(90deg,rgba(70,116,214,.68),rgba(70,116,214,.38));color:#fff;box-shadow:inset 3px 0 0 #6ea5ff}.acti-left-nav .nav.active:after,.acti-left-nav .nav.active-parent:after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background:#66a2ff}.nav-ico{width:15px;display:inline-grid;place-items:center;opacity:.82;flex:0 0 15px}.nav-section .nav-parent{font-size:13px;color:#dce7ff}.nav-submenu{display:grid;gap:0;padding:1px 0 8px}.nav-submenu .nav{font-size:11px;min-height:30px;padding-left:38px;color:#91a4d2}.nav-submenu .nav.active{background:rgba(70,116,214,.36);box-shadow:inset 3px 0 0 #67a3ff;color:#fff}.mini-logout{font-size:11px!important;color:#9fafdc!important;margin-top:3px!important}
.timesheet-shell .main{padding:24px 28px 54px}.acti-top{background:rgba(255,255,255,.72);border:1px solid rgba(219,231,245,.8);border-radius:20px;padding:18px 20px;box-shadow:0 14px 38px rgba(15,23,42,.07)}.circle-help{width:31px;height:31px;border:1px solid #d7e4f8;border-radius:999px;background:#f8fbff;color:#315a92;font-weight:900;display:inline-grid;place-items:center;cursor:pointer}.avatar-pill{width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,#7c3aed,#93c5fd);color:#fff;display:inline-grid;place-items:center;font-size:12px;font-weight:900}
.task-workspace-shell{grid-template-columns:132px minmax(0,1fr);background:#e8eef7}.task-workspace-shell .workspace-main{display:grid;grid-template-columns:286px minmax(0,1fr);min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#eef4fc,#e6edf8)}.workspace-tree{margin:24px 0 24px 0;background:#fff;border:1px solid #dbe5f2;border-left:0;border-radius:0 18px 18px 0;box-shadow:16px 0 34px rgba(15,23,42,.10);padding:16px;min-height:calc(100vh - 48px);max-height:calc(100vh - 48px);overflow:auto;z-index:3}.acti-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.acti-panel-head h2{font-size:15px;letter-spacing:-.02em;margin:0;color:#18233d}.acti-panel-head>div{display:flex;gap:8px}.panel-icon{width:28px;height:28px;border:1px solid #dbe6f4;background:#f7fbff;color:#3d6ead;border-radius:7px;font-weight:900;cursor:pointer}.panel-icon.primary{background:#4b93e6;color:#fff;border-color:#4b93e6}.tree-search{position:relative;margin-bottom:12px}.tree-search .input{min-height:35px;border-radius:6px;padding:7px 34px 7px 10px;font-size:12px}.panel-search-btn{position:absolute;right:4px;top:4px;width:27px;height:27px;border:0;border-radius:5px;background:#fff;color:#236bb6;font-size:18px;font-weight:900}.tree-filter-line{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:4px 0 14px;color:#70829f;font-size:11px}.tree-filter-line .linklike{font-size:12px;color:#45637d;font-weight:780}.workspace-tree h3{font-size:12px;color:#31405b;margin:0 0 8px}.workspace-project-tree details{margin:2px 0}.workspace-project-tree summary{cursor:pointer;list-style:none;border-radius:8px;padding:8px 8px;color:#334155;font-weight:850;font-size:12px}.workspace-project-tree summary::-webkit-details-marker{display:none}.workspace-project-tree summary:before{content:'⌄';display:inline-block;margin-right:6px;color:#6d85a8}.workspace-project-tree .tree-project{width:100%;border:0;background:transparent;text-align:left;padding:9px 10px 9px 28px;border-radius:0;color:#31405b;cursor:pointer;display:grid;gap:2px}.workspace-project-tree .tree-project b{font-size:12px;font-weight:760}.workspace-project-tree .tree-project small{font-size:11px;color:#8290a5}.workspace-project-tree .tree-project:hover{background:#f2f7ff}.workspace-project-tree .tree-project.selected{background:#dfeeff;color:#1d4f95;box-shadow:inset 3px 0 0 #4b93e6}.workspace-project-tree .tree-project.all-projects{padding-left:10px;margin-bottom:6px;border-radius:8px}.workspace-content{min-width:0;overflow:auto;padding:27px 28px 34px}.workspace-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.workspace-heading h1{margin:0;color:#0f172a;font-size:21px;letter-spacing:-.03em;font-weight:760}.workspace-heading p{margin:6px 0 2px;color:#5b6b83;font-size:12px}.workspace-heading span{color:#3b4a60;font-size:12px;font-weight:700}.gear-dot{border:0;background:transparent;color:#5f7aa0;font-size:15px;cursor:pointer}.workspace-top-actions{display:flex;gap:9px;align-items:center}.workspace-task-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.workspace-task-actions .toolbar{flex-wrap:nowrap}.workspace-search{max-width:270px;min-height:34px;border-radius:6px;font-size:12px}.workspace-task-actions .select.small{min-height:34px;border-radius:6px;font-size:12px;min-width:150px}.right-tools .btn,.workspace-task-actions .btn{min-height:34px;border-radius:6px;padding:7px 11px;font-size:12px}.workspace-table-card{background:rgba(255,255,255,.86);border:1px solid #dbe5f2;border-radius:8px;padding:0;box-shadow:0 12px 34px rgba(15,23,42,.06);overflow:hidden}.workspace-table-card .table-scroll{border:0;border-radius:0}.workspace-table-card .table th{background:#eef5ff;color:#556476;font-size:11px;text-transform:none;letter-spacing:0;font-weight:780;white-space:nowrap}.workspace-table-card .table td{font-size:12px;padding:12px 10px}.workspace-table-card .table tbody tr:hover{background:#f8fbff}.workspace-table-card .linklike b{color:#0f172a;font-size:12px}.workspace-table-card .linklike small{color:#68768a;font-size:11px}.small-empty{padding:14px;font-size:12px}.list-management-page{margin-top:18px}
@media(max-width:1100px){.timesheet-shell,.task-workspace-shell{grid-template-columns:1fr}.timesheet-shell .side.acti-left-nav{min-height:auto}.side-main-nav,.side-bottom-nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.nav-submenu{display:none}.task-workspace-shell .workspace-main{grid-template-columns:1fr}.workspace-tree{margin:12px;border-left:1px solid #dbe5f2;border-radius:18px;min-height:auto;max-height:none}.workspace-content{padding:16px}.workspace-task-actions,.workspace-topbar{flex-direction:column;align-items:stretch}.workspace-task-actions .toolbar{flex-wrap:wrap}.workspace-search{max-width:none}}

.project-access-control{width:100%;min-height:44px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 13px;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;text-align:left}.project-access-control:hover{background:#f8fbff;border-color:#93b4ff}.project-access-control span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#0f172a}.project-access-control b{color:#2563eb;white-space:nowrap}.project-access-list{border:1px solid var(--line);border-radius:16px;overflow:auto;max-height:460px;background:#fff}.project-access-group{border-bottom:1px solid #edf2f7}.project-access-group:last-child{border-bottom:0}.project-access-group summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#f8fbff;cursor:pointer}.project-access-row{display:grid;grid-template-columns:24px minmax(0,1fr) 120px;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid #edf2f7}.project-access-row:hover{background:#fbfdff}.project-access-row input{width:18px;height:18px}.project-access-row span{font-weight:760}.project-access-row small{text-align:right}.users-table td:nth-child(5){min-width:150px}

/* V52 QA polish: exact sidebar/sidebar-panel spacing and safer modal cleanup */
body.modal-open{overflow:hidden}.modal-backdrop[data-modal-level="1"]{background:rgba(15,23,42,.28)}.acti-left-nav .nav-submenu .nav span:last-child{font-size:11px}.workspace-tree{padding-top:14px}.workspace-content{padding-top:24px}.acti-task-table th,.acti-task-table td{white-space:nowrap}.acti-task-table td:nth-child(3){white-space:normal;min-width:220px}.guide-card p{line-height:1.45}.qa-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#e0f2fe;color:#075985;padding:5px 9px;font-weight:800;font-size:12px}

/* V52 access polish */
.user-access-row span{display:grid;gap:2px}.user-access-row span small{font-weight:600;color:#6b7a90}.user-access-control span{max-width:calc(100% - 118px)}.users-table td:nth-child(4),.users-table td:nth-child(5){min-width:170px}.users-table td:nth-child(5) small{display:block;margin-top:3px;color:#64748b;font-weight:650}

/* V52 video-reviewed actiTIME time-track/access additions */
.timer-widget-btn{background:#eff6ff;color:#1555c0;border-color:#cfe0ff}
.report-summary-band{display:flex;gap:18px;align-items:stretch;margin-bottom:18px}
.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;flex:1}
.report-kpis>div,.pto-box{background:#fff;border:1px solid #d8e7fb;border-radius:14px;padding:14px;box-shadow:0 8px 26px rgba(15,40,80,.05)}
.report-kpis span,.pto-box span{display:block;color:#5b6b82;font-size:12px}.report-kpis b{display:block;font-size:26px;color:#0f2749;margin:6px 0}.report-kpis small{color:#77849a}.pto-box{min-width:190px}.pto-box b{display:block;margin-bottom:8px;color:#0f2749}
.report-chart-card .chart-head{align-items:center}.acti-bar-chart{height:270px;display:flex;gap:12px;align-items:end;overflow-x:auto;padding:12px 4px 4px}.acti-bar-col{width:58px;min-width:58px;text-align:center;display:flex;flex-direction:column;justify-content:end;gap:6px;height:100%}.acti-bar-col .bar-wrap{height:175px;background:linear-gradient(#f4f7fb,#edf3fb);border-radius:8px;display:flex;align-items:end;overflow:hidden}.acti-bar-col i{display:block;width:100%;background:linear-gradient(180deg,#70bcff,#357ae8);border-radius:8px 8px 0 0}.acti-bar-col b{font-size:12px;color:#0f2749}.acti-bar-col span{font-size:11px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.pdf-preview-shell{display:grid;grid-template-columns:210px 1fr;gap:18px;max-height:70vh}.pdf-preview-shell aside{display:flex;flex-direction:column;gap:12px}.pdf-preview-page{background:#fff;border:1px solid #ccd7e6;border-radius:8px;box-shadow:0 10px 30px rgba(10,35,70,.15);padding:28px;overflow:auto;min-height:420px}.pdf-preview-page table{width:100%;border-collapse:collapse}.pdf-preview-page th,.pdf-preview-page td{border:1px solid #d7e0ef;padding:7px;font-size:12px}.pdf-preview-page h1{font-size:22px;margin:0 0 8px}.report-choice-list{display:grid;gap:8px}.report-choice{border:1px solid #d8e7fb;background:#fff;border-radius:10px;padding:12px;text-align:left}.report-choice.active{background:#eaf3ff;border-color:#4a8df0}.report-choice b,.report-choice small{display:block}.leave-cell,.work-status-cell,.location-cell{width:100%;text-align:left}.work-status-row td{background:#fbfdff}.leave-menu-list{display:grid;gap:8px}.leave-choice{padding:12px 14px;border-radius:10px;border:1px solid #d8e7fb;background:#fff;text-align:left;color:#194d8d}.work-status-list{display:grid;gap:10px}.work-status-row{display:grid;grid-template-columns:1fr 180px 180px;gap:10px;align-items:center;border:1px solid #d8e7fb;border-radius:12px;padding:12px;background:#fff}.work-status-row.active{background:#eef8ff}.permission-matrix{border:1px solid #d8e7fb;border-radius:14px;padding:14px;margin:12px 0;background:#fbfdff}.permission-matrix h4{margin:0 0 10px}.permission-row{display:grid;grid-template-columns:20px 1fr 1.4fr;gap:10px;align-items:center;border-bottom:1px solid #e8f0fb;padding:9px 0}.permission-row:last-child{border-bottom:0}.permission-row span{font-weight:700;color:#123158}.permission-row small{color:#64748b}.work-assignment-section{margin-top:16px}.assignment-meter{display:flex;align-items:center;gap:8px;width:190px;height:16px;background:#edf3fb;border-radius:999px;overflow:hidden;position:relative}.assignment-meter span{display:block;background:linear-gradient(90deg,#8b6cf6,#45c6d7);height:100%;border-radius:999px}.assignment-meter b{position:absolute;right:8px;font-size:11px;color:#0f2749}.assignment-picker details{border:1px solid #e1ebf8;border-radius:12px;margin-bottom:8px;padding:8px;background:#fff}.assignment-picker summary{font-weight:700;color:#123158;cursor:pointer}.timer-widget{display:grid;gap:12px}.timer-face{border:1px solid #d8e7fb;background:#f8fbff;border-radius:16px;padding:18px;text-align:center}.timer-face b{font-size:36px;color:#0f2749;display:block}.timer-face span{color:#64748b}.timer-actions{display:flex;gap:10px;justify-content:center}.task-choice-list.compact{max-height:270px}.detail-tabs{display:flex;gap:8px;border-bottom:1px solid #d8e7fb;margin:10px 0 14px}.detail-tabs button{border:0;background:transparent;padding:10px 12px;color:#49647d;border-bottom:3px solid transparent}.detail-tabs button.active{color:#0c51b7;border-color:#3b82f6;font-weight:700}.assigned-users-strip{display:flex;align-items:center;gap:12px;border:1px solid #d8e7fb;background:#fbfdff;border-radius:12px;padding:12px;margin-bottom:12px}.assigned-users-strip span{color:#64748b}.acti-user-tabs button{cursor:default}.work-assignments-table td{vertical-align:middle}
@media(max-width:980px){.report-summary-band{flex-direction:column}.report-kpis{grid-template-columns:repeat(2,1fr)}.pdf-preview-shell{grid-template-columns:1fr}.work-status-row{grid-template-columns:1fr}.permission-row{grid-template-columns:20px 1fr}.permission-row small{grid-column:2}}

/* V52 video function parity additions */
.time-summary-bar{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:0 0 16px}.time-summary-bar>div{border:1px solid #d8e7fb;background:#fff;border-radius:14px;padding:13px;box-shadow:0 8px 24px rgba(15,40,80,.05)}.time-summary-bar span{display:block;color:#64748b;font-size:12px}.time-summary-bar b{display:block;color:#0f2749;font-size:24px;margin-top:4px}.video-parity-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d8e7fb;background:#f7fbff;border-radius:14px;padding:11px 13px;margin-bottom:14px;color:#38546f}.video-parity-strip b{color:#153c7a}.acti-week-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:10px;border:1px solid #dde9f7;background:#fbfdff;border-radius:12px}.acti-week-controls label{display:flex;align-items:center;gap:7px;font-weight:760;color:#44566f}.check-choice{display:grid!important;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px}.check-choice input{margin-top:5px}.timer-popup{display:grid;gap:14px;min-width:320px}.timer-current{border:1px solid #d8e7fb;background:linear-gradient(180deg,#f8fbff,#fff);border-radius:16px;padding:16px;text-align:center}.timer-current b{display:block;color:#0f2749;font-size:18px}.timer-large{font-size:40px;font-weight:900;color:#1d4ed8;letter-spacing:.02em;margin:8px 0}.recent-timer-tasks{display:grid;gap:8px;max-height:280px;overflow:auto}.recent-timer-tasks button{border:1px solid #d8e7fb;background:#fff;border-radius:12px;padding:10px;text-align:left;display:grid;gap:3px;color:#17345e}.recent-timer-tasks button small{color:#64748b}.assignment-list{display:grid;gap:9px;max-height:52vh;overflow:auto;border:1px solid #d8e7fb;border-radius:14px;background:#fff;padding:10px}.assignment-group{border:1px solid #e6eef8;border-radius:12px;background:#fbfdff;overflow:hidden}.assignment-group summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;padding:10px 12px;color:#17345e}.assignment-group summary small{color:#64748b}.assignment-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;border-top:1px solid #edf2f7;background:#fff;padding:10px 12px}.assignment-row:hover{background:#f8fbff}.assignment-row b,.assignment-row small{display:block}.assignment-row small{color:#64748b;margin-top:2px}.assignment-pill{display:inline-flex;align-items:center;border:1px solid #cfe0ff;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:5px 10px;font-weight:850;font-size:12px}.assignment-chip-list{display:flex;flex-wrap:wrap;gap:7px}.assignment-chip-list span{display:inline-flex;align-items:center;gap:5px;border:1px solid #d8e7fb;border-radius:999px;background:#fff;padding:5px 9px;font-size:12px;color:#17345e}.period-list{display:grid;gap:8px}.period-list button{border:1px solid #d8e7fb;background:#fff;border-radius:12px;padding:12px;text-align:left}.period-list b,.period-list span{display:block}.period-list span{color:#64748b;margin-top:3px}.pdf-preview-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;max-height:72vh}.pdf-preview-layout aside{display:grid;gap:10px;align-content:start}.pdf-page{background:#fff;border:1px solid #cbd7e6;border-radius:10px;box-shadow:0 18px 42px rgba(15,23,42,.16);padding:28px;overflow:auto}.pdf-page table{width:100%;border-collapse:collapse}.pdf-page th,.pdf-page td{border:1px solid #d7e0ef;padding:7px;font-size:12px}.task-detail-tabs{display:flex;gap:8px;border-bottom:1px solid #d8e7fb;margin:10px 0 14px}.task-detail-tabs button{border:0;background:transparent;padding:10px 12px;color:#52657c;border-bottom:3px solid transparent}.task-detail-tabs button.active{font-weight:850;color:#1d4ed8;border-color:#3b82f6}.view-time-summary{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin-bottom:14px}.view-time-summary>div{border:1px solid #d8e7fb;background:#fff;border-radius:14px;padding:12px}.view-time-summary span{display:block;color:#64748b;font-size:12px}.view-time-summary b{font-size:22px;color:#0f2749}@media(max-width:900px){.time-summary-bar,.view-time-summary,.pdf-preview-layout{grid-template-columns:1fr}.video-parity-strip{align-items:flex-start;flex-direction:column}}

/* V52 department/user access parity */
.inline-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.access-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.department-access-row span{display:grid;gap:2px}.department-table td:first-child{min-width:220px}.department-table small{display:block;margin-top:3px}.users-table{min-width:1280px}.users-table td:nth-child(5),.users-table td:nth-child(6){min-width:180px}.department-access-control span{max-width:calc(100% - 150px)}@media(max-width:900px){.inline-picker,.access-grid{grid-template-columns:1fr}.department-access-control span{max-width:none}}


/* V60 pinned sidebar bottom panel: bottom navigation stays pinned and does not move with the upper navigation/content scroll. */
:root{--sidebar-width:132px;--task-tree-width:286px}
.timesheet-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
.timesheet-shell .side.acti-left-nav{
  position:fixed;
  left:0;
  top:0;
  bottom:0;
  width:var(--sidebar-width);
  height:100vh;
  min-height:100vh;
  z-index:1000;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.acti-left-nav .acti-nav-brand{flex:0 0 auto}
.acti-left-nav .side-main-nav{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding-bottom:10px;
  scrollbar-width:thin;
}
.acti-left-nav .side-bottom-nav{
  flex:0 0 auto;
  margin-top:0;
  position:sticky;
  bottom:0;
  background:linear-gradient(180deg,rgba(23,35,75,.96),#17234b 38%,#17234b 100%);
  border-top:1px solid rgba(255,255,255,.10);
  box-shadow:0 -12px 22px rgba(2,6,23,.14);
  padding:10px 0 12px;
}
.timesheet-shell>.main{margin-left:var(--sidebar-width)}
.task-workspace-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
.task-workspace-shell>.workspace-main{margin-left:var(--sidebar-width);min-height:100vh}
@media(max-width:1100px){
  .timesheet-shell .side.acti-left-nav{position:relative;width:auto;height:auto;min-height:auto;bottom:auto;z-index:1}
  .acti-left-nav .side-main-nav{overflow:visible}
  .acti-left-nav .side-bottom-nav{position:relative;box-shadow:none;background:transparent}
  .timesheet-shell>.main,.task-workspace-shell>.workspace-main{margin-left:0}
}

/* V60 sidebar layout restore: keep the left sidebar in the page grid, pin the bottom group, and avoid covering/blanking the main content. */
:root{--sidebar-width:132px;--task-tree-width:286px}
html,body,#app{min-height:100%}
.timesheet-shell,
.task-workspace-shell{
  display:grid!important;
  grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;
  min-height:100vh;
  width:100%;
  overflow:visible;
}
.timesheet-shell .side.acti-left-nav{
  position:sticky!important;
  top:0!important;
  left:auto!important;
  bottom:auto!important;
  width:var(--sidebar-width)!important;
  height:100vh!important;
  min-height:100vh!important;
  align-self:start;
  z-index:20;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.acti-left-nav .acti-nav-brand{flex:0 0 auto}
.acti-left-nav .side-main-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:10px;
  scrollbar-width:thin;
}
.acti-left-nav .side-bottom-nav{
  flex:0 0 auto!important;
  margin-top:0!important;
  position:relative!important;
  bottom:auto!important;
  background:linear-gradient(180deg,rgba(23,35,75,.96),#17234b 38%,#17234b 100%);
  border-top:1px solid rgba(255,255,255,.10);
  box-shadow:0 -12px 22px rgba(2,6,23,.14);
  padding:10px 0 12px;
}
.timesheet-shell>.main,
.task-workspace-shell>.workspace-main{
  margin-left:0!important;
  min-width:0!important;
  width:100%!important;
}
.timesheet-shell>.main{
  overflow:visible!important;
}
.task-workspace-shell>.workspace-main{
  min-height:100vh;
  overflow:hidden;
}
@media(max-width:1100px){
  .timesheet-shell,
  .task-workspace-shell{grid-template-columns:1fr!important;display:block!important}
  .timesheet-shell .side.acti-left-nav{position:relative!important;width:auto!important;height:auto!important;min-height:auto!important;z-index:1}
  .acti-left-nav .side-main-nav{overflow:visible!important}
  .acti-left-nav .side-bottom-nav{position:relative!important;box-shadow:none;background:transparent}
  .timesheet-shell>.main,.task-workspace-shell>.workspace-main{margin-left:0!important;width:100%!important}
}

/* V60: Work Status must not render as a timesheet task row. Locations row is the correct Timesheet-style row. */
.acti-week tbody > tr.work-status-row{display:none!important}


/* V60 task row/overtime filing polish: timer status must not overlap workflow status or spent-time columns. */
.acti-task-table td:nth-child(4){min-width:190px;max-width:230px;white-space:normal!important}
.acti-task-table td:nth-child(5){min-width:120px;white-space:normal!important;text-align:left}
.acti-task-table .spent-cell{display:grid;gap:4px;align-content:center;min-width:96px}
.acti-task-table .spent-cell>b{font-variant-numeric:tabular-nums;color:#0f2749}
.running-mini{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:150px;border:1px solid #bbf7d0;background:#ecfdf5;color:#047857;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:850;line-height:1.1;white-space:nowrap}
.running-mini.mine{background:#dcfce7;color:#065f46;border-color:#86efac}
.acti-task-table td:nth-child(4) .task-timer-indicator{display:none!important}
.acti-task-table .btn.tiny{white-space:nowrap}
.acti-week .week-head .btn[data-open-request="overtime"],
.acti-calendar-panel .week-head .btn[data-open-request="overtime"]{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}
.nav-submenu .nav[data-view="requests"]{color:#b9cdfd}
.nav-submenu .nav[data-view="requests"].active{background:rgba(70,116,214,.36);box-shadow:inset 3px 0 0 #67a3ff;color:#fff}


/* V60 task table alignment + visible overtime filing review */
.acti-task-table{min-width:1480px;table-layout:fixed;}
.acti-task-table th:nth-child(1),.acti-task-table td:nth-child(1){width:42px;}
.acti-task-table th:nth-child(2),.acti-task-table td:nth-child(2){width:58px;text-align:center;}
.acti-task-table th:nth-child(3),.acti-task-table td:nth-child(3){width:320px;white-space:normal!important;}
.acti-task-table th:nth-child(4),.acti-task-table td:nth-child(4){width:220px;}
.acti-task-table th:nth-child(5),.acti-task-table td:nth-child(5){width:150px;}
.acti-task-table th:nth-child(6),.acti-task-table td:nth-child(6){width:112px;}
.acti-task-table th:nth-child(7),.acti-task-table td:nth-child(7){width:120px;}
.acti-task-table th:nth-child(8),.acti-task-table td:nth-child(8){width:130px;}
.acti-task-table th:nth-child(9),.acti-task-table td:nth-child(9){width:130px;}
.acti-task-table th:nth-child(10),.acti-task-table td:nth-child(10){width:130px;}
.acti-task-table th:nth-child(11),.acti-task-table td:nth-child(11){width:300px;}
.task-status-cell .select.mini{width:100%;min-width:0;max-width:198px;}
.spent-cell{display:grid;grid-template-columns:1fr;align-content:center;gap:4px;min-width:0;}
.spent-cell>b{display:block;white-space:nowrap;}
.spent-cell .task-timer-indicator.compact{display:inline-flex;align-items:center;max-width:132px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 7px;border-radius:999px;font-size:10px;}
.spent-cell .task-timer-indicator.compact b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;}
.task-action-cell{white-space:normal!important;}
.task-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;min-width:0;}
.task-row-actions .btn.tiny{white-space:nowrap;}
.request-summary h3{font-size:14px;}
.request-summary b{font-size:24px;}
@media(max-width:1100px){.acti-task-table{min-width:1380px}.task-row-actions{justify-content:flex-start}}

/* V60 permission wording/access clarity */
.permission-note{margin:4px 0 10px;line-height:1.45;}
.permission-matrix h4{margin-bottom:4px;}

/* V60 premium UI polish - clean, executive-grade Timesheet theme */
:root{
  --premium-bg:#f6f9fd;
  --premium-panel:rgba(255,255,255,.92);
  --premium-border:#dbe8f6;
  --premium-text:#0f2749;
  --premium-muted:#64748b;
  --premium-primary:#2563eb;
  --premium-primary-2:#1d4ed8;
  --premium-soft:#eff6ff;
  --premium-shadow:0 18px 48px rgba(15,39,73,.10);
  --premium-shadow-sm:0 8px 22px rgba(15,39,73,.07);
}
html{background:var(--premium-bg)}
body{font-feature-settings:"kern" 1,"liga" 1;background:linear-gradient(180deg,#f3f8ff 0,#f8fbff 240px,#f7fafc 100%);color:var(--premium-text)}
.login{background:radial-gradient(circle at 45% 24%,#ffffff 0,#eef6ff 32%,#eaf2fb 100%)}
.login-card{border:1px solid rgba(203,216,235,.86);box-shadow:0 28px 90px rgba(15,39,73,.18);backdrop-filter:blur(16px);border-radius:30px}
.login-card h1{letter-spacing:-.035em}.login-card small{color:#58718e}.login-company-profile{background:linear-gradient(180deg,#f8fbff,#ffffff);border-color:#d8e7fb;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.input,.textarea,select{border-color:#d5e4f6!important;background:#fff!important;box-shadow:0 1px 0 rgba(255,255,255,.75),0 1px 2px rgba(15,39,73,.03);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.input:focus,.textarea:focus,select:focus{outline:none;border-color:#8bb9ff!important;box-shadow:0 0 0 4px rgba(37,99,235,.12),0 6px 16px rgba(37,99,235,.07)}
.btn{border-radius:13px;border:1px solid #dbe7f8;background:linear-gradient(180deg,#fff,#f4f8ff);box-shadow:0 4px 12px rgba(15,39,73,.05);font-weight:850;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,39,73,.10)}
.btn.primary{border-color:#2d6be9;background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.22)}
.btn.good{background:linear-gradient(180deg,#dcfce7,#bbf7d0);border-color:#86efac;color:#14532d}.btn.danger{background:linear-gradient(180deg,#fff1f2,#ffe4e6);border-color:#fecdd3;color:#b91c1c}
.card,.summary>div,.report-kpis>div,.pto-box,.time-summary-bar>div,.view-time-summary>div{background:var(--premium-panel);border:1px solid var(--premium-border);box-shadow:var(--premium-shadow-sm);border-radius:22px}
.card h2,.card h3,.section-title h2{letter-spacing:-.02em}.muted,small{color:var(--premium-muted)}
.top,.acti-top{background:rgba(255,255,255,.88)!important;border:1px solid rgba(219,232,246,.95)!important;box-shadow:0 18px 46px rgba(15,39,73,.08)!important;backdrop-filter:blur(18px)}
.top h1,.acti-top h1{font-size:28px;letter-spacing:-.04em}.top p,.acti-top p{color:#66809c}
.side.acti-left-nav{background:linear-gradient(180deg,#10234f 0%,#1e3a75 48%,#11224b 100%)!important;box-shadow:12px 0 32px rgba(15,23,42,.18)!important}
.acti-left-nav .nav{position:relative;border-radius:0 18px 18px 0!important;margin:2px 8px 2px 0!important;color:#dce9ff!important;font-weight:850;transition:background .15s ease,transform .15s ease,color .15s ease}
.acti-left-nav .nav:hover{background:rgba(96,165,250,.14)!important;transform:translateX(2px)}
.acti-left-nav .nav.active{background:linear-gradient(90deg,#2563eb,#3b82f6)!important;color:#fff!important;box-shadow:0 12px 28px rgba(37,99,235,.30)!important}
.acti-left-nav .nav.active:before{content:"";position:absolute;left:-8px;top:8px;bottom:8px;width:4px;border-radius:99px;background:#93c5fd}
.workspace-tree{background:rgba(255,255,255,.86);backdrop-filter:blur(16px);border-right:1px solid var(--premium-border);box-shadow:8px 0 24px rgba(15,39,73,.06)}
.workspace-node.active,.tree-node.active{background:linear-gradient(90deg,#e0f2fe,#dbeafe)!important;color:#0f3d79;border-left:4px solid #3b82f6;box-shadow:inset 0 0 0 1px rgba(59,130,246,.06)}
.table{border-radius:18px;overflow:hidden;border:1px solid #dbe8f6;background:#fff;box-shadow:0 10px 28px rgba(15,39,73,.06)}
.table thead th{background:linear-gradient(180deg,#f1f7ff,#e6f0fd)!important;color:#23415f;text-transform:uppercase;font-size:11px;letter-spacing:.055em;border-bottom:1px solid #d2e1f4}
.table td,.table th{border-color:#edf3f9!important}.table tbody tr{transition:background .12s ease,box-shadow .12s ease}.table tbody tr:hover{background:#f8fbff}
.week thead th{background:linear-gradient(180deg,#4d94fb,#2563eb)!important;color:#fff!important}.week thead small{color:#dbeafe!important}.week .cell{background:#fff;border:1px dashed #a9c9f7;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.week .cell.has{background:linear-gradient(180deg,#eff6ff,#e0f2fe);border-style:solid;border-color:#93c5fd;color:#1d4ed8;font-weight:900}
.leave-row td,.location-row td{background:#fbfdff}.location-row th,.leave-row th{background:#f8fbff;color:#123158}
.task-status-cell select,.spent-cell{min-width:180px}.spent-cell{display:flex;gap:8px;align-items:center;white-space:nowrap}.task-row-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.timer-indicator{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#dcfce7;color:#166534;padding:5px 8px;font-weight:850;font-size:12px}
.modal-backdrop{backdrop-filter:blur(7px);background:rgba(15,23,42,.45)!important}.modal{border-radius:26px;border:1px solid rgba(219,232,246,.98);box-shadow:0 40px 120px rgba(15,23,42,.26);background:linear-gradient(180deg,#fff,#fbfdff)}
.modal h2{letter-spacing:-.035em}.permission-matrix{background:linear-gradient(180deg,#fbfdff,#fff);border-radius:18px}.permission-row{border-color:#e5eef9}.permission-row span{color:#102a4e}.assignment-list,.task-choice-list,.recent-timer-tasks{scrollbar-width:thin;scrollbar-color:#9bbbe8 #eef4fb}
.badge{border-radius:999px;font-weight:850}.empty{border:1px dashed #bfd4ee;background:#f8fbff;border-radius:18px;color:#64748b;padding:26px;text-align:center}
.toast,#toast{z-index:10000}
@media(max-width:900px){.top h1,.acti-top h1{font-size:23px}.card{border-radius:18px}.table-scroll{border-radius:18px}.btn{border-radius:12px}}
