@layer iv.components{.iv-progress{--iv-progress-size: .5rem;--iv-progress-color: var(--iv-color-primary);--iv-progress-track: color-mix(in oklab, var(--iv-color-border) 55%, var(--iv-color-surface));--iv-progress-track-subtle: var(--iv-color-primary-subtle);--iv-progress-groove: inset 0 1px 2px var(--iv-color-hover-surface);inline-size:100%;block-size:var(--iv-progress-size);appearance:none;color:var(--iv-progress-color);background-color:var(--iv-progress-track);border:var(--iv-border-width) solid var(--iv-color-border);border-radius:var(--iv-radius-full);box-shadow:var(--iv-progress-groove);display:block;overflow:hidden}.iv-progress::-webkit-progress-bar{background-color:var(--iv-progress-track)}.iv-progress::-webkit-progress-value{background-image:linear-gradient(90deg,color-mix(in oklab,var(--iv-progress-color) 78%,var(--iv-color-surface)),var(--iv-progress-color));border-radius:var(--iv-radius-full)}.iv-progress::-moz-progress-bar{background-image:linear-gradient(90deg,color-mix(in oklab,var(--iv-progress-color) 78%,var(--iv-color-surface)),var(--iv-progress-color));border-radius:var(--iv-radius-full)}.iv-progress--sm{--iv-progress-size: .25rem}.iv-progress--lg{--iv-progress-size: 1rem;border-radius:var(--iv-radius-full)}.iv-progress--success{--iv-progress-color: var(--iv-color-success);--iv-progress-track-subtle: var(--iv-color-success-subtle)}.iv-progress--warning{--iv-progress-color: var(--iv-color-warning);--iv-progress-track-subtle: var(--iv-color-warning-subtle)}.iv-progress--danger{--iv-progress-color: var(--iv-color-danger);--iv-progress-track-subtle: var(--iv-color-danger-subtle)}.iv-progress:indeterminate{background-image:linear-gradient(90deg,transparent 0%,var(--iv-progress-color) 50%,transparent 100%);animation:iv-progress-slide 1.4s var(--iv-ease-out) infinite;background-repeat:no-repeat;background-size:40% 100%}.iv-progress:indeterminate::-moz-progress-bar{background-color:#0000}.iv-progress:indeterminate::-webkit-progress-bar{background-color:#0000}@keyframes iv-progress-slide{0%{background-position:-40% 0}to{background-position:140% 0}}@media(prefers-reduced-motion:reduce){.iv-progress:indeterminate{background-image:none;background-color:var(--iv-progress-track-subtle);animation:none}}@media(forced-colors:active){.iv-progress{box-shadow:none;background-color:canvas;border-color:canvastext}.iv-progress::-webkit-progress-bar{background-color:canvas}.iv-progress::-webkit-progress-value{forced-color-adjust:none;background-color:highlight;background-image:none}.iv-progress::-moz-progress-bar{forced-color-adjust:none;background-color:highlight;background-image:none}.iv-progress:indeterminate{background-color:canvas;background-image:none;animation:none}.iv-progress:indeterminate::-webkit-progress-value{background-color:#0000}.iv-progress:indeterminate::-moz-progress-bar{background-color:#0000}}}.tool{position:relative;margin:2rem 0;padding:clamp(1.5rem,3vw,3rem);background:#fff;border:1px solid var(--fdv-line);border-radius:22px;box-shadow:var(--sh-2)}.tool-page .tool{margin-top:.5rem}.tool__grid{display:grid;gap:1.5rem}.tool__form,.tool__out{display:grid;gap:1rem;align-content:start;min-width:0}@media(min-width:64em){.tool[data-context=page] .tool__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:2.5rem}.tool[data-context=page] .tool__out{position:sticky;top:5rem}}.tool__head{display:grid;gap:.5rem}.tool__title{font-size:1.375rem;font-weight:800;letter-spacing:-.02em;margin:0}.tool__hint{color:var(--fdv-ink-3);margin:0;font-size:.875rem}.tool__row{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,6.25rem),1fr))}.tool .iv-field{gap:.5rem;margin:0}.tool .iv-label,.tool label{font-size:.875rem;font-weight:600;color:var(--fdv-ink-2)}.tool .field--decimal .iv-input,.tool .field--int .iv-input{font-variant-numeric:tabular-nums;font-weight:600}.presets{display:flex;flex-wrap:wrap;gap:.5rem}.presets .iv-button{--iv-button-bg: var(--fdv-paper);--iv-button-border: var(--fdv-line);--iv-button-fg: var(--fdv-ink);--iv-button-px: 1rem;font-weight:500;font-size:.875rem}.tool__presets-note{margin-top:-.4rem!important}@media(max-width:47.99em){.tool[data-context=page] .tool__head{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.tool .presets{flex-wrap:nowrap;overflow-x:auto;margin-inline:-1.25rem;padding:.1rem 1.25rem .4rem;scrollbar-width:none}.tool .presets .iv-button{flex:none}.tool[data-context=page] .tool__presets-note{display:none}}@media(max-width:560px){.tool{padding:1.5rem 1.25rem;border-radius:14px}.tool__actions .iv-button{flex:1 1 100%}}.tool__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.tool__actions [hidden]{display:none}.tool__empty{margin:0;padding:1.5rem;border:1.5px dashed var(--fdv-line-strong);border-radius:14px;color:var(--fdv-ink-3)}.tool__empty[hidden]{display:none}.tool__privacy{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.875rem;color:var(--fdv-ink-3);margin:1rem 0 0}.tool__privacy svg{width:1rem;height:1rem}.result{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;background:none;border:0}.result[hidden]{display:none}.result__cell{padding:1rem;min-width:0;background:var(--fdv-paper);border-radius:14px}.result__cell[hidden]{display:none}.result__cell--hero{grid-column:1 / -1;background:var(--fdv-ink);color:#fff;padding:1.5rem}.result .iv-stat__label{font-size:.875rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--fdv-ink-3);white-space:normal}.result__cell--hero .iv-stat__label{color:#cdbfc4}.result .iv-stat__value{font-size:clamp(1.4rem,1.1rem + 1.2vw,2.1rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums;color:var(--fdv-ink)}.result__cell--hero .iv-stat__value{font-size:clamp(2.4rem,1.6rem + 3vw,4rem);color:#fff;line-height:1}.result__cell--hero .iv-stat__value small{font-size:.38em;font-weight:700;letter-spacing:-.01em;color:#cdbfc4}.result__note{font-size:.875rem;color:var(--fdv-ink-3);margin:.5rem 0 0}.result__cell--hero .result__note{color:#cdbfc4;min-height:1.5em}p.result__note:empty{display:none}.result__label{font-weight:700;margin:0;font-size:.9rem}@media(max-width:380px){.result--3{grid-template-columns:1fr}.result .iv-stat__value{white-space:normal}}.bars{display:grid;gap:10px}.bars__row{display:grid;grid-template-columns:4.6rem 1fr auto;align-items:center;gap:.75rem;font-size:.875rem}.bars__row span{color:var(--fdv-ink-3);font-weight:600}.bars__row i{height:14px;border-radius:99px;background:var(--fdv-sunken);overflow:hidden}.bars__row b{display:block;height:100%;width:calc(var(--w) * 100%);min-width:6px;border-radius:inherit;background:linear-gradient(90deg,#ff8fb1,var(--fdv-pink));transition:width .7s var(--ease)}.bars__row em{font-style:normal;font-weight:800;font-variant-numeric:tabular-nums;min-width:5rem;text-align:right}.compare{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;font-size:.98rem}.compare li{margin:0;display:flex;gap:.75rem;align-items:baseline}.compare li:before{content:"\2248";font-weight:800;color:var(--fdv-pink)}.yeargrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12px,1fr));gap:4px}.yeargrid i{aspect-ratio:1;border-radius:3px;background:var(--fdv-sunken);transition:background .35s var(--ease)}.yeargrid i.on{background:var(--hub)}@media(max-width:560px){.yeargrid{grid-template-columns:repeat(auto-fill,minmax(9px,1fr));gap:3px}}.iv-range{accent-color:var(--hub)}.milestone{display:grid;grid-template-columns:6rem 1fr;gap:1.25rem;align-items:center;padding:1rem;background:var(--fdv-paper);border-radius:14px}.milestone[hidden]{display:none}.milestone__ring,.bigring svg{transform:rotate(-90deg)}.ring__bg{fill:none;stroke:var(--fdv-sunken);stroke-width:12}.ring__fg{fill:none;stroke:var(--hub);stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset .8s var(--ease);stroke-dasharray:314;stroke-dashoffset:314}.badges{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.badges li{margin:0;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:99px;background:#fff;border:1px solid var(--fdv-line);color:var(--fdv-ink-3)}.badges li.on{background:var(--hub);border-color:var(--hub);color:#fff}.badges li.next{border:1.5px dashed var(--hub);color:var(--fdv-ink)}@media(max-width:560px){.milestone{grid-template-columns:1fr;justify-items:center;text-align:center}.badges{justify-content:center}}.tracker__new{display:grid;gap:.6rem}.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.cal-nav strong{font-size:1.125rem}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal__dow{text-align:center;font-size:.75rem;font-weight:600;color:var(--fdv-ink-3);padding-bottom:4px}.cal__day{aspect-ratio:1;min-height:38px;min-width:0;padding:0;border-radius:10px;border:1.5px solid var(--fdv-line);background:var(--fdv-paper);font:inherit;font-weight:600;font-size:.95rem;color:var(--fdv-ink-2);cursor:pointer;display:grid;place-items:center;font-variant-numeric:tabular-nums}.cal__day:hover:not(:disabled){border-color:var(--hub)}.cal__day[aria-pressed=true]{background:var(--hub);border-color:var(--hub);color:#fff}.cal__day.is-today{box-shadow:inset 0 0 0 2px var(--fdv-ink)}.cal__day:disabled{opacity:.45;cursor:default}.share-card{display:none;gap:.85rem;padding:1.5rem;margin-top:1rem;--iv-card-bg: var(--fdv-paper);--iv-card-shadow: none;--iv-card-radius: 14px;border:1px dashed var(--fdv-line-strong)}.share-card.is-open{display:grid}.share-card canvas{width:100%;max-width:360px;height:auto;border-radius:14px;box-shadow:var(--sh-2)}.share-card .field--check{margin:0}.share-card [hidden]{display:none}.reto-tool{margin-top:0}.reto-status{display:grid;grid-template-columns:132px 1fr;gap:1.5rem;align-items:center;margin-bottom:1rem}.bigring{position:relative;width:132px;height:132px}.bigring svg{width:100%;height:100%}.bigring__n{position:absolute;inset:0;display:grid;place-content:center;text-align:center;font-weight:800}.bigring__n b{font-size:2.6rem;letter-spacing:-.04em;line-height:1;font-weight:800}.bigring__n small{font-size:.95rem;color:var(--fdv-ink-3);font-weight:600}@media(max-width:480px){.reto-status{grid-template-columns:96px 1fr;gap:1rem}.bigring{width:96px;height:96px}.bigring__n b{font-size:1.9rem}}.reto-status .iv-progress{inline-size:100%;margin-top:.75rem;accent-color:var(--hub)}.days{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.75rem}.day{margin:0;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:1rem;background:var(--fdv-paper);border:1.5px solid var(--fdv-line);border-radius:14px}.day h3{font-size:1.05rem;margin:0 0 2px}.day p{margin:0;color:var(--fdv-ink-2);font-size:.98rem}.day__n{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#fff;border:1.5px solid var(--fdv-line)}.day.is-today{border-color:var(--hub);background:#fff;box-shadow:var(--sh-2)}.day.is-today .day__n{background:var(--hub);color:#fff;border-color:var(--hub)}.day.is-done .day__n{background:var(--fdv-ok);color:#fff;border-color:var(--fdv-ok)}.day.is-done .day__n span{display:none}.day.is-done .day__n:after{content:"\2713"}.day.is-future .day__n{opacity:.5}.day__check{white-space:nowrap}.day__check[hidden]{display:none}@media(max-width:560px){.day{grid-template-columns:auto 1fr;align-items:start;gap:.75rem}.day__n{width:38px;height:38px}.day__check{grid-column:1 / -1;width:100%}}@media(prefers-reduced-motion:no-preference){.day.just-done .day__n{animation:fdv-check .6s var(--ease)}}@keyframes fdv-check{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}
