:root{--bg-0: #f3efe7;--bg-1: #e7ecf4;--panel: rgba(255, 255, 255, .82);--panel-strong: #ffffff;--text: #142033;--muted: #64748b;--accent: #1f6feb;--accent-2: #16a34a;--danger: #e24a43;--ring: rgba(31, 111, 235, .14);--shadow-lg: 0 24px 60px rgba(15, 23, 42, .16);--shadow-md: 0 10px 24px rgba(15, 23, 42, .1);--radius-xl: 28px;--radius-lg: 22px;--radius-md: 16px}html{overflow-x:hidden;overscroll-behavior-x:none;width:100%}body{font-family:Gill Sans,Trebuchet MS,Segoe UI,sans-serif;line-height:1.6;margin:0;padding:0;color:var(--text);background:radial-gradient(circle at top left,rgba(31,111,235,.14),transparent 30%),radial-gradient(circle at top right,rgba(22,163,74,.11),transparent 26%),linear-gradient(180deg,var(--bg-0),var(--bg-1));min-height:100vh;overflow-x:hidden;overscroll-behavior-x:none;width:100%}.container{max-width:600px;margin:0 auto;padding:.75rem .75rem 1.25rem}h1{color:#2c3e50;text-align:center;font-size:2.5rem;margin-bottom:.75rem;margin-top:.5rem}.greeting{text-align:center;margin-bottom:1.5rem;font-size:1.2rem;min-height:30px}.user-greeting{color:#3498db}.telegram-invite{color:#7f8c8d}.telegram-invite a{color:#2980b9;text-decoration:none;font-weight:700}.telegram-invite a:hover{text-decoration:underline}.username{font-weight:700}.instructions{background-color:#fff;border-radius:10px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 10px #0000000d}.instructions h2{color:#3498db;margin-top:0}.instructions ul{padding-left:1.5rem}.instructions li{margin-bottom:.5rem}.swipe-card{position:relative;width:100%;max-width:440px;margin:0 auto}.word-card{background:linear-gradient(180deg,#fffffff5,#ffffffe0);height:auto;min-height:520px;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.75);display:flex;align-items:stretch;justify-content:stretch;position:relative;transition:transform .5s ease,opacity .5s ease,box-shadow .3s ease;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);touch-action:pan-y}.word-card:active{cursor:grabbing}.word-content{text-align:left;padding:.9rem;width:100%;display:flex;flex-direction:column;gap:.8rem}.car-image{width:100%;height:320px;overflow:hidden;position:relative;border-radius:22px;background:linear-gradient(135deg,#0f172a0a,#1f6feb0d);box-shadow:inset 0 0 0 1px #0f172a0a}.car-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease,filter .3s ease;display:block;filter:saturate(1.02) contrast(1.02)}.car-image-loading{width:100%;height:100%;position:relative;overflow:hidden}.car-image-loading-pulse{position:absolute;top:0;left:-60%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(31,111,235,.14),transparent);animation:car-image-shimmer 1.3s ease-in-out infinite}@keyframes car-image-shimmer{0%{left:-60%}to{left:100%}}.image-nav{position:absolute;top:0;width:40%;height:100%;display:flex;align-items:center;justify-content:center;color:#fffc;opacity:0;transition:opacity .3s;cursor:pointer;z-index:2}.image-nav i{background-color:#0f172a85;border-radius:50%;padding:12px;font-size:14px;box-shadow:0 8px 20px #0f172a40}.car-image:hover .image-nav{opacity:1}.left-nav{left:0;text-align:left;padding-left:10px;background:linear-gradient(to right,rgba(0,0,0,.3),transparent)}.right-nav{right:0;text-align:right;padding-right:10px;background:linear-gradient(to left,rgba(0,0,0,.3),transparent)}.image-counter{position:absolute;bottom:12px;right:12px;background-color:#0f172aa6;color:#fff;padding:5px 10px;border-radius:999px;font-size:11px;letter-spacing:.03em;display:none}#candidate-word{font-size:1.55rem;margin:0;color:var(--text);line-height:1.25;font-weight:700;letter-spacing:-.02em}#candidate-word a{color:inherit;text-decoration:none;border-bottom:none;-webkit-tap-highlight-color:transparent}#candidate-word a:hover{color:inherit;text-decoration:none}.car-details{display:grid;gap:.45rem;text-align:left;padding:0;margin-top:-.1rem}.car-price{display:inline-flex;align-items:center;width:fit-content;font-size:1.45rem;font-weight:800;color:var(--accent);margin:0;padding:.2rem .85rem;border-radius:999px;background:#1f6feb17}.car-specs{font-size:.93rem;color:var(--muted);margin:0;line-height:1.5}.car-location{font-size:.92rem;color:var(--muted);margin:0;line-height:1.5}.word-id{color:#94a3b8;font-size:.82rem;margin:0;align-self:flex-start;letter-spacing:.03em;text-transform:uppercase}.swipe-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.25rem}.swipe-btn{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;font-size:1.35rem;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-md)}.swipe-btn:hover{transform:translateY(-2px) scale(1.04)}.dislike{background:linear-gradient(180deg,#ef6b61,var(--danger));color:#fff}.dislike:hover{background:linear-gradient(180deg,#f06e66,#c83830)}.like{background:linear-gradient(180deg,#2dd17c,var(--accent-2));color:#fff}.like:hover{background:linear-gradient(180deg,#30d982,#149447)}.share{background:linear-gradient(180deg,#4aa6ea,var(--accent));color:#fff}.share:hover{background:linear-gradient(180deg,#4aabf2,#155ed4)}.favorites{background:linear-gradient(180deg,#f8d95c,#e8b700);color:#1f2937}.favorites:hover{background:linear-gradient(180deg,#fbe06f,#d9a900)}.feedback-message{text-align:center;margin-top:1rem;min-height:24px;font-size:1rem;color:var(--muted)}.telegram-invite-banner{position:relative;margin-top:1rem;padding:1rem 2.5rem 1rem 1.25rem;border-radius:var(--radius-xl);background:linear-gradient(135deg,#1f6feb14,#1f6feb08);box-shadow:inset 0 0 0 1px #1f6feb1f;text-align:center}.telegram-invite-banner p{margin:0 0 .75rem;color:var(--muted);font-size:.95rem}.telegram-invite-link{display:inline-block;padding:.6rem 1.4rem;border-radius:999px;background:linear-gradient(180deg,#4aa6ea,var(--accent));color:#fff;font-weight:600;text-decoration:none;box-shadow:0 8px 20px #1f6feb40}.telegram-invite-close{position:absolute;top:.5rem;right:.75rem;border:none;background:none;color:var(--muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:.25rem}.liked{color:#2ecc71;font-weight:700}.disliked{color:#e74c3c;font-weight:700}.shared{color:#3498db;font-weight:700}.flash-red{animation:flashRed .3s ease}.flash-green{animation:flashGreen .3s ease}@keyframes flashRed{0%{background-color:#fff}50%{background-color:#e74c3cb3}to{background-color:#fff}}@keyframes flashGreen{0%{background-color:#fff}50%{background-color:#2ecc71b3}to{background-color:#fff}}.swiped-left{transform:translate(-150%) rotate(-20deg);opacity:0}.swiped-right{transform:translate(150%) rotate(20deg);opacity:0}.filter-controls{margin-bottom:20px;width:100%;max-width:600px;position:relative}.toggle-filters-btn{width:100%;max-width:440px;height:auto;padding:12px 0;margin:0 auto 15px;display:flex;justify-content:center;align-items:center;gap:10px;border:none;border-radius:14px;cursor:pointer;font-size:1rem;font-weight:700;transition:transform .2s ease,background-color .3s ease;background:linear-gradient(180deg,#4aa6ea,var(--accent));color:#fff;box-shadow:var(--shadow-md)}.toggle-filters-btn:hover{transform:translateY(-1px);background:linear-gradient(180deg,#4caef3,#1458c9)}.language-toggle-btn{display:block;margin:0 auto 10px;padding:4px 14px;border:none;border-radius:999px;cursor:pointer;font-size:.8rem;font-weight:700;letter-spacing:.02em;background:#1f6feb1a;color:var(--accent);transition:background-color .2s ease}.language-toggle-btn:hover{background:#1f6feb2e}.toggle-filters-btn i{font-size:1.2rem}.filters-panel{background:#ffffffd1;border:1px solid rgba(255,255,255,.9);border-radius:22px;padding:18px 16px 16px;margin-bottom:15px;display:none;box-shadow:var(--shadow-md);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.filters-panel.show{display:block;animation:fadeIn .3s ease-in-out}.filter-group{margin-bottom:16px}.filter-group label{display:block;margin-bottom:8px;font-weight:700;font-size:14px;color:var(--text)}.price-range,.year-range{display:flex;align-items:center;gap:10px}.filter-select{padding:11px 12px;border:1px solid rgba(148,163,184,.35);border-radius:14px;background-color:#ffffffeb;flex:1;color:var(--text);box-shadow:inset 0 1px 2px #0f172a08}.excluded-fuels{display:flex;gap:18px;margin-top:6px;flex-wrap:wrap}.checkbox-container{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text);font-weight:600}.filter-actions{display:flex;gap:10px;margin-top:15px}.apply-filters-btn,.reset-filters-btn{padding:10px 16px;border:none;border-radius:14px;cursor:pointer;font-size:14px;font-weight:700;transition:transform .2s ease,background-color .3s ease,box-shadow .2s ease}.apply-filters-btn{background:linear-gradient(180deg,#2dd17c,var(--accent-2));color:#fff;box-shadow:0 10px 20px #16a34a2e}.apply-filters-btn:hover{transform:translateY(-1px);background:linear-gradient(180deg,#33d980,#158f45)}.reset-filters-btn{background:#ffffffe6;border:1px solid rgba(148,163,184,.22);color:var(--text)}.reset-filters-btn:hover{transform:translateY(-1px);background:#fff}.filter-error{color:var(--danger);font-size:12px;margin-top:5px;display:none}.filter-error.show{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.container{padding:.8rem .65rem 1rem}#candidate-word{font-size:1.22rem}.word-card{min-height:490px;border-radius:24px}.car-image{height:240px}.swipe-btn{width:52px;height:52px}.filters-panel{padding:16px 12px 14px;border-radius:20px}.price-range,.year-range{gap:8px}.filter-select{padding:10px 11px}.word-content{padding:.8rem}.swipe-actions{gap:.8rem}}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background:#0f172a94;opacity:0;transition:opacity .3s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.modal.show{display:block;opacity:1}.modal-content{background:linear-gradient(180deg,#fffffff7,#f8fafcf2);margin:8% auto;padding:0;border-radius:28px;box-shadow:0 28px 70px #0f172a3d;border:1px solid rgba(255,255,255,.75);width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;animation:modalSlideIn .4s ease}@keyframes modalSlideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px 16px;border-bottom:1px solid rgba(148,163,184,.18)}.modal-header h2{margin:0;color:#0f172a;font-size:1.35rem;letter-spacing:-.02em}.close-modal{color:#94a3b8;font-size:28px;font-weight:700;cursor:pointer;transition:color .2s,transform .2s}.close-modal:hover{color:#0f172a;transform:scale(1.06)}.modal-body{padding:20px 22px 22px;overflow-y:auto;flex:1;display:flex;flex-direction:column}.liked-vehicles-container{flex:1;margin-bottom:20px}.vehicle-card{display:flex;margin-bottom:14px;border-radius:20px;box-shadow:0 10px 24px #0f172a1a;overflow:hidden;transition:transform .2s,box-shadow .2s;background:#fffffff5;border:1px solid rgba(148,163,184,.14)}.vehicle-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #0f172a24}.vehicle-card.selectable{cursor:pointer}.vehicle-image{width:132px;height:100px;background-size:cover;background-position:center;background-color:#e5e7eb}.vehicle-details{flex:1;padding:12px 14px}.vehicle-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px}.vehicle-title{margin:0;font-size:15px;font-weight:700;color:#0f172a;flex:1}.remove-vehicle-btn{background:linear-gradient(180deg,#f36e67,#df5149);color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:17px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,box-shadow .2s;padding:0;margin-left:6px;box-shadow:0 8px 18px #df51493d}.remove-vehicle-btn:hover{transform:scale(1.08)}.vehicle-card.removing{transform:translate(100%);opacity:0;transition:transform .3s ease,opacity .3s ease}.vehicle-title{margin:0 0 6px;font-size:15px;font-weight:700;color:#0f172a;max-width:90%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.vehicle-price{color:#1f6feb;font-weight:800;margin:0 0 5px}.vehicle-specs{color:#64748b;font-size:13px;margin:0}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid rgba(148,163,184,.18)}.pagination-btn{background:linear-gradient(180deg,#4aa6ea,#1f6feb);color:#fff;border:none;padding:9px 15px;border-radius:14px;cursor:pointer;font-size:14px;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 18px #1f6feb2e}.pagination-btn:hover{transform:translateY(-1px)}.pagination-btn:disabled{background:#cbd5e1;cursor:not-allowed;box-shadow:none}#page-info{font-size:14px;color:#64748b;font-weight:600}.loading-indicator{text-align:center;padding:20px;color:#64748b}.no-favorites{text-align:center;padding:30px;color:#64748b;font-style:italic}@media (max-width: 480px){.modal-content{margin:5% auto;width:95%;border-radius:22px}.vehicle-image{width:98px;height:82px}.pagination-btn{padding:6px 10px;font-size:12px}}
