:root{--mango-orange:#f4a024;--mango-orange-dark:#d4850f;--mango-yellow:#ffd166;--mango-cream:#fff8ef;--mango-cream-dark:#ffe8c8;--mango-leaf:#4a7c59;--mango-leaf-dark:#2f5a3a;--mango-brown:#5c3d1e;--mango-brown-light:#8b6914;--mango-text:#3d2914;--mango-text-muted:#7a5c3a;--mango-border:#f0d9b5;--mango-shadow:#5c3d1e1a;--mango-card:#fff;--mango-danger:#c0392b;--mango-success:#4a7c59;--mango-warning-bg:#fff3cd;--mango-warning-text:#856404;--mango-error-bg:#fdecea;--mango-error-text:#611a15;--mango-info-bg:#eefaf3;--mango-info-text:#2f5a3a;--font-sans:"Segoe UI", system-ui, -apple-system, sans-serif;--font-heading:Georgia, "Times New Roman", serif;--radius:12px;--radius-sm:8px}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--mango-text);background:radial-gradient(circle at 10% 0%, #ffd16659, transparent 45%), radial-gradient(circle at 90% 10%, #f4a02433, transparent 40%), linear-gradient(180deg, var(--mango-cream) 0%, #fff 100%);min-height:100svh;margin:0;font-size:16px;line-height:1.5}#root{min-height:100svh}h1,h2,h3{font-family:var(--font-heading);color:var(--mango-brown);font-weight:600}a{color:var(--mango-leaf-dark)}.page{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 3rem}.page-header{margin-bottom:2rem}.page-header h1{margin:0 0 .5rem;font-size:2rem}.page-header .lead{color:var(--mango-text-muted);max-width:42rem;margin:0}.card{background:var(--mango-card);border:1px solid var(--mango-border);border-radius:var(--radius);box-shadow:0 2px 8px var(--mango-shadow);padding:1.25rem}.card h2{margin:0 0 1rem;font-size:1.15rem}.field{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.field label{color:var(--mango-brown-light);font-size:.85rem;font-weight:600}.field input,.field textarea,.field select{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;color:var(--mango-text);background:#fff;padding:.6rem .75rem}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--mango-orange);outline:2px solid #f4a02459}.field textarea{resize:vertical;min-height:96px}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn{border-radius:var(--radius-sm);font:inherit;cursor:pointer;background:linear-gradient(180deg, var(--mango-orange) 0%, var(--mango-orange-dark) 100%);color:#fff;box-shadow:0 2px 4px var(--mango-shadow);border:none;padding:.55rem .95rem;font-weight:600}.btn:hover:not(:disabled){filter:brightness(1.05)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--mango-cream-dark);color:var(--mango-brown);box-shadow:none}.btn-danger{background:var(--mango-danger)}.alert{border-radius:var(--radius-sm);margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.alert-error{background:var(--mango-error-bg);color:var(--mango-error-text);border:1px solid #f5c6cb}.alert-info{background:var(--mango-info-bg);color:var(--mango-info-text);border:1px solid #b8dfc8}.empty{color:var(--mango-text-muted);font-size:.9rem}.navbar{background:linear-gradient(90deg, var(--mango-leaf-dark) 0%, var(--mango-leaf) 55%, var(--mango-orange) 100%);border-bottom:3px solid var(--mango-orange-dark);box-shadow:0 4px 16px var(--mango-shadow);z-index:100;justify-content:space-between;align-items:center;gap:1.5rem;padding:.85rem 1.5rem;display:flex;position:sticky;top:0}.navbar-brand{color:#fff;align-items:center;gap:.65rem;text-decoration:none;display:flex}.navbar-brand strong{font-family:var(--font-heading);font-size:1.15rem;line-height:1.2;display:block}.navbar-brand small{opacity:.85;font-size:.72rem;font-weight:400;display:block}.navbar-logo{filter:drop-shadow(0 2px 2px #0003);font-size:1.75rem;line-height:1}.navbar-links{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.navbar-link{color:#ffffffe6;border-radius:999px;padding:.45rem .85rem;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s}.navbar-link:hover{color:#fff;background:#ffffff26}.navbar-link.active{background:var(--mango-cream);color:var(--mango-brown)}.navbar-user{align-items:center;gap:.5rem;margin-left:auto;display:flex}.navbar-user-name{color:#ffffffd9;text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:.82rem;overflow:hidden}.navbar-logout{font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff73;font-size:.85rem;font-weight:600}@media (width<=640px){.navbar-user{justify-content:center;margin-left:0}.navbar{flex-direction:column;align-items:stretch;padding:.75rem 1rem}.navbar-links{justify-content:center}}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-main{flex:1}.home-page{padding-top:2.5rem}.home-hero{grid-template-columns:1fr auto;align-items:center;gap:2rem;display:grid}.home-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--mango-orange-dark);margin:0 0 .25rem;font-size:.75rem;font-weight:700}.home-hero h1{background:linear-gradient(135deg, var(--mango-brown) 0%, var(--mango-orange-dark) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 .75rem;font-size:clamp(2rem,5vw,3rem)}.home-hero-art{width:180px;height:180px;position:relative}.mango-float{font-size:4rem;animation:4s ease-in-out infinite float;position:absolute}.mango-a{top:10%;left:20%}.mango-b{font-size:2rem;animation-delay:-1.5s;top:45%;right:5%}.mango-c{opacity:.85;font-size:2.5rem;animation-delay:-2.5s;bottom:5%;left:35%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.home-tiles{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.home-tile{color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}.home-tile:hover{box-shadow:0 8px 20px var(--mango-shadow);transform:translateY(-3px)}.home-tile-emoji{margin-bottom:.5rem;font-size:2rem;display:block}.home-tile h2{margin:0 0 .5rem;font-size:1.25rem}.home-tile p{color:var(--mango-text-muted);margin:0 0 1rem;font-size:.95rem}.home-tile-link{color:var(--mango-orange-dark);font-weight:700}@media (width<=720px){.home-hero{grid-template-columns:1fr}.home-hero-art{margin:0 auto}}.ah-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.ah-auth-card{grid-column:1/-1}.ah-auth-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.ah-brand{align-items:center;gap:.75rem;display:flex}.ah-logo{color:#fff;background:#0050a5;border-radius:999px;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.1rem;font-weight:800;display:inline-flex}.ah-member{color:var(--mango-text-muted);margin:0}.ah-product-list,.ah-item-list{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.ah-product-item,.ah-list-item{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.ah-product-main strong,.ah-list-item strong{color:var(--mango-brown);display:block}.ah-product-main span,.ah-list-item span{color:var(--mango-text-muted);font-size:.85rem;display:block}.ah-bonus{color:#fff;background:#0050a5;border-radius:999px;margin-top:.25rem;padding:.1rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.ah-cart-total{color:var(--mango-brown);margin-top:1rem;font-weight:700}.ah-wide-card{grid-column:1/-1}.ah-search-row{gap:.5rem;display:flex}.ah-search-row input{flex:1}.lists-layout{grid-template-columns:minmax(240px,300px) 1fr;align-items:start;gap:1.25rem;display:grid}.lists-sidebar h2,.lists-main h2{margin-top:0}.lists-create-form{border-bottom:1px solid var(--mango-border);margin-bottom:1rem;padding-bottom:1rem}.lists-nav{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.lists-nav-btn{text-align:left;border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);cursor:pointer;width:100%;font:inherit;color:inherit;padding:.65rem .75rem}.lists-nav-btn strong{color:var(--mango-brown);display:block}.lists-nav-btn span{color:var(--mango-text-muted);font-size:.8rem;display:block}.lists-nav-btn.active{border-color:var(--mango-orange);background:var(--mango-cream-dark)}.lists-main{flex-direction:column;gap:1.25rem;display:flex}.lists-edit-row{gap:1rem;display:grid}.lists-checkboxes{flex-wrap:wrap;gap:1rem;margin-bottom:.9rem;display:flex}.lists-panel{min-height:200px}.lists-items{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.lists-item{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.lists-item-main strong{color:var(--mango-brown);margin-bottom:.35rem;display:block}.lists-item-badges{flex-wrap:wrap;gap:.35rem;display:flex}.badge{text-transform:uppercase;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.badge-public{background:var(--mango-info-bg);color:var(--mango-leaf-dark)}.badge-private{background:var(--mango-cream-dark);color:var(--mango-brown-light)}.badge-system{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.lists-empty-panel{justify-content:center;align-items:center;min-height:240px;display:flex}.lists-edit-header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.lists-edit-header h2{margin:0}.badge-ah{background:var(--mango-info-bg);color:var(--mango-info-text)}.lists-ah-add h2{margin-top:0}.lists-ah-lead{color:var(--mango-text-muted);margin:0 0 1rem}.lists-ah-smart-form,.lists-ah-manual-form{margin-bottom:1rem}.lists-ah-smart-form textarea{border:1px solid var(--mango-border);border-radius:var(--radius-sm);width:100%;min-height:4rem;font:inherit;resize:vertical;background:#fff;padding:.75rem}.lists-ah-manual-row{gap:.5rem;display:flex}.lists-ah-manual-row input{flex:1}.lists-ah-results h3{margin:0 0 .75rem;font-size:1rem}.lists-ah-search-groups{flex-direction:column;gap:1rem;display:flex}.lists-ah-search-group{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:#fff;padding:.85rem}.lists-ah-search-group-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.65rem;display:flex}.lists-ah-search-group-header h4{color:var(--mango-brown);margin:0}.lists-ah-search-group-header span{color:var(--mango-text-muted);font-size:.85rem}.lists-ah-options-label{color:var(--mango-text-muted);margin:0 0 .65rem;font-size:.85rem}.lists-ah-picked-badge{text-transform:uppercase;background:var(--mango-info-bg);color:var(--mango-info-text);border-radius:999px;margin-top:.25rem;padding:.1rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.lists-ah-product-picked{border-color:var(--mango-leaf);background:var(--mango-info-bg)}.lists-ah-picks,.lists-ah-products{flex-direction:column;gap:.65rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.lists-ah-pick,.lists-ah-product,.lists-item-ah{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);align-items:flex-start;gap:.75rem;padding:.75rem;display:flex}.lists-ah-pick-fail{flex-direction:column;align-items:stretch}.lists-ah-pick-main,.lists-ah-product-main,.lists-item-ah .lists-item-main{flex:1;min-width:0}.lists-ah-pick-main strong{color:var(--mango-brown);display:block}.lists-ah-product-title-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.45rem;display:flex}.lists-ah-product-title-row strong,.lists-item-ah .lists-item-main>strong{color:var(--mango-brown)}.lists-ah-product-data{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.35rem .75rem;margin:0;display:grid}.lists-ah-product-data-row{min-width:0}.lists-ah-product-data dt{text-transform:uppercase;letter-spacing:.03em;color:var(--mango-text-muted);margin:0;font-size:.72rem;font-weight:700}.lists-ah-product-data dd{color:var(--mango-brown);word-break:break-word;margin:.1rem 0 0;font-size:.85rem}.lists-ah-item-qty{color:var(--mango-text-muted);margin-bottom:.35rem;font-size:.85rem;display:block}.lists-ah-pick-main span{color:var(--mango-text-muted);font-size:.85rem;display:block}.lists-ah-pick-reason{color:var(--mango-brown);margin:.45rem 0 0;font-size:.88rem;line-height:1.4}.lists-ah-product-image{object-fit:contain;border-radius:var(--radius-sm);background:#fff;flex-shrink:0;width:48px;height:48px}.lists-ah-item-meta{color:var(--mango-text-muted);font-size:.85rem;display:block}.lists-ah-item-id{color:var(--mango-text-muted);font-size:.78rem;display:block}@media (width<=860px){.lists-layout{grid-template-columns:1fr}.lists-item{flex-direction:column;align-items:stretch}}.agent-grid{gap:1.5rem;display:grid}.agent-input-card,.agent-result-card,.agent-history-card{grid-column:1/-1}.agent-form{flex-direction:column;gap:.75rem;display:flex}.agent-form textarea{border:1px solid var(--mango-border);border-radius:var(--radius-sm);width:100%;min-height:5rem;font:inherit;resize:vertical;background:#fff;padding:.75rem}.agent-examples{margin-top:1.25rem}.agent-examples-label{color:var(--mango-text-muted);margin:0 0 .5rem;font-size:.85rem}.agent-chip-row{flex-wrap:wrap;gap:.5rem;display:flex}.agent-chip{border:1px solid var(--mango-border);background:var(--mango-cream);color:var(--mango-brown);cursor:pointer;border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.agent-chip:hover:not(:disabled){background:var(--mango-cream-dark)}.agent-chip:disabled{opacity:.6;cursor:not-allowed}.agent-result-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.agent-result-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.agent-list-card{grid-column:1/-1}.agent-list-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.agent-list-header h2{margin:0}.agent-list-link{color:var(--mango-leaf-dark);font-size:.9rem}.agent-list-items{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.agent-list-items li{border-radius:var(--radius-sm);background:var(--mango-cream);justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .65rem;display:flex}.agent-list-items span{color:var(--mango-text-muted);font-size:.85rem}.agent-list-more{color:var(--mango-text-muted);margin:.65rem 0 0;font-size:.85rem}.agent-pick-row{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.35rem;display:flex}.agent-pick-row .agent-resolved,.agent-pick-row .agent-suggested{flex:1;margin:0}.agent-add-btn{white-space:nowrap;flex-shrink:0}.agent-add-btn-added{opacity:.75}.agent-result-header h2{margin:0}.agent-intent{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-block}.agent-intent-add_to_list{background:var(--mango-info-bg);color:var(--mango-info-text)}.agent-intent-none{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.agent-phrase{border-left:4px solid var(--mango-orange);background:var(--mango-cream);border-radius:var(--radius-sm);color:var(--mango-brown);margin:0 0 1rem;padding:.75rem 1rem}.agent-meta{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.agent-meta-label{color:var(--mango-text-muted);margin-bottom:.15rem;font-size:.78rem;display:block}.agent-selections-summary{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:#fff;margin-bottom:1.25rem;padding:1rem}.agent-selections-summary h3{margin:0 0 .75rem;font-size:1rem}.agent-selections-list{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.agent-selection-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.agent-selection-request{color:var(--mango-text-muted);margin:.2rem 0 .45rem;font-size:.85rem}.agent-match-success,.agent-selection-header .agent-match-success{background:var(--mango-info-bg);color:var(--mango-info-text)}.agent-match-close,.agent-selection-header .agent-match-close{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.agent-items{flex-direction:column;gap:1rem;display:flex}.agent-item{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);padding:1rem}.agent-item-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.agent-item-header h3{margin:0;font-size:1.05rem}.agent-item-header span{color:var(--mango-text-muted);font-size:.85rem}.agent-match{border-radius:999px;flex-shrink:0;padding:.15rem .55rem;font-size:.75rem;font-weight:700}.agent-match-success{background:var(--mango-info-bg);color:var(--mango-info-text)}.agent-match-fail{background:var(--mango-error-bg);color:var(--mango-error-text)}.agent-match-close{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.agent-suggested{color:var(--mango-brown);margin:0 0 .35rem}.agent-suggested span{color:var(--mango-text-muted);font-size:.85rem}.agent-suggested-note,.agent-suggested-prompt{color:var(--mango-text-muted);margin:0 0 .35rem;font-size:.9rem}.agent-suggested-prompt{font-style:italic}.agent-resolved{color:var(--mango-brown);margin:0 0 .75rem}.agent-resolved span{color:var(--mango-text-muted);font-size:.85rem}.agent-justification{border-radius:var(--radius-sm);background:var(--mango-info-bg);color:var(--mango-brown);margin:0 0 .75rem;padding:.65rem .75rem;font-size:.92rem;line-height:1.45}.agent-justification strong{color:var(--mango-brown)}.agent-justification-inline{margin-top:.65rem}.agent-failed-reason{color:var(--mango-error-text);margin:0 0 .75rem}.agent-query-chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.agent-query-chip{border:1px solid var(--mango-border);color:var(--mango-brown);background:#fff;border-radius:999px;padding:.2rem .55rem;font-size:.82rem}.agent-rounds{flex-direction:column;gap:.65rem;display:flex}.agent-rounds details{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:#fff;padding:.65rem .75rem}.agent-rounds summary{cursor:pointer;color:var(--mango-brown);font-weight:600}.agent-pick-reason,.agent-next-query{color:var(--mango-text-muted);margin:.5rem 0 0;font-size:.9rem}.agent-candidate-list{flex-direction:column;gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.agent-candidate{border-radius:var(--radius-sm);border:1px solid var(--mango-border);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .65rem;display:flex}.agent-candidate-main{flex:1;min-width:0}.agent-candidate.picked{border-color:var(--mango-leaf);background:var(--mango-info-bg)}.agent-candidate strong{color:var(--mango-brown);display:block}.agent-candidate span{color:var(--mango-text-muted);font-size:.82rem;display:block}.agent-history-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.agent-history-item{text-align:left;border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);cursor:pointer;grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem;width:100%;padding:.75rem;display:grid}.agent-history-item:hover{background:var(--mango-cream-dark)}.agent-history-phrase{color:var(--mango-brown);grid-column:1/-1;font-weight:600}.agent-history-summary{color:var(--mango-text-muted);font-size:.82rem}.whatsapp-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.session-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.session-item{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.session-item.active{border-color:var(--mango-orange);background:var(--mango-cream-dark)}.session-meta{flex-direction:column;gap:.15rem;display:flex}.session-meta strong{color:var(--mango-brown);font-size:.95rem}.session-meta span{color:var(--mango-text-muted);font-size:.8rem}.status-pill{text-transform:uppercase;background:var(--mango-cream-dark);width:fit-content;color:var(--mango-brown-light);border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.status-pill.working{color:var(--mango-leaf-dark);background:#d4edda}.status-pill.scan_qr_code,.status-pill.starting{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.status-pill.failed,.status-pill.stopped{background:var(--mango-error-bg);color:var(--mango-error-text)}.qr-box{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:220px;display:flex}.qr-box img{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:#fff;width:220px;height:220px}.message-log-card{grid-column:1/-1}.message-log-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.message-log-header h2{margin:0}.message-log{flex-direction:column;gap:.75rem;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.message-item{border-radius:var(--radius-sm);border:1px solid var(--mango-border);padding:.85rem 1rem}.message-item.inbound{background:var(--mango-info-bg);border-color:#b8dfc8}.message-item.outbound{background:var(--mango-cream-dark);border-color:var(--mango-border)}.message-meta{justify-content:space-between;gap:1rem;margin-bottom:.35rem;font-size:.85rem;display:flex}.message-meta span{color:var(--mango-text-muted)}.message-body{white-space:pre-wrap;word-break:break-word;margin:0}.message-foot{color:var(--mango-text-muted);justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.75rem;display:flex}.ah-picker{border:1px dashed var(--mango-orange);border-radius:var(--radius-sm);background:#fff;margin-top:.75rem;padding:.85rem}.ah-picker-search{flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;display:flex}.ah-picker-search input{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;flex:14rem;padding:.55rem .7rem}.ah-picker-apply{margin-bottom:.6rem}.ah-picker-results{flex-direction:column;gap:.4rem;max-height:22rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ah-picker-row{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);align-items:center;gap:.75rem;padding:.45rem .6rem;display:flex}.ah-picker-row img,.ah-picker-noimg{object-fit:contain;background:#fff;border-radius:6px;flex-shrink:0;width:44px;height:44px}.ah-picker-main{flex-direction:column;flex:1;min-width:0;display:flex}.ah-picker-main span{color:var(--mango-text-muted);font-size:.82rem}.ah-chip{align-items:center;gap:.5rem;min-width:0;display:inline-flex}.ah-chip img{object-fit:contain;background:#fff;border-radius:6px;flex-shrink:0;width:36px;height:36px}.ah-chip-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.ah-chip-text strong{color:var(--mango-brown);font-size:.88rem}.ah-chip-text small{color:var(--mango-text-muted)}.badge{text-transform:uppercase;border-radius:999px;margin-left:.35rem;padding:.15rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.badge-bonus{background:var(--mango-yellow);color:var(--mango-brown)}.badge-easy,.badge-complete,.badge-high,.badge-succeeded,.badge-scraped{background:var(--mango-info-bg);color:var(--mango-leaf-dark)}.badge-medium,.badge-partial,.badge-close,.badge-running,.badge-queued,.badge-discovered{background:var(--mango-warning-bg);color:var(--mango-warning-text)}.badge-hard,.badge-failed,.badge-low,.badge-cancelled{background:var(--mango-error-bg);color:var(--mango-error-text)}.badge-pending,.badge-none,.badge-not_recipe,.badge-skipped,.badge-muted{background:var(--mango-cream-dark);color:var(--mango-brown-light)}.recipes-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.recipes-header .btn{text-decoration:none}.recipes-search{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.recipes-search input{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;flex:18rem;padding:.6rem .75rem}.recipes-search select{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;background:#fff;padding:.55rem .6rem}.recipes-filter-toggle{display:none}.recipes-layout{grid-template-columns:minmax(220px,270px) 1fr;align-items:start;gap:1.25rem;display:grid}.recipes-filters{max-height:calc(100svh - 2rem);padding:1rem;position:sticky;top:1rem;overflow-y:auto}.recipes-filters-header{justify-content:space-between;align-items:center;display:flex}.recipes-filters-header h2{margin:0}.filter-section{border-top:1px solid var(--mango-border);margin-top:.6rem;padding:.6rem 0 .2rem}.filter-section summary{cursor:pointer;color:var(--mango-brown);margin-bottom:.5rem;font-weight:700}.filter-section .field{margin-bottom:.6rem}.filter-section .field select,.filter-section .field input{padding:.4rem .55rem;font-size:.9rem}.chip-row{flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem;display:flex}.chip{border:1px solid var(--mango-border);background:var(--mango-cream);font:inherit;cursor:pointer;color:var(--mango-brown);text-transform:capitalize;border-radius:999px;padding:.2rem .65rem;font-size:.82rem}.chip small{color:var(--mango-text-muted);margin-left:.35rem}.chip-active{background:var(--mango-orange);border-color:var(--mango-orange-dark);color:#fff}.chip-active small{color:#fff}.facet-list{flex-direction:column;gap:.2rem;display:flex}.facet-list .checkbox-label{color:var(--mango-text);font-weight:400}.facet-list small{color:var(--mango-text-muted);margin-left:auto}.link-button{font:inherit;color:var(--mango-leaf-dark);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.85rem;text-decoration:underline}.recipes-count{color:var(--mango-text-muted);margin:0 0 .75rem}.recipes-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.recipe-card{padding:0;overflow:hidden}.recipe-card-link{height:100%;color:inherit;flex-direction:column;text-decoration:none;display:flex}.recipe-card-image{aspect-ratio:4/3;object-fit:cover;background:var(--mango-cream-dark);width:100%}.recipe-card-noimg{justify-content:center;align-items:center;font-size:2.5rem;display:flex}.recipe-card-body{flex-direction:column;gap:.35rem;padding:.8rem .9rem 1rem;display:flex}.recipe-card-body h3{margin:0 0 .2rem;font-size:1.02rem;line-height:1.3}.recipe-card-meta{color:var(--mango-text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.recipe-card-meta .badge{margin-left:0}.recipe-card-tags{color:var(--mango-brown-light);margin:0;font-size:.8rem}.recipes-more{justify-content:center;margin-top:1.25rem;display:flex}@media (width<=760px){.recipes-layout{grid-template-columns:1fr}.recipes-filter-toggle{display:inline-block}.recipes-filters{max-height:none;display:none;position:static}.recipes-filters.open{display:block}}.recipe-back{margin-bottom:1rem;display:inline-block}.recipe-hero{grid-template-columns:minmax(200px,340px) 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}.recipe-hero:not(:has(.recipe-hero-image)){grid-template-columns:1fr}.recipe-hero-image{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);width:100%}.recipe-hero-body h1{margin:0 0 .5rem}.recipe-hero-body .lead{color:var(--mango-text-muted);margin:0 0 1rem}.recipe-facts,.recipe-nutrients{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.6rem 1rem;margin:0 0 1rem;display:grid}.recipe-fact dt{text-transform:uppercase;color:var(--mango-brown-light);font-size:.75rem;font-weight:700}.recipe-fact dd{margin:0}.recipe-fact .badge{margin-left:0}.recipe-source{color:var(--mango-text-muted);font-size:.9rem}.recipe-confirm{color:var(--mango-danger);align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.recipe-columns{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.recipe-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.recipe-section-header h2{margin:0}.ingredient-group h3{margin:1rem 0 .5rem;font-size:.95rem}.ingredient-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.ingredient-row{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);padding:.6rem .75rem}.ingredient-skip{opacity:.7}.ingredient-top{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:center;gap:.6rem;display:grid}.ingredient-text{flex-direction:column;display:flex}.ingredient-text small{color:var(--mango-text-muted)}.ingredient-product{flex-direction:column;gap:.25rem;min-width:0;display:flex}.ingredient-badges .badge{margin-left:0;margin-right:.3rem}.ingredient-actions{flex-wrap:wrap;gap:.85rem;margin-top:.4rem;padding-left:1.6rem;display:flex}.link-button:disabled{opacity:.5;cursor:not-allowed}.ingredient-edit{border-top:1px dashed var(--mango-border);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:end;gap:0 .75rem;margin-top:.75rem;padding-top:.75rem;display:grid}.ingredient-edit-wide,.recipe-edit-wide{grid-column:1/-1}.ingredient-edit .checkbox-label{margin-bottom:.9rem}.ingredient-add{border-top:1px solid var(--mango-border);margin-top:1rem;padding-top:.75rem}.ingredient-add h3{margin:0 0 .5rem;font-size:.95rem}.ingredient-add-row{flex-wrap:wrap;gap:.5rem;display:flex}.ingredient-add-row input{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;flex:12rem;padding:.55rem .7rem}.recipe-steps ol{flex-direction:column;gap:.6rem;margin:0 0 1rem;padding-left:1.25rem;display:flex}.recipe-tags{flex-wrap:wrap;gap:.35rem;display:flex}.recipe-tags .chip{border:1px solid var(--mango-border);background:var(--mango-cream);border-radius:999px;padding:.15rem .6rem;font-size:.8rem}.recipe-edit{margin-bottom:1.25rem}.recipe-edit-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:0 .9rem;display:grid}.recipe-edit-steps{min-height:220px!important}@media (width<=860px){.recipe-hero,.recipe-columns{grid-template-columns:1fr}.ingredient-top{grid-template-columns:auto 1fr}.ingredient-product{grid-column:2}}.pipeline-stats{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.pipeline-stat{flex-direction:column;padding:.75rem .85rem;display:flex}.pipeline-stat strong{font-size:1.4rem;font-family:var(--font-heading);color:var(--mango-brown)}.pipeline-stat span{color:var(--mango-text-muted);font-size:.8rem}.pipeline-stat-failed strong{color:var(--mango-danger)}.pipeline-stat-complete strong,.pipeline-stat-scraped strong{color:var(--mango-leaf-dark)}.pipeline-steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.25rem;display:grid}.pipeline-card{flex-direction:column;display:flex}.pipeline-card .empty{margin-top:0}.pipeline-card .btn{align-self:flex-start;margin-top:auto}.pipeline-card .checkbox-label{margin-bottom:.9rem}.pipeline-checks{flex-wrap:wrap;gap:.25rem .9rem;display:flex}.checkbox-label{color:var(--mango-brown-light);align-items:center;gap:.4rem;font-size:.9rem;display:flex}.pipeline-section{margin-bottom:1.25rem}.pipeline-jobs,.pipeline-urls,.pipeline-mappings{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.pipeline-job{border:1px solid var(--mango-border);border-radius:var(--radius-sm);background:var(--mango-cream);padding:.7rem .85rem}.pipeline-job-header{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.pipeline-job-header .badge{margin-left:0}.pipeline-job-counts,.pipeline-job-time{color:var(--mango-text-muted);font-size:.85rem}.pipeline-job-time{margin-left:auto}.pipeline-progress{background:var(--mango-cream-dark);border-radius:999px;height:6px;margin:.5rem 0;overflow:hidden}.pipeline-progress div{background:linear-gradient(90deg, var(--mango-orange), var(--mango-leaf));height:100%;transition:width .4s}.pipeline-log summary{cursor:pointer;color:var(--mango-brown-light);font-size:.85rem}.pipeline-log ol{max-height:14rem;margin:.4rem 0 0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;list-style:none;overflow-y:auto}.pipeline-log time{color:var(--mango-text-muted)}.pipeline-log-error{color:var(--mango-danger)}.pipeline-url-filters{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;display:flex}.pipeline-url-filters input,.pipeline-url-filters select{border:1px solid var(--mango-border);border-radius:var(--radius-sm);font:inherit;background:#fff;padding:.45rem .6rem}.pipeline-url-filters input{flex:14rem}.pipeline-urls li,.pipeline-mappings li{border-bottom:1px solid var(--mango-border);padding-bottom:.5rem}.pipeline-url-main{word-break:break-all;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.pipeline-url-main .badge{margin-left:0}.pipeline-url-error{color:var(--mango-danger);display:block}.pipeline-url-actions{flex-wrap:wrap;gap:.8rem;display:flex}.pipeline-mapping-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;align-items:center;gap:.75rem;display:grid}.pipeline-mapping-name{flex-direction:column;display:flex}.pipeline-mapping-name small{color:var(--mango-text-muted)}.pipeline-mapping-name .badge{margin-left:0}.link-button{font:inherit;color:var(--mango-leaf-dark);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.link-button.danger{color:var(--mango-danger)}@media (width<=760px){.pipeline-mapping-row{grid-template-columns:1fr}}.auth-page{place-items:center;min-height:100svh;padding:2rem 1rem;display:grid}.auth-card{width:100%;max-width:400px}.auth-brand{text-align:center;margin-bottom:1.5rem}.auth-brand .auth-logo{font-size:2.5rem;line-height:1}.auth-brand h1{margin:.5rem 0 .25rem;font-size:1.6rem}.auth-brand p{color:var(--mango-text-muted);margin:0;font-size:.9rem}.auth-card .btn{width:100%;margin-top:.25rem}.auth-footnote{text-align:center;color:var(--mango-text-muted);margin:1rem 0 0;font-size:.85rem}.users-grid{gap:1.25rem;display:grid}.users-section-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.users-section-header h2{margin:0}.new-invite{gap:.5rem;margin-bottom:1rem;display:flex}.new-invite input{border:1px solid var(--mango-orange);border-radius:var(--radius-sm);min-width:0;font:inherit;background:var(--mango-cream);color:var(--mango-text);flex:1;padding:.55rem .75rem;font-size:.85rem}.users-table{border-collapse:collapse;width:100%;font-size:.9rem}.users-table th,.users-table td{text-align:left;border-bottom:1px solid var(--mango-border);vertical-align:middle;padding:.6rem .5rem}.users-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--mango-text-muted);font-size:.78rem}.users-table tr:last-child td{border-bottom:none}.users-table td:last-child{text-align:right}.users-table .btn{padding:.35rem .7rem;font-size:.82rem}.users-table-wrap{overflow-x:auto}.badge{background:var(--mango-cream-dark);color:var(--mango-brown);border-radius:999px;padding:.1rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-admin,.badge-pending{background:var(--mango-yellow)}.badge-active,.badge-used{background:var(--mango-info-bg);color:var(--mango-info-text)}.badge-inactive,.badge-expired{background:var(--mango-error-bg);color:var(--mango-error-text)}@media (width<=640px){.new-invite{flex-direction:column}}
