@keyframes commit-breathe{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 0 .5rem var(--glow-brand)}}@keyframes commit-seal{0%{opacity:0;transform:scale(1.8)rotate(-12deg)}55%{opacity:1;transform:scale(.92)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes resolution-open{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(1.25rem)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes score-settle{0%{opacity:0;filter:blur(.25rem);transform:translateY(1.25rem)scale(.82)}70%{filter:blur();transform:translateY(-.125rem)scale(1.04)}to{opacity:1;filter:blur();transform:none}}@keyframes bell-ring{0%,to{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}}@keyframes badge-arrive{0%{opacity:0;transform:translate(.25rem,-.25rem)scale(.3)}70%{opacity:1;transform:translate(0)scale(1.16)}to{opacity:1;transform:scale(1)}}@keyframes skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes route-fade{0%{opacity:0;filter:blur(.2rem);transform:translateY(.75rem)}to{opacity:1;filter:blur();transform:none}}.commit-moment{isolation:isolate;transition:border-color .24s,background-color .24s,box-shadow .24s;overflow:hidden}.commit-moment:focus-within{border-color:var(--color-brand-500);box-shadow:0 1.5rem 4rem var(--glow-accent)}.commit-moment[data-state=saving]{animation:1.15s ease-in-out infinite commit-breathe}.commit-moment[data-state=sealed]{border-color:var(--color-brand-500);background:color-mix(in oklab, var(--color-brand-500) 12%, var(--card));box-shadow:0 1.5rem 5rem var(--glow-brand)}.commit-moment[data-state=sealed] .commit-fields{opacity:.18;transform:scale(.985)}.commit-fields{transition:opacity .26s,transform .42s cubic-bezier(.16,1,.3,1)}.commit-seal{animation:.58s cubic-bezier(.16,1,.3,1) both commit-seal}.resolution-sheet{animation:.68s cubic-bezier(.16,1,.3,1) both resolution-open}.resolution-row{animation:.52s cubic-bezier(.16,1,.3,1) both resolution-open}.resolution-progress{transform-origin:0;animation:.74s cubic-bezier(.16,1,.3,1) .18s both score-settle}.duel-finale{isolation:isolate;box-shadow:0 2rem 6rem var(--glow-accent);position:relative;overflow:hidden}.duel-finale:before{z-index:-1;content:"";background:radial-gradient(circle at 50% 0, var(--glow-brand), transparent 58%);position:absolute;inset:0}.duel-score{animation:.72s cubic-bezier(.16,1,.3,1) both score-settle}.duel-score:last-child{animation-delay:.1s}.notification-bell.has-unread{color:var(--color-brand-500)}.notification-bell.has-unread .notification-bell-icon{transform-origin:50% 15%;animation:.68s ease-in-out .16s both bell-ring}.notification-badge{animation:.52s cubic-bezier(.16,1,.3,1) .12s both badge-arrive}.empty-state-mark{border:1px solid var(--border);background:color-mix(in oklab, var(--color-brand-500) 8%, var(--card));width:3.5rem;height:3.5rem;color:var(--color-brand-500);font-family:var(--font-display), ui-serif, serif;box-shadow:inset 0 0 0 .375rem color-mix(in oklab, var(--card) 82%, transparent);border-radius:1.25rem;font-size:1.5rem}.skeleton-line{background:linear-gradient(90deg, var(--surface-2), var(--border), var(--surface-2));background-size:200% 100%;animation:1.8s ease-in-out infinite skeleton-sweep}.stage-rail{grid-template-columns:repeat(3,minmax(0,1fr));max-width:28rem;margin:0;padding:0;list-style:none;display:grid}.stage-rail li{align-items:center;gap:.5rem;min-width:0;display:flex;position:relative}.stage-rail li:not(:last-child):after{content:"";background:var(--border-strong);height:1px;position:absolute;top:.75rem;left:1.75rem;right:.5rem}.stage-rail li>span{z-index:1;border:1px solid var(--border-strong);background:var(--background);width:1.5rem;height:1.5rem;color:var(--muted-foreground);font:600 .625rem var(--font-mono), monospace;border-radius:999px;flex:none;place-items:center;display:grid;position:relative}.stage-rail li[data-status=done]>span,.stage-rail li[data-status=active]>span{border-color:var(--color-brand-500);background:var(--color-brand-500);color:var(--on-accent)}.stage-rail small{color:var(--muted-foreground);text-overflow:ellipsis;font-size:.6875rem;font-weight:600;overflow:hidden}.stage-rail li[data-status=active] small{color:var(--foreground)}::view-transition-old(.golden-path-forward){animation:.15s ease-in reverse both route-fade}::view-transition-new(.golden-path-forward){animation:.36s ease-out .12s both route-fade}@keyframes denkspur-rise{0%{opacity:0;transform:translateY(.7rem)}to{opacity:1;transform:none}}.denkspur-row{border-bottom:1px solid var(--border);padding:1.15rem 1.2rem;animation:.56s cubic-bezier(.16,1,.3,1) both denkspur-rise}.denkspur-row:last-child{border-bottom:0}.denkspur-knick{background:color-mix(in oklab, var(--color-brand-500) 9%, var(--card));animation-duration:.74s}.denkspur-spark{width:100%;height:2.25rem;margin-top:.75rem;display:block}.denkspur-sicherheit{flex:none;align-items:center;gap:.45rem;min-width:6.75rem;display:flex}.denkspur-sicherheit-track{background:var(--surface-2);border-radius:999px;width:4.25rem;height:.35rem;display:block;overflow:hidden}.denkspur-sicherheit-fill{background:var(--color-brand-500);border-radius:999px;height:100%;display:block}.denkspur-sicherheit-zahl{font-family:var(--font-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;color:var(--muted-foreground);font-size:.7rem}@media (max-width:420px){.stage-rail small{display:none}.stage-rail li:not(:last-child):after{right:.25rem}}@media (prefers-reduced-motion:reduce){::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}.skeleton-line,.denkspur-row,.denkspur-knick{animation:none}}
