:root{--paper:#faf9f6;--ink:#262e32;--quiet:#626d72;--line:#dddeda;--soft:#eeefea;--accent:#0057ff;--accent-ink:#fff;--accent-soft:#e9f0ff;--warn:#7a4e00;--warn-bg:#fff3d6;--danger:#b3261e;--danger-bg:#fde8e6;--ok:#1a6b3a;--ok-bg:#e4f5ea;--script-size:18px;--script-leading:1.85;--cue-size:23px;--title-size:27px;--tap:44px;--pad-x:22px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-size=large]{--script-size:21px;--cue-size:24px}:root[data-size=xlarge]{--script-size:24px;--cue-size:25px;--script-leading:1.8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#191c20;--ink:#f0f0eb;--quiet:#b5bec4;--line:#3b4249;--soft:#23282d;--accent:#85b4ff;--accent-ink:#0b1a33;--accent-soft:#1d2a40;--warn:#ffd27a;--warn-bg:#3a2f14;--danger:#ff8a80;--danger-bg:#3d1f1d;--ok:#8fe0ad;--ok-bg:#1b3326;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#191c20;--ink:#f0f0eb;--quiet:#b5bec4;--line:#3b4249;--soft:#23282d;--accent:#85b4ff;--accent-ink:#0b1a33;--accent-soft:#1d2a40;--warn:#ffd27a;--warn-bg:#3a2f14;--danger:#ff8a80;--danger-bg:#3d1f1d;--ok:#8fe0ad;--ok-bg:#1b3326;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (max-width:359px){:root{--pad-x:16px;--cue-size:21px;--title-size:25px}}*,:before,:after{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-wrap:anywhere;word-break:normal;line-break:strict;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Noto Sans CJK JP,Yu Gothic UI,Yu Gothic,Meiryo,system-ui,sans-serif;font-size:16px;line-height:1.6}body,#root{min-height:100vh;min-height:100dvh}button,input,textarea,select{font:inherit;color:inherit}button{min-height:var(--tap);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:8px;padding:8px 10px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.5;cursor:default}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.shell{height:100vh;background:var(--paper);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.shell>.banner{flex:none}.app{background:var(--paper);flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.top{padding-top:env(safe-area-inset-top,0);background:var(--paper);border-bottom:1px solid var(--line);flex:none}.brand{padding:14px var(--pad-x) 4px;letter-spacing:2px;color:var(--quiet);text-transform:uppercase;font-size:11px}.toolbar{padding:0 calc(var(--pad-x) - 10px) 6px;justify-content:space-between;align-items:center;gap:6px;display:flex}.toolbar .pagebtn{text-align:left;font-size:16px;font-weight:600}.toolbar .pagebtn .num{color:var(--accent)}.toolbar .pagebtn .sep{color:var(--quiet);margin:0 6px;font-weight:400}.toolbar .pagebtn .label{font-weight:500}.toolbar .settingsbtn{color:var(--quiet);font-size:14px}.stage{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom;min-height:0;padding:22px var(--pad-x) 28px;flex:auto;scroll-padding-top:8px;overflow:hidden auto}.stage-inner{will-change:transform}.stage-inner.drag{transition:none}.stage-inner.turn-next,.stage-inner.turn-prev{animation:.18s ease-out turn}.stage-inner.turn-prev{animation-name:turn-back}@keyframes turn{0%{opacity:.35;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes turn-back{0%{opacity:.35;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.stage-inner.turn-next,.stage-inner.turn-prev{animation:none}.stage-inner{transform:none!important}}.eyebrow{color:var(--accent);letter-spacing:1.5px;min-height:1.4em;margin:0 0 6px;font-size:12px;font-weight:600}.title{font-size:var(--title-size);letter-spacing:.02em;margin:0 0 20px;font-weight:700;line-height:1.4}.cues{margin:0;padding:0 0 18px;list-style:none}.cue{font-size:var(--cue-size);letter-spacing:.01em;align-items:baseline;gap:12px;margin:0 0 8px;font-weight:700;line-height:1.6;display:flex}.cue:first-child{color:var(--accent)}.cue .n{color:var(--quiet);font-variant-numeric:tabular-nums;flex:none;min-width:1.6em;font-size:12px;font-weight:500}.ref-badge{color:var(--accent);border:1px solid var(--accent);vertical-align:middle;letter-spacing:.08em;border-radius:999px;margin-left:10px;padding:1px 10px;font-size:12px;font-weight:600;display:inline-block}.scripthead{border-top:1px solid var(--line);color:var(--quiet);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:8px;font-size:12px;display:flex}.scripthead button{color:var(--quiet);padding:8px 12px;font-size:13px}.script{font-size:var(--script-size);line-height:var(--script-leading);-webkit-user-select:text;user-select:text;padding:8px 0 4px}.script p{margin:0 0 1em}.script p:last-child{margin-bottom:0}.script strong{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.3em;font-weight:700;text-decoration-thickness:2px}.note{background:var(--soft);color:var(--ink);border-radius:10px;margin:10px 0 0;padding:12px 14px;font-size:15px;line-height:1.7}.note .note-label{letter-spacing:.1em;color:var(--quiet);margin-bottom:4px;font-size:11px;display:block}.note.quiet{color:var(--quiet)}.bottom{background:var(--soft);border-top:1px solid var(--line);padding:10px var(--pad-x) calc(10px + env(safe-area-inset-bottom,0));flex:none}.next{align-items:baseline;gap:10px;min-height:24px;font-size:14px;line-height:1.6;display:flex}.next .next-label{color:var(--quiet);letter-spacing:1px;text-transform:uppercase;flex:none;font-size:11px}.next .next-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next .last{color:var(--quiet)}.navbtns{gap:8px;margin-top:8px;display:flex}.navbtn{min-height:var(--tap);border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;flex:1 1 0;font-size:14px;font-weight:600}.navbtn:last-child{color:var(--accent);border-color:var(--accent)}.navbtn:disabled{opacity:.4}.gesture{color:var(--quiet);letter-spacing:.06em;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;font-size:11px;display:flex}.gesture button{min-height:32px;color:var(--quiet);padding:4px 8px;font-size:11px;text-decoration:underline}.banner{padding:8px var(--pad-x);background:var(--accent-soft);color:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;font-size:13px;line-height:1.5;display:flex}.banner.warn{background:var(--warn-bg);color:var(--warn)}.banner .actions{flex:none;gap:4px;display:flex}.banner button{min-height:36px;color:var(--accent);padding:6px 10px;font-size:13px;font-weight:600}.banner.warn button{color:inherit}.toast{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0));background:var(--ink);color:var(--paper);z-index:50;pointer-events:none;border-radius:10px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;position:fixed;transform:translate(-50%)}dialog.sheet{background:var(--paper);color:var(--ink);width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100vh;border:0;flex-direction:column;max-height:100dvh;margin:0;padding:0;display:none}dialog.sheet[open]{display:flex}dialog.sheet::backdrop{background:#00000059}@media (min-width:600px){dialog.sheet{border:1px solid var(--line);border-radius:16px;width:min(520px,100vw);max-width:520px;height:min(90vh,900px);max-height:90vh;margin:auto}}.sheet-head{padding:calc(10px + env(safe-area-inset-top,0)) calc(var(--pad-x) - 8px) 8px var(--pad-x);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-head h2{margin:0;font-size:17px;font-weight:700}.sheet-head button{color:var(--accent);font-size:15px;font-weight:600}.sheet-body{-webkit-overflow-scrolling:touch;min-height:0;padding:8px 0 calc(16px + env(safe-area-inset-bottom,0));flex:auto;overflow-y:auto}.pagelist{margin:0;padding:0;list-style:none}.pagerow{text-align:left;width:100%;padding:13px var(--pad-x);border-bottom:1px solid var(--line);border-radius:0;align-items:center;gap:12px;font-size:16px;line-height:1.5;display:flex}.pagerow .pn{min-width:3.2em;color:var(--quiet);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.pagerow .pt{flex:auto}.pagerow .ref{color:var(--quiet);border:1px solid var(--line);letter-spacing:.06em;border-radius:999px;flex:none;padding:0 8px;font-size:11px}.pagerow .cur{color:var(--accent-ink);background:var(--accent);letter-spacing:.06em;border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:700}.pagerow[aria-current=page]{color:var(--accent);background:var(--accent-soft);box-shadow:inset 4px 0 0 var(--accent);font-weight:700}.pagerow[aria-current=page] .pn{color:var(--accent)}.settings-section{padding:14px var(--pad-x) 6px;border-bottom:1px solid var(--line)}.settings-section:last-child{border-bottom:0}.settings-section h3{letter-spacing:.12em;color:var(--quiet);text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:600}.row{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:15px;display:flex}.row .row-label{flex:auto}.row .row-sub{color:var(--quiet);margin-top:2px;font-size:12px;line-height:1.5;display:block}.seg{border:1px solid var(--line);border-radius:10px;flex:none;gap:0;display:inline-flex;overflow:hidden}.seg button{border-right:1px solid var(--line);background:var(--paper);border-radius:0;min-width:52px;min-height:40px;padding:6px 10px;font-size:14px}.seg button:last-child{border-right:0}.seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);font-weight:700}.switch{background:var(--line);border-radius:999px;flex:none;width:52px;height:32px;min-height:32px;padding:0;transition:background .15s;position:relative}.switch:after{content:"";background:var(--paper);border-radius:50%;width:26px;height:26px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(20px)}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.status{color:var(--quiet);margin:2px 0 8px;font-size:13px;line-height:1.6}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.danger{color:var(--danger)}.btn{min-height:var(--tap);border:1px solid var(--line);background:var(--paper);border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:15px;font-weight:600;display:inline-flex}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.danger{color:var(--danger);border-color:var(--danger)}.btn.block{width:100%;margin:6px 0}.btn-row{flex-wrap:wrap;gap:8px;margin:6px 0 10px;display:flex}.btn-row .btn{flex:auto}details.help{margin:6px 0 10px;font-size:14px;line-height:1.7}details.help summary{cursor:pointer;color:var(--accent);min-height:var(--tap);align-items:center;font-weight:600;display:flex}details.help p,details.help li{color:var(--ink);margin:4px 0}details.help ol,details.help ul{padding-left:1.3em}.meta-table{color:var(--quiet);margin:0 0 8px;font-size:13px;line-height:1.7}.meta-table dt{float:left;clear:left;min-width:7em;font-weight:600}.meta-table dd{margin:0 0 0 7.5em}.editor{height:100vh;background:var(--paper);flex-direction:column;height:100dvh;display:flex}.editor-body{min-height:0;padding:8px var(--pad-x) calc(24px + env(safe-area-inset-bottom,0));flex:auto;overflow-y:auto}.field{margin:14px 0}.field label,.field .field-label{color:var(--quiet);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field input[type=text],.field input[type=number],.field textarea{width:100%;min-height:var(--tap);border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:10px 12px;font-size:16px;line-height:1.6}.field textarea{resize:vertical;min-height:88px}.field textarea.para{min-height:120px}.field .hint{color:var(--quiet);margin-top:4px;font-size:12px;line-height:1.6}.field .error{color:var(--danger);margin-top:4px;font-size:13px}.field .warning{color:var(--warn);background:var(--warn-bg);border-radius:8px;margin-top:6px;padding:6px 10px;font-size:13px;line-height:1.6}.list-item{align-items:flex-start;gap:6px;margin-bottom:8px;display:flex}.list-item .grow{flex:auto;min-width:0}.list-item .tools{flex-direction:column;flex:none;gap:2px;display:flex}.list-item .tools button{min-width:var(--tap);border:1px solid var(--line);background:var(--paper);border-radius:8px;min-height:40px;padding:4px;font-size:15px}.para-card{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin-bottom:12px;padding:12px}.para-card .para-head{color:var(--quiet);justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.para-card .para-head .tools{gap:4px;display:flex}.para-card .para-head .tools button{border:1px solid var(--line);border-radius:8px;min-width:40px;min-height:40px;padding:4px 8px;font-size:14px}.para-card .field{margin:8px 0}.preview{background:var(--soft);border-radius:8px;margin-top:6px;padding:8px 10px;font-size:15px;line-height:1.8}.preview strong{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.25em;font-weight:700}.check{min-height:var(--tap);align-items:center;gap:10px;font-size:15px;display:flex}.check input{width:22px;height:22px;accent-color:var(--accent)}.save-bar{padding:10px var(--pad-x) calc(10px + env(safe-area-inset-bottom,0));border-top:1px solid var(--line);background:var(--paper);flex-direction:column;flex:none;gap:8px;display:flex}.save-row{gap:8px;display:flex}.save-row .btn{flex:1 1 0;min-width:0;font-size:14px}.save-msg{padding:8px var(--pad-x);font-size:14px;line-height:1.6}.save-msg.ok{background:var(--ok-bg);color:var(--ok)}.save-msg.danger{background:var(--danger-bg);color:var(--danger)}.import-list{margin:8px 0;padding-left:1.2em;font-size:14px;line-height:1.7}.import-list.danger{color:var(--danger)}.import-list.warn{color:var(--warn)}.file-input{width:100%;margin:8px 0;font-size:15px;display:block}.loading{min-height:100vh;min-height:100dvh;color:var(--quiet);letter-spacing:.1em;justify-content:center;align-items:center;font-size:14px;display:flex}.editor .head-actions{gap:4px;display:flex}.editor .head-actions button{color:var(--accent);padding:8px 10px;font-size:15px;font-weight:600}.print-screen{height:100vh;background:var(--soft);height:100dvh;overflow-y:auto}.print-tools{background:var(--paper);border-bottom:1px solid var(--line)}.print-tools-body{padding:4px var(--pad-x) 10px;max-width:760px;margin:0 auto}.print-tools .print-lead{margin:8px 0;font-size:15px;line-height:1.7}.print-steps{color:var(--ink);margin:8px 0;padding-left:1.4em;font-size:14px;line-height:1.8}.print-steps strong{color:var(--accent)}.print-doc{--p-ink:#262e32;--p-quiet:#626d72;--p-line:#c9ccc8;--p-soft:#f1f2ee;--p-blue:#0057ff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--p-ink);box-sizing:border-box;-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact;background:#fff;width:100%;max-width:210mm;min-height:297mm;margin:16px auto 40px;padding:16mm 16mm 18mm;font-family:BIZ UDPGothic,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Noto Sans CJK JP,Yu Gothic,Meiryo,sans-serif;font-size:11pt;line-height:1.75;box-shadow:0 2px 14px #0000001f}@media (max-width:600px){.print-doc{padding:20px var(--pad-x) 32px;min-height:0;box-shadow:none;margin:0 0 32px}}.print-title{border-bottom:2px solid var(--p-ink);margin-bottom:10pt;padding-bottom:6pt}.print-title h1{letter-spacing:.02em;margin:0;font-size:18pt;font-weight:700}.print-meta{color:var(--p-quiet);margin:4pt 0 0;font-size:9pt}.print-page{border-top:1px solid var(--p-line);margin-top:8pt;padding-top:8pt}.print-page:first-of-type{border-top:none;margin-top:0}.print-lead-block{break-inside:avoid;page-break-inside:avoid;break-after:avoid;page-break-after:avoid}.print-head{break-after:avoid;page-break-after:avoid;align-items:baseline;gap:10pt;margin:0 0 4pt;font-size:13pt;font-weight:700;line-height:1.4;display:flex}.print-num{font-variant-numeric:tabular-nums;min-width:3.2em;color:var(--p-blue);flex:none}.print-ref{border:1px solid var(--p-quiet);color:var(--p-quiet);vertical-align:middle;border-radius:4pt;margin-left:8pt;padding:0 6pt;font-size:8.5pt;font-weight:600;display:inline-block}.print-cues{counter-reset:cue;flex-wrap:wrap;gap:4pt 14pt;margin:0 0 6pt;padding:0;font-size:10.5pt;font-weight:600;list-style:none;display:flex}.print-cues li{counter-increment:cue}.print-cues li:before{content:counter(cue, decimal-leading-zero) " ";color:var(--p-quiet);font-variant-numeric:tabular-nums;font-weight:500}.print-para{text-align:justify;orphans:3;widows:3;margin:0 0 6pt}.print-para:last-child{margin-bottom:0}.print-doc strong{color:var(--p-blue);font-weight:700}.print-quiet{color:var(--p-quiet);margin:0;font-size:10pt}.print-note{border-left:3px solid var(--p-line);background:var(--p-soft);color:var(--p-ink);break-inside:avoid;page-break-inside:avoid;margin:6pt 0 0;padding:5pt 8pt;font-size:10pt}.print-note-label{letter-spacing:.1em;color:var(--p-quiet);font-size:8pt;display:block}@media print{@page{size:A4 portrait;margin:16mm 16mm 18mm}html,body,#root{background:#fff!important;height:auto!important;min-height:0!important;overflow:visible!important}.no-print,.toast,.banner{display:none!important}.print-screen{background:#fff;height:auto;overflow:visible}.print-doc{max-width:none;min-height:0;box-shadow:none;margin:0;padding:0}}
