| 84 |
84 |
.hero h1 .hl { background: var(--lime); color: #fff; padding: 0 10px; border-radius: 8px; display: inline-block; transform: rotate(-1deg); } |
| 85 |
85 |
.hero p.lede { color: var(--ink-2); font-size: 16.5px; max-width: 680px; margin: 20px 0 0; } |
| 86 |
86 |
|
| 87 |
|
−/* — CTA du héro : accès direct aux résultats / à la carte — */ |
| 88 |
|
−.hero-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; } |
| 89 |
|
−.btn-lg { min-height: 54px; padding: 14px 26px; font-size: 15px; border-radius: 10px; } |
| 90 |
|
−.btn-lg svg { flex: none; } |
| 91 |
|
−.hero-cta .btn-primary { box-shadow: 5px 5px 0 var(--lime); } |
| 92 |
|
−.hero-cta .btn-primary:hover { transform: translate(-2px, -2px); box-shadow: 7px 7px 0 var(--lime); background: var(--ink); } |
| 93 |
|
−.hero-cta .btn-primary:active { transform: translate(2px, 2px); } |
| 94 |
87 |
@media (max-width: 640px) { |
| 95 |
88 |
.hero::before { width: 320px; height: 260px; top: -30px; right: -90px; } |
| 96 |
|
− .hero-cta { gap: 10px; } |
| 97 |
|
− .hero-cta .btn { flex: 1 1 45%; } |
| 98 |
89 |
} |
| 99 |
90 |
|
| 100 |
91 |
.stat-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; } |
| 1287 |
1278 |
.taux-src-ok::before { background: var(--green, #2f9e44); } |
| 1288 |
1279 |
.taux-src-warning::before { background: #e8a000; } |
| 1289 |
1280 |
.taux-src-error::before { background: var(--accent-deep); } |
|
1281 |
+ |
|
1282 |
+/* ============================================================================= |
|
1283 |
+ REFONTE ÉDITORIALE v2 (2026-08-25) — accueil « produit premium » |
|
1284 |
+ Personnalité Immo-Ka : architecturale et financière — composition |
|
1285 |
+ typographique majuscule plein/outline décalée, colonne de données mono |
|
1286 |
+ façon terminal, cerise en couleur de SIGNAL (jamais en aplat décoratif). |
|
1287 |
+ Primitives locales : rayons 0/6/10/18, durées 150/240/350 ms. |
|
1288 |
+ Couche posée en FIN de fichier : elle a le dernier mot sur la cascade. |
|
1289 |
+============================================================================= */ |
|
1290 |
+:root { |
|
1291 |
+ --r-0: 0px; --r-1: 6px; --r-2: 10px; --r-3: 18px; |
|
1292 |
+ --dur-1: 150ms; --dur-2: 240ms; --dur-3: 350ms; |
|
1293 |
+ --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1); |
|
1294 |
+ --hairline: rgba(20, 24, 20, 0.14); |
|
1295 |
+ --hairline-strong: rgba(20, 24, 20, 0.6); |
|
1296 |
+} |
|
1297 |
+ |
|
1298 |
+/* ---- Héro : composition typographique + colonne de données ---- */ |
|
1299 |
+.hero-wrap { display: grid; grid-template-columns: 1fr auto; gap: 24px 56px; align-items: end; } |
|
1300 |
+.hero h1.hero-display { |
|
1301 |
+ display: flex; flex-direction: column; |
|
1302 |
+ font-size: clamp(40px, 6.8vw, 92px); line-height: 0.96; |
|
1303 |
+ text-transform: uppercase; letter-spacing: -0.04em; |
|
1304 |
+ max-width: none; margin-top: 16px; |
|
1305 |
+} |
|
1306 |
+.hero-display .hd-l1, .hero-display .hd-l2, |
|
1307 |
+.hero-display .hd-l3, .hero-display .hd-l4 { display: block; } |
|
1308 |
+.hero-display .hd-l2 { color: transparent; -webkit-text-stroke: 2.5px var(--ink); } |
|
1309 |
+.hero-display .hd-l3 { margin-left: clamp(24px, 6vw, 110px); } |
|
1310 |
+.hero-display .hd-l4 { |
|
1311 |
+ font-size: 0.5em; letter-spacing: -0.02em; margin-top: 0.35em; |
|
1312 |
+ margin-left: clamp(2px, 1vw, 8px); |
|
1313 |
+} |
|
1314 |
+.hero-display .signal { |
|
1315 |
+ font-style: normal; color: var(--lime); position: relative; |
|
1316 |
+ border-bottom: 4px solid var(--lime); padding-bottom: 1px; |
|
1317 |
+} |
|
1318 |
+.hero p.lede { font-size: 16px; max-width: 560px; } |
|
1319 |
+.hero::before { opacity: 0.7; } |
|
1320 |
+.hero::after { opacity: 0.5; } |
|
1321 |
+ |
|
1322 |
+/* colonne « terminal » : les chiffres du marché comme élément graphique */ |
|
1323 |
+.hero-data { |
|
1324 |
+ display: flex; flex-direction: column; gap: 18px; |
|
1325 |
+ border-left: 1px solid var(--hairline-strong); padding-left: 28px; |
|
1326 |
+ min-width: 190px; |
|
1327 |
+} |
|
1328 |
+.hd-row b { |
|
1329 |
+ display: block; font-family: var(--font-display); font-weight: 700; |
|
1330 |
+ font-size: clamp(20px, 2vw, 27px); letter-spacing: -0.03em; color: var(--ink); |
|
1331 |
+ font-variant-numeric: tabular-nums; line-height: 1.1; |
|
1332 |
+} |
|
1333 |
+.hd-row span { |
|
1334 |
+ font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; |
|
1335 |
+ text-transform: uppercase; letter-spacing: 0.14em; color: var(--ink-3); |
|
1336 |
+} |
|
1337 |
+@media (max-width: 900px) { |
|
1338 |
+ .hero-wrap { grid-template-columns: 1fr; align-items: start; } |
|
1339 |
+ .hero-data { |
|
1340 |
+ flex-direction: row; flex-wrap: wrap; gap: 16px 28px; |
|
1341 |
+ border-left: 0; border-top: 1px solid var(--hairline); |
|
1342 |
+ padding: 16px 0 0; min-width: 0; margin-top: 6px; |
|
1343 |
+ } |
|
1344 |
+} |
|
1345 |
+ |
|
1346 |
+/* ---- Ligne de données vivantes (mono + filets) ---- */ |
|
1347 |
+.live-line { |
|
1348 |
+ display: flex; flex-wrap: wrap; align-items: baseline; |
|
1349 |
+ margin-top: 30px; font-family: var(--font-mono); font-size: 12px; |
|
1350 |
+ color: var(--ink-2); letter-spacing: 0.02em; row-gap: 10px; |
|
1351 |
+} |
|
1352 |
+.live-flag { |
|
1353 |
+ display: inline-flex; align-items: center; gap: 7px; |
|
1354 |
+ font-weight: 700; font-size: 10.5px; letter-spacing: 0.18em; |
|
1355 |
+ text-transform: uppercase; color: var(--accent-deep); |
|
1356 |
+ padding-right: 14px; margin-right: 14px; border-right: 1px solid var(--hairline-strong); |
|
1357 |
+} |
|
1358 |
+.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); animation: pulse 2.4s ease infinite; } |
|
1359 |
+.live-item { padding-right: 14px; margin-right: 14px; border-right: 1px solid var(--hairline); } |
|
1360 |
+.live-item:last-child { border-right: 0; padding-right: 0; margin-right: 0; } |
|
1361 |
+.live-item b { color: var(--ink); font-weight: 700; font-variant-numeric: tabular-nums; } |
|
1362 |
+@media (max-width: 640px) { |
|
1363 |
+ .live-line { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; |
|
1364 |
+ white-space: nowrap; margin-right: -16px; padding-right: 16px; } |
|
1365 |
+ .live-line::-webkit-scrollbar { display: none; } |
|
1366 |
+} |
|
1367 |
+ |
|
1368 |
+/* ---- Recherche au cœur : grand champ souligné + critères en filets ---- */ |
|
1369 |
+.search-zone { margin: 42px 0 0; } |
|
1370 |
+.q-big { |
|
1371 |
+ display: flex; align-items: center; gap: 14px; |
|
1372 |
+ border: 0; border-bottom: 2px solid var(--ink); border-radius: 0; |
|
1373 |
+ background: transparent; padding: 4px 2px 14px; color: var(--ink-3); |
|
1374 |
+ transition: border-color var(--dur-2) var(--ease-out), color var(--dur-2) ease; |
|
1375 |
+} |
|
1376 |
+.q-big:focus-within { border-color: var(--lime); color: var(--accent-deep); } |
|
1377 |
+.q-big svg { flex: none; } |
|
1378 |
+.q-big input { |
|
1379 |
+ flex: 1; min-width: 0; border: 0; background: none; outline: none; padding: 0; |
|
1380 |
+ font-family: var(--font-display); font-weight: 600; |
|
1381 |
+ font-size: clamp(19px, 2.8vw, 28px); letter-spacing: -0.02em; color: var(--ink); |
|
1382 |
+} |
|
1383 |
+.q-big input::placeholder { color: var(--ink-3); font-weight: 500; } |
|
1384 |
+.crit-line { display: flex; align-items: stretch; flex-wrap: wrap; } |
|
1385 |
+.crit { |
|
1386 |
+ display: flex; flex-direction: column; justify-content: center; gap: 1px; |
|
1387 |
+ padding: 12px 26px 12px 0; margin-right: 26px; |
|
1388 |
+ border-right: 1px solid var(--hairline); min-width: 0; cursor: pointer; |
|
1389 |
+} |
|
1390 |
+.crit > span { |
|
1391 |
+ font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; |
|
1392 |
+ text-transform: uppercase; letter-spacing: 0.14em; color: var(--ink-3); |
|
1393 |
+} |
|
1394 |
+.crit select { |
|
1395 |
+ border: 0; background: transparent; outline: none; cursor: pointer; |
|
1396 |
+ font-family: var(--font-display); font-weight: 700; font-size: 15.5px; |
|
1397 |
+ color: var(--ink); appearance: none; -webkit-appearance: none; |
|
1398 |
+ padding: 2px 18px 2px 0; min-width: 0; max-width: 190px; text-overflow: ellipsis; |
|
1399 |
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M0 0l4.5 5L9 0z' fill='%238b928c'/%3E%3C/svg%3E"); |
|
1400 |
+ background-repeat: no-repeat; background-position: right center; |
|
1401 |
+} |
|
1402 |
+.crit:hover select { color: var(--accent-deep); } |
|
1403 |
+.crit .range-pair select { max-width: 92px; } |
|
1404 |
+.crit-more { |
|
1405 |
+ display: inline-flex; align-items: center; gap: 9px; align-self: center; |
|
1406 |
+ border: 0; background: none; padding: 12px 0; cursor: pointer; |
|
1407 |
+ font-family: var(--font-display); font-weight: 700; font-size: 14.5px; color: var(--ink); |
|
1408 |
+ transition: color var(--dur-1) ease; |
|
1409 |
+} |
|
1410 |
+.crit-more:hover, .crit-more.on { color: var(--accent-deep); } |
|
1411 |
+.crit-badge, .rb-badge { |
|
1412 |
+ display: inline-grid; place-items: center; min-width: 19px; height: 19px; padding: 0 5px; |
|
1413 |
+ border-radius: 999px; background: var(--lime); color: #fff; |
|
1414 |
+ font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; |
|
1415 |
+} |
|
1416 |
+.search-zone .f-adv { border-top: 1px solid var(--hairline); margin-top: 2px; padding-top: 18px; } |
|
1417 |
+.search-zone .seg button { |
|
1418 |
+ border: 1px solid var(--hairline-strong); background: transparent; color: var(--ink-2); |
|
1419 |
+ min-height: 38px; font-weight: 600; margin-left: -1px; |
|
1420 |
+} |
|
1421 |
+.search-zone .seg button:first-child { border-radius: var(--r-1) 0 0 var(--r-1); } |
|
1422 |
+.search-zone .seg button:last-child { border-radius: 0 var(--r-1) var(--r-1) 0; } |
|
1423 |
+.search-zone .seg button:hover { background: var(--lime-soft); color: var(--accent-deep); } |
|
1424 |
+.search-zone .seg button.on { background: var(--ink); border-color: var(--ink); color: var(--paper); box-shadow: none; } |
|
1425 |
+.search-zone .f-native { border: 1px solid var(--hairline-strong); background: transparent; } |
|
1426 |
+ |
|
1427 |
+/* résumé mobile des critères — remplace le FAB (voir media 640 plus bas) */ |
|
1428 |
+.crit-summary { display: none; } |
|
1429 |
+ |
|
1430 |
+/* ---- Barre de résultats sticky : N propriétés · tri · Liste|Carte ---- */ |
|
1431 |
+.results-bar { |
|
1432 |
+ position: sticky; top: 64px; z-index: var(--z-sticky, 300); |
|
1433 |
+ display: flex; align-items: center; gap: 16px; |
|
1434 |
+ margin: 30px 0 22px; padding: 12px 0 11px; |
|
1435 |
+ border-bottom: 1px solid var(--hairline-strong); |
|
1436 |
+ background: color-mix(in srgb, var(--paper) 86%, transparent); |
|
1437 |
+ backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); |
|
1438 |
+} |
|
1439 |
+@supports not (background: color-mix(in srgb, red 50%, blue)) { |
|
1440 |
+ .results-bar { background: rgba(245, 243, 238, 0.92); } |
|
1441 |
+} |
|
1442 |
+.rb-count { margin: 0; font-size: clamp(16px, 2vw, 20px); letter-spacing: -0.02em; color: var(--ink); text-transform: none; } |
|
1443 |
+.rb-count b { font-variant-numeric: tabular-nums; } |
|
1444 |
+.rb-tools { margin-left: auto; display: flex; align-items: center; gap: 20px; } |
|
1445 |
+.rb-sort select { |
|
1446 |
+ border: 0; background: transparent; outline: none; cursor: pointer; |
|
1447 |
+ font-family: var(--font-mono); font-size: 11.5px; font-weight: 700; |
|
1448 |
+ text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-2); |
|
1449 |
+ appearance: none; -webkit-appearance: none; padding: 8px 16px 8px 0; |
|
1450 |
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M0 0l4.5 5L9 0z' fill='%238b928c'/%3E%3C/svg%3E"); |
|
1451 |
+ background-repeat: no-repeat; background-position: right center; |
|
1452 |
+} |
|
1453 |
+.rb-sort select:hover { color: var(--ink); } |
|
1454 |
+.rb-tabs { display: flex; gap: 18px; } |
|
1455 |
+.rb-tab { |
|
1456 |
+ position: relative; display: inline-flex; align-items: center; gap: 6px; |
|
1457 |
+ border: 0; background: none; padding: 8px 0; cursor: pointer; |
|
1458 |
+ font-family: var(--font-display); font-weight: 700; font-size: 13.5px; color: var(--ink-3); |
|
1459 |
+ transition: color var(--dur-1) ease; |
|
1460 |
+} |
|
1461 |
+.rb-tab:hover, .rb-tab.on { color: var(--ink); } |
|
1462 |
+.rb-tab::after { |
|
1463 |
+ content: ""; position: absolute; left: 0; right: 0; bottom: -12px; height: 2.5px; |
|
1464 |
+ background: var(--lime); transform: scaleX(0); transform-origin: left; |
|
1465 |
+ transition: transform var(--dur-2) var(--ease-out); |
|
1466 |
+} |
|
1467 |
+.rb-tab.on::after { transform: scaleX(1); } |
|
1468 |
+.rb-filters { |
|
1469 |
+ display: inline-flex; align-items: center; gap: 7px; |
|
1470 |
+ border: 0; background: none; padding: 8px 0; cursor: pointer; |
|
1471 |
+ font-family: var(--font-display); font-weight: 700; font-size: 13.5px; color: var(--ink); |
|
1472 |
+} |
|
1473 |
+.rb-filters:hover { color: var(--accent-deep); } |
|
1474 |
+@media (min-width: 641px) { .rb-filters { display: none; } } |
|
1475 |
+ |
|
1476 |
+/* ---- Transition douce liste ↔ carte ---- */ |
|
1477 |
+.view-pane { animation: pane-in var(--dur-2) var(--ease-out); } |
|
1478 |
+@keyframes pane-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } } |
|
1479 |
+ |
|
1480 |
+/* ---- Chips rapides : plus légères ---- */ |
|
1481 |
+.chip { |
|
1482 |
+ border: 1px solid var(--hairline-strong); background: transparent; |
|
1483 |
+ min-height: 38px; padding: 7px 15px; font-size: 12.5px; box-shadow: none; |
|
1484 |
+} |
|
1485 |
+.chip:hover { transform: none; box-shadow: none; background: var(--lime-soft); color: var(--accent-deep); } |
|
1486 |
+.chip.on { background: var(--ink); border-color: var(--ink); color: var(--paper); box-shadow: none; } |
|
1487 |
+.chips { margin: 20px 0 0; } |
|
1488 |
+ |
|
1489 |
+/* ---- Pastilles actives : discrètes, survol = retrait ---- */ |
|
1490 |
+.pills { margin: 14px 0 0; } |
|
1491 |
+.pills .pill { border: 1px solid var(--hairline-strong); background: transparent; box-shadow: none; padding: 5px 12px; font-size: 12px; } |
|
1492 |
+.pills .pill:hover { background: var(--danger-soft); border-color: var(--danger); color: var(--danger); } |
|
1493 |
+ |
|
1494 |
+/* ---- Fiches éditoriales : l'image domine, plus de boîte ---- */ |
|
1495 |
+.card, .card:hover { background: transparent; border: 0; border-radius: 0; box-shadow: none; transform: none; } |
|
1496 |
+.card-img { border-radius: var(--r-2); aspect-ratio: 4/3; } |
|
1497 |
+.card-img img { transition: transform var(--dur-3) var(--ease-out); } |
|
1498 |
+@media (hover: hover) { |
|
1499 |
+ .card:hover .card-img img { transform: scale(1.025); } |
|
1500 |
+ .card:hover .card-price { color: var(--accent-deep); } |
|
1501 |
+} |
|
1502 |
+.card:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; border-radius: var(--r-2); } |
|
1503 |
+.card-body { padding: 13px 2px 0; gap: 3px; } |
|
1504 |
+.card-price { font-size: 22px; letter-spacing: -0.03em; color: var(--ink); transition: color var(--dur-1) ease; } |
|
1505 |
+.card-title { font-size: 14px; font-weight: 500; color: var(--ink-2); } |
|
1506 |
+.card-meta { font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-3); } |
|
1507 |
+.card-meta .sep { width: 3px; height: 3px; border: 0; border-radius: 50%; background: var(--lime); transform: none; } |
|
1508 |
+.card-specs { font-size: 11.5px; color: var(--ink-2); } |
|
1509 |
+.card-foot { border-top: 0; padding-top: 8px; } |
|
1510 |
+.source-tag { background: none; border: 0; border-radius: 0; padding: 0; color: var(--ink-3); font-size: 10px; letter-spacing: 0.08em; max-width: 62%; } |
|
1511 |
+.avail { font-size: 11px; color: var(--ink-3); } |
|
1512 |
+.badge { border: 0; border-radius: 4px; background: rgba(20, 24, 20, 0.78); color: var(--paper); |
|
1513 |
+ backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); |
|
1514 |
+ font-size: 9.5px; padding: 4px 9px; letter-spacing: 0.08em; } |
|
1515 |
+.badge.type { background: var(--lime); color: #fff; } |
|
1516 |
+.badge.right { background: rgba(20, 24, 20, 0.55); } |
|
1517 |
+/* la liste latérale de la vue carte garde ses fiches synchronisées lisibles */ |
|
1518 |
+.map-card { border-radius: var(--r-2); } |
|
1519 |
+.map-card-sel { outline: 2px solid var(--lime); outline-offset: 3px; border-radius: var(--r-2); } |
|
1520 |
+ |
|
1521 |
+/* ---- Grille à rythme éditorial (accueil) ---- */ |
|
1522 |
+.grid.grid-edito { grid-template-columns: repeat(3, 1fr); gap: 36px 26px; align-items: start; } |
|
1523 |
+.grid-edito > *:nth-child(7n+1) { grid-column: span 2; } |
|
1524 |
+.grid-edito > *:nth-child(7n+1) .card-img, |
|
1525 |
+.grid-edito > .skel:nth-child(7n+1) .sk-img { aspect-ratio: 16/9; } |
|
1526 |
+.grid-edito > *:nth-child(7n+1) .card-price { font-size: 27px; } |
|
1527 |
+.grid-edito > *:nth-child(7n+1) .card-title { font-size: 15px; } |
|
1528 |
+@media (max-width: 980px) { |
|
1529 |
+ .grid.grid-edito { grid-template-columns: 1fr 1fr; gap: 30px 20px; } |
|
1530 |
+} |
|
1531 |
+@media (max-width: 640px) { |
|
1532 |
+ .grid.grid-edito { grid-template-columns: 1fr; gap: 32px; } |
|
1533 |
+ .grid-edito > *:nth-child(7n+1) { grid-column: auto; } |
|
1534 |
+} |
|
1535 |
+@media (prefers-reduced-motion: no-preference) { |
|
1536 |
+ .grid-edito > * { animation: rise 0.5s var(--ease-out) backwards; } |
|
1537 |
+ .grid-edito > *:nth-child(3n+2) { animation-delay: 60ms; } |
|
1538 |
+ .grid-edito > *:nth-child(3n) { animation-delay: 120ms; } |
|
1539 |
+} |
|
1540 |
+@keyframes rise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } } |
|
1541 |
+ |
|
1542 |
+/* ---- Squelettes sans boîte ---- */ |
|
1543 |
+.skel { border: 0; border-radius: 0; background: transparent; } |
|
1544 |
+.skel .sk-img { aspect-ratio: 4/3; border-radius: var(--r-2); } |
|
1545 |
+.skel .sk-line { margin: 12px 2px; } |
|
1546 |
+ |
|
1547 |
+/* ---- Pagination éditoriale : chiffres nus, page courante soulignée ---- */ |
|
1548 |
+.pager { border-top: 1px solid var(--hairline); padding-top: 16px; margin-top: 26px; } |
|
1549 |
+.pager-info { font-family: var(--font-mono); font-size: 11.5px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--ink-3); } |
|
1550 |
+.pager-btn { |
|
1551 |
+ min-width: 34px; min-height: 38px; height: auto; padding: 0 10px; border: 0; border-radius: var(--r-1); |
|
1552 |
+ background: none; color: var(--ink-2); box-shadow: none; |
|
1553 |
+ font-family: var(--font-display); font-size: 13.5px; font-weight: 600; position: relative; |
|
1554 |
+} |
|
1555 |
+.pager-btn:hover:not(:disabled):not(.on) { background: var(--lime-soft); color: var(--accent-deep); transform: none; box-shadow: none; } |
|
1556 |
+.pager-btn.on { background: none; border: 0; color: var(--ink); font-weight: 700; box-shadow: none; } |
|
1557 |
+.pager-btn.on::after { content: ""; position: absolute; left: 9px; right: 9px; bottom: 3px; height: 2.5px; background: var(--lime); } |
|
1558 |
+.pager-btn:disabled { box-shadow: none; } |
|
1559 |
+ |
|
1560 |
+/* ---- Mobile : recherche condensée + feuille de critères premium ---- */ |
|
1561 |
+@media (max-width: 640px) { |
|
1562 |
+ .hero h1.hero-display { font-size: clamp(38px, 11vw, 52px); } |
|
1563 |
+ .results-bar { top: 64px; gap: 10px; flex-wrap: wrap; } |
|
1564 |
+ .rb-tools { gap: 14px; } |
|
1565 |
+ .search-zone { margin: 30px 0 0; } |
|
1566 |
+ .crit-line, .search-zone .f-adv, .search-zone .sheet-apply { display: none; } |
|
1567 |
+ .crit-summary { |
|
1568 |
+ display: flex; align-items: center; gap: 10px; width: 100%; |
|
1569 |
+ border: 0; border-bottom: 1px solid var(--hairline); background: none; |
|
1570 |
+ padding: 14px 2px; margin: 0; cursor: pointer; text-align: left; |
|
1571 |
+ font-family: var(--font-mono); font-size: 12px; color: var(--ink-2); |
|
1572 |
+ } |
|
1573 |
+ .crit-summary svg { flex: none; color: var(--ink); } |
|
1574 |
+ .crit-summary .cs-txt { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } |
|
1575 |
+ .crit-summary .f-chev { margin: 0 2px 0 0; } |
|
1576 |
+ |
|
1577 |
+ .search-zone.open { |
|
1578 |
+ display: flex; flex-direction: column; gap: 12px; |
|
1579 |
+ position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-modal, 900); |
|
1580 |
+ margin: 0; border-radius: var(--r-3) var(--r-3) 0 0; background: var(--surface); |
|
1581 |
+ border: 0; |
|
1582 |
+ max-height: 86dvh; overflow-y: auto; -webkit-overflow-scrolling: touch; |
|
1583 |
+ padding: 10px 18px calc(16px + env(safe-area-inset-bottom)); |
|
1584 |
+ box-shadow: 0 -18px 50px rgba(20, 24, 20, 0.3); |
|
1585 |
+ animation: sheet-up 0.26s var(--ease-out); |
|
1586 |
+ } |
|
1587 |
+ .search-zone.open .sheet-handle { |
|
1588 |
+ display: block; flex: none; width: 40px; height: 4.5px; |
|
1589 |
+ border-radius: 999px; background: var(--line); margin: 0 auto; |
|
1590 |
+ } |
|
1591 |
+ .search-zone.open .sheet-head { |
|
1592 |
+ display: flex; justify-content: space-between; align-items: center; |
|
1593 |
+ font-family: var(--font-display); font-weight: 700; font-size: 17px; |
|
1594 |
+ letter-spacing: -0.01em; color: var(--ink); text-transform: none; |
|
1595 |
+ position: sticky; top: -10px; background: var(--surface); padding: 6px 0 8px; |
|
1596 |
+ border-bottom: 1px solid var(--hairline); z-index: 1; |
|
1597 |
+ } |
|
1598 |
+ .search-zone.open .crit-summary { display: none; } |
|
1599 |
+ .search-zone.open .q-big { padding: 2px 0 10px; } |
|
1600 |
+ .search-zone.open .q-big input { font-size: 17px; } |
|
1601 |
+ .search-zone.open .crit-line { display: flex; flex-direction: column; } |
|
1602 |
+ .search-zone.open .crit { border-right: 0; border-bottom: 1px solid var(--hairline); margin: 0; padding: 10px 0; } |
|
1603 |
+ .search-zone.open .crit select { max-width: none; width: 100%; font-size: 16px; } |
|
1604 |
+ .search-zone.open .crit .range-pair select { width: auto; flex: 1; } |
|
1605 |
+ .search-zone.open .crit-more { display: none; } |
|
1606 |
+ .search-zone.open .f-adv { display: grid; border-top: 0; padding-top: 4px; margin-top: 0; } |
|
1607 |
+ .search-zone.open .sheet-apply { |
|
1608 |
+ display: flex; position: sticky; bottom: 0; z-index: 1; width: 100%; min-height: 50px; |
|
1609 |
+ box-shadow: 0 -14px 18px -12px rgba(20, 24, 20, 0.35); |
|
1610 |
+ } |
|
1611 |
+} |
| 1290 |
1612 |
|