:root{--green:#006b4f;--green2:#0a8a63;--dark:#073b30;--mint:#e8f6f1;--mint2:#d5efe6;--gold:#f8b91d;--red:#dc3b3b;--ink:#10221d;--muted:#66756f;--line:#d9e3df;--surface:#fff;--bg:#f3f7f5;--shadow:0 14px 38px rgba(7,59,48,.10)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:15px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial;color:var(--ink);background:var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.auth-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#d9f5ea 0,transparent 32%),linear-gradient(135deg,#f8fbfa,#eaf4f0)}.auth-card{width:min(480px,calc(100% - 30px));background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.brand{display:flex;align-items:center;gap:13px}.brand img{width:52px;height:52px;border-radius:50%;object-fit:contain;background:#071f19}.brand small,.topbar small,.detail-heading small{display:block;font-weight:800;letter-spacing:.14em;color:var(--green);font-size:.68rem}.brand strong{display:block;font-size:1.05rem}.brand-large{margin-bottom:28px}.brand-large img{width:72px;height:72px}.brand-large strong{font-size:1.35rem}.auth-card h1{margin:0 0 5px}.auth-card p{color:var(--muted);margin-top:0}
.form-stack,.dialog-card{display:grid;gap:14px}label{display:grid;gap:6px;font-weight:700;font-size:.84rem}input,textarea,select{width:100%;border:1px solid #cbd8d3;border-radius:10px;background:#fff;color:var(--ink);padding:11px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(10,138,99,.12)}textarea{resize:vertical}.primary,.secondary,.danger{border:0;border-radius:10px;padding:11px 15px;font-weight:800}.primary{background:var(--green2);color:#fff}.primary:hover{background:var(--green)}.secondary{background:#edf4f1;color:var(--dark);border:1px solid #d4e1dc}.danger{background:#ffeded;color:#9f2525}.button-row{display:flex;gap:8px}.button-row>*{flex:1}
.app-shell{display:grid;grid-template-columns:72px 1fr;height:100vh;overflow:hidden}.sidebar{background:var(--dark);display:flex;flex-direction:column;align-items:stretch;padding:10px 8px;gap:8px;color:#fff}.sidebar-logo{height:52px;display:grid;place-items:center;margin-bottom:4px}.sidebar-logo img{width:44px;height:44px;border-radius:50%;object-fit:contain;background:#051f19;border:1px solid rgba(248,185,29,.55)}.nav-button{position:relative;border:0;background:transparent;color:#d9eee7;border-radius:11px;min-height:48px;font-size:1.22rem;display:grid;place-items:center}.nav-button span{display:none}.nav-button:hover,.nav-button.active{background:rgba(255,255,255,.13);color:#fff}.sidebar-spacer{flex:1}.badge{position:absolute;right:2px;top:2px;background:var(--red);color:#fff;border-radius:999px;min-width:19px;height:19px;padding:1px 4px;font-size:.68rem;display:grid;place-items:center}.badge.warning{background:var(--gold);color:#3b2900}
.workspace{display:grid;grid-template-rows:80px 1fr;min-width:0;overflow:hidden}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:13px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h1{margin:2px 0 0;font-size:1.45rem}.top-actions{display:flex;align-items:center;gap:14px}.account-pills{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.account-pill{font-size:.7rem;border-radius:999px;background:#eef3f1;color:var(--muted);padding:5px 8px;white-space:nowrap}.account-pill.ready{background:#ddf6ea;color:#08724e}.account-pill.qr{background:#fff1c7;color:#7d5700}.user-chip{display:flex;align-items:center;gap:8px;border-left:1px solid var(--line);padding-left:14px}.user-chip>span,.avatar{width:38px;height:38px;border-radius:50%;background:var(--mint2);color:var(--green);font-weight:900;display:grid;place-items:center}.user-chip div{display:grid}.user-chip small{color:var(--muted)}
.view{display:none;min-height:0}.view.active{display:grid}.chat-layout{grid-template-columns:340px minmax(400px,1fr) 330px;min-height:0}.conversation-column{background:#fff;border-right:1px solid var(--line);padding:14px;display:flex;flex-direction:column;min-height:0}.info-card{background:var(--mint);border:1px solid #c9e6dc;border-radius:13px;padding:12px;display:grid;gap:5px;margin-bottom:12px}.info-card small{color:#537168}.online-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#20bd83;box-shadow:0 0 0 4px rgba(32,189,131,.13);margin-right:6px}.search-row{display:flex;gap:6px}.search-row button{width:43px;border:1px solid var(--line);border-radius:10px;background:#fff}.conversation-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:12px;gap:10px;overflow:auto}.conversation-tabs button{border:0;background:transparent;padding:10px 2px;font-size:.76rem;font-weight:800;white-space:nowrap;color:var(--muted)}.conversation-tabs button.active{color:var(--green);border-bottom:2px solid var(--green)}.conversation-list{overflow:auto;margin:0 -14px}.conversation-item{display:grid;grid-template-columns:46px 1fr auto;gap:10px;padding:13px 14px;border:0;border-bottom:1px solid #edf1ef;background:#fff;width:100%;text-align:left}.conversation-item:hover,.conversation-item.active{background:#edf8f4}.conversation-item.active{border-left:4px solid var(--green);padding-left:10px}.conversation-item .avatar{width:44px;height:44px}.conversation-meta{min-width:0}.conversation-meta strong,.conversation-meta span,.conversation-meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-meta span{color:var(--green);font-weight:800;font-size:.75rem;margin:3px 0}.conversation-meta small{color:var(--muted)}.conversation-side{text-align:right;font-size:.7rem;color:var(--muted)}.unread-bubble{margin-top:8px;margin-left:auto;background:var(--green2);color:white;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-weight:800}
.message-column{min-width:0;background:#edf3f0;position:relative;display:grid;min-height:0}.empty-state{place-self:center;text-align:center;color:var(--muted)}.empty-state h2{color:var(--ink)}.spark{margin:auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--mint2);color:var(--green);font-size:1.8rem}.chat-content{display:grid;grid-template-rows:68px 1fr auto auto;min-height:0}.chat-header{background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:10px 16px}.chat-header>div:nth-of-type(2){display:grid}.chat-header small{color:var(--muted)}.product-chip{margin-left:auto;border-radius:999px;background:#fff0c7;color:#765300;padding:5px 9px;font-size:.72rem;font-weight:800}.mobile-chat-action,.mobile-detail-close{display:none;border:1px solid var(--line);border-radius:9px;background:#edf4f1;color:var(--dark);font-weight:900}.messages{overflow:auto;padding:20px 5%;display:flex;flex-direction:column;gap:9px;background-image:radial-gradient(#cbdad4 1px,transparent 1px);background-size:22px 22px}.message{max-width:min(75%,700px);border-radius:12px;padding:10px 12px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,.06)}.message.out{align-self:flex-end;background:#d7f4e8}.message.system{align-self:center;background:#dfe7e4;color:#60716a;font-size:.72rem;padding:6px 10px}.message time{display:block;text-align:right;font-size:.65rem;color:#74817d;margin-top:5px}.message a{color:var(--green);font-weight:700}.message img,.message video{max-width:100%;border-radius:8px}.composer{background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:44px 1fr 82px;gap:8px;padding:10px 14px;align-items:end}.composer textarea{min-height:43px;max-height:120px}.attach-button{height:43px;border-radius:10px;background:#edf4f1;display:grid;place-items:center;font-size:1.5rem}.send-button{height:43px;border:0;border-radius:10px;background:var(--green2);color:#fff;font-weight:800}.selected-file{background:#fff;padding:0 15px 8px;color:var(--green)}
.detail-column{background:#fff;border-left:1px solid var(--line);padding:16px;overflow:auto;display:flex;flex-direction:column;gap:11px}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-heading h2{margin:3px 0 5px}.privacy-note{background:var(--mint);border-left:3px solid var(--green2);padding:10px;color:#4d685e;font-size:.78rem}.detail-column hr{width:100%;border:0;border-top:1px solid var(--line)}.detail-column h3{font-size:.92rem;margin:4px 0}.activity-list{display:grid;gap:7px}.activity-item{background:#f5f8f7;border:1px solid #e0e8e5;border-radius:9px;padding:8px;font-size:.76rem}.activity-item small{color:var(--muted);display:block}.aggilizador{background:#fff2c9;color:#6d4c00;border:1px solid #f1cc65;border-radius:10px;padding:10px;text-align:center;font-weight:800;text-decoration:none}
.panel-view{overflow:auto;padding:22px;align-content:start}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.section-heading h2{margin:0}.section-heading p{margin:4px 0 0;color:var(--muted)}.warning-banner{display:flex;gap:12px;background:#fff2cf;border:1px solid #efd68b;border-radius:12px;padding:12px;margin-bottom:18px}.warning-banner span{color:#6c5a29}.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px}.connection-card,.user-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 5px 15px rgba(7,59,48,.04)}.connection-card header{display:flex;justify-content:space-between;gap:10px}.status{border-radius:999px;padding:5px 8px;font-size:.7rem;font-weight:800;background:#edf1f0}.status.ready{background:#d9f5e9;color:#057149}.status.qr{background:#fff0c4;color:#795600}.status.error{background:#ffdddd;color:#9f2525}.qr-box{min-height:260px;display:grid;place-items:center}.qr-box img{width:min(100%,280px)}.connection-actions{display:flex;gap:8px}.connection-actions>*{flex:1}.users-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.user-card{display:flex;align-items:center;gap:12px}.user-card .avatar{flex:0 0 auto}.user-card div:nth-child(2){display:grid}.user-card small{color:var(--muted)}.role-chip{margin-left:auto;font-size:.7rem;border-radius:999px;background:#edf4f1;padding:5px 8px}.kanban-board{display:grid;grid-template-columns:repeat(7,minmax(245px,1fr));gap:12px;overflow:auto;padding-bottom:20px}.kanban-column{background:#e8efec;border-radius:13px;min-height:450px;padding:10px}.kanban-column header{display:flex;justify-content:space-between;font-weight:900;margin-bottom:10px}.kanban-column header b{background:#fff;border-radius:999px;padding:2px 7px}.kanban-cards{display:grid;gap:9px}.kanban-card{background:#fff;border:1px solid #d7e0dd;border-radius:11px;padding:10px;box-shadow:0 3px 8px rgba(7,59,48,.06);cursor:pointer}.kanban-card strong,.kanban-card span,.kanban-card small{display:block}.kanban-card span{color:var(--green);font-size:.75rem;font-weight:800;margin:4px 0}.label-list{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px}.label-tag{font-size:.64rem;background:#e1f2eb;color:#075f47;border-radius:999px;padding:3px 6px}.task-board{display:grid;gap:10px}.task-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:space-between}.task-row.overdue{border-left:4px solid var(--red)}
.toast{position:fixed;z-index:1000;right:20px;top:18px;max-width:420px;padding:12px 16px;background:var(--dark);color:#fff;border-radius:10px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-10px);transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#9f2525}dialog{border:0;border-radius:16px;padding:0;box-shadow:var(--shadow);width:min(480px,calc(100% - 30px))}dialog::backdrop{background:rgba(3,23,18,.48)}.dialog-card{padding:22px}.dialog-card header{display:flex;justify-content:space-between;align-items:center}.dialog-card h2{margin:0}.icon-button{border:0;background:transparent;font-size:1.5rem}
.install-help{display:grid;gap:5px}.install-help p{margin:0 0 12px;color:var(--muted)}
@media(min-width:1000px){.sidebar:hover{width:190px;position:relative;z-index:4}.sidebar:hover .nav-button{grid-template-columns:35px 1fr;text-align:left}.sidebar:hover .nav-button span{display:block;font-size:.83rem;font-weight:700}.sidebar:hover .sidebar-logo{justify-content:start;padding-left:4px}}
@media(max-width:1180px){.chat-layout{grid-template-columns:310px 1fr}.detail-column{position:absolute;right:0;top:80px;bottom:0;width:340px;z-index:5;box-shadow:-15px 0 35px rgba(0,0,0,.14)}.account-pills{display:none}.connection-grid{grid-template-columns:1fr}}
@media(max-width:760px){.app-shell{grid-template-columns:54px 1fr}.sidebar{padding:8px 5px}.topbar{padding:11px}.chat-layout{grid-template-columns:1fr}.message-column{display:none}.chat-layout.chat-open .conversation-column{display:none}.chat-layout.chat-open .message-column{display:grid}.mobile-chat-action,.mobile-detail-close{display:inline-grid;place-items:center;min-width:36px;min-height:36px;padding:6px 9px}.chat-header{padding:8px;gap:7px}.chat-header .avatar{width:34px;height:34px}.chat-header small{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-chip{display:none}.user-chip div{display:none}.panel-view{padding:14px}.kanban-board{grid-template-columns:repeat(7,260px)}.detail-column{display:none;top:72px;width:calc(100% - 54px)}.detail-column.mobile-open{display:flex}.message{max-width:88%}}
.quote-command-box{display:flex;flex-direction:column;gap:7px;margin-bottom:4px;padding:12px;border:1px solid #e8cf88;border-radius:11px;background:#fff8e7}.quote-command-box small{font-size:.66rem;font-weight:850;color:#7c5a09}.quote-command-box input{width:100%;border:1px solid #dec985;border-radius:8px;padding:9px;font-size:.75rem}.quote-command-box span{font-size:.7rem;color:#17644d;font-weight:700}

/* Kanban 1.2: oito etapas e movimentação por arrastar e soltar. */
.kanban-board{grid-template-columns:repeat(8,minmax(245px,1fr))}
.kanban-column{border:2px solid transparent;padding:9px;transition:border-color .15s,background .15s}
.kanban-column.drop-target{background:#daf1e7;border-color:#07956c}
.kanban-cards{min-height:380px}
.kanban-card{cursor:grab}
.kanban-card:active{cursor:grabbing}
.kanban-card.dragging{opacity:.45;transform:rotate(1deg)}
@media(max-width:760px){.kanban-board{grid-template-columns:repeat(8,260px)}}
