@import "https://fonts.googleapis.com/css2?family=Sansita+One&family=Handjet:wght@400;500&family=DM+Sans:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--color-bg-page:#f5f4f2;--color-bg-surface:#fff;--color-bg-subtle:#f0eded;--color-text-primary:#593c3c;--color-text-secondary:#735a5a;--color-text-tertiary:#806b6b;--color-border:#d6cccc;--color-accent:#ae72db;--color-accent-hover:#8b4eb8;--color-accent-light:#f4e5ff;--color-yellow:#f6fdd8;--color-blue:#92b8e8;--color-grid:#fff;--color-hero-start:#f3edd9;--color-hero-end:#ebeffb;--shadow-card:5px 5px 0 var(--color-text-primary);--color-success:#15803d;--color-success-bg:#f0fdf4;--color-warning:#d97706;--color-error:#dc2626;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:80px;--font-heading:"Yu Gothic", "Noto Sans JP", "Hiragino Sans", sans-serif;--font-body:"Yu Gothic", "Noto Sans JP", "Hiragino Sans", sans-serif;--radius-sm:4px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px #0000000d, 0 1px 4px #00000008;--shadow-md:0 1px 3px #0000000a, 0 4px 16px #0000000f, 0 1px 1px #00000005}*,:before,:after{box-sizing:border-box}html{scroll-behavior:auto}body{font-family:var(--font-body);background-color:var(--color-bg-page);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;font-feature-settings:"palt";margin:0;font-size:16px}p,li{letter-spacing:.03em;line-height:1.9}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;margin:0;line-height:1.3}a{color:inherit;text-decoration:none}button{font-family:var(--font-body)}#root{flex-direction:column;min-height:100svh;display:flex}.container{width:100%;max-width:680px;padding-inline:var(--space-5);margin-inline:auto}.container-wide{width:100%;max-width:1080px;padding-inline:var(--space-5);margin-inline:auto}.card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5)}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-sm);letter-spacing:.04em;color:var(--color-accent-strong);border:1px solid var(--color-accent);opacity:.9;background:0 0;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:var(--color-success);border-color:var(--color-success);background:0 0}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;min-height:44px;padding:8px 20px;font-size:14px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,opacity .15s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-subtle);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-border)}.btn-ghost{color:var(--color-text-secondary);background:0 0;padding:8px 14px}.btn-ghost:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.btn-full{width:100%}.prompt-code{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-4);white-space:pre-wrap;color:var(--color-text-primary);font-family:DM Sans,monospace;font-size:.875rem;line-height:1.8}[id]{scroll-margin-top:72px}.divider{background:var(--color-border);height:1px;margin-block:var(--space-6)}.progress-track{border-radius:var(--radius-pill);background:var(--color-bg-subtle);height:6px;overflow:hidden}.progress-fill{border-radius:var(--radius-pill);background:var(--color-accent);height:100%;transition:width .4s}input:focus,textarea:focus,select:focus{outline:none;box-shadow:0 0 0 3px #ae72db2e;border-color:var(--color-accent)!important}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"▶ ";color:var(--color-text-tertiary);font-size:.7em;transition:transform .15s;display:inline-block}details[open]>summary:before{transform:rotate(90deg)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@media (width<=640px){.container,.container-wide{padding-inline:var(--space-4)}.card{padding:var(--space-4)}.btn{padding:10px 16px;font-size:.9rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:.3s both fadeInUp}.container-wide{max-width:1268px}.card{border:2px solid var(--color-text-primary);box-shadow:var(--shadow-card)}.btn{border-radius:var(--radius-pill);white-space:normal;text-align:center;line-height:1.5}.btn-secondary,.btn-yellow{background:var(--color-accent-light);border:1px solid var(--color-text-primary);box-shadow:2px 2px 0 var(--color-text-primary);color:var(--color-text-primary)}.btn-yellow{background:var(--color-yellow)}.btn-primary{color:var(--color-text-primary)}.btn:disabled{opacity:.5;cursor:not-allowed}button,select,summary{cursor:pointer}button:focus-visible,summary:focus-visible{outline:3px solid var(--color-accent-hover);outline-offset:4px}textarea,input,select{font:inherit;color:var(--color-text-primary)}textarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);width:100%;padding:14px 16px;line-height:1.7}textarea::placeholder{color:var(--color-text-tertiary)}.site-shell{flex-direction:column;min-height:100svh;display:flex}.site-shell>main{flex:1}.site-header{z-index:20;background:var(--color-bg-surface);align-items:center;gap:32px;min-height:62px;margin:20px;padding:0 40px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--color-bg-surface) 70%, transparent)}}.site-header{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--color-text-primary);border-radius:60px}.brand{flex-shrink:0;align-items:center;display:inline-flex}.brand img{width:122px;height:29px;display:block}.site-nav{font-size:16px;font-family:var(--font-body);gap:32px;margin-left:auto;display:flex}.site-nav a{padding-block:12px}.site-nav a.active{text-underline-offset:6px;text-decoration:underline}.mobile-menu{display:none}.site-footer{z-index:2;background:var(--color-text-primary);color:var(--color-bg-surface);text-align:center;margin-top:auto;padding:24px;position:relative}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:10px;font-size:14px;display:flex}.site-footer small{font-size:11px}.skip-link{background:var(--color-bg-surface);z-index:100;padding:12px;position:absolute;top:-100px}.skip-link:focus{top:0}.eyebrow{font-family:var(--font-body);color:var(--color-accent-hover);letter-spacing:.02em;margin:0 0 12px;font-size:22px;font-weight:400}.section-heading{text-align:center;margin-bottom:40px}.section-heading h1,.section-heading h2{letter-spacing:.06em;font-size:clamp(24px,3vw,32px)}.section-heading>p:not(.eyebrow){color:var(--color-text-secondary);font-size:14px}.page-section{padding-top:36px;padding-bottom:120px}.actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.center-actions{justify-content:center;margin-top:32px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:16px;display:flex}.text-link{font:inherit;color:inherit;text-underline-offset:6px;cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:14px;text-decoration:underline}.help-text{color:var(--color-text-secondary);font-size:13px}.home-hero{background:linear-gradient(107deg, var(--color-hero-start), var(--color-hero-end));margin-top:-102px;padding:160px 24px 104px}.hero-inner{grid-template-columns:minmax(0,510px) minmax(0,550px);align-items:start;gap:50px;max-width:1110px;margin:auto;display:grid}.hero-copy h1{white-space:nowrap;font-size:clamp(26px,2.3vw,32px);line-height:1.7}.hero-copy p{margin:16px 0 44px;font-size:16px;font-weight:700;line-height:1.7}.highlight-word{background:var(--color-text-primary);height:22px;color:var(--color-bg-surface);padding:0 4px;line-height:22px;display:inline-block}.hero-actions{justify-content:flex-start}.hero-chat{background:var(--color-bg-surface);border-radius:32px;flex-direction:column;height:340px;margin-top:4px;display:flex;overflow:hidden;box-shadow:0 0 10px #0000001a}.hero-send{background:var(--color-accent);height:44px;color:var(--color-on-accent);border-radius:40px;justify-content:center;align-items:center;padding:8px 28px;font-size:16px;font-weight:700;display:inline-flex}.demo-shell{flex:1;width:100%;display:flex}.demo-stage{flex-direction:column;width:100%;display:flex}.chat-stage{justify-content:space-between;gap:24px;padding:32px;animation:.5s cubic-bezier(.2,.8,.2,1) both heroChatIn}@keyframes heroChatIn{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-text{min-height:96px;color:var(--color-text-tertiary);font-size:18px;font-weight:700;line-height:1.7}.chat-footer{justify-content:flex-end;display:flex}.typing-caret{vertical-align:-3px;background:var(--color-text-tertiary);width:2px;height:19px;margin-left:3px;animation:.75s step-end infinite heroBlink;display:inline-block}@keyframes heroBlink{50%{opacity:0}}.send-wrap{justify-content:center;align-items:center;display:inline-flex;position:relative}.send-ripple{opacity:0;pointer-events:none;border:2px solid #ae72db80;border-radius:50%;width:54px;height:54px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.45)}.send-ripple.play{animation:.52s cubic-bezier(.2,.75,.2,1) forwards heroSendRipple}@keyframes heroSendRipple{0%{opacity:.7;transform:translate(-50%,-50%)scale(.55)}to{opacity:0;transform:translate(-50%,-50%)scale(1.9)}}.send-btn{font:inherit;cursor:default;border:0;transition:transform .16s,background .16s}.send-btn.pressed{transform:scale(.93);box-shadow:0 0 0 8px #ae72db24}.loading-stage{justify-content:center;align-items:center;min-height:220px}.loading-inner{flex-direction:column;align-items:center;gap:12px;animation:.6s cubic-bezier(.18,.9,.25,1.1) both heroLoaderIn;display:flex}@keyframes heroLoaderIn{0%{opacity:0;transform:translateY(10px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.magic-loader{justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:relative}.magic-halo{background:radial-gradient(circle,#d29ff64d 0%,#d29ff624 42%,#d29ff600 72%);border-radius:50%;width:78px;height:78px;animation:1.8s ease-in-out infinite heroHaloPulse;position:absolute}@keyframes heroHaloPulse{0%,to{opacity:.58;transform:scale(.92)}50%{opacity:1;transform:scale(1.18)}}.diamond{z-index:3;filter:drop-shadow(0 7px 12px #ab67da33);width:56px;height:56px;animation:2.2s linear infinite heroSpinDiamond,1.7s ease-in-out infinite heroDiamondPulse;position:relative}@keyframes heroSpinDiamond{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heroDiamondPulse{0%,to{scale:1}50%{scale:1.08}}.orbit{pointer-events:none;border-radius:50%;position:absolute;inset:0}.orbit-1{animation:3.4s linear infinite heroOrbitSpin}.orbit-2{animation:2.8s linear infinite heroOrbitSpinReverse;inset:10px}@keyframes heroOrbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heroOrbitSpinReverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.mini-star,.mini-dot{display:block;position:absolute}.mini-star{color:#c88ceb;line-height:1}.star-a{font-size:15px;top:2px;left:48px}.star-b{color:#e6bdfc;font-size:12px;bottom:24px;right:6px}.mini-dot{background:#d7a9f4;border-radius:50%;width:6px;height:6px}.dot-a{top:34px;right:8px}.dot-b{background:#e6c6f8;width:4px;height:4px;bottom:30px;left:4px}.twinkle{z-index:4;color:#d8a6f5;line-height:1;animation:1.55s ease-in-out infinite heroTwinklePop;position:absolute}.twinkle-1{font-size:13px;top:24px;left:10px}.twinkle-2{color:#b96fdf;font-size:10px;animation-delay:.45s;top:16px;right:12px}.twinkle-3{color:#e7c2fa;font-size:11px;animation-delay:.8s;bottom:10px;right:16px}@keyframes heroTwinklePop{0%,to{opacity:.2;transform:scale(.65)rotate(0)}50%{opacity:1;transform:scale(1.15)rotate(15deg)}}.loading-text{color:#b16ddf;font-size:18px;font-weight:800}.loading-dots{letter-spacing:-3px;margin-left:1px;display:inline-flex}.loading-dots span{animation:1.05s ease-in-out infinite heroDotBounce;display:inline-block}.loading-dots span:nth-child(2){animation-delay:.12s}.loading-dots span:nth-child(3){animation-delay:.24s}@keyframes heroDotBounce{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.loading-subtext{color:#a998a5;font-size:13px;font-weight:600;animation:1.8s ease-in-out infinite heroSubtleFade}@keyframes heroSubtleFade{0%,to{opacity:.48}50%{opacity:.9}}.result-stage{justify-content:center;align-items:center;gap:20px;min-height:220px;padding:24px}.complete-wrap{justify-content:center;align-items:center;animation:.7s cubic-bezier(.18,.9,.25,1.1) both heroCompleteEnter;display:flex;position:relative}@keyframes heroCompleteEnter{0%{opacity:0;transform:translateY(12px)scale(.88)}70%{opacity:1;transform:translateY(-2px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}.complete-bubble{z-index:2;color:#fff;background:linear-gradient(135deg,#c47be9 0%,#ae68dd 48%,#9c5bd2 100%);border-radius:999px;align-items:center;gap:8px;padding:8px 24px;font-size:16px;font-weight:800;display:inline-flex;position:relative;overflow:hidden}.complete-bubble:after{content:"";border-top:13px solid #a964da;border-left:9px solid #0000;border-right:9px solid #0000;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)}.complete-star{font-size:14px;animation:.7s .2s both heroCompleteStar;display:inline-block}@keyframes heroCompleteStar{0%{opacity:0;transform:scale(.35)rotate(-35deg)}55%{opacity:1;transform:scale(1.3)rotate(12deg)}to{opacity:1;transform:scale(1)rotate(0)}}.complete-shine{background:linear-gradient(90deg,#0000,#ffffff61,#0000);width:22%;height:170%;animation:.8s .4s both heroBubbleShine;position:absolute;top:-35%;left:-28%;transform:skew(-18deg)}@keyframes heroBubbleShine{0%{opacity:0;left:-28%}18%{opacity:.8}to{opacity:0;left:110%}}.complete-spark{z-index:3;color:#d69ff4;line-height:1;animation:.9s both heroCompleteSpark;position:absolute}.spark-1{font-size:16px;animation-delay:.1s;top:-8px;left:-18px}.spark-2{color:#e9c5fb;font-size:13px;animation-delay:.2s;top:-2px;right:-20px}.spark-3{color:#be7de5;font-size:11px;animation-delay:.3s;bottom:-12px;left:-8px}.spark-4{color:#e4bdf7;font-size:12px;animation-delay:.4s;bottom:-10px;right:-8px}@keyframes heroCompleteSpark{0%{opacity:0;transform:scale(.25)rotate(-20deg)}45%{opacity:1;transform:scale(1.25)rotate(10deg)}to{opacity:.72;transform:scale(1)rotate(0)}}.result-viewport{justify-content:center;width:100%;display:flex;overflow:hidden}.result-viewport-scale{transform-origin:top}.mini-app,.desktop-demo{max-width:420px;animation:.8s cubic-bezier(.18,.9,.25,1.08) .15s both heroAppUnveil}@keyframes heroAppUnveil{0%{opacity:0;transform:translateY(14px)scale(.98)}72%{opacity:1;transform:translateY(-2px)scale(1.008)}to{opacity:1;transform:translateY(0)scale(1)}}.mini-app{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);border-radius:24px 24px 18px 18px;width:66%;min-width:240px;padding:14px 14px 12px;box-shadow:0 10px 22px #66434314}.notch{background:var(--color-text-primary);border-radius:999px;width:56px;height:10px;margin:0 auto 14px}.app-title{text-align:center;margin-bottom:12px;font-size:15px;font-weight:800}.meal-card{border:1px solid var(--color-border);border-radius:18px;overflow:hidden}.meal-visual{background:var(--color-bg-subtle);justify-content:center;align-items:center;height:88px;padding:6px 10px;display:flex}.meal-img{object-fit:contain;width:100%;max-width:180px;height:auto;animation:.6s cubic-bezier(.2,.85,.3,1.15) .5s both heroFoodPop;display:block}@keyframes heroFoodPop{0%{opacity:0;transform:translateY(6px)scale(.88)}70%{opacity:1;transform:translateY(-2px)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}.meal-info{padding:10px 12px 11px}.meal-name{color:var(--color-text-primary);margin-bottom:3px;font-size:12px;font-weight:800}.meal-meta{color:var(--color-text-tertiary);margin-bottom:6px;font-size:10px}.meal-btn{background:var(--color-accent);width:100%;height:26px;color:var(--color-on-accent);border:0;border-radius:999px;font-size:11px;font-weight:800}.desktop-demo{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);border-radius:20px;width:100%;padding:9px;box-shadow:0 10px 22px #66434314}.browser-top{align-items:center;gap:8px;margin-bottom:7px;display:flex}.browser-dots{gap:5px;display:flex}.window-dot{background:#e7deda;border-radius:50%;width:7px;height:7px}.window-dot:first-child{background:#f5b5b5}.window-dot:nth-child(2){background:#f2d68b}.window-dot:nth-child(3){background:#a9debf}.browser-bar{background:var(--color-bg-subtle);border:1px solid var(--color-border);height:22px;color:var(--color-text-tertiary);border-radius:999px;flex:1;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.dashboard-frame{border:1px solid var(--color-border);background:var(--color-bg-page);border-radius:16px;overflow:hidden}.dashboard-body{grid-template-columns:54px 1fr;min-height:170px;display:grid}.dashboard-sidebar{border-right:1px solid var(--color-border);background:linear-gradient(#faf6f3 0%,#f4edeb 100%);flex-direction:column;align-items:center;gap:9px;padding:10px 7px;display:flex}.sidebar-logo{background:linear-gradient(135deg, var(--color-accent) 0%, #c38ee8 100%);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:28px;height:28px;margin-bottom:4px;font-size:12px;font-weight:900;display:flex}.sidebar-item{opacity:.72;background:#e6d9d3;border-radius:999px;width:24px;height:8px}.sidebar-item.active{background:var(--color-accent);opacity:1;width:30px}.dashboard-main{background:linear-gradient(#fff 0%,#fbf8f7 100%);padding:9px 10px}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:7px;display:flex}.dashboard-heading small{color:var(--color-text-tertiary);margin-bottom:2px;font-size:8px;font-weight:700;display:block}.dashboard-heading h4{color:var(--color-text-primary);margin:0;font-size:12px;line-height:1.15}.dashboard-pill{background:var(--color-accent-light);color:var(--color-accent-hover);border-radius:999px;flex-shrink:0;padding:4px 7px;font-size:8px;font-weight:800}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:6px;display:grid}.metric-card,.chart-card{border:1px solid var(--color-border);background:var(--color-bg-surface);border-radius:14px;animation:.5s both heroCardIn}.metric-card:first-child{animation-delay:.2s}.metric-card:nth-child(2){animation-delay:.28s}.metric-card:nth-child(3){animation-delay:.36s}.dashboard-content-grid .chart-card:first-child{animation-delay:.44s}.dashboard-content-grid .chart-card:nth-child(2){animation-delay:.52s}@keyframes heroCardIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.metric-card{padding:7px 8px 6px}.metric-card span{color:var(--color-text-tertiary);margin-bottom:5px;font-size:8px;font-weight:700;display:block}.metric-card strong{color:var(--color-text-primary);margin-bottom:3px;font-size:12px;line-height:1.05;display:block}.metric-card em{color:#7bbf91;font-size:8px;font-style:normal;font-weight:700}.dashboard-content-grid{grid-template-columns:1.55fr .85fr;gap:6px;display:grid}.chart-card{padding:7px 8px}.card-label{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.card-label strong{color:var(--color-text-primary);font-size:10px}.card-label span{color:var(--color-text-tertiary);font-size:9px;font-weight:700}.chart-bars{align-items:flex-end;gap:5px;height:52px;display:flex}.bar{flex:1;align-items:flex-end;height:100%;display:flex}.bar span{background:linear-gradient(180deg, #c48ce8 0%, var(--color-accent) 100%);width:100%;height:0;animation:.7s cubic-bezier(.2,.85,.3,1) forwards heroBarGrow;animation-delay:calc(.6s + var(--delay,0s));border-radius:999px 999px 8px 8px;display:block}.bar:nth-child(2) span,.bar:nth-child(5) span{background:linear-gradient(#83d9be 0%,#6fc1aa 100%)}@keyframes heroBarGrow{0%{height:0}to{height:var(--bar,50%)}}.chart-grid-line{border-top:1px dashed var(--color-border);height:0;margin:7px 0;position:relative}.mini-donut{background:conic-gradient(var(--color-accent) 0 48%, #8ce0c1 48% 74%, #f2d7a0 74% 100%);border-radius:50%;width:44px;height:44px;margin:3px auto 5px;position:relative}.mini-donut:after{content:"";background:var(--color-bg-surface);border-radius:50%;position:absolute;inset:9px}.legend{gap:4px;display:grid}.legend-row{color:var(--color-text-tertiary);justify-content:space-between;align-items:center;font-size:9px;font-weight:700;display:flex}.legend-row i{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.legend-row .purple{background:var(--color-accent)}.legend-row .mint{background:#8ce0c1}.legend-row .sand{background:#f2d7a0}@media (prefers-reduced-motion:reduce){.demo-stage,.diamond,.magic-halo,.twinkle,.complete-wrap,.complete-spark,.complete-star,.mini-app,.desktop-demo,.meal-img,.metric-card,.chart-card,.bar span,.send-ripple,.send-btn,.typing-caret,.loading-inner,.loading-dots span,.loading-subtext{transition:none!important;animation:none!important}}.button-arrow{flex-shrink:0}.hero-actions .btn{min-height:42px;box-shadow:2px 2px 0 var(--color-text-primary);border-width:1px;padding:8px 20px;font-size:14px}.mobile-break{display:none}.creators{border-block:1px solid var(--color-text-primary);background:var(--color-accent-light);padding:34px 24px 20px}.creators-inner{grid-template-columns:1fr 1fr;gap:60px;max-width:900px;margin:auto;display:grid;position:relative}.creators-label{background:var(--color-accent);color:var(--color-on-accent);border-radius:60px;align-items:center;gap:10px;padding:6px 24px;font-size:16px;font-weight:700;line-height:1.7;display:flex;position:absolute;top:-66px;left:-130px;transform:rotate(-4deg)}.creators-label>span{font-family:var(--font-body);font-size:18px;font-weight:400}.creators-pointer{position:absolute;bottom:-12px;left:calc(50% - 10px);transform:rotate(180deg)}.creator{text-align:left;color:inherit;background:0 0;border:0;align-items:center;gap:20px;padding:0;display:flex}.creator-photo{flex-shrink:0;width:80px;height:80px;position:relative}.creator-photo>img{object-fit:contain;border-radius:50%;width:80px;height:80px}.creator-plus{background:var(--color-accent);border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:-4px;right:-4px}.creator-title{font-size:24px;font-family:var(--font-body);margin-bottom:8px;font-weight:700;line-height:1.3;display:block}.creator-title small{color:var(--color-text-secondary);margin-right:8px;font-size:14px;font-weight:400}.creator-summary{font-size:12px;line-height:1.8;display:block}.home-grid{position:relative}.home-grid-backdrop{z-index:0;pointer-events:none;height:100vh;margin-bottom:-100vh;position:sticky;top:0;overflow:hidden}.home-samples{z-index:1;padding-block:60px;position:relative}.category-tabs{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:28px;display:flex}.category-tabs button{background:var(--color-bg-surface);color:var(--color-accent);border:1px solid #cdcdcd;border-radius:40px;min-height:39px;padding:8px 16px;font-size:14px;font-weight:700;line-height:1.5}.category-tabs button.selected{background:var(--color-accent);color:var(--color-on-accent);border-color:#0000}.sample-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.sample-card{border:2px solid var(--color-text-primary);box-shadow:var(--shadow-card);background:var(--color-bg-surface);border-radius:20px;flex-direction:column;gap:14px;padding:16px;transition:transform .15s;display:flex}.sample-card:hover{transform:translateY(-4px)}.sample-cover{background:var(--color-hero-end);border-radius:12px;height:180px;position:relative;overflow:hidden}.sample-cover>img{object-fit:contain;width:100%;height:100%}.sample-cover .sample-phone{object-fit:contain;width:100px;height:130px;position:absolute;bottom:0;right:4px}.sample-card h3{font-size:16px;line-height:1.5}.sample-card p{margin:0;font-size:14px;line-height:1.7}.sample-meta{justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;font-size:12px;display:flex}.sample-note{text-align:center;margin:24px 0}.home-guide{z-index:1;padding:60px 24px 120px;position:relative}.guide-decoration{opacity:0;pointer-events:none;position:absolute;top:35%;right:max(5%,50% - 600px)}.home-grid-backdrop.is-revealed .guide-decoration{animation:.7s cubic-bezier(.34,1.56,.64,1) .15s both guideDecorationPop}@keyframes guideDecorationPop{0%{opacity:0;transform:translateY(14px)scale(.5)rotate(-6deg)}60%{opacity:1;transform:translateY(-4px)scale(1.1)rotate(11deg)}80%{transform:translateY(2px)scale(.96)rotate(7deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(9deg)}}.phase-guide{max-width:648px;margin:auto;padding-inline:24px}.project-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-bottom:28px;display:flex}.project-selector{background:var(--color-bg-surface);border-radius:12px;flex:1;align-items:center;gap:8px;min-width:0;padding:8px 12px;display:flex}.project-selector select{background:0 0;border:0;width:100%;min-width:0;padding:6px;font-size:14px}.progress-pill{background:var(--color-accent);color:var(--color-text-primary);white-space:nowrap;border-radius:40px;padding:2px 12px;font-size:12px}.phase-list{gap:24px;display:grid}.phase-card{background:var(--color-bg-surface);border:2px solid var(--color-text-primary);box-shadow:var(--shadow-card);border-radius:20px;position:relative}.phase-card>summary{align-items:center;gap:12px;min-height:104px;padding:24px;display:flex;position:relative}.phase-card>summary:before{display:none}.phase-title{flex:1;min-width:0}.phase-title .eyebrow{color:var(--color-text-tertiary);margin-bottom:12px;font-size:16px;display:block}.phase-title strong{font-size:16px;line-height:1.5;display:block}.phase-star{vertical-align:baseline;margin-inline:12px;display:inline-block}.phase-checks{gap:6px;display:flex}.phase-checks span{border:1px solid var(--color-border);width:20px;height:20px;color:var(--color-border);border-radius:50%;place-items:center;font-size:12px;display:grid}.phase-checks .done{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}.phase-chevron{flex-shrink:0}.phase-card[open] .phase-chevron{transform:rotate(180deg)}.resume-label{background:var(--color-blue);color:#fff;border-radius:40px;padding:2px 12px;font-size:12px;position:absolute;top:-14px;left:12px}.phase-steps{border-top:1px solid var(--color-border);padding:8px 24px 16px}.phase-step{grid-template-columns:1fr auto;gap:6px 12px;padding:16px 0;display:grid}.phase-step+.phase-step{border-top:1px solid var(--color-border)}.phase-step .eyebrow{grid-column:1/-1;margin:0;font-size:16px}.phase-step strong{font-size:14px}.phase-step .progress-pill{align-self:center}.empty-state{text-align:center;max-width:680px;margin:auto}.project-list-card h2{overflow-wrap:anywhere;font-size:22px}.project-list-card p{font-size:14px}.lesson-container{max-width:1268px;margin-inline:auto;padding-inline:24px}.lesson-nav{grid-template-columns:1fr 1fr;gap:24px;padding:12px 0 32px;font-size:14px;display:grid}.lesson-nav a{display:block}.lesson-nav>div:last-child{text-align:right}.lesson-nav small{color:var(--color-text-tertiary);margin-bottom:4px;font-size:11px;display:block}.lesson-heading{text-align:center;margin:24px 0 48px}.lesson-heading .badge{color:var(--color-text-primary);border-color:var(--color-text-primary);border-radius:40px;padding:3px 20px}.lesson-heading .eyebrow{margin-top:20px}.lesson-heading h1{font-size:clamp(24px,3vw,32px);line-height:1.5}.lesson-goal{background:var(--color-bg-surface);border-radius:4px;justify-content:center;gap:24px;width:fit-content;margin:24px auto 0;padding:6px 20px;font-size:12px;display:flex}.dialogue{align-items:flex-start;gap:32px;margin:36px 0;display:flex}.dialogue-rui{flex-direction:row-reverse}.dialogue-person{text-align:center;flex:0 0 80px;justify-items:center;display:grid}.dialogue-person img{object-fit:cover;border-radius:50%;width:72px;height:72px}.dialogue-person>span:last-child{background:var(--color-text-primary);color:var(--color-bg-surface);z-index:1;border-radius:40px;min-width:64px;margin-top:-3px;padding:2px 12px;font-size:11px}.dialogue-body{white-space:pre-wrap;overflow-wrap:anywhere;padding-top:14px;font-size:15px;line-height:1.9}.dialogue-rui .dialogue-body{background:var(--color-bg-surface);border-radius:20px;padding:16px 24px}.lesson-task{background:var(--color-yellow);border:1px solid var(--color-text-primary);border-radius:20px;margin:40px 0;padding:24px}.lesson-task h2{font-size:16px}.lesson-task p{white-space:pre-wrap;margin-bottom:0;font-size:14px}.lesson-supplement{margin-block:40px}.try-panel{background:var(--color-bg-surface);border-radius:24px;margin-block:40px;padding:28px 40px}.try-panel>h2{margin-bottom:32px;font-size:20px}.try-panel .eyebrow{color:var(--color-text-tertiary);font-size:18px}.form-field{margin:24px 0}.form-field label{margin-bottom:10px;font-size:14px;display:block}.required-label{color:var(--color-text-tertiary);margin-left:4px;font-size:11px}.answer-summary{background:var(--color-bg-page);border-radius:16px;padding:20px}.answer-summary>div{grid-template-columns:minmax(130px,1fr) 3fr;gap:24px;padding:8px 0;font-size:14px;display:grid}.answer-summary dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.generated-prompt{border:1px solid var(--color-border);border-radius:20px;padding:24px}.generated-prompt h3{font-size:16px}.generated-prompt .prompt-code{font-family:var(--font-body);overflow-wrap:anywhere;background:0 0;border:0;padding:12px 0}.record-panel{margin:48px 0 56px}.record-panel details{margin-top:16px;font-size:14px}.preserve-lines{white-space:pre-wrap}.complete-button{min-width:min(600px,100%)}.lesson-bottom{background:var(--color-bg-surface);padding:56px 0 100px}.small-heading{color:var(--color-text-tertiary);margin:24px 0 16px;font-size:14px;font-weight:500}.step-dots{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.step-dots a{border:1px solid var(--color-text-primary);border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;display:grid}.step-dots .current{background:var(--color-accent);border-color:var(--color-accent)}.step-dots .completed{background:var(--color-accent-light)}.related-steps,.sample-process{grid-template-columns:1fr 1fr;gap:16px;display:grid}.related-step{border:1px solid var(--color-text-primary);border-radius:16px;padding:20px}.related-step .eyebrow{font-size:16px}.related-step h3{font-size:15px}.related-step p{margin-bottom:0;font-size:12px}.sample-detail{max-width:1040px;padding-block:32px 100px}.sample-detail header{margin-top:40px}.sample-detail header h1{font-size:32px}.sample-detail section{margin-top:64px}.sample-detail section h2{margin-bottom:24px;font-size:22px}.sample-detail-image{background:var(--color-hero-end);border-radius:20px;overflow:hidden}.sample-detail-image img{object-fit:contain;width:100%;height:420px}.feature-list{background:var(--color-bg-surface);border-radius:20px;padding:12px 24px;list-style:none}.feature-list li{align-items:center;gap:16px;padding:20px 0;display:flex}.feature-list li+li{border-top:1px solid var(--color-border)}.feature-list span,.process-number{background:var(--color-accent-light);border-radius:50%;place-items:center;width:36px;height:36px;font-size:14px;display:inline-grid}.soft-card{background:var(--color-bg-surface);border-radius:20px;padding:28px}.soft-card h3{margin-top:16px;font-size:17px}.soft-card p{font-size:14px}@media (width<=1100px){.hero-inner{gap:24px}.hero-copy h1{white-space:normal}.guide-decoration{display:none}}@media (width<=760px){.site-header{gap:16px;min-height:52px;margin:16px;padding:0 16px}.brand img{width:102px;height:24px}.site-nav{gap:16px;font-size:14px}.home-hero{margin-top:-84px;padding:120px 24px 56px}.hero-inner{grid-template-columns:1fr;gap:32px}.hero-copy{text-align:center}.hero-copy h1{font-size:26px}.hero-copy p{margin:16px 0 24px;font-size:13px}.hero-actions{justify-content:center;gap:12px}.chat-stage{padding:24px}.chat-text{min-height:72px;font-size:16px}.creators-label{padding:4px 16px;font-size:13px;top:-52px;left:0}.creators-inner{grid-template-columns:1fr;gap:24px}.creators{padding-block:32px}.creator{gap:20px}.sample-grid{grid-template-columns:1fr;max-width:460px;margin:auto}.sample-cover{height:210px}.home-samples{padding-block:48px}.home-guide{padding:32px 0 80px}.phase-guide{padding-inline:20px}.phase-card>summary{flex-wrap:wrap;gap:10px;padding:20px 16px}.phase-title{flex-basis:calc(100% - 38px)}.phase-checks{order:2;margin-left:auto}.phase-title strong{font-size:14px}.phase-star{margin-inline:8px}.phase-steps{padding-inline:16px}.project-selector{flex-basis:70%}.project-toolbar>.btn{width:100%}.lesson-container{padding-inline:16px}.lesson-nav{gap:16px;padding-bottom:20px;font-size:11px}.lesson-heading{margin-block:16px 32px}.lesson-heading h1{font-size:23px}.lesson-goal{text-align:left;flex-direction:column;gap:4px;padding:8px 12px}.dialogue{gap:14px;margin-block:28px}.dialogue-person{flex-basis:54px}.dialogue-person img{width:50px;height:50px}.dialogue-person>span:last-child{min-width:48px;padding-inline:6px;font-size:10px}.dialogue-body{padding-top:4px;font-size:14px}.dialogue-rui .dialogue-body{padding:12px}.lesson-task{margin-block:28px;padding:20px}.try-panel{border-radius:20px;margin-block:28px;padding:24px 16px}.try-panel>h2{font-size:18px}.answer-summary{padding:16px}.answer-summary>div{grid-template-columns:1fr;gap:4px}.answer-summary dt{font-weight:700}.generated-prompt{padding:16px}.generated-prompt .row-between{align-items:flex-start;gap:4px}.generated-prompt .row-between .btn{white-space:nowrap;min-height:24px;padding:0 4px;font-size:12px}.related-steps,.sample-process{grid-template-columns:1fr}.step-dots{justify-content:flex-start;gap:8px}.step-dots a{width:36px;height:36px}.lesson-bottom{padding-block:32px 60px}.page-section{padding-block:24px 72px}.section-heading{margin-bottom:32px}.category-tabs{gap:8px}.category-tabs button{padding:6px 12px;font-size:12px}.sample-detail-image img{height:280px}}@media (width<=480px){.site-header{gap:10px;padding-inline:12px}.brand{font-size:25px}.mobile-menu{order:-1;min-height:40px;padding:0;font-size:11px;display:block}.site-nav{background:var(--color-bg-surface);border:1px solid var(--color-text-primary);box-shadow:var(--shadow-card);border-radius:20px;justify-content:space-around;padding:16px 24px;display:none;position:absolute;top:calc(100% + 8px);left:0;right:0}.site-nav.is-open{display:flex}.mobile-break{display:block}.site-header .brand{margin-inline:auto}.mobile-menu{place-items:center;width:44px;min-width:44px;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}h1,h2,h3{font-weight:700}.home-grid-backdrop{background-size:32px 32px;background-image:linear-gradient(var(--color-grid) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid) 1px, transparent 1px)}@supports (color:color-mix(in lab, red, red)){.home-grid-backdrop{background-image:linear-gradient(color-mix(in srgb, var(--color-grid) 65%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-grid) 65%, transparent) 1px, transparent 1px)}}.guide-hand{opacity:0;pointer-events:none;width:180px;height:210px;position:absolute;top:58%;left:max(5%,50% - 600px)}.home-grid-backdrop.is-revealed .guide-hand{animation:.7s cubic-bezier(.34,1.56,.64,1) both guideHandPop}@keyframes guideHandPop{0%{opacity:0;transform:translateY(14px)scale(.5)rotate(6deg)}60%{opacity:1;transform:translateY(-4px)scale(1.1)rotate(-9deg)}80%{transform:translateY(2px)scale(.96)rotate(-4deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(-6deg)}}.guide-hand>img{width:180px;height:190px;position:absolute;bottom:0;left:0}.guide-hand>.guide-hand-spark{width:54px;height:46px;top:0;bottom:auto;left:108px}@media (width<=1100px){.guide-hand{display:none}}@media (width<=760px){.hero-copy p br{display:none}.hero-copy p{text-wrap:pretty;max-width:32em;margin-inline:auto}}.record-area{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-7);background:var(--color-bg-surface)}.record-area-heading,.completion-row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.record-project-switcher{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--color-text-tertiary);font-size:.8125rem;display:flex}.record-project-switcher select{color:var(--color-text-primary);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:6px 10px;font-family:inherit;font-size:.8125rem}.record-area-heading{margin-bottom:var(--space-3)}.record-area-label{font-size:.9375rem;font-weight:700}.save-status{color:var(--color-success);min-height:1.25em;font-size:.8125rem;font-weight:600}.record-textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-subtle);width:100%;min-height:140px;color:var(--color-text-primary);font:.9375rem/1.75 var(--font-body);resize:vertical;padding:12px 14px}.sample-record{margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.sample-record summary{cursor:pointer;min-height:44px;padding:0 var(--space-4);color:var(--color-text-secondary);align-items:center;font-size:.875rem;font-weight:600;display:flex}.sample-record pre{padding:0 var(--space-4) var(--space-4);white-space:pre-wrap;font:.8125rem/1.75 var(--font-body);color:var(--color-text-secondary);margin:0}.sample-record .btn{margin:0 var(--space-4) var(--space-4)}.completion-row{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.completion-row.is-completed{background:var(--color-success-bg);margin-inline:calc(-1 * var(--space-5));margin-bottom:calc(-1 * var(--space-5));padding:var(--space-4) var(--space-5);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.completion-note,.completion-cancel{color:var(--color-text-tertiary);font-size:.8125rem}.completion-message{color:var(--color-success);animation:.45s both completionBounce;display:block}.milestone-message{color:var(--color-success);font-size:.8125rem;margin:var(--space-1) 0!important}.completion-cancel{cursor:pointer;background:0 0;border:0;padding:4px 0;text-decoration:underline}@keyframes completionBounce{0%,to{transform:translateY(0)}45%{transform:translateY(-5px)}}.resource-page{padding:var(--space-8) 0 var(--space-9)}.resource-header{max-width:680px;margin-bottom:var(--space-8)}.resource-header h1{margin-bottom:var(--space-4);font-size:clamp(1.75rem,5vw,2.5rem)}.resource-header>p:last-child{color:var(--color-text-secondary);margin:0}.glossary-list{gap:var(--space-3);flex-direction:column;display:flex}.glossary-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);padding:var(--space-5)}.glossary-card h2{margin-bottom:var(--space-2);font-size:1rem}.glossary-card p{color:var(--color-text-secondary);white-space:pre-wrap;margin:0 0 var(--space-3);font-size:.875rem}.glossary-card a{color:var(--color-accent-strong);font-size:.8125rem;font-weight:700}:root{--color-accent-strong:#79469c}.app-dialog{border:2px solid var(--color-text-primary);width:min(800px,100% - 32px);max-height:calc(100svh - 48px);box-shadow:var(--shadow-card);color:var(--color-text-primary);background:#fff;border-radius:20px;margin:auto;padding:48px}.app-dialog.is-rename{max-width:600px}.app-dialog::backdrop{background:#25171780}.app-dialog h2{text-align:center;margin-bottom:24px;font-size:1.5rem}.dialog-close{min-width:44px;min-height:44px;font-size:28px;position:absolute;top:8px;right:12px}.project-form{flex-direction:column;gap:16px;display:flex}.project-form p{margin:0}.project-form label{font-weight:700}.project-form-hint{background:var(--color-yellow);border-radius:12px;padding:16px;font-size:.875rem}.project-new-page{max-width:720px;margin:auto}.project-new-page h1{margin-bottom:24px}.sample-preview{background:#ded8ed;border-radius:16px;padding:30px 24px;overflow:hidden}.preview-my-first-page{background:#f0e5b9}.preview-paper-summary{background:#cddfe7}.demo-window{border:2px solid var(--color-text-primary);background:#fffdf8;border-radius:12px;overflow:hidden;box-shadow:5px 5px #593c3c}.demo-toolbar{border-bottom:1px solid #d6cccc;align-items:center;gap:5px;padding:10px 12px;display:flex}.demo-toolbar>span{border:1px solid #735a5a;border-radius:50%;width:6px;height:6px}.demo-toolbar small{letter-spacing:.12em;margin-left:auto;font-size:8px}.demo-content{min-height:240px;padding:22px 18px;position:relative}.demo-kicker{letter-spacing:.1em;margin-bottom:8px;font-size:8px;display:block}.demo-title{font-size:25px;line-height:1.4;display:block}.demo-content p{margin:8px 0 14px;font-size:10px}.demo-book{align-items:center;gap:12px;display:flex}.demo-book>span{background:#dad1e6;border:1px solid #735a5a;border-left:6px solid #ae72db;flex-shrink:0;place-content:center;width:62px;height:78px;font-size:12px;display:grid}.demo-book strong{font-size:12px}.demo-tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.demo-tags>span{background:#ece7f2;border-radius:999px;padding:5px 9px;font-size:9px}.demo-flower{color:#ae72db;font-size:55px;line-height:1;position:absolute;top:38px;right:16px}.demo-profile .demo-title{font-size:23px}.demo-summary{gap:6px;display:grid}.demo-summary>span{background:#eef4f6;border:1px solid #d6cccc;border-radius:6px;padding:7px 9px;font-size:10px}.sample-detail>.sample-preview{max-width:680px;margin:0 auto;padding:44px}.sample-detail .demo-content{min-height:290px;padding:32px}.sample-detail .demo-title{font-size:36px}.sample-detail .demo-content p,.sample-detail .demo-summary>span{font-size:14px}.sample-detail .demo-book strong{font-size:16px}.sample-detail .demo-tags>span{font-size:12px}.record-project-switcher{flex-wrap:wrap}.record-project-switcher select{max-width:100%}@media (width<=640px){.app-dialog{padding:48px 24px 24px}.app-dialog h2{font-size:1.3rem}.sample-detail>.sample-preview,.sample-detail .demo-content{padding:20px}.sample-detail .demo-title{font-size:26px}.completion-row>.btn{width:100%}}@media (prefers-reduced-motion:reduce){.completion-message{animation:none}}.project-form input{border:1px solid var(--color-text-primary);background:var(--color-bg-page);width:100%;min-height:52px;font:inherit;color:inherit;border-radius:8px;padding:12px 16px}html{scrollbar-gutter:stable}.app-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 32px);position:fixed;inset:0;overflow-y:auto}.creator-dialog{max-width:640px}.creator-dialog-photo{border-radius:50%;margin:0 auto 24px;display:block}.project-shortcut{background:var(--color-accent-light);border-radius:var(--radius-pill);align-items:center;gap:8px;min-width:44px;max-width:220px;min-height:44px;padding:8px 14px;font-size:13px;display:flex}.project-shortcut svg{flex-shrink:0}.project-shortcut span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=640px){.project-shortcut{max-width:44px;padding:10px}.project-shortcut span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.app-dialog{padding:48px 20px 24px}}.lesson-project-context{border:1px solid var(--color-border);background:var(--color-accent-light);border-radius:16px;margin:24px 0 36px;padding:20px 24px}.lesson-project-context label{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.lesson-project-context select{border:1px solid var(--color-border);min-width:min(280px,100%);max-width:100%;font:inherit;color:inherit;background:#fff;border-radius:8px;padding:10px 14px}.lesson-project-context .btn{margin-top:16px}.lesson-exchange{margin-bottom:40px}.lesson-supplement{border:1px solid var(--color-border);border-radius:16px;padding:20px}.lesson-supplement>summary{cursor:pointer;min-height:24px;font-size:14px;font-weight:700}.lesson-supplement[open]>summary{margin-bottom:24px}.practice-number{color:var(--color-accent-strong);margin-top:48px;font-weight:700}.draft-status{font-size:12px}.dialogue-pin .dialogue-body,.dialogue-rui .dialogue-body{background:var(--color-accent-light);border-radius:20px;padding:16px 24px}.dialogue-rui .dialogue-body{background:var(--color-yellow)}@media (width<=640px){.dialogue-pin .dialogue-body,.dialogue-rui .dialogue-body{padding:14px 16px}.lesson-project-context{padding:16px}}:root{--color-on-accent:#fff}.btn-primary,.category-tabs button.selected,.progress-pill,.creators-label,.creator-photo>span,.step-dots .current{color:var(--color-on-accent)}.btn-primary:hover{color:#fff}h1,h2,h3{overflow-wrap:anywhere}.record-area-label{overflow-wrap:anywhere;min-width:0;max-width:100%}.lesson-task p{overflow-wrap:anywhere}.sample-preview{--demo-accent:#dad1e6;--demo-ink:#684879}.preview-my-first-page{--demo-accent:#f0e5b9;--demo-ink:#725c25}.preview-paper-summary{--demo-accent:#cddfe7;--demo-ink:#385a6e}.preview-weekend-pocket{--demo-accent:#d7e6f0;--demo-ink:#365f7c;background:#d7e6f0}.preview-tiny-harvest{--demo-accent:#dfe9ca;--demo-ink:#506039;background:#dfe9ca}.preview-sunday-table{--demo-accent:#f3d6bd;--demo-ink:#8b4d2e;background:#f3d6bd}.preview-town-atelier{--demo-accent:#f1d8df;--demo-ink:#8a465b;background:#f1d8df}.preview-meeting-compass{--demo-accent:#d4e7df;--demo-ink:#386354;background:#d4e7df}.preview-packing-list{--demo-accent:#e0def4;--demo-ink:#555182;background:#e0def4}.demo-entries{gap:8px;display:grid}.demo-entry{overflow-wrap:anywhere;align-items:center;gap:9px;font-size:10px;line-height:1.6;display:flex}.demo-entry-mark{color:var(--demo-ink);flex-shrink:0;font-weight:700}.demo-layout-shelf .demo-entry{border-bottom:1px solid var(--demo-accent);padding:8px}.demo-layout-shelf .demo-entry-mark{background:var(--demo-accent);border-left:3px solid var(--demo-ink);border-radius:2px 5px 5px 2px;place-items:center;width:28px;height:37px;display:grid}.demo-layout-poster{background:linear-gradient(155deg, var(--demo-accent), #fffdf8 70%)}.demo-layout-poster .demo-title{max-width:10em;font-family:serif;font-size:25px}.demo-layout-poster .demo-entry{border-top:1px solid var(--demo-accent);padding-top:8px}.demo-layout-workflow .demo-entry{background:var(--demo-accent);border-radius:6px;padding:9px}.sample-preview .demo-tags>span{background:var(--demo-accent)}.sample-card .sample-preview{border-radius:12px;height:180px;padding:12px 20px;position:relative}.sample-card .demo-window{transform-origin:top;width:310px;position:absolute;top:12px;left:50%;transform:translate(-50%)scale(.62)}.sample-card .demo-content{min-height:0;padding:12px 16px}.sample-card .demo-title{font-size:22px}.sample-card .demo-content p{margin:6px 0 10px;font-size:10px;line-height:1.5}.sample-card .demo-tags{display:none}.sample-card .demo-entry{padding:5px;font-size:10px}.sample-card .demo-layout-shelf .demo-entry-mark{width:22px;height:24px}.sample-card .demo-kicker{margin-bottom:4px;font-size:9px}.sample-card .demo-toolbar{padding:7px 12px}.sample-card .demo-entries{gap:4px}.sample-detail .demo-entry{font-size:14px}.sample-detail .demo-layout-poster .demo-title{font-size:36px}@media (width<=640px){.sample-detail .demo-layout-poster .demo-title{font-size:26px}}.project-dialog{padding:28px}.project-dialog h2{text-align:left;margin:0 44px 12px 0;font-size:18px}.project-dialog .project-form>p:first-child,.project-dialog .project-form label{font-size:14px}.project-dialog .project-form-hint{border-radius:16px;padding:12px 16px}.feature-list li:nth-child(2)>span{background:var(--color-yellow)}.feature-list li:nth-child(3)>span{background:#e0f4ff}@media (width>=761px) and (width<=1100px){.creators-label{left:0}}@media (width<=760px){.hero-chat{margin-top:0}.hero-inner{max-width:550px}.creators{padding-inline:32px}.project-dialog{padding:24px 20px}}.creator-dialog{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:28px;max-width:800px;padding:28px;display:grid}.creator-dialog>h2{text-align:left;grid-area:1/2;margin:0 32px 0 0}.creator-dialog-photo{grid-area:1/1;width:112px;height:112px;margin:0}.creator-dialog>p{grid-column:1/-1;margin:0;font-size:14px}.lesson-project-context{background:var(--color-bg-surface);grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;padding:16px 20px;font-size:14px;display:grid}.lesson-project-context>.btn{grid-area:1/2/3;align-self:center;margin:0}.lesson-project-context p{margin:0}@media (width<=760px){.lesson-project-context{grid-template-columns:minmax(0,1fr)}.lesson-project-context>.btn{grid-area:auto/1;justify-self:start}.creator-dialog{grid-template-columns:72px minmax(0,1fr);gap:20px;padding:24px 20px}.creator-dialog-photo{width:72px;height:72px}.creator-dialog>h2{font-size:18px}}.prompt-copy{background:0 0;padding:8px 4px;font-size:14px}.dialog-close{background:0 0;width:44px;height:44px;padding:6px}.dialog-close img{background:var(--color-text-tertiary);border-radius:50%;width:32px;height:32px}.splash-screen{z-index:9999;background:var(--color-bg-page);clip-path:inset(0);justify-content:center;align-items:center;transition:clip-path .92s cubic-bezier(.65,0,.35,1);display:flex;position:fixed;inset:0}.splash-screen.hide{clip-path:inset(0 0 100%)}.splash-inner{text-align:center;opacity:1;flex-direction:column;justify-content:center;align-items:center;gap:24px;transition:opacity .3s,transform .38s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(0)scale(1)}.splash-inner.leave{opacity:0;transform:translateY(-7px)scale(.985)}.splash-brand-group{flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.splash-kana-group{justify-content:center;align-items:center;gap:12px;min-height:56px;display:flex}.splash-kana-bubble{opacity:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex;transform:translateY(-44px)scale(.8)}.splash-kana-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block;box-shadow:0 6px 16px #b06adf24}.bubble-1{animation:.72s cubic-bezier(.2,.92,.2,1.18) 80ms forwards splashKanaDrop}.bubble-2{animation:.72s cubic-bezier(.2,.92,.2,1.18) .2s forwards splashKanaDrop}.bubble-3{animation:.72s cubic-bezier(.2,.92,.2,1.18) .32s forwards splashKanaDrop}@keyframes splashKanaDrop{0%{opacity:0;transform:translateY(-44px)scale(.8)}62%{opacity:1;transform:translateY(4px)scale(1.04)}82%{opacity:1;transform:translateY(-3px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.splash-logo-wrap{opacity:0;filter:blur(2px);width:min(320px,60vw);animation:.78s cubic-bezier(.16,.9,.22,1.08) 1.12s forwards splashLogoIn;transform:translateY(14px)scale(.94)}.splash-logo{width:100%;height:auto;display:block}@keyframes splashLogoIn{0%{opacity:0;filter:blur(2px);transform:translateY(14px)scale(.94)}68%{opacity:1;filter:blur();transform:translateY(-3px)scale(1.018)}84%{opacity:1;filter:blur();transform:translateY(1px)scale(.996)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.splash-subcopy{color:var(--color-text-primary);letter-spacing:.02em;opacity:0;filter:blur(2px);margin:0;font-size:18px;font-weight:700;animation:.58s cubic-bezier(.2,.75,.2,1) 1.78s forwards splashSubIn;transform:translateY(9px)}@keyframes splashSubIn{0%{opacity:0;filter:blur(2px);transform:translateY(9px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (width<=700px){.splash-logo-wrap{width:min(260px,66vw)}.splash-kana-group{gap:9px;min-height:42px}.splash-kana-bubble{width:34px;height:34px}.splash-subcopy{font-size:16px}}@media (prefers-reduced-motion:reduce){.splash-screen,.splash-inner,.splash-kana-bubble,.splash-logo-wrap,.splash-subcopy{opacity:1!important;filter:none!important;transition:none!important;animation:none!important;transform:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
