:root{--bg:#fff;--panel:#fff;--panel-strong:#000;--text-inverse:#fff;--surface-subtle:#f5f5f5;--surface-medium:#eceff1;--surface-error:#fff0f0;--text:#000;--muted:#767677;--line:#d9dbdd;--line-strong:#929396;--line-inverse:#3b3b3c;--accent:#000;--accent-hover:#1e1e1e;--focus:#007bc6;--success:#0a5;--warning:#e32b2b;--overlay:#0009;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{min-width:320px;min-height:100svh;margin:0}button,input,select{font:inherit}button{background:var(--accent);min-height:48px;color:var(--text-inverse);cursor:pointer;text-align:left;border:0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;line-height:1;display:inline-flex}button svg{stroke-width:1.75px;flex:none;width:20px;height:20px}button:hover:not(:disabled){background:var(--accent-hover)}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:3px}button:disabled{color:#0000004d;background:var(--line);cursor:not-allowed}button.primary{z-index:0;margin-bottom:4px;margin-right:4px;position:relative}button.primary:after{content:"";z-index:-1;border:1px solid var(--text);pointer-events:none;position:absolute;inset:4px -4px -4px 4px}button.primary:disabled:after{border-color:var(--line-strong)}button.secondary,.provider-button{background:var(--panel);color:var(--text);border:1px solid var(--text)}button.secondary:hover:not(:disabled),.provider-button:hover:not(:disabled){background:var(--surface-subtle);border-color:var(--line-strong)}button.small{min-height:40px;padding-inline:12px;font-size:14px}.button-link{min-height:48px;color:var(--text-inverse);background:var(--accent);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.button-link svg{stroke-width:1.75px;flex:none;width:20px;height:20px}.button-link:hover{background:var(--accent-hover)}.button-link:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.button-link.secondary{color:var(--text);background:var(--panel);border:1px solid var(--text)}.button-link.secondary:hover{background:var(--surface-subtle);border-color:var(--line-strong)}.button-link.small{min-height:40px;padding-inline:12px;font-size:14px}button.destructive,.button-link.destructive{color:var(--warning);border-color:var(--warning)}button.destructive:hover:not(:disabled),.button-link.destructive:hover{color:var(--warning);background:var(--surface-error);border-color:var(--warning)}.icon-button{width:40px;min-width:40px;min-height:40px;color:var(--text);border:1px solid var(--text);background:0 0;padding:0}.icon-button:hover:not(:disabled){background:var(--surface-subtle)}.icon-button.on-dark{color:var(--text-inverse);border-color:var(--text-inverse)}.icon-button.on-dark:hover:not(:disabled){color:var(--text);background:var(--panel)}input,select{border:1px solid var(--line-strong);background:var(--panel);width:100%;min-height:48px;color:var(--text);border-radius:0;padding:0 12px}input:hover,select:hover{border-color:var(--text)}input::placeholder{color:var(--muted);opacity:1}label{color:var(--muted);gap:8px;font-size:13px;font-weight:700;display:grid}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:32px;line-height:1.1}h2{letter-spacing:0;font-size:18px;line-height:1.3}.eyebrow,.status{color:var(--text);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.35}.auth-shell{background:var(--surface-subtle);place-items:center;min-height:100svh;padding:32px;display:grid}.auth-panel{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:center;gap:48px;width:min(960px,100%);display:grid}.auth-copy{gap:16px;display:grid}.auth-copy h1{max-width:620px;font-size:48px}.auth-copy p:not(.eyebrow){max-width:520px;color:var(--muted);line-height:1.5}.login-card{background:var(--panel);border:1px solid var(--text);gap:24px;padding:32px;display:grid}.stack{gap:16px;display:grid}.provider-button{width:100%}.provider-mark{border:1px solid var(--line);border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:inline-grid}.auth-divider{color:var(--muted);text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-size:12px;display:grid}.auth-divider span{background:var(--line);height:1px}.app-shell{background:var(--bg);grid-template-columns:280px minmax(0,1fr);min-height:100svh;display:grid}.app-shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{width:280px;height:100svh;color:var(--text-inverse);background:var(--panel-strong);border-right:1px solid var(--text);flex-direction:column;gap:32px;padding:24px;display:flex;position:sticky;top:0;overflow:visible}.sidebar-collapsed .sidebar{width:72px;padding:24px 12px}.sidebar-title,.workspace-header,.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.brand-lockup{align-items:center;gap:12px;min-width:0;display:flex}.brand-copy{min-width:0}.brand-mark{width:40px;height:40px;color:var(--text);background:var(--panel);flex:none;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.sidebar .eyebrow{color:var(--line)}.sidebar h1{color:var(--text-inverse);font-size:22px}.nav-stack{gap:4px;display:grid}.nav-button{width:100%;color:var(--text-inverse);background:0 0;border:1px solid #0000;justify-content:flex-start}.nav-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--line-strong)}.nav-button.active{color:var(--text);background:var(--panel);border-color:var(--text-inverse)}.preview-panel,.history-panel{background:var(--panel);border:1px solid var(--line);gap:16px;padding:24px;display:grid}.sidebar-toggle{width:40px;min-width:40px;min-height:40px;color:var(--text);background:var(--panel);border:1px solid var(--text);padding:0}.sidebar-toggle:hover:not(:disabled){color:var(--text-inverse);background:var(--accent-hover);border-color:var(--line-strong)}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-button span{display:none}.sidebar-collapsed .sidebar-title,.sidebar-collapsed .brand-lockup{justify-content:center}.sidebar-collapsed .nav-button{justify-content:center;width:48px;padding:0}.scraper-list{display:grid}.scraper-list div{border-top:1px solid var(--line);gap:4px;padding:12px 0;display:grid}.sidebar .scraper-list div{border-color:var(--line-inverse)}.scraper-list span,.tracker-meta{color:var(--muted);font-size:13px;line-height:1.45}.scraper-list strong{color:var(--success);text-transform:uppercase;font-size:12px}.workspace{align-content:start;gap:24px;min-width:0;padding:32px;display:grid}.workspace-header{border-bottom:2px solid var(--text);align-items:center;min-height:72px;padding-bottom:24px}.workspace-title-row{flex:auto;align-items:center;gap:16px;min-width:0;display:flex}.workspace-title-row>div{min-width:0}.workspace-title-row h1{overflow-wrap:anywhere}.settings-page{gap:24px;display:grid}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:40px;width:min(1080px,100%);display:grid}.settings-layout.single-column{grid-template-columns:minmax(0,1fr);width:min(680px,100%)}.settings-section{border-top:1px solid var(--text);gap:24px;padding-top:24px;display:grid}.settings-copy{gap:8px;display:grid}.settings-copy p:not(.eyebrow){color:var(--muted);overflow-wrap:anywhere;line-height:1.45}.settings-form{gap:16px;display:grid}.settings-submit{justify-self:start}.collectors-page{max-width:1280px}.collector-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.metric-tile{background:var(--panel);border:1px solid var(--line);align-content:space-between;gap:16px;min-width:0;min-height:104px;padding:16px;display:grid}.metric-tile span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.metric-tile strong{color:var(--text);overflow-wrap:anywhere;font-size:32px;line-height:1.1}.metric-warning{border-color:var(--warning)}.metric-warning strong{color:var(--warning)}.collector-settings-layout{width:min(1080px,100%)}.collector-domain-list{gap:32px;display:grid}.collector-domain-panel{border-top:2px solid var(--text);gap:16px;min-width:0;padding-top:24px;display:grid}.collector-domain-header{grid-template-columns:minmax(0,1fr) minmax(360px,520px);align-items:start;gap:24px;min-width:0;display:grid}.collector-domain-header>div:first-child{gap:8px;min-width:0;display:grid}.collector-domain-header h2,.collector-domain-header p{overflow-wrap:anywhere}.collector-domain-header p:not(.eyebrow){color:var(--muted);line-height:1.45}.collector-domain-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.collector-domain-stats .metric-tile{min-height:88px;padding:12px}.collector-domain-stats .metric-tile strong{font-size:24px}.collector-empty{min-width:0;color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:8px;padding:16px 0;line-height:1.45;display:flex}.collector-empty svg{stroke-width:1.75px;flex:none;width:20px;height:20px}.collector-table{border-top:1px solid var(--line);min-width:0;display:grid}.collector-table-head,.collector-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) minmax(90px,.45fr) minmax(90px,.45fr) minmax(220px,1fr);align-items:start;gap:16px;min-width:0;display:grid}.collector-table-head{color:var(--muted);text-transform:uppercase;padding:12px 0;font-size:12px;font-weight:700}.collector-row{padding:16px 0}.collector-row>div{gap:6px;min-width:0;display:grid}.collector-row strong,.collector-row span,.collector-row p{overflow-wrap:anywhere;min-width:0}.collector-row span{color:var(--muted);font-size:13px;line-height:1.45}.collector-status{width:fit-content;min-height:32px;color:var(--text);background:var(--surface-medium);border:1px solid var(--line);text-transform:uppercase;border-radius:4px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.collector-status svg{width:16px;height:16px}.collector-status-active{color:var(--success);background:var(--panel);border-color:var(--success)}.collector-status-healing{color:var(--focus);background:var(--panel);border-color:var(--focus)}.collector-status-failed{color:var(--warning);background:var(--surface-error);border-color:var(--warning)}.collector-heal-cell{align-content:start}.collector-heal-cell button{justify-self:start}.collector-error{color:var(--warning);align-items:flex-start;gap:8px;line-height:1.45;display:flex}.collector-error svg{flex:none;width:18px;height:18px;margin-top:1px}.collector-clean{color:var(--muted)}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;min-width:0;display:flex}.header-actions button{min-width:0}.empty-state{border-bottom:1px solid var(--line);gap:8px;padding:40px 0;display:grid}.empty-state h2{font-size:24px}.tracker-grid{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}.tracker-card{background:var(--panel);border:1px solid var(--line);grid-template-rows:1fr auto;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:16px;min-width:0;min-height:240px;padding:16px;transition:border-color .18s;display:grid}.tracker-card:hover{border-color:var(--text)}.tracker-link{width:100%;height:100%;min-height:0;color:inherit;text-align:initial;background:0 0;grid-row:1/span 2;padding:0;display:block}.tracker-link:hover:not(:disabled){background:0 0}.tracker-link:hover .product-media{background:var(--surface-medium)}.tracker-link .product-media{aspect-ratio:auto;height:100%;min-height:208px}.tracker-card-body{align-content:start;gap:16px;min-width:0;display:grid}.tracker-card-body>div:first-child{gap:8px;min-width:0;display:grid}.product-media{aspect-ratio:4/3;background:var(--surface-subtle);place-items:center;width:100%;display:grid;overflow:hidden}.product-media img{object-fit:contain;width:100%;height:100%}.product-media span{color:var(--muted);font-size:13px}.tracker-card p,.preview-panel p,.tracker-card h2,.preview-panel h2{color:var(--muted);overflow-wrap:anywhere;line-height:1.45}.tracker-card h2,.preview-panel h2{color:var(--text)}.tracker-card .status{width:fit-content;color:var(--success);border-bottom:2px solid;padding-bottom:4px}.tracker-card .status-paused{color:var(--muted)}.tracker-card .status-needs_attention{color:var(--warning)}.price-lockup{gap:4px;display:grid}.price-lockup strong{color:var(--text);overflow-wrap:anywhere;font-size:28px;line-height:1.1}.price-lockup span{color:var(--muted);text-transform:capitalize}.condition-list{flex-wrap:wrap;gap:8px;display:flex}.condition-list span{min-width:0;min-height:32px;color:var(--text);background:var(--surface-medium);border:1px solid var(--line);text-transform:capitalize;overflow-wrap:anywhere;border-radius:4px;align-items:center;padding:4px 12px;font-size:13px;font-weight:700;display:inline-flex}.tracker-meta{gap:4px;display:grid}.controls-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:16px;display:grid}.button-row{border-top:1px solid var(--line);flex-wrap:wrap;align-self:end;gap:8px;min-width:0;padding-top:16px;display:flex}.button-row button,.button-row .button-link{text-align:center;white-space:normal;flex:auto;min-width:0;min-height:40px;padding-inline:10px;font-size:13px}.button-row button span,.button-row .button-link span{overflow-wrap:anywhere;min-width:0}.history-panel{gap:24px}.product-detail-layout{gap:24px;display:grid}.product-detail-panel{background:var(--panel);border:1px solid var(--line);grid-template-columns:minmax(240px,420px) minmax(0,1fr);gap:24px;padding:24px;display:grid}.product-detail-media{aspect-ratio:1;align-self:start}.product-detail-summary{align-content:start;gap:24px;min-width:0;display:grid}.product-detail-summary>div:first-child{gap:8px;min-width:0;display:grid}.product-detail-summary h2,.product-description{overflow-wrap:anywhere}.product-detail-summary .status{width:fit-content;color:var(--success);border-bottom:2px solid;padding-bottom:4px}.product-detail-summary .status-paused{color:var(--muted)}.product-detail-summary .status-needs_attention{color:var(--warning)}.detail-price strong{font-size:40px}.product-detail-meta{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-detail-meta div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:4px;min-width:0;padding:16px;display:grid}.product-detail-meta span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.product-detail-meta strong{overflow-wrap:anywhere;line-height:1.35}.product-detail-actions{padding-top:0}.product-detail-actions .button-link,.product-detail-actions button{flex:140px}.run-status-card{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line-strong);gap:20px;min-width:0;padding:24px;display:grid}.run-status-running,.run-status-fetching,.run-status-saving,.run-status-starting{border-left-color:var(--focus)}.run-status-complete,.run-status-ready{border-left-color:var(--success)}.run-status-failed{border-left-color:var(--warning)}.run-status-header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;min-width:0;display:flex}.run-status-header>div{gap:6px;min-width:0;display:grid}.run-status-header h2{overflow-wrap:anywhere}.run-status-pill{min-height:32px;color:var(--text);background:var(--surface-medium);border:1px solid var(--line);text-transform:uppercase;border-radius:4px;align-items:center;gap:8px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.run-status-card svg{stroke-width:1.75px;flex:none;width:18px;height:18px}.run-status-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}.run-status-grid div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:4px;min-width:0;padding:14px;display:grid}.run-status-grid span,.section-title-row>span,.history-row span{color:var(--muted)}.run-status-grid span{text-transform:uppercase;font-size:12px;font-weight:700}.run-status-grid strong,.history-row strong{overflow-wrap:anywhere;min-width:0;line-height:1.35}.run-step-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.run-step{min-width:0;min-height:40px;color:var(--muted);background:var(--surface-subtle);border:1px solid var(--line);border-radius:4px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.run-step span{overflow-wrap:anywhere;min-width:0}.run-step-done{color:var(--success);background:var(--panel);border-color:var(--success)}.run-step-active{color:var(--focus);background:var(--panel);border-color:var(--focus)}.run-error{color:var(--warning);align-items:flex-start;gap:8px;line-height:1.45;display:flex}.run-spin{animation:1s linear infinite run-spin}@keyframes run-spin{to{transform:rotate(360deg)}}.empty-copy{color:var(--muted);line-height:1.45}.section-title-row{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;min-width:0;display:flex}.section-title-row>div{gap:6px;min-width:0;display:grid}.section-title-row>span{text-transform:uppercase;font-size:13px;font-weight:700}.history-list{border-top:1px solid var(--line);display:grid}.history-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.3fr) minmax(140px,.8fr) minmax(110px,.4fr);align-items:start;gap:16px;padding:16px 0;display:grid}.history-row>div{gap:4px;min-width:0;display:grid}.notice{color:var(--warning);background:var(--surface-error);border-left:4px solid var(--warning);padding:16px;line-height:1.45}.modal-backdrop{z-index:30;background:var(--overlay);place-items:center;padding:32px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--panel);border:1px solid var(--text);gap:24px;width:min(760px,100%);max-height:min(800px,100svh - 64px);padding:24px;display:grid;overflow:auto}.modal-header{border-bottom:1px solid var(--line);padding-bottom:16px}.modal-form{gap:16px;display:grid}.modal-submit{justify-self:start}.modal-preview{grid-template-columns:160px minmax(0,1fr);align-items:start}.modal-preview .price-lockup,.modal-preview .condition-list,.modal-preview button{grid-column:1/-1}.modal-preview button{justify-self:start}.sidebar-scrim{display:none}@media (width<=1100px){.collector-domain-header,.product-detail-panel{grid-template-columns:minmax(0,1fr)}.product-detail-media{max-width:520px}}@media (width<=980px){.collector-summary-grid,.run-status-grid,.run-step-list{grid-template-columns:repeat(2,minmax(0,1fr))}.collector-table-head{display:none}.collector-row{grid-template-columns:repeat(2,minmax(0,1fr))}.collector-heal-cell{grid-column:1/-1}.tracker-card{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr)}.tracker-link{grid-row:auto;height:auto}.tracker-link .product-media{aspect-ratio:4/3;height:auto;min-height:0}}@media (width<=860px){.auth-shell{padding:24px}.auth-panel{grid-template-columns:1fr;gap:32px}.auth-copy h1{font-size:36px}.login-card{padding:24px}.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:20;width:min(320px,100vw - 32px);padding:24px;transition:transform .18s;position:fixed;inset:0 auto 0 0;transform:translate(0)}.sidebar-collapsed .sidebar{border-right:1px solid var(--text);width:min(320px,100vw - 32px);padding:24px;transform:translate(-100%)}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-button span{display:initial}.sidebar-collapsed .sidebar-title,.sidebar-collapsed .brand-lockup{justify-content:flex-start}.sidebar-collapsed .nav-button{justify-content:flex-start;width:100%;padding:0 16px}.sidebar-scrim{z-index:10;background:#0000004d;border-radius:0;min-height:0;padding:0;display:block;position:fixed;inset:0}.workspace{padding:24px}.workspace-header{flex-direction:column;align-items:stretch;min-height:0}.tracker-card{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);min-height:420px}.tracker-link{grid-row:auto;height:auto}.tracker-link .product-media{aspect-ratio:4/3;height:auto;min-height:0}.header-actions{justify-content:flex-start}.header-actions button{flex:220px}.controls-grid,.collector-domain-stats,.history-row,.product-detail-panel,.product-detail-meta,.run-status-grid,.run-step-list,.settings-layout{grid-template-columns:1fr}.modal-backdrop{padding:16px}.modal-panel{max-height:calc(100svh - 32px);padding:20px}.modal-preview{grid-template-columns:1fr}.modal-preview .price-lockup,.modal-preview .condition-list,.modal-preview button{grid-column:auto}}@media (prefers-reduced-motion:reduce){.run-spin{animation:none}}@media (width<=480px){.auth-shell,.workspace{padding:16px}.auth-copy h1{font-size:32px}.tracker-grid,.collector-summary-grid,.collector-row{grid-template-columns:minmax(0,1fr)}.header-actions .primary{flex:auto}.modal-submit,.modal-preview button{width:calc(100% - 4px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
