:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--desk:#e9dcc2;--surface:#fbf4e6;--raised:#fffaf0;--paper:#fbf4e6;--paper-2:#f3e8d2;--ink:#231d29;--ink-2:#5a4a66;--hair:#e2d3bd;--rule:#d8c296;--accent:#982e50;--accent-seed:#c85a78;--accent-soft:#fee3e8;--on-accent:#fffaf0;--focus:#4b2a63;--ghost:#4b2a6366;--shadow-rest:0 1px 2px #231d2929;--shadow-lift:0 8px 16px #231d293d;--ease-out:cubic-bezier(.22, .61, .36, 1);--font-ui:"Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-head:"Fraunces", Georgia, "Times New Roman", serif}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--desk);color:var(--ink);font:16px/1.5 var(--font-ui);-webkit-text-size-adjust:100%}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.demo{grid-template-rows:auto 1fr auto;min-height:100vh;display:grid}.boot-error{border:2px solid var(--accent);background:var(--raised);border-radius:12px;margin:2rem;padding:1rem 1.25rem}.top{background:var(--raised);border-bottom:1px solid var(--hair);flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 20px;display:flex}.brand{min-width:200px;margin-right:auto}.brand__title{font:600 1.35rem/1.2 var(--font-head);margin:0}.brand__sub{color:var(--ink-2);margin:0;font-size:.85rem}.tools{flex-wrap:wrap;gap:6px;display:flex}.settings{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.field{align-items:center;gap:6px;display:inline-flex}.field__label{color:var(--ink-2);font-size:.85rem}select,.book__search,.ribbon__name-input{border:1px solid var(--rule);background:var(--raised);border-radius:10px;min-height:40px;padding:4px 10px}.switch{cursor:pointer;align-items:center;gap:8px;min-height:40px;display:inline-flex}.switch input{width:20px;height:20px;accent-color:var(--accent)}.icon{flex:none;place-items:center;width:20px;height:20px;display:inline-grid}.icon svg{width:100%;height:100%;display:block}.btn{border:1px solid var(--rule);background:var(--raised);min-height:40px;color:var(--ink);cursor:pointer;transition:background .12s var(--ease-out), border-color .12s var(--ease-out);border-radius:10px;align-items:center;gap:7px;padding:6px 13px;display:inline-flex}.btn:hover:not(:disabled){background:var(--paper-2)}.btn:disabled{opacity:.45;cursor:default}.btn--tool{min-height:44px}.btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn--small{min-height:36px;padding:3px 10px;font-size:.92rem}.btn--soft{background:var(--paper-2)}.btn--quiet{color:var(--ink-2);background:0 0;border-color:#0000}.btn--menu{border-color:#0000;justify-content:flex-start;width:100%}summary.btn{list-style:none}summary.btn::-webkit-details-marker{display:none}.menu{position:relative}.menu__list--wide{gap:8px;min-width:260px;display:grid}.menu__list--wide .field{grid-template-columns:6.5rem 1fr;display:grid}.menu__list{z-index:20;border:1px solid var(--rule);background:var(--raised);min-width:220px;box-shadow:var(--shadow-lift);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 4px);right:0}.seg{border:1px solid var(--rule);background:var(--raised);cursor:pointer;border-radius:8px;min-width:40px;min-height:36px;padding:3px 10px}.seg[aria-checked=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.grid{grid-template-columns:340px minmax(0,1fr) 320px;align-items:start;gap:16px;padding:16px 20px;display:grid}.left,.right{grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;min-width:0;max-height:calc(100vh - 24px);display:grid;position:sticky;top:12px;overflow:auto}.panel{border:1px solid var(--hair);background:var(--raised);border-radius:16px;min-width:0;padding:12px 14px}.panel__title{font:600 1.05rem/1.3 var(--font-head);cursor:default;margin:0 0 8px}summary.panel__title{cursor:pointer}.panel__hint{color:var(--ink-2);margin:8px 0 0;font-size:.86rem}.book{border:1px solid var(--hair);background:var(--raised);border-radius:16px;overflow:hidden}.book__tabs{background:var(--paper-2);border-bottom:1px solid var(--hair);display:flex}.book__tab{cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex-direction:column;flex:1;align-items:center;gap:2px;min-height:56px;padding:6px 4px;font-size:.86rem;display:inline-flex}.book__tab[aria-selected=true]{background:var(--raised);border-bottom-color:var(--accent);font-weight:600}.book__panel{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;display:grid}.book__panel>*{min-width:0}.book__panel[hidden]{display:none}.book__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.book__row--find{flex-wrap:nowrap}.book__row--find .book__search,.book__row--find select{flex:50%;min-width:0}.book__label{color:var(--ink-2);min-width:2.6rem;font-size:.85rem}.book__hint{color:var(--ink-2);margin:0;font-size:.86rem}.book__group{font:600 .82rem/1.3 var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin:4px 0 0}.book__picked{background:var(--accent-soft);color:var(--accent);border-radius:10px;margin:0;padding:6px 10px;font-size:.88rem;display:none}.book__picked.is-shown{display:block}.book__grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;max-height:min(52vh,460px);padding:2px;display:grid;overflow:auto}.book__cell{position:relative}.book__item{aspect-ratio:1;border:1px solid var(--hair);background:var(--surface);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;padding:0;display:block;position:relative}.book__item:hover{background:var(--paper-2)}.book__item img{object-fit:contain;pointer-events:none;width:calc(100% - 14px);height:calc(100% - 14px);position:absolute;inset:7px}.book__cell.is-picked .book__item{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft), var(--shadow-rest);background:var(--accent-soft)}.book__heart{width:28px;height:28px;color:var(--ink-2);cursor:pointer;opacity:.55;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:1px;right:1px}.book__cell:hover .book__heart,.book__heart[aria-pressed=true],.book__heart:focus-visible{opacity:1}.book__heart[aria-pressed=true]{color:var(--accent)}.book__heart .icon{width:16px;height:16px}.book__empty{color:var(--ink-2);text-align:center;margin:0}.book__rolls{gap:6px;max-height:min(50vh,440px);padding:2px;display:grid;overflow:auto}.book__rolllist{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.roll{border:1px solid var(--hair);background:var(--surface);cursor:pointer;text-align:left;border-radius:10px;gap:3px;padding:6px;display:grid}.roll[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.roll__swatch{height:26px;display:flex;overflow:hidden}.roll__mid{background-repeat:repeat-x;flex:1}.roll__end{flex:none;display:block}.roll__name{color:var(--ink-2);font-size:.8rem;line-height:1.25}.book__cliplist{flex-wrap:wrap;gap:6px;max-height:min(44vh,380px);display:flex;overflow:auto}.clipstyle{border:1px solid var(--hair);background:var(--surface);cursor:pointer;border-radius:10px;place-items:center;min-width:44px;min-height:64px;padding:4px 6px;display:grid}.clipstyle[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.stage{justify-items:center;gap:10px;min-width:0;display:grid;position:relative}.hintbar{z-index:6;border:1px solid var(--accent);background:var(--accent-soft);width:max-content;max-width:min(94%,520px);color:var(--accent);box-shadow:var(--shadow-lift);border-radius:12px;align-items:center;gap:12px;padding:6px 12px;font-size:.92rem;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}.hintbar[hidden]{display:none}.desk{background:radial-gradient(circle at 18% 12%,#ffffff59,#0000 55%),linear-gradient(135deg,#e5d6b8,#dccca9);border-radius:20px;place-items:center;max-width:100%;padding:24px 28px;display:grid;overflow:visible;box-shadow:inset 0 0 0 1px #231d2914,inset 0 2px 8px #231d291a}.desk__sheet{place-items:center;display:grid}.pagenav{align-items:center;gap:12px;display:flex}.pagenav__label{text-align:center;min-width:7.5rem;color:var(--ink-2)}.sheet{width:var(--sheet-w);height:var(--sheet-h);flex:none;position:relative}.sheet__paper{background-color:#fffaf0;border-radius:3px;position:absolute;inset:0;box-shadow:inset 0 1px #fffc,0 2px 3px #231d2924,0 14px 30px #231d2933}.paper--plain{background-image:radial-gradient(at 15% 8%,#ffffffd9,#0000 60%)}.paper--lined{background-image:linear-gradient(to right, transparent calc(11% - 1px), #c85a7866 calc(11% - 1px), #c85a7866 11%, transparent 11%), repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--sheet-h) / 30 - 1px), #6e8caf66 calc(var(--sheet-h) / 30 - 1px), #6e8caf66 calc(var(--sheet-h) / 30));background-position:0 0, 0 calc(var(--sheet-h) / 12)}.paper--dotted{background-image:radial-gradient(circle,#5a4a6661 .9px,#0000 1.4px);background-size:calc(var(--sheet-w) / 28) calc(var(--sheet-w) / 28);background-position:calc(var(--sheet-w) / 56) calc(var(--sheet-w) / 56)}.paper--grid{background-image:linear-gradient(90deg,#6e8caf4d 1px,#0000 1px),linear-gradient(#6e8caf4d 1px,#0000 1px);background-size:calc(var(--sheet-w) / 28) calc(var(--sheet-w) / 28)}.sheet__layers{left:calc(var(--sheet-pad) * -1);top:calc(var(--sheet-pad) * -1);width:calc(var(--sheet-w) + var(--sheet-pad) * 2);height:calc(var(--sheet-h) + var(--sheet-pad) * 2);pointer-events:none;position:absolute}.sheet__under,.sheet__over,.sheet__ink,.sheet__wet{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.sheet__chrome,.sheet__overlay{pointer-events:none;position:absolute;inset:0}.sheet__input{left:calc(var(--sheet-pad) * -1);top:calc(var(--sheet-pad) * -1);width:calc(var(--sheet-w) + var(--sheet-pad) * 2);height:calc(var(--sheet-h) + var(--sheet-pad) * 2);touch-action:none;cursor:default;outline-offset:-3px;-webkit-user-select:none;user-select:none;position:absolute}.sheet__input.is-over-object{cursor:grab}.sheet[data-tool=washi] .sheet__input,.sheet[data-tool=clip] .sheet__input,.sheet[data-tool=pen] .sheet__input{cursor:crosshair}.sheet.is-armed .sheet__input{cursor:copy}.sheet__sel{pointer-events:none;outline:2px solid var(--accent);outline-offset:3px;border-radius:4px;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #fffaf0e6}.sheet__sel[hidden]{display:none}.sticker-proxy{pointer-events:none;transform-origin:50%;will-change:transform;position:absolute;top:0;left:0}.sticker-proxy__body{transform-origin:50%;position:absolute;inset:0}.sticker-proxy__art,.sticker-proxy__shadow{-webkit-user-select:none;user-select:none;display:block;position:absolute;top:0;left:0}.sticker-proxy__shadow{filter:drop-shadow(0 8px 10px #231d2957);opacity:0}.sticker-ghost{pointer-events:none;transform-origin:50%;border:2px dashed var(--ghost);background:#4b2a630d;border-radius:10px;position:absolute;top:0;left:0}.armed-ghost{pointer-events:none;opacity:.6;filter:drop-shadow(0 6px 8px #231d2940);position:absolute;top:0;left:0}.tool-preview{pointer-events:none;position:absolute;top:0;left:0}.washi-preview{transform-origin:0;opacity:.92}.washi-preview__end{height:100%;width:var(--end-w);display:block;position:absolute;top:0}.washi-preview__end.is-left{left:0}.washi-preview__end.is-right{right:0}.washi-preview__mid{left:var(--end-w);right:var(--end-w);background-repeat:repeat-x;height:100%;position:absolute;top:0}.clip-preview{opacity:.92}.clip-preview.is-loose{opacity:.5}.carry-proxy{pointer-events:none;transform-origin:50%;position:absolute;top:0;left:0}.carry-proxy--clip{transform-origin:0 0}.carry-proxy img{display:block;position:absolute;top:0;left:0}.carry-proxy--clip img{filter:drop-shadow(0 6px 6px #231d294d)}.carry-proxy--clip.is-gripping img{filter:drop-shadow(0 2px 3px #231d294d)}.washi-handles{pointer-events:none;position:absolute;inset:0}.pull-handle{border:2px solid var(--accent);background:var(--raised);width:18px;height:18px;box-shadow:var(--shadow-rest);border-radius:50%;position:absolute;top:-9px;left:-9px}.pull-handle--edge{border-radius:5px}.ribbon__body{gap:8px;display:grid}.ribbon__name{font:600 1rem/1.3 var(--font-head);margin:0}.ribbon__meta{color:var(--ink-2);margin:0;font-size:.86rem}.ribbon__actions,.ribbon__row{flex-wrap:wrap;gap:6px;display:flex}.ribbon__name-input{width:100%}.ribbon__move summary{cursor:pointer;align-items:center;min-height:36px;display:flex}.ribbon__grid{grid-template-columns:repeat(3,1fr);gap:6px;padding-top:6px;display:grid}.stack__list{grid-template-columns:minmax(0,1fr);gap:1px;max-height:40vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.stack__head,.stack__ink{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);padding:6px 4px 2px;font-size:.78rem}.stack__ink{background:var(--paper-2);text-transform:none;letter-spacing:0;border-radius:8px;align-items:center;gap:8px;margin:4px 0;padding:4px 8px;font-size:.82rem;display:flex}.stack__band{text-transform:uppercase;letter-spacing:.04em;font-weight:600}.stack__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.stack__item{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:2px 8px;width:100%;min-height:32px;padding:3px 8px;display:flex}.stack__item:hover{background:var(--paper-2)}.stack__item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.stack__note{color:var(--ink-2);font-size:.78rem}.stack__empty{color:var(--ink-2);padding:4px 8px}.measures__list{grid-template-columns:auto 1fr;gap:4px 12px;margin:8px 0 0;font-size:.86rem;display:grid}.measures__list dt{color:var(--ink-2)}.measures__list dd{margin:0}.measures__list dd.is-bad{color:var(--accent);font-weight:600}.status{border-top:1px solid var(--hair);background:var(--raised);align-items:center;gap:12px;min-height:48px;padding:8px 20px;display:flex}.status__text{flex:1;min-width:0;margin:0}.status__cue{background:var(--paper-2);min-width:7.5rem;color:var(--ink-2);opacity:.35;transition:opacity .2s var(--ease-out);border-radius:999px;padding:1px 10px;font:.78rem/1.6 ui-monospace,Courier New,monospace}.status__cue.is-on{opacity:1}.status__cue:empty{display:none}.status__icon{color:var(--ink-2)}html[data-calm="1"] *,html[data-calm="1"] :before,html[data-calm="1"] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}@media (max-width:1180px){.grid{grid-template-columns:minmax(0,1fr) 320px}.left{grid-area:2/1/auto/-1;max-height:none;position:static}}@media (max-width:860px){.grid{grid-template-columns:minmax(0,1fr);padding:10px 12px}.stage{order:1}.left{z-index:15;max-height:46vh;padding-bottom:env(safe-area-inset-bottom,0px);order:2;grid-row:auto;margin:0 -4px;position:sticky;top:auto;bottom:0}.right{order:3;max-height:none;position:static}.top{gap:6px 10px;padding:8px 12px}.brand{flex:1 0 100%;min-width:0}.brand__sub{display:none}.tools{flex:100%;gap:6px;min-width:0}.tools--history{flex:100%}.tools .btn{flex:auto;justify-content:center;min-width:0}.demo,.grid,.stage{min-width:0;max-width:100vw}.btn--tool{flex:none;padding:6px 10px}.desk{padding:14px 10px}}@media (max-width:560px){.top{gap:4px 6px;padding:6px 10px}.brand__title{font-size:1.1rem}.tools:not(.tools--history){flex-wrap:nowrap}.tools--history{flex-wrap:nowrap;flex:2 1 0}.top .menu{flex:1 1 0;min-width:0}.top .btn{text-align:center;flex-direction:column;flex:1 1 0;justify-content:center;gap:2px;min-width:0;min-height:52px;padding:5px 2px;font-size:.72rem;line-height:1.1}.top .menu>.btn{width:100%}}@media (pointer:coarse){.book__grid{max-height:none;display:flex;overflow:auto hidden}.book__cell{flex:none;width:84px}.book__item{touch-action:pan-x}}.layers{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;font-size:.78rem;display:flex}.layers__end{color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.layer{border:1px solid var(--rule);background:var(--surface);border-radius:999px;align-items:baseline;gap:4px;padding:2px 8px;display:inline-flex}.layer b{color:var(--ink-2);font-weight:600}.layer--ink{background:var(--ink);border-color:var(--ink);color:var(--raised)}.layer.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
