.is-animate .generator-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px}
.is-animate .generator-input{padding-right:30px;border-right:1px solid #e0e6d8}
.is-animate .reference-drop{min-height:248px;transition:background .18s,border-color .18s}
.is-animate .reference-drop:hover,.is-animate .reference-drop.dragging{background:#edf3e4;border-color:#779268}
.is-animate .reference-preview img{height:248px}
.is-animate .reference-preview{padding:12px;max-width:none;width:100%}
.is-generating .reference-preview .replace-reference{border:0;background:transparent;color:#41684b;text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:5px 10px;margin:0;align-self:center}
.is-animate .reference-requirement{margin-bottom:12px;text-align:left}
.is-animate .generator-input textarea{min-height:98px!important;height:98px!important;font-size:13px!important}
.animation-controls-title{font:600 15px var(--font-body,Arial),sans-serif;margin:0 0 13px;color:#365c42}
.animation-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:22px}
.animation-preset{display:flex;align-items:center;gap:11px;min-height:76px;text-align:left;padding:13px 12px;border:1px solid #dfe5d6;border-radius:12px;background:#fbfcf6;color:#41614a;cursor:pointer;transition:background .18s,border-color .18s}
.animation-preset:first-child{grid-column:1/-1}
.animation-preset:hover{border-color:#98ae86;background:#f2f6e9}
.animation-preset[aria-pressed=true]{border-color:#66845a;background:#eaf1df;box-shadow:inset 0 0 0 1px #66845a}
.animation-preset:focus-visible{outline:2px solid #41684b;outline-offset:3px}
.animation-preset-icon{flex:none;width:25px;font-size:24px;text-align:center;color:#789461}
.animation-preset strong{display:block;font-size:13px;font-weight:600;line-height:1.35}
.animation-preset small{display:block;font-size:11px;line-height:1.5;color:#6c7e60;margin-top:4px}
.is-animate .generator-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.is-animate .generator-spec{font-size:11px;line-height:1.6}
.animation-section-heading{max-width:660px;margin-bottom:36px}
.animation-section-heading h2{font-family:var(--font-display,Georgia),serif;font-size:clamp(32px,3.5vw,49px);font-weight:400;letter-spacing:-.035em;line-height:1.12;color:#2f543e;margin:0 0 18px}
.animation-section-heading p{font-size:15px;line-height:1.8;color:#748267;margin:0}
.animation-case-list{display:grid;gap:35px}
.animation-case{border:1px solid #dfe5d4;border-radius:22px;padding:16px;background:#f5f6eb;overflow:hidden}
.animation-case-media{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.animation-case figure{margin:0;min-width:0}
.animation-case img,.animation-case video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#d9e1ce}
.animation-case figcaption{font-size:12px;line-height:1.5;color:#687d5e;padding:12px 4px 2px}
.animation-case-copy{display:flex;align-items:center;gap:35px;justify-content:space-between;padding:23px 14px 13px}
.animation-case-copy>div{max-width:700px}
.animation-case h3,.animation-tip-grid h3,.animation-prompt-example h3{font-size:23px;font-weight:500;letter-spacing:-.035em;color:#365d42;margin:0 0 10px}
.animation-case p,.animation-tip-grid p,.animation-prompt-example p{font-size:14px;line-height:1.85;color:#718164;margin:0}
.animation-case details{margin-top:15px;font-size:13px;color:#41674a}
.animation-case summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:5px 0}
.animation-case details p{font-size:13px;margin-top:12px;padding:14px 17px;border-left:2px solid #a7bc91;background:#fcfcf5;border-radius:0 8px 8px 0}
.animation-case button{flex-shrink:0;display:inline-flex;align-items:center;gap:20px;padding:14px 19px;border-radius:30px;background:#355f43;color:#fffef3;border:0;font:500 13px var(--font-body,Arial),sans-serif;cursor:pointer}
.animation-case button:hover{background:#264d34}
.animation-case button:disabled{opacity:.65;cursor:wait}
.animation-tip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.animation-tip-grid article{padding-top:25px;border-top:1px solid #cdd9be}
.animation-tip-grid h3{font-size:21px}
.animation-tip-grid a{display:inline-block;margin-top:20px;font-size:13px;color:#426c48;text-underline-offset:5px}
.animation-prompt-example{margin-top:50px;padding:30px 35px;background:#eef2e4;border-radius:18px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.animation-prompt-example h3{font-size:21px}
.animation-prompt-example blockquote{font-family:var(--font-display,Georgia),serif;font-size:25px;font-style:italic;line-height:1.55;color:#496c4b;margin:0}
@media(max-width:1000px){.is-animate .generator-workspace{gap:20px}.is-animate .generator-input{padding-right:20px}.is-animate .generator-fields{grid-template-columns:1fr}.animation-preset{padding:11px 9px;gap:6px}.animation-case-copy{gap:20px}.animation-tip-grid{gap:22px}}
@media(max-width:800px){.is-animate .generator-workspace{grid-template-columns:1fr;gap:18px}.is-animate .generator-input{padding:0;border:0}.is-animate .generator-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.is-animate .reference-drop{min-height:180px}.is-animate .reference-preview img{height:220px}.animation-case-copy{flex-direction:column;align-items:flex-start}.animation-tip-grid{grid-template-columns:1fr;gap:28px}.animation-prompt-example{grid-template-columns:1fr;gap:20px;padding:25px}.animation-section-heading{margin-bottom:26px}}
@media(max-width:520px){.is-animate .generator-fields{grid-template-columns:1fr}.animation-preset-icon{width:18px;font-size:21px}.animation-preset strong{font-size:12px}.animation-case{padding:12px}.animation-case-media{grid-template-columns:1fr;gap:17px}.animation-case-copy{padding:18px 4px 8px}.animation-case h3{font-size:22px}.animation-case-copy button{width:100%;justify-content:center}.animation-section-heading p{font-size:14px}.animation-prompt-example blockquote{font-size:23px}}
@media(prefers-reduced-motion:reduce){.animation-preset,.is-animate .reference-drop{transition:none}}
