*,*:before,*:after{box-sizing:border-box}:root{--bg: #0f1117;--surface: #1a1d27;--surface-2: #242836;--border: #2e3345;--text: #e8eaef;--text-muted: #8b93a7;--accent: #6c5ce7;--accent-hover: #7d6ff0;--user-bg: #2a3a5c;--assistant-bg: #1e2230;--danger: #e74c3c;--radius: 12px;--font: "IBM Plex Sans Thai", system-ui, sans-serif}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,textarea{font-family:inherit}.loading-screen{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-muted)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.logo-mark{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--accent),#a29bfe);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;color:#fff}.logo-img{display:block;object-fit:cover;border-radius:14px;flex-shrink:0}.logo-img--sm{border-radius:10px}.logo-img--lg{border-radius:18px;margin:0 auto 1rem}.login-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(ellipse at 20% 20%,rgba(108,92,231,.15),transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(162,155,254,.1),transparent 50%),var(--bg)}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:2rem}.login-brand{text-align:center;margin-bottom:2rem}.login-brand .logo-img--lg{margin:0 auto 1rem}.login-brand h1{margin:0 0 .25rem;font-size:1.25rem}.login-brand p{margin:0;color:var(--text-muted);font-size:.875rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form label{display:flex;flex-direction:column;gap:.375rem}.login-form label span{font-size:.8125rem;color:var(--text-muted)}.login-form input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:1rem}.login-form input:focus{outline:none;border-color:var(--accent)}.login-form button[type=submit]{margin-top:.5rem;padding:.875rem;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.login-form button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.login-form button:disabled{opacity:.6;cursor:not-allowed}.error-banner{padding:.75rem 1rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:var(--radius);color:#ff8a80;font-size:.875rem}.chat-layout{display:flex;height:100%}.sidebar{width:280px;min-width:280px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.sidebar-top{padding:1rem;border-bottom:1px solid var(--border)}.sidebar-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.sidebar-brand strong{display:block;font-size:.9375rem}.sidebar-brand small{color:var(--text-muted);font-size:.75rem}.btn-new{width:100%;padding:.625rem;border:1px dashed var(--border);border-radius:var(--radius);background:transparent;color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.btn-new:hover{border-color:var(--accent);background:#6c5ce714}.conversation-list{flex:1;overflow-y:auto;padding:.5rem}.conversation-item{display:flex;align-items:center;gap:.25rem;border-radius:var(--radius);margin-bottom:2px}.conversation-item.active{background:var(--surface-2)}.conversation-btn{flex:1;padding:.625rem .75rem;border:none;background:transparent;color:var(--text);text-align:left;cursor:pointer;font-size:.875rem;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0}.conversation-btn__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.conversation-progress{font-size:.625rem;font-weight:700;padding:.0625rem .375rem;border-radius:4px;background:var(--surface);color:var(--text-muted)}.conversation-progress--running{background:#6c5ce740;color:#c4b5fd}.conversation-progress--completed{background:#2ecc7126;color:#6ee7a0}.delete-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;opacity:0;transition:opacity .15s,background .15s}.conversation-item:hover .delete-btn{opacity:1}.delete-btn:hover{background:#e74c3c33;color:var(--danger)}.sidebar-footer{padding:1rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.user-badge{font-size:.8125rem;color:var(--text-muted);background:var(--surface-2);padding:.25rem .625rem;border-radius:999px}.btn-logout{padding:.375rem .75rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);font-size:.8125rem;cursor:pointer}.btn-logout:hover{border-color:var(--danger);color:var(--danger)}.chat-main{flex:1;display:flex;flex-direction:column;min-width:0}.chat-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.chat-header h2{margin:0;font-size:1rem;font-weight:600}.chat-subtitle{font-size:.8125rem;color:var(--text-muted)}.chat-loading{flex:1;display:flex;align-items:center;justify-content:center}.message-list{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.message-list.empty{align-items:center;justify-content:center}.welcome-card{text-align:center;max-width:420px;padding:2rem;background:var(--surface);border:1px solid var(--border);border-radius:20px}.welcome-card h3{margin:0 0 .75rem;font-size:1.25rem}.welcome-card p{margin:0;color:var(--text-muted);line-height:1.6}.message{display:flex;gap:.75rem;max-width:820px}.message.user{margin-left:auto;flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;flex-shrink:0}.message.user .message-avatar{background:var(--user-bg)}.message.assistant .message-avatar{background:linear-gradient(135deg,var(--accent),#a29bfe);color:#fff}.message-body{padding:.875rem 1.125rem;border-radius:var(--radius);line-height:1.65;font-size:.9375rem}.message.user .message-body{background:var(--user-bg)}.message.assistant .message-body{background:var(--assistant-bg);border:1px solid var(--border)}.message-body p{margin:0}.message-body :first-child{margin-top:0}.message-body :last-child{margin-bottom:0}.message-body h1,.message-body h2,.message-body h3{margin:1rem 0 .5rem;font-size:1rem}.message-body ul,.message-body ol{margin:.5rem 0;padding-left:1.25rem}.message-body code{font-family:JetBrains Mono,monospace;font-size:.8125rem;background:#0000004d;padding:.125rem .375rem;border-radius:4px}.message-body pre{background:#0000004d;padding:.75rem;border-radius:8px;overflow-x:auto}.message-body pre code{background:none;padding:0}.typing{display:flex;gap:4px;align-items:center;padding:1rem 1.25rem!important}.typing span{width:8px;height:8px;background:var(--text-muted);border-radius:50%;animation:bounce 1.2s infinite}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chat-input-wrap{border-top:1px solid var(--border);background:var(--surface)}.pending-attachments{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1.5rem 0}.pending-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .625rem;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;max-width:220px}.pending-item.error{border-color:var(--danger)}.pending-thumb{width:36px;height:36px;object-fit:cover;border-radius:6px;flex-shrink:0}.pending-icon{font-size:1.25rem;width:36px;text-align:center;flex-shrink:0}.pending-info{flex:1;min-width:0;display:flex;flex-direction:column}.pending-name{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-size{font-size:.6875rem;color:var(--text-muted)}.pending-remove{border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:1.125rem;line-height:1;padding:0 .125rem}.pending-remove:hover{color:var(--danger)}.chat-input{display:flex;gap:.5rem;align-items:flex-end;padding:1rem 1.5rem 1.25rem}.btn-icon{width:42px;height:42px;flex-shrink:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.btn-icon:hover:not(:disabled){border-color:var(--accent);background:#6c5ce71a}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-mic.recording{border-color:#e74c3c;background:#e74c3c26;animation:pulse-mic 1.2s infinite}@keyframes pulse-mic{0%,to{box-shadow:0 0 #e74c3c66}50%{box-shadow:0 0 0 6px #e74c3c00}}.chat-input textarea{flex:1;resize:none;padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:.9375rem;line-height:1.5;max-height:160px;min-height:42px}.chat-input textarea:focus{outline:none;border-color:var(--accent)}.btn-send{align-self:flex-end;padding:.75rem 1.25rem;min-height:42px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:600;cursor:pointer;transition:background .15s;flex-shrink:0}.btn-send:hover:not(:disabled){background:var(--accent-hover)}.btn-send:disabled{opacity:.5;cursor:not-allowed}.message-content-wrap{display:flex;flex-direction:column;gap:.375rem;max-width:100%}.message.user .message-content-wrap{align-items:flex-end}.message-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.attachment{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:10px;background:#0003;text-decoration:none;color:inherit;transition:background .15s}.attachment:hover{background:#6c5ce726}.attachment--image{flex-direction:column;padding:.375rem}.attachment--image img{max-width:240px;max-height:180px;border-radius:8px;object-fit:cover}.attachment--file .attachment-icon{font-size:1.5rem}.attachment-meta{display:flex;flex-direction:column;min-width:0}.attachment-name{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.attachment-size{font-size:.6875rem;color:var(--text-muted)}.btn-listen{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.75rem;cursor:pointer;transition:all .15s}.btn-listen:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:#6c5ce714}.btn-listen.playing{border-color:var(--accent);color:var(--accent);background:#6c5ce71f}.btn-listen:disabled{opacity:.6;cursor:wait}.message-actions{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.375rem}.action-badge{font-size:.6875rem;padding:.2rem .5rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted)}.action-badge.ok{border-color:#2ecc7166;color:#6ee7a0}.action-badge.fail{border-color:#e74c3c66;color:#ff8a80}.btn-connect{width:100%;margin-top:.5rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:.8125rem;cursor:pointer}.btn-connect:hover{border-color:var(--accent);color:var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.connect-modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;max-width:420px;width:100%;max-height:90vh;overflow-y:auto}.connect-modal h3{margin:0 0 .5rem}.connect-desc{font-size:.8125rem;color:var(--text-muted);margin:0 0 1rem;line-height:1.5}.platform-list{list-style:none;padding:0;margin:0 0 1rem}.platform-list li{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.875rem}.platform-list li.connected span{color:#6ee7a0}.platform-list button{font-size:.75rem;padding:.25rem .5rem;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.platform-list button.active{border-color:var(--accent);color:var(--accent)}.connect-form{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.connect-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;color:var(--text-muted)}.connect-form input{padding:.625rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text)}.btn-connect-go{padding:.75rem;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:600;cursor:pointer}.btn-connect-go:disabled{opacity:.6;cursor:wait}.connect-status{font-size:.8125rem;color:var(--text-muted);margin:.5rem 0}.connect-screenshot{width:100%;border-radius:8px;margin:.5rem 0;border:1px solid var(--border)}.modal-close{width:100%;margin-top:.75rem;padding:.5rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}.btn-org{width:100%;margin-top:.375rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:.8125rem;cursor:pointer}.btn-org:hover{border-color:var(--accent);color:var(--accent)}.btn-plan{width:100%;margin-top:.375rem;padding:.5rem .625rem;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-muted);font-size:.8125rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.btn-plan:hover{border-color:var(--accent);color:var(--accent)}.btn-plan--live{border-color:#6c5ce78c;background:#6c5ce71a;color:#c4b5fd;animation:plan-pulse 2s ease-in-out infinite}.btn-plan--has .btn-plan__badge{font-size:.6875rem;font-weight:700;padding:.125rem .375rem;border-radius:6px;background:var(--surface-2);color:var(--text)}.btn-plan--live .btn-plan__badge{background:#6c5ce759;color:#fff}@keyframes plan-pulse{0%,to{box-shadow:0 0 #6c5ce700}50%{box-shadow:0 0 0 3px #6c5ce726}}.plan-overlay{padding:.75rem;z-index:2000}.plan-modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 16px 48px #00000073;max-width:min(96vw,520px);width:100%;max-height:90vh;display:flex;flex-direction:column;padding:1rem 1.125rem}.plan-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-shrink:0}.plan-modal__header h3{margin:0 0 .2rem;font-size:1.0625rem}.plan-modal__header p{margin:0;font-size:.8125rem;color:var(--text-muted)}.plan-modal__current{flex-shrink:0;padding:.5rem .75rem;margin-bottom:.75rem;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);font-size:.8125rem;color:var(--text);line-height:1.45}.plan-modal__current--live{border-color:#6c5ce773;background:#6c5ce71a;color:#ddd6fe}.plan-modal__body{flex:1;overflow:auto;min-height:0}.plan-modal__empty{text-align:center;padding:2rem 1rem;color:var(--text-muted)}.plan-modal__empty p{margin:0 0 .5rem}.plan-modal__hint{font-size:.8125rem;opacity:.85}.plan-banner{padding:.5rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:600;margin-bottom:.625rem}.plan-banner--wait{background:#fbbf2426;border:1px solid rgba(251,191,36,.4);color:#fcd34d}.plan-banner--run{background:#6c5ce726;border:1px solid rgba(108,92,231,.4);color:#c4b5fd}.plan-banner--done{background:#2ecc711f;border:1px solid rgba(46,204,113,.35);color:#6ee7a0}.plan-tabs{display:flex;gap:.375rem;margin-bottom:.625rem}.plan-tab{flex:1;padding:.4375rem .625rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-muted);font-size:.8125rem;cursor:pointer}.plan-tab.active{border-color:var(--accent);color:var(--accent);background:#6c5ce71f}.btn-plan__badge--wait{background:#fbbf2440;color:#fcd34d}.plan-deliverables{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.plan-deliverable-item{border:1px solid var(--border);border-radius:10px;background:var(--surface-2);overflow:hidden}.plan-deliverable-item__head{display:flex;gap:.625rem;padding:.5rem .625rem;background:#6c5ce714;border-bottom:1px solid var(--border)}.plan-deliverable-item__order{width:1.5rem;height:1.5rem;border-radius:50%;background:var(--accent);color:#fff;font-size:.6875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.plan-deliverable-item__title{font-size:.8125rem;font-weight:600}.plan-deliverable-item__meta{font-size:.6875rem;color:var(--text-muted);margin-top:.125rem}.plan-deliverable-item__type{margin-left:.375rem;padding:.0625rem .3rem;border-radius:4px;background:#6c5ce733;color:#c4b5fd}.plan-deliverable-item__body{padding:.625rem;font-size:.8125rem;line-height:1.5;color:var(--text);white-space:pre-wrap;max-height:200px;overflow:auto}.plan-deliverables-empty{text-align:center;padding:1.5rem 1rem;color:var(--text-muted)}.plan-step__deliverable{margin-top:.375rem;padding:.375rem .5rem;background:#2ecc7114;border:1px solid rgba(46,204,113,.2);border-radius:6px;font-size:.6875rem;line-height:1.45;color:var(--text);white-space:pre-wrap;max-height:120px;overflow:auto}.plan-step__dtype{display:block;font-size:.5625rem;font-weight:700;color:#6ee7a0;margin-bottom:.2rem;text-transform:uppercase}.plan-step--approval .plan-step__phase{color:#fcd34d;background:#fbbf2426}.plan-step--clickable .plan-step__btn{cursor:pointer}.plan-step--clickable:hover{border-color:#6c5ce773}.plan-step__btn{display:flex;gap:.625rem;width:100%;padding:0;border:none;background:transparent;color:inherit;text-align:left;font:inherit}.plan-step__view{margin-left:auto;font-size:.6875rem;color:var(--accent);font-weight:600}.action-plan__hint{font-size:.75rem;color:var(--text-muted);margin:0 0 .5rem}.plan-deliverable-item--click{width:100%;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .15s}.plan-deliverable-item--click:hover{border-color:var(--accent)}.plan-deliverable-item__arrow{margin-left:auto;font-size:.75rem;color:var(--accent);white-space:nowrap;align-self:center}.plan-deliverable-item__tools{margin-left:.375rem;font-size:.6875rem;color:#93c5fd}.agent-work-overlay{z-index:1200}.agent-work-modal{max-width:720px;width:95vw;max-height:88vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border)}.agent-work-modal__header{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.125rem;border-bottom:1px solid var(--border)}.agent-work-modal__header h3{margin:.25rem 0 0;font-size:1.0625rem}.agent-work-modal__header p{margin:.25rem 0 0;font-size:.8125rem;color:var(--text-muted)}.agent-work-modal__phase{font-size:.6875rem;text-transform:uppercase;color:var(--accent);font-weight:700}.agent-work-modal__type{display:inline-block;margin-top:.375rem;padding:.125rem .5rem;border-radius:6px;background:#6c5ce726;font-size:.75rem}.agent-work-modal__meta{display:flex;flex-wrap:wrap;gap:.5rem;padding:.625rem 1.125rem;border-bottom:1px solid var(--border);font-size:.75rem}.agent-work-modal__status--done{color:#6ee7a0}.agent-work-modal__status--running{color:#c4b5fd}.agent-work-modal__status--pending{color:var(--text-muted)}.agent-work-modal__status--error{color:#fca5a5}.agent-work-modal__qc,.agent-work-modal__time{color:var(--text-muted)}.agent-work-modal__subtitle{padding:.5rem 1.125rem 0;margin:0;font-size:.8125rem;color:var(--text-muted)}.agent-work-modal__body{padding:1rem 1.125rem;overflow:auto;flex:1}.agent-work-modal__body h4{margin:0 0 .5rem;font-size:.8125rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.agent-work-modal__body h4:not(:first-child){margin-top:1.25rem}.agent-work-modal__content,.agent-work-tool__detail{margin:0;padding:.75rem;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);font-size:.8125rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:360px;overflow:auto}.agent-work-modal__empty{color:var(--text-muted);font-size:.875rem}.agent-work-tools{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.agent-work-tool{border:1px solid var(--border);border-radius:8px;overflow:hidden}.agent-work-tool__head{display:flex;justify-content:space-between;padding:.5rem .625rem;background:#6c5ce714;font-size:.8125rem}.agent-work-tool__head .ok{color:#6ee7a0}.agent-work-tool__head .err{color:#fca5a5}.agent-work-tool__args{display:flex;flex-wrap:wrap;gap:.375rem;padding:.375rem .625rem;font-size:.6875rem;color:var(--text-muted);border-bottom:1px solid var(--border)}.agent-work-tool__detail{border:none;border-radius:0;max-height:200px}.org-overlay{padding:.75rem}.org-chart-modal{max-width:min(98vw,1400px);width:100%;max-height:96vh;display:flex;flex-direction:column;padding:1rem 1.25rem}.org-chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem;flex-shrink:0}.org-chart-header h3{margin:0 0 .25rem;font-size:1.375rem;font-weight:700}.org-chart-header p{margin:0;font-size:.9375rem;color:var(--text-muted)}.org-toolbar{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.org-zoom-btn{width:2rem;height:2rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:1.125rem;line-height:1;cursor:pointer}.org-zoom-btn:hover{border-color:var(--accent);color:var(--accent)}.org-zoom-label{min-width:3rem;text-align:center;font-size:.875rem;color:var(--text-muted)}.org-close-btn{margin-left:.5rem}.org-chart-scroll{flex:1;overflow:auto;padding:.25rem .25rem .5rem;background:#00000026;border-radius:10px}.org-loading{display:flex;justify-content:center;padding:3rem}.org-error{text-align:center;padding:2rem 1rem;color:var(--danger);font-size:.9375rem}.org-chart{display:flex;flex-direction:column;align-items:stretch;min-width:min-content;padding:.75rem}.org-top{display:flex;flex-direction:column;align-items:center;margin-bottom:1.25rem}.org-vline{width:3px;height:32px;background:linear-gradient(to bottom,var(--accent),rgba(108,92,231,.3));flex-shrink:0;border-radius:2px}.org-dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.875rem;width:100%}.org-dept-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.org-dept-card__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.625rem .875rem;background:linear-gradient(90deg,#6c5ce759,#6c5ce71a);border-bottom:1px solid rgba(108,92,231,.35)}.org-dept-card__label{font-size:1rem;font-weight:700;color:#fff}.org-dept-card__id{font-size:.75rem;color:#c4b5fd;text-transform:uppercase;letter-spacing:.04em}.org-dept-card__manager{padding:.75rem .875rem;border-bottom:1px dashed var(--border);background:#6c5ce714}.org-dept-card__role{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.org-dept-card__name{font-size:.9375rem;font-weight:600;color:#e8eaef;line-height:1.35}.org-dept-card__agents{list-style:none;margin:0;padding:.5rem .625rem .625rem;display:flex;flex-direction:column;gap:.5rem}.org-agent-row{padding:.5rem .625rem;border-radius:8px;background:var(--surface-2);border:1px solid var(--border)}.org-agent-row__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.org-agent-row__name{font-size:.875rem;font-weight:600;color:#fff}.org-agent-row__duty{font-size:.8125rem;color:var(--text-muted);line-height:1.45}.org-node{border-radius:10px;padding:.75rem 1rem;text-align:center;border:1px solid var(--border);background:var(--surface-2)}.org-node__title{font-size:1rem;font-weight:700;line-height:1.35}.org-node__subtitle{font-size:.8125rem;color:var(--text-muted);margin-top:.25rem;line-height:1.4}.org-node__badge{display:inline-block;margin-top:.375rem;font-size:.75rem;padding:.15rem .5rem;border-radius:6px;background:#6c5ce759;color:#ddd6fe;font-weight:700}.org-node--ceo{background:linear-gradient(135deg,#3d5a8a,#1a1d27);border-color:#6b9fd4;min-width:160px}.org-node--ceo .org-node__title{font-size:1.125rem;color:#fff}.org-node--exec{background:linear-gradient(135deg,#6c5ce780,#a29bfe33);border-color:var(--accent);min-width:220px}.org-node--exec .org-node__title{font-size:1.0625rem;color:#fff}.org-node--pool{background:#2ecc711f;border-color:#2ecc7173;min-width:200px;flex:1;text-align:left}.org-node--pool .org-node__title{color:#86efac;font-size:.9375rem}.org-node--pool .org-node__subtitle{font-size:.8125rem}.org-pool-section{margin-top:1.25rem;padding-top:1rem;border-top:2px dashed var(--border);width:100%}.org-pool-label{text-align:center;font-size:.9375rem;font-weight:600;color:var(--text);margin-bottom:.75rem}.org-pool-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.625rem}.agent-tag{font-size:.625rem;padding:.125rem .375rem;background:#6c5ce733;border-radius:4px;color:#a29bfe}.chat-live-plan{flex-shrink:0;padding:.75rem 1rem 0;max-height:42vh;overflow:auto}.action-plan{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:.75rem .875rem}.action-plan--live{border-color:#6c5ce780;box-shadow:0 0 0 1px #6c5ce726}.action-plan__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.action-plan__title{font-size:.875rem;font-weight:700;color:var(--text)}.action-plan__meta{font-size:.75rem;color:var(--text-muted)}.action-plan__bar{height:4px;background:var(--surface-2);border-radius:4px;overflow:hidden;margin-bottom:.625rem}.action-plan__bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#a29bfe);border-radius:4px;transition:width .35s ease}.action-plan__steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.plan-step{display:flex;gap:.625rem;padding:.5rem 0;border-bottom:1px solid rgba(46,52,69,.6)}.plan-step:last-child{border-bottom:none}.plan-step--current{background:#6c5ce714;margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:8px}.plan-step__rail{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex-shrink:0;width:1.75rem}.plan-step__num{font-size:.625rem;font-weight:700;color:var(--text-muted);line-height:1}.plan-step__icon{width:1.125rem;height:1.125rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;flex-shrink:0}.plan-step__icon--pending{border:2px solid var(--border);background:var(--surface-2)}.plan-step__icon--running{border:2px solid var(--accent);border-top-color:transparent;animation:spin .8s linear infinite}.plan-step__icon--done{background:#2ecc7140;color:#6ee7a0;border:1px solid rgba(46,204,113,.4)}.plan-step__icon--error{background:#e74c3c40;color:#ff8a80;border:1px solid rgba(231,76,60,.4)}.plan-step__body{flex:1;min-width:0}.plan-step__top{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:.125rem}.plan-step__phase{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#a29bfe;background:#6c5ce726;padding:.0625rem .375rem;border-radius:4px}.plan-step--route .plan-step__phase{color:#6ee7a0;background:#2ecc711f}.plan-step--qc .plan-step__phase{color:#fbbf24;background:#fbbf241f}.plan-step--synthesis .plan-step__phase{color:#93c5fd;background:#93c5fd1f}.plan-step--tools .plan-step__phase{color:#f472b6;background:#f472b61f}.plan-step__dept{font-size:.625rem;color:var(--text-muted)}.plan-step__qc{font-size:.5625rem;padding:.0625rem .35rem;border-radius:4px}.plan-step__qc--ok{background:#2ecc7133;color:#6ee7a0}.plan-step__qc--warn{background:#e74c3c33;color:#ff8a80}.plan-step__title{font-size:.8125rem;font-weight:600;color:var(--text);line-height:1.35}.plan-step__responsible{font-size:.75rem;color:#c4b5fd;margin-top:.125rem}.plan-step__subtitle{font-size:.6875rem;color:var(--text-muted);margin-top:.125rem;line-height:1.4}.plan-step__result{font-size:.6875rem;color:var(--text-muted);margin-top:.25rem;padding:.25rem .375rem;background:var(--surface-2);border-radius:4px}.action-plan--compact{margin-top:.5rem;padding:.5rem .625rem}.action-plan--compact .plan-step__subtitle{display:none}.message-workflow{display:flex;flex-direction:column;gap:.25rem;margin-top:.375rem}.workflow-step{font-size:.6875rem;padding:.25rem .5rem;background:var(--surface-2);border-radius:6px;color:var(--text-muted);border-left:2px solid var(--accent)}.workflow-step.executive{border-left-color:#6ee7a0}.qc{margin-left:.375rem;padding:.0625rem .375rem;border-radius:4px;font-size:.625rem}.qc.ok{background:#2ecc7133;color:#6ee7a0}.qc.warn{background:#e74c3c33;color:#ff8a80}@media(max-width:768px){.sidebar{display:none}}
