*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--paper: #ede7df;--paper-raised: #f7f3ec;--paper-sunken: #e5ddd2;--ink: #16130f;--ink-soft: #5c554c;--ink-faint: #8b8478;--rule: #d7cdbf;--accent: #e4472a;--accent-ink: #ffffff;--accent-wash: rgba(228, 71, 42, .1);--radius: 10px;--radius-sm: 6px;--shadow: 0 1px 0 rgba(22, 19, 15, .04), 0 6px 16px -12px rgba(22, 19, 15, .35);font-family:var(--font-sans);color-scheme:light}@media(prefers-color-scheme:dark){:root{--paper: #161512;--paper-raised: #201e1a;--paper-sunken: #100f0d;--ink: #f3eee5;--ink-soft: #a8a094;--ink-faint: #837b6f;--rule: #34302a;--accent: #ff5a38;--accent-ink: #1a0d08;--accent-wash: rgba(255, 90, 56, .14);--shadow: 0 1px 0 rgba(0, 0, 0, .2), 0 6px 16px -12px rgba(0, 0, 0, .8);color-scheme:dark}}body{min-height:100dvh;background-color:var(--paper);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,color-mix(in srgb,var(--rule) 45%,transparent) 31px,color-mix(in srgb,var(--rule) 45%,transparent) 32px);color:var(--ink)}.mono-label{display:inline-block;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.button{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;border:1px solid var(--rule);border-radius:var(--radius-sm);background-color:var(--paper-raised);color:var(--ink);font-size:.875rem;font-weight:500;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.button:hover:not(:disabled){border-color:var(--ink-faint)}.button:disabled{opacity:.4;cursor:not-allowed}.button--accent{background-color:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button--accent:hover:not(:disabled){filter:brightness(1.06)}.button--quiet{background-color:transparent;border-color:transparent;color:var(--ink-soft)}.button--quiet:hover:not(:disabled){background-color:var(--paper-raised)}.ghost-button{padding:.35rem 0;border:0;background:none;color:var(--accent);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.04em;cursor:pointer}.ghost-button:hover{text-decoration:underline}.icon-button{display:grid;place-items:center;width:1.75rem;height:1.75rem;flex:none;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink-faint);font-size:.75rem;cursor:pointer}.icon-button:hover{background-color:var(--accent-wash);color:var(--accent)}.icon-button--quiet{opacity:0}.line:hover .icon-button--quiet,.icon-button--quiet:focus-visible{opacity:1}@media(hover:none){.icon-button--quiet{opacity:1}}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.field input,.field textarea,.grow-text{width:100%;padding:.5rem .6rem;border:1px solid var(--rule);border-radius:var(--radius-sm);background-color:var(--paper-raised);color:var(--ink);font-family:inherit;font-size:.9375rem;resize:none}.field input::placeholder,.grow-text::placeholder{color:var(--ink-faint)}.field--title input{font-size:1.25rem;font-weight:600;letter-spacing:-.01em}.field--tag input{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.sheet{max-width:64rem;margin-inline:auto;padding:clamp(1rem,3vw,2.25rem)}.masthead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:2px solid var(--ink)}.masthead h1{font-size:clamp(1.5rem,3.5vw,2rem);font-weight:650;letter-spacing:-.02em;line-height:1.15}.modes{display:flex;gap:.5rem}.rail{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--rule)}.rail__list{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}.rail__actions{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:baseline;gap:.4rem;padding:.35rem .7rem;border:1px solid var(--rule);border-radius:999px;background-color:transparent;color:var(--ink-soft);font-size:.875rem;cursor:pointer}.chip:hover{border-color:var(--ink-faint)}.chip[aria-current=true]{background-color:var(--ink);border-color:var(--ink);color:var(--paper)}.chip[aria-current=true] .mono-label{color:var(--accent)}.menu{position:relative}.menu__panel{position:absolute;z-index:5;top:calc(100% + .4rem);right:0;display:flex;flex-direction:column;width:min(20rem,78vw);padding:.3rem;border:1px solid var(--rule);border-radius:var(--radius);background-color:var(--paper-raised);box-shadow:var(--shadow)}.menu__panel button{display:flex;flex-direction:column;gap:.1rem;padding:.55rem .6rem;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink);text-align:left;cursor:pointer}.menu__panel button:hover{background-color:var(--accent-wash)}.menu__panel strong{font-size:.9375rem;font-weight:600}.menu__panel span{font-size:.8125rem;color:var(--ink-soft)}.sheet__main{display:grid;gap:1.5rem;padding-top:1.5rem}@media(min-width:68rem){.sheet__main{grid-template-columns:21rem 1fr;align-items:start;gap:2rem}.overview{position:sticky;top:1.5rem}}.overview{display:flex;flex-direction:column;gap:.9rem;padding:1.1rem;border:1px solid var(--rule);border-radius:var(--radius);background-color:var(--paper-raised);box-shadow:var(--shadow)}.overview__row{display:grid;grid-template-columns:1fr auto auto;gap:.6rem}.field--short input{width:5.5rem}.progress{display:flex;flex-direction:column;gap:.4rem;margin-top:.2rem}.progress__bar{height:4px;border-radius:999px;background-color:var(--paper-sunken);overflow:hidden}.progress__fill{display:block;height:100%;background-color:var(--accent);transition:width .16s ease}.script__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding-bottom:.6rem}.script__tools{display:flex;gap:.4rem}.script__scenes{display:flex;flex-direction:column;gap:.6rem}.scene{border:1px solid var(--rule);border-radius:var(--radius);background-color:var(--paper-raised);box-shadow:var(--shadow)}.scene--drop{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.scene__bar{display:flex;align-items:center;gap:.25rem;padding:.35rem .5rem}.scene__handle{display:grid;place-items:center;width:1.75rem;height:1.75rem;flex:none;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink-faint);cursor:grab}.scene__handle:hover{background-color:var(--paper-sunken);color:var(--ink)}.scene__handle:active{cursor:grabbing}.scene__handle svg{width:10px;height:16px;fill:currentColor}.scene__disclosure{display:flex;flex:1;align-items:center;gap:.6rem;min-width:0;padding:.4rem .2rem;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}.chevron{width:.5rem;height:.5rem;flex:none;border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);transform:rotate(45deg);transition:transform .12s ease}.scene__disclosure[aria-expanded=false] .chevron{transform:rotate(-45deg)}.scene__tag{color:var(--accent)}.scene__name{flex:1;overflow:hidden;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.scene__tally{flex:none}.scene__body{display:flex;flex-direction:column;gap:1rem;padding:.4rem .9rem 1rem;border-top:1px solid var(--rule)}.scene__heads{display:grid;grid-template-columns:8rem 1fr;gap:.6rem;padding-top:.6rem}.scene__notes{display:grid;gap:.75rem}@media(min-width:40rem){.scene__notes{grid-template-columns:1fr 1fr}}.lines__list{display:flex;flex-direction:column;gap:.25rem;margin:.4rem 0 .2rem;padding:0;list-style:none}.line{display:flex;align-items:flex-start;gap:.5rem}.line__check{width:1.05rem;height:1.05rem;margin-top:.55rem;flex:none;accent-color:var(--accent)}.line__text{border-color:transparent;background-color:transparent;border-bottom:1px solid var(--rule);border-radius:0;padding-inline:.2rem}.line__text:focus{background-color:var(--paper);border-bottom-color:var(--accent)}.line--recorded .line__text{color:var(--ink-faint);text-decoration:line-through;text-decoration-color:var(--accent)}.sheet--preview .outline{max-width:46rem;padding-top:1.75rem}.outline__meta{color:var(--ink-soft);font-size:.9375rem}.outline__logline{padding-bottom:1.25rem;border-bottom:1px solid var(--rule);font-size:1.125rem;color:var(--ink-soft)}.outline__scenes{margin:0;padding:0;list-style:none}.outline__scene{padding:1.5rem 0;border-bottom:1px solid var(--rule)}.outline__scene h2{display:flex;align-items:baseline;gap:.6rem;font-size:1.25rem;font-weight:650;letter-spacing:-.01em}.outline__scene h2 .mono-label{color:var(--accent)}.outline__lines{margin:.75rem 0 0;padding:0;list-style:none}.outline__lines li{display:flex;gap:.6rem;padding:.3rem 0;font-size:1.0625rem;line-height:1.5}.outline__tick{width:1rem;flex:none;color:var(--accent);font-size:.875rem;line-height:1.6}.outline__lines .is-recorded{color:var(--ink-faint)}.outline__empty{margin-top:.6rem;color:var(--ink-faint);font-style:italic}.outline__note{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-left:.75rem;border-left:2px solid var(--rule);color:var(--ink-soft);font-size:.9375rem}.outline__cta{margin-top:1.5rem;padding:1rem 1.1rem;border-radius:var(--radius);background-color:var(--accent-wash);font-size:1.0625rem}.outline__tally{margin-top:1.5rem}.stage{display:flex;flex-direction:column;gap:1.5rem;min-height:100dvh;padding:clamp(1rem,4vw,3rem);background-color:var(--paper);background-image:none}.stage__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.stage__exit{color:var(--ink-faint);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.stage__exit:hover{color:var(--accent)}.stage__main{flex:1;width:min(100%,54rem);margin-inline:auto}.stage__title{font-size:clamp(1.75rem,5vw,3rem);font-weight:650;letter-spacing:-.03em;line-height:1.05}.stage__lines{margin:clamp(1.5rem,4vw,2.5rem) 0 0;padding:0;list-style:none}.stage__line{display:flex;align-items:flex-start;gap:1rem;padding:.6rem 0;font-size:clamp(1.35rem,3.4vw,2.25rem);font-weight:500;line-height:1.3;letter-spacing:-.015em;cursor:pointer}.stage__line input{width:1.5rem;height:1.5rem;margin-top:.5rem;flex:none;accent-color:var(--accent)}.stage__line.is-recorded{color:var(--ink-faint);text-decoration:line-through;text-decoration-color:var(--accent);text-decoration-thickness:2px}.stage__note{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-left:.75rem;border-left:2px solid var(--rule);color:var(--ink-soft)}.stage__empty{color:var(--ink-faint);font-size:1.125rem}.stage__nav{display:flex;justify-content:space-between;gap:1rem;width:min(100%,54rem);margin-inline:auto}.page{max-width:40rem;margin-inline:auto;padding:clamp(2rem,8vw,5rem) 1.5rem;display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.page h1{font-size:1.75rem;font-weight:650;letter-spacing:-.02em}.page p{color:var(--ink-soft)}
