@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) 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-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;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:where(:not(iframe)){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{.fixed{position:fixed}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mt-1{margin-top:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.h-10{height:calc(var(--spacing) * 10)}.h-14{height:calc(var(--spacing) * 14)}.max-h-28{max-height:calc(var(--spacing) * 28)}.min-h-0{min-height:0}.min-h-24{min-height:calc(var(--spacing) * 24)}.w-full{width:100%}.max-w-full{max-width:100%}.min-w-0{min-width:0}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.cursor-text{cursor:text}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.object-contain{object-fit:contain}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-\[14px\]{padding-inline:14px}.pt-1{padding-top:var(--spacing)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[17px\]{font-size:17px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.italic{font-style:italic}.underline{text-decoration-line:underline}.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))}@media(min-width:48rem){.md\:hidden{display:none}.md\:inline{display:inline}}}:root{font-optical-sizing:auto;color:#1d1d1f;--surface:#fff;--surface-subtle:#f5f5f7;--surface-active:#ececf0;--text:#1d1d1f;--text-muted:#6e6e73;--focus:#8e8e93;--success:#1f7a3d;--error:#b3261e;--line:#e5e5ea;--sidebar-gradient-start:#ece8f2;--sidebar-gradient-middle:#f6f5f7;--sidebar-gradient-end:#fff;--description-accent:#92be4b;--radius-field:10px;--radius-card:14px;--radius-round:999px;--ease-ui:cubic-bezier(.23, 1, .32, 1);--drag-shadow:0 8px 24px #00000014;background:#fff;font-family:Inter Variable,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{background:var(--surface);min-width:320px;color:var(--text)}body.is-dragging,body.is-dragging *{cursor:grabbing!important}button,[role=button]{cursor:pointer}button:disabled,[role=button][aria-disabled=true]{cursor:default}button,a,input,[contenteditable=true]{-webkit-tap-highlight-color:transparent}button{transition:transform .15s var(--ease-ui)}button:not(:disabled):active{transform:scale(.98)}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:1.5px solid var(--text);outline-offset:2px}input::placeholder,[contenteditable=true]:empty:before{color:var(--focus)}[contenteditable=true]:empty:before{content:attr(data-placeholder);pointer-events:none}.ui-text{color:var(--text)}.ui-muted{color:var(--text-muted)}.ui-faint{color:var(--focus)}.ui-error{color:var(--error)}.scroll-area{scrollbar-width:none;-ms-overflow-style:none;scroll-padding:12px}.scroll-area::-webkit-scrollbar{display:none}.skip-link{z-index:50;opacity:0;border-radius:var(--radius-field);background:var(--surface);color:var(--text);pointer-events:none;padding:12px 16px;font-size:14px;font-weight:600;position:fixed;top:16px;left:16px;transform:translateY(-200%)}.skip-link:focus{opacity:1;pointer-events:auto;transform:translateY(0)}.main-panel:focus{outline:none}.app-viewport{width:100vw;height:100dvh;overflow:hidden}.app-shell{background:var(--surface);flex-direction:column;width:100%;min-width:0;height:100%;display:flex;overflow:hidden}.main-panel{background:var(--surface);flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.start-screen{z-index:100;background:var(--surface);opacity:1;width:100vw;height:100dvh;transition:opacity .5s var(--ease-ui);grid-template-rows:minmax(0,68%) minmax(0,32%);display:grid;position:fixed;inset:0;overflow:hidden}.start-screen.is-leaving{opacity:0;pointer-events:none}.start-copy{transition:transform .32s var(--ease-ui),opacity .32s var(--ease-ui)}.start-screen.is-leaving .start-copy{opacity:0;transform:translateY(-10px)}.start-content{background:var(--surface);grid-template-rows:minmax(0,1fr);min-width:0;padding:32px 24px;display:grid;container-type:inline-size}.start-copy{align-self:center;width:min(100%,480px)}.start-title{color:var(--text);white-space:nowrap;letter-spacing:0;margin:0;font-size:clamp(28px,14.9cqw,128px);font-weight:600;line-height:1}.start-description{max-width:480px;color:var(--text-muted);margin:20px 0 0;font-size:18px;line-height:1.5}.start-button{border-radius:var(--radius-round);background:var(--text);width:fit-content;height:52px;color:var(--surface);white-space:nowrap;border:0;justify-content:center;align-items:center;gap:10px;margin-top:28px;padding:0 28px;font-size:15px;font-weight:600;display:flex}.start-button:hover{background:#2c2c2e}.start-button:focus-visible{outline:1.5px solid var(--text);outline-offset:2px}.start-gradient{background:linear-gradient(180deg,var(--sidebar-gradient-start) 0%,var(--sidebar-gradient-middle) 64%,var(--sidebar-gradient-end) 100%);min-width:0}.start-title{position:relative}.start-type-ghost{visibility:hidden}.start-type-live{position:absolute;top:0;left:0}.start-type-live.is-typing:after{content:"";background:var(--text);vertical-align:-.04em;width:.055em;height:.8em;margin-left:.05em;display:inline-block}.start-description,.start-button{opacity:0;visibility:hidden}.start-screen.is-ready .start-description,.start-screen.is-ready .start-button{visibility:visible;animation:start-element-enter .6s var(--ease-ui) forwards}.sidebar{background:linear-gradient(155deg,var(--sidebar-gradient-start) 0%,var(--sidebar-gradient-middle) 58%,var(--sidebar-gradient-end) 100%);flex-direction:column;flex:none;width:288px;display:none;overflow:hidden}.section-label{color:var(--text-muted);letter-spacing:0;text-transform:none;margin:0 0 8px 14px;font-size:12px;font-weight:500;line-height:16px}.sidebar-secondary-section{margin-top:32px}.sidebar-item{border-radius:var(--radius-field);width:100%;min-height:44px;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;display:flex}.sidebar-item:hover,.sidebar-item:focus-visible{background:var(--surface-active)}.sidebar-item-danger{color:var(--error)}.sidebar-item-danger:hover{background:var(--surface-active);color:var(--error)}.mobile-header{z-index:20;background:var(--surface);flex:none;display:block;position:relative}.mobile-module-bar{gap:8px;padding:4px 16px 12px;display:flex;overflow-x:auto}.mobile-module-button{border-radius:var(--radius-field);background:var(--surface-subtle);min-height:40px;color:var(--text);border:0;flex:none;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;display:flex}.mobile-module-button:hover{background:var(--surface-active)}.mobile-reset-button{color:var(--error)}.workspace-scroll{overscroll-behavior:contain;background:var(--surface);height:100%;overflow:hidden auto}.workspace-header{background:var(--surface)}.workspace-header-inner,.workspace-content{width:min(100%,818px);margin-inline:auto}.workspace-header-inner{padding:24px 16px 20px}.workspace-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:clamp(28px,3vw,32px);font-weight:600;line-height:1.15}.workspace-content{min-height:calc(100% - 112px);padding:16px 44px 112px 16px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:352px;padding:32px;display:flex}.empty-icon{color:var(--focus)}.module-list{flex-direction:column;gap:12px;display:flex}.module-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);width:100%;min-width:0;padding:16px;scroll-margin-top:24px}.module-card:hover{border-color:#d1d1d6}.module-card:focus-within{border-color:var(--line)}.module-card.is-dragging{border-color:var(--line);background:var(--surface-subtle);border-style:dashed}.module-card>*{transition:opacity .12s var(--ease-ui)}.module-card.is-dragging>*{opacity:0;pointer-events:none}.module-card-header{justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:0 0 12px;display:flex}.module-icon{width:20px;height:32px;color:var(--text-muted);flex:none;place-items:center;display:grid}.drag-handle{touch-action:pan-y;border-radius:var(--radius-field);width:32px;min-width:32px;height:40px;color:var(--text-muted);cursor:grab;background:0 0;border:0;place-items:center;display:grid}.drag-handle:hover{background:var(--surface-subtle);color:var(--text)}.drag-handle:active{cursor:grabbing}.module-actions{flex:none;align-items:center;gap:4px;display:flex}.card-action{border-radius:var(--radius-field);width:32px;height:32px;color:var(--text-muted);background:0 0;border:0;flex:none;place-items:center;display:grid}.card-action:hover{background:var(--surface-subtle);color:var(--text)}.card-action:disabled{color:var(--line)}.card-action-delete:hover{background:var(--surface-subtle);color:var(--error)}.editor-surface{min-width:0;padding:0;overflow:hidden}.editor-field,.editor-input{border-radius:var(--radius-field);background:var(--surface-subtle);width:100%;color:var(--text);outline-offset:-1px;border:0;outline:1px solid #0000}.editor-field{padding:12px;font-size:16px;line-height:24px}.editor-input{min-height:44px;padding:10px 12px;font-size:15px;line-height:22px}.editor-field:focus,.editor-input:focus{background:var(--surface);outline-color:var(--focus)}.editor-input-subheading,.editor-input-subheading:focus{border-bottom:2px solid var(--description-accent)}.module-card input::placeholder,.module-card [contenteditable=true]:empty:before{color:var(--focus)}.format-button{border-radius:var(--radius-field);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text-muted);background:0 0;border:0;padding:0;font-size:12px}.format-button:hover{background:var(--surface-subtle);color:var(--text)}.format-button:active{background:var(--surface-active)}.module-card-hr .module-card-header{min-height:40px}.module-card-hr .editor-surface>div{padding-block:4px}.module-divider{justify-content:center;align-items:center;width:100%;padding-block:8px;display:flex;position:relative}.module-divider>div{border-top:1px solid var(--line);width:100%}.module-divider span{background:var(--surface);color:var(--text-muted);letter-spacing:0;text-transform:none;padding-inline:12px;font-size:10px;font-weight:600;position:absolute}.overlay-field{pointer-events:none}.drag-overlay-card,.drag-overlay-card:hover{border-color:var(--line);animation:drag-lift .16s var(--ease-ui) both;transition:transform .26s var(--ease-ui);position:relative;transform:scale(1.02)}.drag-overlay-card:after{content:"";border-radius:inherit;box-shadow:var(--drag-shadow);opacity:1;pointer-events:none;transition:opacity .26s var(--ease-ui);position:absolute;inset:0}.is-dropping .drag-overlay-card{transition-duration:.2s;animation:none;transform:scale(1)}.is-dropping .drag-overlay-card:after{opacity:0;transition-duration:.2s}@keyframes drag-lift{0%{transform:scale(1)}to{transform:scale(1.02)}}.scroll-dots{z-index:15;color:var(--focus);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.scroll-dots-list{flex-direction:column;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex;position:relative}.scroll-dot-item{width:24px;height:24px}.scroll-dot-button{border-radius:var(--radius-round);background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid;position:relative}.scroll-dots-thumb{z-index:1;border-radius:var(--radius-round);background:var(--text);pointer-events:none;width:5px;height:14px;transition:transform .22s var(--ease-ui);position:absolute;top:5px;left:9.5px}.scroll-dot-marker{border-radius:var(--radius-round);background:var(--focus);width:5px;height:5px;transition:width .18s var(--ease-ui),height .18s var(--ease-ui);display:block}.scroll-dot-button.is-active .scroll-dot-marker{visibility:hidden}.scroll-dot-button:focus-visible .scroll-dot-marker{width:7px;height:7px}.scroll-dot-tooltip{visibility:hidden;border-radius:var(--radius-field);background:var(--surface);max-width:min(240px,100vw - 52px);color:var(--text);white-space:nowrap;pointer-events:none;transition:transform .18s var(--ease-ui);padding:5px 8px;font-size:12px;line-height:16px;position:absolute;top:50%;right:calc(100% + 6px);transform:translate(4px,-50%)}.scroll-dot-button:focus-visible .scroll-dot-tooltip{visibility:visible;transform:translateY(-50%)}.preview-panel{background:var(--surface-subtle);flex:none;width:440px;padding:24px 20px;display:none;overflow:hidden auto}.preview-panel-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.preview-panel-header h2{margin:0}.live-indicator{color:var(--text-muted);align-items:center;gap:7px;font-size:12px;line-height:16px;display:flex}.live-dot{border-radius:var(--radius-round);background:var(--success);flex:none;width:6px;height:6px;display:block;position:relative}.live-dot:before{content:"";border-radius:inherit;background:var(--success);opacity:0;position:absolute;inset:0;transform:scale(1)}.live-indicator.is-pulsing .live-dot{animation:live-dot-brighten .2s var(--ease-ui)}.live-indicator.is-pulsing .live-dot:before{animation:live-dot-ring .6s var(--ease-ui)}.phone-preview{border-radius:var(--radius-card);background:var(--surface);border:0;width:100%;max-width:400px;min-height:600px;margin-inline:auto;padding:24px;overflow:hidden}.preview-modules,.preview-modules>*+*{margin-top:24px}.preview-module{width:100%;position:relative}.preview-module>*{z-index:1;position:relative}.preview-module:after{content:"";background:var(--surface-subtle);opacity:0;pointer-events:none;border-radius:6px;position:absolute;inset:-6px}.preview-module.is-flashing:after{animation:preview-module-flash .7s var(--ease-ui)}.preview-module.is-entering{animation:preview-module-enter .22s var(--ease-ui)}.preview-heading-wrap{padding-bottom:8px}.preview-heading{color:var(--text);overflow-wrap:break-word;text-align:center;margin:0;font-size:18px;font-weight:700;line-height:1.25}.preview-subheading-wrap{border-bottom:3px solid var(--description-accent);width:100%;padding-bottom:5px;display:block}.preview-subheading{color:var(--text);overflow-wrap:break-word;text-align:left;margin:8px 0 0;font-size:16px;font-weight:600;line-height:24px}.editor-field ul,.editor-field ol{margin:0;padding-left:22px}.editor-field ul{list-style:outside}.editor-field ol{list-style:decimal}.editor-field li+li{margin-top:4px}.preview-paragraph{color:var(--text-muted);overflow-wrap:break-word;text-align:left;font-size:12px;line-height:1.625}.preview-paragraph p{margin:0}.preview-paragraph ul,.preview-paragraph ol{margin:8px 0 0;padding-left:20px}.preview-paragraph ul{list-style:outside}.preview-paragraph li{margin-bottom:10px}.preview-paragraph ol{list-style:decimal}.preview-paragraph li+li{margin-top:4px}.preview-paragraph li{padding-left:2px}.preview-paragraph p+ul,.preview-paragraph p+ol,.preview-paragraph ul+p,.preview-paragraph ol+p{margin-top:8px}.preview-image-placeholder{aspect-ratio:1;border-radius:var(--radius-field);background:var(--surface-subtle);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:192px;margin-inline:auto;padding:16px;display:flex}.preview-image-icon{color:var(--focus)}.preview-divider{justify-content:center;align-items:center;padding-block:8px;display:flex}.preview-divider>div{border-top:1px solid var(--line);width:100%}.preview-empty{height:256px;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.preview-empty-icon{color:var(--focus)}.generate-position{right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:30;position:fixed}.generate-button{border-radius:var(--radius-field);background:var(--text);min-height:48px;color:var(--surface);letter-spacing:0;transition:background-color .22s var(--ease-ui),transform .16s var(--ease-ui);border:0;place-items:center;padding:12px 20px;font-size:12px;font-weight:700;display:grid}.generate-button:hover{background:#2c2c2e}.generate-button:active{transform:scale(.98)}.generate-face{white-space:nowrap;opacity:0;filter:blur(2px);transition:opacity .18s var(--ease-ui),filter .18s var(--ease-ui);pointer-events:none;grid-area:1/1;justify-content:center;align-items:center;gap:8px;display:flex}.generate-face.is-active{opacity:1;filter:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.generate-success,.generate-success:hover{background:var(--success)}.generate-error,.generate-error:hover{background:var(--error)}.app-viewport.is-entering .sidebar,.app-viewport.is-entering .mobile-header{animation:app-enter-fade .5s var(--ease-ui) backwards}.app-viewport.is-entering .workspace-header-inner{animation:app-enter-rise .55s var(--ease-ui) 80ms backwards}.app-viewport.is-entering .module-card{animation:app-enter-rise .55s var(--ease-ui) .14s backwards}.app-viewport.is-entering .module-card:nth-child(2){animation-delay:.19s}.app-viewport.is-entering .module-card:nth-child(3){animation-delay:.24s}.app-viewport.is-entering .module-card:nth-child(4){animation-delay:.29s}.app-viewport.is-entering .module-card:nth-child(5){animation-delay:.34s}.app-viewport.is-entering .module-card:nth-child(n+6){animation-delay:.39s}.app-viewport.is-entering .preview-panel{animation:app-enter-fade .6s var(--ease-ui) .2s backwards}.app-viewport.is-entering .generate-button{animation:app-enter-fade .45s var(--ease-ui) .42s backwards}@keyframes app-enter-fade{0%{opacity:0}to{opacity:1}}@keyframes app-enter-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes start-element-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes live-dot-brighten{0%{opacity:.6}to{opacity:1}}@keyframes live-dot-ring{0%{opacity:.45;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes preview-module-flash{0%{opacity:1}to{opacity:0}}@keyframes preview-module-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover)and (pointer:fine){.module-actions{visibility:hidden}.module-card:hover .module-actions,.module-card:focus-within .module-actions,.drag-overlay-card .module-actions{visibility:visible}.scroll-dot-button:hover .scroll-dot-marker,.scroll-dot-button:focus-visible .scroll-dot-marker{width:7px;height:7px}.scroll-dot-button:hover .scroll-dot-tooltip{visibility:visible;transform:translateY(-50%)}}@media(min-width:768px){.start-screen{grid-template-rows:minmax(0,1fr);grid-template-columns:50% 50%}.start-content{padding:40px 64px}.start-title{font-size:clamp(28px,14.9cqw,128px)}.app-shell{flex-direction:row}.sidebar{display:flex}.mobile-header{display:none}.workspace-header-inner{padding:32px 32px 24px}.workspace-content{padding:16px 48px 112px 32px}.scroll-dot-marker{width:6px;height:6px}.scroll-dots-thumb{width:6px;height:16px;top:4px;left:9px}.scroll-dot-button:hover .scroll-dot-marker,.scroll-dot-button:focus-visible .scroll-dot-marker{width:8px;height:8px}.generate-position{bottom:24px;right:24px}}@media(min-width:1280px){.preview-panel{display:block}.generate-position{right:464px}}@media(prefers-reduced-motion:reduce){.generate-face{filter:none!important;transition-duration:.12s!important}.generate-button:active{transform:none}.app-viewport.is-entering .workspace-header-inner,.app-viewport.is-entering .module-card{animation-name:app-enter-fade!important}.start-screen.is-leaving .start-copy{transform:none}:root{--drag-shadow:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.module-card,.drag-overlay-card,.is-dropping .drag-overlay-card{transition:none!important;animation:none!important;transform:none!important}.start-screen{transition-duration:.2s!important}.start-screen.is-ready .start-description,.start-screen.is-ready .start-button{animation-name:start-element-fade!important;animation-duration:.5s!important}.scroll-dots-thumb{transition:none!important}.live-indicator.is-pulsing .live-dot{animation:live-dot-brighten .2s var(--ease-ui)!important}.live-indicator.is-pulsing .live-dot:before,.preview-module.is-entering{animation:none!important}}@keyframes start-element-fade{0%{opacity:0}to{opacity:1}}@media(prefers-contrast:more){.editor-field,.editor-input{outline-color:var(--focus)}}.view-pane{display:contents}.view-pane.is-hidden{display:none}.sidebar-item.is-active,.mobile-module-button.is-active{background:var(--surface-active)}.converter-view{background:var(--surface);flex-direction:column;height:100%;display:flex;overflow-y:auto}.converter-view .workspace-header-inner{width:min(100%,640px)}.converter-body{flex-direction:column;flex:none;gap:8px;width:min(100%,640px);margin-inline:auto;padding:8px 16px 32px;display:flex}.converter-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);flex-direction:column;gap:12px;padding:16px;display:flex}.converter-card:focus-within{border-color:var(--focus)}.converter-field{field-sizing:content;resize:none;width:100%;min-height:120px;max-height:50vh;color:var(--text);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:16px;line-height:24px;display:block;overflow-y:auto}.converter-field::placeholder{color:var(--focus)}.converter-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.converter-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.converter-case-button{border-radius:var(--radius-field);background:var(--surface-subtle);min-width:44px;height:36px;color:var(--text);border:0;padding:0 12px;font-size:14px;font-weight:600}.converter-case-button:hover{background:var(--surface-active)}.converter-case-button:disabled,.converter-case-button:disabled:hover{background:var(--surface-subtle);color:var(--focus)}.converter-actions .card-action:disabled,.converter-actions .card-action:disabled:hover{color:var(--focus);background:0 0}.converter-copy{min-height:40px;padding:8px 16px}.converter-copy:disabled,.converter-copy:disabled:hover{background:var(--surface-subtle);color:var(--focus)}.converter-count{color:var(--text-muted);margin:0;padding-left:4px;font-size:12px;line-height:16px}@media(min-width:768px){.converter-body{padding:8px 32px 32px}.converter-view .workspace-header{padding-top:min(12vh,140px)}}.app-viewport.is-switching .view-pane:not(.is-hidden)>.main-panel{animation:app-enter-rise .3s var(--ease-ui) backwards}.app-viewport.is-switching .view-pane:not(.is-hidden)>.preview-panel,.app-viewport.is-switching .view-pane:not(.is-hidden)>.generate-position{animation:app-enter-fade .3s var(--ease-ui) backwards}@media(prefers-reduced-motion:reduce){.app-viewport.is-switching .view-pane:not(.is-hidden)>.main-panel{animation-name:app-enter-fade!important}}.sidebar-reset{margin-top:6px}.sidebar-item:disabled,.mobile-module-button:disabled{opacity:.55;cursor:default}.soon-tag{border-radius:var(--radius-field);background:var(--surface-subtle);color:var(--text-muted);margin-left:auto;padding:2px 8px;font-size:11px;font-weight:500}.mobile-module-button .soon-tag{margin-left:6px}.studio-view{background:var(--surface);flex-direction:column;height:100%;display:flex;overflow-y:auto}.studio-view .workspace-header-inner{width:100%;margin-inline:0}.studio-body{flex-direction:column;flex:none;width:100%;padding:16px 16px 112px;display:flex}.studio-input-grid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.studio-section-card{flex-direction:column;min-width:0;display:flex}.studio-card-header{flex-wrap:wrap;gap:8px 12px}.studio-card-heading{align-items:center;gap:10px;min-width:0;display:flex}.studio-card-title{color:var(--text);margin:0;font-size:14px;font-weight:600;line-height:20px}.studio-drop{border-radius:var(--radius-field);background:var(--surface-subtle);outline-offset:-1.5px;outline:1.5px solid #0000;flex:1;place-items:center;min-height:180px;padding:24px 16px;display:grid}.studio-drop:has(:focus-visible){outline-color:var(--focus)}.studio-drop.is-dragging{background:var(--surface-active);outline-color:var(--focus)}.studio-drop-copy{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.studio-drop-icon{color:var(--text-muted)}.studio-drop-title{margin:0;font-size:16px;font-weight:600;line-height:24px}.studio-file-input{display:none}.studio-added-row{align-items:center;gap:8px;min-height:36px;display:flex}.studio-added-row p{color:var(--text-muted);margin:0;font-size:14px;line-height:20px}.studio-muted{color:var(--text-muted);margin:12px 0 0;font-size:12px;line-height:18px}.studio-muted+.studio-muted{margin-top:4px}.studio-options{color:var(--text-muted);flex-direction:column;gap:16px;font-size:15px;line-height:22px;display:flex}.studio-check{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;display:flex}.studio-check input{width:20px;height:20px;accent-color:var(--text);flex:none;margin:2px 0 0}.studio-check input:focus-visible{outline:1.5px solid var(--text);outline-offset:2px}.studio-check span{flex-direction:column;gap:4px;min-width:0;display:flex}.studio-check strong{color:var(--text);font-weight:600}.studio-check small{color:var(--text-muted);font-size:12px;line-height:18px}.studio-password-label{flex-direction:column;gap:6px;width:100%;display:flex}.studio-password-label>span{color:var(--text);font-size:14px;font-weight:600;line-height:20px}.studio-password{width:100%}.studio-process{flex-direction:column;gap:8px;margin-top:auto;padding-top:24px;display:flex}.studio-process .generate-button{width:100%}.studio-process .generate-button:disabled,.studio-results-header .generate-button:disabled{background:var(--surface-subtle);color:var(--focus)}.studio-results-section{animation:app-enter-rise .3s var(--ease-ui) backwards;margin-top:32px}.studio-results-header{justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-bottom:16px;display:flex}.studio-results-header p{color:var(--text-muted);margin:0;font-size:14px;line-height:20px}.studio-results{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px 16px;display:grid}.studio-result-card{min-width:0;animation:app-enter-rise .3s var(--ease-ui) backwards;flex-direction:column;display:flex}.studio-thumbnail{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);object-fit:contain;width:100%;display:block}.studio-thumbnail-ready{animation:app-enter-fade .22s var(--ease-ui) backwards}.studio-thumbnail-placeholder{background:var(--surface-subtle)}.studio-result-row{align-items:center;gap:8px;min-width:0;margin-top:8px;display:flex}.studio-name{flex:1;min-width:0;min-height:44px;font-size:14px;line-height:20px}.studio-error{margin-top:10px}.studio-error p{color:var(--error);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:18px}.studio-retry{align-items:center;gap:6px;width:fit-content;min-width:0;margin-top:8px;display:flex}.studio-result-actions{justify-content:flex-end;align-items:center;gap:2px;display:flex}.studio-result-actions .card-action:disabled,.studio-result-actions .card-action:disabled:hover{color:var(--focus);background:0 0}@media(min-width:768px){.studio-body{padding:16px 32px 112px}}@media(min-width:900px){.studio-input-grid{grid-template-columns:minmax(0,1fr) 320px}.studio-drop{min-height:240px;padding:32px}}@media(max-width:520px){.studio-view .workspace-header-inner,.studio-body{padding-inline:16px}.studio-added-row .converter-case-button,.studio-process .converter-case-button,.studio-result-actions .card-action{min-width:44px;min-height:44px}.studio-results-header{align-items:flex-start}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}
