:root{--background:#f6f7f9;--panel:#fff;--panel-soft:#eef2f5;--text:#17202a;--muted:#687586;--line:#d8dee6;--accent:#19746b;--accent-strong:#12544e;--danger:#b42318;--focus:#d99a19}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--background);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.auth-shell,.tool-shell{width:min(1120px,100% - 32px);margin:0 auto}.auth-shell{place-items:center;min-height:100vh;display:grid}.login-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(420px,100%);padding:28px;box-shadow:0 18px 50px #17202a14}.login-panel h1,.tool-header h1{margin:0;font-size:1.75rem;line-height:1.2}.login-panel p,.tool-header p{color:var(--muted);margin:10px 0 0}.form-stack{gap:16px;margin-top:24px;display:grid}.field{gap:8px;display:grid}.field label,.section-title{font-weight:700}.field input,.field select{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:6px;padding:11px 12px}.field input:focus,.field select:focus{border-color:var(--focus);outline:3px solid #d99a192e}.primary-button,.secondary-button,.link-button{border-radius:6px;min-height:42px;padding:0 16px;font-weight:700}.primary-button{border:1px solid var(--accent);background:var(--accent);color:#fff}.primary-button:hover:not(:disabled){background:var(--accent-strong)}.secondary-button{border:1px solid var(--line);color:var(--text);background:#fff}.link-button{color:var(--muted);background:0 0;border:0;text-decoration:underline}.error-message{color:var(--danger);background:#fff3f1;border:1px solid #b4231838;border-radius:6px;padding:11px 12px}.tool-shell{padding:32px 0 56px}.tool-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.tool-panel,.product-preview,.results-section,.accepted-section{border:1px solid var(--line);background:var(--panel);border-radius:8px}.tool-panel{padding:20px}.stage-panel+.stage-panel,.product-preview+.stage-panel{margin-top:28px}.stage-heading{gap:4px;margin-bottom:16px;display:grid}.stage-heading span{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:800}.stage-heading h2{margin:0;font-size:1.18rem}.search-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.status-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.result-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;display:flex}.padded-actions{padding:0 16px 16px}.results-section,.product-preview,.accepted-section{margin-top:20px;overflow:hidden}.tool-panel>.results-section,.tool-panel>.accepted-section,.tool-panel>.analysis-panel{margin-top:22px}.section-heading{border-bottom:1px solid var(--line);background:var(--panel-soft);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.section-heading h2,.parent-group h3{margin:0;font-size:1rem}.section-heading span,.seed-label{color:var(--muted);font-size:.92rem}.section-heading a{color:var(--accent);font-weight:700}.product-content{grid-template-columns:220px minmax(0,1fr);gap:20px;padding:18px 16px;display:grid}.product-image,.product-image-placeholder{aspect-ratio:1;border:1px solid var(--line);background:#fff;border-radius:6px;width:100%}.product-image{object-fit:contain}.product-image-placeholder{color:var(--muted);text-align:center;place-items:center;display:grid}.product-copy{gap:18px;min-width:0;display:grid}.product-copy h3{margin:5px 0 0;font-size:1.25rem;line-height:1.35}.product-copy h4{margin:0 0 8px;font-size:.98rem}.product-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.product-stats div{border:1px solid var(--line);background:#fff;border-radius:6px;padding:10px}.product-stats dt{color:var(--muted);font-size:.82rem;font-weight:700}.product-stats dd{color:var(--text);overflow-wrap:anywhere;margin:5px 0 0;font-weight:800}.feature-list{gap:8px;margin:0;padding-left:18px;display:grid}.empty-copy{color:var(--muted);margin:0;line-height:1.6}.warning-list{background:#d99a1914;border:1px solid #d99a1959;border-radius:6px;gap:6px;padding:10px 12px;display:grid}.warning-list p{color:#76510a;margin:0}.keyword-list,.accepted-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.keyword-row{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px 16px;display:grid}.keyword-row:first-child{border-top:0}.keyword-row input{margin-top:3px}.keyword-text{overflow-wrap:anywhere}.keyword-meta{color:var(--muted);margin-top:3px;font-size:.85rem;display:block}.parent-group{border-top:1px solid var(--line)}.parent-group:first-child{border-top:0}.parent-group h3{padding:14px 16px 8px}.accepted-list li{border-top:1px solid var(--line);padding:11px 16px}.accepted-list li:first-child{border-top:0}.empty-state{color:var(--muted);padding:18px 16px}.inline-empty{padding:0}.competitor-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.competitor-row{border-top:1px solid var(--line);grid-template-columns:auto 92px minmax(0,1fr);align-items:start;gap:14px;padding:14px 16px;display:grid}.competitor-row:first-child{border-top:0}.competitor-row input{margin-top:38px}.competitor-image,.competitor-image-placeholder{aspect-ratio:1;border:1px solid var(--line);background:#fff;border-radius:6px;width:92px}.competitor-image{object-fit:contain}.competitor-image-placeholder{color:var(--muted);text-align:center;place-items:center;font-size:.82rem;display:grid}.competitor-copy{gap:10px;min-width:0;display:grid}.competitor-copy h3{margin:4px 0;font-size:1rem;line-height:1.35}.competitor-copy a{color:var(--accent);font-weight:700}.competitor-confirm-error{margin:0 16px 16px}.competitor-products{gap:16px;padding:16px;display:grid}.competitor-products .product-preview{margin-top:0}.compact-product-preview .product-content{grid-template-columns:160px minmax(0,1fr)}.analysis-actions{margin-top:0}.mode-toggle{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;margin:16px 16px 0;padding:4px;display:inline-flex}.mode-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-weight:800}.mode-button.active{background:var(--text);color:#fff}.recommend-seeds-panel{flex-wrap:wrap;align-items:center;gap:10px;padding:16px;display:flex}.seed-recommendation-summary{background:#19746b0f;border:1px solid #19746b3d;border-radius:8px;gap:8px;margin:0 16px 16px;padding:12px;display:grid}.seed-recommendation-summary span{color:var(--muted)}.seed-recommendation-summary ul{gap:6px;margin:0;padding-left:18px;display:grid}.progress-block{gap:8px;margin:12px 16px 16px;display:grid}.progress-copy{color:var(--muted);justify-content:space-between;gap:12px;font-size:.88rem;font-weight:700;display:flex}.progress-copy strong{color:var(--text)}.progress-track{background:#edf1f4;border-radius:999px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .26s}.analysis-panel{border:1px solid var(--line);background:#fff;border-radius:8px;margin-top:16px;overflow:hidden}.analysis-grid{gap:14px;padding:16px;display:grid}.score-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.score-tile{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.score-tile-accent{background:#19746b0f;border-color:#19746b59}.score-tile span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800;display:block}.score-tile strong{margin-top:8px;font-size:2rem;line-height:1;display:block}.score-tile h3{margin:8px 0 0;font-size:1rem}.score-tile p{color:var(--muted);margin:8px 0 0;line-height:1.45}.analysis-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.analysis-card-emphasis{background:#19746b0f;border-color:#19746b59}.analysis-card h3{margin:0 0 10px;font-size:1rem}.analysis-summary{margin:0;line-height:1.6}.analysis-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0 0;display:grid}.analysis-metrics div{border:1px solid var(--line);background:#fff;border-radius:6px;padding:9px}.analysis-metrics dt{color:var(--muted);font-size:.78rem;font-weight:700}.analysis-metrics dd{margin:4px 0 0;font-weight:800}.analysis-list{gap:8px;margin:12px 0 0;padding-left:20px;line-height:1.55;display:grid}.check-list{gap:8px;display:grid}.check-row{border-top:1px solid var(--line);grid-template-columns:auto minmax(120px,.7fr) minmax(0,1fr);align-items:center;gap:10px;padding-top:8px;display:grid}.check-row:first-child{border-top:0;padding-top:0}.check-row span:not(.status-dot){font-weight:700}.check-row strong{overflow-wrap:anywhere}.content-difference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.mini-finding{background:#fff;border:1px solid #19746b38;border-radius:8px;padding:12px}.mini-finding h4{margin:0 0 8px;font-size:.92rem}.mini-finding ul{gap:6px;margin:0;padding-left:18px;line-height:1.45;display:grid}.status-dot{border-radius:999px;width:12px;height:12px}.status-dot-pass{background:#1f9d55}.status-dot-fail{background:var(--danger)}.status-dot-unknown{background:#9aa4b2}.recommendation-title{margin:0 0 8px;font-size:1.12rem;font-weight:800;line-height:1.4}.title-count{color:var(--accent-strong);background:#19746b14;border:1px solid #19746b4d;border-radius:999px;margin:0 0 12px;padding:4px 10px;font-size:.82rem;font-weight:800;display:inline-flex}.keyword-usage-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.keyword-usage-list li{border-top:1px solid var(--line);grid-template-columns:minmax(140px,.8fr) minmax(120px,.45fr) minmax(0,1.4fr);align-items:start;gap:10px;padding-top:10px;line-height:1.45;display:grid}.keyword-usage-list li:first-child{border-top:0;padding-top:0}.keyword-usage-term,.keyword-usage-placement{font-weight:800}.keyword-usage-placement{color:var(--accent-strong)}@media (max-width:700px){.tool-header,.search-row,.product-content,.score-tile-grid,.content-difference-grid{grid-template-columns:1fr;display:grid}.product-stats{grid-template-columns:1fr 1fr}.competitor-row{grid-template-columns:auto minmax(0,1fr)}.competitor-image,.competitor-image-placeholder{grid-column:2}.competitor-copy{grid-column:1/-1}.keyword-usage-list li{grid-template-columns:1fr}.tool-header{gap:14px}.tool-header .link-button,.search-row .primary-button{width:100%}}
