:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#152023;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f7fafa;--paper:#fff;--paper-2:#f0f5f4;--ink:#152023;--muted:#647274;--line:#dce5e4;--teal:#009b94;--teal-dark:#00756f;--teal-soft:#e5faf7;--amber:#e9a20c;--graphite:#22282b;--shadow:0 22px 70px #1224261f;--radius:8px;background:#f7fafa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,textarea{font:inherit}button{border:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.page-shell{min-height:100vh}.site-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;border-bottom:1px solid #dce5e4d1;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:74px;padding:14px clamp(20px,4vw,64px);display:grid;position:sticky;top:0}.brand{color:var(--ink);letter-spacing:0;white-space:nowrap;align-items:center;gap:12px;font-size:20px;font-weight:850;display:inline-flex}.brand span span{color:var(--teal)}.brand-mark{color:#fff;background:linear-gradient(135deg,#0cbab0,#134348);border-radius:8px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 12px 28px #009b943d}.main-nav,.app-steps{color:var(--graphite);justify-content:center;align-items:center;gap:34px;font-size:15px;font-weight:650;display:flex}.main-nav a{padding:10px 2px}.main-nav a:hover{color:var(--teal-dark)}.app-steps{color:var(--muted);gap:14px}.app-steps span{white-space:nowrap}.app-steps .active{color:var(--teal-dark)}.header-cta,.primary-action,.secondary-action,.generate-button,.download-button{border-radius:var(--radius);letter-spacing:0;cursor:pointer;justify-content:center;align-items:center;gap:10px;min-height:48px;font-size:15px;font-weight:780;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.header-cta,.primary-action,.generate-button,.download-button{color:#fff;background:linear-gradient(135deg, var(--teal), var(--teal-dark));box-shadow:0 18px 42px #009b9438}.header-cta{min-width:206px;padding:0 20px}.primary-action,.generate-button,.download-button{padding:0 24px}.secondary-action{color:var(--teal-dark);background:#fff;border:1px solid #009b9440;padding:0 20px}.header-cta:hover,.primary-action:hover,.secondary-action:hover,.generate-button:hover:not(:disabled),.download-button:hover:not(.disabled){transform:translateY(-1px);box-shadow:0 22px 48px #009b9442}.hero-section{background:linear-gradient(180deg, #fff 0%, #f7fafa 86%), var(--bg);grid-template-columns:minmax(480px,.92fr) minmax(500px,1.08fr);align-items:center;gap:clamp(30px,4vw,58px);min-height:calc(100vh - 74px);padding:clamp(42px,6vw,72px) clamp(20px,4vw,64px) clamp(26px,4vw,42px);display:grid}.hero-copy{max-width:720px}.hero-copy h1{color:#151d20;letter-spacing:0;max-width:740px;margin:0;font-size:clamp(46px,5.55vw,74px);font-weight:900;line-height:1.02}.hero-copy p{color:#465457;letter-spacing:0;max-width:580px;margin:22px 0 28px;font-size:clamp(18px,1.85vw,24px);line-height:1.48}.hero-action{min-width:294px;min-height:58px;font-size:17px}.hero-feature-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:clamp(32px,4vw,50px);display:grid}.feature-mini{border-right:1px solid var(--line);grid-template-rows:auto auto 1fr;gap:8px;padding-right:20px;display:grid}.feature-mini:last-child{border-right:0}.feature-mini span{color:var(--teal);display:inline-flex}.feature-mini svg{stroke-width:1.9px;width:32px;height:32px}.feature-mini strong{color:#172126;letter-spacing:0;max-width:190px;font-size:18px;line-height:1.2}.feature-mini small{color:var(--muted);font-size:13px;line-height:1.45}.hero-visual{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;position:relative;overflow:hidden}.hero-visual img{aspect-ratio:1402/1122;object-fit:contain;width:100%;height:auto}.feature-section,.visual-section,.faq-section{padding:clamp(76px,9vw,116px) clamp(20px,4vw,64px)}.section-heading{text-align:center;max-width:760px;margin:0 auto 36px}.section-heading h2,.visual-copy h2{color:#152023;letter-spacing:0;margin:0;font-size:clamp(34px,4vw,52px);font-weight:890;line-height:1.05}.section-heading p,.visual-copy p{color:var(--muted);margin:16px 0 0;font-size:18px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1180px;margin:0 auto;display:grid}.feature-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:30px;box-shadow:0 16px 44px #1425260f}.feature-icon{width:48px;height:48px;color:var(--teal-dark);background:var(--teal-soft);border-radius:var(--radius);place-items:center;display:grid}.feature-card h3{color:#162023;letter-spacing:0;margin:22px 0 10px;font-size:22px;line-height:1.18}.feature-card p{color:var(--muted);margin:0;font-size:15px}.visual-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;grid-template-columns:.82fr 1.18fr;align-items:center;gap:56px;display:grid}.visual-copy{max-width:520px}.visual-copy .secondary-action{margin-top:28px}.showcase-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;overflow:hidden}.showcase-card img{aspect-ratio:1431/1099;object-fit:contain;width:100%;height:auto}.showcase-caption{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;gap:18px;padding:16px 18px;font-size:14px;font-weight:700;display:flex}.showcase-caption span{align-items:center;gap:8px;display:inline-flex}.faq-list{border-top:1px solid var(--line);max-width:880px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item h3{letter-spacing:0;margin:0;font-size:18px}.faq-item p{max-width:720px;color:var(--muted);margin:-8px 0 24px}.site-footer{color:var(--muted);border-top:1px solid var(--line);background:#fff;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:24px clamp(20px,4vw,64px);font-size:14px;display:grid}.site-footer>span:last-child{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.workstation{background:#fff;grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);min-height:calc(100vh - 74px);display:grid}.input-panel{border-right:1px solid var(--line);background:#fbfdfd;flex-direction:column;gap:22px;padding:28px clamp(20px,3vw,36px);display:flex}.input-block{gap:12px;display:grid}.block-title,.result-title>div{align-items:center;gap:10px;display:flex}.block-title span,.result-title span{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:850;display:grid}.block-title h2,.result-title h1,.preview-header h2{color:#162023;letter-spacing:0;margin:0;font-size:19px;line-height:1.22}.upload-layout{grid-template-columns:minmax(0,1fr) 168px;gap:16px;display:grid}.dropzone{color:#263336;border:1.5px dashed var(--teal);border-radius:var(--radius);cursor:pointer;background:#f7fcfb;align-content:center;place-items:center;gap:8px;min-height:190px;padding:20px;display:grid}.dropzone svg{color:var(--teal)}.dropzone strong{font-size:16px}.dropzone span,.dropzone small{color:var(--muted);font-size:13px}.dropzone.dragging{background:var(--teal-soft);box-shadow:0 0 0 4px #009b941a}.thumb-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-height:190px;display:grid;overflow:hidden}.thumb-card.has-image{grid-template-rows:1fr auto}.thumb-card img{object-fit:cover;width:100%;height:135px}.thumb-card div:not(.thumb-empty){gap:2px;padding:10px 12px;display:grid}.thumb-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.thumb-card span{color:var(--muted);font-size:12px}.thumb-empty{color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;font-size:13px;display:grid}.field-error{color:#b42318;margin:0;font-size:13px;font-weight:720}textarea{width:100%;min-height:106px;color:var(--ink);border-radius:var(--radius);resize:vertical;background:#fff;border:1px solid #cfdada;outline:none;padding:15px 16px;font-size:15px;line-height:1.45}textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px #009b941c}.char-count{color:var(--muted);pointer-events:none;justify-self:end;margin-top:-36px;padding-right:12px;font-size:12px}.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.mode-card{min-height:132px;color:var(--ink);text-align:left;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:#fff;grid-template-rows:auto auto 1fr;grid-template-columns:22px 36px 1fr;align-items:start;gap:2px 10px;padding:18px 16px;display:grid;position:relative}.mode-card.selected{border-color:var(--teal);box-shadow:0 0 0 3px #009b941a}.radio-dot{border:2px solid #9aa8a8;border-radius:50%;width:16px;height:16px;margin-top:4px;display:block}.mode-card.selected .radio-dot{border:5px solid var(--teal)}.mode-icon{color:var(--teal);grid-area:1/2/4}.mode-card strong{grid-column:3;font-size:16px}.mode-card small{color:var(--muted);grid-column:3;font-size:13px}.mode-card p{color:var(--muted);grid-column:3;margin:6px 0 0;font-size:13px;line-height:1.35}.turnstile-wrap{border-radius:var(--radius);background:#fff;border:1px dashed #cbd8d8;justify-content:center;align-items:center;min-height:76px;padding:10px;display:flex;position:relative}.turnstile-wrap.verified{background:#f7fcfb;border-color:#009b9452;justify-content:flex-start;padding-left:18px}.turnstile-widget{min-height:65px}.turnstile-fallback{color:#067647;align-items:center;gap:10px;font-weight:760;display:inline-flex}.turnstile-loading{color:var(--muted);font-size:13px}.generate-button{width:100%;min-height:58px;margin-top:4px;font-size:17px}.generate-button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.55;box-shadow:none}.secure-note{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.secure-note svg{color:var(--teal-dark)}.result-panel{background:linear-gradient(#fff 0%,#f6fbfa 100%);min-width:0;padding:28px clamp(20px,3vw,40px) 36px}.result-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.result-state{color:#516063;border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:13px;display:inline-flex}.result-state.processing{color:#9a6700;background:#fff8e8;border-color:#e9a20c5c}.result-state.completed{color:#067647;background:#ecfdf3;border-color:#0676473d}.result-state.error{color:#b42318;background:#fef3f2;border-color:#b423183d}.processing-panel{border-radius:var(--radius);background:#fffaf0;border:1px solid #e9a20c61;grid-template-columns:56px 1fr auto;align-items:center;gap:16px;min-height:112px;padding:18px;display:grid}.processing-icon{width:56px;height:56px;color:var(--amber);background:#fff;border:1px solid #e9a20c59;border-radius:50%;place-items:center;display:grid}.processing-panel strong{color:var(--graphite);letter-spacing:0;font-size:17px;display:block}.progress-track{background:#f1dfb6;border-radius:999px;height:8px;margin:13px 0 8px;position:relative;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--amber), #f5c14d);transition:width .26s;position:absolute;inset:0 auto 0 0}.processing-panel small,.progress-number{color:var(--muted);font-size:13px}.preview-header{justify-content:space-between;align-items:end;gap:22px;margin:22px 0 10px;display:flex}.preview-header p{color:var(--muted);margin:4px 0 0;font-size:14px}.mesh-stats{gap:8px;margin:0;display:flex}.mesh-stats div{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:92px;padding:8px 10px}.mesh-stats dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.mesh-stats dd{color:var(--ink);margin:0;font-size:13px;font-weight:780}.preview-shell{border:1px solid var(--line);border-radius:var(--radius);background:#f4f7f7;position:relative;overflow:hidden;box-shadow:0 18px 44px #17262814}.preview-toolbar{min-height:46px;color:var(--muted);border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:9px;padding:0 14px;font-size:13px;font-weight:760;display:flex}.status-dot{background:#aebbbb;border-radius:50%;width:9px;height:9px}.status-dot.ready{background:#16a34a}.preview-tools{color:var(--teal-dark);gap:12px;margin-left:auto;display:inline-flex}.preview-stage{width:100%;min-height:470px;position:relative}.canvas-host{position:absolute;inset:0}.preview-stage canvas{width:100%;height:100%;display:block}.empty-preview,.loading-preview{color:var(--muted);align-content:center;place-items:center;gap:12px;font-size:15px;font-weight:720;display:grid;position:absolute;inset:0}.empty-preview svg{color:var(--teal)}.loading-preview{background:#f4f7f7d1}.loading-preview.error{color:#b42318}.gesture-strip{color:#fff;pointer-events:none;background:#1a2023d1;border-radius:6px;align-items:center;gap:10px;padding:9px 13px;font-size:12px;display:inline-flex;position:absolute;bottom:14px;right:16px}.gesture-strip span{background:#fff9;border-radius:50%;width:4px;height:4px}.result-actions{grid-template-columns:minmax(240px,.5fr) 220px;gap:16px;margin-top:22px;display:grid}.download-button.disabled{cursor:not-allowed;opacity:.5;filter:grayscale(.45);box-shadow:none}.action-outline{width:100%}.edge-map{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;font-size:13px;font-weight:720;display:flex}.edge-map span{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:7px;min-height:32px;padding:0 10px;display:inline-flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1180px){.site-header{grid-template-columns:auto auto}.main-nav,.app-steps{display:none}.hero-section{grid-template-columns:1fr;min-height:auto}.hero-copy{max-width:900px}.visual-section,.workstation{grid-template-columns:1fr}.input-panel{border-right:0;border-bottom:1px solid var(--line)}}@media (width<=780px){.site-header{padding:12px 18px}.brand{font-size:17px}.brand-mark{width:36px;height:36px}.header-cta{min-width:0;padding:0 14px;font-size:13px}.hero-section,.feature-section,.visual-section,.faq-section{padding-left:18px;padding-right:18px}.hero-copy h1{font-size:clamp(42px,13vw,60px)}.hero-copy p{font-size:18px}.feature-grid,.upload-layout,.mode-grid,.result-actions,.site-footer{grid-template-columns:1fr}.hero-feature-row{display:none}.showcase-caption,.preview-header{flex-direction:column;align-items:start}.mesh-stats{width:100%;overflow-x:auto}.preview-stage{min-height:360px}.processing-panel{grid-template-columns:44px 1fr}.processing-icon{width:44px;height:44px}.progress-number{grid-column:2}.site-footer>span:last-child{white-space:normal}}@media (width<=480px){.site-header{gap:10px}.brand span:not(.brand-mark){text-overflow:ellipsis;max-width:118px;overflow:hidden}.header-cta{max-width:160px;min-height:42px}.hero-action{width:100%;min-width:0}.input-panel,.result-panel{padding-left:16px;padding-right:16px}.gesture-strip{text-align:center;flex-wrap:wrap;justify-content:center;max-width:calc(100% - 16px);bottom:8px;right:8px}}
