:root{--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--bg: #f3f4f2;--surface: #fafaf7;--surface-subtle: #f0f1ee;--card: #ffffff;--text: #1f262a;--text-muted: #5f6870;--line: #d3d8dc;--accent: #0f7668;--accent-soft: rgba(15, 118, 104, .12);--warning: #b45309;--error: #b3261e;--focus: rgba(15, 118, 104, .2);--shadow-soft: 0 1px 2px rgba(23, 28, 33, .08), 0 14px 24px rgba(23, 28, 33, .05);--radius-1: 10px;--radius-2: 14px;--radius-3: 18px}:root[data-theme=dark]{color-scheme:dark;--bg: #11161a;--surface: #171d22;--surface-subtle: #1b2329;--card: #1f282f;--text: #e8edf1;--text-muted: #a8b2bc;--line: #32404a;--accent: #4ac2b1;--accent-soft: rgba(74, 194, 177, .18);--warning: #e3a355;--error: #ff978e;--focus: rgba(74, 194, 177, .28);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .35), 0 16px 26px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 5%,var(--bg)),var(--bg) 45%);color:var(--text);font-family:var(--font-ui);line-height:1.45}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:var(--radius-1);padding:.5rem .76rem;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,opacity .18s ease}button:hover{background:var(--surface-subtle)}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px var(--focus)}input,select,textarea{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:var(--radius-1);padding:.56rem .72rem}textarea{resize:vertical}.app-shell{max-width:1760px;margin:0 auto;padding:1.55rem 1rem 1rem;display:grid;gap:.95rem}.app-footer{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.72rem;letter-spacing:.02em}.backend-status{border:1px solid var(--line);border-radius:999px;padding:.12rem .44rem;background:var(--surface)}.backend-status.sync{color:color-mix(in srgb,var(--accent) 80%,var(--text));border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.backend-status.mismatch{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 40%,var(--line))}.backend-status.down{color:var(--error);border-color:color-mix(in srgb,var(--error) 45%,var(--line))}.panel-header{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:end;padding:.2rem .2rem .36rem}.panel-title{margin:0;font-size:2rem;line-height:1.08;letter-spacing:-.02em}.header-controls{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end;align-items:center}.workspace-toggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-1);overflow:hidden}.workspace-toggle button{border:0;border-right:1px solid var(--line);border-radius:0;min-width:80px;background:transparent}.workspace-toggle button:last-child{border-right:0}.workspace-toggle button.active{background:var(--accent);color:#f7fffd}.top-search{min-width:220px}.toolbar-toggle-btn{display:inline-flex;align-items:center;gap:.42rem;color:var(--text-muted);font-size:.9rem;background:transparent;border-color:color-mix(in srgb,var(--line) 80%,transparent)}.toolbar-toggle-btn.on{color:var(--text)}.toggle-track{width:34px;height:20px;border-radius:999px;border:1px solid var(--line);background:var(--surface-subtle);padding:2px;display:inline-flex;align-items:center}.toggle-thumb{width:14px;height:14px;border-radius:999px;background:var(--text-muted);transition:transform .18s ease,background-color .18s ease}.toolbar-toggle-btn.on .toggle-track{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.toolbar-toggle-btn.on .toggle-thumb{transform:translate(14px);background:var(--accent)}.momentum-pill{display:inline-flex;gap:.45rem;align-items:center;border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text)}.crank-launch-btn{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--text)}.crank-launch-btn:disabled{opacity:.48;cursor:not-allowed}.capture-bar{display:grid;grid-template-columns:1fr auto;gap:.64rem;border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);padding:.62rem;box-shadow:var(--shadow-soft)}.capture-bar button,.header-controls>button:not(.ghost-btn):not(.active-toggle-btn):not(.momentum-pill):not(.toolbar-toggle-btn):not(.theme-icon-btn){background:var(--accent);color:#f7fffd;border-color:transparent}.ghost-btn{background:transparent}.commitments-strip{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);padding:.84rem;box-shadow:var(--shadow-soft)}.commitments-strip-over{box-shadow:0 0 0 2px var(--accent-soft),var(--shadow-soft)}.commitments-strip header{display:flex;justify-content:space-between;align-items:baseline}.commitments-strip h2{margin:0;font-size:1.03rem}.commitment-count{margin:0;color:var(--text-muted);font-size:.9rem}.commitment-items{display:grid;grid-template-columns:repeat(5,minmax(250px,1fr));gap:.58rem;overflow-x:auto;margin-top:.58rem;padding-bottom:.12rem}.commitment-item{min-height:112px;border-radius:var(--radius-1);transition:box-shadow .18s ease,background-color .18s ease}.commitment-item .card{margin:0}.commitment-slot-empty{border:1px solid transparent;background:transparent}.commitment-slot-over{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.commitment-slot-over .card{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.theme-icon-btn{min-width:36px;padding:.44rem .56rem;background:transparent;color:color-mix(in srgb,var(--text) 62%,var(--surface));border-color:color-mix(in srgb,var(--line) 82%,transparent);font-size:1rem;line-height:1}.board-area{min-height:min(62vh,780px)}.columns-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,350px);gap:.95rem;overflow-x:auto;padding-bottom:.55rem}.column-lane{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);box-shadow:var(--shadow-soft);min-height:430px;display:flex;flex-direction:column;transition:border-color .18s ease,box-shadow .18s ease}.column-lane-over{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft),var(--shadow-soft)}.column-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.72rem .8rem;border-bottom:1px solid var(--line)}.column-header h3{margin:0;font-size:1rem;font-weight:600}.column-controls{min-height:1px}.cards-list{display:grid;align-content:start;gap:.6rem;padding:.68rem}.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-1);box-shadow:var(--shadow-soft);padding:.6rem;display:grid;gap:.48rem;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.card:hover,.card:focus-within,.card-selected{border-color:color-mix(in srgb,var(--accent) 26%,var(--line));transform:translateY(-1px)}.card-dragging{opacity:.35}.card-heading-row{display:flex;justify-content:space-between;align-items:start;gap:.5rem}.card-meta-row{display:flex;flex-wrap:wrap;gap:.34rem}.meta-label{border:1px solid var(--line);border-radius:999px;padding:.08rem .42rem;font-size:.74rem;color:var(--text-muted);background:transparent}.meta-label-btn{cursor:pointer}.status-accent{color:var(--accent)}.status-warning{color:var(--warning)}.card-menu-btn,.card-complete-btn,.card-queue-btn{min-width:30px;padding:.14rem .35rem;font-size:1rem;line-height:1}.card-heading-actions{display:flex;align-items:center;gap:.3rem}.card-complete-btn{color:var(--accent)}.card-queue-btn{color:var(--text-muted)}.card-queue-btn.active{color:var(--accent)}.card-title,.card-title-input{margin:0;font-size:1.01rem;line-height:1.35;font-weight:500}.card-title-input{width:100%}.suggestions{border:1px dashed var(--line);border-radius:var(--radius-1);padding:.46rem;display:grid;gap:.35rem}.chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.chip-label{font-size:.79rem;color:var(--text-muted)}.card-details-panel{border:1px dashed var(--line);border-radius:var(--radius-1);padding:.5rem;display:grid;gap:.52rem}.card-note-row{display:grid;gap:.24rem}.card-note-row p{margin:0;color:var(--text-muted);font-size:.9rem;white-space:pre-wrap}.card-note-actions{display:flex;justify-content:flex-start}.card-details-input{min-height:92px}.people-tags{display:flex;flex-wrap:wrap;gap:.3rem}.card-details-footer{display:flex;justify-content:flex-end}.card-details-dot{border:0;background:transparent;color:var(--text-muted);padding:0;min-width:22px;font-size:1rem;letter-spacing:.12em}.card-actions{display:none;gap:.4rem;flex-wrap:wrap}.card-actions.open{display:flex}.menu-date-row{display:flex;gap:.35rem;align-items:center}.danger-btn{color:var(--error);border-color:color-mix(in srgb,var(--error) 45%,var(--line))}.active-toggle-btn{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.archive-panel{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--surface);padding:.8rem}.archive-header{display:flex;align-items:baseline;justify-content:space-between}.archive-header h2,.archive-header p{margin:0}.archive-header p{color:var(--text-muted)}.archive-list{margin-top:.65rem;display:grid;gap:.5rem}.archive-item{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.58rem;display:flex;align-items:center;justify-content:space-between;gap:.6rem}.archive-item h3,.archive-item p{margin:0}.archive-item p{margin-top:.2rem;color:var(--text-muted);font-size:.85rem}.edge-drop-zone{position:fixed;z-index:30;display:grid;place-items:center;font-size:.86rem;letter-spacing:.02em;border:2px dashed color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--text);pointer-events:auto;opacity:.75;transition:opacity .15s ease,background-color .15s ease}.edge-drop-zone-over{opacity:1;background:color-mix(in srgb,var(--accent) 22%,transparent)}.edge-drop-right{top:0;right:0;width:92px;height:100vh;writing-mode:vertical-rl;text-orientation:mixed}.edge-drop-top{top:0;left:0;width:100vw;height:84px}.edge-drop-bottom{left:0;bottom:0;width:100vw;height:92px}.drag-overlay-card{width:min(340px,90vw);box-shadow:0 12px 28px #0000003d}.shortcuts-modal{width:min(520px,calc(100vw - 1.5rem));border-radius:var(--radius-2);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);padding:.8rem;display:grid;gap:.6rem}.shortcuts-header{display:flex;align-items:center;justify-content:space-between}.shortcuts-header h2{margin:0;font-size:1rem}.shortcuts-list{display:grid;gap:.45rem}.shortcut-row{display:flex;justify-content:space-between;gap:.7rem;border:1px solid var(--line);border-radius:var(--radius-1);padding:.42rem .5rem;background:var(--card)}.badge-help h3{margin:0;font-size:.95rem}.badge-help p{margin:.24rem 0 0;color:var(--text-muted);font-size:.86rem}kbd{border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:.05rem .35rem;font-size:.79rem;background:var(--surface-subtle)}.add-column{align-self:start;min-height:52px;border-style:dashed;background:transparent}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#13151870;z-index:20}.weekly-reset-modal{width:min(760px,calc(100vw - 1.5rem));max-height:calc(100vh - 1.5rem);overflow:auto;border:1px solid var(--line);border-radius:var(--radius-3);background:var(--surface);padding:1rem;display:grid;gap:.72rem}.weekly-reset-modal header{display:flex;justify-content:space-between;align-items:center}.weekly-stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:.42rem}.weekly-stepper span{border:1px solid var(--line);border-radius:999px;padding:.24rem .48rem;text-align:center;font-size:.82rem;color:var(--text-muted)}.weekly-stepper span.active{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.weekly-panel{display:grid;gap:.62rem}.weekly-panel h3{margin:0}.weekly-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.weekly-stats-grid article{border:1px solid var(--line);border-radius:var(--radius-1);padding:.48rem;background:var(--card)}.weekly-stats-grid strong{display:block;font-size:1.1rem}.weekly-stats-grid p{margin:.2rem 0 0;color:var(--text-muted);font-size:.84rem}.weekly-carryover-list{display:flex;flex-wrap:wrap;gap:.42rem}.carryover-chip{border-radius:999px}.reset-list{display:grid;gap:.46rem}.reset-item{border:1px solid var(--line);border-radius:var(--radius-1);padding:.5rem;display:flex;align-items:center;gap:.5rem;background:var(--card)}.reset-item strong{margin-left:auto;color:var(--accent);font-size:.78rem}.weekly-create-row{display:grid;grid-template-columns:1fr auto;gap:.48rem}.weekly-preview-score{margin:0;font-weight:600}.weekly-summary-list{margin:0;padding-left:1.15rem;display:grid;gap:.2rem}.weekly-reset-footer{display:flex;justify-content:space-between;gap:.5rem}.momentum-modal{width:min(680px,calc(100vw - 1.5rem))}.crank-setup-modal{width:min(860px,calc(100vw - 1.5rem));max-height:calc(100vh - 1.5rem);overflow:auto}.crank-goal-row{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.55rem;display:flex;align-items:end;flex-wrap:wrap;gap:.55rem}.crank-goal-row p{margin:0;color:var(--text-muted);font-size:.88rem}.crank-goal-row label{display:grid;gap:.2rem}.crank-goal-row input,.crank-goal-row select{min-width:110px}.crank-setup-list{display:grid;gap:.45rem}.crank-setup-row{border:1px solid var(--line);border-radius:var(--radius-1);padding:.5rem;background:var(--card);display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.46rem;align-items:center}.crank-setup-row.dragging{opacity:.82;box-shadow:var(--shadow-soft)}.crank-row-grip{min-width:28px;padding:.22rem .3rem;background:transparent}.crank-row-check input{width:16px;height:16px}.crank-row-copy{min-width:0}.crank-row-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crank-row-meta{display:inline-flex;gap:.34rem;color:var(--text-muted);font-size:.8rem}.crank-row-estimate{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-muted)}.crank-row-estimate input{width:70px}.crank-flow-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:radial-gradient(circle at 50% -20%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 55%),radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 42%),color-mix(in srgb,var(--bg) 84%,#050708 16%);display:grid;grid-template-rows:auto 1fr auto;gap:.88rem;padding:1rem 1.25rem}.crank-flow-hud-top,.crank-flow-hud-bottom{border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:var(--radius-2);background:color-mix(in srgb,var(--surface) 76%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .18s cubic-bezier(.22,.9,.24,1),transform .2s cubic-bezier(.22,.9,.24,1)}.crank-flow-hud-top{padding:.62rem .76rem;display:flex;justify-content:space-between;align-items:center;gap:.8rem}.crank-flow-hud-bottom{padding:.58rem .72rem;display:grid;gap:.48rem}.crank-flow-hud-top.is-hidden,.crank-flow-hud-bottom.is-hidden{opacity:0;filter:blur(1px);pointer-events:none;transform:translateY(-4px)}.crank-flow-hud-bottom.is-hidden{transform:translateY(4px)}.crank-flow-headline h2,.crank-flow-headline p{margin:0}.crank-flow-headline h2{font-size:1.15rem}.crank-flow-headline p{color:var(--text-muted);font-size:.86rem}.crank-flow-hud-controls{display:inline-flex;align-items:center;gap:.48rem}.crank-flow-sync-state{display:inline-flex;align-items:center;gap:.42rem;margin-left:auto}.crank-flow-sync-pill,.crank-flow-sync-message{border-radius:999px;padding:.12rem .48rem;font-size:.74rem}.crank-flow-sync-pill{border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));background:color-mix(in srgb,var(--accent) 10%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--text))}.crank-flow-sync-message{border:1px solid color-mix(in srgb,var(--warning) 42%,var(--line));background:color-mix(in srgb,var(--warning) 10%,transparent);color:color-mix(in srgb,var(--warning) 80%,var(--text))}.crank-flow-timers{display:inline-flex;gap:.44rem;flex-wrap:wrap}.crank-flow-timers article{border:1px solid var(--line);border-radius:var(--radius-1);background:color-mix(in srgb,var(--card) 92%,transparent);padding:.3rem .48rem;min-width:112px}.crank-flow-timers span{display:block;color:var(--text-muted);font-size:.72rem}.crank-flow-timers strong{font-size:1rem;font-variant-numeric:tabular-nums}.crank-flow-timers article.over strong{color:var(--warning)}.crank-flow-timers article.under strong{color:var(--accent)}.crank-flow-plus-btn{min-width:30px;width:30px;height:30px;border-radius:999px;padding:0;line-height:1;font-size:1.06rem;color:var(--text-muted);background:transparent}.crank-flow-quick-add-wrap{min-width:30px;min-height:30px}.crank-flow-quick-add{display:inline-flex;align-items:center;gap:.35rem}.crank-flow-quick-add input{min-width:clamp(210px,28vw,340px);padding:.42rem .56rem}.crank-flow-quick-add button{padding:.43rem .62rem}.crank-flow-viewport{min-height:0;border-radius:calc(var(--radius-2) + 2px);border:1px solid color-mix(in srgb,var(--line) 74%,transparent);background:color-mix(in srgb,var(--surface) 30%,transparent);overflow:hidden;perspective:1600px}.crank-flow-rail{position:relative;width:100%;height:100%;min-height:560px;transform-style:preserve-3d;transform:translate(var(--flow-preview-shift, 0px));transition:transform .42s cubic-bezier(.2,.82,.24,1)}.crank-flow-card{--flow-card-scale: 1;--flow-card-rotate: 0deg;--flow-card-offset-px: 0px;--flow-card-swipe-x: 0px;--flow-card-swipe-tilt: 0deg;--flow-card-z: 0px;--flow-card-blur: 0px;--flow-card-opacity: 1;--flow-card-layer: 100;--flow-card-delay: 0ms;position:absolute;left:50%;top:50%;width:clamp(560px,58vw,920px);max-width:calc(100vw - 5rem);border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:calc(var(--radius-3) + 2px);background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 26px 60px #080a0c54,inset 0 0 0 1px color-mix(in srgb,var(--line) 24%,transparent);padding:1.18rem 1.28rem;display:grid;gap:.8rem;transform:translate(-50%,-50%) translate(calc(var(--flow-card-offset-px) + var(--flow-card-swipe-x))) translateZ(var(--flow-card-z)) rotateY(var(--flow-card-rotate)) rotate(var(--flow-card-swipe-tilt)) scale(var(--flow-card-scale));transform-origin:center center;transform-style:preserve-3d;backface-visibility:hidden;contain:layout style paint;will-change:transform,opacity,filter;opacity:var(--flow-card-opacity);filter:blur(var(--flow-card-blur));z-index:var(--flow-card-layer);transition:transform .42s cubic-bezier(.2,.82,.24,1) var(--flow-card-delay),opacity .32s cubic-bezier(.22,.9,.24,1) var(--flow-card-delay),filter .32s cubic-bezier(.22,.9,.24,1) var(--flow-card-delay),box-shadow .32s cubic-bezier(.22,.9,.24,1)}.crank-flow-card--center{touch-action:pan-y}.crank-flow-card--center.is-swiping{transition-duration:0ms,.22s,.22s,.22s;cursor:grabbing}.crank-flow-card--center.swipe-intent-later{box-shadow:0 26px 60px #080a0c54,inset 0 0 0 1px color-mix(in srgb,var(--accent) 42%,transparent)}.crank-flow-title{margin:0;font-size:clamp(1.5rem,2.9vw,2.34rem);line-height:1.14;letter-spacing:-.014em;text-wrap:balance;overflow-wrap:anywhere;max-width:26ch}.crank-flow-title-side{font-size:clamp(.78rem,1.1vw,1rem);line-height:1.25;max-width:18ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.crank-flow-detail{margin:0;color:var(--text-muted);font-size:clamp(1rem,1.24vw,1.16rem);line-height:1.44;max-width:72ch;text-wrap:pretty;overflow-wrap:anywhere}.crank-flow-card-meta{display:inline-flex;gap:.34rem;flex-wrap:wrap;align-items:center}.crank-flow-card-meta span{border:1px solid var(--line);border-radius:999px;padding:.12rem .55rem;color:var(--text-muted);font-size:.77rem;line-height:1.1;font-weight:500}.crank-flow-card--left,.crank-flow-card--right{width:clamp(180px,18vw,280px);padding:.64rem .7rem;gap:.46rem;pointer-events:none;box-shadow:0 12px 24px #080a0c38,inset 0 0 0 1px color-mix(in srgb,var(--line) 18%,transparent)}.crank-flow-card--left h3,.crank-flow-card--right h3{max-width:100%}.crank-flow-card--left .crank-flow-card-meta span,.crank-flow-card--right .crank-flow-card-meta span{font-size:.62rem;padding:.06rem .4rem}.crank-flow-side-meta{font-size:.72rem;letter-spacing:.01em;font-variant-numeric:tabular-nums}.crank-flow-side-kickers{display:inline-flex;gap:.32rem;align-items:center;color:color-mix(in srgb,var(--text-muted) 85%,var(--text));font-size:.66rem;letter-spacing:.02em;text-transform:uppercase;opacity:.86}.crank-flow-card--completed{filter:saturate(.78) blur(var(--flow-card-blur))}.crank-flow-card--completed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:color-mix(in srgb,var(--accent) 10%,transparent);pointer-events:none}.crank-flow-check{position:absolute;top:.5rem;right:.5rem;width:20px;height:20px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 56%,var(--line));color:color-mix(in srgb,var(--accent) 86%,var(--text));background:color-mix(in srgb,var(--surface) 85%,transparent);display:grid;place-items:center;font-size:.76rem;font-weight:700}.crank-flow-finished-card{text-align:center;align-items:center;justify-items:center}.crank-flow-center-tools{border-top:1px solid color-mix(in srgb,var(--line) 84%,transparent);padding-top:.6rem;display:grid;gap:.52rem}.crank-flow-estimate-pill{width:fit-content;border:1px solid var(--line);border-radius:999px;padding:.14rem .54rem;color:var(--text-muted);font-size:.8rem}.crank-flow-card-actions{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap}.crank-flow-card-actions-main,.crank-flow-card-actions-utility{display:inline-flex;gap:.42rem;flex-wrap:wrap;align-items:center}.crank-flow-btn-primary,.crank-flow-btn-secondary,.crank-flow-btn-utility,.crank-flow-btn-danger{min-height:36px}.crank-flow-btn-primary{background:color-mix(in srgb,var(--accent) 92%,#073530);border-color:transparent;color:#f7fffd;font-weight:600;min-width:92px}.crank-flow-btn-secondary{border-color:color-mix(in srgb,var(--line) 94%,transparent);background:color-mix(in srgb,var(--surface-subtle) 82%,transparent)}.crank-flow-btn-utility{background:transparent;color:var(--text-muted)}.crank-flow-btn-danger{border-color:color-mix(in srgb,var(--error) 36%,var(--line));background:color-mix(in srgb,var(--error) 7%,transparent);color:color-mix(in srgb,var(--error) 82%,var(--text))}.crank-flow-estimate-editor{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding-top:.54rem;display:inline-flex;align-items:center;gap:.38rem;flex-wrap:wrap}.crank-flow-estimate-editor label{color:var(--text-muted);font-size:.82rem}.crank-flow-estimate-editor input{width:84px;padding:.36rem .46rem}.crank-flow-footer-actions{display:flex;justify-content:flex-end;gap:.45rem}.crank-summary-modal{width:min(560px,calc(100vw - 1.5rem))}.crank-summary-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.crank-insights-modal{width:min(880px,calc(100vw - 1.5rem))}.crank-insights-context{margin:0;border:1px solid var(--line);border-radius:var(--radius-1);background:color-mix(in srgb,var(--surface-subtle) 84%,transparent);padding:.5rem .56rem;color:var(--text-muted);font-size:.86rem}.crank-trend-section{display:grid;gap:.44rem}.crank-trend-head{display:flex;justify-content:space-between;align-items:center;gap:.45rem}.crank-trend-head h3{margin:0;font-size:.92rem}.crank-trend-legend{display:inline-flex;gap:.34rem;flex-wrap:wrap}.crank-legend-chip{border:1px solid var(--line);border-radius:999px;padding:.08rem .44rem;font-size:.72rem;color:var(--text-muted)}.crank-legend-chip.est{background:color-mix(in srgb,var(--text-muted) 16%,transparent)}.crank-legend-chip.act{background:color-mix(in srgb,var(--accent) 18%,transparent)}.crank-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.52rem}.crank-breakdown-grid article{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.5rem}.crank-breakdown-grid h3{margin:0;font-size:.86rem}.crank-breakdown-grid p{margin:.32rem 0 0;font-size:.82rem;color:var(--text-muted)}.momentum-copy{margin:0;color:var(--text-muted);font-size:.9rem}.momentum-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.momentum-stats article{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.5rem}.momentum-stats strong{display:block;font-size:1.1rem}.momentum-stats p{margin:.18rem 0 0;font-size:.84rem;color:var(--text-muted)}.momentum-chart{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.56rem;display:flex;gap:.45rem;align-items:end;min-height:156px;overflow-x:auto}.momentum-bar-wrap{min-width:56px;display:grid;gap:.24rem;justify-items:center}.crank-trend-point{min-width:88px;display:grid;gap:.24rem;justify-items:center}.crank-trend-bars{width:42px;height:112px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;align-items:end}.crank-trend-bar{border-radius:8px 8px 5px 5px}.crank-trend-bar.est{background:color-mix(in srgb,var(--text-muted) 50%,var(--surface))}.crank-trend-bar.act{background:color-mix(in srgb,var(--accent) 84%,var(--surface))}.crank-trend-point strong{font-size:.74rem;color:var(--text)}.crank-trend-point small{font-size:.68rem;color:var(--text-muted);text-align:center}.momentum-bar{width:28px;border-radius:8px;background:color-mix(in srgb,var(--accent) 84%,var(--surface))}.momentum-bar-wrap span{font-size:.72rem;color:var(--text-muted);text-align:center}.momentum-definitions p{margin:.28rem 0 0;font-size:.85rem;color:var(--text-muted)}.crank-insights-hints,.crank-insights-definitions{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--card);padding:.56rem}.crank-insights-hints h3,.crank-insights-definitions h3{margin:0;font-size:.9rem}.crank-insights-hints p,.crank-insights-definitions p{margin:.36rem 0 0;font-size:.84rem;color:var(--text-muted)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.2rem;background:radial-gradient(circle at 18% 16%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 40%),radial-gradient(circle at 82% 84%,color-mix(in srgb,var(--accent) 11%,transparent),transparent 36%),var(--bg)}.login-card{width:min(470px,100%);border:1px solid var(--line);border-radius:var(--radius-3);background:var(--surface);box-shadow:var(--shadow-soft);padding:1.1rem;display:grid;gap:.74rem}.login-card h1{margin:0;font-size:1.52rem;line-height:1.2}.login-card .sub{margin:0;color:var(--text-muted)}.login-card label{display:grid;gap:.3rem}.login-card-minimal{width:min(540px,100%);border-radius:24px;padding:.9rem;gap:.5rem;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 22px 42px #0a0c0f24,inset 0 0 0 1px color-mix(in srgb,var(--line) 40%,transparent)}.login-input-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.login-password-input{border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:color-mix(in srgb,var(--card) 92%,transparent);padding:.74rem .82rem;font-size:1rem;letter-spacing:.012em}.login-password-input::placeholder{color:color-mix(in srgb,var(--text-muted) 78%,var(--text))}.login-enter-btn{border-radius:12px;min-width:86px;height:44px;border-color:transparent;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 92%,#0a5147),color-mix(in srgb,var(--accent) 76%,#117464));color:#f7fffd;font-weight:600;letter-spacing:.01em}.login-enter-btn:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 96%,#08453d),color-mix(in srgb,var(--accent) 80%,#10695b))}.login-error{margin:.12rem 0 0;font-size:.84rem}.undo-toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:60;border:1px solid var(--line);border-radius:999px;padding:.32rem .42rem;background:var(--surface);box-shadow:var(--shadow-soft);display:inline-flex;align-items:center;gap:.5rem}.error-text{margin:0;color:var(--error)}.status-text,.global-error{margin:0;color:var(--text-muted)}.empty-column,.empty-strip{margin:0;color:var(--text-muted);font-size:.88rem}.card-closing{animation:cardCloseOut .24s ease-in forwards}.card-closing:after{content:"";position:absolute;right:.8rem;top:.8rem;width:8px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 70%,#ffffff);box-shadow:0 0 color-mix(in srgb,var(--accent) 36%,transparent);animation:sparkPulse .3s ease-out forwards}.card-closing-commitment:after{width:11px;height:11px}@keyframes cardCloseOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-4px) scale(.96)}}@keyframes sparkPulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 36%,transparent)}to{box-shadow:0 0 0 12px color-mix(in srgb,var(--accent) 0%,transparent)}}@media(max-width:1240px){.panel-header{grid-template-columns:1fr;align-items:start}.header-controls{justify-content:start}.commitment-items{grid-template-columns:repeat(5,minmax(240px,82vw))}}@media(max-width:900px){.capture-bar{grid-template-columns:1fr}.columns-row{grid-auto-columns:minmax(265px,88vw)}.weekly-stats-grid,.weekly-create-row{grid-template-columns:1fr}.crank-flow-shell{padding:.75rem;gap:.65rem}.crank-flow-hud-top{flex-direction:column;align-items:stretch}.crank-flow-hud-controls{width:100%;justify-content:space-between;flex-wrap:wrap}.crank-flow-timers article{min-width:96px}.crank-flow-viewport{perspective:980px}.crank-flow-rail{min-height:500px}.crank-flow-card{width:clamp(320px,82vw,640px);max-width:calc(100vw - 2.2rem)}.crank-flow-card--left,.crank-flow-card--right{width:clamp(138px,32vw,198px);filter:blur(calc(var(--flow-card-blur) * .5))}.crank-flow-quick-add input{min-width:min(66vw,270px)}.crank-breakdown-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.crank-flow-card{filter:none!important}.crank-flow-card--left,.crank-flow-card--right{transform:translate(-50%,-50%) translate(calc(var(--flow-card-offset-px) * .5)) scale(.88)!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
