:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--tg-theme-text-color, #17202a);background:var(--tg-theme-bg-color, #f4f6f8);font-synthesis:none;--accent: var(--tg-theme-button-color, #2f6fed);--accent-text: var(--tg-theme-button-text-color, #fff);--muted: var(--tg-theme-hint-color, #72808f);--surface: var(--tg-theme-secondary-bg-color, #fff);--line: color-mix(in srgb, var(--muted) 17%, transparent);--nav-height: 58px;--content-width: 720px}*{box-sizing:border-box}html{background:var(--tg-theme-bg-color, #f4f6f8);overflow-x:hidden}body{margin:0;min-width:280px;min-height:100vh;background:var(--tg-theme-bg-color, #f4f6f8);overflow-x:hidden}button,input,select{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation}.app{width:100%;max-width:var(--content-width);min-height:var(--tg-viewport-stable-height, 100vh);margin:0 auto;padding-bottom:calc(var(--nav-height) + 16px + env(safe-area-inset-bottom))}.hero{position:sticky;top:0;z-index:4;padding:calc(16px + env(safe-area-inset-top)) 14px 11px;border-bottom:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 12%,var(--surface)),var(--surface));transition:padding .22s ease,box-shadow .22s ease}.hero.compact{padding-top:calc(7px + env(safe-area-inset-top));padding-bottom:7px;box-shadow:0 5px 18px #10243a0f}.hero-copy{max-height:70px;opacity:1;overflow:hidden;transition:max-height .22s ease,opacity .16s ease}.hero.compact .hero-copy{max-height:0;opacity:0}.eyebrow{margin:0 0 4px;color:var(--accent);font-size:9px;font-weight:850;letter-spacing:.17em}.hero h1{margin:0 0 11px;font-size:clamp(21px,5.5vw,28px);line-height:1.08}.search{display:flex;align-items:center;gap:8px;min-height:43px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--muted) 23%,transparent);border-radius:13px;background:color-mix(in srgb,var(--tg-theme-bg-color, #f4f6f8) 88%,transparent);transition:min-height .22s ease,border-radius .22s ease}.hero.compact .search{min-height:38px;padding-block:6px;border-radius:11px}.search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:inherit;font-size:14px}.search-clear{flex:0 0 28px;height:28px;padding:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);font-size:20px;line-height:1}.feed{padding:10px 12px 24px}.categories{display:flex;gap:6px;margin:0 -12px 12px;padding:0 12px 2px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.categories button,.chip{flex:0 0 auto;white-space:nowrap;border:1px solid color-mix(in srgb,var(--muted) 23%,transparent);border-radius:999px;background:var(--surface)}.categories button{min-height:34px;padding:7px 11px;font-size:12px}.categories button.active,.chip.selected{border-color:var(--accent);background:var(--accent);color:var(--accent-text)}.feed-head,.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 9px}.feed-head h2,.section-title h1{margin:0;font-size:17px}.filter-shortcut,.text-button{padding:5px 0;border:0;background:transparent;color:var(--accent);font-size:13px;font-weight:750}.card{margin-bottom:8px;padding:12px;border:1px solid color-mix(in srgb,var(--muted) 15%,transparent);border-radius:15px;background:var(--surface);box-shadow:0 4px 16px #10243a0b;cursor:pointer}.card-top,.card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.kind{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e5f6eb;color:#286040;font-size:10px;font-weight:780}.kind.one_off{background:#fff0d9;color:#874c11}.heart,.back{border:0;background:transparent;color:var(--muted)}.heart{min-width:34px;min-height:32px;padding:0 4px;font-size:23px;line-height:1}.back{min-width:36px;min-height:36px;padding:0;font-size:24px}.heart.active{color:#f5a623}.card h2{display:-webkit-box;margin:7px 0 2px;overflow:hidden;font-size:16px;line-height:1.22;-webkit-box-orient:vertical;-webkit-line-clamp:2}.company{margin:0 0 5px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.budget{margin:5px 0;color:var(--accent);font-size:14px;font-weight:820}.preview{display:-webkit-box;margin:5px 0;overflow:hidden;color:color-mix(in srgb,currentColor 78%,var(--muted));font-size:12.5px;line-height:1.38;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fit{margin:7px 0;color:color-mix(in srgb,currentColor 88%,var(--muted));font-size:12.5px;line-height:1.4}.meta{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.meta span{max-width:100%;overflow:hidden;padding:4px 7px;border-radius:7px;background:color-mix(in srgb,var(--muted) 9%,transparent);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.card-foot{min-width:0;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);font-size:10px}.card-foot span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-foot b{flex:0 0 auto;color:var(--accent)}.bottom{position:fixed;z-index:8;bottom:0;left:50%;display:grid;grid-template-columns:repeat(3,1fr);width:min(var(--content-width),100%);min-height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding:5px 6px calc(5px + env(safe-area-inset-bottom));transform:translate(-50%);border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom button{min-width:0;padding:2px;border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:680}.bottom span{display:block;margin-bottom:1px;font-size:18px;line-height:1.1}.bottom button.active{color:var(--accent)}.state,.end{padding:32px 18px;text-align:center;color:var(--muted)}.state p{margin:8px 0 0}.state button{margin-top:10px;padding:9px 16px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-text)}.spinner{width:24px;height:24px;margin:0 auto 12px;border:3px solid color-mix(in srgb,var(--muted) 20%,transparent);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.filter-page{min-height:calc(var(--tg-viewport-stable-height, 100vh) - 60px);padding-bottom:calc(var(--nav-height) + 76px + env(safe-area-inset-bottom))}.filters-view{display:grid;gap:15px;padding:13px 14px 24px}.filters-view label,fieldset{display:grid;gap:7px;margin:0;padding:0;border:0;font-size:13px;font-weight:720}.filters-view legend{margin-bottom:1px;padding:0}.field-hint{margin:-3px 0 1px;color:var(--muted);font-size:11px;font-weight:500}.filters-view input:not([type=checkbox]):not([type=range]),.filters-view select{width:100%;min-width:0;min-height:42px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--muted) 25%,transparent);border-radius:11px;outline:0;background:var(--surface);color:inherit}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.switch-row{display:flex!important;align-items:center;justify-content:space-between;gap:16px}.switch-row input{width:22px;height:22px;accent-color:var(--accent)}.range-label{display:flex;justify-content:space-between;gap:12px}.range-label b{color:var(--accent)}.filters-view input[type=range]{width:100%;accent-color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:7px 10px;font-size:11.5px}.filter-apply-bar{position:fixed;z-index:7;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));left:50%;width:min(var(--content-width),100%);padding:8px 12px;transform:translate(-50%);border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.primary,.secondary{min-height:44px;padding:11px 16px;border:0;border-radius:12px;font-weight:800}.primary{background:var(--accent);color:var(--accent-text)}.secondary{background:color-mix(in srgb,var(--muted) 12%,transparent)}.apply{width:100%}.detail{width:100%;max-width:var(--content-width);min-height:var(--tg-viewport-stable-height, 100vh);margin:0 auto;padding-bottom:calc(68px + env(safe-area-inset-bottom));background:var(--tg-theme-bg-color, #f4f6f8)}.detail header{position:sticky;top:0;z-index:4;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;padding:calc(7px + env(safe-area-inset-top)) 10px 7px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.detail header>span{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.detail main{padding:18px 15px}.detail h1{margin:10px 0 5px;font-size:clamp(22px,6vw,26px);line-height:1.16}.detail-budget{margin:10px 0;color:var(--accent);font-size:18px;font-weight:850}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:15px 0}.detail-grid span{min-width:0;overflow:hidden;padding:9px;border-radius:10px;background:var(--surface);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.description{overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px;line-height:1.55}.detail footer{position:fixed;z-index:6;bottom:0;left:50%;display:grid;grid-template-columns:auto 1fr;gap:8px;width:min(var(--content-width),100%);padding:9px 12px calc(9px + env(safe-area-inset-bottom));transform:translate(-50%);border-top:1px solid var(--line);background:var(--surface)}@media(min-width:721px){body{background:color-mix(in srgb,var(--tg-theme-bg-color, #f4f6f8) 92%,#26364a)}.app,.detail{border-inline:1px solid var(--line);box-shadow:0 0 28px #10243a0f}.feed{padding-inline:16px}.categories{margin-inline:-16px;padding-inline:16px}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: var(--tg-theme-secondary-bg-color, #18212b);color:var(--tg-theme-text-color, #f2f4f6);background:var(--tg-theme-bg-color, #101820)}.card{box-shadow:none}.kind{background:#173b2a;color:#9ae0b5}.kind.one_off{background:#432e18;color:#ffd098}}@media(max-width:370px){.hero{padding-inline:10px}.feed,.filters-view{padding-inline:9px}.categories{margin-inline:-9px;padding-inline:9px}.card{padding:11px}.card-foot{align-items:flex-start;flex-direction:column;gap:3px}.detail-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
