.utils-page{background:radial-gradient(ellipse 65% 45% at 72% 8%,color-mix(in oklch,var(--rune)20%,transparent)0%,transparent 62%),radial-gradient(ellipse 70% 55% at 18% 18%,color-mix(in oklch,var(--ember)18%,transparent)0%,transparent 66%),linear-gradient(180deg,var(--void-deep)0%,var(--void)48%,var(--void-deep)100%);max-width:100%;min-height:100vh;color:var(--bone);overflow-x:hidden}.utils-topbar .mark{text-decoration:none}.utils-topbar .glyph{vertical-align:-2px;display:inline-flex}.utils-hero{padding-top:98px;padding-bottom:54px;overflow:hidden}.utils-lock{place-items:center;width:100%;min-height:calc(100svh - 88px);padding-top:52px;padding-bottom:72px;display:grid}.lock-panel{background:linear-gradient(180deg,color-mix(in oklch,var(--ash)72%,transparent)0%,color-mix(in oklch,var(--void)90%,transparent)100%);border:1px solid color-mix(in oklch,var(--ember)30%,transparent);width:min(100%,560px);max-width:calc(100vw - 36px);box-shadow:0 26px 80px -54px var(--ember);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:38px;position:relative}.lock-panel .eyebrow{font-family:var(--mono);letter-spacing:.34em;text-transform:uppercase;color:var(--ember);margin-bottom:18px;font-size:11px}.lock-panel h1{font-family:var(--display);overflow-wrap:anywhere;margin:0;font-size:clamp(36px,6vw,62px);font-weight:600;line-height:1}.lock-panel p{color:var(--bone-dim);overflow-wrap:anywhere;margin:18px 0 0;font-size:18px;line-height:1.5}.lock-form{gap:12px;min-width:0;margin-top:30px;display:grid}.lock-form label{color:var(--bone);font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;font-size:11px}.lock-form input{width:100%;min-width:0;min-height:52px;color:var(--bone);background:color-mix(in oklch,var(--void-deep)70%,transparent);border:1px solid color-mix(in oklch,var(--ember)28%,transparent);font:18px var(--mono);border-radius:0;outline:none;padding:14px 16px}.lock-form input:focus{border-color:color-mix(in oklch,var(--ember)70%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--ember)16%,transparent)}.lock-error{color:#ff9284;color:lab(72.9864% 49.2528 31.7642);font-family:var(--mono);letter-spacing:.08em;font-size:12px}.lock-button{border-radius:0;width:100%;min-width:0;margin:10px 0 0}.utils-hero .section-head{margin-bottom:0}.utils-hero h1{font-family:var(--display);margin:0;font-size:clamp(48px,7vw,104px);font-weight:600;line-height:.96}.utils-hero h1 em{color:var(--ember);font-family:var(--body);font-style:italic;font-weight:500}.utils-hero-glow{aspect-ratio:1;background:radial-gradient(circle,color-mix(in oklch,var(--ember)22%,transparent)0%,transparent 68%);pointer-events:none;width:min(58vw,720px);position:absolute;inset:7% -20% auto auto}.app-downloads{padding-top:18px}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1180px;margin:0 auto;display:grid}.app-tile{background:linear-gradient(180deg,color-mix(in oklch,var(--ash)68%,transparent)0%,color-mix(in oklch,var(--void)86%,transparent)100%);border:1px solid color-mix(in oklch,var(--ember)28%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-rows:auto 1fr auto;min-height:540px;display:grid;position:relative;overflow:hidden}.app-tile:before{content:"";background:radial-gradient(ellipse at center top,color-mix(in oklch,var(--ember)32%,transparent)0%,transparent 66%);pointer-events:none;height:65%;position:absolute;inset:auto -28% -45%}.app-art{aspect-ratio:16/10;background:linear-gradient(180deg,color-mix(in oklch,var(--void-deep)56%,transparent)0%,color-mix(in oklch,var(--void)66%,transparent)100%);border-bottom:1px solid color-mix(in oklch,var(--ember)18%,transparent);place-items:center;padding:24px;display:grid;position:relative}.app-art img{object-fit:contain;width:min(78%,340px);max-height:270px;filter:drop-shadow(0 24px 40px color-mix(in oklch,var(--void-deep)80%,transparent));display:block}.app-placeholder{aspect-ratio:1;width:min(52%,210px);color:var(--ember);border:1px solid color-mix(in oklch,var(--ember)42%,transparent);background:color-mix(in oklch,var(--void-deep)42%,transparent);box-shadow:inset 0 0 44px color-mix(in oklch,var(--ember)10%,transparent);place-items:center;display:grid}.app-copy{padding:28px 28px 18px;position:relative}.app-kicker{color:var(--ember);font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;display:flex}.app-copy h2{color:var(--bone);font-family:var(--display);margin:18px 0 12px;font-size:clamp(30px,3vw,42px);font-weight:600;line-height:1.04}.app-copy p{color:var(--bone-dim);margin:0;font-size:17px;line-height:1.52}.download-button{min-height:52px;color:var(--void-deep);background:var(--ember);border:1px solid color-mix(in oklch,var(--bone)44%,transparent);font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;justify-content:center;align-items:center;gap:10px;margin:0 28px 28px;padding:14px 18px;font-size:12px;text-decoration:none;transition:transform .25s,box-shadow .25s;display:inline-flex;position:relative}.download-button:hover{box-shadow:0 18px 40px -20px var(--ember);transform:translateY(-2px)}.download-button.is-disabled{cursor:not-allowed;color:var(--bone-dim);background:color-mix(in oklch,var(--ash)72%,transparent);border-color:color-mix(in oklch,var(--bone-dim)22%,transparent);box-shadow:none}@media (max-width:900px){.utils-topbar{align-items:flex-start;gap:18px}.utils-topbar nav{flex-wrap:wrap;justify-content:flex-end;row-gap:10px}.utils-hero{padding-top:74px;padding-bottom:28px}.app-grid{grid-template-columns:1fr}.app-tile{min-height:0}}@media (max-width:560px){.utils-topbar{flex-direction:column}.utils-topbar nav{justify-content:flex-start;gap:10px}.utils-topbar a{padding-inline:10px}.utils-lock{place-items:start center;min-height:calc(100svh - 130px);padding:28px 18px 46px}.lock-panel{padding:28px 22px}.app-art{aspect-ratio:4/3;padding:18px}.app-art img{width:min(86%,300px);max-height:240px}.app-copy{padding:24px 22px 16px}.download-button{margin:0 22px 24px}}
