:root{--color-bg:#151c1e;--color-bg-grid-line:#2b465066;--color-surface:#21292c;--color-surface-hover:#273134;--color-border:#3a464a;--color-text:#e7edef;--color-text-muted:#9daaaf;--routine-pink:#eba2bb;--routine-cyan:#8dd4e2;--routine-purple:#c2abe3;--routine-red:#e89a92;--chart-cat-1:#4987df;--chart-cat-2:#1999b3;--chart-cat-3:#bd890f;--chart-cat-4:#2e9e53;--chart-cat-5:#8f5cd6;--chart-cat-6:#dd4c3c;--chart-cat-7:#e05281;--chart-cat-8:#d36617;--chart-sequential:var(--chart-cat-1);--chart-other:#6a777c;--radius-md:.75rem;--radius-lg:1rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem}*{box-sizing:border-box}body{background-color:var(--color-bg);background-image:repeating-linear-gradient(0deg, var(--color-bg-grid-line) 0 1px, transparent 1px 32px), repeating-linear-gradient(90deg, var(--color-bg-grid-line) 0 1px, transparent 1px 32px);min-height:100vh;color:var(--color-text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.step-flow{gap:var(--space-md);padding:var(--space-lg);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--accent) 30%, var(--color-border));flex-direction:column;display:flex}.step-flow h2{margin:0}.step-flow .hint{color:var(--color-text-muted);margin:-.5rem 0 0;font-size:.9rem}.step-flow .error{color:var(--routine-red);margin:0;font-size:.9rem}.step-flow .type-options{gap:var(--space-sm);flex-direction:column;display:flex}.step-flow .type-option{padding:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-hover);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.step-flow .type-option:not(:disabled):hover{border-color:var(--accent)}.step-flow .type-option:disabled{opacity:.45;cursor:not-allowed}.step-flow .type-label{font-weight:600}.step-flow .type-hint{color:var(--color-text-muted);font-size:.85rem}.step-flow form{gap:var(--space-sm);display:flex}.step-flow label{color:var(--color-text-muted);flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}.step-flow input,.step-flow select,.step-flow textarea{font:inherit;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:.5rem;padding:.55rem .7rem}.step-flow textarea{resize:vertical}.step-flow input:focus,.step-flow select:focus,.step-flow textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.step-flow input[type=checkbox]{width:auto;accent-color:var(--accent);background:0 0;border:none;padding:0}.step-flow .checkbox-label{color:var(--color-text);flex-direction:row;align-items:center;gap:.5rem}.step-flow form input{flex:1}.step-flow .duration-row{gap:var(--space-sm);display:flex}.step-flow .duration-row input{flex:1}.step-flow button{font:inherit;background:var(--accent);color:var(--color-bg);cursor:pointer;border:none;border-radius:.5rem;padding:.6rem 1rem;font-weight:600}.step-flow button:disabled{opacity:.6;cursor:not-allowed}.step-flow .text-btn{color:var(--color-text-muted);background:0 0;align-self:flex-start;padding:.4rem 0;font-weight:500}.step-flow .danger-btn{background:var(--routine-red)}.step-flow .row-actions{justify-content:space-between;align-items:center;display:flex}.step-flow .image-hint{margin:-.25rem 0 0}.step-flow .picker-grid{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}.step-flow .picker-tile{padding:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-hover);color:var(--color-text);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:.4rem;display:flex}.step-flow .picker-tile:hover{border-color:var(--accent)}.step-flow .color-swatch{background:var(--accent);border-radius:50%;width:1.5rem;height:1.5rem}.step-card{width:100%;padding:var(--space-md);border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 10%, var(--color-surface));border:1px solid color-mix(in srgb, var(--accent) 30%, var(--color-border));font:inherit;color:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:.5rem;display:flex;position:relative}.step-card-main{align-items:center;gap:var(--space-md);width:100%;display:flex}.step-card-notes{border-top:1px solid color-mix(in srgb, var(--accent) 20%, var(--color-border));color:var(--color-text-muted);white-space:pre-wrap;margin:0;padding-top:.5rem;font-size:.85rem}.step-card:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--color-border))}.step-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.step-card-image{object-fit:cover;background:color-mix(in srgb, var(--accent) 20%, var(--color-surface));border-radius:.6rem;flex-shrink:0;width:3rem;height:3rem}.step-card-image--empty{background:color-mix(in srgb, var(--accent) 20%, transparent)}.step-card-info{flex-direction:column;gap:.25rem;min-width:0;display:flex}.step-card-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.step-card-meta{color:var(--color-text-muted);gap:.75rem;font-size:.85rem;display:flex}.review-badge{background:var(--routine-red);width:1.4rem;height:1.4rem;color:var(--color-bg);box-shadow:0 0 0 2px var(--color-bg);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-.45rem;right:-.45rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.topbar.svelte-12qhfyh{max-width:48rem;padding:var(--space-md) var(--space-lg);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.logo.svelte-12qhfyh{letter-spacing:.02em;color:var(--color-text);font-size:1.15rem;font-weight:700;text-decoration:none}.logo.svelte-12qhfyh:hover{color:color-mix(in srgb, var(--color-text) 80%, transparent)}nav.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--color-text-muted);border-bottom:2px solid #0000;padding:.4rem .1rem;font-weight:500;text-decoration:none}nav.svelte-12qhfyh a:where(.svelte-12qhfyh):hover{color:var(--color-text)}nav.svelte-12qhfyh a[aria-current=page]:where(.svelte-12qhfyh){color:var(--color-text);border-bottom-color:var(--routine-cyan)}nav.svelte-12qhfyh{align-items:center;gap:var(--space-md);display:flex}.logout-btn.svelte-12qhfyh{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.4rem .1rem;font-weight:500}.logout-btn.svelte-12qhfyh:hover{color:var(--color-text)}
