.r13-frame{max-width:1080px;margin:0 auto}.r13-box{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:20px}.r13-kicker{color:var(--ink-2);font:600 12px/16px var(--font-ui);letter-spacing:.05em;text-transform:uppercase;margin:0 0 6px}.r13-book{font:400 16px/26px var(--font-read);margin:0}.r13-here{font-family:var(--font-read);color:var(--ink)!important}.r13-foot{color:var(--ink-2);margin:6px 0 0;font-size:14px;line-height:20px}.r13-lens{width:100%;max-width:460px;height:auto;display:block}.r13-lens .axis{stroke:var(--ink-3);stroke-width:1px;stroke-dasharray:4 4}.r13-lens .glass{fill:#dfe7f5;stroke:var(--ink);stroke-width:2px}.r13-lens .radius{stroke:var(--ink-2);stroke-width:1.5px}.r13-lens .pt{fill:var(--ink)}.r13-lens .rays path{fill:none;stroke:#4a5bd4;stroke-width:1.8px}.r13-lens .focus{fill:var(--accent);stroke:var(--ink);stroke-width:1.5px}.r13-lens .dim{stroke:var(--ink);stroke-width:1px}.r13-lens .lbl{fill:var(--ink);font:italic 15px var(--font-read)}.r13-lens .lbl.hot{font-weight:700}.r13-lens .formula{fill:var(--ink);font:16px var(--font-read);text-anchor:middle}.r13-lens g,.r13-lens text{transition:opacity .35s}.r13-v1{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;display:grid}.r13-way{counter-reset:s;gap:4px;margin:0;padding:0;list-style:none;display:grid}.r13-way li{border-radius:10px}.r13-way li.is-open{background:var(--bg)}.r13-way button{width:100%;color:var(--ink-2);font:500 14.5px/20px var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:7px 10px;display:flex}.r13-way button b{border:1.5px solid var(--line-strong);width:22px;height:22px;font:700 11px/1 var(--font-ui);border-radius:50%;flex:none;place-items:center;display:inline-grid}.r13-way li.is-done button{color:var(--ink)}.r13-way li.is-done button b{border-color:var(--ink);background:var(--ink);color:var(--bg)}.r13-way li.is-open button{color:var(--ink);font-weight:700}.r13-way li.is-open button b{border-color:var(--ink);background:var(--accent);color:var(--ink)}.r13-way-body{padding:0 12px 10px 42px}.r13-way-body p{color:var(--ink-2);margin:0 0 4px;font-size:14px;line-height:20px}.r13-way-side{align-content:start;gap:14px;display:grid}.r13-v2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;display:grid}.r13-book.is-marked{border-left:3px solid var(--accent);background:var(--bg);padding:14px 16px}.r13-margin{gap:12px;margin:0;padding:0;list-style:none;display:grid}.r13-margin li{color:var(--ink-2);grid-template-columns:22px minmax(0,1fr);gap:10px;font-size:14px;line-height:20px;display:grid}.r13-margin b{background:var(--accent);width:22px;height:22px;color:var(--ink);font:700 11px/1 var(--font-ui);border-radius:50%;place-items:center;display:inline-grid}.r13-margin q{color:var(--ink);font:italic 15px/21px var(--font-read);quotes:none;margin-bottom:2px;display:block}.r13-v3{gap:10px;max-width:760px;display:grid}.r13-turn{border-radius:12px;padding:12px 16px}.r13-turn.is-writer{background:var(--bg);margin-right:18%}.r13-turn.is-checker{border:1.5px solid var(--ink);background:var(--surface);margin-left:18%}.r13-who{color:var(--ink-2);font:600 12px/16px var(--font-ui);text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px}.r13-said{font:400 16px/24px var(--font-read);margin:0}.r13-said.is-struck{color:var(--ink-2);-webkit-text-decoration:line-through #c0392b;text-decoration:line-through #c0392b}.r13-turn code{background:var(--bg);font:13px var(--font-mono);border-radius:6px;margin-top:8px;padding:3px 8px;display:inline-block}.r13-ok{background:var(--accent-soft);font:600 13px/18px var(--font-ui);border-radius:6px;margin-top:8px;padding:2px 8px;display:inline-block}.r13-v4{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.r13-col{background:var(--bg);border-radius:12px;padding:14px 16px}.r13-col.is-1{background:var(--accent-soft)}.r13-col.is-2{border:1.5px solid var(--ink);background:var(--surface)}.r13-col h4{font:700 16px/22px var(--font-ui);margin:0 0 8px}.r13-col ul{gap:6px;margin:0;padding-left:18px;font-size:14px;line-height:20px;display:grid}.r13-v4-example{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;padding-top:6px;display:grid}.r13-v4-example p{font:400 17px/26px var(--font-read);margin:0}.r13-v5{gap:12px;display:grid}.r13-part-head,.r13-part-foot{flex-wrap:wrap;align-items:baseline;gap:6px 16px;display:flex}.r13-part-head b{font:700 17px/22px var(--font-ui)}.r13-part-head span,.r13-part-foot span{color:var(--ink-2);font-size:14px}.r13-tracks{grid-template-columns:70px minmax(0,1fr);align-items:center;gap:10px 14px;display:grid}.r13-track-name{color:var(--ink-3);font:600 12px/16px var(--font-ui);text-transform:uppercase;letter-spacing:.05em}.r13-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.r13-track button{border:1px solid var(--line);background:var(--bg);color:var(--ink-2);font:400 14px/20px var(--font-read);text-align:left;cursor:pointer;border-radius:8px;padding:8px 10px}.r13-track button.is-on{border-color:var(--ink);background:var(--accent-soft);color:var(--ink)}.r13-wave{justify-content:space-between;align-items:center;gap:0;height:30px;display:flex}.r13-wave i{background:var(--line-strong);border-radius:2px;flex:none;width:3px;display:block}.r13-wave i.is-said{background:var(--ink)}.r13-draw{background:var(--bg);border-radius:10px;padding:8px;display:block}.r13-draw .r13-lens{max-width:420px;margin:0 auto}@media (max-width:820px){.r13-v1,.r13-v2,.r13-v4,.r13-v4-example,.r13-track{grid-template-columns:minmax(0,1fr)}.r13-turn.is-writer,.r13-turn.is-checker{margin:0}}
.r14-frame{max-width:1100px;margin:0 auto}.r14-box{border:1px solid var(--line);background:var(--bg);border-radius:16px;gap:16px;padding:20px;display:grid}.r14-sample{color:var(--ink-3);margin:8px 0 0;font-size:13px}.r14-page{box-shadow:0 1px 0 var(--line), 0 10px 24px -18px #3c280a73;background:#fbf8f1;border-radius:6px;margin:0;padding:16px 18px;position:relative;overflow:hidden}.r14-page figcaption{color:var(--ink-3);font:600 11px/14px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.r14-page p{font:400 14.5px/23px var(--font-read);color:var(--ink-2);margin:0}.r14-page span{border-radius:3px;transition:background .3s,color .3s}.r14-page .is-checked-now{background:var(--accent);color:var(--ink)}.r14-page .is-matched{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.r14-scan{background:linear-gradient(90deg,#0000,#4a5bd4,#0000);height:3px;position:absolute;left:0;right:0;box-shadow:0 0 12px 2px #4a5bd473}.r14-workers{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.r14-workers li{background:var(--surface);color:var(--ink-3);font:600 12px/15px var(--font-ui);text-align:center;border-radius:10px;justify-items:center;gap:6px;padding:10px 4px;transition:background .25s,color .25s;display:grid}.r14-workers i{border:2px solid var(--line-strong);border-radius:50%;width:12px;height:12px}.r14-workers li.is-busy{background:var(--accent);color:var(--ink)}.r14-workers li.is-busy i{border-color:var(--ink);border-top-color:#0000;animation:.8s linear infinite r14-spin}.r14-workers li.is-done{color:var(--ink)}.r14-workers li.is-done i{border-color:var(--ink);background:var(--ink)}.r14-workers.is-compact{grid-template-columns:repeat(7,minmax(0,1fr))}.r14-workers.is-compact li{padding:7px 3px;font-size:11px}@keyframes r14-spin{to{transform:rotate(360deg)}}.r14-stage{background:var(--surface);border-radius:10px;padding:10px;position:relative}.r14-stage.is-big{padding:14px}.r14-stage .r13-lens{margin:0 auto}.r14-lines{gap:6px;display:grid}.r14-line{min-height:24px;font:400 16px/24px var(--font-read);color:var(--ink-2);border-radius:8px;margin:0;padding:4px 30px 4px 8px;transition:background .25s;position:relative}.r14-line.is-empty{background:repeating-linear-gradient(90deg, var(--line) 0 30px, transparent 30px 36px);background-position:0 60%;background-repeat:no-repeat;background-size:100% 2px}.r14-line span.is-untyped{visibility:hidden}.r14-line.is-checking{background:var(--accent-soft)}.r14-line.is-now{background:var(--surface);color:var(--ink-3)}.r14-line span.is-lit{color:var(--ink);background:linear-gradient(transparent 62%, var(--accent) 62%)}.r14-tick{background:var(--ink);width:18px;height:18px;color:var(--bg);font:700 11px/1 var(--font-ui);border-radius:50%;place-items:center;font-style:normal;display:grid;position:absolute;top:6px;right:8px}.r14-wave{justify-content:space-between;align-items:center;gap:0;height:30px;display:flex}.r14-wave i{background:var(--line-strong);border-radius:2px;flex:none;width:3px;transition:height .2s;display:block}.r14-wave i.is-heard{background:var(--ink)}.r14-badge{background:var(--ink);color:var(--bg);font:600 12px/18px var(--font-ui);border-radius:6px;padding:2px 8px;font-style:normal;position:absolute;bottom:10px;right:10px}.r14-eye{font-size:22px;font-style:normal;animation:.8s ease-in-out infinite alternate r14-look;position:absolute;top:10px;right:12px}@keyframes r14-look{0%{transform:translate(-30px)}to{transform:translate(0)}}.r14-status{min-width:15em;color:var(--ink-2);font:600 13px/18px var(--font-ui);text-align:right;white-space:nowrap;display:inline-block}.r14-status.is-playing{color:var(--ink)}.r14-controls{flex-wrap:wrap;align-items:flex-start;gap:12px 24px;display:flex}.r14-ctl{gap:6px;display:grid}.r14-ctl>span{color:var(--ink-3);font:600 11px/14px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}.r14-ctl small{color:var(--ink-2);font-size:13px}.r14-dots,.r14-chips{flex-wrap:wrap;gap:6px;display:flex}.r14-dots button{border:1.5px solid var(--line-strong);background:var(--surface);width:32px;height:32px;color:var(--ink-2);font:700 13px/1 var(--font-ui);cursor:pointer;border-radius:50%}.r14-chips button{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font:600 13px/18px var(--font-ui);cursor:pointer;border-radius:8px;padding:6px 12px}.r14-dots button.is-on,.r14-chips button.is-on{border-color:var(--ink);background:var(--accent);color:var(--ink)}.r14-belt{grid-template-columns:minmax(0,.8fr) auto minmax(0,1.4fr);align-items:center;gap:14px;display:grid}.r14-arrow{font:700 26px/1 var(--font-ui)}.r14-out{background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;gap:10px;padding:14px;display:grid}.r14-out-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px;display:flex}.r14-out-head b{font:700 16px/22px var(--font-ui)}.r14-out-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;display:grid}.r14-out .r14-stage{background:var(--bg)}.r14-bench{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:18px;display:grid}.r14-card{background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;gap:10px;padding:14px;display:grid}.r14-card .r14-stage{background:var(--bg)}.r14-card-foot{position:relative}.r14-card-foot .r14-badge{bottom:-2px}.r14-threads{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);align-items:stretch;display:grid}.r14-book-lines{gap:6px;margin:0;padding:0;list-style:none;display:grid}.r14-book-lines li{min-height:64px;color:var(--ink-2);font:400 14.5px/21px var(--font-read);background:#fbf8f1;border-radius:8px;align-items:center;padding:8px 12px;transition:background .3s;display:flex}.r14-book-lines li.is-now{background:var(--accent);color:var(--ink)}.r14-book-lines li.is-matched{color:var(--ink);box-shadow:inset 3px 0 0 var(--accent)}.r14-threads .r14-lines{gap:6px}.r14-threads .r14-line{background:var(--surface);flex-wrap:wrap;align-items:center;min-height:64px;display:flex}.r14-thread-svg{width:60px;height:100%}.r14-thread-svg path{fill:none;stroke-width:2.5px}.r14-thread-svg .is-now{stroke:var(--accent);stroke-dasharray:4 4}.r14-thread-svg .is-ok{stroke:var(--ink)}.r14-v3-foot{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:18px;display:grid}.r14-v3-side{gap:12px;display:grid}.r14-player{background:var(--surface);box-shadow:var(--shadow-card);border-radius:14px;gap:10px;padding:14px;display:grid}.r14-player-top{justify-content:space-between;align-items:center;display:flex}.r14-player-top b{font:700 16px/22px var(--font-ui)}.r14-toggle{color:var(--ink-2);font:600 13px/18px var(--font-ui);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.r14-toggle input{opacity:0;width:1px;height:1px;position:absolute}.r14-toggle i{background:var(--line-strong);border-radius:20px;width:34px;height:20px;transition:background .2s;position:relative}.r14-toggle i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px}.r14-toggle input:checked+i{background:var(--ink)}.r14-toggle input:checked+i:after{transform:translate(14px)}.r14-player .r14-stage{background:var(--bg)}.r14-caption{position:relative}.r14-bar{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;display:grid;position:relative}.r14-play{background:var(--accent);width:34px;height:34px;font:700 12px/1 var(--font-ui);border-radius:50%;place-items:center;display:grid}.r14-pin{z-index:2;border:1.5px dashed var(--ink-2);background:var(--surface);color:var(--ink-2);font:600 12px/16px var(--font-ui);white-space:nowrap;border-radius:8px;padding:3px 9px;font-style:normal;position:absolute}.r14-pin.is-ok{border:1.5px solid var(--ink);background:var(--ink);color:var(--bg)}.r14-pin.p1{top:10px;left:10px}.r14-pin.p2{top:10px;right:10px}.r14-pin.p3,.r14-pin.p4{top:-14px;right:0}.r14-v5{grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);align-items:start}.r14-desk{gap:18px;display:grid}.r14-desk .r14-controls{flex-direction:column}.r14-desk .r14-dots button{width:40px;height:40px;font-size:15px}.r14-desk .r14-workers{grid-template-columns:minmax(0,1fr);gap:4px}.r14-desk .r14-workers li{text-align:left;justify-items:start;gap:10px;padding:6px 10px;display:flex}@media (max-width:860px){.r14-belt,.r14-out-body,.r14-bench,.r14-v3-foot,.r14-v5{grid-template-columns:minmax(0,1fr)}.r14-arrow{justify-self:center;transform:rotate(90deg)}.r14-workers{grid-template-columns:repeat(4,minmax(0,1fr))}.r14-threads{grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.r14-workers li.is-busy i,.r14-eye{animation:none}}
