:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--c-bg:#e6e6e6;--c-text:#1a1a1a;--c-grain:#cfcfcf;--btn-dim:.5;--grain-o:.07;--pad:max(20px, 4vmin);--ease:cubic-bezier(.1, .4, .2, 1);--column:min(31rem, 38vw);--strip:64px;--line:color-mix(in srgb, var(--c-text) 18%, transparent);--faint:color-mix(in srgb, var(--c-text) 70%, transparent)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--c-bg:#0d0d0d;--c-text:#f2f2f2;--c-grain:#121212;--btn-dim:.25;--grain-o:.05}*,:before,:after{box-sizing:border-box}html,body{background-color:var(--c-bg);color:var(--c-text);font-family:var(--neue), "Hiragino Sans", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:none;text-size-adjust:none;overscroll-behavior:none;transition:background-color .9s var(--ease);margin:0;font-size:15px;font-weight:400;line-height:1.5}@media (min-width:1080px){html,body{font-size:17px}}@media (min-width:1920px){html,body{font-size:19px}}a,button{color:inherit;font:inherit}button{cursor:pointer;transition:opacity .4s var(--ease);background:0 0;border:0;padding:0}@media (hover:hover){a:hover,button:hover:not(:disabled){opacity:var(--btn-dim)}}button:disabled{opacity:.25;cursor:default}:focus-visible{outline:1px solid var(--c-text);outline-offset:3px}.kd{min-height:100dvh;position:relative}.kd_scene{z-index:1;position:fixed;inset:0}.kd_scene canvas{touch-action:none;width:100%;height:100%;display:block}.kd_labels{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.kd_label{white-space:nowrap;letter-spacing:.04em;background:color-mix(in srgb, var(--c-bg) 72%, transparent);border-left:1px solid var(--c-text);transition:background-color .3s var(--ease);will-change:transform;margin:-11px 0 0 8px;padding:2px 6px;font-size:.82rem;position:absolute;top:0;left:0}.kd_grain{z-index:3;pointer-events:none;opacity:var(--grain-o);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 1.4 -0.2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.kd_frame{top:0;bottom:0;left:var(--pad);z-index:6;opacity:.5;mix-blend-mode:difference;pointer-events:none;background:#fff;width:1px;position:fixed}.kd_theme{left:calc(var(--pad) - .15em);bottom:var(--pad);z-index:8;text-transform:uppercase;white-space:nowrap;transform-origin:0 100%;gap:3px;line-height:1;display:flex;position:fixed;transform:rotate(-90deg)}.kd_top{z-index:8;padding:var(--pad) var(--pad) 0 calc(var(--pad) * 1.5);pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:fixed;top:0;left:0;right:0}.kd_top>*{pointer-events:auto}.kd_home{gap:1.6em;text-decoration:none;display:flex}.kd_home a{text-decoration:none}.kd_home a:first-child{font-weight:500}.kd_tools{gap:.6em;display:flex}.kd_chip{border:1px solid var(--line);background:color-mix(in srgb, var(--c-bg) 70%, transparent);letter-spacing:.03em;border-radius:99px;padding:.25em .8em;font-size:.86rem;text-decoration:none}.kd_panel{top:calc(var(--pad) + 2.6em);right:var(--pad);width:min(22rem, calc(100vw - var(--pad) * 2));background:var(--c-bg);border:1px solid var(--line);animation:kdIn .35s var(--ease);padding:1.1em 1.2em;position:absolute}.kd_title{z-index:0;font-weight:200;font-size:min(calc((100vw - var(--pad) * 3) / var(--ratio,3.6)), 50vh);letter-spacing:-.06em;-webkit-user-select:none;user-select:none;transition:opacity .9s var(--ease), transform 1.2s var(--ease);justify-content:center;align-items:flex-start;margin:0;padding-top:9vh;line-height:1;display:flex;position:fixed;inset:0}.kd:not([data-intro]) .kd_title{opacity:0;pointer-events:none;transform:scale(1.06)}.kd_intro{left:calc(var(--pad) * 1.5);bottom:var(--pad);z-index:7;width:min(26rem, calc(100vw - var(--pad) * 2.5));animation:kdIn .8s var(--ease);position:fixed}.kd_intro:before{content:"";z-index:-1;inset:-3em -4em calc(var(--pad) * -1) calc(var(--pad) * -1.5);background:radial-gradient(closest-side, var(--c-bg) 60%, color-mix(in srgb, var(--c-bg) 0%, transparent));pointer-events:none;position:absolute}.kd_intro p{margin:0 0 .8em}.kd_proof{color:var(--c-text);letter-spacing:.01em;font-size:1.05rem;font-weight:500}.kd_proof:before{content:"● "}.kd_kicker{font-size:1.25rem;font-weight:500}.kd_photo{aspect-ratio:4/3;object-fit:cover;object-position:50% 0%;border:1px solid var(--line);border-radius:12px;width:min(36rem,48vw);height:auto}.kd_photo-wide{right:calc(var(--pad) * 1.5);bottom:var(--pad);z-index:0;animation:kdIn .8s var(--ease);position:fixed}.kd_photo-narrow{display:none}.kd_start{margin-top:1.2em}.kd_column{z-index:7;top:calc(var(--pad) + 3em);bottom:calc(var(--strip) + var(--pad) * .5);left:calc(var(--pad) * 1.5);width:var(--column);pointer-events:none;flex-direction:column;display:flex;position:fixed}.kd_column[hidden]{display:none}.kd_column:before{content:"";z-index:-1;width:calc(var(--column) + var(--pad) * 3.5);background:linear-gradient(to right, var(--c-bg) 62%, color-mix(in srgb, var(--c-bg) 0%, transparent));pointer-events:none;position:fixed;top:0;bottom:0;left:0}.kd_step{pointer-events:auto;min-height:0;animation:kdIn .5s var(--ease);scrollbar-width:thin;flex:1;padding-right:.8em;overflow-y:auto}.kd_marker{letter-spacing:.04em;margin:0 0 .4em;font-size:.9rem}.kd_num{letter-spacing:-.04em;margin:0;font-size:clamp(4.5rem,9vw,8rem);font-weight:200;line-height:1}.kd_num small{letter-spacing:0;opacity:.5;margin-left:.2em;font-size:.22em}.kd_intro-line{color:var(--faint);margin:.8em 0 0}.kd_text{margin:1em 0 0;font-size:1.3rem;line-height:1.45}.kd_step strong{font-weight:500}.kd_value{background:color-mix(in srgb, var(--c-text) 9%, transparent);animation:kdValue .9s var(--ease);padding:0 .15em;font-weight:500}.kd_aside{border-left:1px solid var(--line);color:var(--faint);margin:1.2em 0 0;padding-left:.9em}.kd_aside p{margin:0 0 .4em}.kd_aside ul{margin:0;padding-left:1.1em}.kd_nav{pointer-events:auto;justify-content:space-between;padding-top:1em;display:flex}.kd_nav button{padding:.3em 0;font-size:1.05rem}.kd_button{border:1px solid var(--c-text);border-radius:99px;margin-top:1em;padding:.55em 1.4em;font-weight:500;display:inline-block}.kd_link{text-underline-offset:.25em;margin-top:.9em;text-decoration:underline;text-decoration-thickness:1px}.kd_list{margin:1em 0 0;padding-left:1.3em;font-size:1.1rem}.kd_list li{margin-bottom:.25em}.kd_sub{margin:1.6em 0 .4em;font-size:1rem;font-weight:500}.kd_table{border-collapse:collapse;width:100%;margin-top:.8em;font-size:.96rem}.kd_table th,.kd_table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.42em .5em .42em 0;font-weight:400}.kd_table td{white-space:nowrap;text-align:right}.kd_table-rule td{white-space:normal;text-align:left;color:var(--faint)}.kd_table-rule td:last-child{white-space:nowrap;text-align:right;color:inherit}.kd_needs{color:var(--faint);margin:.8em 0 0}.kd_needs strong{color:var(--c-text)}.kd_table thead th{color:var(--faint)}.kd_sizer{gap:.5em;margin:1em 0;display:grid}.kd_sizerRow{justify-content:space-between;align-items:baseline;display:flex}.kd_sizer input[type=range]{width:100%;accent-color:var(--c-text);margin:0 0 .4em}.kd_lab button{border:1px solid var(--line);border-radius:99px;padding:.25em .8em}.kd_lab button[aria-pressed=true]{background:var(--c-text);color:var(--c-bg);border-color:var(--c-text)}.kd_reel{gap:.6em;margin-top:1.2em;display:flex}.kd_hold{border:1px solid var(--c-text);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:12px;flex:1;padding:.8em 1em;font-size:1.1rem;font-weight:500}.kd_hold:active{background:var(--c-text);color:var(--c-bg)}.kd_hold kbd{opacity:.7;font-family:inherit;font-size:.75rem;display:block}.kd_meters{grid-template-columns:repeat(2,1fr);gap:.6em 1em;margin:1.1em 0 0;display:grid}.kd_meters dt{color:var(--faint);font-size:.82rem}.kd_meters dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem}.kd_goal{color:var(--faint);margin:1em 0 0}.kd_goal:before{content:"○ "}.kd_goal.is-done{color:var(--c-text)}.kd_goal.is-done:before{content:"● "}.kd_lab{flex-wrap:wrap;gap:.4em;margin:1em 0 0;padding:0;list-style:none;display:flex}.kd_lab button{text-align:left}.kd_strip{left:calc(var(--pad) * 1.5);right:var(--pad);height:var(--strip);z-index:7;animation:kdIn .6s var(--ease);align-items:flex-start;gap:6px;padding-top:12px;display:flex;position:fixed;bottom:0}.kd_strip-part{flex:var(--n,1) 1 0;flex-direction:column;gap:6px;min-width:0;display:flex}.kd_strip-name{letter-spacing:.03em;text-align:left;white-space:nowrap;text-overflow:ellipsis;opacity:.6;font-size:.78rem;overflow:hidden}.kd_strip-part.is-current .kd_strip-name{opacity:1}.kd_ticks{gap:2px;display:flex}.kd_ticks button{flex:1;height:14px;position:relative}.kd_ticks button:after{content:"";background:var(--line);height:2px;transition:background-color .3s var(--ease), height .3s var(--ease);position:absolute;bottom:0;left:0;right:0}.kd_ticks button.is-past:after{background:var(--faint)}.kd_ticks button[aria-current=step]:after{background:var(--c-text);height:6px}@media not (min-width:44rem){:root{--strip:52px}.kd:not([data-intro]) .kd_scene,.kd:not([data-intro]) .kd_labels{height:50svh;bottom:auto}.kd_photo-wide{display:none}.kd_photo-narrow{margin-bottom:1rem;display:block}.kd_column{width:auto;top:50svh;right:var(--pad);padding-top:1em}.kd_column:before{background:var(--c-bg);width:100%;top:50svh}.kd_num{font-size:3.6rem}.kd_text{font-size:1.12rem}.kd_home a:last-child{display:none}.kd_strip-part:not(.is-current){flex:none}.kd_strip-part:not(.is-current) .kd_strip-name{display:none}.kd_strip-part:not(.is-current) .kd_ticks{width:4px}.kd_strip-part:not(.is-current) .kd_ticks button:not(:first-child){display:none}.kd_strip-part.is-current{flex:auto}}@keyframes kdIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes kdValue{0%{background:color-mix(in srgb, var(--c-text) 35%, transparent)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
