:root{--bg: #ffffff;--surface: #ffffff;--ink: #111111;--ink-soft: #505050;--line: #d9d9d9;--line-strong: #111111;--radius: 10px;--ui-icon-size: 20px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}html{scrollbar-gutter:stable}body{font-family:IBM Plex Sans,Segoe UI,sans-serif;line-height:1.45;padding:20px 14px 36px}.app-shell{max-width:1200px;margin:0 auto;display:grid;gap:14px}.hero,.panel{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:14px}.hero h1{margin:6px 0 8px;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.01em}.hero p{margin:0;color:var(--ink-soft)}.kicker{margin:0;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.panel h2,.panel h3,.panel h4{margin:0 0 8px}.controls-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.upload-row{align-items:flex-end}.upload-row>#analyze-btn{align-self:end}.post-analysis-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;margin-top:8px}.post-analysis-text{min-width:0}.post-analysis-text .status{margin:0}.post-analysis-text .progress{margin:8px 0 0}.post-analysis-actions{display:inline-flex;gap:8px;align-items:center;justify-content:flex-end;align-self:start;margin-top:2px}.post-analysis-actions button{min-width:185px}.controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}label{display:grid;gap:5px;font-size:.9rem}.file-input-wrap{display:grid;gap:5px;flex:1 1 380px;min-width:280px}.input-with-icon{position:relative;display:block;width:100%}.field-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:var(--ui-icon-size);height:var(--ui-icon-size);background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none}.field-icon-search{background-image:url(/resources/search.svg);opacity:.75}.field-icon-infinity{background-image:url(/resources/infinity-symbol.svg);opacity:0;transition:opacity .12s ease-in-out}.max-results-input-wrap.show-infinity .field-icon-infinity{opacity:.85}input,select,button{font:inherit}input[type=text],input[type=number],input[type=file],select{width:100%;border:1px solid var(--line-strong);border-radius:8px;padding:7px 10px;background:#fff;color:var(--ink)}#search-field,#benchmark-type-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:48px;background-image:url(/resources/chevron-sort-down.svg);background-repeat:no-repeat;background-position:calc(100% - 8px) -3px;background-size:30px 30px}.search-query-input-wrap input{padding-left:40px}.max-results-input-wrap input{padding-left:10px}.max-results-input-wrap.show-infinity input{padding-left:40px}input[type=file]::file-selector-button{font:inherit;border:1px solid var(--line-strong);border-radius:6px;padding:7px 12px 7px 36px;margin-right:8px;cursor:pointer;color:var(--ink);line-height:1.1;background:#f5f5f5 url(/resources/upload.svg) no-repeat 10px center / var(--ui-icon-size)}input[type=file]::-webkit-file-upload-button{font:inherit;border:1px solid var(--line-strong);border-radius:6px;padding:6px 12px 6px 36px;margin-right:8px;cursor:pointer;color:var(--ink);line-height:1.1;background:#f5f5f5 url(/resources/upload.svg) no-repeat 10px center / var(--ui-icon-size)}button{border:1px solid var(--line-strong);background:#fff;color:var(--ink);border-radius:8px;padding:9px 12px;min-height:43px;font-weight:600;cursor:pointer}button:hover:not(:disabled){background:#111;color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.checkbox{grid-template-columns:auto 1fr;align-items:center;gap:8px}.loader{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:.9rem;color:var(--ink)}.loader-spinner{width:14px;height:14px;border-radius:999px;border:2px solid #111;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status,.progress,.muted{margin:8px 0 0;color:var(--ink-soft)}.status[data-tone=ok]{color:var(--ink);font-weight:500}.status[data-tone=warn]{color:var(--ink);text-decoration:underline;text-decoration-style:dashed}.status[data-tone=error]{color:var(--ink);font-weight:600}.hidden{display:none!important}#analysis-root{display:grid;gap:14px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}.metric-card{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.metric-title{margin:0;color:var(--ink-soft);font-size:.84rem}.metric-value{margin:4px 0;font-size:1.2rem;font-weight:700}.metric-meta{margin:0;color:var(--ink-soft);font-size:.82rem}.insights ul{margin:6px 0 0;padding-left:18px}.insights li{margin-bottom:6px}details.panel{padding:0;overflow:hidden;margin:0}details>summary{list-style:none;cursor:pointer;padding:12px 34px 12px 14px;font-weight:600;border-bottom:1px solid var(--line);background:#f8f8f8;position:relative}details>summary::-webkit-details-marker{display:none}details>summary:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:var(--ui-icon-size);height:var(--ui-icon-size);background:url(/resources/add.svg) no-repeat center / contain;opacity:.9}details[open]>summary:after{background-image:url(/resources/subtract.svg)}#reset-search-btn,#copy-paths-btn,#download-report-btn{display:inline-flex;align-items:center;gap:8px}#reset-search-btn:before,#copy-paths-btn:before,#download-report-btn:before{content:"";width:var(--ui-icon-size);height:var(--ui-icon-size);background-repeat:no-repeat;background-position:center;background-size:contain;flex:0 0 var(--ui-icon-size)}#reset-search-btn:before{background-image:url(/resources/reset.svg)}#copy-paths-btn:before{background-image:url(/resources/copy.svg)}#download-report-btn:before{background-image:url(/resources/pdf.svg)}#reset-search-btn:hover:not(:disabled):before,#copy-paths-btn:hover:not(:disabled):before,#download-report-btn:hover:not(:disabled):before{filter:brightness(0) invert(1)}details>*:not(summary){padding:0 14px}details>h3{margin-top:14px;margin-bottom:8px}.table-wrap{overflow-x:auto;margin:0 0 12px}table{width:100%;border-collapse:collapse;min-width:620px}table.count-table{table-layout:fixed}table.count-table th:first-child,table.count-table td:first-child{width:72%}table.count-table th:last-child,table.count-table td:last-child{width:28%;text-align:right;padding-right:10px}th,td{border-bottom:1px solid var(--line);text-align:left;padding:7px 5px;vertical-align:top;font-size:.88rem}th{color:var(--ink-soft);font-weight:600}code{font-family:IBM Plex Mono,monospace;background:#f4f4f4;border:1px solid #e6e6e6;border-radius:5px;padding:1px 5px;word-break:break-all}.empty{color:var(--ink-soft);font-style:italic}.ip-value-with-link{display:inline-flex;align-items:center;gap:6px;max-width:100%}.ip-lookup-link{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;text-decoration:none;border-radius:3px}.ip-lookup-link:focus-visible{outline:1px solid var(--line-strong);outline-offset:1px}.ip-lookup-icon{width:13px;height:13px;background:url(/resources/launch.svg) no-repeat center / contain;opacity:.75}.ip-lookup-link:hover .ip-lookup-icon,.ip-lookup-link:focus-visible .ip-lookup-icon{opacity:1}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;margin-bottom:10px}.summary-grid div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px}.summary-grid span{display:block;font-size:.78rem;color:var(--ink-soft)}.summary-grid strong{display:block;margin-top:4px}.nested-section{margin:8px 0 14px}.guide-content{line-height:1.5}.guide-content p{margin:0 0 10px}.guide-content pre{margin:0 0 12px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f7f7f7;overflow:auto}.guide-content pre code{border:0;background:transparent;padding:0;white-space:pre}.guide-content a{color:var(--ink);text-decoration:underline}table.guide-field-table th:first-child,table.guide-field-table td:first-child{width:24%}.benchmark-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-bottom:12px}.benchmark-summary-grid div{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.benchmark-summary-grid span{display:block;color:var(--ink-soft);font-size:.8rem}.benchmark-summary-grid strong{display:block;margin-top:4px}.benchmark-visual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;margin-bottom:12px}.benchmark-visual-card{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.benchmark-visual-card h4{margin:0 0 4px}.benchmark-visual-row{display:grid;grid-template-columns:132px 1fr;gap:10px;align-items:start}.benchmark-pie-wrap{display:grid;gap:8px;justify-items:center}.benchmark-pie-svg{width:96px;height:96px;display:block;shape-rendering:geometricPrecision}.benchmark-pie-track{fill:#ebebeb}.benchmark-pie-segment{fill:transparent}.benchmark-pie-segment.benchmark-pie-hit{fill:#111}.benchmark-pie-segment.benchmark-pie-pass{fill:#777}.benchmark-pie-segment.benchmark-pie-miss{fill:#d4d4d4}.benchmark-pie-hole{fill:#fff;stroke:#e2e2e2;stroke-width:.7}.benchmark-legend{margin:0;padding:0;list-style:none;width:100%}.benchmark-legend li{display:flex;align-items:center;gap:6px;font-size:.78rem;margin-bottom:4px}.legend-swatch{display:inline-block;width:12px;height:12px;border:1px solid var(--line-strong);border-radius:2px}.legend-hit{background:#111}.legend-pass{background:#777}.legend-miss{background:#d4d4d4}.benchmark-bars{display:grid;gap:7px}.benchmark-bar-row{display:grid;grid-template-columns:42px 1fr auto;gap:8px;align-items:center}.benchmark-bar-label{font-size:.76rem;color:var(--ink-soft)}.benchmark-bar-track{height:10px;border:1px solid var(--line);border-radius:999px;background:#f6f6f6;overflow:hidden}.benchmark-bar-fill{height:100%;display:block}.benchmark-bar-hit{background:#111}.benchmark-bar-pass{background:#777}.benchmark-bar-miss{background:#d4d4d4}.benchmark-bar-value{font-size:.8rem;font-family:IBM Plex Mono,monospace}.benchmark-top-controls{margin:8px 0;gap:10px}.benchmark-control{min-width:160px}.benchmark-topn-control{max-width:110px}.benchmark-top-url-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.benchmark-top-url-grid .table-wrap{overflow-x:hidden}.benchmark-top-url-grid table{min-width:0;table-layout:fixed}.benchmark-top-url-grid table.count-table th:first-child,.benchmark-top-url-grid table.count-table td:first-child{width:84%}.benchmark-top-url-grid table.count-table th:last-child,.benchmark-top-url-grid table.count-table td:last-child{width:16%}.benchmark-top-url-grid code{display:inline-block;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.search-meta{margin-bottom:8px}.search-controls-grid{display:grid;grid-template-columns:minmax(280px,1fr) 190px 150px auto;gap:8px;align-items:end}.search-mode-label,.max-results-label{width:100%;min-width:0}.search-actions-row{display:flex;justify-content:flex-start;align-items:center;gap:10px;margin:12px 0 10px;flex-wrap:wrap}.search-cta-group,.search-copy-group{display:inline-flex;align-items:center;gap:8px}.search-copy-group{margin-left:auto}.copy-success-indicator{min-height:43px;min-width:46px;border:1px solid var(--line-strong);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff}.copy-success-indicator.hidden{display:none}.copy-success-icon{width:var(--ui-icon-size);height:var(--ui-icon-size);background:url(/resources/checkmark.svg) no-repeat center / contain}.secondary-btn{background:#fff}.copy-feedback{min-height:1rem;font-size:.84rem;color:var(--ink-soft)}.copy-feedback[data-tone=ok]{color:var(--ink)}.copy-feedback[data-tone=warn]{color:var(--ink-soft)}.copy-feedback[data-tone=error]{color:var(--ink);text-decoration:underline;text-decoration-style:dashed}.scroll-tools{position:fixed;right:22px;bottom:22px;display:grid;gap:8px;z-index:60;opacity:1;transition:opacity .22s ease;will-change:opacity}.scroll-tools.is-idle,.scroll-tools.is-at-top{opacity:.2}.scroll-tool-btn{width:46px;height:46px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0}.scroll-tool-btn:hover{background:#111;color:#fff}.scroll-tool-icon{width:24px;height:24px;background-repeat:no-repeat;background-position:center;background-size:contain}.scroll-tool-icon-top{background-image:url(/resources/scroll-up-to-top.svg)}.scroll-tool-icon-context{background-image:url(/resources/scroll-up.svg)}.scroll-tool-btn:hover:not(:disabled) .scroll-tool-icon{filter:brightness(0) invert(1)}.search-list{display:grid;gap:8px}.search-row{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;display:grid;grid-template-columns:90px 130px 90px minmax(520px,1fr) 80px 80px 150px;gap:8px;align-items:start}.search-cell-label{display:none;font-size:.73rem;color:var(--ink-soft);margin-bottom:2px}.search-cell-value{font-size:.86rem;word-break:break-word}.timestamp-cell{display:grid;gap:2px}.ts-date,.ts-time{display:inline-block;width:fit-content;max-width:100%}.search-header{display:grid;grid-template-columns:90px 130px 90px minmax(520px,1fr) 80px 80px 150px;gap:8px;font-size:.78rem;color:var(--ink-soft);padding:0 8px;margin-bottom:4px}.warn{color:var(--ink);text-decoration:underline;text-decoration-style:dashed}@media print{@page{size:A4 portrait;margin:30mm}body{padding:0;background:#fff;color:#111;font-size:10.5pt;line-height:1.35;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.print-report-mode .app-shell{max-width:none;margin:0;display:block}body.print-report-mode .hero,body.print-report-mode .app-shell>section.panel:first-of-type,body.print-report-mode #search-section,body.print-report-mode #guide-accordion{display:none!important}body.print-report-mode #analysis-section{display:block!important;margin:0;padding:2mm}body.print-report-mode .benchmark-sample-records{display:none!important}body.print-report-mode #analysis-root{display:block}body.print-report-mode #analysis-root>*{margin-top:8mm}body.print-report-mode #analysis-root>:first-child{margin-top:0}body.print-report-mode .panel{border:1px solid #111;border-radius:8px;padding:10px;break-inside:auto;page-break-inside:auto}body.print-report-mode details.panel{overflow:visible}body.print-report-mode details>summary{break-after:avoid-page;page-break-after:avoid}body.print-report-mode .table-wrap{overflow:visible}body.print-report-mode table{min-width:0;width:100%;table-layout:fixed}body.print-report-mode td,body.print-report-mode th,body.print-report-mode p,body.print-report-mode li,body.print-report-mode a,body.print-report-mode code{overflow-wrap:anywhere;word-break:break-word}.ip-lookup-link{display:none!important}.ip-value-with-link{gap:0!important}body.print-report-mode code{white-space:normal}.scroll-tools{display:none!important}}@media (max-width: 760px){body{padding:12px 10px 24px}.hero,.panel{padding:12px}details>summary,details>*:not(summary){padding-left:12px;padding-right:12px}table{min-width:560px}.search-controls-grid{grid-template-columns:1fr}.search-mode-label,.max-results-label{max-width:none}.post-analysis-row{grid-template-columns:1fr}.post-analysis-actions{width:100%;display:grid;grid-template-columns:1fr;justify-content:stretch;margin-top:0}.post-analysis-actions button{width:100%;min-width:0}.post-analysis-actions #download-report-btn{justify-content:center}.benchmark-visual-row{grid-template-columns:1fr}.benchmark-pie-wrap{justify-items:start}.scroll-tools{bottom:14px;gap:8px}.benchmark-top-controls{flex-direction:column;align-items:stretch}.benchmark-control,.benchmark-topn-control{max-width:none;width:100%}.search-header{display:none}.search-row{grid-template-columns:1fr;gap:6px}.search-cell-label{display:block}}
