.line-talk-room{max-width:640px;margin-left:auto;margin-right:auto;background-color:#fff;border:1px solid #d4af37;box-shadow:0 2px 8px #0000001f,0 4px 16px #00000014;overflow:hidden;border-radius:8px}.line-titlebar{display:flex;align-items:center;justify-content:space-between;height:32px;background:linear-gradient(180deg,gold,#d4af37);border-bottom:1px solid #d4af37;padding:0 .5rem;user-select:none}.line-titlebar-title{font-size:.75rem;color:navy;font-weight:600;letter-spacing:.5px}.line-titlebar-controls{display:flex;align-items:center;gap:0;margin-left:auto}.line-titlebar-button{display:flex;align-items:center;justify-content:center;width:46px;height:32px;background:none;border:none;cursor:pointer;color:navy;transition:all .15s ease}.line-titlebar-button:hover:not(:disabled){background-color:#0000801a}.line-titlebar-button.close:hover:not(:disabled){background-color:#e81123;color:#fff}.line-titlebar-button:disabled{opacity:.4;cursor:not-allowed}.line-header{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background-color:#fffef9;border-bottom:1px solid #e8dcc8;height:56px}.line-header-back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;border-radius:50%;cursor:pointer;color:#333;transition:background-color .15s ease}.line-header-back:hover{background-color:#0000000d}.line-header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.8);box-shadow:0 1px 3px #0000001f}.line-header-title{flex:1;min-width:0}.line-header-name{font-size:1rem;font-weight:600;color:#333;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.line-header-subtitle{font-size:.75rem;color:#999;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.line-header-actions{display:flex;align-items:center;gap:.25rem}.line-header-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;border-radius:50%;cursor:pointer;color:#333;transition:background-color .15s ease}.line-header-button:hover{background-color:#0000000d}article{background-color:#f5f1e8;position:relative}article h2{margin:2rem auto 1.5rem;padding:.375rem 1rem;font-weight:500;font-size:.75rem;color:#8b7355;background-color:#8b73551a;border:none;border-radius:12px;text-align:center;display:inline-block;width:auto;position:relative;left:50%;transform:translate(-50%)}.chat-message+p:has(strong){margin-top:-.5rem;font-size:.9rem;color:#666;margin-bottom:1.5rem}article>p{margin:1.5rem 1rem;padding:.875rem 1rem;background-color:#fff;border-radius:12px;box-shadow:0 1px 2px #0000001a;color:#333;font-size:.9rem;line-height:1.6;position:relative}article>p:has(+ul),article>p:has(+ol){margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:.5rem}article>p+ul,article>p+ol{margin-top:0;margin-bottom:1.5rem;margin-left:1rem;margin-right:1rem;padding:.5rem 1rem .875rem;background-color:#fff;border-radius:0 0 12px 12px;box-shadow:0 1px 2px #0000001a;color:#333;list-style-position:inside}.mermaid-container{margin:1.5rem 1rem;padding:1rem;background-color:#fff;border-radius:12px;box-shadow:0 1px 2px #0000001a;overflow-x:auto;text-align:center}.mermaid-container svg{max-width:100%;height:auto}.mermaid-error{color:#e81123;background-color:#fff0f0;padding:1rem;border-radius:8px;font-size:.875rem}article table{margin:1.5rem 1rem;width:calc(100% - 2rem);border-collapse:collapse;background-color:#fff;border-radius:12px;box-shadow:0 1px 2px #0000001a;overflow:hidden;font-size:.9rem}article thead{background-color:gold}article th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #d4af37}article td{padding:.75rem 1rem;color:#333;border-bottom:1px solid #e8dcc8}article tbody tr:last-child td{border-bottom:none}article tbody tr:hover{background-color:#fffef9}.chat-container{max-width:640px;margin:0 auto;padding:1.5rem 1rem}.chat-message{display:flex;margin-bottom:1.5rem;animation:fadeIn .3s ease-in}.chat-message{flex-direction:row;justify-content:flex-start}.chat-message[data-character=お兄ちゃん],.chat-message[data-character=Onii-chan]{flex-direction:row-reverse;justify-content:flex-end}.chat-bubble-wrapper{display:flex;align-items:flex-start;gap:.75rem;max-width:80%}.chat-message[data-character=お兄ちゃん] .chat-bubble-wrapper,.chat-message[data-character=Onii-chan] .chat-bubble-wrapper{flex-direction:row-reverse;margin-left:auto;margin-right:0}.chat-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(255,255,255,.8);box-shadow:0 1px 3px #0000001f}.chat-bubble{position:relative;padding:.75rem 1rem;border-radius:18px;background-color:#fff;border:none;box-shadow:0 1px 3px #0000001f,0 2px 6px #00000014;max-width:100%;word-wrap:break-word}.chat-message[data-character=ねつき] .chat-bubble,.chat-message[data-character=Netsuki] .chat-bubble{background-color:#ffe57f;border-bottom-left-radius:4px}.chat-message[data-character=お兄ちゃん] .chat-bubble,.chat-message[data-character=Onii-chan] .chat-bubble{background-color:#87ceeb;border-bottom-right-radius:4px;color:#222}.chat-name{font-weight:600;font-size:.75rem;color:#666;margin-bottom:.25rem}.chat-text{font-size:.95rem;line-height:1.5;color:#222;white-space:pre-wrap}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.chat-bubble-wrapper{max-width:90%}.chat-avatar{width:64px;height:64px}.chat-bubble{padding:.5rem .75rem}.chat-text{font-size:.875rem}}
