/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@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;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--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 components;@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}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end: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}.table{display:table}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.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}.flex-wrap{flex-wrap:wrap}.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}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--color-bg-page:#f5f4f2;--color-bg-surface:#fff;--color-bg-subtle:#f0eded;--color-bg-paper:#fffdf6;--color-text-primary:#593c3c;--color-text-secondary:#735a5a;--color-text-tertiary:#806b6b;--color-border:#d6cccc;--color-accent:#8b4eb8;--color-accent-hover:#72399c;--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;--font-display:"Handjet", var(--font-body);--font-futura:"Futura", "Jost", var(--font-body);--letter-spacing:.3px;--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:smooth}body{font-family:var(--font-body);letter-spacing:var(--letter-spacing);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:var(--letter-spacing);line-height:1.9}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:var(--letter-spacing);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:var(--letter-spacing);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,transform .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-secondary{background:var(--color-bg-subtle);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-ghost{color:var(--color-text-secondary);background:0 0;padding:8px 14px}.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:104px}.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:2px solid var(--color-text-primary);background:var(--color-bg-paper);width:100%;min-height:112px;box-shadow:3px 3px 0 var(--color-text-primary);caret-color:var(--color-accent-hover);border-radius:16px 12px 18px 13px;padding:16px 18px;line-height:1.7;transition:background .15s,box-shadow .15s,transform .15s}textarea:hover{background:var(--color-bg-paper)}@supports (color:color-mix(in lab, red, red)){textarea:hover{background:color-mix(in srgb, var(--color-bg-paper) 82%, var(--color-accent-light))}}textarea:focus{background:var(--color-bg-paper);box-shadow:3px 3px 0 var(--color-text-primary);outline:none;transform:none}textarea::placeholder{color:var(--color-text-tertiary);opacity:.72}.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:sticky;top:20px}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--color-bg-surface) 90%, 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{background:var(--color-text-primary);color:var(--color-bg-surface);text-align:center;margin-top:auto;padding:24px}.site-footer nav{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:10px;font-size:14px;display:flex}.site-footer small{font-size:12px}.legal-content a{color:var(--color-accent-hover);text-underline-offset:3px;text-decoration:underline}.legal-page .resource-header{margin-bottom:var(--space-6)}.legal-date{color:var(--color-text-tertiary);font-size:.8125rem}.legal-content{gap:var(--space-5);flex-direction:column;display:flex}.legal-section{padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.legal-section:last-child{border-bottom:0}.legal-section h2{margin-bottom:var(--space-3);font-size:1.125rem}.legal-section p,.legal-section ul{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:.9375rem}.legal-section p:last-child,.legal-section ul:last-child{margin-bottom:0}.legal-section ul{padding-left:1.4em}.legal-section a{color:var(--color-accent-hover);text-underline-offset:3px;font-weight:700;text-decoration:underline}.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:var(--letter-spacing);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:var(--letter-spacing);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}.hero-actions{justify-content:flex-start}.hero-pause{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg-surface);color:var(--color-text-secondary);padding:4px 12px;font-size:12px;position:absolute;top:12px;right:16px}.hero-chat{background:var(--color-bg-surface);border-radius:32px;flex-direction:column;height:340px;margin-top:4px;display:flex;position:relative;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:12px;animation-delay:.45s;top:16px;right:12px}.twinkle-3{color:#e7c2fa;font-size:12px;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:12px;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;align-self:flex-start}.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:12px}.meal-btn{background:var(--color-accent);width:100%;height:26px;color:var(--color-on-accent);border:0;border-radius:999px;font-size:12px;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:12px;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:12px}.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-samples{padding-block:60px}.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-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;align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-size:12px;display:flex}.sample-category{background:var(--Base-primary,#f8f4fb);border-radius:40px;justify-content:center;align-items:center;gap:10px;padding:2px 8px;display:flex}.sample-note{text-align:center;margin:24px 0}.home-guide{padding:60px 24px 120px;position:relative}.guide-decoration{opacity:0;pointer-events:none;position:absolute;top:530px;right:max(5%,50% - 600px)}.home-guide.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:12px;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);text-align:left;border-radius:16px;width:min(100%,760px);margin:24px auto 0;padding:16px 20px;font-size:13px}.lesson-goal-meta{justify-content:space-between;gap:24px;display:flex}.lesson-goal-meta>span:last-child{text-align:right;margin-left:auto}.lesson-toc{border-top:1px solid var(--color-border);margin-top:12px;padding-top:12px}.lesson-toc>p{margin:0 0 8px;font-size:12px;font-weight:700}.lesson-toc ol{counter-reset:lesson-toc;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.lesson-toc li{counter-increment:lesson-toc}.lesson-toc a{background:var(--color-bg-page);min-height:40px;color:var(--color-text-primary);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-weight:600;text-decoration:none;display:flex}.lesson-toc a:before{content:counter(lesson-toc);background:var(--color-text-primary);width:22px;height:22px;color:var(--color-bg-surface);border-radius:50%;flex:0 0 22px;place-items:center;font-size:12px;display:grid}.dialogue{align-items:flex-start;gap:20px;margin:22px 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:12px}.dialogue-bubbles{flex:0 auto;justify-items:start;gap:8px;min-width:0;display:grid}.dialogue-rui .dialogue-bubbles{justify-items:end}.dialogue-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:17px;line-height:1.85}.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-task-example{align-items:flex-start;gap:8px;margin-top:12px;font-size:14px;display:flex}.lesson-task-example p{flex:none}.lesson-task-example ul{margin:0;padding-left:1.4em}.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}.prompt-choice{border:0;padding:0}.prompt-choice legend{margin-bottom:10px;font-size:14px}.prompt-choice-options{gap:10px;display:grid}.prompt-choice-options label{border:1px solid var(--color-border);cursor:pointer;border-radius:12px;align-items:center;gap:10px;margin:0;padding:12px 14px;display:flex}.prompt-choice-options label:has(input:checked){border-color:var(--color-accent);background:var(--color-bg-subtle)}.prompt-choice-options input{width:auto;margin:0}.prompt-other-field{margin-top:16px}.required-label{color:var(--color-text-tertiary);margin-left:4px;font-size:12px}.prefill-label{color:var(--color-success);margin-left:8px;font-size:12px}.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}.prompt-expand{margin-bottom:20px}.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:2px 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)}.process-number{background:var(--color-accent-light);border-radius:50%;place-items:center;width:36px;height:36px;font-size:14px;display:inline-grid}@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;top: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}.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:12px}.lesson-heading{margin-block:16px 32px}.lesson-heading h1{font-size:23px}.lesson-goal{padding:14px}.lesson-goal-meta{flex-direction:column;gap:4px}.lesson-toc ol{grid-template-columns:1fr}.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:12px}.dialogue-body{font-size:16px}.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}.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}}@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:12px;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){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}h1,h2,h3{font-weight:700}.home-grid,.grid-bg{isolation:isolate;clip-path:inset(0);position:relative}.home-grid:before,.grid-bg:before{content:"";z-index:-1;pointer-events:none;background-size:32px 32px;background-image:linear-gradient(var(--color-grid) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid) 1px, transparent 1px);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.home-grid:before,.grid-bg:before{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:304px;left:max(5%,50% - 600px)}.home-guide.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{margin-bottom:var(--space-3);color:var(--color-text-tertiary);font-size:.8125rem}.record-project-switcher-heading{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.record-project-switcher-heading strong{color:var(--color-text-primary)}.record-project-change{border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer;opacity:.65;background:0 0;border:0;padding:4px 8px;font-size:.75rem}.record-project-change:hover,.record-project-change:focus-visible{opacity:1}.record-project-switcher-editor{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;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-project-switcher-editor p{flex-basis:100%;margin:0;font-size:.75rem}.record-project-switcher-editor .btn{min-height:36px;padding:6px 12px;font-size:.75rem}.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{min-height:140px;font:.9375rem/1.75 var(--font-body)}.sample-record{margin-top:var(--space-3)}.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);scroll-margin-top:110px}.glossary-card h3{margin:0 0 var(--space-2);flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:1.0625rem;display:flex}.glossary-card h3 small{color:var(--color-text-tertiary);font-size:.75rem;font-weight:500}.glossary-card p.glossary-short{color:var(--color-text-primary);font-size:.9375rem}.glossary-section{margin-top:var(--space-7)}.glossary-section>h2{margin-bottom:var(--space-4);align-items:baseline;gap:12px;font-size:1.25rem;display:flex}.glossary-section>h2 small{color:var(--color-text-tertiary);font-size:.8125rem;font-weight:500}.glossary-aside{background:var(--color-accent-light);border-radius:14px;align-items:center;gap:8px;padding:8px 12px;display:flex}.glossary-aside-rui{background:var(--color-yellow)}.glossary-aside img{border-radius:50%;flex-shrink:0}.glossary-card p.glossary-aside{color:var(--color-text-primary)}.glossary-aside b{margin-right:8px;font-size:.75rem}.glossary-meta{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.glossary-card a.glossary-related{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-secondary);padding:2px 10px;font-weight:500}.toolmap-grid{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);border-radius:16px;display:grid;overflow:hidden}.toolmap-row{grid-template-columns:96px 1fr 1fr;display:grid}.toolmap-row+.toolmap-row{border-top:1px solid var(--color-border)}.toolmap-row>span{min-width:0;padding:12px 14px}.toolmap-row>span+span{border-left:1px solid var(--color-border)}.toolmap-head{background:var(--color-accent-light);font-size:.875rem;font-weight:700}.toolmap-head small{color:var(--color-text-secondary);font-size:.75rem;font-weight:500;display:block}.toolmap-maker{color:var(--color-text-secondary);font-size:.8125rem;font-weight:700}.toolmap-tool{gap:2px;display:grid}.toolmap-tool strong{font-size:.9375rem}.toolmap-tool small{color:var(--color-text-secondary);font-size:.75rem;line-height:1.6}.toolmap-empty{color:var(--color-text-tertiary)}.toolmap-github{border:1px dashed var(--color-border);background:var(--color-bg-surface);border-radius:16px;grid-template-columns:96px 1fr;align-items:start;gap:14px;margin-top:12px;padding:12px 14px;display:grid}.toolmap-github p{margin:0;font-size:.875rem}.step-terms{background:#f6f4f0;border-radius:20px;margin:8px 0 32px;padding:18px 20px}.step-terms h2{align-items:center;gap:8px;margin:0 0 12px;font-size:.9375rem;display:flex}.step-terms-list{gap:8px;display:grid}.step-term{background:var(--color-bg-surface);border-radius:14px}.step-term summary{cursor:pointer;gap:2px;padding:10px 14px;list-style:none;display:grid}.step-term summary::-webkit-details-marker{display:none}.step-term>summary:before{content:none}.step-term summary strong:after{content:" ＋";color:var(--color-accent)}.step-term[open] summary strong:after{content:" −"}.step-term summary span{color:var(--color-text-secondary);font-size:.875rem}.step-term p{margin:0;padding:0 14px 8px;font-size:.9375rem;line-height:1.85}.step-term a{color:var(--color-accent-strong);padding:0 14px 12px;font-size:.8125rem;font-weight:700;display:inline-block}@media (width<=640px){.toolmap-row{grid-template-columns:70px 1fr 1fr}.toolmap-row>span{padding:10px 8px}.toolmap-tool small{display:none}.toolmap-github{grid-template-columns:1fr;gap:4px}}.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:focus{outline:none}.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}.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}.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}.project-name-field{gap:var(--space-2);display:flex}.project-name-field input{min-width:0}.project-name-random{border:1px solid var(--color-border);background:var(--color-bg-surface);width:52px;min-width:52px;min-height:52px;color:var(--color-text-secondary);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:inline-grid}html{scrollbar-gutter:stable}.app-dialog{overscroll-behavior:contain;height:auto;max-height:calc(100dvh - 32px);margin:0;position:fixed;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%)}.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:14px 22px}.dialogue-pin .dialogue-bubbles>:first-child{border-top-left-radius:6px}.dialogue-rui .dialogue-bubbles>:first-child{border-top-right-radius:6px}.dialogue-body.is-beat{padding:10px 20px}.dialogue-body strong{background:linear-gradient(#0000 62%,#ffec8ce6 62%);font-weight:700}.conversation.is-live .dialogue-person,.conversation.is-live .dialogue-body{opacity:.3;transition:opacity .35s,translate .35s;translate:0 6px}.conversation.is-live .dialogue.is-shown .dialogue-person,.conversation.is-live .dialogue.is-shown .dialogue-body{opacity:1;translate:0}.dialogue-rui .dialogue-body{background:var(--color-yellow)}@media (width<=640px){.dialogue-pin .dialogue-body,.dialogue-rui .dialogue-body{padding:12px 16px}.dialogue-body.is-beat{padding:8px 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-detail{padding-bottom:100px}.sample-hero{background:linear-gradient(#ffffff8c 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(90deg, #ffffff8c 1px, transparent 1px) 0 0 / 32px 32px, var(--sample-color,var(--color-hero-end));border-bottom:2px solid var(--color-text-primary);padding:40px 0 56px}.sample-hero-inner{max-width:1180px;padding-inline:var(--space-5);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:48px;margin-inline:auto;display:grid}.sample-hero-text .text-link{margin-bottom:28px;display:inline-block}.sample-hero h1{margin:0 0 16px;font-size:40px;line-height:1.25}.sample-hero-lead{margin:0;font-size:16px;line-height:1.9}.sample-hero-cta{margin-top:24px}.sample-hero .sample-preview{border:2px solid var(--color-text-primary);box-shadow:8px 8px 0 var(--color-text-primary);border-radius:20px;rotate:1deg}.sample-detail-body{max-width:1040px;padding-inline:var(--space-5);margin-inline:auto}.sample-hero-note{margin:16px 0 0}.sample-detail-body section{margin-top:72px}.sample-detail-body section h2{margin-bottom:24px;font-size:24px}.sample-play{scroll-margin-top:110px}.sample-play .help-text{margin-top:14px}.sample-demo{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);box-shadow:var(--shadow-card);border-radius:20px;overflow:hidden}.sample-demo-bar{border-bottom:2px solid var(--color-text-primary);background:var(--sample-color,var(--color-bg-subtle));align-items:center;gap:10px;padding:10px 16px;font-size:13px;display:flex}.sample-demo-dots{gap:6px;display:flex}.sample-demo-dots i{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);border-radius:50%;width:10px;height:10px}.sample-demo-label{letter-spacing:.14em;background:var(--color-text-primary);color:var(--color-bg-surface);border-radius:var(--radius-pill);padding:2px 8px;font-size:12px;font-weight:700}.sample-demo-title{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.sample-demo-bar a{white-space:nowrap;text-underline-offset:3px;margin-left:auto;font-weight:700;text-decoration:underline}.sample-demo-screen{aspect-ratio:16/10;background:var(--sample-color,var(--color-bg-subtle));position:relative}.sample-demo-screen iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.sample-demo-poster{cursor:pointer;background:0 0;border:0;width:100%;padding:0;position:absolute;inset:0;overflow:hidden}.sample-demo-poster img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.sample-demo-poster:after{content:"";background:#fffdf666;position:absolute;inset:0}.sample-demo-play{z-index:1;border-radius:var(--radius-pill);background:var(--color-text-primary);color:var(--color-bg-surface);white-space:nowrap;align-items:center;gap:10px;padding:16px 32px;font-size:20px;font-weight:700;transition:transform .15s;display:inline-flex;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:5px 5px #593c3c4d}.sample-demo-poster:hover .sample-demo-play,.sample-demo-poster:focus-visible .sample-demo-play{transform:scale(1.06)}.sample-demo-poster:hover img{transform:scale(1.03)}.sample-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;list-style:none;display:grid}.sample-features li{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);box-shadow:4px 4px 0 var(--color-text-primary);border-radius:20px;flex-direction:column;gap:14px;padding:22px;display:flex}.sample-features span{border:2px solid var(--color-text-primary);background:var(--sample-color,var(--color-accent-light));border-radius:50%;place-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:grid}.sample-features strong{font-size:15px;line-height:1.7}.sample-ai{border:2px solid var(--color-text-primary);background:linear-gradient(#ffffff80 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(90deg, #ffffff80 1px, transparent 1px) 0 0 / 32px 32px, var(--sample-color,var(--color-accent-light));border-radius:24px;padding:32px}.sample-ai-parts{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;font-size:13px;display:flex}.sample-ai-parts span{margin-right:4px;font-weight:700}.sample-ai-parts strong{border:2px solid var(--color-text-primary);border-radius:var(--radius-pill);background:var(--color-bg-surface);padding:4px 12px}.sample-steps{gap:12px;padding:0;list-style:none;display:grid;position:relative}.sample-steps:before{content:"";border-left:2px dashed var(--color-border);position:absolute;top:24px;bottom:24px;left:41px}.sample-steps a{background:var(--color-bg-surface);border:2px solid #0000;border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 20px;transition:border-color .15s,transform .15s;display:grid;position:relative}.sample-steps a:hover{border-color:var(--color-text-primary);transform:translate(4px)}.sample-steps .process-number{border:2px solid var(--color-text-primary);background:var(--sample-color,var(--color-accent-light));width:40px;height:40px;font-weight:700}.sample-steps-body{gap:2px;display:grid}.sample-steps-body small{letter-spacing:.1em;color:var(--color-accent-hover);font-size:12px;font-weight:700}.sample-steps-body strong{font-size:16px}.sample-steps-body span{color:var(--color-text-secondary);font-size:14px}.sample-steps-arrow{font-size:18px}.sample-card{position:relative}.sample-playable{z-index:1;border:2px solid var(--color-text-primary);border-radius:var(--radius-pill);background:var(--color-text-primary);color:var(--color-bg-surface);padding:4px 12px;font-size:12px;font-weight:700;position:absolute;top:26px;left:26px;box-shadow:2px 2px #593c3c4d}@media (width<=900px){.sample-hero-inner{grid-template-columns:1fr;gap:28px}.sample-hero h1{font-size:30px}.sample-features{grid-template-columns:1fr}}@media (width<=760px){.sample-hero{padding:24px 0 36px}.sample-hero-text .text-link{margin-bottom:16px}.sample-hero h1{font-size:26px}.sample-hero-lead{font-size:14px}.sample-detail-body section{margin-top:56px}.sample-detail-body section h2{font-size:20px}.sample-demo-screen.is-playing{aspect-ratio:3/4}.sample-demo-title{display:none}.sample-demo-play{padding:10px 20px;font-size:16px}.sample-ai{padding:20px 16px}.sample-steps a{gap:12px;padding:14px}}.sample-preview{background:var(--color-hero-end);border-radius:14px;overflow:hidden}.sample-preview img{aspect-ratio:8/5;width:100%;height:auto;display:block}.sample-level{border-radius:var(--radius-pill);border:1.5px solid;align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:700}.sample-level-1{color:#2f7a4a;background:#eaf6ee}.sample-level-2{color:#8a5a00;background:#fff4d6}.sample-level-3{color:var(--color-accent-hover);background:var(--color-accent-light)}.sample-card .sample-level{margin-bottom:-6px}.sample-tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.sample-tags>span:not(.sample-level){border-radius:var(--radius-pill);background:var(--color-bg-surface);border:1.5px solid var(--color-border);padding:3px 10px;font-size:12px}.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}@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}.creator-links{flex-wrap:wrap;grid-column:1/-1;gap:8px;margin:-12px 0 0;padding:0;list-style:none;display:flex}.creator-links a{border:2px solid var(--color-text-primary);border-radius:var(--radius-pill);background:var(--color-bg-surface);padding:6px 14px;font-size:13px;font-weight:700;display:inline-block}.creator-links a:hover{background:var(--color-accent-light)}.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;position:relative}.lesson-project-context>.btn{grid-area:1/2/3;align-self:center;margin:0}.lesson-project-context p{margin:0}.lesson-project-context.is-compact{background:0 0;border:0;justify-content:center;margin-block:16px 28px;padding:0;display:flex}.lesson-project-current{color:var(--color-text-secondary);align-items:center;gap:4px;font-size:13px;display:inline-flex}.lesson-project-current>span{color:var(--color-text-tertiary);margin-right:4px}.lesson-project-edit{width:28px;height:28px;color:var(--color-text-tertiary);opacity:.55;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.lesson-project-edit:hover,.lesson-project-edit:focus-visible{opacity:1}.lesson-project-close{width:32px;height:32px;color:var(--color-text-tertiary);cursor:pointer;opacity:.6;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid;position:absolute;top:8px;right:8px}.lesson-project-close:hover,.lesson-project-close:focus-visible{opacity:1}@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:var(--letter-spacing);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}}.creators-label>span{font-family:var(--font-display);font-size:18px}.creator-title{font-family:var(--font-futura);font-size:24px}.creator-title small{font-family:var(--font-futura);font-size:16px}.eyebrow-display{font-family:var(--font-display);font-size:28px}.home-grid .eyebrow-display{font-size:24px}.section-heading-action{margin-top:40px}.lesson-heading .eyebrow{font-family:var(--font-display);font-size:28px}.try-panel .eyebrow{font-family:var(--font-display);font-size:20px}@media (width<=760px){.home-hero,.creators{padding-inline:16px}.creators-label>span{font-size:14px}.creator-title{font-size:16px}.creator-title small{font-size:14px}.eyebrow-display,.home-grid .eyebrow-display{font-size:20px}.section-heading-action{margin-top:32px}.lesson-heading .eyebrow,.try-panel .eyebrow{font-size:16px}}.site-nav a{font-family:var(--font-futura)}@media (width>=641px){.project-shortcut svg{display:none}}@media (width<=480px){.mobile-menu,.mobile-menu:hover{background:0 0;width:44px;min-width:44px;height:44px;min-height:44px;padding:0}.mobile-menu img{width:44px;height:44px}}.lesson-project-cta{align-items:center;margin:48px 0 56px}.lesson-project-cta>.btn{grid-row:auto}.sample-detail .eyebrow{font-family:var(--font-display);margin:0 0 8px;font-size:20px}@media (width<=760px){.sample-detail .eyebrow{margin:0 0 4px;font-size:16px}}.phase-title .eyebrow,.phase-step .eyebrow{font-family:var(--font-display);font-size:16px}.site-nav a,.project-shortcut,.creator-plus,.lesson-toc a,.record-project-change,.lesson-project-edit,.lesson-project-close,.project-name-random{transition:transform .15s}@media (hover:hover){.btn:not(:disabled):hover,.project-shortcut:hover,.lesson-toc a:hover{transform:scale(1.05)}.site-nav a:hover,.record-project-change:hover,.lesson-project-edit:hover,.lesson-project-close:hover,.project-name-random:hover{transform:scale(1.1)}.creator:hover .creator-plus{transform:scale(1.2)}}.lesson-task{border:2px solid var(--color-text-primary);background:var(--color-yellow);box-shadow:4px 4px 0 var(--color-text-primary);padding:20px 24px}.lesson-task h2{margin:0 0 8px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{scroll-padding-top:110px}#main-content:focus{outline:none}@media print{.conversation.is-live .dialogue-person,.conversation.is-live .dialogue-body{opacity:1;translate:none}}p,li,dd,.dialogue-body{word-break:auto-phrase;text-wrap:pretty}h1,h2,h3{word-break:auto-phrase;text-wrap:balance}.sample-ai .dialogue-pin .dialogue-body{background:#fff}@media (width<=480px){.dialogue-person{flex-basis:48px}.dialogue-person img{width:44px;height:44px}.toolmap-row{grid-template-columns:72px 1fr 1fr}.toolmap-row>span{padding:10px 8px}.toolmap-maker{overflow-wrap:anywhere;font-size:.75rem}}.lesson-nav a{border:2px solid var(--color-text-primary);background:var(--color-bg-surface);box-shadow:3px 3px 0 var(--color-text-primary);border-radius:16px;padding:14px 18px;transition:transform .1s,box-shadow .1s}.lesson-nav a:active{box-shadow:none;transform:translate(3px,3px)}@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-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
