.page-layout{display:flex;flex-direction:column;height:100dvh;width:100%;padding:.5rem 0 0}@supports not (height: 100dvh){.page-layout{height:calc(100vh - env(safe-area-inset-bottom,0px))}}@media(min-width:640px){.page-layout{padding:1rem 0 0}}.hero{text-align:center;width:100%;flex-shrink:0;padding:0 1rem .125rem}.hero__title{font-size:1.125rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.2}.hero__subtitle{display:none}@media(min-width:640px){.hero__title{font-size:1.5rem}}.radio-group{display:flex;gap:1.5rem}.radio-group__item{display:flex;flex-direction:column;align-items:center;gap:.375rem;cursor:pointer;-webkit-user-select:none;user-select:none}.radio-group__item--disabled{opacity:.5;cursor:not-allowed}.radio-group__input{position:absolute;opacity:0;width:0;height:0}.radio-group__circle{width:18px;height:18px;border-radius:50%;border:2px solid var(--color-text-dim);background:transparent;transition:border-color .15s,box-shadow .15s;position:relative}.radio-group__circle:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--color-term-info);transform:scale(0);transition:transform .15s}.radio-group__input:checked+.radio-group__circle{border-color:var(--color-term-info)}.radio-group__input:checked+.radio-group__circle:after{transform:scale(1)}.radio-group__input:focus-visible+.radio-group__circle{outline:2px solid var(--color-term-info);outline-offset:2px}.radio-group__label{font-size:.8125rem;color:var(--color-text-muted);font-weight:500;white-space:nowrap}.radio-group__input:checked~.radio-group__label{color:var(--color-text)}@media(min-width:640px){.radio-group{gap:2rem}.radio-group__label{font-size:.875rem}}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;background:var(--color-term-info);color:var(--color-bg);cursor:pointer;transition:background .15s,transform .1s;font-family:inherit}.cta-button:hover:not(:disabled){background:#4cc960;transform:translateY(-1px)}.cta-button:active:not(:disabled){transform:translateY(0)}.cta-button:disabled{opacity:.5;cursor:not-allowed}.cta-button:focus-visible{outline:2px solid var(--color-term-info);outline-offset:2px}.picker{display:flex;flex-direction:column;align-items:center;gap:.375rem;width:100%;flex-shrink:0;padding:0 1rem .5rem}.picker__label{font-size:.6875rem;color:var(--color-text-dim);margin:0;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.picker__cta-wrapper{margin:0}.picker__korpo-toggle{display:flex;align-items:center;gap:.375rem;cursor:pointer;-webkit-user-select:none;user-select:none}.picker__korpo-toggle--disabled{opacity:.5;cursor:not-allowed}.picker__korpo-checkbox{width:14px;height:14px;accent-color:var(--color-term-info);cursor:inherit}.picker__korpo-label{font-size:.75rem;color:var(--color-text-muted);font-weight:500;letter-spacing:.02em}@media(min-width:640px){.picker{flex-direction:row;justify-content:center;gap:.75rem}.picker__label{display:none}}.terminal-line{white-space:pre-wrap;word-break:break-word;line-height:1.7;font-size:1.0625rem}.terminal-line--info{color:var(--color-term-info)}.terminal-line--warn{color:var(--color-term-warn)}.terminal-line--error{color:var(--color-term-error)}.terminal-line--success{color:var(--color-term-success)}.terminal-line--prompt{color:var(--color-term-prompt)}.terminal-line--debug{color:var(--color-term-debug)}.terminal-line--event{color:var(--color-term-event)}@media(min-width:640px){.terminal-line{font-size:1.125rem}}.token-counter{position:absolute;bottom:8px;right:12px;font-size:.6875rem;color:var(--color-term-warn);opacity:.7;font-family:var(--font-mono);pointer-events:none}.progress-ring{position:absolute;top:42px;right:12px;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2}.progress-ring__svg{transform:rotate(-90deg);filter:drop-shadow(0 0 6px rgba(63,185,80,.4))}.progress-ring__track{fill:none;stroke:#ffffff0f}.progress-ring__fill{fill:none;stroke:var(--color-term-info);stroke-linecap:round;transition:stroke-dashoffset .4s ease}.progress-ring__label{position:absolute;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--color-term-info);letter-spacing:-.02em}@media(min-width:640px){.progress-ring{top:44px;right:16px}}@media(prefers-reduced-motion:reduce){.progress-ring__fill{transition:none}}.terminal{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;border-radius:8px;overflow:hidden;background:var(--color-term-bg);border:1px solid var(--color-border);position:relative}.terminal__header{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--color-term-header);border-bottom:1px solid var(--color-border);flex-shrink:0}.terminal__dot{width:12px;height:12px;border-radius:50%}.terminal__dot--red{background:#ff5f57}.terminal__dot--yellow{background:#febc2e}.terminal__dot--green{background:#28c840}.terminal__header-title{margin-left:8px;font-size:.75rem;color:var(--color-text-dim);font-family:var(--font-mono)}.terminal__body{flex:1;min-height:0;display:flex;flex-direction:column;padding:1rem;overflow-y:auto;scroll-behavior:auto}.terminal__body-spacer{flex:1}.terminal__body::-webkit-scrollbar{width:6px}.terminal__body::-webkit-scrollbar-track{background:transparent}.terminal__body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.terminal__cursor{display:inline;color:var(--color-text-muted);animation:cursor-blink 1s step-end infinite}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.terminal__compaction{margin-top:.5rem;display:flex;align-items:center;gap:.75rem}.terminal__compaction-bar{flex:1;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.terminal__compaction-fill{height:100%;background:var(--color-term-warn);border-radius:2px;transition:width .05s linear}.terminal__compaction-text{font-size:.8125rem;color:var(--color-term-warn);font-family:var(--font-mono);white-space:nowrap}@media(prefers-reduced-motion:reduce){.terminal__cursor{animation:none;opacity:1}.terminal__compaction-fill{transition:none}}.terminal-section{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;padding:0 .5rem .5rem}@media(min-width:640px){.terminal-section{padding:0 1rem 1rem}}.ending{width:100%;text-align:center;padding:2rem 1.5rem;margin-bottom:1.5rem;border-radius:12px;background:var(--color-surface);border:1px solid var(--color-border);animation:ending-enter .4s ease-out}@keyframes ending-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ending__visual{margin-bottom:1.5rem}.ending__headline{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;line-height:1.3}.ending__microcopy{font-size:.875rem;color:var(--color-text-muted);margin:0 0 1.25rem;font-style:italic}.ending__korpo-note{display:block;font-size:.75rem;color:var(--color-text-dim);margin-top:.25rem}.ending__extra-zone{margin-bottom:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.ending__extra-btn{padding:.375rem 1rem;font-size:.75rem;font-weight:600;border-radius:6px;background:transparent;color:var(--color-accent);border:1px solid var(--color-accent);cursor:pointer;font-family:var(--font-mono);transition:background .15s}.ending__extra-btn:hover{background:#58a6ff1a}.ending__extra-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ending__compression-list{list-style:none;padding:0;margin:.5rem 0 0;font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted);text-align:left}.ending__compression-list li:before{content:"• ";color:var(--color-term-warn)}.ending__generated-name{font-family:var(--font-mono);font-size:.875rem;font-weight:700;color:var(--color-term-success);padding:.25rem .75rem;border-radius:4px;background:#39d2c01a}.ending__actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.ending__btn{padding:.625rem 1.5rem;font-size:.875rem;font-weight:600;border-radius:8px;cursor:pointer;font-family:inherit;transition:background .15s,transform .1s}.ending__btn:hover{transform:translateY(-1px)}.ending__btn:active{transform:translateY(0)}.ending__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ending__btn--primary{background:var(--color-accent);color:var(--color-bg);border:none}.ending__btn--primary:hover{background:var(--color-accent-hover)}.ending__btn--secondary{background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border)}.ending__btn--secondary:hover{background:var(--color-surface);color:var(--color-text)}.visual-stamp{position:relative;display:inline-block}.visual-stamp__badge{display:inline-block;font-family:var(--font-mono);font-size:2rem;font-weight:800;color:var(--color-term-info);border:3px solid var(--color-term-info);border-radius:8px;padding:.5rem 1.5rem;transform:rotate(-6deg);animation:stamp-bounce .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes stamp-bounce{0%{transform:rotate(-6deg) scale(.3);opacity:0}60%{transform:rotate(-6deg) scale(1.1)}to{transform:rotate(-6deg) scale(1);opacity:1}}.visual-stamp__confetti{position:absolute;inset:0;pointer-events:none}.visual-stamp__particle{position:absolute;width:6px;height:6px;border-radius:50%;top:50%;left:50%;animation:confetti-pop .8s ease-out forwards;animation-delay:calc(var(--i) * .05s);opacity:0}.visual-stamp__particle:nth-child(odd){background:var(--color-term-warn)}.visual-stamp__particle:nth-child(2n){background:var(--color-term-info)}.visual-stamp__particle:nth-child(3n){background:var(--color-accent)}@keyframes confetti-pop{0%{transform:translate(0) scale(0);opacity:1}to{transform:translate(calc(cos(calc(var(--i) * 30deg))*60px),calc(sin(calc(var(--i) * 30deg))*60px)) scale(1);opacity:0}}.visual-release{display:inline-block;text-align:left;background:var(--color-term-bg);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem;font-family:var(--font-mono);min-width:240px}.visual-release__header{font-size:.6875rem;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem}.visual-release__version{font-size:1.25rem;font-weight:700;color:var(--color-term-success);margin-bottom:.75rem}.visual-release__list{margin:0;padding-left:1.25rem;font-size:.75rem;color:var(--color-text-muted);line-height:1.8}.visual-calendar{display:inline-flex;align-items:center;gap:1rem;font-family:var(--font-mono)}.visual-calendar__old,.visual-calendar__new{display:flex;flex-direction:column;align-items:center;gap:.25rem}.visual-calendar__label{font-size:.625rem;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.1em}.visual-calendar__date{font-size:1rem;font-weight:700;padding:.375rem .75rem;border-radius:6px;background:var(--color-term-bg);border:1px solid var(--color-border)}.visual-calendar__date--struck{text-decoration:line-through;color:var(--color-text-dim)}.visual-calendar__date--green{color:var(--color-term-info);border-color:var(--color-term-info)}.visual-calendar__arrow{font-size:1.5rem;color:var(--color-text-dim);animation:arrow-slide .6s ease-out both}@keyframes arrow-slide{0%{transform:translate(-8px);opacity:0}to{transform:translate(0);opacity:1}}.visual-sprint{display:inline-flex;gap:.5rem;font-family:var(--font-mono);font-size:.75rem}.visual-sprint__col{min-width:90px;background:var(--color-term-bg);border:1px solid var(--color-border);border-radius:6px;padding:.5rem}.visual-sprint__col--highlight{border-color:var(--color-term-info)}.visual-sprint__col-title{font-size:.625rem;font-weight:700;color:var(--color-text-dim);text-transform:uppercase;margin-bottom:.375rem}.visual-sprint__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;padding:.25rem .5rem;color:var(--color-text-muted);margin-bottom:.25rem;font-size:.6875rem}.visual-sprint__card--moved{opacity:.3;text-decoration:line-through}.visual-sprint__card--landed{color:var(--color-term-info);border-color:var(--color-term-info);animation:card-land .3s ease-out both}@keyframes card-land{0%{transform:translate(-12px);opacity:0}to{transform:translate(0);opacity:1}}.visual-alignment{display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;font-family:var(--font-mono);min-width:240px}.visual-alignment__bar-track{width:100%;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.visual-alignment__bar-fill{height:100%;width:63%;background:linear-gradient(90deg,var(--color-term-warn),var(--color-term-info));border-radius:4px;animation:bar-grow 1s ease-out both}@keyframes bar-grow{0%{width:0}to{width:63%}}.visual-alignment__label{font-size:.75rem;color:var(--color-text-muted)}.visual-alignment__badge{font-size:.625rem;font-weight:700;color:var(--color-term-warn);border:1px solid var(--color-term-warn);border-radius:4px;padding:.125rem .5rem;text-transform:uppercase;letter-spacing:.05em}.visual-invoice{display:inline-block;text-align:left;background:var(--color-term-bg);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem;font-family:var(--font-mono);min-width:220px}.visual-invoice__title{font-size:.625rem;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem}.visual-invoice__row{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted);padding:.25rem 0;border-bottom:1px solid var(--color-border)}.visual-invoice__row--total{border-bottom:none;font-weight:700;color:var(--color-text);padding-top:.5rem}.visual-glitch{display:inline-block;font-family:var(--font-mono)}.visual-glitch__text{display:flex;flex-direction:column;align-items:center;gap:.375rem}.visual-glitch__line{font-size:.75rem;color:var(--color-text-dim)}.visual-glitch__line--fade{animation:glitch-fade 1.2s ease-in-out both}@keyframes glitch-fade{0%{opacity:1;filter:none}50%{opacity:.5;filter:blur(1px);color:var(--color-term-error)}to{opacity:.3;filter:blur(0)}}.visual-glitch__status{font-size:1rem;font-weight:700;padding:.25rem .75rem;border-radius:4px}.visual-glitch__status--err{color:var(--color-term-error);animation:status-flash .8s ease-in-out both}.visual-glitch__status--ok{color:var(--color-term-info);animation:status-flash .5s ease-out .8s both}@keyframes status-flash{0%{opacity:0;transform:scale(.9)}50%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.visual-roadmap{display:inline-flex;gap:.375rem;font-family:var(--font-mono)}.visual-roadmap__tile{width:64px;height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.125rem;background:var(--color-term-bg);border:1px solid var(--color-border);border-radius:6px}.visual-roadmap__tile--active{border-color:var(--color-term-info);background:#3fb95014;animation:tile-pulse 1s ease-out}@keyframes tile-pulse{0%{transform:scale(.95)}50%{transform:scale(1.05)}to{transform:scale(1)}}.visual-roadmap__q{font-size:.75rem;font-weight:700;color:var(--color-text-muted)}.visual-roadmap__tile--active .visual-roadmap__q{color:var(--color-term-info)}.visual-roadmap__milestone{font-size:.5625rem;color:var(--color-term-warn)}.visual-achievement{display:inline-flex;flex-direction:column;align-items:center;gap:.75rem}.visual-achievement__badge{display:flex;flex-direction:column;align-items:center;gap:.25rem;animation:badge-pop .6s cubic-bezier(.34,1.56,.64,1) both}@keyframes badge-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.visual-achievement__icon{font-size:2.5rem;line-height:1}.visual-achievement__title{font-family:var(--font-mono);font-size:1.125rem;font-weight:800;color:var(--color-term-warn);letter-spacing:.1em}.visual-achievement__stats{display:flex;gap:1rem;font-family:var(--font-mono);font-size:.6875rem;color:var(--color-text-dim)}.ending__feedback{display:flex;justify-content:center;gap:1rem;margin-top:1.25rem}.ending__thumb{background:none;border:none;font-size:1.25rem;cursor:pointer;opacity:.35;transition:opacity .2s,transform .15s;padding:.25rem;line-height:1}.ending__thumb:hover:not(:disabled){opacity:.7;transform:scale(1.15)}.ending__thumb--active{opacity:1;transform:scale(1.2)}.ending__thumb:disabled:not(.ending__thumb--active){opacity:.15;cursor:default}@media(prefers-reduced-motion:reduce){.ending{animation:none}.visual-stamp__badge{animation:none;transform:rotate(-6deg)}.visual-stamp__particle{display:none}.visual-calendar__arrow,.visual-sprint__card--landed,.visual-alignment__bar-fill{animation:none}.visual-glitch__line--fade{animation:none;opacity:.3}.visual-glitch__status--err,.visual-glitch__status--ok{animation:none;opacity:1}.visual-roadmap__tile--active,.visual-achievement__badge{animation:none}}@media(min-width:640px){.ending__headline{font-size:1.5rem}.ending{padding:2.5rem 2rem}}.footer{margin-top:auto;padding-top:2rem;display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-dim)}.footer__brand{color:var(--color-text-muted);text-decoration:none;font-weight:600}.footer__brand:hover{color:var(--color-text)}:root{--color-bg: #0a0e14;--color-surface: #141820;--color-border: #1e2530;--color-text: #e6edf3;--color-text-muted: #8b949e;--color-text-dim: #484f58;--color-accent: #58a6ff;--color-accent-hover: #79b8ff;--color-term-bg: #0d1117;--color-term-header: #161b22;--color-term-info: #3fb950;--color-term-warn: #d29922;--color-term-error: #f85149;--color-term-success: #39d2c0;--color-term-prompt: #c9d1d9;--color-term-debug: #6e7681;--color-term-event: #d2a8ff;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", Consolas, "Courier New", monospace}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.5;overflow:hidden}code,pre,.terminal__body{font-family:var(--font-mono)}::selection{background:var(--color-accent);color:var(--color-bg)}
