*{box-sizing:border-box}body{margin:0;background:#edf3f6;color:#18303a;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.app{max-width:740px;height:100dvh;min-height:480px;margin:auto;background:#fff;display:flex;flex-direction:column;box-shadow:0 8px 40px #153b4b15}header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e8eff1}.brand{display:flex;gap:11px;align-items:center}.logo{display:grid;place-items:center;width:40px;height:40px;background:#087d87;color:white;font-weight:800;border-radius:13px;font-size:23px}.brand strong,.brand small{display:block}.brand small{color:#71858c;font-size:12px;margin-top:2px}.badge{font-size:12px;color:#9b6e14;background:#fff7df;border-radius:20px;padding:6px 10px}.notice{text-align:center;background:#fff9e9;color:#806628;padding:8px 12px;font-size:12px}.messages{overflow-y:auto;flex:1;padding:26px 20px;display:flex;flex-direction:column;gap:12px}.intro{text-align:center;margin:10px auto 15px}.spark{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#e4f7f5;color:#087d87;font-size:25px}.intro h1{font-size:21px;margin:12px 0 5px}.intro p{font-size:14px;color:#74868c;margin:0}.bubble{max-width:88%;padding:13px 15px;line-height:1.65;font-size:14px;white-space:pre-wrap;border-radius:16px;overflow-wrap:anywhere}.bot{align-self:flex-start;background:#f0f6f6;border-bottom-left-radius:4px}.user{align-self:flex-end;background:#087d87;color:white;border-bottom-right-radius:4px}.suggestions{display:flex;flex-wrap:wrap;gap:8px}.suggestions button,.reply-button{border:1px solid #b7dcda;background:#fff;color:#08747d;border-radius:22px;padding:9px 13px;cursor:pointer;font:inherit;font-size:13px}.attachment{margin:0 16px 8px;padding:12px;background:#eaf8f6;border-radius:12px;position:relative;font-size:13px}.attachment p{margin:4px 26px 9px 0;color:#527278}.attach-button{display:inline-block;background:#087d87;color:white;padding:8px 12px;border-radius:9px;cursor:pointer}.cancel{position:absolute;right:10px;top:8px;background:none;border:0;font-size:22px;color:#537075;cursor:pointer}.composer{display:flex;gap:8px;margin:0 16px;padding:7px;border:1px solid #d5e4e5;border-radius:15px}.composer input{flex:1;min-width:0;padding:8px;border:0;outline:none;font:inherit}.composer button{width:40px;height:40px;border:0;border-radius:11px;background:#087d87;color:white;font-size:20px;cursor:pointer}footer{text-align:center;padding:12px 10px calc(12px + env(safe-area-inset-bottom));font-size:12px;color:#71858c}a{color:#087d87;font-weight:600}.sr{position:absolute;clip:rect(0,0,0,0)}button:focus-visible,a:focus-visible,input:focus-visible,.attach-button:focus-within{outline:3px solid #f3b94e;outline-offset:2px}
#file{position:absolute;width:1px;height:1px;opacity:0}#file:focus-visible+button,.attachment:focus-within{outline:2px solid #f3b94e}.admin{max-width:620px;margin:40px auto;background:white;border-radius:18px;padding:30px;box-shadow:0 8px 40px #153b4b15}.admin label{display:block;margin:16px 0}.admin input{display:block;width:100%;padding:12px;border:1px solid #c5d9db;border-radius:9px;margin-top:6px;font:inherit}.admin button{background:#087d87;color:white;border:0;padding:12px 20px;border-radius:10px;font:inherit;cursor:pointer}.admin p{color:#60757c}
