:root{--bg-color:#070c16;--panel-bg:#0f172ab8;--panel-border:#94a3b826;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--primary-accent:#00f2fe;--secondary-accent:#4facfe;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--font-main:"Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(#0f172a2e 1px, transparent 1px), linear-gradient(90deg, #0f172a2e 1px, transparent 1px), radial-gradient(circle at 15% 5%, #00f2fe12, transparent 32%), var(--bg-color);color:var(--text-primary);font-family:var(--font-main);background-size:32px 32px,32px 32px,auto,auto;min-height:100vh;position:relative;overflow-x:hidden}.cursor-grid{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cursor-grid__canvas{width:100%;height:100%;display:block}.react-cursor-grid-anchor{display:none}.split-parent-react{display:inline-block;overflow:hidden}.app-boot{background:var(--background);place-items:center;min-height:100vh;display:grid}#login-screen>.login-container,#authenticated-app>.app-container{z-index:1;position:relative}[data-split-text]{vertical-align:bottom;flex-wrap:wrap;display:inline-flex;overflow:hidden}.split-char{opacity:0;transition:opacity .58s cubic-bezier(.22, 1, .36, 1) var(--split-delay), transform .58s cubic-bezier(.22, 1, .36, 1) var(--split-delay);will-change:transform, opacity;display:inline-block;transform:translateY(.8em)rotate(2deg)}.split-text-visible .split-char{opacity:1;transform:translateY(0)rotate(0)}.split-char-accent{color:var(--primary-accent)}@media (prefers-reduced-motion:reduce){.split-char{opacity:1;transition:none;transform:none}.cursor-grid{opacity:.45}}.login-screen{place-items:center;min-height:100vh;padding:2rem 1rem;display:grid;position:relative;overflow:hidden}.login-glow{filter:blur(120px);opacity:.13;pointer-events:none;border-radius:50%;width:42vw;height:42vw;position:absolute}.login-glow-one{background:var(--primary-accent);top:-15%;left:-8%}.login-glow-two{background:#ec008c;bottom:-18%;right:-8%}.login-container{z-index:1;text-align:center;width:min(440px,100%);position:relative}.login-avatar{width:16px;height:32px;image-rendering:pixelated;transform-origin:bottom;z-index:2;filter:drop-shadow(0 5px 5px #00000080);background:url(/avatars/carrefour-agent.png) -16px 0 no-repeat;margin:0 auto -5px;animation:2s ease-in-out infinite login-avatar-float;position:relative;transform:scale(3.2)}.login-card{padding:2.5rem}.login-heading h1{margin:.4rem 0 .5rem;font-size:2.1rem}.login-heading h1 span{color:var(--primary-accent)}.login-heading p{color:var(--text-secondary);margin-bottom:2rem}.login-form{text-align:left;gap:1.2rem;display:grid}.login-form label{gap:.45rem;display:grid}.login-form label>span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.login-input-wrap{border:1px solid var(--panel-border);background:#00000040;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:0 1rem;display:grid}.login-input-wrap:focus-within{border-color:var(--primary-accent);box-shadow:0 0 12px #00f2fe21}.login-input-wrap input{width:100%;height:50px;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0}.login-error{color:#fca5a5;text-align:center;background:#ef44441a;border:1px solid #ef444459;border-radius:10px;padding:.8rem;font-size:.9rem}.login-footer{color:var(--text-secondary);margin-top:1.5rem;font-size:.78rem}.auth-mode-toggle{color:var(--primary-accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:.2rem;font-weight:700}.auth-mode-toggle:hover{text-decoration:underline}.user-email-pill{text-overflow:ellipsis;white-space:nowrap;max-width:260px;color:var(--text-secondary);border:1px solid var(--panel-border);border-radius:999px;padding:.65rem .9rem;font-size:.84rem;overflow:hidden}.logout-btn{color:var(--text-secondary);border:1px solid var(--panel-border);cursor:pointer;font:inherit;background:#ffffff0a;border-radius:9px;padding:.6rem .85rem}.logout-btn:hover{color:var(--text-primary);border-color:var(--primary-accent)}@keyframes login-avatar-float{0%,to{translate:0}50%{translate:0 -4px}}.background-decor{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.circle{filter:blur(120px);opacity:.15;border-radius:50%;position:absolute}.circle-1{background:linear-gradient(135deg, var(--primary-accent), var(--secondary-accent));width:450px;height:450px;top:-10%;right:-5%}.circle-2{background:linear-gradient(135deg,#ec008c,#fc6767);width:400px;height:400px;bottom:10%;left:-5%}.app-container{max-width:1320px;margin:0 auto;padding:3rem 1.5rem}.app-header{text-align:left;border-radius:18px;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.brand-lockup,.header-actions{align-items:center;gap:1rem;display:flex}.brand-avatar{width:16px;height:32px;image-rendering:pixelated;background:url(/avatars/changomas-agent.png) -16px 0 no-repeat;margin:0 .65rem;transform:scale(1.7)}.avatar-header-button{cursor:pointer;background:#ffffff09;border:0;border-radius:12px;flex:none;place-items:center;width:42px;height:52px;margin:0;padding:0;display:grid;transform:none}.avatar-header-button .custom-pixel-avatar{transform:scale(1.35)}.avatar-header-button:hover{filter:drop-shadow(0 0 5px var(--primary-accent))}.avatar-change-btn{color:var(--primary-accent)}.avatar-modal{background:#0a111ffa;width:min(850px,100%);max-height:92vh;overflow-y:auto}.avatar-builder{grid-template-columns:180px 1fr;gap:1.5rem;display:grid}.avatar-builder-preview{background:radial-gradient(circle,#00f2fe1f,#0000 65%);border:1px solid #00f2fe40;border-radius:18px;align-content:center;place-items:center;gap:3rem;min-height:270px;display:grid}.avatar-builder-preview .custom-pixel-avatar{transform:scale(4.5)}.avatar-builder-preview span{color:var(--text-secondary);font-size:.8rem}.avatar-controls{gap:1rem;display:grid}.avatar-controls fieldset{border:0;margin:0;padding:0}.avatar-controls legend{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:.72rem;font-weight:800}.avatar-choice-row{flex-wrap:wrap;gap:.45rem;display:flex}.avatar-choice-row button{color:var(--text-secondary);border:1px solid var(--panel-border);cursor:pointer;font:inherit;background:#ffffff06;border-radius:9px;align-items:center;gap:.4rem;padding:.58rem .72rem;font-size:.82rem;display:inline-flex}.avatar-choice-row button:hover{color:var(--text-primary);border-color:#00f2fe73}.avatar-choice-row button.selected{color:#06121c;background:var(--primary-accent);border-color:var(--primary-accent);font-weight:800}.choice-color{border:2px solid #ffffffa6;border-radius:4px;width:13px;height:13px}.avatar-modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.avatar-modal-actions .primary-btn{width:auto;margin:0;padding:.75rem 1.2rem;font-size:.92rem}.custom-pixel-avatar{width:16px;height:32px;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #00000073);display:block;overflow:visible}.app-eyebrow{color:var(--primary-accent);letter-spacing:.14em;font-size:.68rem;font-weight:800}.connection-pill{color:#a7f3d0;background:#10b98112;border:1px solid #10b98140;border-radius:999px;padding:.55rem .75rem;font-size:.78rem}.connection-pill i{background:var(--success);width:7px;height:7px;box-shadow:0 0 9px var(--success);border-radius:50%;margin-right:.35rem;display:inline-block}.header-btn{color:var(--text-secondary);border:1px solid var(--panel-border);cursor:pointer;font:inherit;background:#ffffff09;border-radius:10px;padding:.65rem .85rem}.header-btn:hover{color:var(--text-primary);border-color:#00f2fe80}.logo-area{justify-content:flex-start;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.logo-icon{font-size:2.5rem}.logo-area h1{letter-spacing:-1px;font-size:1.7rem;font-weight:800}.logo-area h1 span{background:linear-gradient(135deg, var(--primary-accent), var(--secondary-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.subtitle{color:var(--text-secondary);font-size:.9rem}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--panel-border);border-radius:22px;padding:2rem;transition:transform .3s,border-color .3s;box-shadow:0 8px 32px #0000005e}.input-section{position:relative;overflow:visible}.section-heading{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.section-step{color:#07111c;background:linear-gradient(135deg,var(--primary-accent),var(--secondary-accent));border-radius:12px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.section-heading h2{margin:0 0 .25rem}.section-heading .input-tip{margin:0}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#020617c7;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.users-modal{background:#0a111ff7;width:min(760px,100%);max-height:88vh;overflow-y:auto}.modal-header{justify-content:space-between;gap:1rem;margin-bottom:1.5rem;display:flex}.modal-header h2{margin:.3rem 0;font-size:1.8rem}.modal-header p{color:var(--text-secondary)}.modal-close{width:38px;height:38px;color:var(--text-secondary);border:1px solid var(--panel-border);cursor:pointer;background:#ffffff0a;border-radius:50%;font-size:1.4rem}.create-user-form{border:1px solid var(--panel-border);background:#0000002e;border-radius:14px;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:.75rem;padding:1rem;display:grid}.create-user-form label{gap:.35rem;display:grid}.create-user-form label span{color:var(--text-secondary);text-transform:uppercase;font-size:.72rem;font-weight:800}.create-user-form input{min-width:0;height:44px;color:var(--text-primary);border:1px solid var(--panel-border);font:inherit;background:#00000040;border-radius:9px;outline:none;padding:0 .75rem}.create-user-form .primary-btn{white-space:nowrap;width:auto;height:44px;padding:0 1rem;font-size:.9rem}.users-list-header{color:var(--text-secondary);justify-content:space-between;margin:1.5rem 0 .75rem;display:flex}.users-list{gap:.6rem;display:grid}.user-row{border:1px solid var(--panel-border);background:#ffffff06;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.8rem;display:grid}.user-avatar{color:#06121c;background:linear-gradient(135deg,var(--primary-accent),var(--secondary-accent));border-radius:11px;place-items:center;width:40px;height:40px;font-weight:900;display:grid}.user-row>div:nth-child(2){gap:.15rem;display:grid}.user-row span{color:var(--text-secondary);font-size:.78rem}.admin-chip{background:#10b9811a;border-radius:999px;padding:.35rem .55rem;color:#a7f3d0!important}.delete-user-btn{color:#fca5a5;cursor:pointer;background:#ef444414;border:1px solid #ef444440;border-radius:8px;padding:.45rem .65rem}.glass-panel:hover{border-color:#ffffff26}.input-section h2{margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.input-tip{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem}.shopping-table-wrap{border:1px solid var(--panel-border);border-radius:12px;margin-bottom:.75rem;overflow:visible}.shopping-table{border-collapse:collapse;width:100%;min-width:720px}.shopping-table th{color:var(--text-secondary);text-align:left;text-transform:uppercase;letter-spacing:.05em;background:#00000038;padding:.8rem 1rem;font-size:.78rem}.shopping-table td{border-top:1px solid var(--panel-border);padding:.65rem}.product-cell{position:relative}.product-suggestions{z-index:20;background:#111827;border:1px solid #00f2fe73;border-radius:10px;width:min(620px,100vw - 7rem);max-height:430px;padding:.65rem;position:absolute;top:calc(100% - .4rem);left:.65rem;overflow-y:auto;box-shadow:0 16px 35px #0000008c}.product-suggestion{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:7px;gap:.35rem;padding:.9rem 1rem;font-family:inherit;display:grid}.product-suggestion:hover,.product-suggestion:focus{background:#00f2fe1a;outline:none}.product-suggestion span,.no-suggestions{color:var(--text-secondary);font-size:.78rem}.product-suggestion strong{font-size:.96rem}.no-suggestions{padding:.8rem}.shopping-table input,.shopping-table select{border:1px solid var(--panel-border);width:100%;color:var(--text-primary);background:#00000040;border-radius:8px;outline:none;padding:.7rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.shopping-table input:focus,.shopping-table select:focus{border-color:var(--primary-accent);box-shadow:0 0 10px #00f2fe26}.measure-fields{grid-template-columns:minmax(70px,1fr) minmax(90px,1fr);gap:.4rem;display:grid}.secondary-btn{color:var(--primary-accent);cursor:pointer;background:0 0;border:1px dashed #00f2fe73;border-radius:9px;margin-bottom:1.5rem;padding:.65rem 1rem;font-family:inherit;font-weight:600}.remove-row-btn{width:32px;height:32px;color:var(--danger);cursor:pointer;background:#ef44440f;border:1px solid #ef444466;border-radius:50%;font-size:1.2rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mode-selector{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.mode-option{border:1px solid var(--panel-border);cursor:pointer;background:#0000002e;border-radius:12px;align-items:center;gap:.8rem;padding:1rem;display:flex}.mode-option.active{border-color:var(--primary-accent);background:#00f2fe12}.mode-option span{flex-direction:column;gap:.2rem;display:flex}.mode-option small{color:var(--text-secondary)}.mode-option input{accent-color:var(--primary-accent)}.primary-btn{background:linear-gradient(135deg, var(--primary-accent), var(--secondary-accent));color:#0b0f19;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:1rem 2rem;font-size:1.1rem;font-weight:700;transition:transform .2s,box-shadow .2s,opacity .2s;display:flex}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #00f2fe66}.primary-btn:active{transform:translateY(0)}.primary-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner{border:3px solid #0000001a;border-top-color:#0b0f19;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}.spinner.hidden{display:none}@keyframes spin{to{transform:rotate(360deg)}}.loader-container{justify-content:center;margin:3rem 0;display:flex}.progress-card{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:760px;display:flex}.agent-grid{grid-template-columns:repeat(5,1fr);gap:.75rem;width:100%;margin-top:1.5rem;display:grid}.agent-status{border:1px solid var(--panel-border);text-align:center;background:#0000002e;border-radius:12px;align-content:end;justify-items:center;gap:.3rem;min-height:168px;padding:.9rem;display:grid;position:relative}.agent-status small{color:var(--text-secondary)}.agent-status.working{border-color:var(--warning)}.agent-status.done{border-color:var(--success)}.pixel-agent{width:16px;height:32px;image-rendering:pixelated;transform-origin:bottom;z-index:2;filter:drop-shadow(0 3px 2px #00000073);background-position:-16px 0;background-repeat:no-repeat;margin:.2rem 0 .8rem;position:relative;transform:scale(2)}.pixel-agent.customized{background:0 0!important}.agent-status.working .custom-pixel-avatar .avatar-leg-left{animation:.48s step-end infinite avatar-leg-left}.agent-status.working .custom-pixel-avatar .avatar-leg-right{animation:.48s step-end infinite avatar-leg-right}@keyframes avatar-leg-left{0%,49%{transform:translateY(0)}50%,to{transform:translateY(-1px)}}@keyframes avatar-leg-right{0%,49%{transform:translateY(-1px)}50%,to{transform:translateY(0)}}.carrefour-agent .pixel-agent{background-image:url(/avatars/carrefour-agent.png)}.changomas-agent .pixel-agent{background-image:url(/avatars/changomas-agent.png)}.coto-agent .pixel-agent{background-image:url(/avatars/coto-agent.png)}.dia-agent .pixel-agent{background-image:url(/avatars/dia-agent.png)}.pixel-house{background:color-mix(in srgb, var(--store-color), #111 24%);width:72px;height:52px;image-rendering:pixelated;border:4px solid #ffffffb3;border-top:0;margin:22px auto -20px;position:relative}.pixel-house:before{content:"";background:var(--store-color);z-index:-1;border:4px solid #ffffffb8;width:54px;height:54px;position:absolute;top:-28px;left:5px;transform:rotate(45deg)}.pixel-house:after{content:"";background:#121826;border:3px solid #ffffff8c;border-bottom:0;width:18px;height:28px;position:absolute;bottom:0;left:23px}.pixel-house span{z-index:1;color:var(--store-color);background:#f8fafc;padding:2px 4px;font-size:.6rem;font-weight:900;display:inline-block;position:relative}.agent-status.working .pixel-agent{animation:.48s step-end infinite pixel-walk-frames,3s ease-in-out infinite pixel-store-visit}.agent-status:nth-child(2).working .pixel-agent{animation-delay:-.15s,-.35s}.agent-status:nth-child(3).working .pixel-agent{animation-delay:-.3s,-.7s}.agent-status:nth-child(4).working .pixel-agent{animation-delay:-.45s,-1.05s}.agent-status:nth-child(5).working .pixel-agent{animation-delay:-.6s,-1.4s}.agent-status.working .pixel-house:after{animation:3s step-end infinite pixel-door-pulse}.agent-status.done .pixel-agent{background-position:-16px 0;animation:.35s ease-out agent-finish}@keyframes pixel-walk-frames{0%,32%{background-position:0 0}33%,65%{background-position:-16px 0}66%,to{background-position:-32px 0}}@keyframes pixel-store-visit{0%,8%{opacity:1;transform:scale(2)translateY(9px)}25%{opacity:1;transform:scale(2)translateY(-4px)}31%,67%{opacity:0;transform:scale(1.7)translateY(-10px)}73%{opacity:1;transform:scale(1.8)translateY(-5px)}92%,to{opacity:1;transform:scale(2)translateY(9px)}}@keyframes pixel-door-pulse{0%,22%,76%,to{background:#121826}23%,75%{background:color-mix(in srgb, var(--store-color), white 35%)}}@keyframes agent-finish{50%{transform:scale(2.25)translateY(-2px)}}@media (prefers-reduced-motion:reduce){.agent-status.working .pixel-agent{opacity:1;animation:.9s step-end infinite pixel-walk-frames;transform:scale(2)translateY(4px)}.agent-status.working .pixel-house:after{animation:none}}.spinner-large{border:5px solid #ffffff0d;border-top-color:var(--primary-accent);border-radius:50%;width:60px;height:60px;margin-bottom:1.5rem;animation:1s linear infinite spin}.progress-card h3{margin-bottom:.5rem;font-size:1.3rem}.progress-card p{color:var(--text-secondary);font-size:.95rem}#results-container{flex-direction:column;gap:3rem;margin-top:3rem;display:flex}.price-freshness{background:#10b98114;border:1px solid #10b98159;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.price-freshness.is-cached{background:#38bdf814;border-color:#38bdf859}.price-freshness>div{gap:.2rem;display:grid}.price-freshness strong{color:var(--text-primary)}.price-freshness span{color:var(--text-secondary);font-size:.88rem}.refresh-prices-btn{color:var(--text-primary);font:inherit;cursor:pointer;background:#38bdf81f;border:1px solid #38bdf88c;border-radius:10px;flex:none;padding:.7rem 1rem;font-weight:700}.refresh-prices-btn:disabled{opacity:.6;cursor:wait}@media (width<=640px){.price-freshness{flex-direction:column;align-items:stretch}.refresh-prices-btn{width:100%}.avatar-builder{grid-template-columns:1fr}.avatar-builder-preview{min-height:180px}.avatar-builder-preview .custom-pixel-avatar{transform:scale(3.5)}.avatar-change-btn{display:none}}.summary-section h2,.details-section h2{margin-bottom:1.5rem;font-size:1.7rem;font-weight:700}.winner-card{background:linear-gradient(135deg,#10b9811c,#00f2fe0a);border-color:#10b98173;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.winner-eyebrow{color:var(--success);letter-spacing:.12em;font-size:.75rem;font-weight:800}.winner-card h3{margin:.35rem 0;font-size:2rem}.winner-card p{color:var(--text-secondary)}.winner-price{text-align:right;flex-direction:column;gap:.35rem;min-width:250px;display:flex}.winner-price strong{font-size:2.3rem}.winner-price span{color:var(--success);font-size:.9rem}.final-recommendation{background:linear-gradient(135deg,#10b98124,#00f2fe0f);border:1px solid #10b9818c;grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem;display:grid}.recommendation-icon{background:#10b98126;border-radius:16px;place-items:center;width:58px;height:58px;font-size:1.8rem;display:grid}.recommendation-copy h2{margin:.3rem 0 .35rem;font-size:1.75rem}.recommendation-copy p{color:var(--text-secondary);line-height:1.45}.recommendation-total{text-align:right;gap:.25rem;min-width:190px;display:grid}.recommendation-total small{color:var(--text-secondary)}.recommendation-total strong{color:var(--success);font-size:2rem}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.summary-card{flex-direction:column;align-items:flex-start;padding:1.75rem;display:flex;position:relative}.store-badge{text-transform:uppercase;border-radius:8px;margin-bottom:1rem;padding:.35rem .75rem;font-size:.8rem;font-weight:700}.store-badge.carrefour{color:#fff;background-color:#005ca9}.store-badge.chango{color:#fff;background-color:#ff8200}.store-badge.dia{color:#fff;background-color:#e31e24}.store-badge.coto{color:#fff;background-color:#e2001a}.store-badge.vea{color:#fff;background-color:#55b949}.store-badge.optimal{color:#fff;background:linear-gradient(135deg,#ec008c,#fc6767)}.price-value{margin-bottom:.5rem;font-size:2.2rem;font-weight:800}.card-detail{color:var(--text-secondary);font-size:.9rem}.highlight-card{background:#ec008c0d;border:1px solid #ec008c40}.highlight-card:hover{border-color:#ec008c80}.savings-badge{background-color:var(--success);color:#fff;border-radius:6px;padding:.25rem .5rem;font-size:.8rem;font-weight:700;position:absolute;top:1.5rem;right:1.5rem}.missing-items-list{color:var(--danger);width:100%;margin-top:1rem;font-size:.8rem}.products-breakdown{flex-direction:column;gap:1.5rem;display:flex}.product-compare-card{border:1px solid var(--panel-border);background:#0003;border-radius:14px;padding:1.5rem}.product-compare-header{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.product-compare-header h3{font-size:1.25rem;font-weight:600}.product-compare-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.store-price-box{border:1px solid var(--panel-border);background:#ffffff05;border-radius:10px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.store-price-box.is-cheapest{background:#10b98108;border-color:#10b98166}.store-price-box-header{justify-content:space-between;align-items:center;display:flex}.store-price-box-header span{font-weight:700}.store-price-box .item-title{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.store-price-box .item-price{font-size:1.4rem;font-weight:700}.product-option-label{color:var(--text-secondary);gap:.35rem;margin:.2rem 0 .35rem;font-size:.78rem;display:grid}.product-option-selector{width:100%;min-width:0;color:var(--text-primary);border:1px solid var(--panel-border);font:inherit;background:#111827;border-radius:8px;padding:.65rem}.product-option-selector:focus{border-color:var(--primary-accent);outline:none}.alternative-suggestion{background:#f59e0b0d;border:1px dashed #f59e0b66;border-radius:10px;grid-column:1/-1;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.alternative-suggestion span.badge{background-color:var(--warning);color:#0b0f19;text-transform:uppercase;border-radius:4px;padding:.15rem .4rem;font-size:.75rem;font-weight:700}.hidden{display:none!important}@media (width<=768px){.logo-area h1{font-size:2.2rem}.app-container{padding:1.5rem 1rem}.mode-selector,.agent-grid{grid-template-columns:1fr}.winner-card{flex-direction:column;align-items:flex-start}.winner-price{text-align:left;min-width:0}.final-recommendation{grid-template-columns:auto 1fr}.recommendation-total{text-align:left;grid-column:1/-1}.app-header{flex-direction:column;align-items:flex-start}.header-actions{flex-wrap:wrap;width:100%}.connection-pill{flex:1}.create-user-form{grid-template-columns:1fr}.create-user-form .primary-btn{width:100%}.shopping-table-wrap{overflow-x:auto}.product-suggestions{width:min(520px,100vw - 3.5rem);max-height:360px}}
