.ln-page{--ln-bg: hsl(45, 20%, 98%);--ln-fg: hsl(160, 15%, 15%);--ln-ink: hsl(160, 20%, 10%);--ln-primary: hsl(160, 35%, 25%);--ln-primary-fg: hsl(45, 30%, 97%);--ln-hairline: hsl(35, 14%, 82%);--ln-muted: hsl(215, 14%, 45%);--ln-surface: hsl(42, 30%, 96%);--ln-destructive: hsl(350, 72%, 51%);--ln-font-sans: "Inter", system-ui, sans-serif;--ln-font-display: "Plus Jakarta Sans", system-ui, sans-serif;--ln-font-serif: "Fraunces", "Iowan Old Style", Georgia, serif;--ln-shadow-paper: 0 0 0 1px hsl(35 14% 82% / .6), 0 1px 1px hsl(35 30% 0% / .02), 0 8px 24px -12px hsl(35 30% 0% / .08);--ln-shadow-paper-hover: 0 0 0 1px hsl(160 35% 25% / .25), 0 2px 4px hsl(35 30% 0% / .04), 0 18px 40px -16px hsl(160 35% 25% / .18);--ln-noise: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.06 0 0 0 0 0.10 0 0 0 0 0.08 0 0 0 0.07 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.ln-page{min-height:100vh;background-color:var(--ln-bg);background-image:var(--ln-noise);background-size:220px 220px;color:var(--ln-fg);font-family:var(--ln-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ln-page *{box-sizing:border-box}.ln-editorial{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.025em;line-height:1.04;font-feature-settings:"ss01","ss02"}.ln-serif{font-family:var(--ln-font-serif);font-feature-settings:"ss01","ss02","calt"}.ln-display{font-family:var(--ln-font-display)}.ln-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#212c288c;font-weight:500;font-family:var(--ln-font-display)}.ln-tnum{font-variant-numeric:tabular-nums lining-nums}.ln-masthead{position:sticky;top:0;z-index:40;background:#fbfaf9d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--ln-hairline)}.ln-masthead-inner{max-width:1400px;margin:0 auto;padding:0 40px;height:56px;display:flex;align-items:center;justify-content:space-between;gap:24px}.ln-masthead-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit;flex-shrink:0}.ln-masthead-mark{width:22px;height:22px;border-radius:5px;overflow:hidden;background:var(--ln-primary);flex-shrink:0}.ln-masthead-mark img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ln-masthead-wordmark{display:flex;align-items:baseline;gap:1px;line-height:1}.ln-masthead-frame{font-family:var(--ln-font-display);font-weight:500;font-size:13px;letter-spacing:-.01em;color:#212c28cc}.ln-masthead-flow{font-family:var(--ln-font-serif);font-weight:500;font-style:italic;font-size:14px;letter-spacing:-.02em;color:var(--ln-ink)}.ln-masthead-nav{display:flex;align-items:center;gap:28px}.ln-masthead-nav a{font-size:12.5px;color:#212c28a6;text-decoration:none;font-family:var(--ln-font-display);background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0% 1px;transition:background-size .28s cubic-bezier(.2,.7,.2,1),color .15s}.ln-masthead-nav a:hover{background-size:100% 1px;color:var(--ln-fg)}.ln-masthead-signin{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;background:transparent;border:none;font-family:var(--ln-font-display);font-size:12.5px;color:#212c28bf;cursor:pointer;border-radius:20px;transition:background .15s,color .15s}.ln-masthead-signin:hover{background:#29564717;color:var(--ln-fg)}.ln-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--ln-hairline)}.ln-hero-inner{max-width:1400px;margin:0 auto;padding:40px 40px 96px;position:relative}.ln-hero-brand{display:flex;align-items:center;gap:16px;margin-bottom:56px;animation:ln-fade-up .55s ease both}.ln-hero-logo-wrap{width:88px;height:88px;border-radius:14px;overflow:hidden;background:var(--ln-primary);flex-shrink:0;border:1px solid var(--ln-hairline);box-shadow:var(--ln-shadow-paper)}.ln-hero-logo-wrap img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ln-hero-brand-text{display:flex;flex-direction:column;gap:5px}.ln-hero-eyebrow{font-size:10.5px;text-transform:uppercase;letter-spacing:.28em;color:#212c288c;font-weight:500;font-family:var(--ln-font-display)}.ln-hero-subtitle{font-family:var(--ln-font-serif);font-style:italic;font-size:20px;color:#212c28cc;line-height:1}.ln-hero-hl{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.045em;line-height:.88;font-feature-settings:"ss01","ss02";color:var(--ln-fg);font-size:clamp(60px,13vw,200px)}.ln-hero-hl-line{display:block}.ln-hero-hl-indent{padding-left:14%;animation:ln-fade-up .55s ease both;animation-delay:80ms;animation-fill-mode:backwards}.ln-hero-hl-line1{animation:ln-fade-up .55s ease both}.ln-hero-hl-line3{animation:ln-fade-up .55s ease both;animation-delay:.16s;animation-fill-mode:backwards}.ln-hero-accent{font-style:italic;color:var(--ln-primary);font-weight:400}.ln-hero-pitch{margin-top:80px;max-width:680px}.ln-hero-pitch-eyebrow{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#212c288c;font-weight:500;font-family:var(--ln-font-display);margin-bottom:12px}.ln-hero-pitch-body{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(17px,1.6vw,22px);line-height:1.42;color:#212c28d1}.ln-velo-section{position:relative;overflow:hidden;border-bottom:1px solid var(--ln-hairline);padding:80px 0;background-color:var(--ln-bg);background-image:var(--ln-noise);background-size:220px 220px}.ln-velo-head{max-width:1400px;margin:0 auto 48px;padding:0 40px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.ln-velo-head-label{margin-bottom:12px}.ln-velo-title{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.025em;line-height:.95;font-feature-settings:"ss01","ss02";color:var(--ln-fg);font-size:clamp(32px,4vw,56px)}.ln-velo-em{font-style:italic;color:var(--ln-primary)}.ln-velo-aside{font-family:var(--ln-font-serif);font-style:italic;font-size:15px;color:#212c2899;max-width:280px;text-align:right;flex-shrink:0}.ln-velo-outer{display:flex;flex-direction:column}.ln-velo-row{position:relative;overflow:hidden;padding:12px 0;border-top:1px solid hsl(35 14% 82% / .5)}.ln-velo-row--last{border-bottom:1px solid hsl(35 14% 82% / .5)}.ln-velo-fade-l,.ln-velo-fade-r{pointer-events:none;position:absolute;top:0;bottom:0;width:150px;z-index:10}.ln-velo-fade-l{left:0;background:linear-gradient(to right,var(--ln-bg) 20%,transparent)}.ln-velo-fade-r{right:0;background:linear-gradient(to left,var(--ln-bg) 20%,transparent)}.ln-velo-speed{position:absolute;right:20px;top:50%;transform:translateY(-50%);z-index:15;font-size:9px;text-transform:uppercase;letter-spacing:.2em;font-family:var(--ln-font-display);font-weight:600;color:#212c2847;line-height:1}.ln-velo-track{display:flex;gap:16px;width:-moz-max-content;width:max-content;padding:4px 0}.ln-velo-track--r1{animation:ln-vfwd 70s linear infinite}.ln-velo-track--r2{animation:ln-vrev 35s linear infinite}.ln-velo-outer:hover .ln-velo-track{animation-play-state:paused}@keyframes ln-vfwd{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes ln-vrev{0%{transform:translate(-50%)}to{transform:translate(0)}}.ln-velo-outer:hover .ln-vc{opacity:.55;transition:opacity .3s ease,scale .3s ease}.ln-velo-outer:hover .ln-vc:hover{opacity:1}.ln-vc{flex-shrink:0;cursor:pointer;transition:opacity .3s ease,scale .3s cubic-bezier(.2,.8,.2,1)}.ln-vc-frame{width:400px;aspect-ratio:16/9;overflow:hidden;border-radius:10px;position:relative;box-shadow:0 0 0 1px #d8d2cb80,0 4px 12px -4px #00000014,0 14px 32px -8px #0000001a}.ln-vc-name{position:absolute;bottom:11px;left:50%;transform:translate(-50%);background:#ffffffd6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);border-radius:100px;padding:4px 12px;font-size:10.5px;font-style:italic;font-family:var(--ln-font-serif);letter-spacing:-.01em;color:#273530;white-space:nowrap;pointer-events:none;transition:background .3s,color .3s,box-shadow .3s}.ln-vc:hover .ln-vc-name{background:#fffffff7;box-shadow:0 2px 10px #00000017;color:var(--ln-primary)}.ln-mock{width:100%;height:100%;display:flex;flex-direction:column;padding:10% 10% 8%;position:relative;overflow:hidden;font-family:var(--ln-font-display)}.ln-mock-pill{display:inline-flex;align-items:center;border-radius:100px;padding:2.5% 6%;font-size:4.8%;font-weight:700;margin-bottom:4%;line-height:1;max-width:72%;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ln-mock-title{font-size:8.5%;font-weight:700;line-height:1.15;margin-bottom:5%;flex-shrink:0}.ln-mock-bullets{display:flex;flex-direction:column;gap:3%;flex:1}.ln-mock-bullet{display:flex;align-items:center;gap:3%;font-size:5%;line-height:1.3;opacity:.8}.ln-mock-dot{width:5%;aspect-ratio:1;max-width:8px;max-height:8px;border-radius:50%;flex-shrink:0}.ln-mock.ln-mock-bp{flex-direction:row;padding:0;align-items:stretch}.ln-mock-bp-left{flex:1;padding:8% 5% 8% 8%;display:flex;flex-direction:column}.ln-mock-rule{height:1px;width:28%;opacity:.35;margin:3% 0 4%;flex-shrink:0}.ln-mock-bp-right{width:35%;flex-shrink:0;position:relative;overflow:hidden}.ln-mock-bp-bar{position:absolute;top:0;left:0;bottom:0;width:3.5px;border-radius:0 2px 2px 0}.ln-mock.ln-mock-fb{flex-direction:column;padding:7% 8%;gap:0}.ln-mock-fb-head{margin-bottom:4%;display:flex;flex-direction:column;gap:2%}.ln-mock-fb-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5%;flex:1}.ln-mock-fb-card{border-radius:5px;padding:5%;display:flex;flex-direction:column;justify-content:center}.ln-mock-fb-val{font-size:9%;font-weight:700;line-height:1.1;margin-bottom:1.5%}.ln-mock-fb-lbl{font-size:4%;opacity:.65;line-height:1.2}.ln-mock.ln-mock-pa{flex-direction:row;padding:0}.ln-mock-pa-img{width:42%;flex-shrink:0;position:relative;overflow:hidden}.ln-mock-pa-bar{position:absolute;right:0;top:0;bottom:0;width:4px}.ln-mock-pa-right{flex:1;padding:8% 7%;display:flex;flex-direction:column}.ln-how{border-bottom:1px solid var(--ln-hairline);background-color:var(--ln-bg)}.ln-how-inner{max-width:1400px;margin:0 auto;padding:128px 40px}.ln-how-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:96px}.ln-section-title{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.025em;line-height:.95;font-feature-settings:"ss01","ss02";color:var(--ln-fg);font-size:clamp(36px,5vw,72px)}.ln-section-title em{font-style:italic}.ln-section-aside{font-family:var(--ln-font-serif);font-style:italic;font-size:15px;color:#212c289e;max-width:300px;text-align:right;flex-shrink:0}.ln-acts{display:flex;flex-direction:column;gap:160px}.ln-act{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:center}.ln-act--flip{grid-template-columns:7fr 5fr}.ln-act-visual{position:relative}.ln-act-visual--end{order:2}.ln-act-num{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.06em;line-height:1;color:#212c280e;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;font-size:clamp(120px,28vw,360px)}.ln-act-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ln-act-icon svg{width:clamp(72px,9vw,132px);height:auto;color:var(--ln-primary)}.ln-act-copy--start{order:1}.ln-act-eyebrow{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:var(--ln-primary);font-weight:500;font-family:var(--ln-font-display);font-variant-numeric:tabular-nums;margin-bottom:16px}.ln-act-title{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.02em;line-height:1.02;font-feature-settings:"ss01","ss02";color:var(--ln-fg);font-size:clamp(26px,3.2vw,44px);margin-bottom:20px}.ln-act-rule{width:48px;height:1px;background:#212c2838;margin-bottom:20px}.ln-act-body{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(15px,1.5vw,19px);line-height:1.5;color:#212c28b8;max-width:480px}.ln-gallery{border-bottom:1px solid var(--ln-hairline);background-color:var(--ln-bg);background-image:var(--ln-noise);background-size:220px 220px}.ln-gallery-inner{max-width:1400px;margin:0 auto;padding:128px 40px}.ln-gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:56px}.ln-gallery-split{display:grid;grid-template-columns:3fr 2fr;gap:80px;align-items:start;margin-bottom:80px}.ln-gallery-split-left,.ln-gallery-split-right{opacity:0;transform:translate(-32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.ln-gallery-split-right{transform:translate(32px);transition-delay:.1s}.ln-gallery[data-visible=true] .ln-gallery-split-left,.ln-gallery[data-visible=true] .ln-gallery-split-right{opacity:1;transform:translate(0)}.ln-gallery-preview-wrap{position:relative}.ln-gallery-ghost{position:absolute;top:-.28em;left:-.08em;font-family:var(--ln-font-serif);font-style:italic;font-weight:500;font-size:clamp(72px,10vw,160px);line-height:1;letter-spacing:-.04em;color:#212c280b;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;will-change:transform;z-index:0}.ln-gallery-preview-frame{position:relative;aspect-ratio:16/9;width:100%;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px #d8d2cb80,0 8px 24px -8px #0000001a,0 32px 80px -16px #00000038;cursor:pointer;will-change:transform;z-index:1;transition:box-shadow .4s ease}.ln-gallery-preview-frame:hover{box-shadow:0 0 0 1px #29564733,0 12px 32px -8px #00000024,0 48px 100px -20px #0000004d}.ln-gallery-preview-expand{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:8px;background:#faf8f51f;border:1px solid hsl(45 30% 97% / .22);display:flex;align-items:center;justify-content:center;color:#faf8f5cc;opacity:0;transform:scale(.8);transition:opacity .22s ease,transform .22s ease;pointer-events:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ln-gallery-preview-frame:hover .ln-gallery-preview-expand{opacity:1;transform:scale(1)}.ln-gallery-preview-meta{margin-top:18px;display:flex;align-items:baseline;gap:14px}.ln-gallery-preview-name{font-family:var(--ln-font-serif);font-style:italic;font-weight:500;font-size:clamp(20px,2.2vw,30px);color:var(--ln-fg);letter-spacing:-.02em;line-height:1}.ln-gallery-preview-topic{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#212c2873;font-family:var(--ln-font-display);font-weight:500}.ln-gallery-theme-list{display:flex;flex-direction:column;border-top:1px solid var(--ln-hairline)}.ln-gallery-theme-row{display:flex;align-items:center;gap:14px;padding:16px 4px;border:none;border-bottom:1px solid var(--ln-hairline);background:none;cursor:pointer;text-align:left;width:100%;border-radius:0;opacity:0;transform:translate(20px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),background .15s ease}.ln-gallery[data-visible=true] .ln-gallery-theme-row{opacity:1;transform:translate(0)}.ln-gallery-theme-row:hover{background:#212c2808}.ln-gallery-theme-row[data-active=true]{background:#212c280a}.ln-gallery-theme-num{font-size:10px;font-family:var(--ln-font-display);color:#212c284d;font-weight:500;letter-spacing:.1em;flex-shrink:0;width:22px}.ln-gallery-theme-name{font-family:var(--ln-font-serif);font-style:italic;font-weight:500;font-size:clamp(20px,2.6vw,36px);color:var(--ln-fg);letter-spacing:-.02em;line-height:1;flex:1;transition:color .15s ease}.ln-gallery-theme-row[data-active=true] .ln-gallery-theme-name{color:var(--ln-primary)}.ln-gallery-theme-swatch{width:9px;height:9px;border-radius:50%;flex-shrink:0;transform:scale(.65);transition:transform .22s ease}.ln-gallery-theme-row[data-active=true] .ln-gallery-theme-swatch{transform:scale(1)}.ln-gallery-lb{position:fixed;inset:0;z-index:100;background:#0a0f0ee0;display:flex;align-items:center;justify-content:center;padding:40px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:ln-fade-in .18s ease;cursor:pointer}.ln-gallery-lb-inner{position:relative;width:100%;max-width:960px;cursor:default;animation:ln-gallery-lb-in .34s cubic-bezier(.16,1,.3,1) both}.ln-gallery-lb-close{position:absolute;top:-48px;right:0;width:32px;height:32px;border-radius:8px;border:1px solid hsl(45 30% 97% / .18);background:#faf8f512;color:#faf8f5a6;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ln-gallery-lb-close:hover{background:#faf8f526;color:#faf8f5;border-color:#faf8f559}.ln-gallery-lb-slide{width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px #faf8f514,0 40px 120px -20px #000000b3}.ln-gallery-lb-bottom{margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.ln-gallery-lb-meta{display:flex;align-items:baseline;gap:16px}.ln-gallery-lb-layouts{display:flex;align-items:center;gap:6px;flex-shrink:0}.ln-gallery-lb-layout-tab{height:28px;padding:0 11px;border-radius:100px;border:1px solid hsl(45 30% 97% / .2);background:#faf8f512;color:#faf8f580;font-size:10px;font-family:var(--ln-font-display);text-transform:uppercase;letter-spacing:.16em;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ln-gallery-lb-layout-tab:hover{background:#faf8f521;color:#faf8f5cc}.ln-gallery-lb-layout-tab[data-active=true]{background:#faf8f526;color:#faf8f5;border-color:#faf8f566}.ln-gallery-lb-name{font-family:var(--ln-font-serif);font-style:italic;font-weight:500;font-size:clamp(22px,2.4vw,34px);color:#faf8f5;letter-spacing:-.02em}.ln-gallery-lb-topic{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#faf8f56b;font-family:var(--ln-font-display);font-weight:500}@keyframes ln-gallery-lb-in{0%{opacity:0;transform:scale(.93) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.ln-pullquote{padding:72px 0;border-top:1px solid var(--ln-hairline);border-bottom:1px solid var(--ln-hairline);margin:0 0 80px}.ln-pullquote-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#212c2880;font-weight:500;font-family:var(--ln-font-display);text-align:center;margin-bottom:24px}.ln-pullquote-text{font-family:var(--ln-font-serif);font-style:italic;font-weight:500;text-align:center;line-height:1.05;letter-spacing:-.025em;color:var(--ln-fg);max-width:18ch;margin:0 auto;padding:0 16px;font-feature-settings:"ss01","ss02";font-size:clamp(32px,6.5vw,88px)}.ln-footer{position:relative;overflow:hidden;background-color:#f9f8f5;border-top:1px solid var(--ln-hairline)}.ln-footer-inner{max-width:1400px;margin:0 auto;padding:112px 40px 40px;position:relative}.ln-footer-wm{display:flex;align-items:center;gap:10px;margin-bottom:20px}.ln-footer-wm-mark{width:26px;height:26px;border-radius:6px;overflow:hidden;background:var(--ln-primary);flex-shrink:0}.ln-footer-wm-mark img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ln-footer-wm-text{display:flex;align-items:baseline;gap:2px}.ln-footer-wm-frame{font-family:var(--ln-font-display);font-weight:500;font-size:15px;letter-spacing:-.01em;color:#212c28cc}.ln-footer-wm-flow{font-family:var(--ln-font-serif);font-weight:500;font-style:italic;font-size:17px;letter-spacing:-.02em;color:var(--ln-ink)}.ln-footer-tagline{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(15px,1.4vw,18px);line-height:1.45;color:#212c28ad;max-width:480px;margin-bottom:96px}.ln-footer-ghost{font-family:var(--ln-font-serif);font-style:italic;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#212c280e;line-height:1;margin-bottom:-48px;letter-spacing:-.05em;font-feature-settings:"ss01","ss02";font-size:clamp(64px,20vw,320px);white-space:nowrap;text-align:right}.ln-footer-credits{border-top:1px solid var(--ln-hairline);padding-top:20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:#212c287a;font-weight:500;font-family:var(--ln-font-display);font-variant-numeric:tabular-nums}.ln-fab{position:fixed;bottom:28px;right:28px;z-index:50;display:inline-flex;align-items:center;gap:7px;height:44px;padding:0 18px;border-radius:100px;background:var(--ln-primary);color:var(--ln-primary-fg);font-size:12.5px;text-transform:uppercase;letter-spacing:.18em;font-weight:500;font-family:var(--ln-font-display);border:1px solid hsl(35 14% 82% / .4);box-shadow:var(--ln-shadow-paper);cursor:pointer;transition:transform .15s ease,opacity .15s;text-decoration:none}.ln-fab:hover{transform:translateY(-1px)}.ln-fab svg{transition:transform .15s;flex-shrink:0}.ln-fab:hover svg{transform:translate(1px,-1px)}.ln-overlay{position:fixed;inset:0;z-index:100;background:#141f1b7a;display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:ln-fade-in .2s ease}.ln-dialog{position:relative;width:100%;max-width:420px;background-color:var(--ln-bg);background-image:var(--ln-noise);background-size:220px 220px;border:1px solid var(--ln-hairline);border-radius:20px;box-shadow:0 0 0 1px #d8d2cb80,0 25px 60px -10px #141f1b40;overflow:hidden;animation:ln-dialog-in .26s cubic-bezier(.16,1,.3,1) both}.ln-dialog-deco{position:absolute;top:-28px;right:-14px;font-size:128px;line-height:1;color:#212c280c;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;transform:rotate(8deg);font-family:var(--ln-font-serif);z-index:0}.ln-dialog-body{padding:36px 36px 32px;position:relative;z-index:1}.ln-dialog-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:8px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#212c2873;transition:background .15s,color .15s}.ln-dialog-close:hover{background:#212c2812;color:var(--ln-fg)}.ln-dialog-eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:var(--ln-muted);font-family:var(--ln-font-display);margin-bottom:12px}.ln-dialog-rule{width:24px;height:1px;background:#212c2847;flex-shrink:0}.ln-dialog-heading{font-family:var(--ln-font-serif);font-weight:500;font-size:clamp(30px,4vw,38px);letter-spacing:-.02em;line-height:1.02;color:var(--ln-ink);margin-bottom:5px}.ln-dialog-heading-accent{font-style:italic;font-weight:400;color:var(--ln-primary)}.ln-dialog-sub{font-family:var(--ln-font-serif);font-style:italic;font-size:14px;color:var(--ln-muted);margin-bottom:28px}.ln-form{display:flex;flex-direction:column;gap:14px}.ln-field{display:flex;flex-direction:column;gap:6px}.ln-field-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.18em;color:var(--ln-muted);font-family:var(--ln-font-display);font-weight:400}.ln-field-input{height:44px;padding:0 14px;background:#fbfaf9a6;border:1px solid hsl(160 15% 15% / .14);border-radius:10px;font-size:14px;font-family:var(--ln-font-sans);color:var(--ln-fg);outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.ln-field-input::-moz-placeholder{color:#212c2852}.ln-field-input::placeholder{color:#212c2852}.ln-field-input:focus{border-color:var(--ln-primary);box-shadow:0 0 0 3px #2956471c}.ln-field-error{font-size:12px;color:var(--ln-destructive);font-family:var(--ln-font-sans)}.ln-server-error{font-size:13px;color:var(--ln-destructive);font-family:var(--ln-font-sans);background:#dc284612;padding:10px 14px;border-radius:8px}.ln-btn-signin{height:44px;padding:0 24px;background:var(--ln-primary);color:var(--ln-primary-fg);border:none;border-radius:100px;font-size:12.5px;text-transform:uppercase;letter-spacing:.18em;font-weight:500;font-family:var(--ln-font-display);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:opacity .15s,transform .15s;margin-top:6px;width:100%}.ln-btn-signin:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.ln-btn-signin:disabled{opacity:.6;cursor:not-allowed}.ln-btn-signin svg{transition:transform .15s;flex-shrink:0}.ln-btn-signin:hover:not(:disabled) svg{transform:translate(1px,-1px)}.ln-form-note{font-size:11px;text-align:center;color:var(--ln-muted);font-family:var(--ln-font-sans);margin-top:2px}.ln-wit{position:relative;height:300vh;border-bottom:1px solid var(--ln-hairline);background-color:var(--ln-bg);background-image:var(--ln-noise);background-size:220px 220px}.ln-wit-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column}.ln-wit-hdr{padding:32px 40px 0;flex-shrink:0}.ln-wit-hdr-inner{max-width:1280px;margin:0 auto;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--ln-hairline)}.ln-wit-title{font-family:var(--ln-font-serif);font-weight:500;letter-spacing:-.025em;line-height:1.05;font-feature-settings:"ss01","ss02";color:var(--ln-fg);font-size:clamp(20px,2.4vw,32px);margin:0}.ln-wit-em{font-style:italic;color:var(--ln-primary);font-weight:400}.ln-wit-dots{display:flex;align-items:center;gap:6px;flex-shrink:0}.ln-wit-dot{height:6px;border-radius:100px;border:none;cursor:pointer;padding:0;transition:width .3s ease,background .3s ease}.ln-wit-panels-wrap{flex:1;position:relative;overflow:hidden;min-height:0}.ln-wit-track{display:flex;height:100%;position:absolute;top:0;left:0;will-change:transform}.ln-wit-panel{width:100vw;height:100%;flex-shrink:0}.ln-wit-panel-body{max-width:1280px;margin:0 auto;height:100%;display:grid;grid-template-columns:3fr 7fr;gap:52px;align-items:center;padding:24px 60px}.ln-wit-step-info{display:flex;flex-direction:column;justify-content:center;position:relative}.ln-wit-step-ghost{font-family:var(--ln-font-serif);font-weight:500;font-size:clamp(96px,18vw,220px);line-height:1;letter-spacing:-.06em;color:#212c280e;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;margin-bottom:-.2em}.ln-wit-step-eyebrow{font-size:10.5px;text-transform:uppercase;letter-spacing:.22em;color:var(--ln-primary);font-weight:500;font-family:var(--ln-font-display);margin:0 0 12px}.ln-wit-step-caption{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(15px,1.4vw,18px);line-height:1.55;color:#212c28ad;max-width:36ch;margin:0}.ln-wit-card{background:#fff;border:1px solid hsl(35 14% 80% / .7);border-radius:16px;padding:36px;min-height:340px;display:flex;flex-direction:column;box-shadow:0 0 0 1px #d8d2cb66,0 4px 8px -2px #0000000d,0 24px 64px -16px #00000029}.ln-wit-card-label{font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:#212c2873;font-weight:500;font-family:var(--ln-font-display);margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--ln-hairline)}.ln-wit-prompt-text{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(18px,1.6vw,22px);line-height:1.55;color:#212c28e6;flex:1;margin:0}.ln-wit-cursor{display:inline-block;width:2px;height:1em;vertical-align:-2px;margin-left:2px;background:var(--ln-primary);animation:ln-wit-blink 1s steps(2) infinite}.ln-wit-frames{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;flex:1}.ln-wit-frame{aspect-ratio:3/4;border-radius:10px;border:1px solid hsl(35 14% 80% / .6);background:#fbfaf9;position:relative;overflow:hidden;animation:ln-wit-frame-in .6s ease-out both;box-shadow:0 2px 8px -2px #00000014}.ln-wit-frame-accent{position:absolute;left:8px;right:8px;top:8px;height:4px;border-radius:100px;opacity:.85}.ln-wit-frame-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-family:var(--ln-font-display);color:#212c284d}.ln-wit-frame-label{position:absolute;bottom:8px;left:8px;right:8px;font-size:9.5px;text-transform:uppercase;letter-spacing:.18em;color:#212c28b3;line-height:1.3;font-family:var(--ln-font-display)}.ln-wit-film{aspect-ratio:16/9;border-radius:16px;position:relative;overflow:hidden;animation:ln-wit-frame-in .7s ease-out both;box-shadow:0 0 0 1px #0000001f,0 8px 16px -4px #00000024,0 32px 80px -16px #0000005c}.ln-wit-film-overlay{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.18),transparent 60%);pointer-events:none}.ln-wit-film-inner{position:absolute;inset:0;padding:24px 28px;display:flex;flex-direction:column;justify-content:space-between;color:#faf8f5}.ln-wit-film-tag{font-size:9.5px;text-transform:uppercase;letter-spacing:.22em;opacity:.8;font-family:var(--ln-font-display)}.ln-wit-film-title{font-family:var(--ln-font-serif);font-style:italic;font-size:clamp(22px,3vw,34px);line-height:1.05;color:#faf8f5;margin-bottom:12px}.ln-wit-film-play{display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.2em;opacity:.8;font-family:var(--ln-font-display);color:#faf8f5}.ln-wit-film-play-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#ffffffe6;color:#141f1b;font-size:8px;flex-shrink:0}.ln-wit-film-shimmer{position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:200% 100%;animation:ln-wit-shimmer 3.5s linear infinite;pointer-events:none}.ln-wit-progress{display:flex;align-items:center;padding:0 40px;height:56px;flex-shrink:0;border-top:1px solid var(--ln-hairline);gap:0}.ln-wit-pdot{flex:1;display:flex;align-items:center;gap:10px;opacity:.32;transition:opacity .25s ease}.ln-wit-pdot[data-active=true]{opacity:1}.ln-wit-pdot-num{font-size:10px;font-family:var(--ln-font-display);color:var(--ln-primary);font-weight:500;letter-spacing:.1em;flex-shrink:0}.ln-wit-pdot-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--ln-fg);font-family:var(--ln-font-display);font-weight:500}@keyframes ln-wit-blink{to{opacity:0}}@keyframes ln-wit-frame-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ln-wit-shimmer{0%{background-position:200% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.ln-wit-cursor,.ln-wit-frame,.ln-wit-film,.ln-wit-film-shimmer{animation:none!important}}@keyframes ln-fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes ln-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ln-dialog-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:1024px){.ln-masthead-inner,.ln-hero-inner,.ln-velo-head,.ln-how-inner,.ln-gallery-inner,.ln-footer-inner,.ln-wit-hdr{padding-left:28px;padding-right:28px}.ln-wit-panel-body{padding-left:28px;padding-right:28px;gap:36px}.ln-wit-progress{padding-left:28px;padding-right:28px}.ln-acts{gap:100px}}@media(max-width:860px){.ln-masthead-nav{display:none}.ln-hero-brand{margin-bottom:36px}.ln-hero-logo-wrap{width:64px;height:64px;border-radius:12px}.ln-hero-subtitle{font-size:16px}.ln-hero-pitch{margin-top:48px}.ln-gallery-split{grid-template-columns:1fr;gap:48px}.ln-gallery-ghost,.ln-velo-aside,.ln-gallery-head .ln-section-aside{display:none}.ln-gallery-inner{padding-top:80px;padding-bottom:80px}.ln-gallery-lb{padding:24px}.ln-wit{height:auto}.ln-wit-sticky{position:static;height:auto;overflow:visible}.ln-wit-hdr{padding:64px 28px 0}.ln-wit-hdr-inner{flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:32px}.ln-wit-dots{display:none}.ln-wit-panels-wrap{overflow:visible;position:static;height:auto}.ln-wit-track{position:static;display:flex;flex-direction:column;height:auto;transform:none!important}.ln-wit-panel{width:100%;height:auto}.ln-wit-panel-body{grid-template-columns:1fr;height:auto;gap:28px;padding:48px 28px}.ln-wit-panel-body+.ln-wit-panel .ln-wit-panel-body{border-top:1px solid var(--ln-hairline)}.ln-wit-step-ghost{font-size:clamp(64px,20vw,120px);margin-bottom:-.15em}.ln-wit-progress{padding:20px 28px}}@media(max-width:540px){.ln-vc-frame{width:300px}.ln-gallery-theme-name{font-size:clamp(18px,5vw,28px)}.ln-gallery-lb{padding:16px;align-items:flex-end}.ln-gallery-lb-inner{max-width:100%}.ln-gallery-lb-close{top:-40px}.ln-gallery-lb-slide{border-radius:10px}.ln-fab{bottom:20px;right:20px}.ln-wit-hdr,.ln-wit-panel-body,.ln-wit-progress{padding-left:20px;padding-right:20px}.ln-wit-card{padding:24px;min-height:220px}.ln-wit-prompt-text{font-size:16px}}@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-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--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-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;--color-slate-50:oklch(98.4% .003 247.858);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-900:oklch(20.8% .042 265.755);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-semibold:600;--radius-md:.375rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--aspect-video:16 / 9;--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%;-moz-tab-size:4;-o-tab-size:4;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;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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.z-30{z-index:30}.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-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-9{margin-left:calc(var(--spacing) * 9)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.aspect-video{aspect-ratio:var(--aspect-video)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-48{height:calc(var(--spacing) * 48)}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-slate-200{border-color:var(--color-slate-200)}.bg-black{background-color:var(--color-black)}.bg-slate-50{background-color:var(--color-slate-50)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.text-center{text-align:center}.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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-slate-500{color:var(--color-slate-500)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);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}.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,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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media(hover:hover){.hover\:bg-black\/5:hover{background-color:#0000000d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-black\/5:hover{background-color:color-mix(in oklab,var(--color-black) 5%,transparent)}}.hover\:text-slate-900:hover{color:var(--color-slate-900)}}}:root{--ff-bg:#f6f4ef;--ff-surface:#fff;--ff-surface-hover:#f9f8f6;--ff-primary:#295647;--ff-primary-hover:#214539;--ff-primary-subtle:#f0f5f3;--ff-text:#192420;--ff-text-muted:#636e7e;--ff-text-subtle:#8f97a3;--ff-border:#e3e1dd;--ff-border-strong:#cfc8bf;--ff-accent:#295647;--ff-danger:#dc2846;--ff-success:#10b77f;--ff-font:"Plus Jakarta Sans", "Inter", system-ui, sans-serif;--ff-font-serif:"Fraunces", "Georgia", serif;--ff-font-mono:"JetBrains Mono", "Space Mono", monospace;--ff-transition:.15s ease;--ff-radius-sm:6px;--ff-radius-md:10px;--ff-radius-lg:14px;--ff-radius-xl:20px;--ff-radius-pill:10px;--ff-shadow-sm:0 1px 2px #0000000a;--ff-shadow-md:0 4px 8px -1px #0000000f, 0 2px 4px -2px #0000000a;--ff-shadow-lg:0 10px 20px -3px #00000014, 0 4px 6px -4px #0000000a;--ff-shadow-paper:0 0 0 1px #d8d2cb99, 0 1px 1px #00000005, 0 8px 24px -12px #00000014;--ff-shadow-paper-hover:0 0 0 1px #29564738, 0 2px 4px #0000000a, 0 18px 40px -16px #29564726;--ff-shadow-primary:0 8px 32px -8px #29564752}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0}body{color:var(--ff-text);font-family:var(--ff-font);-webkit-font-smoothing:antialiased;background:#fafaf8;font-size:14px;line-height:1.5}.bg-paper{background-color:var(--ff-bg);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.06  0 0 0 0 0.10  0 0 0 0 0.08  0 0 0 0.07 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:220px 220px}.hairline{border-color:var(--ff-border)!important}.underline-grow{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;transition:background-size .28s cubic-bezier(.2,.7,.2,1)}.underline-grow:hover,.group:hover .underline-grow{background-size:100% 1px}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.editorial-display{font-family:var(--ff-font-serif);letter-spacing:-.025em;font-feature-settings:"ss01","ss02";font-weight:500;line-height:1.04}.font-serif{font-family:var(--ff-font-serif);font-feature-settings:"ss01","ss02","calt"}.tnum{font-variant-numeric:tabular-nums lining-nums}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--ff-text-muted);font-size:10px;font-weight:600}.surface-paper{background:var(--ff-surface);border:1px solid var(--ff-border);box-shadow:var(--ff-shadow-paper);transition:box-shadow .18s}.surface-paper:hover{box-shadow:var(--ff-shadow-paper-hover)}.ff-btn{border-radius:var(--ff-radius-md);cursor:pointer;transition:all var(--ff-transition);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.ff-btn:disabled{opacity:.5;cursor:not-allowed}.ff-btn-primary{background:var(--ff-primary);color:#faf8f5;box-shadow:var(--ff-shadow-md)}.ff-btn-primary:hover:not(:disabled){background:var(--ff-primary-hover);box-shadow:var(--ff-shadow-primary);transform:translateY(-1px)}.ff-btn-primary:active:not(:disabled){transform:translateY(0)}.ff-btn-ghost{color:var(--ff-text-muted);border:1px solid var(--ff-border);background:0 0}.ff-btn-ghost:hover:not(:disabled){background:var(--ff-surface);border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-btn-sm{border-radius:var(--ff-radius-sm);padding:6px 12px;font-size:13px}.ff-btn-lg{border-radius:var(--ff-radius-lg);width:100%;padding:14px 28px;font-size:16px;font-weight:600}.ff-btn-icon{border-radius:var(--ff-radius-sm);width:36px;height:36px;padding:0}.ff-input,.ff-textarea,.ff-select{background:var(--ff-surface);width:100%;color:var(--ff-text);border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);font-family:var(--ff-font);transition:border-color var(--ff-transition);outline:none;padding:10px 14px;font-size:14px}.ff-input:focus,.ff-textarea:focus,.ff-select:focus{border-color:var(--ff-accent)}.ff-input::-moz-placeholder,.ff-textarea::-moz-placeholder{color:var(--ff-text-subtle)}.ff-input::placeholder,.ff-textarea::placeholder{color:var(--ff-text-subtle)}.ff-textarea{resize:vertical;min-height:160px;line-height:1.6}.ff-card{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-shadow-paper);transition:box-shadow .18s}.ff-card:hover{box-shadow:var(--ff-shadow-paper-hover)}.ff-page-center{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.ff-topbar{z-index:30;background:var(--ff-surface);border-bottom:1px solid var(--ff-border);box-shadow:var(--ff-shadow-sm);position:sticky;top:0}.ff-topbar-inner{justify-content:space-between;align-items:center;gap:16px;height:56px;padding:0 20px;display:flex}.ff-editor-layout{height:calc(100vh - 100px);display:flex;overflow:hidden}.ff-editor-sidebar{border-right:1px solid var(--ff-border);background:var(--ff-surface);flex-direction:column;width:220px;min-width:220px;display:flex}.ff-editor-canvas-wrap{background:var(--ff-bg);flex:1;justify-content:center;align-items:center;padding:32px;display:flex;overflow:auto}.ff-editor-panel{border-left:1px solid var(--ff-border);background:var(--ff-surface);flex-direction:column;width:320px;min-width:320px;display:flex;overflow-y:auto}.ff-editor-toolbar{background:var(--ff-surface);border-bottom:1px solid var(--ff-border);align-items:center;gap:12px;min-height:44px;padding:8px 20px;display:flex}.ff-thumb{cursor:pointer;border-radius:var(--ff-radius-sm);transition:border-color var(--ff-transition);aspect-ratio:16/9;background:#f1f5f9;border:2px solid #0000;position:relative;overflow:hidden}.ff-thumb:hover{border-color:var(--ff-border-strong)}.ff-thumb[data-active=true]{border-color:var(--ff-accent)}.ff-thumb-num{text-align:center;color:var(--ff-text-muted);padding-top:4px;font-size:11px;font-weight:500;display:block}.ff-slide-canvas{aspect-ratio:16/9;background:var(--ff-surface);width:100%;height:100%;position:relative;overflow:hidden}.ff-panel-tabs{border-bottom:1px solid var(--ff-border);display:flex}.ff-panel-tab{text-align:center;color:var(--ff-text-muted);cursor:pointer;transition:all var(--ff-transition);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:12px;font-size:13px;font-weight:500}.ff-panel-tab[data-active=true]{color:var(--ff-text);border-bottom-color:var(--ff-primary)}.ff-panel-tab:hover{color:var(--ff-text)}.ff-theme-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.ff-theme-card{border:2px solid var(--ff-border);border-radius:var(--ff-radius-lg);cursor:pointer;transition:all var(--ff-transition);background:var(--ff-surface);overflow:hidden}.ff-theme-card:hover{border-color:var(--ff-border-strong);box-shadow:var(--ff-shadow-md)}.ff-theme-card[data-active=true]{border-color:var(--ff-primary)}.ff-theme-preview{aspect-ratio:16/9;flex-direction:column;justify-content:space-between;padding:16px;display:flex;position:relative}.ff-theme-label{border-top:1px solid var(--ff-border);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.ff-toggle{cursor:pointer;width:40px;height:22px;transition:background var(--ff-transition);background:var(--ff-border-strong);border:none;border-radius:11px;position:relative}.ff-toggle[data-on=true]{background:var(--ff-accent)}.ff-toggle-knob{width:16px;height:16px;transition:left var(--ff-transition);background:#fff;border-radius:50%;position:absolute;top:3px;box-shadow:0 1px 3px #0003}.ff-btn-group{gap:4px;display:flex}.ff-btn-option{border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);background:var(--ff-surface);color:var(--ff-text-muted);cursor:pointer;transition:all var(--ff-transition);padding:6px 14px;font-size:13px;font-weight:500}.ff-btn-option:hover{border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-btn-option[data-active=true]{background:var(--ff-primary);color:#fff;border-color:var(--ff-primary)}.ff-color-swatch{cursor:pointer;width:32px;height:32px;transition:all var(--ff-transition);border:2px solid #0000;border-radius:50%}.ff-color-swatch:hover{transform:scale(1.1)}.ff-color-swatch[data-active=true]{border-color:var(--ff-accent);box-shadow:0 0 0 2px var(--ff-accent)}.ff-dropdown-wrap{position:relative}.ff-dropdown-trigger{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);cursor:pointer;transition:all var(--ff-transition);color:var(--ff-text);align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.ff-dropdown-trigger:hover{border-color:var(--ff-border-strong)}.ff-dropdown-menu{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);min-width:200px;box-shadow:var(--ff-shadow-lg);z-index:50;padding:6px;position:absolute;top:calc(100% + 4px);left:0}.ff-dropdown-item{border-radius:var(--ff-radius-sm);cursor:pointer;transition:background var(--ff-transition);color:var(--ff-text);text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100px;padding:8px 12px;font-size:13px;display:flex}.ff-dropdown-item:hover{background:var(--ff-bg)}.ff-dropdown-item[data-active=true]{font-weight:600}.ff-dropdown-sep{text-transform:uppercase;letter-spacing:.5px;color:var(--ff-text-subtle);pointer-events:none;padding:8px 12px 4px;font-size:11px;font-weight:600}.ff-dd-menu{background:var(--ff-surface);border:1px solid var(--ff-border);box-shadow:var(--ff-shadow-lg);border-radius:10px;padding:4px;overflow-y:auto}.ff-dd-menu::-webkit-scrollbar{width:4px}.ff-dd-menu::-webkit-scrollbar-track{background:0 0}.ff-dd-menu::-webkit-scrollbar-thumb{background:var(--ff-border-strong);border-radius:2px}.ff-dd-item{width:100%;font-family:var(--ff-font);color:var(--ff-text);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;font-weight:500;transition:background .1s;display:flex}.ff-dd-item:hover{background:var(--ff-bg)}.ff-dd-item[data-active=true]{background:var(--ff-primary-subtle);color:var(--ff-primary);font-weight:600}.ff-dd-check{width:14px;height:14px;color:var(--ff-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ff-chip{border-radius:var(--ff-radius-pill);background:var(--ff-bg);color:var(--ff-text-muted);border:1px solid var(--ff-border);align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.ff-chip-done{color:#059669;background:#ecfdf5;border-color:#a7f3d0}.ff-chip-error{color:#dc2626;background:#fef2f2;border-color:#fecaca}.ff-chip-active{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.ff-modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ff-modal{background:var(--ff-surface);border-radius:var(--ff-radius-xl);box-shadow:var(--ff-shadow-lg);width:100%;max-width:520px;padding:28px;position:relative}.ff-modal-close{border:1px solid var(--ff-border);background:var(--ff-surface);cursor:pointer;width:32px;height:32px;color:var(--ff-text-muted);transition:all var(--ff-transition);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:16px;right:16px}.ff-modal-close:hover{background:var(--ff-bg);color:var(--ff-text)}.ff-progress-step{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-surface);align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex}.ff-progress-step[data-active=true]{border-color:var(--ff-accent);background:#eff6ff}.ff-progress-step[data-done=true]{color:var(--ff-success)}.ff-voice-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.ff-voice-card{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);cursor:pointer;text-align:center;transition:all var(--ff-transition);background:var(--ff-surface);padding:12px}.ff-voice-card:hover{border-color:var(--ff-border-strong)}.ff-voice-card[data-active=true]{border-color:var(--ff-primary);background:var(--ff-primary);color:#fff}.ff-ai-bar{background:var(--ff-surface);border-top:1px solid var(--ff-border);align-items:center;gap:8px;padding:8px 16px;display:flex}.ff-ai-input{color:var(--ff-text);background:0 0;border:none;outline:none;flex:1;padding:8px 0;font-size:13px}.ff-ai-input::-moz-placeholder{color:var(--ff-text-subtle)}.ff-ai-input::placeholder{color:var(--ff-text-subtle)}.ff-ai-send{background:var(--ff-primary);color:#fff;cursor:pointer;width:32px;height:32px;transition:background var(--ff-transition);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.ff-ai-send:hover{background:var(--ff-primary-hover)}.ff-history-item{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);transition:all var(--ff-transition);align-items:center;gap:16px;padding:16px;display:flex;overflow:hidden}.ff-history-item[data-clickable=true]{cursor:pointer}.ff-history-item[data-clickable=true]:hover{border-color:var(--ff-border-strong);box-shadow:var(--ff-shadow-md)}.ff-upload-zone{text-align:center;border:2px dashed var(--ff-border-strong);border-radius:var(--ff-radius-lg);cursor:pointer;min-height:140px;transition:all var(--ff-transition);color:var(--ff-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.ff-upload-zone:hover{border-color:var(--ff-accent);background:#3b82f60a}.ff-scroll::-webkit-scrollbar{width:6px}.ff-scroll::-webkit-scrollbar-track{background:0 0}.ff-scroll::-webkit-scrollbar-thumb{background:var(--ff-border-strong);border-radius:3px}.ff-label{text-transform:uppercase;letter-spacing:.8px;color:var(--ff-text-muted);margin-bottom:8px;font-size:11px;font-weight:600}@media(max-width:960px){.ff-editor-layout{flex-direction:column;height:auto;min-height:calc(100vh - 100px)}.ff-editor-sidebar{border-right:none;border-bottom:1px solid var(--ff-border);flex-direction:row;width:100%;min-width:100%;max-height:120px;overflow-x:auto}.ff-editor-panel{border-left:none;border-top:1px solid var(--ff-border);width:100%;min-width:100%}.ff-theme-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.ff-theme-grid{grid-template-columns:1fr}}.ff-input-page{background:linear-gradient(180deg,var(--ff-bg) 0%,var(--ff-bg) 100%);min-height:100vh}@supports (color:color-mix(in lab,red,red)){.ff-input-page{background:linear-gradient(180deg,var(--ff-bg) 0%,color-mix(in srgb,var(--ff-bg) 92%,var(--ff-border)) 100%)}}.ff-input-page{padding-bottom:120px}.ff-input-header{z-index:30;border-bottom:1px solid var(--ff-border);position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.ff-input-header{border-bottom:1px solid color-mix(in srgb,var(--ff-border) 60%,transparent)}}.ff-input-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--ff-surface)}@supports (color:color-mix(in lab,red,red)){.ff-input-header{background:color-mix(in srgb,var(--ff-surface) 70%,transparent)}}.ff-input-header-inner{justify-content:space-between;align-items:center;max-width:1152px;height:56px;margin:0 auto;padding:0 32px;display:flex}.ff-input-header-left{align-items:center;gap:12px;display:flex}.ff-input-logo{background:var(--ff-primary);border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.ff-input-brand{letter-spacing:-.01em;color:var(--ff-text);font-size:15px;font-weight:600}.ff-input-sep{color:var(--ff-text-subtle);opacity:.5}.ff-input-step{color:var(--ff-text-muted);font-size:12px}.ff-input-header-right{align-items:center;gap:8px;display:flex}.ff-input-hero{max-width:1152px;margin:0 auto;padding:48px 32px 32px;animation:.5s both ff-fadeUp}.ff-input-title-big{letter-spacing:-.025em;width:100%;color:var(--ff-text);font-size:clamp(32px,5vw,48px);font-weight:600;line-height:1.1;font-family:var(--ff-font);background:0 0;border:none;outline:none}.ff-input-title-big::-moz-placeholder{color:var(--ff-text-subtle);opacity:.4}.ff-input-title-big::placeholder{color:var(--ff-text-subtle);opacity:.4}.ff-input-title-hint{color:var(--ff-text-muted);margin-top:8px;font-size:14px}.ff-input-body{grid-template-columns:1.05fr 1fr;gap:24px;max-width:1152px;margin:0 auto;padding:0 32px;display:grid}.ff-input-col-left{flex-direction:column;gap:16px;animation:.5s 60ms both ff-fadeUp;display:flex}.ff-input-col-right{flex-direction:column;gap:24px;animation:.5s .12s both ff-fadeUp;display:flex}.ff-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--ff-text-muted);font-size:11px;font-weight:600}.ff-eyebrow-row{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.ff-eyebrow-hint{color:var(--ff-text-muted);font-size:11px}.ff-segmented{background:var(--ff-bg);border-radius:6px;padding:2px;font-size:13px;display:inline-flex}.ff-segmented-btn{cursor:pointer;height:32px;color:var(--ff-text-muted);font-size:13px;font-weight:500;font-family:var(--ff-font);transition:all var(--ff-transition);background:0 0;border:none;border-radius:5px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.ff-segmented-btn:hover{color:var(--ff-text)}.ff-segmented-btn[data-active=true]{background:var(--ff-surface);color:var(--ff-text);box-shadow:0 1px 3px #00000014}.ff-textarea-tall,.ff-upload-zone-tall{min-height:280px}.ff-upload-icon-wrap{background:var(--ff-surface);width:48px;height:48px;box-shadow:var(--ff-shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.ff-upload-filename{color:var(--ff-text);font-size:14px;font-weight:500}.ff-upload-hint{color:var(--ff-text-muted);font-size:12px}.ff-upload-remove{color:var(--ff-text-muted);cursor:pointer;font-size:12px;font-family:var(--ff-font);background:0 0;border:none;align-items:center;gap:4px;display:inline-flex}.ff-upload-remove:hover{color:var(--ff-text)}.ff-input-source-footer{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.ff-chip-btn{background:var(--ff-bg);cursor:pointer;height:28px;color:var(--ff-text);font-size:12px;font-weight:500;font-family:var(--ff-font);transition:background var(--ff-transition);border:none;border-radius:50px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.ff-chip-btn:hover{background:var(--ff-bg)}@supports (color:color-mix(in lab,red,red)){.ff-chip-btn:hover{background:color-mix(in srgb,var(--ff-bg) 80%,var(--ff-border))}}.ff-input-source-stats{color:var(--ff-text-muted);font-variant-numeric:tabular-nums;font-size:12px}.ff-enrich-toggle{cursor:pointer;border-radius:var(--ff-radius-lg);border:1px solid var(--ff-border);background:var(--ff-surface);transition:border-color var(--ff-transition);align-items:flex-start;gap:12px;padding:16px;display:flex}.ff-enrich-toggle:hover{border-color:var(--ff-border-strong)}.ff-enrich-toggle[data-active=true]{border-color:var(--ff-accent)}.ff-enrich-check{border:2px solid var(--ff-border-strong);width:20px;height:20px;transition:all var(--ff-transition);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.ff-enrich-toggle[data-active=true] .ff-enrich-check{background:var(--ff-accent);border-color:var(--ff-accent);color:#fff}.ff-enrich-title{color:var(--ff-text);font-size:14px;font-weight:500}.ff-enrich-desc{color:var(--ff-text-muted);margin-top:2px;font-size:12px}.ff-theme-grid-compact{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.ff-theme-preview-card{text-align:left;border-radius:var(--ff-radius-md);border:2px solid var(--ff-border);cursor:pointer;transition:all var(--ff-transition);background:var(--ff-surface);position:relative;overflow:hidden}.ff-theme-preview-card:hover{border-color:var(--ff-border-strong)}.ff-theme-preview-card[data-active=true]{border-color:var(--ff-primary);box-shadow:0 0 0 2px var(--ff-primary)}@supports (color:color-mix(in lab,red,red)){.ff-theme-preview-card[data-active=true]{box-shadow:0 0 0 2px color-mix(in srgb,var(--ff-primary) 15%,transparent)}}.ff-theme-preview-slide{aspect-ratio:5/4;flex-direction:column;justify-content:space-between;padding:10px;display:flex}.ff-theme-preview-dots{justify-content:space-between;align-items:center;display:flex}.ff-theme-preview-label{border-top:1px solid var(--ff-border);color:var(--ff-text);justify-content:space-between;align-items:center;padding:6px 8px;font-size:11px;font-weight:500;display:flex}.ff-check-dot{background:var(--ff-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:flex}.ff-check-dot-abs{position:absolute;top:6px;right:6px}.ff-all-themes-btn{border-radius:var(--ff-radius-md);border:1px dashed var(--ff-border);width:100%;color:var(--ff-text-muted);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--ff-font);transition:all var(--ff-transition);background:0 0;justify-content:center;align-items:center;margin-top:12px;padding:10px;display:flex}.ff-all-themes-btn:hover{border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-custom-template-btn{border-radius:var(--ff-radius-md);border:1px dashed var(--ff-border);text-align:left;width:100%;transition:all var(--ff-transition);cursor:pointer;background:var(--ff-surface);align-items:center;gap:12px;margin-top:12px;padding:12px 16px;display:flex}.ff-custom-template-btn[data-active=true]{border-color:var(--ff-primary);background:var(--ff-bg)}@supports (color:color-mix(in lab,red,red)){.ff-custom-template-btn[data-active=true]{background:color-mix(in srgb,var(--ff-bg) 60%,var(--ff-surface))}}.ff-custom-template-btn:hover{border-color:var(--ff-border-strong)}.ff-custom-template-btn[data-active=true]:hover{border-color:var(--ff-primary)}.ff-custom-template-icon{border-radius:var(--ff-radius-sm);background:var(--ff-bg);width:36px;height:36px;color:var(--ff-text);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ff-custom-template-text{flex:1;min-width:0}.ff-custom-template-name{color:var(--ff-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.ff-custom-template-hint{color:var(--ff-text-muted);font-size:11px}.ff-custom-template-remove{color:var(--ff-text-muted);border-radius:var(--ff-radius-sm);padding:4px}.ff-custom-template-remove:hover{color:var(--ff-text);background:var(--ff-bg)}.ff-voice-grid-new{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.ff-voice-card-new{border-radius:var(--ff-radius-md);border:1px solid var(--ff-border);background:var(--ff-surface);cursor:pointer;text-align:left;transition:all var(--ff-transition);font-family:var(--ff-font);align-items:center;gap:10px;padding:10px;display:flex;position:relative}.ff-voice-card-new:hover{border-color:var(--ff-border-strong)}.ff-voice-card-new[data-active=true]{border-color:var(--ff-primary);background:var(--ff-bg)}@supports (color:color-mix(in lab,red,red)){.ff-voice-card-new[data-active=true]{background:color-mix(in srgb,var(--ff-bg) 60%,var(--ff-surface))}}.ff-voice-card-new[data-active=true]{box-shadow:0 0 0 2px var(--ff-primary)}@supports (color:color-mix(in lab,red,red)){.ff-voice-card-new[data-active=true]{box-shadow:0 0 0 2px color-mix(in srgb,var(--ff-primary) 15%,transparent)}}.ff-voice-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:600;display:flex}.ff-voice-info{flex:1;min-width:0}.ff-voice-name{color:var(--ff-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.ff-voice-desc{color:var(--ff-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ff-voice-play{border:1px solid var(--ff-border);background:var(--ff-surface);cursor:pointer;width:28px;height:28px;color:var(--ff-text);transition:all var(--ff-transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ff-voice-play:hover{background:var(--ff-bg)}.ff-voice-options{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px;display:grid}.ff-voice-option-col{flex-direction:column;display:flex}.ff-input-bottombar{z-index:40;border-top:1px solid var(--ff-border);position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.ff-input-bottombar{border-top:1px solid color-mix(in srgb,var(--ff-border) 60%,transparent)}}.ff-input-bottombar{background:var(--ff-surface)}@supports (color:color-mix(in lab,red,red)){.ff-input-bottombar{background:color-mix(in srgb,var(--ff-surface) 85%,transparent)}}.ff-input-bottombar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ff-input-bottombar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1152px;margin:0 auto;padding:12px 32px;display:flex}.ff-input-bottombar-stats{color:var(--ff-text-muted);font-variant-numeric:tabular-nums;font-size:12px}.ff-stat-val{color:var(--ff-text);font-weight:500}.ff-input-bottombar-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.ff-input-kbd-hint{color:var(--ff-text-muted);align-items:center;gap:4px;font-size:11px;display:none}@media(min-width:768px){.ff-input-kbd-hint{display:inline-flex}}.ff-kbd{border:1px solid var(--ff-border);background:var(--ff-bg);font-size:10px;font-family:var(--ff-font-mono);border-radius:4px;justify-content:center;align-items:center;padding:2px 6px;line-height:1;display:inline-flex}.ff-btn-generate{border-radius:var(--ff-radius-md);gap:8px;height:44px;padding:0 20px;font-size:15px;font-weight:600}.ff-input-bottombar-notice{max-width:1152px;color:var(--ff-text-muted);text-align:right;margin:-4px auto 0;padding:0 32px 8px;font-size:11px}@keyframes ff-fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:860px){.ff-input-body{grid-template-columns:1fr}.ff-input-hero{padding-top:32px;padding-bottom:24px}.ff-input-bottombar-stats{display:none}}@media(max-width:560px){.ff-input-header-inner{padding:0 16px}.ff-input-hero{padding-left:16px;padding-right:16px}.ff-input-body{padding:0 16px}.ff-input-bottombar-inner{padding:12px 16px}.ff-voice-grid-new{grid-template-columns:1fr}.ff-theme-grid-compact{grid-template-columns:repeat(2,1fr)}}[data-theme=dark] .ff-input-page{background:linear-gradient(#0c1220,#111827)}[data-theme=dark] .ff-check-dot{background:var(--ff-accent)}[data-theme=dark] .ff-theme-preview-label{border-color:var(--ff-border)}[data-theme=dark] .ff-enrich-toggle[data-active=true] .ff-enrich-check{background:var(--ff-accent);border-color:var(--ff-accent)}.ff-create-page{box-sizing:border-box;background:#fafaf8;flex-direction:column;height:100%;padding:10px 14px;display:flex;overflow:hidden}.ff-create-toolbar{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ff-create-grid{flex:1;grid-template-columns:1fr 1fr;gap:16px;min-height:0;display:grid}.ff-create-script-card,.ff-create-style-card{background:#fafafa;border-color:#d8d8d8;border-radius:14px;min-height:0;box-shadow:0 2px 14px #0f172a0a}.ff-create-script-card{flex-direction:column;height:100%;display:flex}.ff-create-script-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px 10px;display:flex}.ff-create-script-head-left{align-items:center;gap:14px;min-width:0;display:flex}.ff-create-label{letter-spacing:.22em;text-transform:uppercase;color:#707885;font-size:13px}.ff-create-segmented{background:#efefef;border-radius:14px;padding:4px}.ff-create-meta{color:#6b7280;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.ff-create-script-body{flex:1;min-height:0;padding:0 16px}.ff-create-textarea,.ff-create-dropzone{background:#f8f8f9;border:1px solid #dcdfe4;border-radius:14px;width:100%;height:100%;min-height:0}.ff-create-textarea{color:var(--ff-text);resize:none;font-size:15px;line-height:1.7;font-family:var(--ff-font);outline:none;padding:22px}.ff-create-textarea::-moz-placeholder{color:#a2aab7}.ff-create-textarea::placeholder{color:#a2aab7}.ff-create-textarea:focus{border-color:#b0bac8}.ff-create-dropzone{cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.ff-create-dropzone[data-drag=true]{background:#f3f8ff;border-color:#7f9fc7}.ff-create-script-foot{justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.ff-create-chars{color:#667085;font-variant-numeric:tabular-nums;font-size:12px}.ff-create-style-card{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.ff-create-section{padding:12px 16px}.ff-create-divider{border-top:1px solid #d9d9dd}.ff-create-section-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.ff-create-template-btn{color:#64748b;height:42px;font-size:13px;font-family:var(--ff-font);white-space:nowrap;text-overflow:ellipsis;background:#f8f8f8;border:1px dashed #cdd2da;border-radius:13px;align-items:center;gap:8px;max-width:240px;padding:0 14px;display:inline-flex;overflow:hidden}.ff-create-template-btn[data-active=true]{border-color:#8ca5c4}.ff-create-style-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ff-create-style-focus{text-align:left;background:#f5f5f5;border:1px solid #d6d6d8;border-radius:16px;overflow:hidden}.ff-create-style-focus-preview{height:124px;padding:14px}.ff-create-style-focus-title{font-size:15px;font-weight:700;line-height:1.2}.ff-create-style-focus-subtitle{opacity:.7;margin-top:6px;font-size:11px}.ff-create-style-focus-bar{border-radius:999px;width:40px;height:4px;margin-top:30px}.ff-create-style-focus-footer{color:#6b7280;border-top:1px solid #0f172a1a;padding:6px 10px;font-size:11px}.ff-create-style-chips{grid-template-columns:1fr;gap:8px;display:grid}.ff-create-style-chip{background:#f6f6f6;border:1.5px solid #d0d5dd;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:flex-start;height:40px;padding:8px 10px;display:flex;position:relative}.ff-create-style-chip[data-active=true]{border-color:#6f8cae;box-shadow:0 0 0 2px #6f8cae2e}.ff-create-style-chip-aa{color:#0f172ae0;font-size:12px;font-weight:700}.ff-create-style-chip-bar{border-radius:999px;width:14px;height:3px}.ff-create-motion-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.ff-create-motion-card{text-align:left;background:#f8f8f8;border:1.5px solid #d3d4d8;border-radius:15px;padding-bottom:8px;overflow:hidden}.ff-create-motion-card[data-active=true]{border-color:#6f7580;box-shadow:0 0 0 2px #6f758026}.ff-create-motion-preview{border-bottom:1px solid #d3d4d8;height:58px;padding:10px;overflow:hidden}.ff-create-motion-line{background:#81878d;border-radius:999px;height:5px;margin-bottom:6px;display:block}.ff-create-motion-line-1{width:64%}.ff-create-motion-line-2{opacity:.8;width:82%}.ff-create-motion-line-3{opacity:.65;width:56%}.ff-create-motion-name{color:#293042;padding:6px 10px 0;font-size:14px;font-weight:520}.ff-create-motion-desc{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;padding:2px 10px 0;font-size:10px;line-height:1.25;overflow:hidden}.ff-create-motion-card[data-preset=subtle] .ff-create-motion-line{animation:2.4s ease-in-out infinite ffCreateMotionSubtle}.ff-create-motion-card[data-preset=dynamic] .ff-create-motion-line{animation:1.8s cubic-bezier(.2,.7,.2,1) infinite ffCreateMotionDynamic}.ff-create-motion-card[data-preset=dramatic] .ff-create-motion-line{animation:2.2s cubic-bezier(.16,.84,.32,1.18) infinite ffCreateMotionDramatic}.ff-create-motion-card[data-preset=cinematic] .ff-create-motion-line{animation:2.8s cubic-bezier(.16,.84,.32,1.1) infinite ffCreateMotionCinematic}.ff-create-motion-card .ff-create-motion-line-2{animation-delay:.1s}.ff-create-motion-card .ff-create-motion-line-3{animation-delay:.2s}@keyframes ffCreateMotionSubtle{0%,to{opacity:.35;transform:none}50%{opacity:.9;transform:none}}@keyframes ffCreateMotionDynamic{0%,to{opacity:.15;transform:translateY(8px)}45%,70%{opacity:.95;transform:translateY(0)}}@keyframes ffCreateMotionDramatic{0%,to{opacity:.1;transform:translate(-14px)scale(.8)rotate(-3deg)}45%,70%{opacity:1;transform:translate(0)scale(1)rotate(0)}}@keyframes ffCreateMotionCinematic{0%,to{opacity:0;transform-origin:0;transform:translate(-20px)scaleX(.65)}42%,76%{opacity:1;transform-origin:0;transform:translate(0)scaleX(1)}}.ff-create-voice-active{background:#f6f6f6;border:1px solid #ced2d8;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.ff-create-voice-select{background:#fff;height:40px;min-height:40px;margin-bottom:10px;padding-top:0;padding-bottom:0;line-height:1.2}.ff-create-voice-meta{flex:1;min-width:0}.ff-create-voice-name{color:#232a3a;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:520;overflow:hidden}.ff-create-voice-desc{color:#667085;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.ff-create-pill-rows{flex-direction:column;gap:10px;margin-top:12px;display:flex}.ff-create-pill-row{align-items:center;gap:10px;display:flex}.ff-create-pill-label{letter-spacing:.18em;text-transform:uppercase;color:#727b89;min-width:42px;font-size:12px}.ff-create-pill-group{flex-wrap:wrap;gap:6px;display:flex}.ff-create-pill-btn{color:#667085;font-size:14px;font-family:var(--ff-font);background:#eceef0;border:none;border-radius:12px;padding:5px 12px}.ff-create-pill-btn[data-active=true]{color:#1f2937;background:#fff;box-shadow:inset 0 0 0 1px #cfd4dc}.ff-create-voice-upload{color:#5b6576;cursor:pointer;border:1px dashed #c8ced8;border-radius:14px;align-items:center;gap:8px;padding:12px;font-size:13px;display:inline-flex}.ff-create-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.ff-create-bottom-bar{border-top:1px solid var(--ff-border);background:#f9f8f5;flex-shrink:0;justify-content:flex-end;align-items:center;margin:8px -14px -10px;padding:12px 24px;display:flex}.ff-create-enrich{color:#475467;white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.ff-create-enrich input{accent-color:#1f2937}.ff-create-title-input{background:#f4f4f5;border:1px solid #dcdfe4;border-radius:14px;flex-shrink:0;width:calc(50% - 8px);height:36px;font-family:Plus Jakarta Sans,sans-serif;font-size:15px}.ff-create-generate{white-space:nowrap;border-radius:8px;height:52px;padding:0 28px;font-size:15px}:root[data-ff-create-open] body,:root[data-ff-create-open] .ff-shell-content{overflow:hidden}@media(max-width:1300px){.ff-create-motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-height:860px){.ff-create-page{padding:8px 10px}.ff-create-toolbar{margin-bottom:6px}.ff-create-grid{gap:10px}.ff-create-section,.ff-create-script-head,.ff-create-script-foot{padding-top:8px;padding-bottom:8px}.ff-create-style-focus-preview{height:96px;padding:10px}.ff-create-style-focus-title{font-size:13px}.ff-create-style-focus-subtitle{margin-top:4px;font-size:10px}.ff-create-style-focus-bar{margin-top:18px}.ff-create-motion-preview{height:46px;padding:8px}.ff-create-motion-name{padding-top:4px;font-size:12px}.ff-create-motion-desc{display:none}.ff-create-voice-select{height:36px;min-height:36px;margin-bottom:8px;padding-top:0;padding-bottom:0;line-height:1.2}.ff-create-pill-rows{gap:6px;margin-top:8px}.ff-create-pill-label{font-size:10px}.ff-create-pill-btn{padding:4px 10px;font-size:12px}.ff-create-actions{padding:8px 12px}.ff-create-title-input,.ff-create-generate{height:32px}}@media(max-width:1080px){.ff-create-grid{grid-template-columns:1fr;height:calc(100% - 44px)}.ff-create-textarea,.ff-create-dropzone{min-height:420px}}@media(max-width:760px){.ff-create-script-head{flex-direction:column;align-items:stretch}.ff-create-script-head-left{flex-direction:column;align-items:flex-start}.ff-create-style-row,.ff-create-actions{grid-template-columns:1fr}}:root{--ff-sidebar-width:220px;--ff-sidebar-collapsed-width:56px}.ff-shell{grid-template-columns:var(--ff-sidebar-width) 1fr;min-height:100vh;transition:grid-template-columns .2s;display:grid}.ff-shell[data-sidebar-collapsed=true]{grid-template-columns:var(--ff-sidebar-collapsed-width) 1fr}.ff-shell-main{flex-direction:column;min-height:100vh;display:flex;overflow:hidden}.ff-shell-topbar{z-index:20;border-bottom:1px solid var(--ff-border);background:var(--ff-surface);justify-content:space-between;align-items:center;height:48px;padding:0 24px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.ff-shell-topbar{background:color-mix(in srgb,var(--ff-surface) 82%,transparent)}}.ff-shell-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-shrink:0}.ff-shell-topbar-right{align-items:center;gap:8px;display:flex}.ff-shell-content{flex:1;overflow:hidden auto}:root[data-ff-editor-open] body{overflow:hidden}:root[data-ff-editor-open] .ff-shell-topbar{display:none}:root[data-ff-editor-open] .ff-shell{overflow:hidden}.ff-sidebar{border-right:1px solid var(--ff-border);z-index:25;background:#f9f8f5;flex-direction:column;flex-shrink:0;height:100vh;transition:width .2s;display:flex;position:sticky;top:0;overflow:hidden}.ff-sidebar-inner{flex-direction:column;flex:1;gap:2px;min-width:0;padding:12px 8px;display:flex;overflow:hidden}.ff-sidebar-brandrow{justify-content:space-between;align-items:center;gap:4px;margin-bottom:4px;padding:0 4px 8px;display:flex}.ff-sidebar-brand{cursor:pointer;border-radius:var(--ff-radius-sm);min-width:0;transition:background var(--ff-transition);background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:4px;display:flex}.ff-sidebar-brand:hover{background:var(--ff-border)}.ff-sidebar-brand-mark{background:var(--ff-primary);color:#faf8f5;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.ff-sidebar-brand-logo{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.ff-sidebar-brand-text{letter-spacing:-.01em;color:var(--ff-text);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.ff-sidebar-brand-text em{font-style:italic;font-family:var(--ff-font-serif);font-weight:500}.ff-sidebar-collapse-btn{cursor:pointer;border-radius:var(--ff-radius-sm);width:28px;height:28px;color:var(--ff-text-muted);transition:background var(--ff-transition),color var(--ff-transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ff-sidebar-collapse-btn:hover{background:var(--ff-border);color:var(--ff-text)}.ff-sidebar-new{border-radius:var(--ff-radius-md);cursor:pointer;width:100%;font-family:var(--ff-font);color:var(--ff-primary);transition:background var(--ff-transition);text-align:left;background:#f0f5f3;border:none;align-items:center;gap:8px;min-width:0;margin-bottom:4px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.ff-sidebar-new:hover{background:#e2eeea}.ff-sidebar-kbd-group{align-items:center;gap:2px;margin-left:auto;display:flex}.ff-sidebar-kbd{border:1px solid var(--ff-border-strong);background:var(--ff-surface);font-size:10px;font-family:var(--ff-font-mono);color:var(--ff-text-muted);border-radius:4px;justify-content:center;align-items:center;padding:1px 5px;line-height:1.4;display:inline-flex}.ff-sidebar-divider{background:var(--ff-border);height:1px;margin:4px 4px 8px}.ff-sidebar-section-label{text-transform:uppercase;letter-spacing:.18em;color:var(--ff-text-muted);white-space:nowrap;margin-bottom:4px;padding:0 10px;font-size:10px;font-weight:600;overflow:hidden}.ff-sidebar-nav{flex-direction:column;flex:1;gap:1px;display:flex}.ff-sidebar-link{border-radius:var(--ff-radius-sm);color:var(--ff-text-muted);transition:background var(--ff-transition),color var(--ff-transition);white-space:nowrap;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex;position:relative;overflow:hidden}.ff-sidebar-link:hover{background:var(--ff-border);color:var(--ff-text)}.ff-sidebar-link-active{color:var(--ff-primary);background:#f0f5f3}.ff-sidebar-link-active:before{content:"";background:var(--ff-primary);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:0}.ff-sidebar-link-active:hover{background:#e3edea}.ff-sidebar-user{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-surface);cursor:pointer;width:100%;font-family:var(--ff-font);text-align:left;transition:border-color var(--ff-transition),background var(--ff-transition);align-items:center;gap:8px;min-width:0;margin-top:auto;padding:8px 10px;display:flex}.ff-sidebar-user:hover{border-color:var(--ff-border-strong);background:var(--ff-surface-hover)}.ff-sidebar-user-avatar{background:var(--ff-primary);color:#faf8f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:600;display:flex}.ff-sidebar-user-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ff-sidebar-user-name{color:var(--ff-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.ff-sidebar-user-email{color:var(--ff-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ff-sidebar-user-chev{color:var(--ff-text-muted);flex-shrink:0}.ff-breadcrumbs{align-items:center;gap:4px;font-size:13px;display:flex}.ff-breadcrumb-item{align-items:center;gap:4px;display:inline-flex}.ff-breadcrumb-link{color:var(--ff-text-muted);transition:color var(--ff-transition);text-decoration:none}.ff-breadcrumb-link:hover{color:var(--ff-text)}.ff-breadcrumb-current{color:var(--ff-text);font-weight:500}.ff-breadcrumb-sep{color:var(--ff-text-subtle)}.ff-slide-editor{z-index:50;background:var(--ff-bg);flex-direction:column;display:flex;position:fixed;inset:0}.ff-slide-editor-layout{flex:1;grid-template-columns:160px 1fr 280px;height:100vh;display:grid;overflow:hidden}.ff-se-thumbs{background:var(--ff-surface);border-right:1px solid var(--ff-border);flex-direction:column;display:flex;overflow:hidden}.ff-se-thumbs-head{border-bottom:1px solid var(--ff-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 12px 8px;display:flex}.ff-se-thumbs-label{text-transform:uppercase;letter-spacing:.14em;color:var(--ff-text-muted);font-size:11px;font-weight:600}.ff-se-thumbs-actions{gap:2px;display:flex}.ff-se-thumbs-list{flex-direction:column;flex:1;gap:4px;padding:8px;display:flex;overflow-y:auto}.ff-se-thumbs-list::-webkit-scrollbar{width:4px}.ff-se-thumbs-list::-webkit-scrollbar-track{background:0 0}.ff-se-thumbs-list::-webkit-scrollbar-thumb{background:var(--ff-border-strong);border-radius:2px}.ff-se-thumb-row{cursor:pointer;text-align:center;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;width:100%;padding:2px 0;display:flex}.ff-se-thumb-row[data-active=true] .ff-se-thumb{border-color:var(--ff-primary);box-shadow:0 0 0 2px #29564726}.ff-se-thumb-num{color:var(--ff-text-muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:500;line-height:1}.ff-se-thumb{aspect-ratio:16/9;border:2px solid var(--ff-border);border-radius:var(--ff-radius-sm);width:100%;transition:border-color var(--ff-transition);background:#f1f5f9;position:relative;overflow:hidden}.ff-se-thumb:hover{border-color:var(--ff-border-strong)}.ff-se-thumb-warn{color:var(--ff-danger);background:#fff;border-radius:50%;display:flex;position:absolute;bottom:3px;right:3px}.ff-se-thumbs-footer{color:var(--ff-text-muted);border-top:1px solid var(--ff-border);flex-shrink:0;padding:8px 12px;font-size:11px}.ff-se-icon-btn{border-radius:var(--ff-radius-pill);cursor:pointer;width:30px;height:30px;color:var(--ff-text-muted);transition:background var(--ff-transition),border-color var(--ff-transition),color var(--ff-transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.ff-se-icon-btn:hover{background:var(--ff-bg);border-color:var(--ff-border);color:var(--ff-text)}.ff-se-icon-btn:disabled{opacity:.35;cursor:not-allowed}.ff-se-main{background:#faf8f2;flex-direction:column;display:flex;overflow:hidden}.ff-se-toolbar{background:var(--ff-surface);border-bottom:1px solid var(--ff-border);flex-shrink:0;align-items:center;gap:6px;height:44px;padding:0 12px;display:flex}.ff-se-toolbar-divider{background:var(--ff-border);flex-shrink:0;width:1px;height:20px}.ff-se-toolbar-spacer{flex:1}.ff-se-slide-of{color:var(--ff-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.ff-se-pill{border:1px solid var(--ff-border);border-radius:var(--ff-radius-pill);background:var(--ff-surface);cursor:pointer;height:30px;color:var(--ff-text);transition:border-color var(--ff-transition),background var(--ff-transition);white-space:nowrap;align-items:center;gap:5px;padding:0 10px;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:500;display:inline-flex;position:relative}.ff-se-pill:hover{border-color:var(--ff-border-strong);background:var(--ff-surface-hover)}.ff-se-pill-select{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.ff-se-pill-chev{color:var(--ff-text-muted);flex-shrink:0}.ff-se-pill-value{color:var(--ff-text)}.ff-se-pill-action{gap:6px}.ff-se-pill-action:hover{border-color:var(--ff-primary);color:var(--ff-primary);background:#f0f5f3}.ff-se-motion-select{border:1px solid var(--ff-border);border-radius:var(--ff-radius-pill);background:var(--ff-surface);height:30px;color:var(--ff-text);cursor:pointer;transition:border-color var(--ff-transition);outline:none;padding:0 10px;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:500}.ff-se-motion-select:hover{border-color:var(--ff-border-strong)}.ff-se-motion-select:focus{border-color:var(--ff-primary)}.ff-se-title-input{border:1px solid var(--ff-border);border-radius:var(--ff-radius-pill);max-width:260px;height:30px;font-family:var(--ff-font);color:var(--ff-text);background:var(--ff-surface);transition:border-color var(--ff-transition);outline:none;flex:1;padding:0 10px;font-size:13px;font-weight:500}.ff-se-title-input:focus{border-color:var(--ff-primary)}.ff-se-title-input::-moz-placeholder{color:var(--ff-text-subtle)}.ff-se-title-input::placeholder{color:var(--ff-text-subtle)}.ff-se-canvas-wrap{flex:1;justify-content:center;align-items:center;padding:24px;display:flex;overflow:hidden}.ff-se-canvas-frame{border-radius:var(--ff-radius-md);flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 24px 64px -16px #0009}.ff-se-ai{background:var(--ff-surface);border-top:1px solid var(--ff-border);flex-direction:column;flex-shrink:0;max-height:320px;transition:max-height .22s;display:flex}.ff-se-ai[data-open=false]{max-height:40px}.ff-se-ai-head{cursor:pointer;text-align:left;width:100%;height:40px;font-family:var(--ff-font);background:0 0;border:none;flex-shrink:0;align-items:center;gap:8px;padding:0 14px;display:flex}.ff-se-ai-head:hover{background:var(--ff-surface-hover)}.ff-se-ai-head-icon{background:var(--ff-primary);color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.ff-se-ai-head-title{color:var(--ff-text);font-size:12px;font-weight:600}.ff-se-ai-head-chip{color:var(--ff-text-muted);background:var(--ff-bg);border:1px solid var(--ff-border);border-radius:var(--ff-radius-pill);padding:1px 8px;font-size:11px}.ff-se-ai-head-chev{color:var(--ff-text-muted);margin-left:auto;transition:transform .22s}.ff-se-ai-body{flex-direction:column;flex:1;gap:8px;padding:8px 14px 12px;display:flex;overflow-y:auto}.ff-se-ai-msg{align-items:flex-start;gap:8px;display:flex}.ff-se-ai-avatar{background:var(--ff-primary);color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-top:1px;display:flex}.ff-se-ai-bubble{color:var(--ff-text-muted);background:var(--ff-bg);border:1px solid var(--ff-border);border-radius:0 8px 8px;padding:7px 11px;font-size:13px;line-height:1.5}.ff-se-ai-chips{flex-wrap:wrap;gap:6px;display:flex}.ff-se-ai-chip{border:1px solid var(--ff-border);border-radius:var(--ff-radius-pill);background:var(--ff-surface);font-family:var(--ff-font);color:var(--ff-text-muted);cursor:pointer;transition:border-color var(--ff-transition),color var(--ff-transition),background var(--ff-transition);align-items:center;padding:4px 10px;font-size:12px;display:inline-flex}.ff-se-ai-chip:hover{border-color:var(--ff-primary);color:var(--ff-primary);background:#f0f5f3}.ff-se-ai-error{color:var(--ff-danger);border-radius:var(--ff-radius-sm);background:#fdf2f4;border:1px solid #f6cad2;padding:6px 10px;font-size:12px}.ff-se-ai-inputrow{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-surface);transition:border-color var(--ff-transition);align-items:center;gap:8px;padding:4px 4px 4px 10px;display:flex}.ff-se-ai-inputrow:focus-within{border-color:var(--ff-primary)}.ff-se-ai-input{font-family:var(--ff-font);color:var(--ff-text);background:0 0;border:none;outline:none;flex:1;font-size:13px}.ff-se-ai-input::-moz-placeholder{color:var(--ff-text-subtle)}.ff-se-ai-input::placeholder{color:var(--ff-text-subtle)}.ff-se-ai-send{border-radius:var(--ff-radius-sm);background:var(--ff-primary);color:#fff;cursor:pointer;width:28px;height:28px;transition:background var(--ff-transition);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ff-se-ai-send:hover:not(:disabled){background:var(--ff-primary-hover)}.ff-se-ai-send:disabled{opacity:.45;cursor:not-allowed}.ff-se-right{background:var(--ff-surface);border-left:1px solid var(--ff-border);flex-direction:column;display:flex;overflow:hidden}.ff-se-right-tabs{border-bottom:1px solid var(--ff-border);flex-shrink:0;display:flex}.ff-se-tab{height:40px;font-family:var(--ff-font);color:var(--ff-text-muted);cursor:pointer;transition:color var(--ff-transition),border-color var(--ff-transition);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.ff-se-tab:hover{color:var(--ff-text)}.ff-se-tab[data-active=true]{color:var(--ff-primary);border-bottom-color:var(--ff-primary)}.ff-se-vo{flex-direction:column;flex:1;padding:0;display:flex;overflow-y:auto}.ff-se-vo-section{border-bottom:1px solid var(--ff-border);padding:14px 16px}.ff-se-vo-section:last-child{border-bottom:none}.ff-se-vo-label{text-transform:uppercase;letter-spacing:.16em;color:var(--ff-text-muted);margin-bottom:8px;font-size:10px;font-weight:600}.ff-se-vo-audio-note{color:var(--ff-text-muted);background:var(--ff-bg);border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);margin-bottom:8px;padding:6px 10px;font-size:11px;font-style:italic}.ff-se-vo-textarea{resize:vertical;border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);width:100%;min-height:120px;font-family:var(--ff-font);color:var(--ff-text);background:var(--ff-bg);transition:border-color var(--ff-transition);outline:none;padding:10px 12px;font-size:13px;line-height:1.6}.ff-se-vo-textarea:focus{border-color:var(--ff-primary)}.ff-se-vo-textarea::-moz-placeholder{color:var(--ff-text-subtle)}.ff-se-vo-textarea::placeholder{color:var(--ff-text-subtle)}.ff-se-vo-meta{color:var(--ff-text-muted);justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex}.ff-se-vo-meta-right{align-items:center;gap:3px;display:inline-flex}.ff-se-vo-actions{gap:6px;margin-top:10px;display:flex}.ff-se-vo-btn{border:1px solid var(--ff-border);border-radius:var(--ff-radius-sm);background:var(--ff-surface);font-family:var(--ff-font);color:var(--ff-text-muted);cursor:pointer;transition:background var(--ff-transition),border-color var(--ff-transition),color var(--ff-transition);align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:500;display:inline-flex}.ff-se-vo-btn:hover{background:var(--ff-bg);border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-se-vo-select-wrap{align-items:center;display:flex;position:relative}.ff-se-vo-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-surface);width:100%;font-family:var(--ff-font);color:var(--ff-text);cursor:pointer;transition:border-color var(--ff-transition);outline:none;padding:8px 32px 8px 12px;font-size:13px}.ff-se-vo-select:focus{border-color:var(--ff-primary)}.ff-se-vo-select-chev{color:var(--ff-text-muted);pointer-events:none;position:absolute;right:10px}.ff-se-vo-trigger{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-bg);cursor:pointer;width:100%;font-family:var(--ff-font);text-align:left;transition:border-color var(--ff-transition);align-items:center;gap:8px;padding:8px 10px;display:flex}.ff-se-vo-trigger:hover{border-color:var(--ff-border-strong)}.ff-se-vo-avatar{background:var(--ff-primary);color:#faf8f5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:700;display:flex}.ff-se-vo-duration{font-size:24px;font-family:var(--ff-font-serif);letter-spacing:-.02em;color:var(--ff-text);font-weight:500}.ff-se-element{flex:1;padding:16px;overflow-y:auto}.ff-se-right-footer{border-top:1px solid var(--ff-border);background:var(--ff-surface);flex-shrink:0;padding:12px 14px}.ff-se-export-full{background:var(--ff-primary);color:#faf8f5;border-radius:var(--ff-radius-md);width:100%;height:42px;font-family:var(--ff-font);cursor:pointer;transition:background var(--ff-transition),box-shadow var(--ff-transition),transform var(--ff-transition);box-shadow:var(--ff-shadow-md);border:none;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.ff-se-export-full:hover:not(:disabled){background:var(--ff-primary-hover);box-shadow:var(--ff-shadow-primary);transform:translateY(-1px)}.ff-se-export-full:active:not(:disabled){transform:translateY(0)}.ff-se-export-full:disabled{opacity:.5;cursor:not-allowed}.ff-activity-page{max-width:920px;margin:0 auto;padding:48px 32px 80px}.ff-activity-header{margin-bottom:40px}.ff-activity-eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--ff-text-muted);align-items:center;gap:10px;margin-bottom:12px;font-size:10px;font-weight:600;display:inline-flex}.ff-activity-eyebrow-line{background:var(--ff-text-muted);opacity:.5;flex-shrink:0;width:24px;height:1px;display:inline-block}.ff-activity-title{font-family:var(--ff-font-serif);letter-spacing:-.025em;color:var(--ff-text);font-feature-settings:"ss01","ss02";margin:0 0 12px;font-size:clamp(32px,5vw,44px);font-weight:500;line-height:1.04}.ff-activity-sub{font-family:var(--ff-font-serif);color:var(--ff-text-muted);max-width:480px;margin:0;font-size:16px;font-style:italic;line-height:1.5}.ff-activity-notice{border-radius:var(--ff-radius-md);background:var(--ff-primary-subtle);border:1px solid var(--ff-border);color:var(--ff-text);margin-bottom:24px;padding:12px 16px;font-size:13px}.ff-activity-notice-error{color:var(--ff-danger);background:#fdf2f4;border-color:#f6cad2}.ff-activity-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:28px;display:flex}.ff-activity-filters .ff-dropdown-trigger[data-active=true]{border-color:var(--ff-primary);color:var(--ff-primary);background:var(--ff-primary-subtle)}.ff-daterange-menu{flex-direction:column;gap:10px;min-width:220px;padding:12px;display:flex}.ff-daterange-row{flex-direction:column;gap:4px;display:flex}.ff-daterange-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ff-text-muted);font-size:11px;font-weight:600}.ff-daterange-input{border-radius:var(--ff-radius-sm);border:1px solid var(--ff-border);background:var(--ff-bg);width:100%;color:var(--ff-text);font-size:13px;font-family:var(--ff-font);cursor:pointer;transition:border-color var(--ff-transition);padding:6px 10px}.ff-daterange-input:focus{border-color:var(--ff-primary);outline:none}.ff-daterange-clear{border-radius:var(--ff-radius-sm);border:1px solid var(--ff-border);color:var(--ff-text-muted);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--ff-font);text-align:center;transition:all var(--ff-transition);background:0 0;margin-top:2px;padding:6px 10px}.ff-daterange-clear:hover{border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-activity-filter-clear{border-radius:var(--ff-radius-sm);border:1px solid var(--ff-border);color:var(--ff-text-muted);cursor:pointer;transition:all var(--ff-transition);font-size:12px;font-weight:500;font-family:var(--ff-font);background:0 0;align-items:center;gap:5px;padding:6px 12px;display:inline-flex}.ff-activity-filter-clear:hover{border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-activity-empty{text-align:center;color:var(--ff-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:64px 24px;display:flex}.ff-activity-empty-title{color:var(--ff-text);margin:0;font-size:15px;font-weight:500}.ff-activity-empty-hint{color:var(--ff-text-muted);margin:0;font-size:13px}.ff-activity-groups{flex-direction:column;gap:32px;display:flex}.ff-activity-group-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.ff-activity-group-label{text-transform:uppercase;letter-spacing:.16em;color:var(--ff-text-muted);white-space:nowrap;font-size:11px;font-weight:600}.ff-activity-group-line{background:var(--ff-border);flex:1;height:1px}.ff-activity-group-count{color:var(--ff-text-subtle);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.ff-activity-list{border:1px solid var(--ff-border);border-radius:var(--ff-radius-lg);background:var(--ff-surface);box-shadow:var(--ff-shadow-paper);flex-direction:column;display:flex;overflow:hidden}.ff-activity-row{border-bottom:1px solid var(--ff-border);transition:background var(--ff-transition);align-items:center;gap:14px;padding:14px 16px;display:flex}.ff-activity-row:last-child{border-bottom:none}.ff-activity-row[data-clickable=true]{cursor:pointer}.ff-activity-row[data-clickable=true]:hover{background:var(--ff-surface-hover)}.ff-activity-row-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ff-activity-row-title{color:var(--ff-text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:500;overflow:hidden}.ff-activity-row-meta{color:var(--ff-text-muted);align-items:center;gap:4px;margin:0;font-size:12px;display:inline-flex}.ff-input-type-badge{border-radius:var(--ff-radius-pill);border:1px solid var(--ff-border);background:var(--ff-bg-secondary,var(--ff-bg));color:var(--ff-text-muted);white-space:nowrap;align-items:center;gap:3px;margin-left:4px;padding:2px 7px;font-size:11px;display:inline-flex}.ff-activity-row-error{color:var(--ff-danger);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.ff-activity-slide-chip{border-radius:var(--ff-radius-pill);border:1px solid var(--ff-border);background:var(--ff-bg);color:var(--ff-text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:4px;padding:3px 9px;font-size:12px;display:inline-flex}.ff-activity-time{color:var(--ff-text-subtle);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.ff-status-pill{border-radius:var(--ff-radius-pill);white-space:nowrap;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:124px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.ff-status-done{color:#1d7256;background:#ebfaf5;border-color:#bae8d9}.ff-status-error{color:var(--ff-danger);background:#fdf2f4;border-color:#f6cad2}.ff-status-review{color:#1f5aad;background:#edf3fd;border-color:#bed2ef}.ff-status-progress{background:var(--ff-bg);color:var(--ff-text-muted);border-color:var(--ff-border)}.ff-status-ring{background:#2671d9;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite ff-ring-pulse;display:inline-block}@keyframes ff-ring-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.ff-auth-page{background:var(--ff-bg);justify-content:center;align-items:center;min-height:100vh;padding:32px 16px;display:flex}.ff-auth-shell{flex-direction:column;gap:28px;width:100%;max-width:420px;display:flex}.ff-auth-eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--ff-text-muted);align-items:center;gap:10px;margin-bottom:12px;font-size:10px;font-weight:600;display:inline-flex}.ff-auth-eyebrow-line{background:var(--ff-text-muted);opacity:.5;width:24px;height:1px;display:inline-block}.ff-auth-title{font-family:var(--ff-font-serif);letter-spacing:-.025em;color:var(--ff-text);font-feature-settings:"ss01","ss02";margin:0 0 10px;font-size:36px;font-weight:500;line-height:1.08}.ff-auth-sub{font-family:var(--ff-font-serif);color:var(--ff-text-muted);margin:0;font-size:15px;font-style:italic;line-height:1.5}.ff-auth-card{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-xl);box-shadow:var(--ff-shadow-paper);flex-direction:column;gap:20px;padding:28px;display:flex}.ff-auth-error{border-radius:var(--ff-radius-md);color:var(--ff-danger);background:#fdf2f4;border:1px solid #f6cad2;padding:10px 14px;font-size:13px}.ff-auth-field{flex-direction:column;gap:6px;display:flex}.ff-auth-label{color:var(--ff-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:600}.ff-auth-input{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-bg);width:100%;font-family:var(--ff-font);color:var(--ff-text);transition:border-color var(--ff-transition),box-shadow var(--ff-transition);outline:none;padding:10px 14px;font-size:14px}.ff-auth-input:focus{border-color:var(--ff-primary);box-shadow:0 0 0 3px #2956471a}.ff-auth-input::-moz-placeholder{color:var(--ff-text-subtle)}.ff-auth-input::placeholder{color:var(--ff-text-subtle)}.ff-auth-submit{background:var(--ff-primary);color:#faf8f5;border-radius:var(--ff-radius-md);width:100%;height:44px;font-family:var(--ff-font);cursor:pointer;transition:background var(--ff-transition),box-shadow var(--ff-transition),transform var(--ff-transition);box-shadow:var(--ff-shadow-md);border:none;justify-content:center;align-items:center;margin-top:4px;font-size:15px;font-weight:600;display:flex}.ff-auth-submit:hover:not(:disabled){background:var(--ff-primary-hover);box-shadow:var(--ff-shadow-primary);transform:translateY(-1px)}.ff-auth-submit:active:not(:disabled){transform:translateY(0)}.ff-auth-submit:disabled{opacity:.5;cursor:not-allowed}.ff-auth-footer{text-align:center;color:var(--ff-text-muted);font-size:13px}.ff-auth-link{color:var(--ff-primary);font-weight:500;text-decoration:none}.ff-auth-link:hover{text-decoration:underline}.ff-generating-page{background:var(--ff-bg);justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex}.ff-gen-card{background:var(--ff-surface);border:1px solid var(--ff-border);box-shadow:var(--ff-shadow-paper);border-radius:16px;flex-direction:column;align-items:center;width:100%;max-width:420px;padding:24px 20px;display:flex}.ff-gen-eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--ff-text-muted);align-self:flex-start;align-items:center;gap:8px;margin-bottom:6px;font-size:9px;font-weight:600;display:inline-flex}.ff-gen-eyebrow-line{opacity:.5;background:currentColor;width:16px;height:1px;display:inline-block}.ff-gen-title{font-family:var(--ff-font-serif);letter-spacing:-.02em;color:var(--ff-text);font-feature-settings:"ss01","ss02";align-self:flex-start;margin-bottom:4px;font-size:20px;font-weight:500}.ff-gen-sub{font-family:var(--ff-font-serif);color:var(--ff-text-muted);align-self:flex-start;margin-bottom:20px;font-size:11px;font-style:italic;line-height:1.55}.ff-gen-ring-wrap{justify-content:center;align-items:center;margin-bottom:6px;display:flex;position:relative}.ff-gen-glow{pointer-events:none;background:radial-gradient(circle,#2956471f,#0000 68%);border-radius:50%;width:110px;height:110px;animation:2.2s ease-in-out infinite ff-pulse-glow;position:absolute}.ff-gen-glow[data-error=true]{background:radial-gradient(circle,#dc28461a,#0000 68%);animation:2.2s ease-in-out infinite ff-pulse-glow-err}.ff-gen-pct{font-variant-numeric:tabular-nums;color:var(--ff-text);font-size:20px;font-weight:700;position:absolute}.ff-gen-step-name{color:var(--ff-text-muted);text-align:center;margin-bottom:16px;font-size:11px}.ff-gen-step-name[data-error=true]{color:var(--ff-danger)}.ff-gen-divider{background:var(--ff-border);width:100%;height:1px;margin-bottom:14px}.ff-gen-timeline{flex-direction:column;width:100%;display:flex}.ff-gen-tl-row{align-items:flex-start;gap:12px;padding:5px 0;display:flex}.ff-gen-tl-col{flex-direction:column;flex-shrink:0;align-items:center;width:22px;display:flex}.ff-gen-tl-dot{border:2px solid var(--ff-border);background:var(--ff-surface);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:border-color .28s,background .28s;display:flex}.ff-gen-tl-dot[data-state=active]{border-color:var(--ff-primary);background:var(--ff-primary);animation:1.6s ease-in-out infinite ff-pulse-dot}.ff-gen-tl-dot[data-state=done]{border-color:var(--ff-success);background:var(--ff-success)}.ff-gen-tl-dot[data-state=error]{border-color:var(--ff-danger);background:var(--ff-danger)}.ff-gen-tl-line{background:var(--ff-border);flex-shrink:0;width:2px;height:22px;margin-top:1px;transition:background .28s}.ff-gen-tl-line[data-done=true]{background:var(--ff-success)}.ff-gen-tl-name{color:var(--ff-text-subtle);padding-top:3px;font-size:12px;font-weight:500;transition:color .28s}.ff-gen-tl-name[data-state=active]{color:var(--ff-text);font-weight:600}.ff-gen-tl-name[data-state=done]{color:var(--ff-text-muted);text-decoration:line-through}.ff-gen-tl-name[data-state=error]{color:var(--ff-danger);font-weight:600}.ff-gen-error{width:100%;color:var(--ff-danger);background:#fdf2f4;border:1px solid #f6cad2;border-radius:10px;margin-top:12px;padding:12px 14px;font-size:12px;line-height:1.5}@keyframes ff-pulse-glow{0%,to{opacity:.4;transform:scale(.88)}50%{opacity:1;transform:scale(1.12)}}@keyframes ff-pulse-glow-err{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:.9;transform:scale(1.1)}}@keyframes ff-pulse-dot{0%,to{box-shadow:0 0 #29564766}50%{box-shadow:0 0 0 7px #29564700}}@keyframes ff-spin{to{transform:rotate(360deg)}}.ff-layouts-page{max-width:920px;margin:0 auto;padding:48px 32px 80px}.ff-layouts-header{margin-bottom:32px}.ff-layouts-controls{justify-content:flex-end;margin-bottom:20px;display:flex}.ff-view-toggle{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:8px;flex-shrink:0;gap:2px;padding:3px;display:flex}.ff-view-btn{width:30px;height:30px;color:var(--ff-text-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;transition:background .14s,color .14s;display:flex}.ff-view-btn:hover{background:var(--ff-bg);color:var(--ff-text)}.ff-view-btn[data-active=true]{background:var(--ff-text);color:var(--ff-bg-app)}.ff-layouts-title{font-family:var(--ff-font-serif);letter-spacing:-.025em;color:var(--ff-text);font-feature-settings:"ss01","ss02";margin:0 0 10px;font-size:clamp(28px,4vw,40px);font-weight:500;line-height:1.08}.ff-layouts-sub{font-family:var(--ff-font-serif);color:var(--ff-text-muted);max-width:480px;margin:0;font-size:16px;font-style:italic;line-height:1.5}.ff-layouts-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.ff-layouts-grid--4{grid-template-columns:repeat(4,1fr);gap:14px}.ff-layouts-grid--list{flex-direction:column;gap:10px;display:flex}.ff-layout-card--list{flex-direction:row;display:flex;overflow:hidden}.ff-layout-card--list .ff-layout-preview{width:240px;aspect-ratio:unset;border-bottom:none;border-right:1px solid var(--ff-border);flex-shrink:0;height:135px}.ff-layout-card--list .ff-layout-meta{flex:1;justify-content:center;padding:14px 20px}.ff-layout-card--list .ff-layout-meta-head{margin-bottom:4px}.ff-layout-card{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-shadow-paper);transition:box-shadow .18s,border-color .18s;overflow:hidden}.ff-layout-card:hover{box-shadow:var(--ff-shadow-paper-hover);border-color:var(--ff-border-strong)}.ff-layout-preview{aspect-ratio:16/9;border-bottom:1px solid var(--ff-border);background:#f3f4f7;align-items:stretch;display:flex;overflow:hidden}.ff-layout-meta{flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}.ff-layout-meta-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ff-layout-name{color:var(--ff-text);margin:0;font-size:13px;font-weight:600}.ff-layout-id{font-family:var(--ff-font-mono);color:var(--ff-text-subtle);background:var(--ff-bg);border:1px solid var(--ff-border);white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:10px}.ff-layout-desc{color:var(--ff-text-muted);margin:0;font-size:12px;line-height:1.5}.ff-layout-use{color:var(--ff-text-subtle);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12px;font-style:italic;line-height:1.5;display:-webkit-box;overflow:hidden}.ff-layout-use--expanded{-webkit-line-clamp:unset;display:block;overflow:visible}.ff-layout-more{cursor:pointer;color:var(--ff-text-muted);text-underline-offset:2px;text-align:left;background:0 0;border:none;margin-top:2px;padding:0;font-size:11px;text-decoration:underline;transition:color .12s}.ff-layout-more:hover{color:var(--ff-text)}.ff-lp-canvas{flex-direction:column;gap:6%;width:100%;height:100%;padding:12% 10%;display:flex}.ff-lp-canvas.ff-lp-two-col{flex-direction:row;align-items:stretch;gap:6%}.ff-lp-canvas.ff-lp-center{text-align:center;justify-content:center;align-items:center}.ff-lp-canvas.ff-lp-bg-image{background:#bdc4d1;padding:0;position:relative}.ff-lp-bar{background:#cbcfd8;border-radius:3px;flex-shrink:0}.ff-lp-bar-title{background:#a8afbd;width:55%;height:10%;margin-bottom:2%}.ff-lp-bar-row{height:7%;margin-bottom:3%}.ff-lp-bar-hero{background:#a8afbd;width:70%;height:13%;margin-bottom:3%}.ff-lp-bar-tag{background:var(--ff-primary);opacity:.5;border-radius:var(--ff-radius-pill);width:28%;height:7%;margin-bottom:4%}.ff-lp-bar-on-dark{background:#ffffff8c}.ff-lp-bullet-list{flex-direction:column;gap:3%;display:flex}.ff-lp-img-box{background:#b3bac6;border-radius:6px;flex:1;min-height:0}.ff-lp-overlay{background:linear-gradient(#0000 45%,#0000008c);flex-direction:column;justify-content:flex-end;gap:3%;padding:12%;display:flex;position:absolute;inset:0}.ff-lp-quote-mark{font-family:var(--ff-font-serif);color:#99a2b2;margin-bottom:4%;font-size:32px;line-height:1}.ff-lp-stats-grid{gap:5%;margin-top:4%;display:flex}.ff-lp-stat{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:6px;flex-direction:column;flex:1;gap:6%;padding:8%;display:flex}.ff-lp-stat-num{font-family:var(--ff-font-serif);color:var(--ff-primary);letter-spacing:-.02em;font-size:13px;font-weight:500}.ff-lp-floating-card{background:var(--ff-surface);border-radius:6px;flex-direction:column;gap:4%;padding:7% 8%;display:flex;position:absolute;bottom:10%;left:8%;right:8%;box-shadow:0 4px 16px #0003}.ff-lp-box-grid{flex:1;gap:5%;margin-top:4%;display:grid}.ff-lp-box{background:var(--ff-surface);border:1px solid var(--ff-border);border-radius:5px;flex-direction:column;gap:5%;padding:10%;display:flex}.ff-lp-compare{grid-template-columns:1fr 1fr;gap:5%;margin-top:4%;display:grid}.ff-lp-compare-pos,.ff-lp-compare-neg{border-radius:5px;flex-direction:column;gap:5%;padding:10%;display:flex}.ff-lp-compare-pos{background:#edf7f4;border:1px solid #c1e1d6}.ff-lp-compare-neg{background:#f9f1f2;border:1px solid #e4c8cd}@media(max-width:860px){.ff-layouts-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.ff-layouts-grid{grid-template-columns:1fr}.ff-layouts-page{padding:32px 16px 64px}}@media(max-width:768px){.ff-shell,.ff-shell[data-sidebar-collapsed=true]{grid-template-columns:0 1fr}.ff-sidebar{width:var(--ff-sidebar-width);z-index:40;transition:transform .2s;position:fixed;transform:translate(-100%)}.ff-activity-page{padding:32px 16px 64px}.ff-auth-card{padding:20px}}.ff-se-split{flex-direction:column;height:100%;display:flex;overflow:hidden}.ff-se-split-header{color:var(--ff-text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;padding:12px 14px 8px;font-size:11px;font-weight:600}.ff-se-split-list{flex:1;padding:0 10px;overflow-y:auto}.ff-se-split-bullet{transition:background var(--ff-transition);border-radius:6px;align-items:flex-start;gap:8px;margin:2px 0;padding:8px 10px;display:flex}.ff-se-split-bullet[data-group="1"]{background:#f2f4f8}.ff-se-split-bullet[data-group="2"]{background:#eff5f3}.ff-se-split-label{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;flex-shrink:0;margin-top:1px;padding:2px 6px;font-size:9px;font-weight:700}.ff-se-split-bullet[data-group="1"] .ff-se-split-label{color:#24478f;background:#cedaf3}.ff-se-split-bullet[data-group="2"] .ff-se-split-label{color:#206f54;background:#bce6d8}.ff-se-split-text{color:var(--ff-text);word-break:break-word;font-size:12px;line-height:1.4}.ff-se-split-text em{color:var(--ff-text-muted);font-style:italic}.ff-se-split-divider{cursor:pointer;width:100%;color:var(--ff-text-muted);transition:color var(--ff-transition);background:0 0;border:none;align-items:center;gap:6px;padding:4px 6px;font-size:10px;display:flex}.ff-se-split-divider:hover,.ff-se-split-divider[data-active]{color:var(--ff-primary)}.ff-se-split-divider-line{opacity:.4;background:currentColor;flex:1;height:1px}.ff-se-split-divider[data-active] .ff-se-split-divider-line{opacity:1}.ff-se-split-divider-label{white-space:nowrap;flex-shrink:0;font-weight:500}.ff-se-split-actions{border-top:1px solid var(--ff-border);flex-shrink:0;gap:8px;padding:12px 14px;display:flex}.ff-se-split-cancel{border:1px solid var(--ff-border);border-radius:var(--ff-radius-md);background:var(--ff-surface);cursor:pointer;height:32px;color:var(--ff-text-muted);transition:border-color var(--ff-transition),color var(--ff-transition);flex:1;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:500}.ff-se-split-cancel:hover{border-color:var(--ff-border-strong);color:var(--ff-text)}.ff-se-split-confirm{border-radius:var(--ff-radius-md);background:var(--ff-primary);cursor:pointer;color:#fff;height:32px;transition:opacity var(--ff-transition);border:none;flex:1;font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:600}.ff-se-split-confirm:hover{opacity:.88}.ff-se-pill[data-active]{border-color:var(--ff-primary);color:var(--ff-primary);background:#f0f5f3}@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}@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-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
