/* Home / Dashboard / Quick Timer */
/* Gemeinsamer Breiten-/Layout-Rahmen für alle Hauptansichten */
#view-home .grid,
#view-time .grid,
#view-assignments .grid,
#view-vacation .grid,
#view-orders .grid,
#view-tools .grid,
#view-profile .grid,
#view-todos .grid,
#view-admin .grid{ max-width: var(--content-max); }

.table--overview .table__head,
.table--overview .table__row{
  grid-template-columns: minmax(240px, 1.2fr) 110px 110px 110px 120px minmax(150px, 180px);
}
.overview-user{ min-width: 0; }
.overview-user-lockhint{ margin-top: 6px; font-size: 12px; }
.overview-lockcell{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.overview-status-stack{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.overview-status-pills{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.table--overview .table__head > div:last-child,
.table--overview .table__row > div:last-child{
  justify-self: end;
}

@media (max-width: 820px){
  .table--overview .table__row > div:last-child{ justify-content: space-between; }
  .table--overview .table__row > div:nth-child(1)::before{ content: "User"; }
  .table--overview .table__row > div:nth-child(2)::before{ content: "SOLL"; }
  .table--overview .table__row > div:nth-child(3)::before{ content: "IST"; }
  .table--overview .table__row > div:nth-child(4)::before{ content: "Δ"; }
  .table--overview .table__row > div:nth-child(5)::before{ content: "Status"; }
  .table--overview .table__row > div:nth-child(6)::before{ content: "Aktion"; }
  .overview-lockcell{ justify-content: space-between; }
}

.card{
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.94));
  border: 1px solid rgba(226,232,240,.95);
  border-radius: var(--r);
  padding: var(--space-4);
  box-shadow: var(--shadow2);
}

/* Home view */

.dashboard-home__top{
  display:grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: stretch;
}
.dashboard-welcome-card{
  display:flex;
  justify-content:space-between;
  gap: 18px;
  align-items:flex-start;
  padding: 18px 18px 20px;
  background:
    radial-gradient(circle at top left, rgba(11,91,211,.08), transparent 46%),
    linear-gradient(90deg, rgba(226,236,252,.92), rgba(238,241,250,.9));
  border: 1px solid rgba(147,178,233,.55);
  border-radius: 18px;
  box-shadow: none;
}
.dashboard-welcome-card__eyebrow{
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.dashboard-welcome-card__title{
  margin: 2px 0 0;
  font-size: clamp(34px, 4.2vw, 48px);
  line-height: .98;
  letter-spacing: -.05em;
}
.dashboard-welcome-card__sub{ display:none; }
.dashboard-welcome-card__meta{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap: 12px;
  margin-left:auto;
}
.dashboard-welcome-card__actions{
  display:flex;
  gap: 12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dashboard-welcome-card__badge{ display:none; }
.dashboard-welcome-card__badge.is-unread{
  background: rgba(239,246,255,.98);
}
.dashboard-welcome-card__badge-label{
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dashboard-welcome-card__badge strong{
  display:block;
  margin-top:6px;
  font-size:30px;
  line-height:1;
}
.dashboard-notification-list{
  display:grid;
  gap: 12px;
  margin-top: 16px;
}
.dashboard-notification-row{
  display:block;
}
.dashboard-notification-item{
  width:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap: 12px;
  padding: 16px;
  border-radius: 16px;
  background: rgba(248,250,252,.92);
  color: inherit;
  text-decoration:none;
  border: 1px solid rgba(226,232,240,.8);
}
.dashboard-notification-item:hover{
  text-decoration:none;
  border-color: rgba(148,163,184,.95);
}
.dashboard-notification-item.is-unread,
.dashboard-notification-row.is-unread .dashboard-notification-item{
  background: rgba(239,246,255,.96);
  border-color: rgba(147,197,253,.8);
}
.dashboard-notification-item__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
}
.dashboard-notification-delete{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:10px;
  border:1px solid rgba(206,216,228,.98);
  background:rgba(255,255,255,.92);
  color:#475569;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  padding:0;
  flex:0 0 auto;
}
.dashboard-notification-delete:hover{
  border-color:rgba(148,163,184,.95);
  background:#fff;
}
.dashboard-notification-delete:disabled{
  opacity:.6;
  cursor:not-allowed;
}
.dashboard-notification-item__link{
  color: inherit;
  text-decoration: none;
  display:block;
}
.dashboard-notification-item__link:hover{
  text-decoration:none;
}
.dashboard-notification-item__main{ min-width:0; }
.dashboard-notification-item__title{ font-weight:800; color:#0f172a; line-height:1.25; }
.dashboard-notification-item__message{ margin-top:6px; color:#475569; font-size:13px; line-height:1.45; }
.dashboard-notification-item__meta{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap: 10px;
  color:#64748b;
  font-size:12px;
  white-space:nowrap;
}

@media (max-width: 640px){
  .dashboard-notification-item__head{
    flex-direction:column;
    gap: 8px;
  }
  .dashboard-notification-item__meta{
    width:100%;
    justify-content:space-between;
  }
}
.dashboard-running-list--dense{
  gap: 10px;
}
.dashboard-running-item--dense{
  display:grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 12px;
  align-items:center;
  padding: 18px 16px;
  border-radius: 16px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(215,225,238,.95);
}
.dashboard-running-item__identity{ min-width:0; }
.dashboard-running-item__project{
  margin-top: 8px;
  color:#475569;
  font-size:12px;
  line-height:1.4;
}
.dashboard-running-item__facts{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dashboard-running-item__fact{
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(217,249,237,.75);
  border: 1px solid rgba(149,223,193,.95);
}
.dashboard-running-item__fact span{ display:none; }
.dashboard-running-item__fact strong{
  display:block;
  margin-top:0;
  color:#0f5132;
  font-size:13px;
}
.dashboard-running-item__fact--status strong{ color: #0f5132; }

.dashboard-home{
  gap: 20px;
}
.dashboard-home__split{
  display:grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(340px, 1fr);
  gap: 12px;
  align-items: stretch;
}
.dashboard-surface{
  background: linear-gradient(180deg, rgba(255,255,255,.985), rgba(248,250,252,.95));
  border: 1px solid rgba(219,228,240,.95);
  border-radius: 18px;
  padding: 18px 18px 20px;
  box-shadow: 0 6px 18px rgba(15,23,42,.05);
  transition: transform .16s ease, box-shadow .18s ease;
}
.dashboard-surface:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(15,23,42,.08);
}
.dashboard-panel{
  min-width: 0;
}
.dashboard-hero{
  display:grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 24px;
  align-items:center;
  padding: 24px;
  background:
    radial-gradient(circle at top left, rgba(11,91,211,.18), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,.99), rgba(241,245,249,.96));
}
.dashboard-hero.is-running{
  box-shadow: 0 4px 12px rgba(0,0,0,0.06), 0 0 0 1px rgba(16,185,129,.12);
}
.dashboard-hero__main{
  min-width:0;
}
.dashboard-hero__status{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  color: #1e293b;
  font-size: 13px;
  font-weight: 800;
}
.dashboard-hero__status-dot{
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #94a3b8;
  box-shadow: 0 0 0 10px rgba(148,163,184,.14);
}
.dashboard-hero__status-dot.is-running{
  background: #10b981;
  box-shadow: 0 0 0 12px rgba(16,185,129,.18);
}
.dashboard-hero__clock{
  margin-top: 18px;
  font-size: clamp(44px, 10vw, 88px);
  line-height: .92;
  font-weight: 900;
  letter-spacing: -.06em;
  color: #0f172a;
}
.dashboard-hero__sub{
  margin-top: 12px;
  color: #475569;
  font-size: 15px;
}
.dashboard-hero__project{
  margin-top: 20px;
  max-width: 420px;
}
.dashboard-hero__select{
  min-height: 50px;
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.dashboard-hero__side{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 14px;
}
.dashboard-hero__hint{
  color: #64748b;
  font-size: 13px;
  line-height: 1.45;
  text-align:center;
}
.dashboard-timer-toggle{
  width: 170px;
  height: 170px;
  border: 0;
  border-radius: 999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color: #fff;
  cursor:pointer;
  background: linear-gradient(180deg, #0b5bd3, #094bb0);
  box-shadow: 0 18px 36px rgba(11,91,211,.28), inset 0 -6px 0 rgba(0,0,0,.12);
  transition: transform .14s ease, box-shadow .18s ease, filter .18s ease;
}
.dashboard-timer-toggle.is-stop{
  background: linear-gradient(180deg, #ff4d6d, #dc163a);
  box-shadow: 0 18px 36px rgba(220,22,58,.22), inset 0 -6px 0 rgba(0,0,0,.12);
}
.dashboard-timer-toggle.is-running{
  animation: dashboardTimerPulse 1.9s ease-in-out infinite;
}
.dashboard-timer-toggle:hover{
  transform: scale(1.03);
}
.dashboard-timer-toggle:active{
  transform: scale(.97);
}
.dashboard-timer-toggle:disabled{
  opacity: .55;
  cursor:not-allowed;
  transform: none;
  animation: none;
  box-shadow: 0 8px 18px rgba(15,23,42,.10);
}
.dashboard-timer-toggle__label{
  font-size: 34px;
  font-weight: 900;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.dashboard-stat-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.dashboard-stat-grid--overview .dashboard-stat__sub{
  margin-top: 8px;
  font-size: 12px;
}
.dashboard-stat{
  min-width:0;
  padding: 14px 14px 12px;
  border-radius: 16px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(220,228,238,.95);
}
.dashboard-stat__label{
  display:block;
  color: #5f7394;
  font-size: 12px;
  font-weight: 800;
}
.dashboard-stat__value{
  display:block;
  margin-top: 8px;
  font-size: 20px;
  line-height: 1.05;
  color: #071937;
}
.dashboard-stat__value.is-positive{ color: #059669; }
.dashboard-stat__value.is-negative{ color: #dc2626; }
.dashboard-progress{
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(248,250,252,.92);
  border: 1px solid rgba(226,232,240,.9);
}
.dashboard-progress__meta{
  display:flex;
  justify-content:space-between;
  gap: 12px;
  color: #475569;
  font-size: 14px;
}
.dashboard-progress__bar{
  margin-top: 12px;
  height: 14px;
  border-radius: 999px;
  background: rgba(203,213,225,.64);
  overflow:hidden;
}
.dashboard-progress__fill{
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0b5bd3, #38bdf8);
  box-shadow: 0 4px 14px rgba(11,91,211,.26);
}
.dashboard-actions{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.dashboard-action-card{
  min-height: 138px;
  padding: 18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap: 14px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(248,250,252,.94), rgba(255,255,255,.98));
  color: var(--text);
  text-decoration:none;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  transition: transform .14s ease, box-shadow .18s ease, background .18s ease;
}
.dashboard-action-card:hover{
  text-decoration:none;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(15,23,42,.10);
  background: linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.98));
}
.dashboard-action-card:active{
  transform: scale(.985);
}
.dashboard-action-card__icon svg{
  width: 28px;
  height: 28px;
  color: var(--blue);
}
.dashboard-action-card__title{
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
}
.dashboard-entry-list{
  display:grid;
  gap: 14px;
  margin-top: 16px;
}
.dashboard-entry-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 18px 20px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,.98));
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  transition: transform .14s ease, box-shadow .18s ease;
}
.dashboard-entry-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(15,23,42,.10);
}
.dashboard-entry-card__main{
  min-width:0;
  flex: 1 1 auto;
}
.dashboard-entry-card__title{
  font-size: 17px;
  font-weight: 800;
  color: #0f172a;
}
.dashboard-entry-card__meta{
  margin-top: 6px;
  color: #64748b;
  font-size: 13px;
}
.dashboard-entry-card__side{
  display:flex;
  align-items:center;
  gap: 16px;
}
.dashboard-entry-card__duration{
  min-width: 76px;
  font-size: 18px;
  font-weight: 800;
  color: #0f172a;
  text-align:right;
}
.dashboard-entry-card__actions{
  display:flex;
  gap: 8px;
}
.dashboard-icon-btn{
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color: #334155;
  background: rgba(255,255,255,.92);
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  transition: transform .14s ease, box-shadow .18s ease, color .18s ease;
}
.dashboard-icon-btn svg{
  width: 18px;
  height: 18px;
}
.dashboard-icon-btn:hover{
  transform: translateY(-1px);
  color: var(--blue);
  box-shadow: 0 8px 18px rgba(15,23,42,.10);
}
.dashboard-icon-btn:active{
  transform: scale(.96);
}
.dashboard-icon-btn.is-danger:hover{
  color: var(--danger);
}
.dashboard-icon-btn:disabled{
  opacity: .45;
  cursor:not-allowed;
  transform:none;
}
.dashboard-running-list{
  display: grid;
  gap: 12px;
  margin-top: 16px;
}
.dashboard-running-item{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(248,250,252,.94), rgba(255,255,255,.98));
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.dashboard-running-item__main{
  min-width: 0;
  flex: 1 1 auto;
}
.dashboard-running-item__name{
  font-weight: 800;
  color: #0f172a;
}
.dashboard-running-item__meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 6px;
  color: #475569;
  font-size: 13px;
}
.dashboard-running-item__meta span{
  min-width: 0;
}
.dashboard-running-item__side{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
@media (max-width: 900px){
  .dashboard-home__top{ grid-template-columns: 1fr; }
  .dashboard-welcome-card{ flex-direction: column; }
  .dashboard-welcome-card__meta{ align-items: stretch; width:100%; }
  .dashboard-welcome-card__actions{ width:100%; }
  .dashboard-welcome-card__actions .btn{ flex:1 1 100%; }
  .dashboard-home__split{ grid-template-columns: 1fr; }
  .dashboard-actions{ grid-template-columns: 1fr; }
  .dashboard-stat-grid{ grid-template-columns: 1fr; }
  .dashboard-hero{
    grid-template-columns: 1fr;
  }
  .dashboard-hero__side{
    align-items:flex-start;
  }
  .dashboard-hero__hint{
    text-align:left;
  }
}
@media (max-width: 900px){
  .dashboard-running-item--dense{ grid-template-columns: 1fr; }
  .dashboard-running-item__facts{ grid-template-columns: 1fr; }
}
@media (max-width: 520px){
  .dashboard-surface{
    padding: 16px;
  }
  .dashboard-hero__clock{
    font-size: clamp(38px, 16vw, 62px);
  }
  .dashboard-timer-toggle{
    width: 132px;
    height: 132px;
  }
  .dashboard-timer-toggle__label{
    font-size: 28px;
  }
  .dashboard-entry-card{
    flex-direction:column;
    align-items:flex-start;
  }
  .dashboard-entry-card__side{
    width:100%;
    justify-content:space-between;
  }
  .dashboard-entry-card__duration{
    text-align:left;
  }
  .dashboard-running-item{
    flex-direction: column;
  }
  .dashboard-running-item__side{
    justify-content: flex-start;
  }
  .quick-timer-shell__head{
    align-items:flex-start;
    flex-direction: column;
  }
  .quick-timer-shell__title{
    font-size: 30px;
  }
  .quick-timer-shell__date{
    text-align:left;
  }
  .quick-timer-card{
    border-radius: 28px;
    padding: 20px;
  }
  .quick-timer-inline{
    grid-template-columns: 1fr;
  }
  .quick-timer-cta{
    min-height: 76px;
    font-size: 28px;
  }
}

@keyframes dashboardTimerPulse{
  0%, 100%{
    transform: scale(1);
    filter: brightness(1);
  }
  50%{
    transform: scale(1.03);
    filter: brightness(1.05);
  }
}

.quick-timer-view{
  max-width: 720px;
  min-width: 0;
}
.quick-timer-shell{
  padding: 4px 0 24px;
  min-width: 0;
}
.quick-timer-shell__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 16px;
}
.quick-timer-shell__eyebrow{
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.quick-timer-shell__title{
  margin: 6px 0 0;
  font-size: 34px;
  line-height: 1.02;
  letter-spacing: -.03em;
}
.quick-timer-shell__date{
  color: var(--muted);
  font-size: 13px;
  text-align: right;
}
.quick-timer-card{
  position: relative;
  border-radius: 32px;
  padding: 28px 24px 22px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(221,229,241,.96);
  background:
    radial-gradient(circle at 50% 28%, rgba(59,130,246,.16), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(244,247,252,.96));
  box-shadow: 0 16px 40px rgba(15,23,42,.08);
}
.quick-timer-card.is-running{
  background:
    radial-gradient(circle at 50% 26%, rgba(16,185,129,.14), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(244,247,252,.96));
}
.quick-timer-card__hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.quick-timer-card__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  color: #2563eb;
  font-size: 18px;
  font-weight: 800;
}
.quick-timer-card__state{
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #93c5fd;
  box-shadow: 0 0 0 10px rgba(147,197,253,.18);
}
.quick-timer-card__state.is-running{
  background: #22c55e;
  box-shadow: 0 0 0 10px rgba(34,197,94,.14);
}
.quick-timer-card__timer{
  margin-top: 34px;
  font-size: clamp(62px, 18vw, 104px);
  font-weight: 900;
  line-height: .88;
  letter-spacing: -.05em;
  color: #0b1f4d;
  text-shadow: 0 10px 28px rgba(37,99,235,.12);
}
.quick-timer-card__sub{
  margin-top: 18px;
  color: #64748b;
  font-size: 18px;
}
.quick-timer-card__projectline{
  margin-top: 10px;
  color: #475569;
  font-size: 14px;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.quick-timer-cta{
  width: 100%;
  min-height: 96px;
  margin-top: 34px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  font-size: 34px;
  font-weight: 900;
  letter-spacing: .04em;
  box-shadow: 0 18px 40px rgba(37,99,235,.22), inset 0 -6px 0 rgba(0,0,0,.12);
  transition: transform .14s ease, box-shadow .18s ease, filter .18s ease;
}
.quick-timer-cta.quick-timer-cta--start{
  background: linear-gradient(180deg, #3b82f6, #1d4ed8);
}
.quick-timer-cta.quick-timer-cta--stop{
  background: linear-gradient(180deg, #ff4b72, #e11d48);
}
.quick-timer-cta:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
}
.quick-timer-cta:active{
  transform: scale(.985);
}
.quick-timer-cta:disabled{
  opacity: .55;
  box-shadow: none;
}
.quick-timer-config{
  margin-top: 28px;
  display:grid;
  gap: 18px;
}
.quick-timer-section,
.quick-timer-inline,
.quick-timer-note{
  min-width: 0;
}
.quick-timer-section__label,
.quick-timer-inline__label{
  margin-bottom: 8px;
  color: #5f7394;
  font-weight: 800;
}
.quick-timer-section__select,
.quick-timer-inline__input{
  height: 54px;
  min-height: 54px;
  border-radius: 16px;
  border: 1px solid rgba(206,216,228,.98);
  background: rgba(255,255,255,.92);
  font-size: 17px;
}
.quick-timer-section__selected{
  margin-top: 10px;
  color: #64748b;
  font-size: 14px;
  min-width: 0;
  overflow-wrap: anywhere;
}
.quick-timer-inline{
  display:grid;
  grid-template-columns: 1fr 124px;
  gap: 12px;
  align-items:end;
}
.quick-timer-inline.is-hidden{
  display:none;
}
.quick-timer-inline__input{
  text-align:center;
  font-weight: 800;
}
.quick-timer-progress{
  margin-top: 20px;
  padding: 16px 18px 14px;
  border-radius: 22px;
  background: rgba(248,250,252,.92);
  border: 1px solid rgba(226,232,240,.92);
}
.quick-timer-progress__meta,
.quick-timer-progress__foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}
.quick-timer-progress__meta{
  font-size: 14px;
  color: #475569;
}
.quick-timer-progress__meta b{
  color: #0f172a;
}
.quick-timer-progress__bar{
  margin-top: 12px;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(203,213,225,.72), rgba(226,232,240,.96));
  overflow: hidden;
}
.quick-timer-progress__fill{
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #3b82f6, #2563eb 60%, #93c5fd);
  box-shadow: 0 4px 18px rgba(37,99,235,.24);
}
.quick-timer-progress__foot{
  margin-top: 10px;
  color: var(--muted);
  font-size: 12px;
}
.quick-timer-note{
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 20px;
  background: rgba(248,250,252,.9);
  border: 1px solid rgba(226,232,240,.95);
  color: #0f172a;
  font-size: 14px;
}
.quick-timer-note__sub{
  margin-top: 6px;
  color: #64748b;
  font-size: 12px;
}
.quick-timer-note--soft{
  color: #475569;
}

@media (max-width: 900px){
  .dashboard-running-item--dense{ grid-template-columns: 1fr; }
  .dashboard-running-item__facts{ grid-template-columns: 1fr; }
}
@media (max-width: 520px){
  .quick-timer-shell__head{
    align-items:flex-start;
    flex-direction: column;
  }
  .quick-timer-shell__title{
    font-size: 30px;
  }
  .quick-timer-shell__date{
    text-align:left;
  }
  .quick-timer-card{
    border-radius: 30px;
    padding: 22px 20px 20px;
  }
  .quick-timer-card__status{
    font-size: 16px;
  }
  .quick-timer-card__timer{
    margin-top: 28px;
    font-size: clamp(56px, 20vw, 92px);
  }
  .quick-timer-card__sub{
    font-size: 17px;
  }
  .quick-timer-cta{
    min-height: 88px;
    margin-top: 28px;
    font-size: 30px;
  }
  .quick-timer-section__select,
  .quick-timer-inline__input{
    height: 50px;
    min-height: 50px;
    font-size: 16px;
  }
  .quick-timer-inline{
    grid-template-columns: 1fr;
  }
}

.tile{
  display:block;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.85);
  box-shadow: var(--shadow2);
  text-decoration:none;
  color: var(--text);
}
.tile:hover{ text-decoration:none; border-color: rgba(11,91,211,.20); box-shadow: var(--shadow); }
.tile__title{ font-weight: 900; font-size: 16px; letter-spacing:.2px; }
.tile__sub{ margin-top: 6px; font-size: 13px; }

.card-inner{
  background: linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,.98));
  border: 1px dashed var(--line-strong);
  border-radius: var(--r);
  padding: var(--space-4);
}

.h1{
  margin:0;
  font-size: clamp(24px, 3vw, 30px);
  line-height: 1.08;
  letter-spacing: -.03em;
}
.h2{
  margin:0;
  font-size: 19px;
  line-height: 1.18;
  letter-spacing: -.02em;
}
.h3{
  margin:0;
  font-size: 16px;
  line-height: 1.24;
}

.muted{ color: var(--muted); }
.mt-12{ margin-top: 12px; }
.mt-16{ margin-top: 16px; }
.divider{ height:1px; background: var(--line); margin: var(--space-4) 0; }

.row{ display:flex; align-items:center; }
.row-between{ justify-content: space-between; }
.row-end{ justify-content: flex-end; }
.row-gap{ gap: 10px; }
.row-wrap{ flex-wrap: wrap; }
.grow{ flex: 1 1 auto; }
.nowrap{ white-space: nowrap; overflow:hidden; text-overflow: ellipsis; }

.navlink{
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(2,6,23,.04);
  color: var(--gray);
  font-weight: 600;
}
.navlink:hover{ background: rgba(11,91,211,.10); color: var(--blue2); text-decoration:none; }
.navlink.active{
  background: var(--blue);
  color: #fff;
}
.navlink.active:hover{ background: var(--blue2); color:#fff; }

.form{ display:flex; flex-direction:column; gap: var(--space-3); }
.label{
  display:block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
  color: var(--muted);
}
.hint{
  font-size: 12px;
  line-height: 1.45;
  color: var(--muted);
  margin-top: 6px;
}
.empty{
  padding: 14px 16px;
  border: 1px dashed var(--line-strong);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,.98));
  color: var(--muted);
}
.page-head,
.section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.page-head__content,
.section-head__content{
  min-width: 0;
  flex: 1 1 320px;
}
.page-head__content > p,
.section-head__content > p{
  margin: 6px 0 0;
}
.page-head__actions,
.section-head__actions{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
}
.surface-note{
  padding: 12px 14px;
  border: 1px solid rgba(11,91,211,.16);
  border-left: 4px solid rgba(11,91,211,.48);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
  color: var(--text);
}
.surface-note--soft{
  border-color: var(--line);
  border-left-color: rgba(148,163,184,.55);
}
@media (max-width: 640px){
  .page-head__actions,
  .section-head__actions{
    width: 100%;
  }
  .page-head__actions .btn,
  .section-head__actions .btn,
  .page-head__actions a.btn,
  .section-head__actions a.btn{
    flex: 1 1 100%;
  }
}



