:root{--pine-bg:var(--tg-theme-bg-color,#0e1a14);--pine-fg:var(--tg-theme-text-color,#eaf3ee);--pine-muted:var(--tg-theme-hint-color,#8aa79a);--pine-accent:#3fa66a;--pine-bubble-a:#ffffff0f;--pine-bubble-u:#2f7a4e}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--pine-bg);color:var(--pine-fg);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.screen{flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.tree-bg{opacity:.04;pointer-events:none;background-image:url(/pine-mark-white.png);background-position:50% 30%;background-repeat:no-repeat;background-size:min(70vw,320px);position:absolute;inset:0}.topbar{z-index:1;border-bottom:1px solid #ffffff12;align-items:baseline;gap:8px;padding:14px 18px;display:flex;position:relative}.brand-sm{font-size:20px;font-weight:700}.with{color:var(--pine-muted);font-size:14px}.content{z-index:1;text-align:center;margin:auto;padding:24px;position:relative}.brand{margin:0 0 8px;font-size:52px;font-weight:700}.tagline{color:var(--pine-muted);margin:0;font-size:16px}.chat{z-index:1;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.messages{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;word-wrap:break-word;border-radius:16px;max-width:82%;padding:10px 14px;font-size:15px;line-height:1.4}.bubble.assistant{background:var(--pine-bubble-a);border-bottom-left-radius:4px;align-self:flex-start}.bubble.user{background:var(--pine-bubble-u);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.bubble.typing{color:var(--pine-muted);font-style:italic}.composer{z-index:1;background:var(--pine-bg);border-top:1px solid #ffffff12;gap:8px;padding:10px 12px;display:flex;position:relative}.composer textarea{resize:none;max-height:120px;color:var(--pine-fg);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:20px;outline:none;flex:1;padding:11px 14px;font-family:inherit;font-size:15px}.composer textarea:disabled{opacity:.6}.composer button{background:var(--pine-accent);color:#fff;cursor:pointer;border:none;border-radius:50%;width:44px;font-size:18px}.composer button:disabled{opacity:.4;cursor:default}
