@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
html,body{overflow-x:clip}
:root{--ink:#18221f;--muted:#718078;--paper:#f4f3ee;--white:#fff;--line:#e5e8e0;--dark:#111b1a;--lime:#d7ef86;--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}
.page-shell{max-width:1500px;margin:auto;padding:0 48px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde2d9}.brand{display:flex;align-items:center;gap:12px;font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-1.8px;font-weight:800}.brand-dot{color:#9ebe49}.brand-mark{width:30px;height:30px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(-10deg)}.brand-mark span{background:#17231e;border-radius:3px}.brand-mark span:nth-child(2){background:#b9d96f;border-radius:8px 3px 3px 3px}.brand-mark span:nth-child(3){border-radius:3px 3px 3px 8px}.topbar-right{display:flex;align-items:center;gap:28px}.topbar-label{color:#8a948b;font-size:10px;font-weight:700;letter-spacing:2px}.server-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #dce1d6;border-radius:100px;padding:8px 12px;background:#fafbf7;color:#657369;font-size:12px;font-weight:700;white-space:nowrap}.server-pill i{width:7px;height:7px;border-radius:50%;background:#d9ad52;box-shadow:0 0 0 3px #f4e9d5}.server-pill.ready i{background:#80b85b;box-shadow:0 0 0 3px #e1f2d6}.server-pill.error i{background:#d97064;box-shadow:0 0 0 3px #f8e3e0}
.intro{padding:57px 0 47px}.eyebrow{display:flex;align-items:center;gap:12px;color:#667369;font-size:11px;font-weight:800;letter-spacing:2.1px}.eyebrow-line{width:26px;height:1px;background:#7c9c61}.eyebrow-separator{color:#bac5b6}.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:30px}.intro h1{font-family:Manrope,sans-serif;font-size:clamp(44px,5vw,73px);line-height:1.08;letter-spacing:-4.5px;margin:19px 0 20px;font-weight:800}.intro h1 em{font-style:normal;color:#829b62}.intro-copy{max-width:625px;color:#65726a;font-size:16px;line-height:1.75;margin:0}.intro-aside{border-left:1px solid #d8ded4;padding-left:22px;margin-bottom:6px}.aside-number{color:#a5b1a3;font-size:11px;font-weight:800;letter-spacing:2px}.intro-aside p{font-size:14px;line-height:1.85;font-weight:600;color:#415045;margin:11px 0 0}
.workspace{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(350px,.76fr);gap:20px;align-items:start}.editor-panel{background:#fff;border:1px solid #e6e9e2;border-radius:24px;padding:36px;box-shadow:0 14px 45px rgba(26,42,28,.045)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px}.section-kicker,.result-kicker{color:#9aab8f;font-size:10px;font-weight:800;letter-spacing:2.2px}.section-heading h2,.result-header h2{font-family:Manrope,sans-serif;margin:7px 0 0;font-size:24px;line-height:1.2;letter-spacing:-.9px}.section-count{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#acb8a9}.section-help{color:#7d8980;font-size:13px;line-height:1.6;margin:11px 0 26px}.upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field-heading{display:flex;align-items:center;gap:11px;min-height:47px;margin-bottom:15px}.step-badge{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#eaf0dc;color:#608342;font-family:Manrope,sans-serif;font-size:11px;font-weight:800}.field-heading h3{font-family:Manrope,sans-serif;font-size:14px;letter-spacing:-.25px;margin:0 0 3px}.field-heading p{color:#9aa49a;font-size:12px;margin:0}.dropzone{height:228px;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;border:1.5px dashed #cfd9cb;border-radius:16px;background:#f8faf5;overflow:hidden;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.dropzone:hover,.dropzone.dragging,.dropzone:focus-visible{border-color:#8eb15b;background:#f2f8e7;outline:none;transform:translateY(-2px)}.drop-empty{display:flex;flex-direction:column;align-items:center;gap:9px;padding:20px}.upload-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eaf1e1;color:#708d55;margin-bottom:4px}.upload-icon svg{width:26px}.drop-empty strong{font-size:12px;font-weight:700;color:#4b5c4e}.drop-empty small{font-size:11px;color:#a4afa2}.upload-preview{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;display:none}.dropzone.has-image .upload-preview{display:block}.dropzone.has-image .drop-empty{display:none}.replace-label{position:absolute;bottom:11px;right:11px;padding:8px 11px;background:rgba(18,29,27,.82);color:#fff;border-radius:7px;font-size:10px;font-weight:700;display:none;backdrop-filter:blur(10px)}.replace-label span{margin-left:7px}.dropzone.has-image .replace-label{display:block}.file-name{display:block;margin-top:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9ca89d;font-size:11px}.prompt-section{border-top:1px solid #edf0e9;margin-top:32px;padding-top:30px}.prompt-heading h2{font-size:22px}.prompt-section .section-help{margin-bottom:16px}.textarea-wrap{position:relative}textarea{display:block;width:100%;min-height:112px;resize:vertical;background:#f8faf7;border:1px solid #e1e8dd;border-radius:13px;padding:15px 16px 31px;color:#21322a;font-size:13px;line-height:1.6;outline:none;transition:border-color .2s,box-shadow .2s}textarea::placeholder{color:#abb6aa}textarea:focus{border-color:#9dbd75;box-shadow:0 0 0 4px rgba(163,197,119,.14)}#char-count{position:absolute;bottom:12px;right:15px;color:#b0bcb0;font-size:10px;font-weight:600}.action-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px}.action-note{max-width:285px;display:flex;align-items:flex-start;gap:9px;color:#8a978a;font-size:11px;line-height:1.5}.sparkle{font-size:15px;color:#95b65d;line-height:1}.primary-button{min-width:190px;display:inline-flex;justify-content:space-between;align-items:center;gap:26px;background:#cde77e;border:1px solid #bed66d;color:#20301d;border-radius:11px;padding:15px 17px;font-size:13px;font-weight:800;box-shadow:0 8px 18px rgba(155,191,92,.16);transition:transform .2s,background .2s,box-shadow .2s}.primary-button:not(:disabled):hover{background:#d8f18d;transform:translateY(-2px);box-shadow:0 12px 22px rgba(155,191,92,.23)}.primary-button:disabled{background:#e7ebe0;border-color:#e7ebe0;color:#a8b1a3;box-shadow:none}.button-arrow{font-size:19px;line-height:0}.error-message{margin-top:18px;padding:12px 14px;border-radius:10px;background:#fff2ed;color:#a44c37;font-size:12px;line-height:1.5}
.result-panel{position:sticky;top:20px;background:#111d1b;color:#f5f8ee;border-radius:24px;padding:30px;min-height:655px;display:flex;flex-direction:column;box-shadow:0 17px 44px rgba(20,31,27,.15);overflow:hidden}.result-panel:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-200px;top:-190px;background:radial-gradient(circle,#466046 0%,transparent 65%);opacity:.28;pointer-events:none}.result-header{position:relative;display:flex;align-items:end;justify-content:space-between}.result-kicker{color:#9daea0}.result-header h2{font-size:24px;color:#fff}.result-status{color:#9dac9c;background:#20312c;border:1px solid #30413a;border-radius:100px;padding:7px 11px;font-size:10px;font-weight:700;white-space:nowrap}.result-status.complete{color:#d3ec96;border-color:#4c653f}.result-status.running{color:#e9d995;border-color:#706744}.result-stage{position:relative;flex:1;min-height:435px;margin-top:25px;border:1px solid #30423b;border-radius:17px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,#24382f 0%,#172722 48%,#14211e 100%)}.result-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(211,237,188,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(211,237,188,.032) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.result-empty,.result-working{position:relative;z-index:1;text-align:center;padding:26px}.result-orbit{display:block;position:relative;width:112px;height:112px;margin:0 auto 26px;border:1px solid #557457;border-radius:50%;transform:rotate(-18deg)}.result-orbit:before{content:"";position:absolute;inset:15px;border:1px solid #445e4a;border-radius:50%}.result-orbit:after{content:"";position:absolute;inset:34px;border:1px solid #829e60;border-radius:50%}.result-orbit span{position:absolute;width:8px;height:8px;border-radius:50%;background:#c8e97a}.result-orbit span:first-child{left:-4px;top:50%}.result-orbit span:nth-child(2){right:12px;top:9px;width:5px;height:5px;background:#7ea270}.result-orbit span:nth-child(3){right:10px;bottom:8px;width:5px;height:5px;background:#7ea270}.result-empty h3,.result-working h3{font-family:Manrope,sans-serif;font-size:19px;letter-spacing:-.5px;line-height:1.4;margin:0 0 8px}.result-empty p,.result-working p{color:#9bab9d;font-size:12px;margin:0;line-height:1.6}.working-ring{width:72px;height:72px;border:3px solid #45634d;border-top-color:#d4eb8a;border-radius:50%;margin:0 auto 24px;animation:spin 1.2s linear infinite}.progress-track{height:4px;width:190px;margin:23px auto 0;border-radius:4px;background:#34493d;overflow:hidden}.progress-track span{display:block;width:40%;height:100%;background:#d6ed89;animation:move 1.8s ease-in-out infinite}.result-image{position:relative;z-index:1;width:100%;height:100%;max-height:620px;object-fit:contain}.result-stage.has-result{background:#0e1513}.result-stage.has-result:before{display:none}.result-footer{min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#9eafa1;font-size:11px;line-height:1.5}.download-button{display:inline-flex;align-items:center;gap:12px;padding:9px 13px;border:1px solid #8ca464;color:#e4f2be;border-radius:8px;font-size:11px;font-weight:800;white-space:nowrap}.download-button:hover{background:#263a2a}.download-button span{font-size:15px}.privacy-note{border-top:1px solid #2c3c35;padding-top:15px;display:flex;align-items:center;gap:8px;color:#738d79;font-size:10px}.privacy-dot{height:6px;width:6px;border-radius:50%;background:#8db96d}.footer{display:flex;justify-content:space-between;gap:20px;color:#9ca89c;font-size:10px;font-weight:700;letter-spacing:1.3px;padding:28px 0 38px}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes move{0%{transform:translateX(-110%)}50%{transform:translateX(175%)}100%{transform:translateX(330%)}}
@media(max-width:1100px){.page-shell{padding:0 28px}.workspace{grid-template-columns:minmax(0,1fr) minmax(320px,.82fr)}.editor-panel{padding:28px}.result-panel{padding:24px}.intro h1{font-size:55px}}
@media(max-width:850px){.intro-grid{grid-template-columns:1fr}.intro-aside{display:none}.workspace{grid-template-columns:1fr}.result-panel{position:static;min-height:560px}.result-stage{min-height:400px}.intro{padding-top:42px}.intro h1{font-size:clamp(43px,8vw,65px)}}
@media(max-width:580px){.page-shell{padding:0 16px}.topbar{height:68px}.brand{font-size:23px}.brand-mark{width:25px;height:25px}.topbar-label{display:none}.intro{padding:34px 0 30px}.eyebrow{font-size:9px;letter-spacing:1.5px}.intro h1{font-size:42px;letter-spacing:-2.9px;margin:18px 0 14px}.intro-copy{font-size:14px;line-height:1.65}.editor-panel,.result-panel{border-radius:19px;padding:21px}.upload-grid{grid-template-columns:1fr;gap:24px}.dropzone{height:220px}.section-heading h2{font-size:22px}.prompt-section{margin-top:28px;padding-top:26px}.action-row{align-items:stretch;flex-direction:column}.action-note{max-width:none}.primary-button{width:100%}.result-panel{min-height:525px}.result-stage{min-height:350px}.footer{flex-direction:column;gap:8px;font-size:9px;padding:23px 0 30px}}
