:root{color:#17201a;background:#f6f7f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}.shell{width:min(1100px,calc(100% - 32px));margin:0 auto;padding:32px 0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.eyebrow{margin:0 0 6px;color:#51615a;font-size:.82rem;font-weight:700;text-transform:uppercase}h1{margin:0;font-size:clamp(2rem,6vw,4.5rem);line-height:.95;letter-spacing:0}.iconButton{display:grid;width:42px;height:42px;place-items:center;border:1px solid #c8d0c7;border-radius:8px;color:#17201a;background:#fff;cursor:pointer}.iconButton:disabled{cursor:wait;opacity:.6}.error{margin-bottom:18px;padding:12px 14px;border:1px solid #d7785f;border-radius:8px;color:#7d2715;background:#fff3ef}.statusGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.panel{display:flex;gap:13px;min-height:112px;padding:18px;border:1px solid #d8ded5;border-radius:8px;background:#fff}.panel svg{flex:0 0 auto;color:#227c56}.panel span,.composer label{display:block;margin-bottom:7px;color:#51615a;font-size:.82rem;font-weight:700;text-transform:uppercase}.panel strong{display:block;margin-bottom:5px;font-size:1.18rem}.panel small{overflow-wrap:anywhere;color:#607169}.workspace{display:grid;gap:16px;padding:18px;border:1px solid #d8ded5;border-radius:8px;background:#fff}.composer{display:grid;gap:8px}.inputRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}input{min-width:0;height:44px;border:1px solid #c8d0c7;border-radius:8px;padding:0 12px;color:#17201a;background:#fbfcf9}.inputRow button{display:inline-flex;align-items:center;gap:8px;height:44px;border:0;border-radius:8px;padding:0 16px;color:#fff;background:#227c56;cursor:pointer}.inputRow button:disabled{cursor:not-allowed;opacity:.55}.messageList{display:grid;gap:10px}.message{display:grid;gap:6px;padding:12px 14px;border:1px solid #e3e8df;border-radius:8px;background:#f9faf7}.message p{margin:0}.message time{color:#607169;font-size:.86rem}@media (max-width: 760px){.shell{width:min(100% - 24px,1100px);padding-top:22px}.topbar{align-items:flex-start}.statusGrid,.inputRow{grid-template-columns:1fr}.inputRow button{justify-content:center;width:100%}}
