:root{--surface:#e6e9ef;--canvas:#eff1f5;--fg:#4c4f69;--muted:#6c6f85;--accent:#1e66f5;--line:#ccd0da;font:16px/1.5 system-ui,sans-serif;color:var(--fg);background:var(--canvas)}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,textarea{font:inherit}
header{align-items:center;display:flex;padding:1rem 1.25rem;position:relative;z-index:2}
header strong{letter-spacing:-.04em}#infer{color:var(--muted);font-size:.78rem;margin-left:auto}
#loadbox{display:grid;gap:.2rem;margin-left:auto;width:min(18rem,58vw)}#loadbox[hidden]{display:none}#load{accent-color:var(--accent);height:.35rem;width:100%}
#canvas{min-height:100vh;padding:5rem 1.25rem 14rem}
.dock{bottom:1rem;left:50%;position:fixed;transform:translateX(-50%);width:min(42rem,calc(100vw - 2rem));z-index:10}
.face{background:color-mix(in oklch,var(--surface) 94%,var(--accent) 6%);border:1px solid color-mix(in oklch,var(--line) 78%,var(--accent) 22%);border-bottom:0;border-radius:18px 18px 0 0;box-shadow:0 10px 32px color-mix(in oklch,var(--fg) 10%,transparent);display:grid;grid-template-rows:auto minmax(1.6em,auto);padding:1rem 1.15rem;position:relative;row-gap:.45rem;white-space:pre-wrap}
.face[hidden],.face:not(:has(p:not(:empty))){display:none}
.face p{margin:0;width:fit-content}#prompt{background:color-mix(in oklch,var(--accent) 14%,var(--surface));border:1px solid color-mix(in oklch,var(--accent) 28%,transparent);border-radius:12px 12px 4px 12px;justify-self:end;max-width:85%;padding:.65rem .85rem}#prompt:empty{display:none}
#response{font:500 .93rem/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;max-width:92%;min-height:1.6em;padding:.1rem 0}
.omnibar{align-items:center;background:color-mix(in oklch,var(--surface) 94%,var(--accent) 6%);border:1px solid color-mix(in oklch,var(--line) 78%,var(--accent) 22%);border-radius:0 0 6px 18px;display:flex;padding:.3rem}
.omnibar textarea{background:transparent;border:0;color:var(--fg);field-sizing:content;flex:1;max-height:8rem;min-width:0;outline:0;overflow-y:auto;padding:.45rem .8rem;resize:none}.menu,.undo{background:transparent;border:0;color:var(--accent);cursor:pointer;font-size:1.4rem;padding:.3rem .65rem}.undo{font-size:1.15rem}
[aria-busy=true]{opacity:.65}
