@keyframes rbFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(-3deg)}}@keyframes rbBounce{0%{transform:scale(1)}35%{transform:scale(1.22)}65%{transform:scale(.9)}to{transform:scale(1)}}@keyframes rbPanelIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rbFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes rbAntennaPulse{0%,to{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.45)}}@keyframes rbAntennaThink{0%,to{fill:#ff9800;opacity:.55}50%{fill:#fff;opacity:1}}@keyframes rbBlink{0%,38%,62%,to{transform:scaleY(1)}50%{transform:scaleY(.06)}}@keyframes rbScan{0%{transform:translate(-3.5px)}to{transform:translate(3.5px)}}@keyframes rbThinkDot{0%,80%,to{opacity:.15;transform:scale(.7)}40%{opacity:1;transform:scale(1.3)}}@keyframes rbLamp{0%,to{opacity:.25}50%{opacity:1}}@keyframes rbDot{0%,80%,to{opacity:.15}40%{opacity:1}}.rb-antenna-idle{transform-box:fill-box;transform-origin:50% 50%;animation:rbAntennaPulse 2.2s ease-in-out infinite}.rb-antenna-think{animation:rbAntennaThink .38s ease-in-out infinite}.rb-eye-l{transform-box:fill-box;transform-origin:50% 50%;animation:rbBlink 4.8s ease-in-out infinite}.rb-eye-r{transform-box:fill-box;transform-origin:50% 50%;animation:rbBlink 4.8s ease-in-out infinite .18s}.rb-pupil-scan{transform-box:fill-box;transform-origin:50% 50%;animation:rbScan .72s ease-in-out infinite alternate}.rb-think-dot{transform-box:fill-box;transform-origin:50% 50%;animation:rbThinkDot 1.4s ease-in-out infinite}.rb-think-dot[data-dot="2"]{animation-delay:.3s}.rb-think-dot[data-dot="3"]{animation-delay:.6s}.rb-lamp-dot{fill:#4fc3f7}.rb-lamp-dot[data-state=active][data-lamp="1"],.rb-lamp-dot[data-state=active][data-lamp="3"]{fill:#a5d6a7}.rb-lamp-dot[data-state=thinking][data-lamp="1"]{fill:#ffeb3b}.rb-lamp-dot[data-state=thinking][data-lamp="2"]{fill:#ffa726}.rb-lamp-dot[data-state=thinking][data-lamp="3"]{fill:#ef5350}.rb-lamp-blink{animation:rbLamp .55s ease-in-out infinite}.rb-lamp-blink[data-lamp="2"]{animation-delay:.22s}.rb-lamp-blink[data-lamp="3"]{animation-delay:.44s}.rb-dot{display:inline-block;color:#fff;font-size:8px;animation:rbDot 1.4s ease-in-out infinite}.rb-dot:nth-child(2){animation-delay:.2s}.rb-dot:nth-child(3){animation-delay:.4s}.cw-panel{position:fixed;bottom:98px;right:16px;width:380px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 130px);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;z-index:60;box-shadow:0 8px 40px #00000059;animation:rbPanelIn .25s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.cw-header{padding:10px 14px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background:var(--bg-accent);flex-shrink:0}.cw-header-left{display:flex;align-items:center;gap:10px}.cw-header-robot-wrap{animation:rbFloat 2.5s ease-in-out infinite}.cw-header-title{font-weight:700;font-size:13px;color:var(--text-link)}.cw-header-subtitle{font-size:11px;color:var(--text-muted);margin-top:1px}.cw-header-actions{display:flex;gap:4px;align-items:center}.cw-btn-reset{background:none;border:none;color:var(--text-muted);font-size:12px;padding:2px 8px;border-radius:4px}.cw-btn-close{background:none;border:none;color:var(--text-muted);font-size:16px;padding:2px 6px}.cw-messages{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.cw-welcome{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:20px;animation:rbFadeIn .4s ease-out}.cw-welcome-robot-wrap{animation:rbFloat 2.5s ease-in-out infinite}.cw-welcome-bubble{background:var(--bg-accent);border-radius:12px 12px 12px 2px;padding:10px 16px;font-size:13px;line-height:1.8;color:var(--text-primary);max-width:260px}.cw-message-row{display:flex;align-items:flex-end;gap:6px;animation:rbFadeIn .2s ease-out}.cw-message-row--user{justify-content:flex-end}.cw-message-row--assistant{justify-content:flex-start}.cw-message-robot-icon{flex-shrink:0}.cw-bubble{max-width:78%;padding:8px 12px;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.cw-bubble--user{border-radius:12px 12px 2px;background:var(--bg-accent);color:var(--text-primary)}.cw-bubble--assistant{border-radius:2px 12px 12px;background:#1565c0;color:#fff}.cw-bubble-cursor{opacity:.5}.cw-loading-row{display:flex;align-items:flex-end;gap:6px}.cw-loading-dots{padding:10px 16px;border-radius:2px 12px 12px;background:#1565c0;display:flex;gap:5px;align-items:center}.cw-error-text{text-align:center;color:#ef5350;font-size:12px;padding:4px 0}.cw-input-area{padding:10px 12px;border-top:1px solid var(--border-color);display:flex;gap:8px;align-items:flex-end;flex-shrink:0}.cw-textarea{flex:1;padding:8px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-base);color:var(--text-primary);font-size:13px;resize:none;outline:none;line-height:1.5;font-family:inherit}.cw-btn-send{padding:0 16px;border-radius:8px;background:#1565c0;color:#fff;border:none;font-size:13px;font-weight:700;height:52px;flex-shrink:0}.cw-robot-btn{position:fixed;bottom:20px;right:20px;width:68px;height:68px;border-radius:50%;background:#1565c0;border:2px solid rgba(255,255,255,.25);z-index:61;box-shadow:0 4px 20px #1565c0a6;display:flex;align-items:center;justify-content:center;padding:0;transition:background .25s,box-shadow .25s,border-color .25s;animation:rbFloat 2.5s ease-in-out infinite}.cw-robot-btn--open{background:var(--bg-accent);border-color:var(--border-color);box-shadow:0 2px 12px #00000040;animation:none}.cw-robot-btn--bounce{animation:rbBounce .45s cubic-bezier(.36,.07,.19,.97)}.nav-icon-fallback{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:20px}.copyright-footer{position:fixed;bottom:8px;right:12px;font-size:11px;color:var(--text-muted);pointer-events:none;z-index:50}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base: #1a1a2e;--bg-surface: #16213e;--bg-accent: #0f3460;--border-color: #0f3460;--text-primary: #e0e0e0;--text-muted: #aaa;--text-nav: #ccc;--text-link: #4fc3f7;--nav-active-bg: #0f3460;--nav-active-fg: #4fc3f7;--role-badge-bg: #0f3460;--scrollbar-track: #1a1a2e;--scrollbar-thumb: #0f3460;--scrollbar-hover: #1976d2;--picker-filter: invert(.8);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,system-ui,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-base);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%}[data-theme=light]{--bg-base: #f0f2f5;--bg-surface: #ffffff;--bg-accent: #e3eaf5;--border-color: #d0d7e3;--text-primary: #212121;--text-muted: #4a4a4a;--text-nav: #333333;--text-link: #1565c0;--nav-active-bg: #e3eaf5;--nav-active-fg: #1565c0;--role-badge-bg: #d0d7e3;--scrollbar-track: #f0f2f5;--scrollbar-thumb: #b0b8c8;--scrollbar-hover: #1976d2;--picker-filter: none}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-base);color:var(--text-primary)}#root{min-height:100vh}input,select,textarea,button{font-family:inherit}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{filter:var(--picker-filter)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}table{border-collapse:collapse}a{color:var(--text-link);text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}
