@font-face{font-family:'Fixel Text';src:url('assets/fonts/FixelText-Regular.woff2?v=5') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Text';src:url('assets/fonts/FixelText-Medium.woff2?v=5') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Text';src:url('assets/fonts/FixelText-SemiBold.woff2?v=5') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Text';src:url('assets/fonts/FixelText-Bold.woff2?v=5') format('woff2');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Display';src:url('assets/fonts/FixelDisplay-Regular.woff2?v=4') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Display';src:url('assets/fonts/FixelDisplay-Medium.woff2?v=4') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Display';src:url('assets/fonts/FixelDisplay-SemiBold.woff2?v=4') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Fixel Display';src:url('assets/fonts/FixelDisplay-Bold.woff2?v=4') format('woff2');font-weight:700;font-style:normal;font-display:swap}:root,[data-theme="light"],[data-theme="dark"]{--bg:#0a0a0a;--text:#ededed;--muted:#888888;--border:rgba(255,255,255,0.08)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:'Fixel Text',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background 0.2s,color 0.2s;display:flex;flex-direction:column;min-height:100vh}a{color:var(--text);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:'Fixel Display','Fixel Text',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.site-header{position:sticky;top:0;z-index:10;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:transparent;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px) saturate(115%);backdrop-filter:blur(18px) saturate(115%);transition:border-color 0.2s,backdrop-filter 0.25s ease}.site-header .site-logo{display:flex;align-items:center;color:var(--text);transition:color 0.3s ease}.header-logo{display:block;width:auto;height:32px}[data-theme="dark"] .header-logo{filter:invert(1)}.site-header .site-logo:hover{text-decoration:none}.header-nav{display:flex;align-items:center;align-self:stretch;gap:18px}.language-picker{position:relative;color:var(--text)}.language-picker summary{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;padding:7px 2px;color:var(--text);font-size:12px;font-weight:600;text-align:center;list-style:none;cursor:pointer}.language-picker summary::-webkit-details-marker{display:none}.language-picker summary::after{width:6px;height:6px;content:"";border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;opacity:.72;transform:translateY(-1px) rotate(45deg);transform-origin:58% 58%;transition:opacity .25s ease,transform .35s cubic-bezier(.22,1,.36,1)}.language-picker[open] summary::after{opacity:1;transform:translateY(2px) rotate(225deg)}.language-picker__menu{position:absolute;top:calc(100% + 10px);right:0;display:grid;min-width:154px;padding:7px;background:var(--bg);border:1px solid var(--border);border-radius:14px;box-shadow:0 16px 44px rgba(0,0,0,0.35)}.language-picker__menu a{padding:9px 11px;color:var(--muted);font-size:13px;border-radius:9px}.language-picker__menu a:hover,.language-picker__menu a[aria-current="page"]{color:var(--text);text-decoration:none;background:var(--border)}.header-support{position:relative;align-self:stretch;display:flex;align-items:center;color:var(--muted);font-size:14px;font-weight:500;padding:0 4px;isolation:isolate;transition:color 0.25s ease}.header-support::before{content:'';position:absolute;right:0;bottom:-1px;left:0;height:1px;background:#ff6a2b;box-shadow:0 -2px 10px rgba(255,75,0,0.85);opacity:0;transform:scaleX(0.25);transition:opacity 0.3s ease,transform 0.4s cubic-bezier(0.22,1,0.36,1)}.header-support::after{content:'';position:absolute;z-index:-1;bottom:-1px;left:50%;width:130px;height:52px;pointer-events:none;background:radial-gradient( ellipse at 50% 100%,rgba(255,75,0,0.34) 0%,rgba(255,75,0,0.12) 38%,transparent 72% );filter:blur(4px);opacity:0;transform:translate(-50%,12px) scale(0.72);transform-origin:50% 100%;transition:opacity 0.35s ease,transform 0.5s cubic-bezier(0.22,1,0.36,1)}.header-support:is(.is-active,:focus-visible){color:var(--text)}.header-support:is(.is-active,:focus-visible)::before,.header-support:is(.is-active,:focus-visible)::after{opacity:1}.header-support:is(.is-active,:focus-visible)::before{transform:scaleX(1)}.header-support:is(.is-active,:focus-visible)::after{transform:translate(-50%,0) scale(1)}.header-support:hover{text-decoration:none}@media (hover:hover){.header-support:hover{color:var(--text)}.header-support:hover::before,.header-support:hover::after{opacity:1}.header-support:hover::before{transform:scaleX(1)}.header-support:hover::after{transform:translate(-50%,0) scale(1)}}.header-support:focus-visible{outline:none}#theme-toggle{background:none;border:none;cursor:pointer;color:var(--muted);padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color 0.15s,background 0.15s}#theme-toggle:hover{color:var(--text);background:var(--border)}[data-theme="dark"] .icon-sun{display:block}[data-theme="dark"] .icon-moon{display:none}[data-theme="light"] .icon-sun{display:none}[data-theme="light"] .icon-moon{display:block}:root:not([data-theme]) .icon-sun{display:none}:root:not([data-theme]) .icon-moon{display:block}.content{flex:1;max-width:680px;margin:0 auto;padding:64px 24px 80px}.hero{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px}.hero-logo{display:block;width:96px;height:96px;margin-bottom:32px}.hero-title{font-family:'Fixel Display',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:56px;font-weight:600;font-style:normal;letter-spacing:-0.03em;line-height:1.1;margin-bottom:40px;width:min(100%,1100px)}@media (max-width:560px){.hero-title{font-size:40px;margin-bottom:32px}.hero-logo{width:80px;height:80px;margin-bottom:24px}}.hero-title-line{display:inline-block;width:100%;min-height:1.1em;white-space:nowrap}.rotating-phrase{font-family:'Fixel Display',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-style:normal;font-weight:600;transition:opacity 0.55s ease,transform 0.55s ease,filter 0.55s ease}.rotating-phrase.is-changing{opacity:0;transform:translateY(8px);filter:blur(6px)}@media (max-width:760px){.hero-title-line{min-height:2.2em;white-space:normal}}@media (max-width:480px){.hero-title-line{min-height:3.3em}}.hero-badges{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}.app-store-link{position:relative;display:inline-flex;align-items:center;justify-content:center;height:56px;border-radius:999px;background:#ffffff;overflow:hidden;box-sizing:border-box;isolation:isolate;will-change:transform,box-shadow;transition:transform 0.32s cubic-bezier(0.4,0,0.2,1),box-shadow 0.32s cubic-bezier(0.4,0,0.2,1)}.app-store-link{padding:0 14px}.app-store-link::before{position:absolute;z-index:0;right:-12%;bottom:-64%;left:-12%;height:132%;content:"";pointer-events:none;background:radial-gradient( ellipse at 50% 100%,rgba(255,75,0,0.9) 0%,rgba(255,106,43,0.62) 34%,rgba(255,106,43,0.16) 62%,transparent 80% );opacity:0;transform:translateY(30%) scaleX(0.82);will-change:opacity,transform;transition:opacity 0.38s cubic-bezier(0.4,0,0.2,1),transform 0.48s cubic-bezier(0.4,0,0.2,1)}.app-store-link::after{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;background:#ff4b00;opacity:0;will-change:opacity;transition:opacity 0.32s cubic-bezier(0.4,0,0.2,1)}@media (hover:hover){.app-store-link:hover{text-decoration:none;box-shadow:0 10px 28px rgba(255,75,0,0.18);transition-timing-function:cubic-bezier(0.22,1,0.36,1)}.app-store-link:hover::before{opacity:1;transform:translateY(0) scaleX(1);transition-timing-function:cubic-bezier(0.22,1,0.36,1)}}.app-store-link:active{box-shadow:0 4px 14px rgba(255,75,0,0.28);transform:scale(0.992);transition-duration:0.18s;transition-timing-function:cubic-bezier(0.22,1,0.36,1)}.app-store-link:active::after{opacity:1;transition-duration:0.18s;transition-timing-function:cubic-bezier(0.22,1,0.36,1)}.app-store-link:focus-visible{outline:none;box-shadow:0 0 0 3px #FF4B00}.app-store-badge{position:relative;z-index:2;display:block;width:auto;height:48px}@media (prefers-reduced-motion:reduce){.app-store-link{transform:none;transition:box-shadow 0.24s cubic-bezier(0.4,0,0.2,1)}.app-store-link::before,.app-store-link::after{transition:opacity 0.24s cubic-bezier(0.4,0,0.2,1)}.app-store-link::before,.app-store-link:hover::before{transform:none}.app-store-link:active{transform:none}}.hero-availability{margin-top:20px;font-size:14px;color:var(--text);opacity:0.7;letter-spacing:0.01em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:480px){.hero-badges{flex-direction:column}.app-store-link{height:52px}.app-store-link{padding-inline:13px}.app-store-badge{height:44px}}.product-hunt-banner{position:fixed;right:24px;bottom:24px;z-index:90;width:fit-content;max-width:calc(100vw - 32px);padding:20px;color:#ffffff;background:var(--bg);border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,0.12);opacity:0;transform:translateY(12px)}.product-hunt-banner[hidden]{display:none}.product-hunt-banner.is-visible{opacity:1;transform:translateY(0);animation:cookie-banner-in 0.25s ease-out}[data-theme="dark"] .product-hunt-banner{box-shadow:0 10px 40px rgba(0,0,0,0.5)}.product-hunt-banner.is-closing{animation:cookie-banner-out 0.2s ease-in forwards}.product-hunt-banner__close{position:absolute;top:-44px;right:0;display:grid;width:36px;height:36px;place-items:center;padding:0;color:rgba(255,255,255,0.68);font-size:0;background:var(--bg);border:1px solid var(--border);border-radius:50%;box-shadow:0 8px 24px rgba(0,0,0,0.32);cursor:pointer;transition:color 0.18s ease,background-color 0.18s ease,transform 0.18s ease}.product-hunt-banner__close::before,.product-hunt-banner__close::after{position:absolute;top:50%;left:50%;width:14px;height:2px;content:"";background:currentColor;border-radius:999px}.product-hunt-banner__close::before{transform:translate(-50%,-50%) rotate(45deg)}.product-hunt-banner__close::after{transform:translate(-50%,-50%) rotate(-45deg)}.product-hunt-banner__close:hover{color:#ffffff;background:rgba(255,255,255,0.1);transform:rotate(6deg)}.product-hunt-banner__close:focus-visible{outline:2px solid #ff6154;outline-offset:2px}.product-hunt-banner__product{display:flex;align-items:center;gap:12px}.product-hunt-banner__icon{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:12px}.product-hunt-banner__copy{min-width:0}.product-hunt-banner__copy h2{margin:0;overflow:hidden;color:#ffffff;font-size:14px;font-weight:500;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.product-hunt-banner__copy p{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:rgba(255,255,255,0.66);font-size:13px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.product-hunt-banner__link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:9px 15px;color:#ffffff;font-size:13px;font-weight:500;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.14);border-radius:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.03);transition:background-color 0.18s ease,border-color 0.18s ease,transform 0.18s ease}.product-hunt-banner__link:hover{color:#ffffff;text-decoration:none;background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.24);transform:translateY(-1px)}.product-hunt-banner__link:focus-visible{outline:2px solid rgba(255,255,255,0.9);outline-offset:3px}@media (max-width:560px){.product-hunt-banner{right:16px;bottom:16px;left:16px;width:auto;padding:16px;transform-origin:center bottom}.product-hunt-banner__icon{width:56px;height:56px}}@media (prefers-reduced-motion:reduce){.product-hunt-banner,.product-hunt-banner__close,.product-hunt-banner__link{transition:none}}.content h1{font-size:32px;font-weight:500;letter-spacing:-0.02em;margin-bottom:8px}.content .updated{font-size:14px;color:var(--muted);margin-bottom:48px}.content h2{font-size:18px;font-weight:500;margin-top:40px;margin-bottom:12px;letter-spacing:-0.01em}.content h2.app-faq-title{font-size:22px}.content p{font-size:16px;line-height:1.65;color:var(--muted)}.content ul{font-size:16px;line-height:1.65;color:var(--muted);padding-left:20px;margin-top:12px}.content ul li{margin-bottom:8px}.faq-list{margin-top:12px;border-top:1px solid var(--border)}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{position:relative;padding:18px 36px 18px 0;color:var(--text);cursor:pointer;list-style:none;font-size:16px;font-weight:500;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;top:16px;right:4px;color:var(--muted);font-size:22px;font-weight:400;transition:color 0.25s ease,transform 0.35s cubic-bezier(0.22,1,0.36,1)}.faq-list details[open] summary::after{content:'−';color:var(--text);transform:none}.faq-list details p{padding:0 36px 18px 0}@media (prefers-reduced-motion:reduce){.faq-list summary::after{transition:color 0.2s cubic-bezier(0.4,0,0.2,1)}}.mobile-break{display:none}@media (max-width:480px){.mobile-break{display:block}}.colourful-text{display:inline}.colourful-text span{display:inline-block;white-space:pre;will-change:transform,opacity,filter,color}.cursor-halo{position:fixed;top:0;left:0;width:100vw;height:65vh;background:radial-gradient(ellipse 100% 100% at 50% 0%,rgba(255,75,0,0.35) 0%,transparent 100%);pointer-events:none;z-index:0;animation:halo-breathe 7s ease-in-out infinite;will-change:transform,opacity}@keyframes halo-breathe{0%,100%{transform:scaleY(1);opacity:0.8}50%{transform:scaleY(1.12);opacity:1}}.site-footer{border-top:1px solid var(--border);padding:24px;text-align:center;font-size:14px;color:var(--muted)}.site-footer__nav{display:flex;justify-content:center;flex-wrap:wrap;gap:24px}.site-footer__nav a,.site-footer__nav button{white-space:nowrap}@media (max-width:480px){.site-footer__nav{flex-direction:column;align-items:center;gap:16px}.site-footer{padding:24px 16px}}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--text);text-decoration:none}.site-footer button{background:none;border:none;padding:0;font:inherit;color:var(--muted);cursor:pointer}.site-footer button:hover{color:var(--text);text-decoration:underline}.footer-copyright{margin:20px 0 0;color:var(--muted);font-size:12px;line-height:1.5;opacity:0.72}.cookie-banner{position:fixed;left:16px;right:auto;bottom:16px;z-index:100;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,0.12);padding:16px 20px;width:fit-content;max-width:calc(100vw - 32px);margin:0;animation:cookie-banner-in 0.25s ease-out}[data-theme="dark"] .cookie-banner{box-shadow:0 10px 40px rgba(0,0,0,0.5)}@keyframes cookie-banner-in{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-banner--leaving{animation:cookie-banner-out 0.2s ease-in forwards}@keyframes cookie-banner-out{from{transform:translateY(0);opacity:1}to{transform:translateY(8px);opacity:0}}.cookie-banner__inner{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.cookie-banner__body{width:100%;min-width:0}.cookie-banner__title{display:block;font-size:14px;font-weight:500;color:var(--text);margin-bottom:4px}.cookie-banner__text{max-width:680px;font-size:13px;line-height:1.5;color:var(--muted)}.cookie-banner__text a{color:var(--text);text-decoration:underline;text-underline-offset:2px}.cookie-banner__actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-start;width:100%}.cookie-banner__btn{font:inherit;font-size:13px;font-weight:500;border:1px solid transparent;border-radius:8px;padding:8px 14px;cursor:pointer;transition:background 0.15s,color 0.15s,border-color 0.15s;white-space:nowrap}.cookie-banner__btn--primary{background:#FF4B00;color:#ffffff}.cookie-banner__btn--primary:hover{opacity:0.88}.cookie-banner__btn--secondary{background:transparent;color:var(--text);border-color:var(--border)}.cookie-banner__btn--secondary:hover{background:var(--border)}.cookie-banner__btn--ghost{background:transparent;color:var(--muted);border-color:transparent;padding-left:8px;padding-right:8px}.cookie-banner__btn--ghost:hover{color:var(--text)}@media (max-width:560px){.cookie-banner{right:16px;width:auto;padding:14px 16px;border-radius:12px}.cookie-banner__inner{gap:12px}.cookie-banner__actions{width:100%;justify-content:flex-start}.cookie-banner__btn{flex:0 1 auto}}.cookie-modal{position:fixed;inset:0;z-index:110;background:rgba(0,0,0,0.45);display:flex;align-items:center;justify-content:center;padding:16px;animation:cookie-modal-fade 0.15s ease-out}@keyframes cookie-modal-fade{from{opacity:0}to{opacity:1}}.cookie-modal__panel{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.25);width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.cookie-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px}.cookie-modal__title{font-size:18px;font-weight:500;letter-spacing:-0.01em}.cookie-modal__close{background:none;border:none;font-size:24px;line-height:1;color:var(--muted);cursor:pointer;padding:4px 8px;border-radius:6px}.cookie-modal__close:hover{color:var(--text);background:var(--border)}.cookie-modal__intro{padding:0 20px 16px;font-size:13px;line-height:1.5;color:var(--muted)}.cookie-modal__intro a{color:var(--text);text-decoration:underline;text-underline-offset:2px}.cookie-modal__rows{padding:0 20px;overflow-y:auto;flex:1}.cookie-modal__row{display:block;padding:14px 0;border-top:1px solid var(--border);cursor:pointer}.cookie-modal__row:first-child{border-top:none}.cookie-modal__row-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.cookie-modal__row-label{font-size:14px;font-weight:500;color:var(--text)}.cookie-modal__row-desc{font-size:13px;line-height:1.45;color:var(--muted);margin:0}.cookie-modal__checkbox{appearance:none;width:36px;height:22px;background:var(--border);border-radius:999px;position:relative;cursor:pointer;transition:background 0.15s;flex:none}.cookie-modal__checkbox::after{content:'';position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform 0.15s;box-shadow:0 1px 2px rgba(0,0,0,0.2)}.cookie-modal__checkbox:checked{background:#FF4B00}.cookie-modal__checkbox:checked::after{transform:translateX(14px);background:#ffffff}.cookie-modal__checkbox:disabled{opacity:0.6;cursor:not-allowed}.cookie-modal__footer{display:flex;gap:8px;justify-content:flex-end;padding:16px 20px 20px;border-top:1px solid var(--border);margin-top:12px}@media (max-width:480px){.cookie-modal__footer{flex-direction:column-reverse}.cookie-modal__footer .cookie-banner__btn{width:100%}}
