@font-face{font-family:Jost;src:url(/fonts/jost-latin-wght-normal.woff2) format("woff2");font-weight:300 600;font-display:swap}@font-face{font-family:Playfair;src:url(/fonts/playfair-display-latin-wght-normal.woff2) format("woff2");font-weight:400 600;font-display:swap}@font-face{font-family:Playfair;src:url(/fonts/playfair-display-latin-wght-italic.woff2) format("woff2");font-weight:400 600;font-style:italic;font-display:swap}:root{--ink:#2b3a35;--sage:#3c5d55;--sage-mid:#88aea4;--sage-light:#c9dad5;--mist:#eef3f1;--line:#e3e9e6;--line-strong:#d7e2de;--body:#4d5c57;--muted:#6b7a75;--gold:#b8973f;--gold-text:#8a6d2c;--gold-light:#d4b971;--gold-wash:#fffcf3;--gold-edge:#ead9a6;--cream:#f4f1ea;--linen:#f7f4ee;--paper:#fff;--warn:#9b4a3c;--rail:76px;--radius:16px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--linen);font-family:Jost,system-ui,sans-serif;color:var(--body);font-size:15px;font-weight:430;-webkit-font-smoothing:antialiased}a{text-decoration:none}a,button{color:inherit}button{font:inherit;background:none;border:0;cursor:pointer}input,select,textarea{font:inherit;color:var(--ink)}.serif{font-family:Playfair,Georgia,serif}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.eyebrow,.muted{color:var(--muted)}.grow{flex:1 1}.shell{display:grid;grid-template-columns:var(--rail) 1fr;min-height:100vh}.rail{background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:20px 0;gap:4px;position:-webkit-sticky;position:sticky;top:0;height:100vh}.rail .mark{font-family:Playfair;font-style:italic;font-size:26px;color:var(--sage);margin-bottom:8px}.rail a{width:56px;padding:6px 0;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--muted);letter-spacing:.02em}.rail a.on{background:var(--mist);color:var(--sage)}.rail svg,.tabbar svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6}.rail .sp{flex:1 1}main{min-width:0;flex-direction:column}.top,main{display:flex}.top{min-height:68px;align-items:center;gap:12px;padding:10px 28px;border-bottom:1px solid var(--line);background:var(--linen);flex-wrap:wrap}.top h1{font-family:Playfair;font-weight:400;font-size:22px;color:var(--ink)}.top .crumb{font-size:13px;color:var(--muted)}.tabbar{display:none}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper);border-radius:99px;padding:7px 14px;font-size:13px;color:var(--body);white-space:nowrap}.dot{width:7px;height:7px;border-radius:50%;background:var(--sage-mid)}.dot.off{background:#c9c3b6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:99px;padding:10px 20px;font-size:14px;letter-spacing:.01em;white-space:nowrap}.btn.pri{background:var(--sage);color:#fff}.btn.ghost{border:1px solid var(--sage-light);color:var(--sage);background:var(--paper)}.btn.small{padding:7px 14px;font-size:13px}.page{padding:28px;display:flex;flex-direction:column;gap:22px;max-width:1400px;width:100%}.card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px 26px}.card h2{font-size:24px;margin:4px 0 14px}.card h2,.greet{font-family:Playfair;font-weight:400;color:var(--ink)}.greet{font-size:44px;line-height:1.15}.greet em{color:var(--sage)}.grid2{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:22px;gap:22px;align-items:start}table.stages{width:100%;border-collapse:collapse}table.stages th{font-weight:430;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;padding:8px 4px;border-bottom:1px solid var(--line)}table.stages th:first-child{text-align:left}table.stages td{padding:14px 4px;border-bottom:1px solid var(--line);text-align:center}table.stages td:first-child{text-align:left;color:var(--ink);font-size:16px}table.stages td small{display:block;color:var(--muted);font-size:13px}.st{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%}.st.s-done{background:var(--sage)}.st.s-done svg{width:12px;stroke:#fff;fill:none;stroke-width:2.4}.st.s-now{border:2px solid var(--gold-light);background:var(--gold-wash)}.st.s-todo{display:inline-block;width:8px;height:8px;vertical-align:middle;background:#dcdfdc}table.stages .short{display:none}.todo-list{display:flex;flex-direction:column}.todo{display:flex;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--line)}.todo .n{width:36px;height:36px;border-radius:10px;background:var(--mist);display:grid;place-items:center;font-family:Playfair;color:var(--sage);flex:none}.todo b{font-weight:500;color:var(--ink);display:block}.todo span{font-size:14px;color:var(--muted)}.lines{display:flex;flex-direction:column}.line{display:grid;grid-template-columns:34px 1fr 1fr;grid-gap:16px;gap:16px;padding:14px 0;border-top:1px solid var(--line);align-items:start}.line .num{font-family:Playfair;color:var(--sage);font-size:18px}.line .say{color:var(--ink);line-height:1.45}.line .shot{font-size:14px;line-height:1.45}.tag{display:inline-block;font-size:11.5px;border-radius:99px;padding:2px 9px;margin:4px 4px 0 0;background:var(--mist);color:var(--sage)}.tag.cam{background:#fbf6e6;color:var(--gold-text)}.tag.find{background:#fbeeea;color:var(--warn)}.edit{display:grid;grid-template-columns:360px 1fr;flex:1 1}.edit,.side{min-height:0}.side{background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column}.side .head{padding:20px 22px 8px}.side .scroll{flex:1 1;overflow:auto;padding:4px 22px 22px;display:flex;flex-direction:column;gap:12px}.change{line-height:1.5;font-size:14.5px;color:var(--ink)}.change .who{font-family:Playfair;font-style:italic;color:var(--sage);font-size:14px;margin-bottom:2px}.change.bec{align-self:flex-end;background:var(--mist);padding:10px 14px;border-radius:16px 16px 4px 16px;max-width:92%}.composer{margin:12px 16px 16px;border:1px solid var(--sage-light);border-radius:18px;padding:8px 8px 8px 14px;display:flex;align-items:center;gap:10px;background:var(--paper)}.composer input{border:0;outline:0;flex:1 1;background:none;font-size:14.5px;min-width:0}.composer button{width:34px;height:34px;border-radius:50%;background:var(--sage);display:grid;place-items:center;flex:none}.composer svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2}.stage{display:flex;flex-direction:column;min-width:0}.view{flex:1 1;align-items:flex-start;justify-content:center;gap:28px;padding:20px 20px 4px;flex-wrap:wrap}.pcol,.view{display:flex}.pcol{flex-direction:column;align-items:center}.tabs{display:flex;gap:6px;justify-content:center;margin-bottom:10px;flex-wrap:wrap}.tb{font-size:12.5px;border-radius:99px;padding:5px 12px;border:1px solid var(--line);background:var(--paper);color:var(--muted)}.tb.on{background:var(--sage);color:#fff;border-color:var(--sage)}.phone{position:relative;width:288px;aspect-ratio:9/16;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(43,58,53,.18);background:#111}.phone canvas{width:100%;height:100%;display:block}.ctrl{display:flex;align-items:center;justify-content:center;gap:18px;padding:12px 0;font-size:13px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.play{width:44px;height:44px;border-radius:50%;background:var(--sage);display:grid;place-items:center}.play svg{width:14px;fill:#fff}.notes{width:240px;display:flex;flex-direction:column;gap:12px}.note{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:13.5px;line-height:1.45;color:var(--ink)}.note .eyebrow{font-size:10.5px;margin-bottom:4px}.note.fix{border-color:var(--gold-edge);background:var(--gold-wash)}.tl{border-top:1px solid var(--line);background:var(--paper);padding:14px 22px 16px;overflow-x:auto}.row{gap:6px;align-items:stretch;margin-top:8px;min-width:max-content}.lab,.row{display:flex}.lab{width:64px;font-size:11.5px;color:var(--muted);align-items:center;flex:none;position:-webkit-sticky;position:sticky;left:0;background:var(--paper);z-index:1}.clip{height:62px;border-radius:8px;overflow:hidden;position:relative;flex:none;background:var(--mist)}.clip img{height:100%;width:100%;object-fit:cover;display:block}.clip span{position:absolute;left:5px;top:4px;font-size:10.5px;color:#fff;background:rgba(43,58,53,.55);border-radius:5px;padding:1px 5px}.clip.sel{outline:2.5px solid var(--gold-light);outline-offset:1px}.w{height:26px;border-radius:7px;background:var(--mist);color:var(--sage);font-size:11.5px;display:flex;align-items:center;padding:0 8px;white-space:nowrap;overflow:hidden;flex:none}.w.sel{background:#fbf6e6;color:var(--gold-text)}.aud{height:26px;background:repeating-linear-gradient(90deg,var(--sage-light) 0 2px,transparent 2px 5px)}.aud,.mus{border-radius:7px;flex:none}.mus{height:22px;background:linear-gradient(90deg,#efe4c0,#e7d59c 60%,#efe4c0)}.versions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:22px;gap:22px}.check{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:flex-start}.check .ic{width:22px;height:22px;border-radius:50%;flex:none;display:grid;place-items:center;margin-top:1px}.check .ic.ok{background:var(--sage)}.check .ic.look{background:var(--gold-light)}.check .ic svg{width:12px;stroke:#fff;fill:none;stroke-width:2.4}.check b{font-weight:500;color:var(--ink)}.files{display:flex;flex-direction:column;gap:8px;margin-top:10px}.file{gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-size:14px}.file,.set{display:flex;align-items:center}.set{justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--line);flex-wrap:wrap}.set b{font-weight:500;color:var(--ink);display:block}.set span{font-size:14px;color:var(--muted)}.switch{display:inline-flex;border:1px solid var(--line-strong);border-radius:99px;padding:3px;background:var(--linen)}.switch button{padding:7px 14px;border-radius:99px;font-size:13.5px;color:var(--muted)}.switch button.on{background:var(--sage);color:#fff}.swatch{display:inline-flex;align-items:center;gap:8px;margin:6px 14px 6px 0;font-size:13.5px}.swatch i{width:26px;height:26px;border-radius:8px;border:1px solid var(--line);display:inline-block}.signin{min-height:100vh;display:grid;place-items:center;padding:20px}.signin .card{width:100%;max-width:420px}.field{display:flex;flex-direction:column;gap:6px;margin-top:14px}.field input{border:1px solid var(--line-strong);border-radius:12px;padding:12px 14px;background:var(--paper);font-size:16px}.err{color:var(--warn);font-size:14px;margin-top:10px}@media (max-width:860px){.shell{grid-template-columns:1fr;padding-bottom:72px}.rail{display:none}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--paper);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));justify-content:space-around}.tabbar a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;color:var(--muted);padding:4px 10px;border-radius:10px}.tabbar a.on{color:var(--sage);background:var(--mist)}.top{padding:12px 16px;min-height:0}.top h1{font-size:20px}.top .hide-phone{display:none}.page{padding:16px;gap:16px}.card{padding:18px;border-radius:18px}.greet{font-size:30px}.grid2{grid-template-columns:1fr}table.stages th{font-size:10px;letter-spacing:.04em;padding:8px 1px}table.stages .long{display:none}table.stages .short{display:inline}table.stages td:first-child{font-size:15px}.line{grid-template-columns:26px 1fr}.line .shot{grid-column:2}.edit{grid-template-columns:1fr}.edit .side{order:2;border-right:0;border-top:1px solid var(--line)}.edit .stage{order:1}.notes{width:100%}.phone{width:min(78vw,320px)}}@font-face{font-family:Playfair Display;src:url(/fonts/playfair-display-latin-wght-normal.woff2) format("woff2");font-weight:400 900;font-display:block}@font-face{font-family:Playfair Display;src:url(/fonts/playfair-display-latin-wght-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:block}@media (min-width:861px){.shell:has(.edit) main{height:100vh}.edit{min-height:0;overflow:hidden}.edit .stage{min-height:0;overflow:auto}}@media (min-width:861px){.shell:has(.edit) .phone{width:auto;height:min(512px,calc(100vh - 430px))}}button.link{background:none;border:0;padding:0;margin-top:6px;font:inherit;font-size:13px;color:var(--sage);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tlx{border-top:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;min-height:0;height:236px;flex:none}.tlx.tall{height:52vh}.tlx-bar{display:flex;align-items:center;gap:14px;padding:10px 18px 6px;font-size:12.5px}.tlx-bar .grow{flex:1 1}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.zoom{display:flex;align-items:center;gap:8px;color:var(--muted)}.zoom input{width:120px;accent-color:var(--sage)}.tlx-scroll{overflow:auto;flex:1 1;min-height:0;padding-bottom:8px}.tlx-inner,.tlx-ruler,.tlx-scroll{position:relative}.tlx-ruler{height:20px;border-bottom:1px solid var(--line);cursor:pointer}.tlx-ruler span{position:absolute;top:3px;font-size:10px;color:var(--muted);transform:translateX(-50%);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tlx-ruler span:first-child{transform:none}.tlx-row{display:flex;border-bottom:1px solid var(--line)}.tlx-lab{width:76px;flex:none;position:-webkit-sticky;position:sticky;left:0;z-index:3;background:var(--paper);font-size:11px;color:var(--muted);display:flex;align-items:center;padding-left:14px}.tlx-lane{position:relative;flex:1 1}.tlx-item{position:absolute;top:3px;bottom:3px;border-radius:6px;overflow:hidden;cursor:-webkit-grab;cursor:grab;touch-action:none;display:flex;align-items:center;border:1px solid rgba(43,58,53,.12);-webkit-user-select:none;-moz-user-select:none;user-select:none}.tlx-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9;pointer-events:none}.tlx-item span{position:relative;font-size:10.5px;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tlx-item.k-video span{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6);align-self:flex-start;margin-top:3px}.tlx-item.k-overlay{background:#f3e9cc}.tlx-item.k-caption{background:var(--mist);color:var(--sage)}.tlx-item.k-voice{background:repeating-linear-gradient(90deg,var(--sage-light) 0 2px,#f4f7f6 2px 5px)}.tlx-item.k-music{background:linear-gradient(90deg,#efe4c0,#e7d59c 60%,#efe4c0)}.tlx-item.k-sfx{background:#efd9d9}.tlx-item.sel{outline:2.5px solid var(--gold-light);outline-offset:0;z-index:2}.tlx-item .trim{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:ew-resize;background:rgba(255,255,255,0)}.tlx-item.sel .trim,.tlx-item:hover .trim{background:rgba(212,185,113,.7)}.tlx-head{position:absolute;top:0;bottom:0;width:2px;background:var(--gold);z-index:4;pointer-events:none}.inspector{border-top:1px solid var(--line);padding:10px 18px 12px;display:flex;flex-wrap:wrap;gap:10px 22px;align-items:flex-end;font-size:13px}.inspector>b{width:100%;font-weight:500;color:var(--ink)}.ifields{display:flex;flex-wrap:wrap;gap:10px 14px}.ifield{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:11.5px}.ifield input{width:110px;border:1px solid var(--line-strong);border-radius:9px;padding:6px 9px;font-size:14px;background:var(--paper);color:var(--ink)}.ifield:last-child input{width:260px}.ifield small{font-size:10.5px}.iacts{display:flex;gap:8px;margin-left:auto}.saving{font-size:12.5px;color:var(--muted);padding:4px 18px}@media (max-width:860px){.tlx{height:200px}.tlx.tall{height:60vh}.zoom input{width:80px}}.sheet,.sheet-bg{display:none}@media (max-width:860px){.tabbar button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;color:var(--muted);padding:4px 10px;border-radius:10px;background:none;border:0;font-family:inherit}.tabbar button.on{color:var(--sage);background:var(--mist)}.tabbar button svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6}.sheet-bg{display:block;position:fixed;inset:0;background:rgba(43,58,53,.25);z-index:21}.sheet{display:flex;flex-direction:column;position:fixed;left:10px;right:10px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:22;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:8px;box-shadow:0 18px 50px rgba(43,58,53,.18);animation:sheet-up .18s ease-out}.sheet a,.sheet button{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:12px;font-size:15.5px;color:var(--ink);background:none;border:0;width:100%;font-family:inherit;text-align:left}.sheet a.on{background:var(--mist);color:var(--sage)}.sheet svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6}.sheet form{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}}@keyframes sheet-up{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}@media (min-width:861px){.shell:has(.tlx.tall) .phone{height:max(200px,calc(48vh - 200px))}.shell:has(.tlx.tall) .notes{display:none}}