:root{--woopss-accent:#ff8a2a;--woopss-ink:#1d2229;--woopss-muted:#727b86;--woopss-line:#e7e9ec;--woopss-panel:#f6f7f8;--woopss-shadow:0 18px 45px rgba(22,28,35,.08)}
.woopss-projects-shell,.woopss-press-list,.woopss-github-list,.woopss-home{box-sizing:border-box;color:var(--woopss-ink)}
.woopss-projects-shell *,.woopss-press-list *,.woopss-github-list *,.woopss-home *{box-sizing:border-box}

/* Projects: premium two-column layout */
.woopss-projects-shell{display:grid;grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:28px;align-items:start;max-width:1220px;margin:0 auto}
.woopss-projects-nav{position:sticky;top:24px;height:calc(100vh - 48px);padding:10px;border:1px solid rgba(227,230,234,.9);border-radius:24px;background:rgba(248,249,250,.88);box-shadow:0 12px 40px rgba(26,31,37,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden}
.woopss-projects-nav-inner{height:100%;overflow-y:auto;padding:4px;scrollbar-width:thin}
.woopss-project-nav-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px;color:var(--woopss-ink)!important;text-decoration:none!important;transition:background .2s,box-shadow .2s,transform .2s}
.woopss-project-nav-item+ .woopss-project-nav-item{margin-top:3px}.woopss-project-nav-item:hover{background:#fff;transform:translateX(2px)}
.woopss-project-nav-item.is-active{background:#fff;box-shadow:0 8px 24px rgba(24,29,35,.10)}
.woopss-project-nav-item.is-active:before{content:'';width:4px;height:30px;margin-left:-5px;border-radius:4px;background:var(--woopss-accent)}
.woopss-project-nav-item>img{width:44px;height:44px;border-radius:12px;object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.11);flex:0 0 auto}
.woopss-project-nav-copy{min-width:0;display:block}.woopss-project-nav-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 13px/1.25 Helvetica,Arial,sans-serif}
.woopss-project-nav-stores{display:flex;align-items:center;gap:5px;margin-top:6px}.woopss-mini-store{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:6px;color:#fff;font:700 9px/1 Helvetica,Arial,sans-serif;background:#20242a;overflow:hidden}.woopss-mini-store.is-image{padding:2px;border:1px solid rgba(29,34,41,.08);background:#fff;box-shadow:0 2px 6px rgba(24,29,35,.08)}.woopss-mini-store.is-image img{display:block!important;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;object-fit:contain!important;box-shadow:none!important}.woopss-mini-store.is-producthunt{background:#da552f}
.woopss-projects-list{min-width:0}.woopss-project-item{position:relative;margin:0 0 26px;padding:30px;border:1px solid var(--woopss-line);border-radius:28px;background:linear-gradient(145deg,#fff 0%,#fbfbfc 100%);box-shadow:var(--woopss-shadow);scroll-margin-top:24px;overflow:hidden}
.woopss-project-item:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--woopss-accent),#ffc36e);opacity:.9}
.app-general{display:grid;grid-template-columns:142px minmax(0,1fr);gap:28px;align-items:center}.app-icon-container{width:142px;height:142px}.app-info-container{min-width:0}.app-title{font:750 clamp(25px,3vw,36px)/1.08 Helvetica,Arial,sans-serif;letter-spacing:-.025em}.app-title a{color:var(--woopss-ink)!important;text-decoration:none!important}.app-title a:hover{color:var(--woopss-accent)!important}.has-link:after{content:'↗';display:inline-block;margin-left:8px;color:#9aa1a9;font-size:.58em;vertical-align:top}
.app-subtitle{margin-top:8px;color:var(--woopss-muted);font:500 13px/1.45 Helvetica,Arial,sans-serif}.app-description{padding:24px 0 0;color:#4f5862;font-size:15px;line-height:1.75}.app-description p:first-child{margin-top:0}.app-description p:last-child{margin-bottom:0}.woopss-privacy-link{padding-top:14px}.woopss-privacy-link a{color:var(--woopss-ink);font-weight:700}
.woopss-project-icon-link{position:relative;display:block;width:100%;height:100%;border-radius:24%;outline:none}.app-icon{display:block;width:142px;height:142px;border-radius:24%;object-fit:cover;box-shadow:0 14px 34px rgba(27,31,36,.18);transition:transform .28s,box-shadow .28s,filter .28s}.woopss-project-icon-link>span{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.94);color:#1d2229;font-size:17px;box-shadow:0 7px 18px rgba(0,0,0,.18);transform:scale(.75);opacity:0;transition:transform .25s,opacity .25s}.woopss-project-icon-link:hover .app-icon{transform:translateY(-5px) scale(1.025);box-shadow:0 22px 46px rgba(27,31,36,.24);filter:saturate(1.08)}.woopss-project-icon-link:hover>span{transform:scale(1);opacity:1}
.woopss-language-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.woopss-language-row>span:first-child{margin-right:2px}.woopss-lang-flag{width:24px!important;height:24px!important;object-fit:contain;border-radius:50%;box-shadow:0 2px 7px rgba(0,0,0,.12)}.woopss-lang-flag-en{background:#fff;border:1px solid rgba(29,34,41,.10);box-shadow:0 3px 9px rgba(0,0,0,.20);filter:drop-shadow(0 2px 3px rgba(0,0,0,.13))}.woopss-lang-more{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#eceff2;color:#5c6570;font-weight:800}
.app-download{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:26px -30px -30px;padding:20px 30px;border-top:1px solid var(--woopss-line);background:#f5f6f7}.woopss-store-badge,.woopss-product-hunt a{height:54px!important;min-height:54px;display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none!important}.woopss-store-badge{padding:0;border:0;border-radius:10px;background:transparent;overflow:hidden;box-shadow:0 5px 14px rgba(0,0,0,.13);transition:transform .2s,box-shadow .2s,filter .2s}.woopss-store-badge:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.2);filter:brightness(1.06)}.woopss-store-badge img{display:block!important;width:auto!important;height:54px!important;max-width:none!important;max-height:54px!important;object-fit:contain}.woopss-product-hunt{height:54px}.woopss-product-hunt img{display:block!important;width:auto!important;height:54px!important;max-height:54px!important;border-radius:10px}.woopss-coming-soon{padding:14px 0;font-weight:700}

/* Press */
.woopss-press-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1120px;margin:0 auto}.press{position:relative;min-height:190px;padding:26px;border:1px solid var(--woopss-line);border-radius:22px;background:linear-gradient(145deg,#fff,#f8f9fa);box-shadow:0 12px 34px rgba(24,29,35,.06);overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}.press:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(24,29,35,.11);border-color:#d9dde2}.woopss-press-mark{position:absolute;right:18px;top:16px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0f2f4;color:var(--woopss-accent);font-weight:800}.press-general{padding-right:32px}.press-title{font:750 20px/1.3 Helvetica,Arial,sans-serif}.press-title a{color:var(--woopss-ink)!important;text-decoration:none!important}.press-title a:hover{color:var(--woopss-accent)!important}.press-subtitle{margin-top:14px;color:var(--woopss-muted);font:500 13px/1.5 Helvetica,Arial,sans-serif}.woopss-press-source{display:flex;gap:8px;flex-wrap:wrap}.woopss-press-source a{font-weight:750;color:var(--woopss-ink)!important}.woopss-press-source span{padding-left:8px;border-left:1px solid #d7dbe0}

/* GitHub */
.gh-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1220px;margin:0 auto}.gh-box{position:relative;overflow:hidden;border:1px solid var(--woopss-line);border-radius:24px;background:#fff;box-shadow:0 14px 36px rgba(24,29,35,.07);transition:transform .26s,box-shadow .26s}.gh-box:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(24,29,35,.14)}.woopss-gh-cover{display:block;position:relative;overflow:hidden;aspect-ratio:1.45/1;background:#edf0f2}.gh-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s,filter .35s}.gh-box:hover .gh-image{transform:scale(1.045);filter:saturate(1.08)}.gh-link{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,transparent 35%,rgba(13,16,20,.44));opacity:0;transition:opacity .25s}.gh-link:after{content:'↗';display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#fff;color:var(--woopss-accent);font-size:22px;box-shadow:0 8px 22px rgba(0,0,0,.2);transform:translateY(8px);transition:transform .25s}.gh-box:hover .gh-link{opacity:1}.gh-box:hover .gh-link:after{transform:translateY(0)}.gh-content{padding:20px}.gh-title{font:750 19px/1.25 Helvetica,Arial,sans-serif;color:var(--woopss-ink)}.gh-description{margin-top:8px;color:var(--woopss-muted);font-size:14px;line-height:1.55}

/* Homepage */
.woopss-home{max-width:1180px;margin:0 auto}.woopss-home-hero{padding:clamp(48px,8vw,96px) clamp(22px,5vw,64px);border:1px solid #eceef0;border-radius:30px;background:linear-gradient(135deg,#fafafa 0%,#f1f3f5 55%,#fff3e9 100%);box-shadow:var(--woopss-shadow);overflow:hidden;position:relative}.woopss-home-hero:after{content:'';position:absolute;width:380px;height:380px;border-radius:50%;right:-130px;top:-150px;background:radial-gradient(circle,rgba(255,138,42,.28),rgba(255,138,42,0) 70%);pointer-events:none}.woopss-eyebrow{display:block;margin-bottom:10px;color:var(--woopss-accent);font:750 12px/1.2 Helvetica,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.woopss-home h1{max-width:760px;margin:0;font:750 clamp(42px,7vw,78px)/.98 Helvetica,Arial,sans-serif;letter-spacing:-.045em}.woopss-home-hero p{max-width:720px;margin:24px 0 0;color:var(--woopss-muted);font-size:clamp(17px,2.1vw,21px);line-height:1.65}.woopss-home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.woopss-primary-button,.woopss-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:12px;text-decoration:none!important;font-weight:750;transition:transform .2s,box-shadow .2s}.woopss-primary-button{background:var(--woopss-ink);color:#fff!important}.woopss-secondary-button{border:1px solid #ccd0d4;color:var(--woopss-ink)!important;background:rgba(255,255,255,.75)}.woopss-primary-button:hover,.woopss-secondary-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.12)}.woopss-home-section{padding:72px 0 6px}.woopss-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.woopss-home h2{margin:0;font:750 clamp(30px,5vw,48px)/1.05 Helvetica,Arial,sans-serif;letter-spacing:-.035em}.woopss-text-link{font-weight:750;text-decoration:none!important;color:var(--woopss-ink)!important}.woopss-text-link:hover{color:var(--woopss-accent)!important}.woopss-home-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.woopss-project-compact{margin:0;padding:18px;border-radius:22px}.woopss-project-compact:before{height:3px}.woopss-project-compact .app-general{grid-template-columns:104px minmax(0,1fr);gap:18px}.woopss-project-compact .app-icon-container,.woopss-project-compact .app-icon{width:104px;height:104px}.woopss-project-compact .app-title{font-size:20px}.woopss-home-press-grid{max-width:none}.woopss-home-press-section .press{min-height:180px}.woopss-home-github-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}.woopss-store-section{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:76px;padding:38px;border-radius:26px;background:#20242a;color:#fff;box-shadow:0 22px 54px rgba(24,28,33,.22)}.woopss-store-section h2{color:#fff}.woopss-store-section p{margin:10px 0 0;color:#bbc1c8}.woopss-store-account-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.woopss-mobile-more{display:none;margin-top:24px;text-align:center}

@media (max-width:980px){.woopss-projects-shell{grid-template-columns:210px minmax(0,1fr);gap:18px}.woopss-project-item{padding:24px}.app-download{margin:24px -24px -24px;padding:18px 24px}.gh-list{grid-template-columns:repeat(2,minmax(0,1fr))}.woopss-home-github-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.woopss-projects-shell{display:block}.woopss-projects-nav{position:relative;top:auto;height:auto;margin-bottom:20px;padding:8px;border-radius:18px}.woopss-projects-nav-inner{display:flex;overflow-x:auto;overflow-y:hidden;gap:6px}.woopss-project-nav-item{min-width:210px}.woopss-project-nav-item.is-active:before{display:none}.app-general{grid-template-columns:110px minmax(0,1fr);gap:18px}.app-icon-container,.app-icon{width:110px;height:110px}.woopss-press-list{grid-template-columns:1fr}.woopss-home-project-grid{grid-template-columns:1fr}.woopss-store-section{align-items:flex-start;flex-direction:column}.woopss-store-account-buttons{justify-content:flex-start}}
@media (max-width:520px){.woopss-project-item{padding:20px;border-radius:22px}.app-general{display:block}.app-icon-container{width:96px;height:96px;margin-bottom:18px}.app-icon{width:96px;height:96px}.app-title{font-size:25px}.app-download{margin:22px -20px -20px;padding:18px 20px}.woopss-store-badge,.woopss-product-hunt,.woopss-product-hunt a{width:100%;max-width:100%}.woopss-product-hunt img{width:auto!important;max-width:100%!important;margin:auto}.gh-list,.woopss-home-github-grid{grid-template-columns:1fr}.woopss-home-hero{border-radius:22px}.woopss-home h1{font-size:42px}.woopss-section-heading .woopss-text-link{display:none}.woopss-mobile-more{display:block}.woopss-store-section{padding:26px 20px}.woopss-store-account-buttons,.woopss-store-account-buttons .woopss-store-badge{width:100%}}

/* 2.5: lightweight YouTube previews */
.woopss-youtube-list{display:grid;gap:16px;padding-top:24px}.woopss-youtube-preview{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:20px;background:#11161b;box-shadow:0 16px 38px rgba(24,29,35,.14)}.woopss-youtube-play{display:block;width:100%;height:100%;margin:0;padding:0;border:0!important;border-radius:inherit;background:#11161b;cursor:pointer;overflow:hidden;appearance:none;-webkit-appearance:none}.woopss-youtube-play img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;transition:transform .35s ease,filter .35s ease}.woopss-youtube-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.23));transition:background .25s ease}.woopss-youtube-play-icon{position:relative;width:70px;height:50px;border-radius:15px;background:rgba(255,42,42,.96);box-shadow:0 13px 30px rgba(0,0,0,.3);transition:transform .25s ease,box-shadow .25s ease}.woopss-youtube-play-icon:after{content:'';position:absolute;left:29px;top:15px;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid #fff}.woopss-youtube-play:hover img,.woopss-youtube-play:focus-visible img{transform:scale(1.025);filter:saturate(1.08) brightness(.93)}.woopss-youtube-play:hover .woopss-youtube-play-icon,.woopss-youtube-play:focus-visible .woopss-youtube-play-icon{transform:scale(1.08);box-shadow:0 17px 38px rgba(0,0,0,.38)}.woopss-youtube-play:focus-visible{outline:3px solid rgba(255,138,42,.5);outline-offset:-3px}.woopss-youtube-preview iframe{display:block;width:100%;height:100%;border:0}

/* 2.5: homepage project cards now match the lift interaction used by Press and GitHub cards */
.woopss-home .woopss-project-compact{transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.woopss-home .woopss-project-compact:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(24,29,35,.14);border-color:#d9dde2}

/* 2.5: mobile project navigation scrolls only on its horizontal axis */
@media (max-width:760px){.woopss-projects-nav{overflow:hidden}.woopss-projects-nav-inner{height:auto;max-width:100%;padding:4px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:thin}.woopss-project-nav-item{flex:0 0 210px;min-width:210px;scroll-snap-align:start}.woopss-project-nav-item+.woopss-project-nav-item{margin-top:0}.woopss-youtube-preview{border-radius:16px}}

