/* Bio / Midnight Blue. Shared surfaces for every screen and dialog. */
:root{color-scheme:dark;--bg:#0b1220;--panel:#131e2f;--panel2:#1b2b42;--line:#28374c;--muted:#a0b1c8;--text:#edf3fd;--accent:#609eff;--cyan:#83b6ff;--blue:#6fc3ff;--purple:#94b2ff;--orange:#b4d0ff;--nav:#09111d;--link:#8ebdff}
body{background:var(--bg);color:var(--text)}
.sidebar{background:var(--nav);border-right:1px solid #1e2c40}.brand,.brand-word{color:#f1f6ff}.brand-symbol{background:#5594f4;color:#07162c}.project-label{color:#8ea3bf}
.nav-link{color:#95a9c4}.nav-link.active{background:#1b3152;color:#a9cdff}.nav-link:hover{background:#182a43;color:#f1f7ff}.nav-link.active:before{background:#639fff}.nav-link .nav-count{background:#294669;color:#bdd9ff}
.local-note{background:#111f31;border-color:#26364c;color:#c8d7ed}.local-note p,.sidebar .local-note p{color:#94a9c4}.sidebar .status-dot{background:#79aeff}.sidebar .avatar{background:#243953;color:#b7d2f9}.profile-link{color:#c2d7f6}.profile-copy strong{color:#e3ecfa}.profile-copy span,.sidebar .profile-copy span{color:#91a7c3}
.topbar{background:#0f1929;border-color:#233147}.breadcrumb{color:#93a7c2}.breadcrumb b{color:#dce8fa}.breadcrumb span{color:#5e789b}.role-switch{background:#0a1424;border-color:#293950}.role-switch button{color:#91a7c4}.role-switch button.selected{background:#223d62;color:#c6dfff;box-shadow:none}.top-actions>.icon-btn{color:#afc6e5}.icon-btn:hover{background:#22334d}.notification-dot{background:#71a9ff}
.mobile-brand{color:#f1f6ff}.mobile-brand .brand-symbol{background:#5594f4}.date-pill{background:#152238;border-color:#2a3c55;color:#b8cae3}
.hero{background:#163254;color:#fff;border:1px solid #2b507d;min-height:195px}.hero h2{color:#f3f7ff}.hero p,.hero .eyebrow,.hero-actions span{color:#c5d9f5}.hero .btn{background:#4a8bea;color:#fff;border:1px solid #66a1f4;box-shadow:none}.hero .btn:hover{background:#5898f3}.hero-art{opacity:.78}
.btn{background:#286cdf;color:#fff;border:1px solid #4a8af0}.btn.secondary{background:#203654;color:#b9d6ff;border-color:#34527a}.btn.ghost{background:#162338;color:#bdd0ea;border-color:#344763}.btn.danger{background:#3a222a;color:#ffc0c3;border-color:#68404a}.text-btn,.accent{color:var(--link)}.text-btn:hover{color:#c6dfff}
.card,.metric-card{background:var(--panel);border-color:#27374d;box-shadow:none}.metric-card:hover{border-color:#527eae;box-shadow:0 5px 16px #00000012}.metric-head{color:#b9cbe3}.metric-head>.icon{background:color-mix(in srgb,var(--metric) 12%,var(--panel))}.metric-head .arrow .icon{color:#7f9bbd}.metric-value{color:#eff5ff}.metric-value small{color:#9eb3ce}.metric-foot,.metric-foot b{color:#a5c5f2}.metric-foot b{color:var(--metric)}
.card-head p,.footer,.goal-node .label,.goal-caption,.chart-footer,.settings-row p,.onboarding-note,.field-hint,.range-labels,.task-copy span,.task-time,.metric-foot{color:var(--muted)}
.segmented{background:#0e192a;border-color:#2b3d57}.segmented button{color:#94aac8}.segmented button.active{background:#253e60;color:#d4e6ff;box-shadow:none}.chart-tabs{border-color:#2b3c54}.chart-tabs button{color:#9fb3ce}.chart-tabs button.active{border-color:#6ca7ff;color:#9cc5ff}.chart text{fill:#93aaca}
.goal-node strong,.group-stats strong{color:#e3edfc}.goal-node .small{color:#a4b6ce}.goal-node.current strong{color:#82b2ff}.goal-line{background:#3a5272}.goal-line:after{color:#7694b7}.goal-caption b{color:#bed8ff}.progress-track{background:#243650}.progress-track span{background:#5b99ef}
.task-row{border-color:#26364b}.task-copy strong{color:#d5e3f7}.task-row.done strong,.task-row.done .task-copy span{color:#7f97b6}.check-btn{border-color:#466184;color:#fff}.check-btn.checked{background:#377cde;border-color:#5598f7}.task-row:hover .task-copy strong,button.task-row:hover .task-copy strong{color:#9ac3ff}.mini-ring{background:conic-gradient(#73aaff var(--angle),#283b57 0)}.plan-progress{color:#a8bedb}
.observer-note{background:#172b44}.observer-note strong{color:#aacffc}.observer-note p{color:#a3bcd9}.observer-note>.icon{color:#89baff}.notice{background:#142c43;border-color:#2a4665;color:#b6cde7}.badge{background:#203951;color:#a9d4ff}.badge.gray{background:#24354a;color:#b9c9de}.badge.purple{background:#293756;color:#b7c9ff}.empty h3{color:#d3e4fd}.alert{background:#382b22;border-color:#6b5137;color:#f5d2ac}
.avatar{background:#233c58;color:#bcd9fd}.entry-date strong{color:#bfd7f7}.entry-row,.settings-row,.plan-item,.feed-row,.group-stats,.data-table td,.data-table th{border-color:#29394f}.entry-details span,.entry-date span,.feed-row span,.data-table th{color:#9ab0cd}.data-table{color:#d1e1f5}.participant-card .row p{color:#9cafca}
.timeline-step{border-color:#3c5272}.timeline-step:before{background:#486383;border-color:var(--panel)}.timeline-step.active:before{background:#71a8ff}.category-icon{background:#203a58;color:#9bc6ff}.category-icon.purple{background:#2a3455;color:#adbdff}.category-icon.blue{background:#203a58;color:#8bcaff}
.switch{background:#405675}.switch:before{background:#a2b7d2}.switch.on{background:#4689e9}.switch.on:before{background:#fff}
dialog{background:var(--panel);border-color:#354c6c;box-shadow:0 25px 90px #0009}dialog::backdrop{background:#030814b8}.modal-header{border-color:#2c3e57}.modal-body{background:var(--panel)}.modal-footer{background:#111c2d;border-color:#2c3e57}.modal-header p{color:#a1b5cf}.field-label{color:#c0d3ed}.field-label b{color:#9fcaff}
.field input:not([type=range]),.field select,.field textarea,.form-input{background:#0c1728;border-color:#3b5170;color:#e5f0ff}.field input::placeholder,.field textarea::placeholder{color:#8096b5}.field input:focus,.field textarea:focus,.field select:focus,.form-input:focus{border-color:#6fa8ff}.field input[type=range]{accent-color:#639fff}
.choice{background:#142239;border-color:#354c6b;color:#b3cbe9}.choice.active{background:#24446c;border-color:#649df0;color:#e0edff}.choice:hover{border-color:#72a5e9}.sleep-preview{background:#1b3552;color:#b6d8ff}.stepper span{background:#2a3e5b}.stepper span.active{background:#6eaaff}.step-label{color:#a4c9f8}.confirmation-icon{background:#213c5b;color:#91c2ff}.history-item{border-color:#3e5a7c}.reaction-pad{background:#203958;color:#b3d2ff}.reaction-pad.ready{background:#347adb;color:white}.reaction-pad.waiting{background:#403124;color:#f0c8a0}
.skip-link{background:#244974;color:#fff}.legend i.dashed{border-color:#809bbb}#toast{background:#203c5c;border-color:#456a98;color:#e2edff;box-shadow:0 8px 25px #0006}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[data-chart-stage]:focus-visible{outline:2px solid #8ebcff;outline-offset:4px}
/* Data exploration: the plot is an interactive, keyboard-accessible date picker. */
.analytics-card{overflow:hidden}.analytics-card .card-head{margin-bottom:19px}.chart-period{gap:1px;flex-shrink:0}.chart-period button{padding:6px 10px;font-size:11px;min-height:32px}.analytics-card .chart-tabs{margin-bottom:19px;gap:20px}.analytics-card .chart-tabs button{display:flex;align-items:center;gap:7px;min-height:36px}.chart-tabs .icon{height:15px;width:15px}.chart-summary{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.chart-summary>div>span{display:block;color:#9fb3cd;font-size:11px}.chart-summary strong{display:block;font-size:34px;line-height:1.35;letter-spacing:-1px;font-weight:550;color:#f0f6ff;font-variant-numeric:tabular-nums}.chart-summary strong small{font-size:12px;letter-spacing:0;font-weight:400;color:#a1b7d4}.chart-summary-side{text-align:right}.chart-summary-side b{font-size:11px;font-weight:500;color:#b6cdee;display:block;margin-top:9px}
.chart-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.chart-style-control{display:flex;gap:4px}.chart-style-control button{padding:6px 11px;background:transparent;border:1px solid transparent;border-radius:7px;font-size:11px;color:#95acc9;min-height:33px}.chart-style-control button.active{background:#1f3552;border-color:#345379;color:#c9e1ff}.chart-style-control button:hover{color:#eef6ff}.chart-goal-control{display:inline-flex;align-items:center;gap:7px;font-size:11px;background:transparent;color:#7e96b6;border:1px solid #2f435d;border-radius:7px;padding:6px 9px;min-height:33px}.chart-goal-control.active{color:#b2c9e8;border-color:#4c6588}.goal-dash{width:17px;border-top:1px dashed currentColor}.chart-goal-control:not(.active) .goal-dash{opacity:.3}
.interactive-chart{width:100%;min-width:0}.chart-stage{width:100%;position:relative;border-radius:8px;cursor:crosshair;touch-action:pan-y;outline-offset:4px}.chart-v2{display:block;width:100%;height:auto;overflow:visible;font-variant-numeric:tabular-nums}.chart-v2 text{fill:#92a9c8;font-size:11px;font-family:var(--font)}.chart-v2 .axis-unit{font-size:10px;fill:#7e97ba}.chart-gridline{stroke:#2a3b52;stroke-width:1;stroke-dasharray:3 5}.chart-target-line{stroke:#819bbd;stroke-width:1.2;stroke-dasharray:6 5}.chart-data-line{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.chart-data-dot{stroke:var(--panel);stroke-width:2}.chart-cursor{stroke:#9ab8df;stroke-width:1;stroke-dasharray:4 4}.chart-active-dot{stroke:#e2edff;stroke-width:2.5}.chart-bar{transition:fill-opacity .15s}.chart-bar:hover{fill-opacity:1}
.chart-tooltip{position:absolute;left:50%;top:8%;transform:translate(-50%,-4px);opacity:0;pointer-events:none;min-width:148px;border-radius:10px;padding:11px 14px;background:#223954f5;border:1px solid #4b6b91;box-shadow:0 6px 20px #0004;z-index:2;transition:opacity .12s,transform .12s;backdrop-filter:blur(8px)}.chart-tooltip.visible{opacity:1;transform:translate(-50%,0)}.chart-tooltip span{display:block;font-size:11px;color:#c5d6ed}.chart-tooltip strong{display:block;font-size:23px;letter-spacing:-.3px;color:#fff;margin:2px 0}.chart-tooltip small{font-size:10px;color:#a8bfdd}.chart-readout{min-height:39px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #26384e;margin:2px 0 12px;padding-bottom:10px;font-size:11px;color:#a2b9d6}.chart-selected-value{color:var(--chart-color);font-size:12px;font-weight:550}.chart-interaction-hint{font-size:10px;margin-left:auto;color:#8299b7}.analytics-card .chart-footer{font-size:10px;flex-wrap:wrap;gap:8px;padding-top:0}.chart-empty{position:absolute;top:36%;left:12%;width:80%;text-align:center;color:#c7dcf8;font-size:14px;background:#131e2fe8;padding:10px;border-radius:8px}.chart-empty span{font-size:11px;color:#9bb3d3}
@media(max-width:1200px){.analytics-card .chart-tabs{gap:15px}.chart-period button{font-size:10px;padding:5px 8px}.chart-summary strong{font-size:31px}.chart-summary-side b{font-size:10px}.chart-interaction-hint{display:none}.analytics-card .card-head{flex-wrap:wrap}.chart-summary{gap:12px}}
@media(max-width:700px){.sidebar{background:#101b2df7;border-top-color:#2b3e58;box-shadow:0 -6px 20px #03081130}.nav-link{color:#8da7c7}.nav-link.active{background:#1e3658;color:#b7d7ff}.nav-link:hover{color:#dcecff}.topbar{background:#0e192b}.mobile-brand{color:#ecf4ff}.hero{background:#163254;border-color:#2b507d;min-height:234px}.hero-art{opacity:.36}.card{border-color:#2a3b52}.analytics-card .card-head{gap:15px;align-items:flex-start}.analytics-card .card-head h2{font-size:18px}.chart-period button{min-height:35px;padding:5px 9px;font-size:10px}.analytics-card .chart-tabs{gap:18px;margin-bottom:18px}.analytics-card .chart-tabs button{font-size:11px;gap:6px}.chart-tabs .icon{display:none}.chart-summary strong{font-size:32px}.chart-summary-side b{font-size:10px;max-width:144px}.chart-summary>div>span{font-size:10px}.chart-controls{gap:8px;margin-bottom:13px}.chart-style-control button{min-height:37px;font-size:11px;padding:7px 10px}.chart-goal-control{font-size:10px;min-height:37px;padding:7px 8px}.chart-v2{min-height:165px}.chart-v2 text{font-size:13px}.chart-v2 .axis-unit{font-size:11px}.chart-tooltip{min-width:130px;padding:9px 12px}.chart-tooltip strong{font-size:20px}.chart-tooltip span{font-size:10px}.chart-readout{margin-top:8px}.chart-footer{line-height:1.6}.analytics-card .chart-footer .legend{font-size:10px}.field-grid{align-items:end}}
@media(max-width:380px){.analytics-card .chart-tabs{gap:13px}.chart-summary-side b{max-width:120px}.chart-period button{padding:5px 8px}.chart-controls{flex-wrap:wrap}.chart-tooltip{min-width:116px;padding:8px 10px}.chart-summary strong{font-size:30px}.chart-v2{min-height:150px}}
@media(prefers-reduced-motion:reduce){.chart-tooltip,.chart-bar{transition:none}}

@media(max-width:700px){.chart-v2 text{font-size:20px}.chart-v2 .axis-unit{font-size:18px}.chart-data-line{stroke-width:3.3}.chart-v2{min-height:0}.chart-gridline{stroke-width:1.5}}

/* Each observation has a stable color; movement follows exploration of the data. */
.analytics-card{border-top:2px solid color-mix(in srgb,var(--chart-color) 64%,var(--line))}
.analytics-card .chart-tabs button{transition:color .2s,border-color .2s}
.analytics-card .chart-tabs .icon{color:var(--tab-color)}
.analytics-card .chart-tabs button.active{color:var(--tab-color);border-color:var(--tab-color)}
.analytics-card .chart-summary strong{color:var(--chart-color)}
.analytics-card .chart-style-control button.active{color:var(--chart-color);border-color:color-mix(in srgb,var(--chart-color) 45%,var(--line));background:color-mix(in srgb,var(--chart-color) 12%,var(--panel))}
.chart-stage{background:linear-gradient(180deg,color-mix(in srgb,var(--chart-color) 5%,transparent),transparent 85%)}
.chart-data-line{stroke-width:3.2}
.chart-data-glow{fill:none;stroke-width:11;stroke-linecap:round;stroke-linejoin:round;opacity:.13;pointer-events:none}
.chart-selection,.chart-cursor{transition:transform .16s ease-out,opacity .15s;pointer-events:none}
.chart-cursor{stroke:var(--chart-color);stroke-opacity:.65}
.chart-data-dot{transform-box:fill-box;transform-origin:center;stroke-width:2}
.chart-active-dot{stroke:#f4f8ff;stroke-width:2}
.chart-active-halo{pointer-events:none}
.chart-bar{transform-box:fill-box;transform-origin:center bottom;opacity:.85;transition:opacity .18s,stroke .18s;stroke:transparent;stroke-width:1.5}
.chart-bar.selected,.chart-bar:hover{opacity:1;stroke:var(--chart-color)}
.chart-tooltip{border-color:color-mix(in srgb,var(--chart-color) 52%,var(--line));background:color-mix(in srgb,var(--chart-color) 14%,#131e2f);box-shadow:0 8px 28px #0006;transition:opacity .15s,transform .15s,left .16s ease-out}
.chart-tooltip strong{color:var(--chart-color)}
.chart-tooltip.visible{border-top:2px solid var(--chart-color)}
.metric-card .sparkline{filter:drop-shadow(0 2px 5px color-mix(in srgb,var(--metric) 25%,transparent))}

@keyframes chart-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes chart-area{from{opacity:0}to{opacity:1}}
@keyframes chart-dot{from{opacity:0;transform:scale(.25)}to{opacity:1;transform:scale(1)}}
@keyframes chart-rise{from{transform:scaleY(0);opacity:.3}to{transform:scaleY(1);opacity:.85}}
@keyframes chart-summary-in{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 .chart-pending :is(.chart-data-line,.chart-data-glow,.chart-data-dot,.chart-data-area,.chart-bar),.sparkline.chart-pending{opacity:0}
 .chart-revealing :is(.chart-data-line,.chart-data-glow){stroke-dasharray:1;animation:chart-draw var(--draw-duration,700ms) cubic-bezier(.22,.61,.36,1) var(--reveal-delay,0ms) backwards}
 .chart-revealing .chart-data-area{animation:chart-area 750ms ease-out var(--reveal-delay,0ms) backwards}
 .chart-revealing .chart-data-dot{animation:chart-dot 300ms ease-out var(--reveal-delay,0ms) backwards}
 .chart-revealing .chart-bar{animation:chart-rise 650ms cubic-bezier(.22,.61,.36,1) var(--reveal-delay,0ms) backwards}
 .sparkline.chart-revealing polyline{stroke-dasharray:1;animation:chart-draw 850ms ease-out backwards}
 .analytics-card .chart-summary strong{animation:chart-summary-in 320ms ease-out}
}
@media(max-width:700px){
 .analytics-card .chart-tabs{gap:12px}
 .analytics-card .chart-tabs button{gap:5px}
 .analytics-card .chart-tabs button:before{content:'';width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--tab-color)}
 .chart-data-line{stroke-width:3.8}
}
@media(max-width:380px){.analytics-card .chart-tabs{gap:9px}.analytics-card .chart-tabs button{font-size:10px}}
@media(prefers-reduced-motion:reduce){
 .analytics-card *,.interactive-chart *,.sparkline *{animation:none!important;transition:none!important}
}

/* Keep the timeline intact while distinguishing unmeasured intervals. */
.chart-gap-line{fill:none;stroke:#899dbb;stroke-width:2.5;stroke-dasharray:5 6;stroke-linecap:round;stroke-linejoin:round}
.chart-gap-area{opacity:.24}
.chart-gap-dot{fill:var(--panel);stroke:#aebdd2;stroke-width:1.7}
.chart-gap-tick{stroke:#8fa3bf;stroke-width:1.5;stroke-linecap:round}
.chart-selection.is-missing .chart-active-dot{fill:var(--panel);stroke:#d1dcec;stroke-width:2}
.chart-selection.is-missing .chart-active-halo{fill:#94a7c0;stroke:#94a7c0}
.chart-gap-note{display:flex;align-items:center;gap:7px;color:#aabbd1;font-size:11px;line-height:1.5;margin:1px 0 14px}
.gap-ring{width:7px;height:7px;flex-shrink:0;border:1.5px solid #aebdd2;border-radius:50%}
.chart-gap-explanation{border-top:1px solid var(--line);margin-top:12px;padding-top:3px;font-size:11px;color:var(--muted)}
.chart-gap-explanation summary{cursor:pointer;padding:10px 0;color:#b0c9eb;width:fit-content}
.chart-gap-explanation summary:focus-visible{outline:2px solid #8ebcff;outline-offset:2px;border-radius:3px}
.chart-gap-explanation p{max-width:72ch;line-height:1.65;margin:0 0 8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:no-preference){
 .chart-pending :is(.chart-gap-line,.chart-gap-area,.chart-gap-dot){opacity:0}
 .chart-revealing :is(.chart-gap-line,.chart-gap-dot){animation:chart-area 700ms ease-out backwards}
}
@media(max-width:700px){
 .analytics-card .card-head{flex-wrap:nowrap;align-items:center;gap:8px;margin-bottom:12px}
 .analytics-card .card-head h2{font-size:16px}
 .analytics-card .chart-period button{padding-left:7px;padding-right:7px}
 .analytics-card .chart-tabs{margin-bottom:12px}
 .analytics-card .chart-summary{margin-bottom:10px}
 .analytics-card .chart-controls{margin-bottom:8px}
 .chart-gap-line{stroke-width:3.3;stroke-dasharray:7 9}
 .chart-gap-dot{r:6;stroke-width:2.5}
 .chart-gap-explanation summary{min-height:44px;display:flex;align-items:center;gap:7px}
 .chart-gap-explanation summary:before{content:'›';transition:transform .15s}
 .chart-gap-explanation[open] summary:before{transform:rotate(90deg)}
 .chart-gap-explanation summary::-webkit-details-marker{display:none}
}

/* Personal goal colours match the metric charts; they do not grade health. */
.goal-card { border-color: color-mix(in srgb, var(--goal-color) 19%, #293b51); }
.goal-card .goal-icon { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 13px; color: var(--goal-color); background: color-mix(in srgb, var(--goal-color) 10%, transparent); }
.goal-card .goal-icon .icon { width: 22px; height: 22px; }
.goal-card .goal-node.current strong, .goal-card .goal-caption b { color: var(--goal-color); }
.goal-card .goal-node.current .small:after { color: var(--goal-color); }
/* Subpixel ripple (±0.45px) keeps the scale visually straight. */
.goal-card .progress-track { height: 32px; overflow: visible; background: transparent; border-radius: 0; }
.goal-ribbon { display: block; width: 100%; height: 32px; overflow: visible; }
.goal-ribbon path { fill: none; stroke-width: 7px; stroke-linecap: round; }
.goal-ribbon-track { stroke: color-mix(in srgb, var(--goal-color) 10%, #203047); }
.goal-card .goal-fill { transition: none; }
.goal-caption { align-items: center; }
.goal-caption-value { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.goal-percent { font-variant-numeric: tabular-nums; min-width: 4ch; text-align: right; }
.goal-wave-toggle { display: inline-grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; background: transparent; border: 1px solid transparent; border-radius: 12px; color: var(--goal-color); }
.goal-wave-toggle[hidden] { display: none; }
.goal-wave-toggle:hover, .goal-wave-toggle[aria-pressed=true] { background: color-mix(in srgb, var(--goal-color) 10%, transparent); }
.goal-wave-toggle svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.wave-play-symbol, .goal-wave-paused .wave-pause-symbol { display: none; }
.goal-wave-paused .wave-play-symbol { display: block; }
@keyframes goal-ribbon-flow {
 0% { d: path("M0 16.000 C27.778 16.236 55.556 16.450 83.333 16.450 C111.111 16.450 138.889 16.236 166.667 16.000 C194.444 15.764 222.222 15.550 250.000 15.550 C277.778 15.550 305.556 15.764 333.333 16.000 C361.111 16.236 388.889 16.450 416.667 16.450 C444.444 16.450 472.222 16.236 500.000 16.000 C527.778 15.764 555.556 15.550 583.333 15.550 C611.111 15.550 638.889 15.764 666.667 16.000 C694.444 16.236 722.222 16.450 750.000 16.450 C777.778 16.450 805.556 16.236 833.333 16.000 C861.111 15.764 888.889 15.550 916.667 15.550 C944.444 15.550 972.222 15.764 1000.000 16.000"); }
 12.5% { d: path("M0 15.682 C27.778 15.848 55.556 16.152 83.333 16.318 C111.111 16.485 138.889 16.485 166.667 16.318 C194.444 16.152 222.222 15.848 250.000 15.682 C277.778 15.515 305.556 15.515 333.333 15.682 C361.111 15.848 388.889 16.152 416.667 16.318 C444.444 16.485 472.222 16.485 500.000 16.318 C527.778 16.152 555.556 15.848 583.333 15.682 C611.111 15.515 638.889 15.515 666.667 15.682 C694.444 15.848 722.222 16.152 750.000 16.318 C777.778 16.485 805.556 16.485 833.333 16.318 C861.111 16.152 888.889 15.848 916.667 15.682 C944.444 15.515 972.222 15.515 1000.000 15.682"); }
 25% { d: path("M0 15.550 C27.778 15.550 55.556 15.764 83.333 16.000 C111.111 16.236 138.889 16.450 166.667 16.450 C194.444 16.450 222.222 16.236 250.000 16.000 C277.778 15.764 305.556 15.550 333.333 15.550 C361.111 15.550 388.889 15.764 416.667 16.000 C444.444 16.236 472.222 16.450 500.000 16.450 C527.778 16.450 555.556 16.236 583.333 16.000 C611.111 15.764 638.889 15.550 666.667 15.550 C694.444 15.550 722.222 15.764 750.000 16.000 C777.778 16.236 805.556 16.450 833.333 16.450 C861.111 16.450 888.889 16.236 916.667 16.000 C944.444 15.764 972.222 15.550 1000.000 15.550"); }
 37.5% { d: path("M0 15.682 C27.778 15.515 55.556 15.515 83.333 15.682 C111.111 15.848 138.889 16.152 166.667 16.318 C194.444 16.485 222.222 16.485 250.000 16.318 C277.778 16.152 305.556 15.848 333.333 15.682 C361.111 15.515 388.889 15.515 416.667 15.682 C444.444 15.848 472.222 16.152 500.000 16.318 C527.778 16.485 555.556 16.485 583.333 16.318 C611.111 16.152 638.889 15.848 666.667 15.682 C694.444 15.515 722.222 15.515 750.000 15.682 C777.778 15.848 805.556 16.152 833.333 16.318 C861.111 16.485 888.889 16.485 916.667 16.318 C944.444 16.152 972.222 15.848 1000.000 15.682"); }
 50% { d: path("M0 16.000 C27.778 15.764 55.556 15.550 83.333 15.550 C111.111 15.550 138.889 15.764 166.667 16.000 C194.444 16.236 222.222 16.450 250.000 16.450 C277.778 16.450 305.556 16.236 333.333 16.000 C361.111 15.764 388.889 15.550 416.667 15.550 C444.444 15.550 472.222 15.764 500.000 16.000 C527.778 16.236 555.556 16.450 583.333 16.450 C611.111 16.450 638.889 16.236 666.667 16.000 C694.444 15.764 722.222 15.550 750.000 15.550 C777.778 15.550 805.556 15.764 833.333 16.000 C861.111 16.236 888.889 16.450 916.667 16.450 C944.444 16.450 972.222 16.236 1000.000 16.000"); }
 62.5% { d: path("M0 16.318 C27.778 16.152 55.556 15.848 83.333 15.682 C111.111 15.515 138.889 15.515 166.667 15.682 C194.444 15.848 222.222 16.152 250.000 16.318 C277.778 16.485 305.556 16.485 333.333 16.318 C361.111 16.152 388.889 15.848 416.667 15.682 C444.444 15.515 472.222 15.515 500.000 15.682 C527.778 15.848 555.556 16.152 583.333 16.318 C611.111 16.485 638.889 16.485 666.667 16.318 C694.444 16.152 722.222 15.848 750.000 15.682 C777.778 15.515 805.556 15.515 833.333 15.682 C861.111 15.848 888.889 16.152 916.667 16.318 C944.444 16.485 972.222 16.485 1000.000 16.318"); }
 75% { d: path("M0 16.450 C27.778 16.450 55.556 16.236 83.333 16.000 C111.111 15.764 138.889 15.550 166.667 15.550 C194.444 15.550 222.222 15.764 250.000 16.000 C277.778 16.236 305.556 16.450 333.333 16.450 C361.111 16.450 388.889 16.236 416.667 16.000 C444.444 15.764 472.222 15.550 500.000 15.550 C527.778 15.550 555.556 15.764 583.333 16.000 C611.111 16.236 638.889 16.450 666.667 16.450 C694.444 16.450 722.222 16.236 750.000 16.000 C777.778 15.764 805.556 15.550 833.333 15.550 C861.111 15.550 888.889 15.764 916.667 16.000 C944.444 16.236 972.222 16.450 1000.000 16.450"); }
 87.5% { d: path("M0 16.318 C27.778 16.485 55.556 16.485 83.333 16.318 C111.111 16.152 138.889 15.848 166.667 15.682 C194.444 15.515 222.222 15.515 250.000 15.682 C277.778 15.848 305.556 16.152 333.333 16.318 C361.111 16.485 388.889 16.485 416.667 16.318 C444.444 16.152 472.222 15.848 500.000 15.682 C527.778 15.515 555.556 15.515 583.333 15.682 C611.111 15.848 638.889 16.152 666.667 16.318 C694.444 16.485 722.222 16.485 750.000 16.318 C777.778 16.152 805.556 15.848 833.333 15.682 C861.111 15.515 888.889 15.515 916.667 15.682 C944.444 15.848 972.222 16.152 1000.000 16.318"); }
 100% { d: path("M0 16.000 C27.778 16.236 55.556 16.450 83.333 16.450 C111.111 16.450 138.889 16.236 166.667 16.000 C194.444 15.764 222.222 15.550 250.000 15.550 C277.778 15.550 305.556 15.764 333.333 16.000 C361.111 16.236 388.889 16.450 416.667 16.450 C444.444 16.450 472.222 16.236 500.000 16.000 C527.778 15.764 555.556 15.550 583.333 15.550 C611.111 15.550 638.889 15.764 666.667 16.000 C694.444 16.236 722.222 16.450 750.000 16.450 C777.778 16.450 805.556 16.236 833.333 16.000 C861.111 15.764 888.889 15.550 916.667 15.550 C944.444 15.550 972.222 15.764 1000.000 16.000"); }
}
@media (prefers-reduced-motion: no-preference) {
 .goal-motion-enabled .goal-ribbon path { animation: goal-ribbon-flow 7s linear infinite; animation-play-state: paused; }
 .goal-motion-enabled.goal-in-view:not(.goal-wave-paused) .goal-ribbon path { animation-play-state: running; }
}
@media (prefers-reduced-motion: reduce) {
 .goal-ribbon path { animation: none !important; }
 .goal-wave-toggle { display: none; }
}
