:root{--bg: #f8fafc;--card: #ffffff;--text: #0c1222;--muted: #5b6476;--accent: #9b6b00;--ring: rgba(155, 107, 0, .25);color-scheme:light dark}.dark-theme{--bg: #0f0f12;--card: #15151a;--text: #eef1f7;--muted: #b9c0cf;--accent: #ffd34d;--ring: rgba(255, 211, 77, .35)}*{box-sizing:border-box}html,body{height:100%}html{scroll-behavior:smooth}body{margin:0;font:16px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{width:min(1100px,92vw);margin-inline:auto}.site-header{padding:clamp(24px,3vw,48px) 0 12px;position:relative}.brand{display:flex;align-items:center;gap:12px}.brand-logo{height:2.5rem;width:auto;display:block}.tagline{margin:.25rem 0 0;color:var(--muted)}.apps{display:grid;gap:18px;padding:20px 0 56px;animation:fadeIn .5s ease-out;grid-template-columns:repeat(3,minmax(260px,1fr))}@media (max-width: 834px){.apps{grid-template-columns:repeat(2,minmax(260px,1fr))}}@media (max-width: 538px){.apps{grid-template-columns:minmax(260px,1fr)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-card{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:16px;text-decoration:none;padding:16px;border-radius:18px;background:var(--card);border:1px solid rgba(0,0,0,.08);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;box-shadow:0 2px 8px #0000000d;outline:none;color:inherit}.app-card:focus-visible{box-shadow:0 0 0 6px var(--ring);border-color:var(--accent);transform:translateY(-1px)}.app-card:hover{transform:translateY(-2px);border-color:#0000001f;box-shadow:0 4px 12px #00000014}.app-icon{width:56px;height:56px;display:grid;place-items:center;background:linear-gradient(135deg,#00000008,#9b6b000d);border-radius:14px;border:1px solid rgba(0,0,0,.06);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.dark-theme .app-icon{background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.1),transparent 60%);border:1px solid rgba(255,255,255,.06)}.app-card:hover .app-icon{transform:scale(1.1);box-shadow:0 2px 6px #0000001a}.app-icon img{width:32px;height:32px;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.app-info{min-width:0}.app-name{margin:0 0 2px;font-size:1.05rem;letter-spacing:.01em}.app-desc{margin:0;color:var(--muted);font-size:.85rem;overflow:hidden;text-overflow:ellipsis}.app-cta{font-weight:700;color:var(--accent)}.site-footer{border-top:1px solid rgba(0,0,0,.08);padding:16px 0 48px;color:var(--muted);font-size:.8rem}.dark-theme .site-footer{border-top:1px solid rgba(255,255,255,.08)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dark-theme .app-card{border-color:#ffffff0f;box-shadow:0 4px 16px #00000040}.dark-theme .app-card:hover{border-color:#ffffff1f;box-shadow:0 6px 20px #0000004d}.apps-section-title{grid-column:1 / -1;margin:6px 0 2px;font-size:.95rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.support-note{margin-top:2rem;padding:.875rem 0;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.06);background:transparent}@media (prefers-color-scheme: dark){.support-note{border-top-color:#ffffff1f;border-bottom-color:#ffffff1a}}.support-name{margin:0;font-size:1rem}.support-icon{color:var(--accent);line-height:1;font-size:1rem;opacity:.75;transform:translateY(1px)}.support-desc{margin:.15rem 0 0;font-size:.95rem;color:var(--muted);text-wrap:balance}.support-actions{margin:.5rem 0 0}.donation-pill{display:inline-block;margin-right:.3rem;margin-bottom:.25rem;padding:.2rem .5rem;font-size:.8rem;line-height:1.1;font-weight:600;text-decoration:none;color:var(--accent);background:transparent;border:1px solid var(--ring);border-radius:999px;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.donation-pill:hover,.donation-pill:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 65%,transparent);outline:2px solid var(--ring);outline-offset:2px}
