:root{--page: #f7f8fa;--surface: #fff;--ink: #18263d;--muted: #526178;--line: #d7dde7;--primary: #2457de;--primary-hover: #1e40af;--tint: #eef3ff;--success: #167052;--danger: #b33b38;font-family:Fira Sans,sans-serif;color:var(--ink);background:var(--page);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,summary,select,input[type=checkbox]{cursor:pointer}button,a,summary{touch-action:manipulation}button,a,input,select,summary{transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}button:disabled{cursor:not-allowed}button:active:not(:disabled){filter:brightness(.95)}:focus-visible{outline:3px solid var(--primary);outline-offset:4px}input:focus-visible,select:focus-visible{outline-offset:2px}[hidden]{display:none!important}main,section,.grid>*,.flex>*{min-width:0}p,h1,h2,h3,h4,li,.market-badge{overflow-wrap:anywhere}p{line-height:1.6}.skip-link{position:fixed;top:12px;left:12px;z-index:10;padding:12px 20px;background:var(--surface);color:var(--primary);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100dvh;display:flex;flex-direction:column;color:var(--ink);background:var(--page);font-family:Fira Sans,sans-serif}.app-bar{background:var(--ink);color:#fff}.app-bar :focus-visible{outline-color:#b9cdff}.app-bar-inner{max-width:1160px;margin:auto;min-height:76px;display:flex;align-items:center;gap:32px}.wordmark{display:flex;align-items:center;gap:12px;min-height:44px;font-size:19px;font-weight:600;text-decoration:none}.wordmark svg{width:32px;height:32px;color:#b9cdff}.workspace-label,.eyebrow{font-family:Fira Code,monospace;font-size:11px;font-weight:500;letter-spacing:.08em}.workspace-label{color:#b9c6d9;border-left:1px solid #64758f;padding-left:32px}.draft-label{margin-left:auto;color:#dce5f3;font-size:13px;display:flex;align-items:center;gap:8px}.draft-label:before{content:"";width:6px;height:6px;border-radius:50%;background:#afc9ff}.workspace{width:min(1160px,calc(100% - 64px));margin:0 auto;padding:56px 0 48px;flex:1}.intro{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:64px;align-items:end;margin-bottom:40px}.eyebrow{color:var(--muted);margin:0}.intro>div>.eyebrow{color:var(--primary);margin-bottom:16px}.intro h1{font-size:clamp(36px,4vw,54px);font-weight:600;line-height:1.08;letter-spacing:-.045em;margin:0 0 20px;text-wrap:balance}.intro h1 span{display:block;color:var(--primary)}.intro-description{font-size:18px;color:var(--muted);max-width:660px;margin:0}.source-note{border-left:2px solid var(--line);padding-left:24px;margin-bottom:3px}.source-note p:last-child{color:var(--muted);font-size:14px;margin:12px 0 0}.start-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:32px;margin-bottom:40px}.start-grid.has-results{grid-template-columns:1fr}.search-card{background:var(--surface);padding:32px;border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 24px #18263d05}.search-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.search-heading h2{margin:0;font-size:23px;font-weight:600;letter-spacing:-.025em}.search-heading .eyebrow{flex-shrink:0}.field-label{display:block;color:var(--ink);font-weight:500;font-size:14px;margin-bottom:8px}.company-row{display:flex;align-items:stretch;gap:12px}.text-input{display:block;width:100%;min-width:0;min-height:52px;padding:12px 16px;border:1px solid #8390a3;border-radius:8px;color:var(--ink);background:var(--surface);font-size:16px}.text-input::placeholder{color:#627189}.text-input:hover{border-color:var(--primary)}.text-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2457de18}.text-input:disabled{background:var(--page);opacity:.65}.analyze-button{display:flex;align-items:center;justify-content:center;gap:20px;background:var(--primary);color:#fff;font-weight:500;border-radius:8px;min-height:52px;padding:12px 24px;border:1px solid transparent}.analyze-button:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 3px 10px #2457de22}.analyze-button:disabled{background:#e8edf5;color:#526178}.analyze-button span{font-size:22px;line-height:1}.pattern-field{margin-top:24px}.compare-label{display:flex;align-items:center;gap:12px;min-height:44px;margin-top:12px;color:var(--muted);font-size:14px;cursor:pointer}.compare-label input{width:18px;height:18px;accent-color:var(--primary)}.compare-field{margin-top:12px}.examples{border-top:1px solid var(--line);padding-top:20px;margin-top:16px}.examples .eyebrow span{font-family:Fira Sans,sans-serif;letter-spacing:0;text-transform:none;font-size:13px;font-weight:400}.example-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.example-button{min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:14px;background:var(--surface)}.example-button:hover:not(:disabled){color:var(--primary-hover);border-color:var(--primary);background:var(--tint)}.example-button:disabled{opacity:.5}.empty-state{padding:24px 0 16px 8px}.empty-state h2{max-width:300px;font-size:26px;line-height:1.25;font-weight:500;letter-spacing:-.025em;margin:24px 0 12px}.empty-state>p:not(.eyebrow){color:var(--muted);font-size:14px;margin-bottom:24px}.map-preview{display:flex;align-items:center;margin-top:28px}.map-node{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:12px;color:var(--muted);font-family:Fira Code,monospace;font-size:11px;white-space:nowrap}.map-node-primary{display:flex;align-items:center;justify-content:center;width:64px;height:64px;color:var(--primary);background:var(--tint);border-color:#b6c7f2;flex-shrink:0}.map-node-primary svg{width:30px;height:30px}.map-connector{flex:1;height:1px;min-width:12px;background:#a1b5e5}.lens-row{display:flex;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.lens-row>svg{width:22px;height:22px;flex-shrink:0;color:var(--primary);margin-top:3px}.lens-row h3{font-size:15px;font-weight:500;margin:0 0 4px}.lens-row p{color:var(--muted);font-size:13px;margin:0}.app-footer{max-width:1160px;width:calc(100% - 64px);margin:0 auto;padding:24px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:12px}.app-footer p{margin:0}.analysis-panel{padding-top:32px;border-top:1px solid var(--line)}.analysis-panel>p{max-width:85ch}.analysis-panel button,.competitors-button,summary,.seam-link{min-height:44px}.analysis-panel button:hover{background:var(--tint)}.analysis-panel summary{display:flex;align-items:center;gap:12px}.analysis-panel summary:before{content:"+";color:var(--primary);font-size:20px;font-weight:400}.analysis-panel details[open]>summary:before{content:"−"}.analysis-panel summary::-webkit-details-marker{display:none}.metric-label{font-family:Fira Code,monospace;font-size:11px}.metrics-grid>div{border-top:3px solid var(--primary)}.metrics-grid p:last-child{font-family:Fira Code,monospace;font-weight:500}.seam-link{display:inline-flex;align-items:center;padding:8px 14px}.analysis-lens{align-self:start}.analysis-lens>.flex svg{flex-shrink:0}.stage-card,.expansion-card{border:1px solid var(--line);background:var(--page)}.stage-card .flex>div{min-width:0}.presence-badge{flex-shrink:0;font-size:11px;font-weight:500;padding:4px 8px;border-radius:4px}.present{color:var(--success);background:#e6f3ed}.absent{color:var(--danger);background:#fbeceb}.competitors-button{color:var(--primary-hover)}.target-market{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px;line-height:1.6}.market-badge{padding:4px 8px;border-radius:4px;color:var(--primary-hover);background:var(--tint)}.loading-state{background:var(--tint);border:1px solid var(--line);border-radius:12px;margin-bottom:24px}@media(min-width:1024px){.has-results .search-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);column-gap:32px}.has-results .search-heading{grid-column:1 / -1}.has-results .search-card>.field-label{grid-column:1;grid-row:2}.has-results .company-row{grid-column:1;grid-row:3}.has-results .pattern-field{grid-column:2;grid-row:2 / 4;margin:0}.has-results .compare-label,.has-results .compare-field,.has-results .examples{grid-column:1 / -1}}@media(max-width:1200px){.app-bar-inner{margin:0 32px}.intro{gap:32px;grid-template-columns:minmax(0,1fr) 300px}.start-grid{gap:24px}.search-card{padding:24px}}@media(max-width:900px){.intro{grid-template-columns:1fr;gap:24px}.source-note{max-width:680px}.source-note .eyebrow{display:none}.source-note p:last-child{margin:0}.start-grid{grid-template-columns:1fr}.empty-state{padding:8px 24px}.map-preview{max-width:400px}.empty-state h2{max-width:none}.workspace-label{display:none}.app-footer{flex-direction:column;gap:8px}}@media(max-width:600px){.app-bar-inner{margin:0 20px;min-height:56px;gap:12px}.wordmark{font-size:16px;gap:8px}.wordmark svg{width:26px;height:26px}.draft-label{font-size:11px;gap:6px}.workspace{width:calc(100% - 32px);padding:20px 0 32px}.intro{margin-bottom:20px;gap:8px}.intro h1{font-size:32px;margin-bottom:10px}.intro>div>.eyebrow{margin-bottom:8px;font-size:10px}.intro-description{font-size:16px;line-height:1.5}.source-note{padding-left:12px}.source-note p:last-child{font-size:13px;line-height:1.5}.search-card{padding:16px;border-radius:12px}.search-heading{gap:8px;margin-bottom:12px}.search-heading h2{font-size:20px}.search-heading .eyebrow{font-size:10px;letter-spacing:0}.company-row{flex-direction:column;gap:10px}.text-input,.analyze-button{min-height:48px;padding-top:10px;padding-bottom:10px}.pattern-field{margin-top:16px}.compare-label{margin-top:8px}.examples{margin-top:8px;padding-top:8px}.example-buttons{gap:8px;margin-top:8px}.example-button{padding:8px 13px}.empty-state{padding:8px 4px}.app-footer{width:calc(100% - 32px);padding-bottom:max(24px,env(safe-area-inset-bottom))}.analysis-panel>.flex h2{font-size:26px}.analysis-lens{padding:20px 16px}.analysis-lens h3{font-size:21px}.stage-card .flex{flex-wrap:wrap;gap:8px}.stage-card .flex>div{flex-basis:100%}.metrics-grid{gap:8px}.metrics-grid>div{padding:12px 8px}.metric-label{font-size:10px;letter-spacing:0}.metrics-grid p:last-child{font-size:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
