@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_60a407{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_60a407{--font-outfit:"Outfit","Outfit Fallback"}:root{--brand-blue:#0EA5E9;--brand-teal:#14B8A6;--brand-green:#34D399;--brand-gradient:linear-gradient(135deg,#0EA5E9,#14B8A6 50%,#22C55E);--bg:#0D1B2A;--panel:#102233;--panel-soft:#17304A;--ink:#EFF6FF;--muted:#7EAECF;--line:#1E3A52;--green:#34D399;--green-dark:#A7F3D0;--red:#F87171;--blue:#0EA5E9;--yellow:#FCD34D;--shadow:0 18px 44px rgba(0,0,0,0.4);--input-bg:#0A1828;--nav-bg:rgba(13,27,42,0.96);--warn-text:#FDE68A;--chart-color:#0EA5E9}[data-theme=light]{--bg:#F8FAFC;--panel:#FFFFFF;--panel-soft:#F0F9FF;--ink:#0D1B2A;--muted:#5B7FA6;--line:#CBD5E1;--green:#16A34A;--green-dark:#15803D;--red:#DC2626;--blue:#0284C7;--yellow:#D97706;--shadow:0 2px 10px rgba(13,27,42,0.08);--input-bg:#FFFFFF;--nav-bg:rgba(255,255,255,0.96);--warn-text:#92400E;--chart-color:#0284C7}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font-outfit,"Outfit",system-ui,sans-serif);font-size:17px;-webkit-font-smoothing:antialiased}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{margin:0 auto;max-width:1100px;min-height:100vh;padding:20px 16px 32px}.page-layout{display:grid;grid-gap:0 24px;gap:0 24px;grid-template-columns:1fr}.page-main{min-width:0}.sidebar-divider{border-top:1px solid var(--line);margin:10px 0}.category-sidebar{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sidebar-heading{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;margin:0 0 8px;padding:0 10px;text-transform:uppercase}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-link{border-radius:8px;color:var(--muted);font-size:.875rem;font-weight:500;padding:8px 10px;transition:background .12s,color .12s}.sidebar-link:hover{background:var(--panel-soft);color:var(--ink)}.sidebar-link.active{background:rgba(59,130,246,.12);color:var(--blue);font-weight:700}.sidebar-link-sub{padding-left:22px;font-size:.82rem}.sidebar-group{display:block}.sidebar-group>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.sidebar-group>summary::-webkit-details-marker{display:none}.sidebar-group>summary:after{content:"›";color:var(--muted);font-size:1rem;transition:transform .15s;flex-shrink:0}.sidebar-group[open]>summary:after{transform:rotate(90deg)}.sidebar-children{display:flex;flex-direction:column;gap:2px}@media (max-width:779px){.category-sidebar{display:none}}@media (min-width:780px){.app-shell{padding:24px 32px 32px}.page-layout{align-items:start;grid-template-columns:220px 1fr}.category-sidebar{overflow-x:visible;position:-webkit-sticky;position:sticky;top:24px}.bottom-nav{bottom:auto;left:auto;max-width:none;position:static;transform:none;display:none}}.admin-header,.topbar{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.quick-search-bar{align-items:center;display:none;flex:1 1;gap:6px;max-width:380px;padding-top:4px}.quick-search-input{background:var(--input-bg);border:1px solid var(--line);border-radius:8px;color:var(--ink);flex:1 1;font-family:inherit;font-size:.85rem;min-width:0;padding:7px 12px;transition:border-color .15s}.quick-search-input::placeholder{color:var(--muted)}.quick-search-input:focus{border-color:var(--blue);outline:none}.quick-search-btn{align-items:center;background:var(--blue);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:7px 10px;transition:opacity .15s}.quick-search-btn:hover{opacity:.85}@media (min-width:700px){.quick-search-bar{display:flex}}.eyebrow{color:var(--green);font-size:.78rem;font-weight:700;letter-spacing:0;margin:0 0 6px;text-transform:uppercase}.brand-lockup{align-items:center;display:flex;gap:10px;margin-bottom:6px}.brand-lockup img{border-radius:8px;height:34px;object-fit:contain;width:126px}.brand-lockup .eyebrow{margin-bottom:0}h1,h2,h3,p{margin-top:0}h1{font-size:2rem;line-height:1.05;margin-bottom:0}h2{font-size:1.15rem;margin-bottom:8px}h3{font-size:1rem;margin-bottom:4px}p{color:var(--muted);line-height:1.45}.link-button,.profile-link{border:1px solid var(--line);border-radius:8px;color:var(--blue);flex:0 0 auto;font-size:.9rem;font-weight:700;padding:9px 12px}.link-button{background:var(--panel);cursor:pointer;min-height:auto}.admin-card,.price-card,.product-summary,.search-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.search-panel{margin-bottom:16px;padding:14px}.search-form,.search-panel{display:grid;grid-gap:12px;gap:12px}.beta-notice{background:var(--panel-soft);border:1px solid var(--line);border-left:3px solid #f59e0b;border-radius:8px;color:var(--muted);font-size:.88rem;line-height:1.55;margin-bottom:20px;padding:12px 14px}.beta-notice strong{color:var(--text)}label{color:var(--muted);display:grid;font-size:.84rem;font-weight:700;grid-gap:6px;gap:6px}input,select{background:var(--input-bg);border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:46px;min-width:0;padding:0 12px;width:100%}.admin-card button,.button-link,.primary-action,.secondary-action{border:0;border-radius:8px;cursor:pointer;font-weight:800;min-height:46px}.admin-card button,.button-link,.primary-action{background:var(--green);color:white}.button-link{align-items:center;display:inline-flex;justify-content:center}.secondary-action{background:var(--panel-soft);color:var(--green-dark)}.product-summary{align-items:center;display:grid;grid-gap:14px;gap:14px;grid-template-columns:76px 1fr;margin-bottom:18px;padding:14px}.stats-strip{background:var(--panel);border:1px solid var(--line);border-radius:12px;justify-content:space-around;margin-bottom:16px;padding:14px 8px}.stat-item,.stats-strip{align-items:center;display:flex}.stat-item{flex-direction:column;gap:3px}.stat-item strong{color:var(--blue);font-size:1.5rem;font-weight:800;line-height:1}.stat-item span{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em;text-align:center;text-transform:uppercase}.stat-divider{background:var(--line);height:36px;width:1px}.profile-summary{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:18px;overflow:hidden}.profile-stats{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-around;padding:16px 8px}.profile-meta{padding:12px 16px}.profile-meta p{color:var(--ink);font-size:.9rem;font-weight:600;margin:0}.profile-since{color:var(--muted)!important;font-size:.78rem!important;font-weight:400!important;margin-top:2px!important}.profile-section{margin-bottom:24px}.collapsible-header{align-items:center;background:none;border:none;border-bottom:1px solid var(--line);color:inherit;cursor:pointer;display:flex;justify-content:space-between;padding:0 0 12px;width:100%}.collapsible-header:hover .collapsible-chevron{color:var(--blue)}.collapsible-chevron{flex-shrink:0;font-size:.7rem;margin-left:12px;transition:color .15s}.category-results{margin-bottom:18px}.category-product-list{display:grid;grid-gap:10px;gap:10px}.category-product-card{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;grid-template-columns:54px 1fr;padding:12px}.category-product-card img,.category-product-card>span{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;width:54px}.category-product-card img{object-fit:contain}.category-product-card>span{align-items:center;background:linear-gradient(135deg,#3b82f6,#34d399);color:var(--green-dark);display:flex;font-size:.78rem;font-weight:900;justify-content:center}.category-product-card strong{color:var(--blue);display:block;font-size:.95rem;margin-bottom:3px;text-decoration:underline;text-underline-offset:3px}.category-product-card small{color:var(--muted);font-size:.8rem;font-weight:800}.product-image{align-items:center;background:linear-gradient(135deg,#3b82f6,#34d399);color:var(--green-dark);display:flex;font-weight:900;justify-content:center}.product-image,.product-photo{aspect-ratio:1;border:1px solid var(--line);border-radius:8px}.product-photo{height:auto;object-fit:contain;width:76px}.meta-row,.section-header,.store-row{align-items:center;display:flex;justify-content:space-between}.store-name-block{align-items:center;display:flex;gap:10px}.store-logo{border-radius:4px;flex-shrink:0;height:36px;object-fit:contain;width:36px}.section-header{margin-bottom:10px}.section-header span{background:rgba(59,130,246,.2);border:1px solid #3b82f6;border-radius:999px;color:var(--ink);font-size:.85rem;font-weight:800;padding:5px 10px}.price-list{display:grid;grid-gap:10px;gap:10px}.price-card{padding:14px}.zip-inline-form{align-items:end;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:12px}.zip-inline-form button{background:var(--green);border:0;border-radius:8px;color:white;cursor:pointer;font-weight:800;min-height:46px;padding:0 14px}.sort-tabs{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.sort-tabs span{color:var(--muted)}.sort-tabs a,.sort-tabs span{font-size:.82rem;font-weight:900}.sort-tabs a{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--green-dark);padding:7px 11px}.sort-tabs a.active{background:rgba(59,130,246,.28);border-color:#3b82f6;color:var(--ink)}.history-section{margin-top:18px}.price-chart-wrap{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:visible;margin-bottom:12px;padding:16px 8px 8px}.chart-tooltip{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:10px 14px}.chart-tooltip-price{color:var(--ink);font-size:1rem;font-weight:800;margin:0 0 2px}.chart-tooltip-store{color:var(--ink);font-size:.875rem;font-weight:600;margin:0 0 2px}.chart-tooltip-meta{color:var(--muted);font-size:.78rem;margin:0;text-transform:capitalize}.history-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.history-row{align-items:center;border-top:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding:12px 14px}.history-row:first-child{border-top:0}.history-row p{font-size:.84rem;margin:3px 0 0}.history-row span{color:var(--muted);flex:0 0 auto;font-size:.84rem;font-weight:800}.price-block{display:grid;justify-items:end;text-align:right}.price-block strong{font-size:1.25rem}.sale-price{color:var(--red);font-size:.86rem;font-weight:800}.detail-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.detail-row a,.detail-row span{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.8rem;font-weight:800;padding:5px 9px}.detail-row a{color:var(--blue)}.meta-row{border-top:1px solid var(--line);color:var(--muted);font-size:.82rem;font-weight:700;gap:10px;margin-top:10px;padding-top:10px}.confidence-chip{border-radius:999px;padding:5px 9px}.confidence-chip.good{background:rgba(59,130,246,.18);color:var(--green-dark)}.confidence-chip.warn{background:rgba(251,191,36,.16);color:var(--warn-text)}.confidence-chip.muted{background:var(--panel-soft);color:var(--muted)}.bottom-nav{background:var(--nav-bg);border:1px solid var(--line);border-radius:8px 8px 0 0;bottom:0;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(3,1fr);left:50%;max-width:520px;position:fixed;transform:translateX(-50%);width:100%}.bottom-nav a{color:var(--green-dark);font-size:.86rem;font-weight:800;padding:16px 8px;text-align:center}.admin-layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.admin-sidebar{background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:-webkit-sticky;position:sticky;top:0}.admin-sidebar-brand{align-items:center;border-bottom:1px solid var(--line);color:var(--ink);display:flex;font-size:1rem;font-weight:700;gap:8px;padding:18px 16px 14px;text-decoration:none}.admin-sidebar-brand small{background:var(--blue);border-radius:4px;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.06em;padding:2px 6px;text-transform:uppercase}.admin-nav{display:flex;flex:1 1;flex-direction:column;padding:6px 0}.admin-nav-link{align-items:center;color:var(--muted);display:flex;font-size:.875rem;justify-content:space-between;padding:8px 16px;text-decoration:none;transition:background .12s,color .12s}.admin-nav-link:hover{background:var(--panel-soft);color:var(--ink)}.admin-nav-link.active{background:rgba(96,165,250,.12);color:var(--blue);font-weight:600}.admin-nav-badge{background:var(--blue);border-radius:999px;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;padding:1px 5px;text-align:center}.admin-sidebar-footer{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;padding:12px}.admin-footer-actions{display:flex;gap:8px}.admin-nav-section{display:contents}.admin-nav-section-heading{color:var(--muted);font-size:.67rem;font-weight:700;letter-spacing:.09em;margin-top:6px;padding:10px 14px 2px;text-transform:uppercase}.admin-filter-pills{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.filter-pill{background:var(--panel-soft);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.8rem;padding:4px 14px;text-decoration:none;transition:background .12s,color .12s,border-color .12s}.filter-pill:hover{background:var(--panel);color:var(--ink)}.filter-pill.active{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:600}.admin-table-row.category-row{grid-template-columns:32px 2fr 1fr auto auto}.admin-table-row.category-row:not(.category-row-sub):not(.admin-table-head){background:var(--panel-soft)}.admin-table-row.category-row.category-row-sub{background:var(--panel)}.category-sub-indent{color:var(--muted);margin-right:2px}.drag-handle{align-items:center;color:var(--muted);cursor:-webkit-grab;cursor:grab;display:flex;font-size:1.1rem;justify-content:center;padding:4px;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.image-upload-field{display:flex;flex-direction:column;gap:10px}.image-field-label{color:var(--ink);font-size:.88rem;font-weight:600;margin:0}.image-preview-wrap{align-items:flex-start;display:flex;gap:10px}.image-preview{border:1px solid var(--border);border-radius:6px;height:80px;object-fit:contain;width:80px}.image-clear-btn{background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;font-size:.75rem;padding:3px 10px;transition:color .1s,border-color .1s}.image-clear-btn:hover{border-color:var(--red);color:var(--red)}.image-input-group{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.file-upload-label{background:var(--panel-soft);border:1px solid var(--border);border-radius:6px;color:var(--ink);cursor:pointer;font-size:.85rem;font-weight:500;padding:7px 16px;transition:background .12s;white-space:nowrap}.file-upload-label:hover{background:var(--panel)}.image-or-divider{color:var(--muted);font-size:.8rem;white-space:nowrap}.image-url-input{flex:1 1;min-width:180px}.admin-content{min-width:0;overflow-y:auto}.admin-stats{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.admin-stat-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px 16px}.admin-stat-card .stat-value{color:var(--ink);font-size:1.6rem;font-weight:800;line-height:1;margin-bottom:4px}.admin-stat-card .stat-label{color:var(--muted);font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.admin-shell{margin:0 auto;max-width:1080px;min-height:100vh;padding:28px 20px 52px}.admin-hero{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin-bottom:18px;padding:18px}.admin-hero h1{max-width:680px}.admin-hero p:last-child{margin-bottom:0;max-width:650px}.admin-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.desktop-nav{display:none;gap:4px}.desktop-nav a{border-radius:8px;color:var(--muted);font-size:.875rem;font-weight:600;padding:6px 12px;transition:background .12s,color .12s}.desktop-nav a:hover{background:var(--panel-soft);color:var(--ink)}@media (min-width:780px){.desktop-nav{display:flex}}.header-actions.left{justify-content:flex-start}.auth-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card{display:flex;flex-direction:column;gap:8px;min-height:190px;padding:18px}.admin-card-top{align-items:center;display:flex;justify-content:space-between}.admin-card-number{align-items:center;background:rgba(59,130,246,.18);border-radius:999px;color:var(--green-dark);display:flex;font-size:.82rem;font-weight:900;height:30px;justify-content:center;width:30px}.admin-card-alert-badge{background:var(--yellow);border-radius:999px;color:#000;font-size:.68rem;font-weight:800;min-width:22px;padding:2px 7px;text-align:center}.admin-card button,.admin-card-link{margin-top:auto}.admin-card-alert{border-color:var(--yellow)}.admin-card-link{align-items:center;background:var(--green);border-radius:8px;color:white;display:inline-flex;font-weight:800;justify-content:center;min-height:46px;width:100%}.admin-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin-bottom:18px;padding:18px}.admin-section-heading{align-items:flex-start;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;margin:-2px 0 16px;padding-bottom:14px}.admin-section-heading h2{margin-bottom:0}.admin-section-heading p{margin:0;max-width:460px;text-align:right}.admin-form{display:grid;grid-gap:14px;gap:14px}.checkbox-label input[type=checkbox]{height:16px;width:16px}.import-layout{display:grid;grid-gap:24px;gap:24px}.import-results{background:var(--panel);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:16px;gap:16px;padding:20px}.import-stats{display:flex;gap:32px}.import-stat{display:flex;flex-direction:column;gap:2px}.import-stat strong{font-size:1.5rem;font-weight:700}.import-stat span{color:var(--muted);font-size:.8rem}.import-progress{display:grid;grid-gap:6px;gap:6px}.import-progress-label{display:flex;font-size:.85rem;justify-content:space-between}.import-progress-bar{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.import-progress-fill{background:var(--green);border-radius:999px;height:100%;transition:width .3s ease}.import-hint{color:var(--muted);font-size:.85rem}.admin-search-form{align-items:end;display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr)) auto auto;margin-bottom:14px}.az-strip{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:14px}.az-strip a{border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:14px;font-weight:700;min-width:30px;padding:4px 6px;text-align:center;text-decoration:none;transition:border-color .12s ease,color .12s ease}.az-strip a:hover{border-color:var(--blue);color:var(--ink)}.az-strip a.active{background:var(--green);border-color:var(--green);color:white}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{min-width:0}.wide-field{grid-column:1/-1}.logo-upload-field{display:flex;flex-direction:column;gap:8px}.logo-upload-field .field-label{font-size:.84rem;font-weight:600}.logo-current{align-items:center;display:flex;gap:8px}.logo-upload-field input[type=file]{font-size:.84rem;min-height:auto;padding:4px 0}.admin-form button{background:var(--green);border:0;border-radius:8px;color:white;cursor:pointer;font-weight:800;justify-self:start;min-height:46px;min-width:160px;padding:0 18px}.form-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.form-actions-row .admin-form button,.form-actions-row button{margin:0}.secondary-link{min-width:160px;padding:0 18px}.admin-form .secondary-link,.secondary-link{background:var(--panel-soft);border:1px solid var(--line);color:var(--green-dark)}.admin-form button:disabled{cursor:progress;opacity:.75}.danger-action{background:#c0392b!important;border:0;border-radius:8px;color:white!important;cursor:pointer;font-weight:800;min-height:46px;min-width:160px;padding:0 18px}.danger-action:hover:not(:disabled){background:#a93226!important}.danger-action:disabled{cursor:progress;opacity:.75}.form-message{border-radius:8px;font-weight:700;margin:0;padding:10px}.form-message.success{background:rgba(59,130,246,.18);color:var(--green-dark)}.form-message.error{background:rgba(248,113,113,.16);color:var(--red)}.inline-link{background:none;border:0;cursor:pointer;font:inherit;padding:0}.form-message .inline-link,.form-message a{color:var(--blue);font-weight:900;text-decoration:underline;text-underline-offset:3px}.admin-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.missing-price-section{margin-top:18px}.admin-table-row{align-items:center;background:var(--panel);border-top:1px solid var(--line);display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr 1.5fr auto auto;padding:14px}.admin-table-row.product-row{grid-template-columns:1.4fr 1fr 1fr auto auto}.admin-table-row.price-row{grid-template-columns:1.4fr 1fr .8fr .8fr auto}.admin-table-row.users-row{grid-template-columns:1.4fr .7fr 1fr 1.4fr}.admin-table-row:first-child{border-top:0}.admin-table-head{background:var(--panel-soft);color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.admin-table-row span{display:grid;grid-gap:3px;gap:3px}.admin-table-row small{color:var(--muted);font-size:.8rem}.age-chip{border-radius:999px;display:inline-flex;font-weight:900;justify-self:start;margin-top:4px;padding:4px 8px}.age-chip.good{background:rgba(59,130,246,.18);color:var(--green-dark)}.age-chip.warn{background:rgba(251,191,36,.16);color:var(--warn-text)}.age-chip.muted{background:var(--panel-soft);color:var(--muted)}.status-pill{background:rgba(59,130,246,.18);border-radius:999px;color:var(--green-dark);font-size:.82rem;font-weight:800;justify-self:end;padding:6px 10px;text-transform:capitalize;white-space:nowrap}.status-pill.inactive{background:var(--panel-soft);color:var(--muted)}.table-action{border:1px solid var(--line);border-radius:8px;color:var(--blue);font-size:.84rem;font-weight:800;justify-self:end;padding:8px 10px;transition:background .12s ease,border-color .12s ease}.table-action:hover{background:var(--panel-soft);border-color:#3b82f6}.table-action.danger{background:var(--panel)}.table-action.danger:hover{background:rgba(248,113,113,.16);border-color:#f87171}.table-action.warn{background:var(--panel);color:var(--yellow)}.table-action.warn:hover{background:rgba(251,191,36,.12);border-color:var(--yellow)}.flag-form{display:flex;flex-direction:column;gap:8px;padding:10px 0 4px}.flag-form input,.flag-form select{font-size:15px}.table-actions{display:flex!important;flex-wrap:wrap;gap:8px;justify-content:flex-end}.inline-action-form{margin:0}.inline-action-form button:disabled{cursor:progress;opacity:.75}.inline-error{color:var(--red);display:block;font-size:.76rem;margin-top:4px}.checkbox-label{align-items:center;align-self:end;display:flex;flex-direction:row;gap:8px;min-height:46px}.product-description{line-height:1.55;margin-top:6px;white-space:pre-wrap}.add-to-list-wrap{margin-top:10px}.add-to-list-btn{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;padding:7px 14px;transition:background .15s,color .15s,border-color .15s}.add-to-list-btn:hover:not(:disabled){background:rgba(59,130,246,.1);border-color:var(--blue);color:var(--blue)}.add-to-list-btn.in-list{background:rgba(59,130,246,.12);border-color:var(--blue);color:var(--blue)}.list-card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.list-card-actions .add-to-list-wrap{margin-top:0}.add-to-list-btn:disabled{cursor:progress;opacity:.65}.list-btn-icon{font-size:1rem;font-style:normal;line-height:1}.list-zip-note{align-items:center;border:1px solid var(--line);border-radius:8px;display:flex;font-size:.84rem;gap:12px;justify-content:space-between;margin-bottom:12px;padding:10px 14px}.list-zip-note span{color:var(--muted)}.list-zip-note label{align-items:center;color:var(--muted);display:flex;font-size:.84rem;gap:8px;margin:0}.list-zip-note input{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:.84rem;padding:4px 8px;width:72px}.catalog-notice{border-left:3px solid var(--line);color:var(--muted);font-size:.8rem;line-height:1.5;margin:0 0 16px;padding:8px 12px}.list-price-disclaimer{color:var(--muted);font-size:.76rem;margin-top:4px}.list-best-price{align-items:center;background:var(--panel-soft);border-radius:8px;display:flex;gap:10px;margin-top:10px;padding:8px 10px}.list-best-price .store-logo{flex-shrink:0;height:28px;object-fit:contain;width:28px}.list-best-price-info{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.list-best-price-store{font-size:.84rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-best-price-loc{color:var(--muted);font-size:.75rem}.list-best-price-right{align-items:center;display:flex;flex-shrink:0;gap:6px}.list-best-price-amount{color:var(--green);font-size:1.05rem;font-weight:700}.basket-compare-card{background:var(--panel-soft)}.basket-compare-card>.basket-compare-row:first-of-type,.basket-compare-card>.list-best-price:first-of-type{margin-top:8px}.basket-compare-row{background:var(--panel)}.basket-savings-callout{background:color-mix(in srgb,var(--green) 12%,transparent);border-radius:8px;color:var(--ink);font-size:.84rem;margin-top:8px;padding:8px 12px;text-align:center}.basket-savings-callout strong{color:var(--green)}.import-col-row,.import-result-row{grid-template-columns:3rem 5rem 1fr}.import-row-error{background:rgba(239,68,68,.06)}.import-template-block{background:var(--panel-soft);font-size:.78rem;line-height:1.6;padding:14px 16px;white-space:pre}.chain-entry-table,.import-template-block{border:1px solid var(--line);border-radius:8px;overflow-x:auto}.chain-entry-table{margin-bottom:16px;min-width:0}.chain-entry-head{background:var(--panel-soft);color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chain-entry-head,.chain-entry-row{border-bottom:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr 110px 100px auto;min-width:480px;padding:8px 12px}.chain-entry-row{align-items:center}.chain-entry-row:last-child{border-bottom:none}.chain-entry-row:nth-child(2n){background:var(--panel-soft)}.chain-entry-input,.chain-entry-select{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);font:inherit;font-size:.88rem;min-height:36px;padding:0 8px;width:100%}.chain-entry-input:focus,.chain-entry-select:focus{border-color:var(--blue);outline:none}.chain-entry-row-actions{display:flex;gap:4px;justify-content:flex-end}.chain-entry-icon-btn{align-items:center;background:var(--panel-soft);border:1px solid var(--line);border-radius:5px;color:var(--muted);cursor:pointer;display:flex;font-size:.8rem;height:28px;justify-content:center;padding:0;transition:background .1s,color .1s;width:28px}.chain-entry-icon-btn:hover{background:var(--panel);color:var(--ink)}.chain-entry-icon-btn.danger:hover{background:rgba(239,68,68,.12);border-color:var(--red);color:var(--red)}.chain-entry-upc-cell{display:flex;flex-direction:column;gap:2px}.chain-entry-input.is-valid{border-color:var(--green)}.chain-entry-input.is-invalid{border-color:var(--red)}.chain-entry-row-error{background:rgba(239,68,68,.05)!important}.chain-entry-lookup-hint{font-size:.75rem;line-height:1.3;padding:0 2px}.chain-entry-lookup-hint.good{color:var(--green)}.chain-entry-lookup-hint.muted{color:var(--muted)}.chain-entry-lookup-hint.error{color:var(--red)}.store-detail-back{color:var(--muted);display:inline-block;font-size:.85rem;margin-bottom:12px;text-decoration:none}.store-detail-back:hover{color:var(--ink)}.store-detail-card{margin-bottom:24px}.store-detail-header{align-items:center;display:flex;gap:16px;margin-bottom:16px}.store-detail-logo{flex-shrink:0;height:52px;object-fit:contain;width:52px}.store-detail-identity h2{font-size:1.25rem;font-weight:700;margin:0}.store-detail-chain{color:var(--muted);font-size:.85rem;margin:2px 0 0}.store-detail-meta{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;padding-top:12px}.store-detail-meta-row{display:flex;font-size:.88rem;gap:12px}.store-detail-label{color:var(--muted);flex-shrink:0;width:72px}.store-detail-actions{margin-top:16px}.store-map-wrap{border:1px solid var(--line);border-radius:10px;margin-top:16px;overflow:hidden}.store-map{border:0;display:block;height:220px;width:100%}.store-map-osm-link{background:var(--panel-soft);border-top:1px solid var(--line);color:var(--muted);display:block;font-size:.75rem;padding:4px 10px;text-align:right;text-decoration:none}.store-map-osm-link:hover{color:var(--green)}.store-cat-select-wrap{display:flex;align-items:center;gap:10px;margin-bottom:4px}.store-cat-select-label{color:var(--muted);flex-shrink:0;font-size:.82rem;font-weight:600}.store-cat-select{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;flex:1 1;font-size:.84rem;max-width:280px;outline:none;padding:6px 10px}.store-cat-select:focus{border-color:var(--green);box-shadow:0 0 0 2px color-mix(in srgb,var(--green) 20%,transparent)}.price-regular-strikethrough{color:var(--muted);font-size:.82rem;text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.price-sale-ends{color:var(--muted);font-size:.72rem}.store-cat-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.store-cat-pill{background:var(--panel-soft);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.8rem;font-weight:600;padding:4px 12px;text-decoration:none;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.store-cat-pill:hover{background:var(--panel);color:var(--ink)}.store-cat-pill.active{background:var(--green);border-color:var(--green);color:#fff}[data-theme=light] .store-cat-pill.active{color:#fff}.store-cat-hint{color:var(--muted);font-size:.82rem;margin:12px 0 0;text-align:center}.store-correction-wrap{border-top:1px solid var(--line);margin-top:10px;padding-top:8px}.store-correction-toggle{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.78rem;padding:0;text-decoration:underline;text-underline-offset:2px}.store-correction-toggle:hover{color:var(--ink)}.store-correction-form{display:flex;flex-direction:column;gap:8px;margin-top:10px}.store-correction-form label{display:flex;flex-direction:column;font-size:.82rem;font-weight:600;gap:4px}.store-correction-form select,.store-correction-form textarea{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:.84rem;padding:6px 8px;width:100%}.store-correction-form textarea{resize:vertical}.store-correction-signin{color:var(--muted);font-size:.82rem;margin-top:8px}.store-correction-thanks{color:var(--green);font-size:.82rem;margin-top:8px}.edit-profile-wrap{margin-top:10px}.edit-profile-form{display:flex;flex-direction:column;gap:10px;margin-top:10px}.edit-profile-form label{display:flex;flex-direction:column;font-size:.84rem;font-weight:600;gap:4px}.edit-profile-form input{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:.9rem;padding:7px 10px;width:100%}.profile-zip-form{align-items:center;display:flex;gap:8px;margin-top:10px}.profile-zip-form input{background:var(--input-bg);border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:.84rem;padding:5px 9px;width:80px}.queue-toolbar{align-items:center;display:flex;gap:12px;margin-bottom:10px}.queue-select-all{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:7px}.queue-select-all input{min-height:auto;width:16px}.chain-groups{display:flex;flex-direction:column;gap:6px}.chain-group{border:1px solid var(--line);border-radius:8px;overflow:hidden}.chain-group-header{align-items:center;background:var(--panel);cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:10px 14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chain-group-header::-webkit-details-marker{display:none}.chain-group-header:hover{background:var(--panel-soft)}.chain-group-title{align-items:center;display:flex;gap:10px}.chain-group-chevron{color:var(--muted);display:inline-block;font-size:1.2rem;line-height:1;transition:transform .15s ease}details[open]>.chain-group-header .chain-group-chevron{transform:rotate(90deg)}.chain-group-table{border-radius:0;border-top:1px solid var(--line)}.store-queue-row{grid-template-columns:32px 1fr 1fr auto}.store-queue-row input[type=checkbox]{min-height:auto;width:16px}.resolve-form{display:flex;flex-direction:column;gap:8px;margin-top:10px}.resolve-form input{font-size:14px}.resolve-form-actions,.stale-banner{display:flex;gap:8px}.stale-banner{align-items:flex-start;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.3);border-radius:8px;color:var(--warn-text);font-size:.85rem;margin-bottom:12px;padding:10px 14px}.stale-banner-icon{flex-shrink:0;font-style:normal}.price-age-hint{color:var(--warn-text);font-size:.8em}.source-badge{border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;padding:3px 8px;text-transform:uppercase}.source-badge.off_snapshot{background:rgba(96,165,250,.15);color:var(--blue)}.source-badge.user_submitted{background:rgba(59,130,246,.1);color:var(--green-dark)}.request-note{color:var(--muted);font-size:.82rem;font-style:italic}.checkbox-label input{min-height:auto;width:18px}@media (max-width:720px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{display:none}.admin-shell{padding:18px 14px 44px}.admin-header,.admin-section-heading{display:grid}.admin-section-heading p{max-width:none;text-align:left}.admin-search-form,.auth-grid,.form-grid{grid-template-columns:1fr}.admin-search-form{align-items:stretch}.admin-table-row{align-items:flex-start}.admin-table-row,.admin-table-row.price-row,.admin-table-row.product-row,.admin-table-row.users-row{grid-template-columns:1fr}.status-pill,.table-action{justify-self:start}.table-actions{justify-content:flex-start}}@media (max-width:420px){h1{font-size:1.7rem}.store-row{align-items:flex-start;gap:12px}}.detail-link{font-size:.88rem;font-weight:800;margin-top:8px;text-decoration:underline;text-underline-offset:3px}.detail-link,.product-name-link{color:var(--blue);display:inline-flex}.product-name-link{align-items:baseline;flex-wrap:wrap;font-size:1.15rem;font-weight:900;gap:8px;line-height:1.2;margin-bottom:8px;text-decoration:underline;text-underline-offset:4px}.product-name-link span{background:rgba(59,130,246,.18);border:1px solid #3b82f6;border-radius:999px;color:var(--green-dark);font-size:.72rem;font-weight:900;padding:4px 8px;text-decoration:none}.detail-shell{margin:0 auto;max-width:900px;min-height:100vh;padding:24px 16px 56px}.detail-hero{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin-bottom:18px;padding:18px}.detail-hero,.detail-product{display:grid;grid-gap:18px;gap:18px}.detail-product{align-items:center;grid-template-columns:130px 1fr}.detail-product-photo,.detail-product-placeholder{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;width:130px}.detail-product-photo{object-fit:contain}.detail-product-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#34d399);color:var(--green-dark);display:flex;font-weight:900;justify-content:center}@media (max-width:620px){.detail-product{align-items:start;grid-template-columns:86px 1fr}.detail-product-photo,.detail-product-placeholder{width:86px}}.product-summary-link{align-items:center;color:inherit;display:contents}.product-summary-link h2{color:var(--ink)}.admin-card-disabled{opacity:.72}.admin-card-link.disabled{background:var(--panel-soft);color:var(--muted)}.collapsible-admin-section>.collapsible-admin-summary{border-bottom:none;cursor:pointer;list-style:none;margin-bottom:0;padding-bottom:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.collapsible-admin-section>.collapsible-admin-summary::-webkit-details-marker{display:none}.collapsible-admin-section[open]>.collapsible-admin-summary{border-bottom:1px solid var(--line);margin-bottom:16px}.collapsible-admin-chevron{color:var(--muted);font-size:1.3rem;line-height:1;margin-left:auto;transition:transform .15s}.collapsible-admin-section[open] .collapsible-admin-chevron{transform:rotate(90deg)}.collapsible-admin-hint{color:var(--muted);font-size:.88rem;margin:0 0 16px}.admin-section-desc{color:var(--muted);font-size:.9rem;margin:0 0 20px}.duplicate-groups-list{display:flex;flex-direction:column;gap:16px}.duplicate-group{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.duplicate-group.resolved{padding:14px 16px}.duplicate-group-header{align-items:center;background:var(--panel-soft);border-bottom:1px solid var(--line);display:flex;gap:10px;padding:10px 16px}.duplicate-rows{display:flex;flex-direction:column}.duplicate-row{align-items:flex-start;border-bottom:1px solid var(--line);cursor:pointer;display:grid;grid-gap:12px;gap:12px;grid-template-columns:20px 1fr auto;padding:12px 16px;transition:background .1s}.duplicate-row:last-child{border-bottom:none}.duplicate-row:hover{background:var(--panel-soft)}.duplicate-row-keep{background:color-mix(in srgb,var(--accent) 6%,transparent)}.duplicate-row-info{display:flex;flex-direction:column;gap:4px;min-width:0}.duplicate-row-name{font-size:.92rem;font-weight:600}.duplicate-row-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.78rem;gap:8px}.duplicate-group-footer{align-items:center;border-top:1px solid var(--line);display:flex;gap:12px;justify-content:flex-end;padding:12px 16px}.admin-table-row:not(.admin-table-head):hover{background:var(--panel-soft)}.admin-empty-row{background:var(--panel);color:var(--muted);font-weight:800;padding:18px 14px}.search-actions{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr auto}.zip-input-wrap{align-items:center;display:flex;gap:6px}.zip-input-wrap input{flex:1 1;min-width:0}.location-zip-btn{background:var(--panel);border:1px solid var(--line);border-radius:8px;cursor:pointer;flex-shrink:0;font-size:16px;height:40px;line-height:1;padding:0 10px;transition:border-color .12s ease}.location-zip-btn:hover{border-color:var(--blue)}.location-zip-btn:disabled{cursor:progress;opacity:.6}.location-zip-wrap{display:contents}.location-zip-error{color:var(--red);font-size:12px;grid-column:1/-1}.store-seeder{display:flex;flex-direction:column;gap:14px}.seeder-controls{align-items:end;display:flex;gap:10px}.seeder-controls label{flex:0 0 160px}.seeder-header{align-items:center;display:flex;font-size:14px;gap:12px;justify-content:space-between}.seeder-row{cursor:pointer}.seeder-row:hover{background:var(--panel-soft)}.scan-button{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--blue);cursor:pointer;display:flex;font-size:.9rem;font-weight:700;gap:7px;justify-content:center;min-height:46px;padding:0 14px;white-space:nowrap}.scan-button:hover{border-color:var(--blue)}.scanner-overlay{background:#000;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:200}.scanner-close{background:rgba(0,0,0,.55);border:0;border-radius:999px;color:#fff;cursor:pointer;font-size:1rem;height:40px;line-height:1;position:absolute;right:16px;top:16px;width:40px;z-index:201}.scanner-frame{flex:1 1;overflow:hidden;position:relative}.scanner-video{height:100%;object-fit:cover;width:100%}.scanner-ui{align-items:center;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0}.scanner-reticle{border:2px solid rgba(255,255,255,.85);border-radius:10px;box-shadow:0 0 0 9999px rgba(0,0,0,.45);height:120px;width:260px}.scanner-footer{padding:20px 16px 36px;text-align:center}.scanner-hint{font-size:.9rem;margin:0}.scanner-hint,.scanner-torch{color:rgba(255,255,255,.8);font-weight:700}.scanner-torch{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:999px;cursor:pointer;font-size:.82rem;margin-top:10px;padding:7px 16px}.scanner-torch.on{background:rgba(251,191,36,.25);border-color:#fbbf24;color:#fbbf24}.scanner-error-state{align-items:center;color:#fff;display:flex;flex:1 1;flex-direction:column;gap:20px;justify-content:center;padding:32px 24px;text-align:center}.scanner-error-state p{color:rgba(255,255,255,.8);max-width:320px}.submit-context{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:14px}.submit-context h2{margin-bottom:2px}.submit-context p{margin-bottom:0}.off-result{border-color:var(--yellow)}.off-not-registered{display:grid;grid-gap:10px;gap:10px}.off-not-registered strong{background:rgba(251,191,36,.16);border-radius:999px;color:var(--warn-text);display:inline-block;font-size:.82rem;font-weight:800;padding:5px 10px}.off-not-registered p{margin:0}.off-not-registered .button-link{justify-self:start;min-height:40px;padding:0 16px}.no-price-stores-hint{color:var(--muted);font-size:.88rem;margin-bottom:12px}.no-price-stores-hint a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}.field-hint{color:var(--muted);font-size:.8rem;font-weight:400}.theme-toggle{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:1.1rem;justify-content:center;line-height:1;min-height:auto;padding:9px 11px;transition:border-color .12s ease,color .12s ease}.theme-toggle:hover{border-color:var(--blue);color:var(--blue)}.store-combobox{width:100%}.store-combobox-input{background:var(--input-bg);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-family:inherit;font-size:.9rem;padding:9px 12px;transition:border-color .15s;width:100%}.store-combobox-input::placeholder{color:var(--muted)}.store-combobox-input:focus{border-color:var(--blue);outline:none}.store-combobox-input.is-selected{border-color:var(--green)}.store-combobox-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);left:0;list-style:none;margin:4px 0 0;max-height:240px;overflow-y:auto;padding:4px;position:absolute;right:0;top:100%;z-index:200}.store-combobox-option{border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:1px;padding:8px 10px}.store-combobox-option.is-active,.store-combobox-option:hover{background:var(--panel-soft)}.store-combobox-option.is-chosen{background:color-mix(in srgb,var(--green) 12%,transparent)}.store-option-name{color:var(--ink);font-size:.88rem;font-weight:500}.store-option-addr{color:var(--muted);font-size:.78rem}.store-combobox-empty{background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:.85rem;left:0;padding:12px;position:absolute;right:0;top:100%;margin-top:4px;z-index:200}.site-footer{border-top:1px solid var(--line);margin:32px auto 0;max-width:1100px;padding:16px 16px 24px;text-align:center}.site-footer p{color:var(--muted);font-size:.78rem;margin:0}.site-footer a{color:var(--muted);text-decoration:none;text-underline-offset:2px}.site-footer a:hover{color:var(--ink);text-decoration:underline}.legal-page{margin:0 auto;max-width:720px;padding:24px 16px 64px}.legal-topbar{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;margin-bottom:36px;padding-bottom:16px}.legal-back-link{color:var(--muted);font-size:.84rem;text-decoration:none}.legal-back-link:hover{color:var(--ink)}.legal-article h1{font-size:1.7rem;font-weight:700;margin:0 0 6px}.legal-effective{color:var(--muted);font-size:.82rem;margin:0 0 32px}.legal-article h2{font-size:1rem;font-weight:700;margin:32px 0 8px}.legal-article p{color:var(--ink)}.legal-article p,.legal-article ul{font-size:.9rem;line-height:1.7;margin:0 0 12px}.legal-article ul{padding-left:24px}.legal-article li{margin-bottom:5px}.legal-article a{color:var(--green);text-decoration:underline;text-underline-offset:2px}.legal-article strong{font-weight:600}.hamburger-wrap{position:relative}.hamburger-btn{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:5px;height:40px;justify-content:center;min-height:auto;padding:0;width:40px}.hamburger-btn span{background:var(--ink);border-radius:2px;display:block;height:2px;transition:transform .2s ease,opacity .15s ease;width:18px}.hamburger-btn.open span:first-child{transform:translateY(7px) rotate(45deg)}.hamburger-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hamburger-menu{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:80vh;min-width:210px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.hamburger-link{color:var(--ink);font-size:.95rem;font-weight:600;padding:13px 18px;transition:background .1s}.hamburger-link:hover{background:var(--panel-soft)}.hamburger-link.active{color:var(--blue);font-weight:700}.hamburger-link-sub{padding-left:32px;font-size:.85rem;font-weight:500}.hamburger-divider{border-top:1px solid var(--line);margin:4px 0}.hamburger-section-label{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;margin:0;padding:8px 18px 2px;text-transform:uppercase}@media (min-width:780px){.hamburger-wrap{display:none}}.collapsible-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin-bottom:18px}.collapsible-panel-summary{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;list-style:none;padding:14px 18px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.collapsible-panel-summary::-webkit-details-marker{display:none}.collapsible-panel-summary h2{margin:0}.collapsible-panel-summary:hover{background:var(--panel-soft);border-radius:8px}.collapsible-panel[open]>.collapsible-panel-summary{border-bottom:1px solid var(--line);border-radius:8px 8px 0 0}.collapsible-panel[open]>.collapsible-panel-summary:hover{border-radius:8px 8px 0 0}.collapsible-panel-meta{align-items:center;display:flex;flex-shrink:0;gap:10px}.collapsible-count{background:rgba(59,130,246,.2);border:1px solid #3b82f6;border-radius:999px;color:var(--ink);font-size:.85rem;font-weight:800;padding:5px 10px}.collapsible-chevron{font-size:1.1rem;line-height:1;transition:transform .15s ease}.collapsible-panel[open] .collapsible-chevron{transform:rotate(90deg)}.collapsible-panel-body{padding:14px 18px}.collapsible-panel-body .price-list{margin-top:0}.detail-admin-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.recent-prices{margin-top:18px}.recent-prices-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr}@media (min-width:560px){.recent-prices-grid{grid-template-columns:repeat(2,1fr)}}.recent-price-card{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:12px;gap:12px;grid-template-columns:48px 1fr;padding:12px;transition:border-color .12s}.recent-price-card:hover{border-color:var(--blue)}.recent-price-card img,.recent-price-card>span{aspect-ratio:1;border:1px solid var(--line);border-radius:6px;width:48px}.recent-price-card img{object-fit:contain}.recent-price-card>span{align-items:center;background:linear-gradient(135deg,#3b82f6,#34d399);color:var(--green-dark);display:flex;font-size:.72rem;font-weight:900;justify-content:center}.recent-price-card>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.recent-price-card strong{color:var(--ink);font-size:.88rem}.recent-price-card small,.recent-price-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-price-card small{color:var(--muted);font-size:.75rem}.recent-price-amount{color:var(--green);display:flex;font-size:.9rem;font-weight:800;gap:6px}.recent-price-amount.sale{color:var(--red)}.recent-price-amount em{background:rgba(248,113,113,.12);border-radius:999px;color:var(--red);font-size:.72rem;font-style:normal;font-weight:800;padding:2px 7px}.recent-price-time{color:var(--muted);font-size:.75rem}.price-disclaimer{border-top:1px solid var(--border);margin-top:8px;padding:14px 0 4px}.price-disclaimer p{color:var(--muted);font-size:.75rem;line-height:1.55;margin:0}.price-disclaimer strong{color:var(--ink);font-weight:600}.auth-links{align-items:center;display:flex;gap:8px}.register-link{background:var(--green);border-radius:8px;color:#fff!important;font-weight:700;padding:6px 14px}.register-link:hover{opacity:.9}.form-row{display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr 80px}.waitlist-confirm{border:1px solid var(--line);border-left:3px solid #f59e0b;border-radius:8px;padding:20px;text-align:center}.waitlist-confirm-icon{font-size:2rem;margin:0 0 8px}.waitlist-confirm h3{font-size:1.1rem;margin:0 0 10px}.waitlist-confirm p{color:var(--muted);font-size:.9rem;line-height:1.55;margin:0 0 8px}.waitlist-confirm-sub{font-size:.82rem!important}.tier-badge{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.02em;padding:3px 10px;text-transform:uppercase}.tier-badge.scout{background:var(--panel-soft);color:var(--muted);border:1px solid var(--line)}.tier-badge.reporter{background:#dbeafe;color:#1d4ed8}.tier-badge.contributor{background:#d1fae5;color:#065f46}.tier-badge.trusted_contributor{background:#ede9fe;color:#5b21b6}.tier-badge.community_expert{background:#fef3c7;color:#92400e}.tier-badge.waitlist{background:#fee2e2;color:#991b1b}.tier-display{display:flex;flex-direction:column;gap:12px}.tier-current{align-items:center;display:flex;gap:12px}.tier-sub{color:var(--muted);font-size:.88rem}.tier-progress{display:flex;flex-direction:column;gap:6px}.tier-progress-bar{background:var(--panel-soft);border-radius:999px;height:8px;overflow:hidden;width:100%}.tier-progress-fill{background:var(--green);border-radius:999px;height:100%;transition:width .3s ease}.tier-progress-label{color:var(--muted);font-size:.84rem;margin:0}.tier-scale{display:flex;gap:6px}.tier-pip{background:var(--panel-soft);border:2px solid var(--line);border-radius:999px;height:10px;width:10px}.tier-pip.active,.tier-pip.passed{background:var(--green);border-color:var(--green)}.tier-pip.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 25%,transparent)}.tier-waitlist-notice{align-items:flex-start;display:flex;flex-direction:column;gap:8px}.tier-waitlist-notice p{color:var(--muted);font-size:.88rem;margin:0}.user-roles-list{display:flex;flex-wrap:wrap;gap:4px}.muted-text{color:var(--muted)}.table-action.danger{border-color:#fca5a5;color:var(--red)}.table-action.danger:hover{background:#fef2f2;border-color:var(--red)}.product-name-cell{display:flex;align-items:flex-start;gap:8px}.admin-check-btn{flex-shrink:0;margin-top:2px;width:32px;height:32px;border-radius:50%;border:2px solid var(--border);background:transparent;color:var(--muted);font-size:17px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s,color .15s;padding:0}.admin-check-btn:hover{border-color:var(--brand-green);color:var(--brand-green)}.admin-check-btn.checked{border-color:var(--brand-green);background:var(--brand-green);color:#fff;font-weight:700}.section-header-toggle{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.section-header-toggle:hover h2{color:var(--brand-blue)}.section-header-toggle-right{display:flex;align-items:center;gap:8px}.collapsible-chevron{font-size:.75rem;color:var(--muted)}.tier-levels-breakdown{display:flex;flex-direction:column;gap:6px;margin-top:10px}.tier-level-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;background:var(--card-bg);border:1px solid var(--border);opacity:.6}.tier-level-row.current{opacity:1;border-color:var(--brand-blue);box-shadow:0 0 0 1px var(--brand-blue)}.tier-level-threshold{font-size:.82rem;color:var(--muted)}.tier-level-row.current .tier-level-threshold{color:var(--text)}.off-admin-suggestion{display:flex;flex-direction:column;gap:10px;align-items:flex-start;text-align:left}.off-suggestion-label{font-size:.82rem;color:var(--muted);margin:0}.off-suggestion-detail{display:flex;align-items:center;gap:12px}.off-suggestion-img{width:48px;height:48px;object-fit:contain;border-radius:6px;border:1px solid var(--border)}.off-suggestion-meta{font-size:.85rem;color:var(--muted)}.forgot-password-link{margin-top:4px;font-size:.85rem}.forgot-password-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.forgot-password-actions{display:flex;align-items:center;gap:12px;margin-top:8px}.seeder-row-existing{opacity:.5;pointer-events:none}.already-imported-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;background:var(--brand-green);color:#fff;font-size:.7rem;font-weight:600;vertical-align:middle}