:root{--walnut:#4a3427;--walnut-deep:#2f2119;--parchment:#f6efe3;--paper:#fffdf7;--ink:#2a2233;--muted:#6d6358;--rose:#c85a78;--sage:#9cc9a7;--line:#e6dccb;--good:#3c6648;--warn:#8a5a12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--parchment);color:var(--ink);font:15px/1.45 Segoe UI,system-ui,-apple-system,sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:#fff;border:1px solid #cdbfa8;border-radius:8px;min-height:36px;padding:6px 12px}button:hover:not(:disabled){background:#fbf4e8}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,.obj:focus-visible{outline-offset:2px;outline:3px solid #2f5d8f}button.primary{background:var(--rose);color:#fff;border-color:#982e50;padding:10px 18px;font-weight:600}button.primary:hover:not(:disabled){background:#b24a68}button.danger{color:#8f2721}button.link{color:#244a75;background:0 0;border:0;min-height:0;padding:0 4px;text-decoration:underline}input[type=text],input[type=search],select{background:#fff;border:1px solid #cdbfa8;border-radius:8px;min-height:36px;padding:6px 10px}input[type=color]{background:#fff;border:1px solid #cdbfa8;border-radius:8px;width:38px;height:36px;padding:2px}h1,h2{margin:0;font-family:Georgia,Times New Roman,serif}small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.55em;font-weight:400}.door{max-width:880px;margin:0 auto;padding:56px 20px}.door h1{color:var(--walnut);font-size:40px}.sub{color:var(--muted);margin:6px 0 28px}.doors{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.door-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;align-content:start;gap:12px;padding:22px;display:grid;box-shadow:0 2px #e3d7c2}.door-card.muted{color:var(--muted);background:#f2eadb}.door-card h2{font-size:22px}.door-card p{margin:0}.door-card label{gap:4px;display:grid}.masthead{background:var(--walnut);color:#fff6e6;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 20px;display:flex}.masthead h1{margin-right:8px;font-size:20px}.masthead small{color:#d9c7a6}.pill{background:#5b4435;border-radius:999px;padding:3px 12px;font-size:13px}.pill.good{color:var(--good);background:#e2efe5;font-weight:600}.nav{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.nav button{color:#fff6e6;background:#5b4435;border-color:#7a5d49}.nav button:hover:not(:disabled){background:#6b5242}.grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:20px;padding:20px;display:grid}@media (max-width:1000px){.grid{grid-template-columns:1fr}}.binder{gap:12px;display:grid}.toolbar{background:var(--paper);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.toolbar .tool[aria-pressed=true]{background:var(--walnut);color:#fff;border-color:var(--walnut-deep)}.toolbar .emoji{min-height:32px;padding:2px 6px;font-size:18px}.palette{gap:2px;display:inline-flex}.toolbar input[type=text]{width:130px}.frame{background:#6a4a38 linear-gradient(145deg,#7a5742,#5a3e2e);border-radius:18px;justify-items:center;gap:6px;padding:14px 18px 18px;display:grid;box-shadow:inset 0 0 0 2px #3d2a1f,0 6px 16px #3c281940}.middle{justify-content:center;align-items:flex-start;gap:0;width:100%;display:flex}.rings{z-index:2;gap:38px;margin-right:-10px;padding:30px 0;display:grid}.rings i{background:#3a2a20;border:5px solid #cbb676;border-radius:50%;width:26px;height:26px;display:block;box-shadow:0 1px 2px #0008}.stage{width:min(100%,400px)}.sheet{width:100%}.paper{aspect-ratio:148/210;background:var(--paper);touch-action:none;background-image:repeating-linear-gradient(#0000 0 27px,#ece3d2 27px 28px);border-radius:4px 10px 10px 4px;width:100%;position:relative;overflow:hidden;box-shadow:0 2px 6px #0004}.stage[data-tool=pen] .paper{cursor:crosshair}.stage[data-tool=sticker] .paper,.stage[data-tool=slip] .paper{cursor:copy}.stage[data-tool=select] .obj{cursor:grab}.stage[data-ribbon="1"] .paper:after{content:"";background:var(--rose);clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);width:22px;height:62px;position:absolute;top:0;right:14%}.ink,.objects{width:100%;height:100%;position:absolute;inset:0}.objects{pointer-events:none}.obj{pointer-events:auto;-webkit-user-select:none;user-select:none;line-height:1.1;position:absolute}.obj.sticker{transform-origin:50%;filter:drop-shadow(0 1px 1px #0005)}.obj.slip{background:#fff7c9;border:1px solid #e3d48a;padding:6px 8px;font:16px/1.25 Segoe Print,Bradley Hand,cursive;box-shadow:0 1px 2px #0003}.tabs{gap:4px;display:flex}.tabs.side{flex-direction:column;width:112px;margin-left:-2px;padding-top:14px}.tabs.top,.tabs.bottom{flex-wrap:wrap;justify-content:flex-start;width:min(100%,400px)}.tab{--tab:#8fc3e8;--tab-ink:#1d1a22;background:var(--tab);color:var(--tab-ink);text-overflow:ellipsis;white-space:nowrap;border:1px solid #0003;max-width:124px;min-height:30px;padding:4px 10px;font-size:13px;overflow:hidden}.tab.side{text-align:left;border-radius:0 10px 10px 0}.tab.top{border-radius:10px 10px 0 0}.tab.bottom{border-radius:0 0 10px 10px}.tab.on{font-weight:700;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #0006}.pager{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pager #pagenum{text-align:center;color:var(--muted);flex:200px}.note{z-index:20;color:#fff;opacity:0;pointer-events:none;background:#1d4a2c;border-radius:12px;align-items:center;gap:10px;max-width:min(92vw,640px);padding:10px 16px;transition:opacity .24s;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0005}.note.show{opacity:1;pointer-events:auto}.note button.link{color:#cfe8d6}.inspector{gap:12px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;gap:8px;padding:12px 14px;display:grid}.panel h2{color:var(--walnut);font-size:16px}.panel p{margin:0}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row input[type=text]{flex:110px;min-width:0}.hint{color:var(--muted);font-size:13px}.list{gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.list .empty{color:var(--muted)}.log{white-space:pre-wrap;color:#3d3550;max-height:200px;margin:0;font:12px/1.35 ui-monospace,Consolas,monospace;overflow:auto}
