diff --git a/miniapp/assets/podbor.css b/miniapp/assets/podbor.css index 6beb61b..4ce2107 100644 --- a/miniapp/assets/podbor.css +++ b/miniapp/assets/podbor.css @@ -1119,3 +1119,292 @@ line-height: 1.3; } .rev-val .muted { color: var(--muted); font-weight: 400; } + +/* ============================================================ + Inline-отчёт после отправки подбора + ============================================================ */ + +.report { + margin-top: 20px; + display: flex; + flex-direction: column; + gap: 18px; +} + +.report-head .kicker { + margin-bottom: 4px; +} + +.report-summary { + font-size: 14px; + line-height: 1.5; + color: var(--ink-2); + margin: 6px 0 0; + padding: 12px 14px; + background: var(--warm); + border-radius: 12px; + border-left: 3px solid var(--accent-2); +} + +.report-cat { + display: flex; + flex-direction: column; + gap: 12px; +} + +.report-cat-head { + font-family: var(--font-display); + font-style: italic; + font-weight: 400; + font-size: 22px; + line-height: 1; + letter-spacing: -0.01em; + color: var(--ink); + margin: 0; + display: flex; + align-items: center; + gap: 10px; + padding-bottom: 8px; + border-bottom: 1px solid var(--line); +} + +.report-cat-icon { + width: 24px; + height: 24px; + display: grid; + place-items: center; + color: var(--accent-2); +} + +.report-cat-icon svg { width: 22px; height: 22px; } + +.report-models { + display: flex; + flex-direction: column; + gap: 12px; +} + +.report-model { + display: grid; + grid-template-columns: 88px 1fr; + gap: 12px; + padding: 12px; + background: #fff; + border: 1px solid var(--line); + border-radius: 14px; + position: relative; +} + +.report-model-img { + width: 88px; + height: 88px; + background: var(--warm); + border-radius: 10px; + overflow: hidden; + display: grid; + place-items: center; +} +.report-model-img img { + width: 100%; + height: 100%; + object-fit: contain; + background: #fff; +} +.report-model-img.placeholder { + background: repeating-linear-gradient(45deg, var(--warm), var(--warm) 5px, #F0E8D5 5px, #F0E8D5 10px); +} +.report-model-img.placeholder::after { + content: "📷"; + font-size: 24px; + opacity: 0.4; +} + +.report-model-body { + display: flex; + flex-direction: column; + gap: 4px; + min-width: 0; +} + +.report-model-brand { + font-family: var(--font-mono); + font-size: 10px; + font-weight: 500; + letter-spacing: 0.12em; + text-transform: uppercase; + color: var(--muted); +} + +.report-model-name { + font-family: var(--font-sans); + font-size: 15px; + font-weight: 600; + letter-spacing: -0.01em; + color: var(--ink); + line-height: 1.2; + margin-bottom: 2px; +} + +.report-model-meta { + font-family: var(--font-mono); + font-size: 10px; + letter-spacing: 0.06em; + color: var(--muted); + display: flex; + flex-wrap: wrap; + gap: 4px 8px; + margin: 2px 0; +} + +.report-model-meta .rating { color: var(--accent-2); font-weight: 500; } + +.report-model-price { + font-family: var(--font-display); + font-style: italic; + font-size: 17px; + color: var(--ink); + margin: 4px 0; + letter-spacing: -0.01em; +} +.report-model-price strong { font-style: normal; font-weight: 600; } +.report-model-price .muted { font-style: normal; font-size: 13px; color: var(--muted); } + +.report-highlights { + font-size: 12px; + line-height: 1.4; + color: var(--ink-2); + margin-top: 2px; +} +.report-pros { + font-size: 12px; + line-height: 1.4; + color: #2A6B3F; + margin-top: 2px; +} +.report-cons { + font-size: 12px; + line-height: 1.4; + color: #8A3E2A; + margin-top: 2px; +} + +.report-links { + display: flex; + flex-wrap: wrap; + gap: 6px; + margin-top: 8px; +} +.report-link { + font-family: var(--font-mono); + font-size: 10px; + font-weight: 500; + letter-spacing: 0.08em; + text-transform: uppercase; + color: var(--accent-2); + text-decoration: none; + border: 1px solid var(--accent-2); + padding: 4px 9px; + border-radius: var(--r-pill); + transition: background 0.12s; +} +.report-link:active { background: var(--warm); } + +/* Сравнительная таблица — accordion */ +.report-compare { + background: #fff; + border: 1px solid var(--line); + border-radius: 14px; + margin-top: 4px; + overflow: hidden; +} +.report-compare summary { + font-family: var(--font-mono); + font-size: 11px; + font-weight: 500; + letter-spacing: 0.12em; + text-transform: uppercase; + color: var(--muted); + padding: 12px 14px; + cursor: pointer; + list-style: none; + display: flex; + justify-content: space-between; + align-items: center; +} +.report-compare summary::-webkit-details-marker { display: none; } +.report-compare summary::after { + content: "↓"; + font-size: 12px; + color: var(--muted); + transition: transform 0.2s; +} +.report-compare[open] summary::after { transform: rotate(180deg); } + +.report-compare table { + width: 100%; + border-collapse: collapse; + font-size: 12px; +} +.report-compare th, +.report-compare td { + padding: 8px 10px; + text-align: left; + border-top: 1px solid var(--line); + vertical-align: top; +} +.report-compare th { + font-family: var(--font-mono); + font-size: 9.5px; + font-weight: 500; + letter-spacing: 0.12em; + text-transform: uppercase; + color: var(--muted); + background: var(--warm); +} +.report-compare td strong { font-weight: 600; color: var(--ink); } + +/* Итого */ +.report-total { + padding: 14px 16px; + background: var(--ink); + color: var(--paper); + border-radius: 14px; + display: flex; + align-items: baseline; + gap: 12px; + flex-wrap: wrap; +} +.report-total .lbl { + font-family: var(--font-mono); + font-size: 10px; + font-weight: 500; + letter-spacing: 0.16em; + text-transform: uppercase; + opacity: 0.7; +} +.report-total strong { + font-family: var(--font-display); + font-style: italic; + font-size: 20px; + font-weight: 500; + letter-spacing: -0.01em; +} +.report-total .status { + font-family: var(--font-mono); + font-size: 10px; + letter-spacing: 0.1em; + text-transform: uppercase; + opacity: 0.7; + margin-left: auto; +} + +.report-warnings { + background: #F5E1DC; + border: 1px solid #C7705A; + border-radius: 12px; + padding: 10px 14px; + color: #8A3E2A; + font-size: 13px; + line-height: 1.5; +} +.report-warnings > div { margin: 2px 0; } diff --git a/miniapp/assets/podbor.js b/miniapp/assets/podbor.js index 393b6f3..07da6dd 100644 --- a/miniapp/assets/podbor.js +++ b/miniapp/assets/podbor.js @@ -1143,16 +1143,25 @@ const Podbor = (function () { if (data.error) { result.innerHTML = `
${_esc(summary)}
` : ""} +| Модель | Цена от | Отзывов | ★ |
|---|