.crab-ai-root{--m-50:#eef5ef;--m-100:#d9e8dc;--m-200:#b9d3be;--m-300:#97bf9d;--m-400:#6fa278;--m-500:#4f8c5a;--m-600:#3a7d4d;--m-700:#2f6440;--m-800:#244c31;--m-900:#173322;--m-950:#0f2b26;--mare-500:#2b6cb0;--c-50:#f7f6f3;--c-100:#ece9e2;--c-200:#d8d3c8;--c-300:#b7afa1;--c-400:#8c8478;--c-500:#635c52;--c-600:#494339;--c-700:#353027;--c-800:#221f19;--c-900:#14110d;--danger:#d9531e;--danger-50:#fbe6dd;--danger-100:#f3cab5;--warn-50:#fbeec5;--info-50:#d8e4f1;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-pill:999px;--shadow-1:0 1px 2px #0f2b260f;--shadow-2:0 4px 12px #0f2b2614;--shadow-3:0 12px 28px #0f2b2624;--shadow-4:0 24px 60px #0f2b2638;--ease-out:cubic-bezier(.22,1,.36,1);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-family:var(--font-sans);letter-spacing:-.005em;color:var(--c-900)}.crab-ai-root *,.crab-ai-root :before,.crab-ai-root :after{box-sizing:border-box}.crab-ai-root button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:0}.crab-ai-root kbd{font-family:var(--font-sans)}.crab-fab{z-index:70;background:var(--m-950);color:#fff;border-radius:var(--r-pill);box-shadow:var(--shadow-4),0 0 0 3px #3a7d4d2e;letter-spacing:-.01em;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),opacity .2s var(--ease-out);align-items:center;gap:.6rem;padding:.55rem 1rem .55rem .55rem;font-size:.9375rem;font-weight:500;display:inline-flex;position:fixed;bottom:22px;right:22px}.crab-fab:hover{box-shadow:var(--shadow-4),0 0 0 5px #3a7d4d3d;transform:translateY(-2px)}.crab-fab .av{background:linear-gradient(135deg,#fff 0%,var(--m-50)100%);border-radius:999px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid;position:relative;box-shadow:0 0 0 1px #ffffff14}.crab-fab .av img{width:26px;height:26px}.crab-fab .av:after{content:"";background:var(--m-300);border:2px solid var(--m-950);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-2px;right:-2px}.crab-fab.hidden{opacity:0;pointer-events:none;transform:translateY(120px)}.crab-backdrop{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .26s var(--ease-out);background:#0f2b2652;position:fixed;inset:0}.crab-backdrop.open{opacity:1;pointer-events:auto}.crab-drawer{z-index:91;border-radius:var(--r-xl);width:480px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-4);border:1px solid var(--m-100);transition:transform .32s var(--ease-out);background:#fff;flex-direction:column;display:flex;position:fixed;top:12px;bottom:12px;right:12px;overflow:hidden;transform:translate(calc(100% + 24px))}.crab-drawer.open{transform:translate(0)}.crab-head{background:radial-gradient(800px 280px at 100% -10%,#3a7d4d38 0%,transparent 55%),radial-gradient(420px 220px at 0% 110%,#97bf9d1f 0%,transparent 60%),linear-gradient(180deg,var(--m-950)0%,#082018 100%);color:#fff;padding:1.1rem 1.2rem 1rem;position:relative;overflow:hidden}.crab-head:before{content:"";background:linear-gradient(90deg,#0000,#97bf9d66,#0000);height:1px;position:absolute;inset:auto 0 0}.crab-head .row{align-items:center;gap:.75rem;display:flex}.crab-head .av{background:linear-gradient(135deg,#fff 0%,var(--m-50)100%);border-radius:999px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid;position:relative;box-shadow:0 0 0 1px #ffffff14,inset 0 -2px 6px #0f2b260f}.crab-head .av img{width:28px;height:28px}.crab-head .av:after{content:"";background:var(--m-300);border:2px solid var(--m-950);border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.crab-head .meta{flex:1;min-width:0}.crab-head .name{letter-spacing:-.02em;align-items:center;gap:.4rem;font-size:1.0625rem;font-weight:600;display:flex}.crab-head .name .tag{border-radius:var(--r-xs);color:#deebdf;letter-spacing:.08em;text-transform:uppercase;background:#3a7d4d52;border:1px solid #97bf9d33;padding:2px 7px;font-size:.6rem;font-weight:700}.crab-head .sub{color:#ffffff9e;margin-top:2px;font-size:.75rem}.crab-head .sub .dot{background:var(--m-300);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:6px;animation:2.4s ease-in-out infinite crabPulse;display:inline-block;box-shadow:0 0 0 3px #97bf9d38}@keyframes crabPulse{0%,to{box-shadow:0 0 0 3px #97bf9d38}50%{box-shadow:0 0 0 6px #97bf9d00}}.crab-head .actions{gap:4px;display:flex}.crab-head .actions button{border-radius:var(--r-sm);color:#ffffffb3;width:32px;height:32px;transition:background .15s var(--ease-out),color .15s var(--ease-out);place-items:center;display:grid}.crab-head .actions button:hover{color:#fff;background:#ffffff14}.crab-head .hist-btn{border-radius:var(--r-sm);color:#ffffffb3;width:32px;height:32px;transition:background .15s var(--ease-out),color .15s var(--ease-out);place-items:center;margin-right:.25rem;display:grid}.crab-head .hist-btn:hover{color:#fff;background:#ffffff14}.crab-head .hist-btn.active{color:#fff;background:#ffffff24}.crab-history{border-right:1px solid var(--c-100);z-index:5;width:280px;max-width:80%;transition:transform .26s var(--ease-out);box-shadow:var(--shadow-3);background:#fff;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%)}.crab-history.open{transform:translate(0)}.crab-history .h-head{border-bottom:1px solid var(--c-100);justify-content:space-between;align-items:center;padding:.85rem .9rem .65rem;display:flex}.crab-history .h-head h3{letter-spacing:-.015em;color:var(--c-900);margin:0;font-size:.9375rem;font-weight:600}.crab-history .h-head button{border-radius:var(--r-sm);width:28px;height:28px;color:var(--c-500);place-items:center;display:grid}.crab-history .h-head button:hover{background:var(--c-50);color:var(--c-900)}.crab-history .new-conv{background:var(--m-600);color:#fff;border-radius:var(--r-md);transition:background .15s var(--ease-out);justify-content:center;align-items:center;gap:.5rem;margin:.65rem .65rem .5rem;padding:.55rem .75rem;font-size:.825rem;font-weight:500;display:flex}.crab-history .new-conv:hover{background:var(--m-700)}.crab-history .h-list{scrollbar-width:thin;scrollbar-color:var(--c-200)transparent;flex:1;padding:.35rem 0 .65rem;overflow-y:auto}.crab-history .h-list::-webkit-scrollbar{width:6px}.crab-history .h-list::-webkit-scrollbar-thumb{background:var(--c-200);border-radius:999px}.h-group{margin-top:.5rem}.h-group:first-child{margin-top:0}.h-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-500);padding:.25rem .9rem .35rem;font-size:.625rem;font-weight:700}.h-item{cursor:pointer;transition:background .12s var(--ease-out);border-left:2px solid #0000;flex-direction:column;gap:2px;padding:.5rem .9rem;display:flex;position:relative}.h-item:hover{background:var(--m-50)}.h-item:hover .h-item-del{opacity:1}.h-item.active{background:var(--m-50);border-left-color:var(--m-600)}.h-item .h-item-title{color:var(--c-800);white-space:nowrap;text-overflow:ellipsis;padding-right:18px;font-size:.8125rem;font-weight:500;line-height:1.3;overflow:hidden}.h-item .h-item-sub{color:var(--c-500);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.h-item .h-item-del{border-radius:var(--r-xs);width:22px;height:22px;color:var(--c-400);opacity:0;transition:opacity .15s var(--ease-out),background .15s var(--ease-out),color .15s var(--ease-out);place-items:center;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.h-item .h-item-del:hover{background:var(--danger-50);color:var(--danger)}.h-item.active .h-item-del{opacity:1}.h-foot{border-top:1px solid var(--c-100);color:var(--c-500);align-items:center;gap:.35rem;padding:.5rem .9rem;font-size:.6875rem;display:flex}.h-foot strong{color:var(--c-700);font-weight:600}.h-empty{text-align:center;color:var(--c-500);padding:1.5rem 1rem;font-size:.8125rem;line-height:1.45}.crab-confirm-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:crabConfirmFade .16s var(--ease-out);background:#0f2b2675;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}@keyframes crabConfirmFade{0%{opacity:0}to{opacity:1}}.crab-confirm{border-radius:var(--r-lg);border:1px solid var(--m-100);box-shadow:var(--shadow-4);width:100%;max-width:420px;animation:crabConfirmPop .2s var(--ease-out);background:#fff;padding:1.5rem 1.5rem 1.25rem}@keyframes crabConfirmPop{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.crab-confirm h3{letter-spacing:-.02em;color:var(--c-900);margin:0 0 .5rem;font-size:1.0625rem;font-weight:600}.crab-confirm p{color:var(--c-700);letter-spacing:-.005em;margin:0 0 1.35rem;font-size:.875rem;line-height:1.5}.crab-confirm p strong{color:var(--c-900);font-weight:600}.crab-confirm-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.crab-confirm-btn{min-width:132px;height:44px;font-family:var(--font-sans);letter-spacing:0;transition:background .15s var(--ease-out),color .15s var(--ease-out),border-color .15s var(--ease-out);border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.crab-confirm-btn.outline{color:#1e352f;background:#fff;border-color:#cdcdcd}.crab-confirm-btn.outline:hover:not(:disabled){background:#f5f5f5;border-color:#adadad}.crab-confirm-btn.destructive{color:#fcfcfd;background:#a72420;border-color:#7a1815}.crab-confirm-btn.destructive:hover:not(:disabled){background:#8c1c18;border-color:#5d1a18}.crab-confirm-btn:disabled{opacity:.55;cursor:not-allowed}.crab-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite crabSpin}@keyframes crabSpin{to{transform:rotate(360deg)}}.crab-context{background:var(--m-50);border-bottom:1px solid var(--m-100);color:var(--m-800);align-items:center;gap:.5rem;padding:.55rem 1.2rem;font-size:.75rem;display:flex}.crab-context strong{color:var(--m-900);font-weight:600}.crab-context .ctx-pill{border-radius:var(--r-xs);background:var(--m-700);color:#fff;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;font-size:.6rem;font-weight:700}.crab-body{scrollbar-width:thin;scrollbar-color:var(--c-200)transparent;background:linear-gradient(180deg,#fff 0%,var(--m-50)200%);flex-direction:column;flex:1;gap:1rem;padding:1.1rem;display:flex;overflow-y:auto}.crab-body::-webkit-scrollbar{width:8px}.crab-body::-webkit-scrollbar-thumb{background:var(--c-200);border-radius:999px}.msg{gap:.65rem;max-width:100%;display:flex}.msg.user{flex-direction:row-reverse}.msg-av{border-radius:999px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:.6875rem;font-weight:700;display:grid}.msg.crab .msg-av{background:linear-gradient(135deg,var(--m-50)0%,#fff 100%);border:1px solid var(--m-200);padding:2px}.msg.crab .msg-av img{width:24px;height:24px;display:block}.msg.user .msg-av{background:var(--m-100);color:var(--m-800)}.msg-bubble{border-radius:var(--r-md);word-wrap:break-word;max-width:calc(100% - 42px);padding:.75rem .9rem;font-size:.9rem;line-height:1.55}.msg.crab .msg-bubble{color:var(--c-900);border:1px solid var(--c-100);box-shadow:var(--shadow-1);background:#fff;border-top-left-radius:4px}.msg.user .msg-bubble{background:var(--m-600);color:#fff;border-top-right-radius:4px}.msg-bubble p{margin:0 0 .5rem}.msg-bubble p:last-child{margin:0}.msg-bubble strong{font-weight:600}.msg-bubble code{background:var(--m-50);color:var(--m-800);border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.msg.user .msg-bubble code{color:#fff;background:#ffffff2e}.msg-bubble ul,.msg-bubble ol{margin:.35rem 0;padding-left:1.1rem}.msg-bubble li{margin:2px 0}.stamp{letter-spacing:.14em;text-transform:uppercase;border-radius:var(--r-xs);vertical-align:middle;margin-right:.35rem;padding:2px 7px;font-size:.625rem;font-weight:700;display:inline-block;position:relative;top:-1px}.stamp.por-que{background:var(--m-700);color:#fff}.stamp.explicando{background:var(--mare-500);color:#fff}.stamp.bottom-line{color:#fff;background:#5c3623}.inline-card{border:1px solid var(--m-100);border-radius:var(--r-md);background:var(--m-50);margin:.55rem 0 .2rem;overflow:hidden}.inline-card .ic-head{border-bottom:1px solid var(--m-100);background:#fff;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.inline-card .ic-head .ic-title{color:var(--c-800);font-size:.75rem;font-weight:600}.inline-card .ic-head .ic-unit{color:var(--c-500);font-variant-numeric:tabular-nums;font-size:.6875rem}.inline-card .ic-body{flex-direction:column;gap:.45rem;padding:.7rem .75rem;display:flex}.escopo-row{align-items:center;gap:.5rem;display:flex}.escopo-row .lbl{color:var(--c-700);flex-shrink:0;width:76px;font-size:.7rem;font-weight:500}.escopo-row .bar{border-radius:var(--r-xs);background:var(--c-100);flex:1;height:10px;position:relative;overflow:hidden}.escopo-row .fill{border-radius:var(--r-xs);height:100%}.escopo-row .fill.e1{background:var(--m-800)}.escopo-row .fill.e2{background:var(--m-500)}.escopo-row .fill.e3{border:1px solid var(--m-200);box-sizing:border-box;background:repeating-linear-gradient(45deg,#c9ddc1 0 6px,#e3eeda 6px 12px)}.escopo-row .val{color:var(--c-800);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;width:80px;font-size:.75rem;font-weight:600}.escopo-row .val-pct{color:var(--c-500);font-weight:500}.inline-card .ic-foot{color:var(--c-500);border-top:1px solid var(--m-100);background:#fff;padding:.45rem .75rem;font-size:.6875rem}.escopo-row .fill.outlier-normal{background:var(--m-500)}.escopo-row .fill.outlier-alert{background:var(--danger)}.escopo-row .val.danger{color:var(--danger)}.msg-actions{flex-wrap:wrap;gap:.35rem;margin:.25rem 0 0 42px;display:flex}.action-chip{border-radius:var(--r-pill);border:1px solid var(--m-200);color:var(--m-700);transition:background .15s var(--ease-out);background:#fff;align-items:center;gap:.25rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.action-chip:hover{background:var(--m-50)}.action-chip.primary{background:var(--m-600);color:#fff;border-color:var(--m-600)}.action-chip.primary:hover{background:var(--m-700)}.typing{gap:4px;padding:4px 2px;display:inline-flex}.typing span{background:var(--m-400);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite crabBlink}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes crabBlink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.crab-composer{border-top:1px solid var(--c-100);background:#fff;padding:.75rem .9rem 1rem}.composer-row{background:var(--c-50);border:1px solid var(--c-100);border-radius:var(--r-md);transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out),background .15s var(--ease-out);align-items:flex-end;gap:.5rem;padding:.35rem .35rem .35rem .75rem;display:flex}.composer-row:focus-within{border-color:var(--m-400);background:#fff;box-shadow:0 0 0 3px #3a7d4d1f}.composer-row textarea{resize:none;font-family:var(--font-sans);color:var(--c-900);background:0 0;border:0;outline:0;flex:1;min-height:22px;max-height:140px;padding:.4rem 0;font-size:.9rem;line-height:1.4}.composer-row textarea::placeholder{color:var(--c-400)}.composer-tools{flex-shrink:0;align-items:center;gap:2px;display:flex}.composer-tools .send{border-radius:var(--r-sm);background:var(--m-600);color:#fff;width:32px;height:32px;transition:background .15s var(--ease-out);place-items:center;display:grid}.composer-tools .send:hover:not(:disabled){background:var(--m-700)}.composer-tools .send:disabled{background:var(--c-200);color:var(--c-400);cursor:not-allowed}.composer-foot{color:var(--c-500);justify-content:space-between;align-items:center;margin-top:.5rem;padding:0 .15rem;font-size:.6875rem;display:flex}.composer-foot .left{align-items:center;gap:.35rem;display:flex}.composer-foot kbd{background:var(--c-100);color:var(--c-700);border:1px solid var(--c-200);border-bottom-width:2px;border-radius:3px;padding:1px 5px;font-size:.6875rem}@media (max-width:640px){.crab-drawer{border-radius:0;width:100%;max-width:100%;top:0;bottom:0;right:0}.crab-fab{padding:.5rem;bottom:14px;right:14px}.crab-fab .label{display:none}}.crab-ai-root .tool-indicators{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.crab-ai-root .tool-indicator{color:var(--c-500);border-radius:var(--r-sm);background:var(--c-50);border:1px solid var(--c-100);align-items:center;gap:.4rem;width:fit-content;max-width:100%;padding:.25rem .55rem;font-size:.72rem;font-style:italic;display:inline-flex}.crab-ai-root .tool-indicator.tool-pending{color:var(--m-700);background:var(--m-50);border-color:var(--m-100)}.crab-ai-root .tool-indicator.tool-done{color:var(--m-700);border-color:var(--m-200);background:#fff;font-style:normal}.crab-ai-root .tool-indicator.tool-error{color:var(--danger);background:var(--danger-50);border-color:var(--danger-100);font-style:normal}.crab-ai-root .tool-indicator .tool-latency{color:var(--c-400);font-style:normal}.crab-ai-root .tool-spinner{border:2px solid var(--m-200);border-top-color:var(--m-600);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.8s linear infinite crabSpin}.crab-ai-root .citation-card{border-top:1px dashed var(--c-200);margin-top:.75rem;padding-top:.6rem}.crab-ai-root .citation-card .cit-head{text-transform:uppercase;letter-spacing:.05em;color:var(--c-500);align-items:center;gap:.3rem;margin-bottom:.3rem;font-size:.66rem;display:inline-flex}.crab-ai-root .citation-card .cit-list{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.crab-ai-root .citation-card .cit-item{color:var(--c-700);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.74rem;display:inline-flex}.crab-ai-root .citation-card .cit-source{color:var(--m-700);font-weight:600}.crab-ai-root .citation-card .cit-sep,.crab-ai-root .citation-card .cit-version{color:var(--c-400)}.crab-ai-root .citation-card .cit-link{color:var(--mare-500);margin-left:.15rem;display:inline-flex}.crab-ai-root .citation-card .cit-link:hover{color:var(--m-700)}.crab-ai-root .audit-footer{color:var(--c-500);flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.5rem;font-size:.7rem;display:inline-flex}.crab-ai-root .audit-footer .af-sep{color:var(--c-300)}.crab-ai-root .audit-footer svg{color:var(--m-600)}.crab-ai-root .crab-welcome{flex-direction:column;gap:1.4rem;padding:.3rem .1rem .6rem;display:flex}.crab-ai-root .cw-hero{border-bottom:1px solid var(--m-100);flex-direction:column;gap:.55rem;padding-bottom:1rem;display:flex}.crab-ai-root .cw-pill{letter-spacing:.14em;text-transform:uppercase;color:var(--m-700);align-self:flex-start;align-items:center;gap:.45rem;font-size:.66rem;font-weight:700;display:inline-flex}.crab-ai-root .cw-dot{border-radius:var(--r-pill);background:var(--m-500);width:6px;height:6px;box-shadow:0 0 0 3px #4f8c5a2e}.crab-ai-root .cw-title{color:var(--c-900);letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:700;line-height:1.15}.crab-ai-root .cw-lead{color:var(--c-600);margin:0;font-size:.86rem;line-height:1.5}.crab-ai-root .cw-section{flex-direction:column;gap:.5rem;display:flex}.crab-ai-root .cw-section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--m-700);align-items:center;gap:.4rem;font-size:.66rem;font-weight:700;display:inline-flex}.crab-ai-root .cw-section-label svg{color:var(--m-600)}.crab-ai-root .cw-cards{flex-direction:column;gap:.4rem;display:flex}.crab-ai-root .cw-card{border:1px solid var(--m-100);border-radius:var(--r-md);width:100%;font:inherit;color:var(--c-800);text-align:left;cursor:pointer;box-shadow:var(--shadow-1);transition:border-color .16s var(--ease-out),transform .16s var(--ease-out),box-shadow .16s var(--ease-out);background:#fff;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;font-size:.83rem;line-height:1.35;display:flex}.crab-ai-root .cw-card:hover{border-color:var(--m-300);box-shadow:var(--shadow-2);transform:translateY(-1px)}.crab-ai-root .cw-card:focus-visible{outline:2px solid var(--m-500);outline-offset:2px}.crab-ai-root .cw-card-text{flex:1}.crab-ai-root .cw-card svg{color:var(--c-400);transition:color .16s var(--ease-out),transform .16s var(--ease-out);flex-shrink:0}.crab-ai-root .cw-card:hover svg{color:var(--m-600);transform:translate(2px)}
