#nagataku-chat-bubble{
position:fixed;
bottom:20px;
right:20px;
width:60px;
height:60px;
background:#06c755;
color:white;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:26px;
cursor:pointer;
z-index:2147483647;
}

#nagataku-chat-box{
position:fixed;
bottom:90px;
right:20px;
width:320px;
height:420px;
background:white;
border-radius:10px;
box-shadow:0 0 10px rgba(0,0,0,0.2);
display:none;
flex-direction:column;
z-index:2147483647;
}

#nagataku-chat-box.open{
display:flex;
}

#nagataku-chat-header{
background:#06c755;
color:white;
padding:10px;
font-weight:bold;
}

#nagataku-chat-messages{
flex:1;
padding:10px;
overflow:auto;
font-size:14px;
display:flex;
flex-direction:column;
scroll-behavior:smooth;
}

#nagataku-chat-messages .message-row{
display:flex;
margin:6px 0;
}

#nagataku-chat-messages .message-row.user{
justify-content:flex-end;
}

#nagataku-chat-messages .message-row.ai{
justify-content:flex-start;
}

#nagataku-chat-messages .bubble{
position:relative;
max-width:80%;
padding:8px 12px;
border-radius:16px;
line-height:1.5;
word-break:break-word;
}

#nagataku-chat-messages .bubble.user{
background:#dcf8c6;
color:#000;
border-top-right-radius:6px;
}

#nagataku-chat-messages .bubble.ai{
background:#f1f1f1;
color:#000;
border-top-left-radius:6px;
}

#nagataku-chat-messages .bubble.user::after{
content:"";
position:absolute;
right:-6px;
bottom:0;
width:0;
height:0;
border-left:6px solid #dcf8c6;
border-top:6px solid transparent;
}

#nagataku-chat-messages .bubble.ai::after{
content:"";
position:absolute;
left:-6px;
bottom:0;
width:0;
height:0;
border-right:6px solid #f1f1f1;
border-top:6px solid transparent;
}

#nagataku-chat-messages .bubble.loading{
color:#888;
}

#nagataku-chat-messages .bubble.error{
background:#fee;
color:#900;
}
#nagataku-chat-input{
display:flex;
border-top:1px solid #ddd;
}

#nagataku-chat-input input{
flex:1;
border:none;
padding:10px;
}

#nagataku-chat-input button{
background:#06c755;
color:white;
border:none;
padding:10px 15px;
cursor:pointer;
}

.choice-row{
display:flex;
justify-content:flex-start;
margin:6px 0;
}
.choice-list{
display:flex;
flex-wrap:wrap;
gap:8px;
}
.choice-btn{
background:#fff;
border:1px solid #06c755;
color:#06c755;
border-radius:16px;
padding:6px 10px;
cursor:pointer;
font-size:12px;
}
.choice-btn:hover{
background:#06c755;
color:#fff;
}
