:root{--bg:#f8fafc;--panel:#ffffff;--fg:#111827;--muted:#6b7280;--line:#e5e7eb;--accent:#2563eb;--color-bg:var(--bg);--color-panel:var(--panel);--color-fg:var(--fg);--color-muted:var(--muted);--color-border:var(--line);--color-brand:var(--accent);--color-brand-fg:#ffffff;--color-danger:#dc2626}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;background:var(--bg);color:var(--fg);line-height:1.6}img,model-viewer{max-width:100%}main :where(div,section,header){min-width:0}input,select,textarea{font-size:16px}.wrap{max-width:960px;margin:0 auto;padding:32px 20px}.head{display:flex;align-items:center;justify-content:space-between;gap:12px}button.ghost{background:transparent;border:1px solid var(--line);color:var(--fg);border-radius:8px;padding:8px 14px;cursor:pointer}@keyframes kt-pop{0%{transform:scale(.55);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.kt-pop{animation:kt-pop .32s ease-out}@keyframes kt-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.kt-fade-up{animation:kt-fade-up .38s ease-out backwards}@keyframes kt-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.kt-float{display:inline-block;animation:kt-float 2.6s ease-in-out infinite}@keyframes kt-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg)}75%{transform:rotate(11deg)}}.kt-wiggle{display:inline-block;animation:kt-wiggle .5s ease-in-out}@keyframes kt-reveal{0%{opacity:0;transform:scale(.95)}}.kt-reveal{animation:kt-reveal .5s ease-out}@keyframes kt-bounce-in{0%{opacity:0;transform:scale(.88)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.kt-bounce-in{animation:kt-bounce-in .55s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes kt-msg-in{0%{opacity:0;transform:translateY(6px)}}.kt-msg-in{animation:kt-msg-in .4s ease-out}@keyframes kt-menu{0%{opacity:0;transform:scale(.94) translateY(-4px)}}.kt-menu-in{transform-origin:top right;animation:kt-menu .18s ease-out}.kt-cta{position:relative;overflow:hidden}.kt-cta:after{content:"";position:absolute;top:0;bottom:0;left:0;width:55%;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.45) 50%,transparent 80%);transform:translateX(-180%) skewX(-12deg);animation:kt-sheen 3.2s ease-in-out infinite;pointer-events:none}@keyframes kt-sheen{0%,55%{transform:translateX(-180%) skewX(-12deg)}85%,to{transform:translateX(340%) skewX(-12deg)}}.kt-stripes{background:repeating-linear-gradient(-45deg,rgba(216,90,48,.3) 0 10px,rgba(216,90,48,.1) 10px 20px);animation:kt-stripes .9s linear infinite}@keyframes kt-stripes{to{background-position:28px 0}}.kt-confetti{position:absolute;top:-12px;animation-name:kt-confetti-fall;animation-timing-function:ease-in;animation-fill-mode:forwards}@keyframes kt-confetti-fall{0%{transform:translateZ(0) rotate(0deg);opacity:0}8%{opacity:1}to{transform:translate3d(var(--kt-sway,20px),420px,0) rotate(560deg);opacity:0}}.kt-step-now{position:relative}.kt-step-now:after{content:"";position:absolute;inset:-2px;border-radius:999px;border:2px solid rgba(216,90,48,.55);animation:kt-ring 1.5s ease-out infinite}@keyframes kt-ring{0%{transform:scale(1);opacity:1}to{transform:scale(1.9);opacity:0}}.kt-app button:not(:disabled){transition:transform .12s ease}.kt-app button:not(:disabled):active{transform:scale(.96)}.kt-app input:focus-visible,.kt-app textarea:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(216,90,48,.18)}@media (prefers-reduced-motion:reduce){.kt-bounce-in,.kt-confetti,.kt-cta:after,.kt-fade-up,.kt-float,.kt-menu-in,.kt-msg-in,.kt-pop,.kt-reveal,.kt-step-now:after,.kt-stripes,.kt-wiggle{animation:none!important}.kt-app button:not(:disabled){transition:none}}