:root{--ink:#1d1a17;--paper:#fffcf6db;--line:#1d1a1724;--pink:#f06aa8;--blue:#58a8e8;--good:#4a9d5b;--warn:#d98b2b;color:var(--ink);font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif}html,body{background:#cfc6b8;height:100%;margin:0;overflow:hidden}#app canvas{touch-action:none;outline:none;display:block}#load{z-index:20;background:#e8e0d2;place-items:center;font-size:20px;display:grid;position:fixed;inset:0}#toolbar{z-index:5;flex-wrap:wrap;gap:6px;max-width:calc(100vw - 24px);display:flex;position:fixed;top:12px;left:12px}#toolbar button,#pad button{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;padding:7px 12px;font-size:13px}#toolbar button[aria-pressed=true]{background:var(--ink);color:#fff}#help{background:var(--paper);z-index:5;border-radius:8px;max-width:min(720px,100vw - 360px);padding:6px 10px;font-size:12px;position:fixed;bottom:12px;left:12px}#stats{background:var(--paper);z-index:5;border-radius:6px;padding:4px 8px;font:11px ui-monospace,monospace;position:fixed;bottom:12px;right:12px}#pad{z-index:5;grid-template-rows:repeat(2,44px);grid-template-columns:repeat(3,44px);gap:4px;display:none;position:fixed;bottom:48px;left:16px}#pad button{border-radius:10px;padding:0;font-size:16px}#pad [data-k=fwd]{grid-column:2}#pad [data-k=left]{grid-area:2/1}#pad [data-k=back]{grid-area:2/2}#pad [data-k=right]{grid-area:2/3}#overlay{pointer-events:none;z-index:4;position:fixed;inset:0;overflow:hidden}#overlay [hidden]{display:none!important}.ov-dog{will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.ov-dog .name{white-space:nowrap;letter-spacing:.02em;color:#fff;background:var(--pink);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700;position:absolute;bottom:0;left:0;transform:translate(-50%);box-shadow:0 1px 4px #0000002e}.ov-dog.blue .name{background:var(--blue)}.ov-dog .bubble{transform-origin:50% 100%;white-space:nowrap;background:var(--paper);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:2px solid var(--pink);border-radius:16px;align-items:center;gap:5px;padding:5px 11px;font-size:14px;font-weight:600;display:flex;position:absolute;bottom:24px;left:0;transform:translate(-50%);box-shadow:0 3px 12px #00000024}.ov-dog.blue .bubble{border-color:var(--blue)}.ov-dog .bubble:after{content:"";background:inherit;border-right:2px solid var(--pink);border-bottom:2px solid var(--pink);width:10px;height:10px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.ov-dog.blue .bubble:after{border-color:var(--blue)}.ov-dog .bubble .emo{font-size:17px;line-height:1}.ov-dog .bubble.pop{animation:.32s cubic-bezier(.3,1.6,.5,1) pop}@keyframes pop{0%{opacity:0;transform:translate(-50%)scale(.4)}to{opacity:1;transform:translate(-50%)scale(1)}}#overlay.no-labels .name,#overlay.no-labels .ov-edge{display:none}.ov-edge{pointer-events:auto;cursor:pointer;will-change:transform;font:inherit;color:#fff;background:var(--pink);border:0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 5px;font-size:12px;font-weight:700;display:flex;position:absolute;top:0;left:0;box-shadow:0 2px 10px #0003}.ov-edge.blue{background:var(--blue)}.ov-edge i{background:#ffffff47;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-style:normal;display:grid}.ov-heart{color:#ff4f8b;text-shadow:0 1px 3px #0003;opacity:0;font-size:22px;animation:1.4s ease-out forwards heart;position:absolute;transform:translate(-50%,-100%)}@keyframes heart{0%{opacity:0;transform:translate(-50%,-100%)scale(.5)}15%{opacity:1}to{opacity:0;transform:translate(-50%,-100%)translateY(-70px)scale(1.3)}}#feed{z-index:5;pointer-events:none;flex-direction:column;align-items:flex-start;gap:4px;max-width:min(420px,100vw - 24px);display:flex;position:fixed;bottom:46px;left:12px}.feed-line{pointer-events:auto;font:inherit;text-align:left;color:var(--ink);cursor:pointer;border:1px solid var(--line);background:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-left:4px solid #9c8f80;border-radius:10px;padding:5px 10px 5px 9px;font-size:13px;animation:.3s ease-out feed-in,1.5s ease-in 12.5s forwards feed-out}.feed-line:disabled{cursor:default}.feed-line.pink{border-left-color:var(--pink)}.feed-line.blue{border-left-color:var(--blue)}.feed-line.big{font-weight:700}@keyframes feed-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@keyframes feed-out{to{opacity:0}}body[data-mode=walk] #feed{bottom:150px}@media (max-width:640px){#help{max-width:calc(100vw - 24px)}#stats{display:none}body[data-mode=walk] #feed{bottom:170px}#feed{bottom:66px}.feed-line,.ov-dog .bubble{font-size:12px}}#playbar{z-index:5;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:fixed;bottom:40px;right:12px}#playbar .group{background:var(--paper);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;gap:4px;padding:4px;display:flex}#playbar .group[hidden]{display:none}#playbar button{font:inherit;min-width:36px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 10px;font-size:13px}#playbar [data-toy]{padding:0 6px;font-size:18px}#playbar button:hover{background:#7f7f7f24}#playbar button[aria-pressed=true]{background:var(--ink);color:var(--paper-solid,#fff)}@media (max-width:640px){#playbar{top:104px;bottom:auto;right:8px}#playbar button{min-width:32px;height:30px;font-size:12px}}#inspector{background:var(--paper);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);z-index:6;border-radius:14px;width:min(620px,100vw - 24px);max-height:calc(100vh - 110px);font-size:12px;position:fixed;top:56px;right:12px;overflow:auto;box-shadow:0 8px 30px #0000001f}#inspector header{border-bottom:1px solid var(--line);background:inherit;align-items:center;gap:10px;padding:10px 12px;display:flex;position:sticky;top:0}#inspector header span{color:#6b645c;flex:1}#inspector header button{cursor:pointer;color:var(--ink);background:0 0;border:0;font-size:18px}#inspector .cards{grid-template-columns:1fr 1fr;gap:10px;padding:10px;display:grid}@media (max-width:640px){#inspector .cards{grid-template-columns:1fr}}#inspector .card{border-top:4px solid var(--pink);background:#fff9;border-radius:10px;min-width:0;padding:8px 10px}#inspector .card.blue{border-top-color:var(--blue)}#inspector h3{margin:0 0 4px;font-size:15px}#inspector h3 small{color:#8a8178;font-weight:400}#inspector h4{text-transform:uppercase;letter-spacing:.04em;color:#7a7168;margin:8px 0 2px;font-size:11px}#inspector p{margin:2px 0}#inspector .doing b{font-size:13px}#inspector .doing span,#inspector .src,#inspector .raw{color:#6b645c}#inspector .tag{background:#1d1a1714;border-radius:6px;padding:0 6px;font-family:ui-monospace,monospace;font-size:10px;display:inline-block}#inspector .row{grid-template-columns:70px 1fr 26px;align-items:center;gap:6px;margin:2px 0;display:grid}#inspector .probs .row{grid-template-columns:110px 1fr 26px}#inspector .row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#inspector .row em{text-align:right;color:#6b645c;font-variant-numeric:tabular-nums;font-style:normal}#inspector .bar{background:#1d1a1714;border-radius:4px;height:7px;display:block;overflow:hidden}#inspector .bar b{background:#9c8f80;border-radius:4px;height:100%;display:block}#inspector .bar.hot b{background:var(--ink)}#inspector .bar.g b{background:var(--good)}#inspector .bar.r b{background:#c9544d}#inspector .bar.w b{background:var(--blue)}#inspector .cols{grid-template-columns:1fr 1fr;gap:0 10px;display:grid}#inspector .mem{color:#4a443e;margin:0;padding-left:18px}#inspector .mem .failed,#inspector .mem .interrupted{color:#a0968b}#inspector details{margin-top:8px}#inspector summary{cursor:pointer;font-weight:600}#inspector .traits label{grid-template-columns:90px 1fr 24px;align-items:center;gap:6px;display:grid}#inspector .traits input{width:100%}#inspector .traits em{text-align:right;font-style:normal}@media (prefers-color-scheme:dark){:root{--ink:#f3eee8;--paper:#1e1c1adb;--line:#ffffff24}#inspector .card{background:#00000040}#inspector header span,#inspector .doing span,#inspector .src,#inspector .raw,#inspector .row em,#inspector h4{color:#b5aca2}#inspector .mem{color:#d8d0c8}#inspector .bar{background:#ffffff1f}#toolbar button[aria-pressed=true],#playbar button[aria-pressed=true]{color:#1d1a17;background:#f3eee8}}
