:root{--ink:#181b17;--paper:#fffaf0;--white:#fff;--muted:#62685f;--line:#d5d2c8;--yellow:#ffd84d;--blue:#315fe9;--soft-blue:#e8eeff;--green:#16785d;--soft-green:#e0f3e8;--red:#d94835;--shadow:8px 9px 0 var(--ink)}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.shell{width:min(1320px,calc(100% - 36px));margin:0 auto}button,input,select{font:inherit}button{color:inherit;touch-action:manipulation}.nav{display:flex;align-items:center;justify-content:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:19px;font-weight:950;letter-spacing:-.03em;text-decoration:none}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{color:var(--ink);font-size:14px;font-weight:850;text-decoration:none}
.tool-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:46px 0 25px}.tool-intro>div:first-child{max-width:900px}.eyebrow{display:block;font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.eyebrow b{display:inline-block;margin-left:8px;padding:4px 8px;border:1.5px solid var(--ink);border-radius:999px;background:#fff;letter-spacing:0;text-transform:none}.tool-intro h1{margin:10px 0 9px;font-size:clamp(42px,5.3vw,72px);line-height:.95;letter-spacing:-.055em}.tool-intro p{max-width:760px;margin:0;color:var(--muted);font-size:18px}.privacy-chip{display:flex;max-width:300px;flex:0 0 300px;align-items:center;gap:9px;padding:13px 15px;border:1.5px solid var(--ink);border-radius:16px;background:var(--soft-green)}.privacy-chip i{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#22a979;box-shadow:0 0 0 4px rgba(34,169,121,.14)}.privacy-chip strong{font-size:13px}.privacy-chip span{color:#526158;font-size:11px}
.stitcher-shell{width:min(1540px,calc(100% - 28px));margin:0 auto 76px;overflow:hidden;border:2px solid var(--ink);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.stitcher-topbar{display:flex;align-items:center;gap:14px;padding:14px;border-bottom:2px solid var(--ink);background:#fff}.import-strip{display:flex;min-height:78px;flex:1;align-items:center;justify-content:center;gap:14px;padding:12px 18px;border:2px dashed var(--ink);border-radius:18px;background:var(--paper);cursor:pointer;text-align:left}.import-strip.is-dragging{background:var(--soft-blue);box-shadow:inset 0 0 0 3px var(--blue)}.import-strip input{position:absolute;width:1px;height:1px;opacity:0}.import-strip>span:not(.import-icon){margin:0}.import-strip strong,.import-strip small{display:block}.import-strip strong{font-size:17px}.import-strip small{margin-top:2px;color:var(--muted)}.import-icon{display:grid;width:38px;height:36px;place-items:center;border:2px solid var(--ink);border-radius:10px;background:var(--yellow);font-size:25px;font-weight:900}.project-actions{display:flex;gap:8px}.quiet-button,.primary-button{min-height:44px;padding:9px 15px;border:1.5px solid var(--ink);border-radius:12px;background:#fff;font-weight:900;cursor:pointer}.quiet-button:hover{background:var(--yellow)}.quiet-button:disabled,.primary-button:disabled,.download-button:disabled,.mobile-download button:disabled{cursor:not-allowed;opacity:.45}.danger-button:not(:disabled){color:#8a281d}
.studio-grid{display:grid;min-height:720px;grid-template-columns:240px minmax(420px,1fr) 320px}.shot-panel,.controls-panel{background:#fbfaf5}.shot-panel{padding:18px;border-right:2px solid var(--ink)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading span,.studio-heading span{color:#85501b;font-size:9px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.panel-heading h2{margin:2px 0 0;font-size:21px;letter-spacing:-.035em}.panel-heading b{display:grid;width:34px;height:32px;place-items:center;border:1.5px solid var(--ink);border-radius:50%;background:var(--yellow);font-size:11px}.panel-help{margin:9px 0 15px;color:var(--muted);font-size:11px}.shot-list{display:grid;max-height:calc(100vh - 260px);margin:0;padding:0;gap:9px;overflow-y:auto;list-style:none;scrollbar-color:#918b7d transparent;scrollbar-width:thin}.shot-card{display:grid;grid-template-columns:25px 64px minmax(0,1fr) 26px;align-items:center;gap:7px;padding:7px;border:1.5px solid var(--line);border-radius:13px;background:#fff}.shot-card.is-dragging{opacity:.45}.shot-card.is-target{border-color:var(--blue);box-shadow:0 0 0 3px rgba(49,95,233,.15)}.shot-grab{display:grid;width:25px;height:42px;place-items:center;border:0;background:transparent;color:#6e716a;font-size:18px;cursor:grab;touch-action:none}.shot-grab:active{cursor:grabbing}.shot-thumb{display:block;width:64px;height:68px;border:1px solid var(--line);border-radius:8px;background:#f0efe9;object-fit:cover}.shot-info{min-width:0}.shot-info strong{display:block;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.shot-info small{display:block;color:var(--muted);font-size:9px}.shot-remove{display:grid;width:25px;height:25px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer}.shot-remove:hover{border-color:var(--red);color:var(--red)}.shot-empty{padding:25px 10px;border:1px dashed var(--line);border-radius:13px;color:var(--muted);font-size:11px;text-align:center}
.canvas-column{position:relative;min-width:0;background:#30332f}.canvas-toolbar{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:12px;padding:9px 13px;border-bottom:1px solid #4e534c;background:#20231f;color:#fff}.tool-group{display:flex;gap:5px}.tool-group button{min-width:38px;height:34px;padding:5px 9px;border:1px solid #6d736a;border-radius:9px;background:#30342f;color:#fff;font-size:11px;font-weight:850;cursor:pointer}.tool-group button:hover{border-color:#fff}.analysis-state{display:flex;align-items:center;gap:7px;color:#ccd0c9;font-size:10px}.analysis-state i{width:8px;height:8px;border-radius:50%;background:#8d918a}.analysis-state.is-working i{background:var(--yellow);animation:pulse 1s infinite}.analysis-state.is-ready i{background:#35ba87}.canvas-viewport{position:relative;min-height:600px;height:calc(100vh - 230px);overflow:auto;overscroll-behavior:contain;background-color:#2c2f2b;background-image:linear-gradient(45deg,#383b37 25%,transparent 25%),linear-gradient(-45deg,#383b37 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#383b37 75%),linear-gradient(-45deg,transparent 75%,#383b37 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px;cursor:grab}.canvas-viewport.is-panning{cursor:grabbing}.opening-state{display:grid;min-height:100%;padding:45px;place-items:center;align-content:center;color:#fff;text-align:center}.opening-mark{display:grid;width:76px;height:72px;margin-bottom:14px;place-items:center;border:2px solid #fff;border-radius:21px;background:var(--yellow);box-shadow:5px 5px 0 #111;color:#111;font-size:38px;font-weight:900}.opening-state h2{max-width:620px;margin:0;font-size:clamp(32px,4vw,54px);line-height:.97;letter-spacing:-.05em}.opening-state p{margin:14px 0;color:#d9ddd7;font-size:17px}.primary-button{background:var(--yellow);color:#111}.opening-state small{margin-top:10px;color:#bec4bd}.preview-document{position:relative;margin:40px auto;background:transparent;transform-origin:top center}.preview-document canvas{display:block;max-width:none;background:transparent;box-shadow:0 12px 35px rgba(0,0,0,.28)}.seam-layer{position:absolute;inset:0;pointer-events:none}.seam-button{position:absolute;left:50%;z-index:2;width:min(82%,540px);height:28px;transform:translate(-50%,-50%);border:0;border-top:2px solid rgba(255,216,77,.95);background:transparent;pointer-events:auto;cursor:pointer}.seam-button::before{content:"";position:absolute;top:-6px;left:50%;width:11px;height:11px;border:2px solid #181b17;border-radius:50%;background:var(--yellow);transform:translateX(-50%)}.seam-button span{position:absolute;top:4px;left:50%;padding:3px 8px;border-radius:999px;background:#171a17;color:#fff;font-size:8px;font-weight:900;opacity:0;transform:translateX(-50%);white-space:nowrap}.seam-button:hover span,.seam-button:focus-visible span,.seam-button.is-active span{opacity:1}.canvas-summary{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #4e534c;background:#20231f;color:#fff}.canvas-summary strong{font-size:12px}.canvas-summary span{color:#bdc2bb;font-size:10px;text-align:right}
.controls-panel{max-height:calc(100vh - 175px);padding:14px;border-left:2px solid var(--ink);overflow-y:auto;scrollbar-color:#8e8a80 transparent;scrollbar-width:thin}.control-section{margin-bottom:12px;border:1.5px solid var(--ink);border-radius:16px;background:#fff;overflow:hidden}.control-section summary{padding:14px 16px;font-size:17px;font-weight:950;cursor:pointer;list-style:none}.control-section summary::after{content:"+";float:right}.control-section[open] summary::after{content:"−"}.control-body{padding:0 16px 16px}.toggle-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.toggle-row span{display:block}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:12px}.toggle-row small{margin-top:2px;color:var(--muted);font-size:9px}.toggle-row input{width:34px;height:20px;flex:0 0 34px;accent-color:var(--blue)}.range-field{display:block;padding:13px 0;border-top:1px solid var(--line)}.range-field>span{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11px;font-weight:900}.range-field input{width:100%;accent-color:var(--blue)}.background-field{margin:0;padding:13px 0 0;border:0;border-top:1px solid var(--line)}.background-field legend{padding:0 0 8px;font-size:11px;font-weight:900}.segmented,.format-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.segmented button,.format-tabs button,.nudge-row button{min-height:36px;padding:6px;border:1.5px solid var(--ink);border-radius:9px;background:#fff;font-size:9px;font-weight:900;cursor:pointer}.segmented button.is-active,.format-tabs button.is-active{background:var(--ink);color:#fff}.custom-color{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-size:10px;font-weight:850}.custom-color input{width:52px;height:34px;padding:2px;border:1px solid var(--line);background:#fff}.join-editor{margin-bottom:12px;padding:14px;border:2px solid var(--blue);border-radius:16px;background:var(--soft-blue)}.join-title,.join-readout{display:flex;align-items:center;justify-content:space-between;gap:10px}.join-title span{color:#344a86;font-size:9px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.join-title strong{font-size:13px}.join-readout{margin:12px 0 5px;font-size:10px}.join-editor>input{width:100%;accent-color:var(--blue)}.nudge-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:9px}.reset-join{width:100%;margin-top:8px;padding:7px;border:0;background:transparent;color:#254eae;font-size:10px;font-weight:900;text-decoration:underline;cursor:pointer}.format-tabs{margin-bottom:12px}.select-field{display:block;margin:9px 0}.select-field span{display:block;margin-bottom:5px;font-size:10px;font-weight:900}.select-field select{width:100%;min-height:42px;padding:8px;border:1.5px solid var(--ink);border-radius:10px;background:#fff}.output-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px}.output-facts div{padding:10px;border:1px solid var(--line);border-radius:10px;background:#faf9f4}.output-facts span,.output-facts strong{display:block}.output-facts span{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.output-facts strong{margin-top:2px;font-size:11px}.export-warning{padding:10px;border:1px solid #b66f20;border-radius:10px;background:#fff2c8;color:#70430f;font-size:10px}.download-button,.mobile-download button{width:100%;min-height:50px;margin-top:12px;padding:10px;border:2px solid var(--ink);border-radius:13px;background:var(--yellow);font-weight:950;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}.download-button:not(:disabled):hover,.mobile-download button:not(:disabled):hover{background:#ffe985}.status-line{min-height:32px;margin:11px 0 0;color:var(--muted);font-size:10px}.mobile-download{display:none}
.product-copy{padding:76px 0}.copy-intro{max-width:950px}.product-copy h2,.faq-section h2{margin:8px 0 16px;font-size:clamp(38px,5vw,62px);line-height:.96;letter-spacing:-.055em}.copy-intro>p{max-width:860px;color:var(--muted);font-size:18px}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:35px 0}.steps-grid article,.use-grid article{padding:23px;border:2px solid var(--ink);border-radius:18px;background:#fff}.steps-grid article:nth-child(2){background:var(--soft-blue)}.steps-grid article:nth-child(3){background:#fff2bd}.steps-grid article:nth-child(4){background:var(--soft-green)}.steps-grid b{display:grid;width:32px;height:30px;place-items:center;border:1.5px solid var(--ink);border-radius:50%;font-size:10px}.steps-grid h3,.use-grid h3{margin:12px 0 5px;font-size:18px}.steps-grid p,.use-grid p{margin:0;color:var(--muted)}.use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.use-grid a{color:var(--ink);font-weight:850}.privacy-note{margin:18px 0 0;padding:16px 18px;border-left:5px solid var(--green);background:var(--soft-green)}.faq-section{padding:70px 0 82px;border-top:2px solid var(--ink)}.faq-list{display:grid;max-width:960px;gap:9px}.faq-list details{padding:16px 18px;border:1.5px solid var(--ink);border-radius:14px;background:#fff}.faq-list summary{cursor:pointer;font-weight:900}.faq-list p{margin:9px 0 0;color:var(--muted)}
:focus-visible{outline:4px solid rgba(49,95,233,.25);outline-offset:3px}@keyframes pulse{50%{opacity:.35}}
@media(max-width:1180px){.studio-grid{grid-template-columns:210px minmax(360px,1fr) 300px}.shot-card{grid-template-columns:22px 50px minmax(0,1fr) 25px}.shot-thumb{width:50px;height:58px}.tool-intro{align-items:flex-start}.privacy-chip{flex-basis:260px}}
@media(max-width:900px){.tool-intro{align-items:flex-start;flex-direction:column}.privacy-chip{max-width:none;flex-basis:auto}.studio-grid{grid-template-columns:1fr}.shot-panel{border-right:0;border-bottom:2px solid var(--ink)}.shot-list{display:flex;max-height:none;gap:8px;overflow-x:auto}.shot-card{min-width:210px}.canvas-column{order:-1}.canvas-viewport{height:62vh;min-height:500px}.controls-panel{max-height:none;border-top:2px solid var(--ink);border-left:0}.steps-grid{grid-template-columns:1fr 1fr}.use-grid{grid-template-columns:1fr}.stitcher-topbar{align-items:stretch;flex-direction:column}.project-actions button{flex:1}}
@media(max-width:640px){.shell{width:min(100% - 24px,1320px)}.nav-links a:not(.nav-pill){display:none}.tool-intro{padding:34px 0 18px}.tool-intro h1{font-size:43px}.tool-intro p{font-size:16px}.privacy-chip{display:grid;grid-template-columns:auto 1fr}.privacy-chip span{grid-column:2}.stitcher-shell{width:calc(100% - 14px);margin-bottom:58px;border-radius:20px;box-shadow:5px 6px 0 var(--ink)}.stitcher-topbar{padding:9px}.import-strip{min-height:70px}.import-strip strong{font-size:14px}.import-strip small{font-size:10px}.canvas-viewport{height:58vh;min-height:430px}.opening-state{padding:24px 16px}.opening-state h2{font-size:37px}.canvas-toolbar{align-items:flex-start;flex-direction:column}.canvas-summary{align-items:flex-start;flex-direction:column}.canvas-summary span{text-align:left}.shot-panel{padding:13px}.panel-help{display:none}.controls-panel{padding:10px 10px 74px}.control-section{border-radius:13px}.control-section summary{padding:13px}.steps-grid{grid-template-columns:1fr}.product-copy{padding:58px 0}.faq-section{padding:55px 0 95px}.mobile-download{position:fixed;right:0;bottom:0;left:0;z-index:80;display:block;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:2px solid var(--ink);background:rgba(255,250,240,.96);backdrop-filter:blur(8px)}.mobile-download button{min-height:48px;margin:0;box-shadow:none}.site-footer{padding-bottom:74px}}
@media(max-width:390px){.tool-intro h1{font-size:38px}.privacy-chip{font-size:12px}.shot-card{min-width:190px}.canvas-viewport{min-height:390px}.opening-state h2{font-size:32px}.opening-mark{width:64px;height:60px}.tool-group button{min-width:34px;padding:4px 7px}.analysis-state{max-width:130px}.project-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