.time-hero-card--quick{
  padding: 18px 22px 18px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(241,245,251,.96), rgba(245,248,252,.95));
  border: 1px solid rgba(225,232,241,.95);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 8px 22px rgba(15,23,42,.04);
}
.time-hero-card__layout{
  display:grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 18px;
  align-items:start;
}
.time-hero-card__main{ min-width:0; }
.time-hero-card__status-pill{
  padding: 11px 16px;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(226,232,240,.95);
}
.time-hero-card__status-pill--wide{
  gap: 14px;
  padding: 12px 20px;
  min-height: 48px;
}
.time-hero-card__status-pill--wide span:last-child{
  display:inline-flex;
  align-items:center;
  line-height:1.15;
}
.time-hero-card__status-pill--wide .dashboard-hero__status-dot{
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  margin-right: 2px;
}
.time-hero-card__clock{
  margin-top: 12px;
  font-size: clamp(64px, 8vw, 112px);
  line-height: .9;
  letter-spacing: -.02em;
  font-weight: 900;
  color: #091634;
}
.time-hero-card__today{
  margin-top: 12px;
  color: #5e6b82;
  font-size: 14px;
}
.time-hero-card__fields{
  margin-top: 18px;
  display:grid;
  grid-template-columns: minmax(220px, 420px) minmax(160px, 220px);
  gap: 14px;
  align-items:start;
}
.time-hero-card__project .label,
.time-hero-card__aux .label{ color:#5e6b82; font-weight:800; }
.time-hero-card__project .select,
.time-hero-card__project .input{
  height: 48px;
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(206,216,228,.98);
  font-size: 15px;
  line-height: 1.2;
  box-sizing: border-box;
}
.time-hero-card__project--break .hint{
  margin-top: 6px;
  color: #7a8698;
  font-size: 12px;
}
.time-hero-card__side{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-top: 6px;
}
.dashboard-timer-toggle{
  width: 168px;
  height: 168px;
  box-shadow: 0 16px 30px rgba(11,91,211,.18), inset 0 -6px 0 rgba(0,0,0,.16);
}
.time-filter-panel{ border-radius: 14px; }
.dashboard-stat-grid--overview .dashboard-stat:first-child .dashboard-stat__value{ font-size: 22px; }
.dashboard-notification-item{
  border-radius: 16px;
  padding: 16px 16px;
}
@media (max-width: 900px){
  .dashboard-home__top{ grid-template-columns: 1fr; }
  .dashboard-home__split{ grid-template-columns: 1fr; }
  .dashboard-stat-grid{ grid-template-columns: 1fr; }
  .time-hero-card__layout{ grid-template-columns: 1fr; }
  .time-hero-card__side{ justify-content:flex-start; }
  .time-hero-card__fields{ grid-template-columns: 1fr; }
}
@media (max-width: 520px){
  .time-hero-card--quick{ padding: 16px; }
  .time-hero-card__clock{ font-size: clamp(52px, 18vw, 82px); }
  .dashboard-timer-toggle{ width: 136px; height: 136px; }
}

/* v0.32.7 UI override: Übersicht + Zeiten-Hero an Entwürfe angenähert */
.dashboard-home__top{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.dashboard-home__split{
  display:grid;
  grid-template-columns:minmax(0, 1.6fr) minmax(320px, .95fr);
  gap:14px;
  align-items:stretch;
}
.dashboard-welcome-card{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:18px 18px 20px;
  border-radius:18px;
  border:1px solid rgba(164,187,228,.8);
  background:linear-gradient(90deg, rgba(226,236,252,.92), rgba(238,241,250,.9));
  box-shadow:none;
}
.dashboard-welcome-card__eyebrow{ 
  color:#5f7394; 
  font-size:18px;
  font-weight:800;
}
.dashboard-welcome-card__title{
  margin:2px 0 0;
  font-size:clamp(32px, 4.1vw, 36px);
  line-height:.95;
}
.dashboard-welcome-card__sub,
.dashboard-welcome-card__badge,
.dashboard-welcome-card__badge-label,
.dashboard-welcome-card__badge strong{ display:none; }
.dashboard-welcome-card__meta{ margin-left:auto; align-items:flex-end; }
.dashboard-welcome-card__actions{ gap:12px; }
.dashboard-welcome-card__actions .btn{
  min-height:44px;
  padding-inline:18px;
  border-radius:14px;
  font-weight:800;
}
.dashboard-surface{
  padding:18px 18px 20px;
  border-radius:18px;
  border:1px solid rgba(219,228,240,.95);
  background:linear-gradient(180deg, rgba(255,255,255,.985), rgba(248,250,252,.95));
  box-shadow:0 6px 18px rgba(15,23,42,.05);
}
.dashboard-stat-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:12px;
}
.dashboard-stat{
  padding:14px 14px 12px;
  border-radius:16px;
  border:1px solid rgba(220,228,238,.95);
  background:rgba(255,255,255,.82);
}
.dashboard-stat__label{ color:#5f7394; font-size:12px; font-weight:800; }
.dashboard-stat__value{ margin-top:8px; font-size:22px; line-height:1.05; color:#071937; }
.dashboard-stat__sub{ margin-top:6px; color:#62748d; font-size:12px; }
.dashboard-running-list--dense{ margin-top:16px; gap:12px; }
.dashboard-running-item--dense{
  display:grid;
  grid-template-columns:minmax(220px, 1fr) auto;
  gap:12px;
  align-items:center;
  padding:18px 16px;
  border-radius:16px;
  border:1px solid rgba(215,225,238,.95);
  background:rgba(255,255,255,.72);
}
.dashboard-running-item__name{ font-size:15px; }
.dashboard-running-item__project{ margin-top:8px; font-size:12px; color:#5f6f84; }
.dashboard-running-item__facts{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
.dashboard-running-item__fact{
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(149,223,193,.95);
  background:rgba(217,249,237,.75);
}
.dashboard-running-item__fact span{ display:none; }
.dashboard-running-item__fact strong,
.dashboard-running-item__fact--status strong{ margin-top:0; color:#0f5132; font-size:13px; }
.dashboard-progress{
  margin-top:14px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(226,232,240,.9);
  background:rgba(248,250,252,.92);
}
/* Konsolidiert: Time-Hero-Regeln werden zentral weiter oben gepflegt. */
@media (max-width: 900px){
  .dashboard-home__split,
  .dashboard-stat-grid,
  .time-hero-card__layout,
  .time-hero-card__fields{ grid-template-columns:1fr; }
  .dashboard-running-item--dense{ grid-template-columns:1fr; }
  .dashboard-running-item__facts,
  .time-hero-card__side{ justify-content:flex-start; }
}
@media (max-width: 520px){
  .dashboard-welcome-card__actions{ width:100%; }
  .dashboard-welcome-card__actions .btn{ flex:1 1 100%; }
  .time-hero-card--quick{ padding:16px; }
  .time-hero-card__clock{ font-size:clamp(52px, 18vw, 82px); }
  .dashboard-timer-toggle{ width:136px; height:136px; }
}
