/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Geist","Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;--font-mono:"Geist Mono",ui-monospace,SFMono-Regular,"SF Mono",Consolas,"Liberation Mono",Menlo,monospace;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.min-h-screen{min-height:100vh}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.dark\:block:where(.dark,.dark *){display:block}.dark\:hidden:where(.dark,.dark *){display:none}}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/Geist-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-mono/GeistMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-mono/GeistMono-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:#495057;background-color:#fff;transition:background-color .2s,color .2s}html.dark body{color:#868e96;background-color:#0f0f0f}.code-block{font-family:var(--font-mono);background:#0f0f0f;border-radius:8px;font-size:.875rem;line-height:1.7;overflow:hidden}.code-block .line-number{color:#495057;-webkit-user-select:none;user-select:none;text-align:right;min-width:2.5rem;padding-right:1rem;display:inline-block}.code-block .keyword{color:#c678dd}.code-block .string{color:#98c379}.code-block .comment{color:#5c6370;font-style:italic}.code-block .function{color:#61afef}.code-block .decorator,.code-block .class-name{color:#e5c07b}.code-block .param{color:#e06c75}.code-block .number{color:#d19a66}.code-block .operator{color:#56b6c2}.code-block .builtin{color:#e06c75}.code-block .plain{color:#abb2bf}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{opacity:0;animation:.6s ease-out forwards fade-in-up}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--bg:#ffffff;--bg-sub:#f8f9fa;--bg-card:#ffffff;--bg-inset:#f1f3f5;--ink:#1a1a1a;--body:#3a4149;--muted:#545b65;--faint:#8b929b;--border:#e4e7ea;--border-soft:#eef0f2;--accent:#1a1a1a;--accent-soft:#f1f3f5;--dark-panel:#0a0a0a;--shadow-lg:0 24px 60px -18px rgba(20,21,26,.2), 0 8px 20px -12px rgba(20,21,26,.12);--shadow-sm:0 1px 2px rgba(20,21,26,.05), 0 4px 14px -8px rgba(20,21,26,.09);--maxw:1120px}html.dark{--bg:#0f0f0f;--bg-sub:#0a0a0a;--bg-card:#171717;--bg-inset:#1f1f1f;--ink:#f8f9fa;--body:#868e96;--muted:#868e96;--faint:#495057;--border:#2d2d2d;--border-soft:#1f1f1f;--accent:#f8f9fa;--accent-soft:#1f1f1f;--dark-panel:#080808;--shadow-lg:0 30px 70px -20px rgba(0,0,0,.7), 0 10px 30px -14px rgba(0,0,0,.6);--shadow-sm:0 1px 2px rgba(0,0,0,.5), 0 6px 18px -10px rgba(0,0,0,.6)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Geist,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{color:var(--ink);font-weight:600;letter-spacing:-.02em;text-wrap:balance;margin:0}h1,h2{font-weight:700}p{margin:0}a{color:inherit;text-decoration:none}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}nav{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(14px);background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--border-soft)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:60px}.logo{display:flex;align-items:center;gap:9px;font-weight:600;color:var(--ink);letter-spacing:-.02em;font-size:16px}.logo-mark{width:22px;height:22px;border-radius:6px;background:linear-gradient(140deg,var(--ink),#3a3d45);position:relative;flex:none}.logo-mark:after{content:"";position:absolute;inset:6px 6px auto auto;width:6px;height:6px;border-radius:50%;background:var(--accent)}@media(prefers-color-scheme:dark){.logo-mark{background:linear-gradient(140deg,#f4f5f7,#b7bcc4)}}:root[data-theme=dark] .logo-mark{background:linear-gradient(140deg,#f4f5f7,#b7bcc4)}:root[data-theme=light] .logo-mark{background:linear-gradient(140deg,#14151a,#3a3d45)}.nav-links{display:flex;align-items:center;gap:30px}.nav-links a{font-size:14px;color:var(--body);transition:color .15s}.nav-links a:hover{color:var(--ink)}.nav-right{display:flex;align-items:center;gap:14px}.theme-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.theme-btn:hover{color:var(--ink);background:var(--bg-inset)}.btn{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:500;padding:9px 16px;border-radius:9px;cursor:pointer;border:1px solid transparent;transition:transform .12s,background .15s,border-color .15s}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{transform:translateY(-1px)}.btn-ghost{color:var(--body);border-color:var(--border);background:var(--bg-card)}.btn-ghost:hover{border-color:var(--muted);color:var(--ink)}@media(max-width:820px){.nav-links{display:none}}.hero{position:relative;padding:92px 0 40px;text-align:center;overflow:hidden}.hero-grid{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,var(--border-soft) 1px,transparent 1px),linear-gradient(to bottom,var(--border-soft) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(120% 90% at 50% 0%,#000 30%,transparent 72%);-webkit-mask-image:radial-gradient(120% 90% at 50% 0%,#000 30%,transparent 72%);opacity:.7}.hero-glow{position:absolute;top:-160px;left:50%;transform:translate(-50%);width:820px;height:520px;z-index:0;pointer-events:none;background:radial-gradient(50% 50% at 50% 50%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%);filter:blur(20px);opacity:.5}.hero>.wrap{position:relative;z-index:1}.pill{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;padding:6px 13px 6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--body);box-shadow:var(--shadow-sm)}.pill .dot{width:6px;height:6px;border-radius:50%;background:#12b76a;box-shadow:0 0 color-mix(in srgb,#12b76a 60%,transparent);animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,#12b76a 55%,transparent)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}h1.title{margin:26px auto 0;max-width:15ch;font-size:clamp(40px,6.4vw,72px);line-height:1.02;letter-spacing:-.035em;font-weight:700}.title .grad{background:linear-gradient(100deg,var(--ink),#6b727c);-webkit-background-clip:text;background-clip:text;color:transparent}.sub{margin:22px auto 0;max-width:60ch;font-size:clamp(16px,2vw,19px);color:var(--body)}.form{margin:30px auto 0;display:flex;gap:10px;max-width:440px}.form input{flex:1;padding:12px 16px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--ink);font-size:14px;font-family:inherit;outline:none}.form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.form .btn-primary{padding:12px 20px;white-space:nowrap}.microcopy{margin:16px auto 0;font-size:13px;color:var(--muted);display:flex;gap:18px;justify-content:center;flex-wrap:wrap}.microcopy span{display:inline-flex;align-items:center;gap:6px}.microcopy svg{color:var(--accent)}@media(max-width:520px){.form{flex-direction:column}.form .btn-primary{justify-content:center}}.frame-wrap{position:relative;z-index:1;margin:56px auto 0;max-width:1000px}.frame{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-card);box-shadow:var(--shadow-lg)}.frame-bar{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--border-soft);background:var(--bg-sub)}.frame-bar .dots{display:flex;gap:6px}.frame-bar .dots i{width:11px;height:11px;border-radius:50%;background:var(--border);display:block}.frame-url{margin:0 auto;font-size:12px;color:var(--muted);background:var(--bg-inset);padding:4px 14px;border-radius:7px}.app{display:grid;grid-template-columns:52px 1fr 240px;height:380px}.app-rail{border-right:1px solid var(--border-soft);background:var(--bg-sub);padding:12px 0;display:flex;flex-direction:column;align-items:center;gap:8px}.app-rail i{width:30px;height:30px;border-radius:8px;background:var(--bg-inset);display:block}.app-rail i.on{background:var(--ink)}.app-main{padding:18px 20px;overflow:hidden}.app-crumb{display:flex;align-items:center;gap:10px;margin-bottom:14px}.app-crumb .h{font-weight:600;color:var(--ink);font-size:15px;letter-spacing:-.01em}.app-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.app-badge.g{background:color-mix(in srgb,#12b76a 14%,transparent);color:#12b76a}.row{display:grid;grid-template-columns:1.6fr 1fr .8fr .7fr;gap:8px;padding:11px 8px;border-bottom:1px solid var(--border-soft);align-items:center;font-size:12.5px}.row.head{color:var(--faint);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.cell-strong{color:var(--ink);font-weight:500}.bar{height:7px;border-radius:4px;background:var(--bg-inset);overflow:hidden}.bar span{display:block;height:100%;background:var(--ink)}.app-side{border-left:1px solid var(--border-soft);background:var(--bg-sub);padding:18px 16px}.stat{margin-bottom:18px}.stat .k{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat .v{font-size:22px;color:var(--ink);font-weight:600;letter-spacing:-.02em;margin-top:3px}.spark{display:flex;align-items:flex-end;gap:3px;height:40px;margin-top:10px}.spark i{flex:1;background:var(--bg-inset);border-radius:2px;display:block}.spark i.hi{background:var(--accent)}@media(max-width:720px){.app{grid-template-columns:44px 1fr}.app-side{display:none}}section.band{padding:96px 0}.band-sub{background:var(--bg-sub);border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.sec-head{max-width:640px}.sec-head.center{margin:0 auto;text-align:center}.sec-head h2{font-size:clamp(28px,3.6vw,38px);line-height:1.1;letter-spacing:-.03em}.sec-head p{margin-top:14px;font-size:17px;color:var(--body)}.apps{margin-top:48px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.appcat{border:1px solid var(--border);border-radius:14px;background:var(--bg-card);padding:20px;box-shadow:var(--shadow-sm)}.appcat h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.appcat ul{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:2px}.appcat li{font-size:14px}.appcat li a{display:flex;align-items:center;gap:10px;padding:8px;margin:0 -8px;border-radius:9px;color:var(--ink);transition:background .12s,color .12s}.appcat li a:hover{background:var(--bg-sub)}.appcat li .ic{width:32px;height:32px;border-radius:9px;background:var(--bg-inset);display:grid;place-items:center;color:#fff;flex:none}.appcat li a:hover .ic{filter:brightness(1.08)}.appcat li .ic svg{width:18px;height:18px}.apps-foot{margin-top:22px;text-align:center;font-size:14px;color:var(--muted)}@media(max-width:900px){.apps{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.apps{grid-template-columns:1fr}}.vb{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.vb+.vb{margin-top:96px}.vb.rev .vb-copy{order:2}.vb-copy .kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.05em}.vb-copy h3{margin-top:14px;font-size:clamp(24px,3vw,31px);line-height:1.12;letter-spacing:-.03em;font-weight:700}.vb-copy p{margin-top:14px;font-size:16px;color:var(--body);max-width:46ch}.vb-list{margin-top:20px;display:flex;flex-direction:column;gap:11px}.vb-list div{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;color:var(--ink)}.vb-list svg{color:var(--accent);flex:none;margin-top:3px}.vb-visual{border:1px solid var(--border);border-radius:14px;background:var(--bg-card);box-shadow:var(--shadow-lg);overflow:hidden;aspect-ratio:4/3}.vb-visual .frame-bar{padding:9px 12px}@media(max-width:820px){.vb{grid-template-columns:1fr;gap:28px}.vb.rev .vb-copy{order:0}}.flow{padding:22px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 41px);justify-content:center}.flownode{display:flex;align-items:center;gap:12px;border:1px solid var(--border-soft);border-radius:10px;padding:12px 14px;background:var(--bg-sub)}.flownode .fi{width:32px;height:32px;border-radius:8px;background:var(--ink);color:var(--bg);display:grid;place-items:center;flex:none}.flownode .fi svg{width:17px;height:17px}.flownode .ft{font-size:13.5px;color:var(--ink);font-weight:500}.flownode .fs{font-size:12px;color:var(--muted)}.flowline{width:1px;height:14px;background:var(--border);margin-left:37px}.flowline:after{content:""}.installer{padding:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-content:center;height:calc(100% - 41px)}.appchip{border:1px solid var(--border-soft);border-radius:10px;padding:12px 10px;background:var(--bg-sub);text-align:center;position:relative}.appchip .ci{width:30px;height:30px;border-radius:8px;background:var(--bg-inset);margin:0 auto 8px;display:grid;place-items:center;color:var(--body)}.appchip .ci svg{width:16px;height:16px}.appchip .cn{font-size:12px;color:var(--ink);font-weight:500}.appchip.inst{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft)}.appchip.inst .ci{background:var(--accent);color:#fff}.appchip .tick{position:absolute;top:7px;right:7px;color:var(--accent)}.dash{padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px;height:calc(100% - 41px);align-content:start}.dcard{border:1px solid var(--border-soft);border-radius:10px;padding:13px;background:var(--bg-sub)}.dcard.wide{grid-column:1 / -1}.dcard .dk{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.dcard .dv{font-size:20px;color:var(--ink);font-weight:600;margin-top:4px;letter-spacing:-.02em}.dcard .dd{font-size:11px;color:#12b76a;margin-top:2px}.dchart{display:flex;align-items:flex-end;gap:5px;height:54px;margin-top:10px}.dchart i{flex:1;background:var(--bg-inset);border-radius:3px 3px 0 0}.dchart i.hi{background:var(--ink)}.dark-band{background:var(--dark-panel);padding:96px 0;position:relative;overflow:hidden}.dark-band .grid-tex{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.045) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(100% 80% at 50% 0%,#000,transparent 75%);-webkit-mask-image:radial-gradient(100% 80% at 50% 0%,#000,transparent 75%)}.dark-band .wrap{position:relative}.dark-band .eyebrow{color:#8a8f98}.dark-band h2{color:#f6f7f9;font-size:clamp(28px,3.6vw,38px);letter-spacing:-.03em}.dark-band .lead{color:#a7adb5;margin-top:14px;font-size:17px;max-width:620px}.tiers{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tier{border:1px solid #23252b;border-radius:14px;background:#111318;padding:24px}.tier.feat{border-color:color-mix(in srgb,#f4f5f7 55%,#23252b);box-shadow:0 0 0 1px color-mix(in srgb,#f4f5f7 30%,transparent),0 24px 50px -24px #837dff66}.tier .tname{font-size:14px;font-weight:600;color:#f6f7f9;display:flex;align-items:center;justify-content:space-between}.tier .ttag{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#f4f5f7;background:#202227;padding:3px 8px;border-radius:999px}.tier .tprice{margin-top:12px;font-size:26px;color:#f6f7f9;font-weight:600;letter-spacing:-.02em}.tier .tprice small{font-size:13px;color:#8a8f98;font-weight:400}.tier .tdesc{margin-top:6px;font-size:13px;color:#8a8f98}.tier ul{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:9px}.tier li{display:flex;gap:9px;font-size:13.5px;color:#c4c8ce}.tier li svg{color:#f4f5f7;flex:none;margin-top:3px}@media(max-width:820px){.tiers{grid-template-columns:1fr}}.dev{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.dev-code{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--dark-panel);box-shadow:var(--shadow-lg);font-family:ui-monospace,monospace;font-size:12.5px;line-height:1.75}.dev-code .cbar{display:flex;gap:6px;padding:11px 14px;border-bottom:1px solid #1e2024}.dev-code .cbar i{width:10px;height:10px;border-radius:50%;background:#2a2c31}.dev-code pre{margin:0;padding:18px;overflow-x:auto;color:#c4c8ce}.dev-code .kw{color:#c792ea}.dev-code .fn{color:#82aaff}.dev-code .st{color:#c3e88d}.dev-code .cm{color:#5a6069}.dev-code .de{color:#ffcb6b}.dev h2{font-size:clamp(26px,3.4vw,34px);letter-spacing:-.03em}.dev p{margin-top:14px;font-size:16px;color:var(--body);max-width:46ch}.dev .devlist{margin-top:20px;display:flex;flex-direction:column;gap:10px}.dev .devlist div{font-size:14.5px;color:var(--ink);display:flex;gap:10px}.dev .devlist svg{color:var(--accent);flex:none;margin-top:3px}.dev .btn{margin-top:24px}@media(max-width:820px){.dev{grid-template-columns:1fr;gap:30px}.dev-code{order:2}}.finale{text-align:center;padding:104px 0}.finale h2{font-size:clamp(30px,4.4vw,46px);letter-spacing:-.03em;max-width:18ch;margin:0 auto;line-height:1.06}.finale>.wrap>p{margin:16px auto 0;font-size:17px;color:var(--body);max-width:44ch}footer{border-top:1px solid var(--border);background:var(--bg-sub);padding:64px 0 32px}.foot-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:36px}.foot-brand p{margin-top:14px;font-size:13.5px;color:var(--muted);max-width:30ch}.foot-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.foot-col ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:11px}.foot-col a{font-size:13.5px;color:var(--body)}.foot-col a:hover{color:var(--ink)}.foot-bot{margin-top:52px;padding-top:24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.foot-bot p{font-size:12.5px;color:var(--muted)}.foot-social{display:flex;gap:14px;color:var(--muted)}.foot-social a:hover{color:var(--ink)}@media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1 / -1}}.reveal{opacity:0;transform:translateY(16px);animation:rise .7s cubic-bezier(.2,.7,.2,1) forwards}.d1{animation-delay:.05s}.d2{animation-delay:.13s}.d3{animation-delay:.21s}.d4{animation-delay:.3s}.d5{animation-delay:.4s}@keyframes rise{to{opacity:1;transform:none}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){.reveal{animation:none;opacity:1;transform:none}.pill .dot{animation:none}}.note{max-width:var(--maxw);margin:0 auto;padding:14px 24px}.note .inner{border:1px dashed var(--border);border-radius:10px;padding:10px 14px;font-size:12.5px;color:var(--muted);background:var(--bg-sub)}.strip{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:var(--bg-sub)}.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.strip .s{padding:28px 16px;text-align:center;border-left:1px solid var(--border-soft)}.strip .s:first-child{border-left:0}.strip .s .n{font-size:27px;font-weight:700;color:var(--ink);letter-spacing:-.02em}.strip .s .l{margin-top:5px;font-size:12.5px;color:var(--muted)}@media(max-width:760px){.strip .wrap{grid-template-columns:repeat(2,1fr)}.strip .s{border-left:1px solid var(--border-soft);border-top:1px solid var(--border-soft)}.strip .s:nth-child(odd){border-left:0}}.caps{margin-top:48px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border-soft);border:1px solid var(--border-soft);border-radius:16px;overflow:hidden}.cap{background:var(--bg-card);padding:26px 22px}.cap .ci{width:36px;height:36px;border-radius:9px;background:var(--bg-inset);display:grid;place-items:center;color:var(--ink)}.cap .ci svg{width:18px;height:18px}.cap h4{margin-top:15px;font-size:14.5px;color:var(--ink)}.cap p{margin-top:6px;font-size:13px;color:var(--muted);line-height:1.55}@media(max-width:900px){.caps{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.caps{grid-template-columns:1fr}}.countries{display:flex;flex-wrap:wrap;gap:10px}.flagchip{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);font-size:13.5px;color:var(--ink);box-shadow:var(--shadow-sm)}.flagchip .fc{font-family:ui-monospace,monospace;font-size:10.5px;font-weight:600;color:var(--muted);background:var(--bg-inset);padding:3px 5px;border-radius:4px;letter-spacing:.03em}.secure-list{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}.secure-list .si{display:flex;gap:12px}.secure-list .si svg{color:var(--ink);flex:none;margin-top:2px}.secure-list .si b{color:var(--ink);font-size:14px;font-weight:600;display:block}.secure-list .si span{font-size:12.5px;color:var(--muted);line-height:1.5}@media(max-width:600px){.secure-list{grid-template-columns:1fr}}.faq{margin-top:36px;border-top:1px solid var(--border)}.faq details{border-bottom:1px solid var(--border);padding:20px 4px}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:16px;color:var(--ink);font-weight:500}.faq summary::-webkit-details-marker{display:none}.faq summary .pl{color:var(--muted);transition:transform .2s;flex:none;font-size:20px;line-height:1}.faq details[open] summary .pl{transform:rotate(45deg)}.faq p{margin-top:12px;font-size:14.5px;color:var(--body);max-width:74ch}.launcher{padding:26px 28px;height:380px;overflow:hidden}.launcher .lh{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.launcher .greet{font-size:16px;color:var(--ink);font-weight:600;letter-spacing:-.01em}.launcher .greet small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:2px}.launcher .search{width:220px;max-width:42%;background:var(--bg-inset);border:1px solid var(--border-soft);border-radius:9px;padding:8px 12px;font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px}.lgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px 10px}.ltile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 6px;border-radius:12px;transition:background .12s}.ltile:hover{background:var(--bg-sub)}.ltile .ti{width:44px;height:44px;border-radius:12px;background:var(--bg-inset);border:1px solid var(--border-soft);display:grid;place-items:center;color:var(--body)}.ltile .ti svg{width:22px;height:22px}.ltile:hover .ti{background:var(--ink);color:var(--bg);border-color:var(--ink)}.ltile .tn{font-size:11px;color:var(--ink);text-align:center;line-height:1.2}@media(max-width:760px){.lgrid{grid-template-columns:repeat(4,1fr)}.launcher .search{display:none}.ltile:nth-child(n+13){display:none}}@media(max-width:480px){.lgrid{grid-template-columns:repeat(3,1fr)}.ltile:nth-child(n+10){display:none}}.contrast{margin-top:44px;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm)}.crow{display:grid;grid-template-columns:1fr 1fr}.crow+.crow{border-top:1px solid var(--border-soft)}.cside{padding:17px 22px;display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.45}.cside.old{color:var(--muted);background:var(--bg-sub);border-right:1px solid var(--border)}.cside.new{color:var(--ink);font-weight:500}.cside .ic{flex:none;margin-top:2px}.cside.old .ic{color:var(--faint)}.cside.new .ic{color:var(--ink)}.chead .cside{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding-top:15px;padding-bottom:15px}.chead .cside.old{color:var(--muted)}.chead .cside.new{color:var(--ink)}@media(max-width:640px){.crow{grid-template-columns:1fr}.cside.old{border-right:0;border-bottom:1px dashed var(--border)}.chead{display:none}}.logo-inf{color:var(--ink);flex:none}.cat-nav{position:sticky;top:60px;z-index:40;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--border)}.cat-nav .wrap{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}.cat-nav .wrap::-webkit-scrollbar{display:none}.cat-nav a{font-size:13px;font-weight:500;color:var(--body);padding:7px 14px;border-radius:999px;white-space:nowrap;border:1px solid var(--border);background:var(--bg-card)}.cat-nav a:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cat-nav .cat-label{font-size:11.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-right:6px;flex:none}.apphead{padding:72px 0 40px;text-align:center;position:relative;overflow:hidden}.apphead .hero-grid{position:absolute;inset:0;background-image:linear-gradient(to right,var(--border-soft) 1px,transparent 1px),linear-gradient(to bottom,var(--border-soft) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(120% 90% at 50% 0%,#000 30%,transparent 72%);-webkit-mask-image:radial-gradient(120% 90% at 50% 0%,#000 30%,transparent 72%);opacity:.6}.apphead .wrap{position:relative}.apphead h1{font-size:clamp(34px,5vw,54px);letter-spacing:-.035em;line-height:1.04;max-width:16ch;margin:18px auto 0}.apphead p{max-width:54ch;margin:18px auto 0;font-size:17px;color:var(--body)}.catsec{padding:52px 0 8px}.catsec .chead{display:flex;align-items:baseline;gap:12px;margin-bottom:22px}.catsec .chead h2{font-size:22px;letter-spacing:-.02em}.catsec .chead span{font-size:13px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{display:flex;gap:14px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);box-shadow:var(--shadow-sm);transition:transform .13s,border-color .13s}.card:hover{transform:translateY(-2px);border-color:var(--muted)}.card .ci{width:38px;height:38px;border-radius:10px;background:var(--bg-inset);color:#fff;display:grid;place-items:center;flex:none}.card:hover .ci{filter:brightness(1.08)}.card .ci svg{width:20px;height:20px}.card h3{font-size:15px;color:var(--ink);display:flex;align-items:center;gap:8px}.card .ent{font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg-inset);border:1px solid var(--border-soft);padding:1.5px 5px;border-radius:4px;margin-left:6px;vertical-align:middle}.card p{margin-top:4px;font-size:13px;color:var(--muted);line-height:1.5}.misc{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.misc .m{border:1px dashed var(--border);border-radius:14px;padding:20px;background:var(--bg-sub)}.misc .m h4{font-size:14px;color:var(--ink)}.misc .m p{margin-top:6px;font-size:13px;color:var(--muted)}@media(max-width:880px){.cards,.misc{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cards,.misc{grid-template-columns:1fr}}.apphero{position:relative;padding:80px 0 72px;overflow:hidden}.apphero .hero-grid{position:absolute;inset:0;background-image:linear-gradient(to right,var(--border-soft) 1px,transparent 1px),linear-gradient(to bottom,var(--border-soft) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 72%);-webkit-mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 72%);opacity:.6}.apphero .wrap{position:relative}.apphero .crumb{font-size:13px;color:var(--muted)}.apphero .crumb a{color:var(--muted)}.apphero .crumb a:hover{color:var(--ink)}.apphero .badge{display:inline-flex;align-items:center;gap:9px;margin-top:20px;padding:7px 12px 7px 9px;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);box-shadow:var(--shadow-sm);font-size:13px;color:var(--ink);font-weight:500}.apphero .badge .bi{width:22px;height:22px;border-radius:6px;background:var(--ink);color:var(--bg);display:grid;place-items:center}.apphero .badge .bi svg{width:13px;height:13px}.apphero h1{margin-top:20px;font-size:clamp(36px,5.4vw,58px);letter-spacing:-.035em;line-height:1.03;max-width:16ch}.apphero p.lead{margin-top:20px;font-size:19px;color:var(--body);max-width:52ch}.apphero .actions{margin-top:28px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.apphero-frame{margin-top:56px}.kb{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px;height:400px}.kbcol{background:var(--bg-sub);border:1px solid var(--border-soft);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.kbcol .kbh{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:2px 4px 6px}.kbcol .kbh span{background:var(--bg-inset);color:var(--body);border-radius:20px;padding:1px 7px;font-size:10.5px}.kbcard{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:8px;padding:11px;box-shadow:var(--shadow-sm)}.kbcard .t{font-size:12.5px;color:var(--ink);font-weight:500;line-height:1.35}.kbcard .m{margin-top:9px;display:flex;align-items:center;justify-content:space-between}.kbcard .tag{font-size:10px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--bg-inset);color:var(--muted)}.kbcard .av{display:flex}.kbcard .av i{width:19px;height:19px;border-radius:50%;background:var(--bg-inset);border:1.5px solid var(--bg-card);margin-left:-6px;display:block}.kbcard .av i:first-child{margin-left:0}.kbcard.done .t{color:var(--muted);text-decoration:line-through}@media(max-width:820px){.kb{grid-template-columns:repeat(2,1fr);height:auto}.kbcol:nth-child(n+3){display:none}}.featgrid{margin-top:44px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px 28px}.featgrid .fi{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink);padding:6px 0}.featgrid .fi svg{color:var(--ink);flex:none;margin-top:3px}@media(max-width:820px){.featgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.featgrid{grid-template-columns:1fr}}.better{margin-top:44px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.bcard{display:flex;gap:14px;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.bcard .bi{width:38px;height:38px;border-radius:10px;background:var(--bg-inset);color:var(--ink);display:grid;place-items:center;flex:none}.bcard .bi svg{width:19px;height:19px}.bcard h4{font-size:14.5px;color:var(--ink)}.bcard h4 span{color:var(--muted);font-weight:500}.bcard p{margin-top:5px;font-size:13px;color:var(--muted);line-height:1.5}@media(max-width:640px){.better{grid-template-columns:1fr}}.tl{padding:20px;height:calc(100% - 41px);display:flex;flex-direction:column;gap:11px;justify-content:center}.tlrow{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:center}.tlrow .n{font-size:12px;color:var(--body)}.tlrow .track{height:22px;background:var(--bg-sub);border-radius:6px;position:relative}.tlrow .track b{position:absolute;top:4px;bottom:4px;border-radius:4px;background:var(--ink);display:block}.ts{padding:18px;height:calc(100% - 41px)}.tsrow{display:grid;grid-template-columns:1fr repeat(5,34px);gap:6px;align-items:center;padding:8px 4px;border-bottom:1px solid var(--border-soft);font-size:12px;color:var(--ink)}.tsrow.h{color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}.tsrow .c{height:24px;border-radius:5px;background:var(--bg-sub);display:grid;place-items:center;font-size:10.5px;color:var(--muted)}.tsrow .c.f{background:var(--ink);color:var(--bg)}.related{margin-top:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:700px){.related{grid-template-columns:repeat(2,1fr)}}.ent{font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg-inset);border:1px solid var(--border-soft);padding:1.5px 5px;border-radius:4px;margin-left:6px;display:inline-block;vertical-align:middle}[id]{scroll-margin-top:80px}.catsec{scroll-margin-top:124px}.frame-img{display:block;width:100%;height:auto}.vb-visual.shot{aspect-ratio:auto}.vb-visual .frame-img{border-top:1px solid var(--border-soft)}.prose-lede{max-width:760px}.prose-lede p{font-size:18px;line-height:1.75;color:var(--body);margin-bottom:1em}.prose-lede p:first-child{color:var(--ink);font-weight:500}.dd{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:center}.dd-copy h2{font-size:clamp(24px,3vw,31px);letter-spacing:-.03em;margin-top:12px;line-height:1.14}.dd-copy p{margin-top:14px;font-size:16px;color:var(--body);line-height:1.7;max-width:46ch}.dd-card{border:1px solid var(--border);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm);padding:26px 24px}.dd-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.dd-card li{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--ink);font-weight:500}.dd-card li svg{color:var(--ink);flex:none;margin-top:2px}.whofor{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.wf{border:1px solid var(--border);border-radius:14px;background:var(--bg-card);padding:22px;box-shadow:var(--shadow-sm)}.wf h3{font-size:15.5px;color:var(--ink)}.wf p{margin-top:8px;font-size:14px;color:var(--muted);line-height:1.6}a.bcard{text-decoration:none;transition:transform .13s,border-color .13s}a.bcard:hover{transform:translateY(-2px);border-color:var(--muted)}.apphero-split{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}.apphero-split .hero-copy h1{font-size:clamp(32px,4.4vw,50px);letter-spacing:-.035em;line-height:1.04;margin-top:18px}.pillars{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pillar{border:1px solid var(--border);border-radius:16px;background:var(--bg-card);box-shadow:var(--shadow-sm);padding:26px 22px}.pillar .pi{width:38px;height:38px;border-radius:10px;background:var(--bg-inset);color:var(--ink);display:grid;place-items:center}.pillar .peyebrow{margin-top:16px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.pillar h3{margin-top:6px;font-size:18px;letter-spacing:-.02em;color:var(--ink);line-height:1.2}.pillar p{margin-top:10px;font-size:14px;color:var(--body);line-height:1.6}.pillar ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.pillar li{display:flex;gap:9px;font-size:13.5px;color:var(--ink)}.pillar li svg{color:var(--ink);flex:none;margin-top:2px}.boxlist{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:12px 40px}.boxlist .fi{display:flex;gap:11px;align-items:flex-start;font-size:15px;color:var(--ink);padding:9px 0;border-bottom:1px solid var(--border-soft)}.boxlist .fi svg{color:var(--ink);flex:none;margin-top:3px}.faq-split{display:grid;grid-template-columns:.8fr 1.4fr;gap:40px;align-items:start}.apphero.left{text-align:left}.apphero.left .badge,.apphero.left h1,.apphero.left .lead,.apphero.left .actions{margin-left:0;margin-right:0}.apphero.left h1{max-width:18ch}.apphero.left .lead{max-width:56ch}.steps{margin-top:40px;display:flex;flex-direction:column;gap:0}.step{display:grid;grid-template-columns:96px 1fr;gap:24px;padding:34px 0;border-top:1px solid var(--border)}.step:last-child{border-bottom:1px solid var(--border)}.step .num{font-size:44px;font-weight:700;letter-spacing:-.04em;color:var(--faint);line-height:1}.step h3{font-size:clamp(21px,2.6vw,26px);letter-spacing:-.02em;color:var(--ink)}.step p{margin-top:12px;font-size:16px;color:var(--body);line-height:1.7;max-width:60ch}.step .spts{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px 20px}.step .spts span{display:inline-flex;gap:8px;align-items:center;font-size:14px;color:var(--ink)}.step .spts svg{color:var(--ink)}@media(max-width:820px){.apphero-split{grid-template-columns:1fr;gap:28px}.pillars,.boxlist{grid-template-columns:1fr}.faq-split{grid-template-columns:1fr;gap:18px}.step{grid-template-columns:1fr;gap:10px}.step .num{font-size:34px}}.diffband{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.diff{border:1px solid var(--border);border-radius:14px;background:var(--bg-card);padding:20px;box-shadow:var(--shadow-sm)}.diff .di{width:34px;height:34px;border-radius:9px;background:var(--bg-inset);color:var(--ink);display:grid;place-items:center}.diff .di svg{width:18px;height:18px}.diff h3{margin-top:13px;font-size:14.5px;color:var(--ink)}.diff p{margin-top:6px;font-size:13px;color:var(--muted);line-height:1.55}@media(max-width:820px){.diffband{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.diffband{grid-template-columns:1fr}}.shot-detail{border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-lg);background:var(--bg-card);aspect-ratio:16/10}.shot-detail img{width:100%;height:100%;object-fit:cover;display:block}.dd-points{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px}.dd-points span{font-size:12.5px;border:1px solid var(--border);border-radius:999px;padding:5px 12px;color:var(--ink);display:inline-flex;gap:7px;align-items:center;background:var(--bg-card)}.dd-points svg{color:var(--ink)}.shot-gallery{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.shot-gallery figure{margin:0}.shot-gallery .shot-detail{aspect-ratio:4/3}.shot-gallery figcaption{margin-top:11px;font-size:13px;color:var(--muted);display:flex;align-items:center;gap:7px}.shot-gallery figcaption svg{color:var(--ink)}@media(max-width:820px){.shot-gallery{grid-template-columns:1fr}}.step.has-shot{grid-template-columns:60px 1fr .9fr;align-items:start}.step.has-shot .shot-detail{aspect-ratio:16/11}.step .step-body h3{font-size:clamp(20px,2.4vw,25px);letter-spacing:-.02em;color:var(--ink)}.step .step-body p{margin-top:12px;font-size:15.5px;color:var(--body);line-height:1.65;max-width:52ch}@media(max-width:820px){.step.has-shot{grid-template-columns:1fr}}.dd.rev .dd-copy{order:2}.focus-frame{max-width:1000px;margin:0 auto}.focus-clip{max-height:460px;overflow:hidden}.focus-clip img{width:100%;height:auto;display:block}.focus-cap{margin-top:14px;text-align:center;font-size:13.5px;color:var(--muted)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{border:1px solid var(--border-soft);border-radius:16px;overflow:hidden;background:var(--bg-card);transition:border-color .2s,box-shadow .2s}.blog-card:hover{border-color:var(--border);box-shadow:var(--shadow-md)}.blog-card .bc-img{display:block;aspect-ratio:16/9;overflow:hidden}.blog-card .bc-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.blog-card:hover .bc-img img{transform:scale(1.04)}.blog-card .bc-body{padding:20px 22px}.blog-card .bc-date{font-size:12.5px;color:var(--muted)}.blog-card h3{margin-top:8px;font-size:17px;line-height:1.35;letter-spacing:-.01em;color:var(--ink)}.blog-card .bc-desc{margin-top:9px;font-size:14px;color:var(--body);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card .bc-more{margin-top:14px;display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--ink)}.blog-card .bc-more svg{transition:transform .2s}.blog-card:hover .bc-more svg{transform:translate(3px)}.pag{margin-top:48px;display:flex;align-items:center;justify-content:center;gap:6px}.pag a,.pag span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border-radius:10px;font-size:14px;color:var(--body)}.pag a:hover{background:var(--bg-inset);color:var(--ink)}.pag .pag-cur{background:var(--ink);color:var(--bg);font-weight:500}.pag .pag-dis{color:var(--border)}.blog-content{color:var(--body);font-size:17px;line-height:1.8}.blog-content h2,.blog-content h3,.blog-content h4{color:var(--ink);font-weight:700;margin-top:1.8em;margin-bottom:.6em;line-height:1.3;letter-spacing:-.01em}.blog-content h2{font-size:1.5rem}.blog-content h3{font-size:1.25rem}.blog-content h4{font-size:1.1rem}.blog-content p{margin-bottom:1.2em}.blog-content a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.blog-content ul,.blog-content ol{margin-bottom:1.2em;padding-left:1.4em}.blog-content li{margin-bottom:.4em}.blog-content code{font-size:.9em;background:var(--bg-inset);border:1px solid var(--border-soft);border-radius:5px;padding:1px 5px}.blog-content pre{background:#0f1115;color:#c4c8ce;border-radius:12px;padding:18px;overflow-x:auto;margin:1.4em 0}.blog-content pre code{background:none;border:0;padding:0;color:inherit}.blog-content blockquote{border-left:3px solid var(--border);padding-left:16px;color:var(--muted);margin:1.2em 0}.blog-content img{border-radius:12px;max-width:100%;height:auto;margin:1.5em 0}.blog-content strong{color:var(--ink);font-weight:600}.blog-content hr{border:none;border-top:1px solid var(--border-soft);margin:2em 0}.blog-content :not(pre)>code{color:var(--ink)}@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.blog-grid{grid-template-columns:1fr}}.post-head{max-width:760px}.post-hero-img{display:block;width:100%;max-width:900px;height:auto;border-radius:16px;border:1px solid var(--border-soft)}.post-body{display:grid;grid-template-columns:minmax(0,1fr) 232px;gap:56px;align-items:start}.post-body .blog-content{max-width:760px}.post-toc{position:sticky;top:92px}.post-toc .toc-label{text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;color:var(--muted);font-weight:600;margin-bottom:14px}.post-toc nav{display:flex;flex-direction:column;border-left:1px solid var(--border-soft)}.post-toc a{color:var(--body);font-size:13.5px;line-height:1.45;padding:5px 0 5px 15px;margin-left:-1px;border-left:2px solid transparent;transition:color .15s,border-color .15s}.post-toc a:hover{color:var(--ink);border-left-color:var(--border)}.post-toc a.toc-sub{padding-left:28px;font-size:13px;color:var(--muted)}@media(max-width:940px){.post-body{grid-template-columns:1fr}.post-toc{display:none}}.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:900px){.trio{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.trio{grid-template-columns:1fr}}.fstep{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:34px 32px;background:var(--bg-sub)}@media(max-width:700px){.fstep{flex-direction:column;align-items:stretch;gap:16px;padding:26px 22px}.fstep-arrow{transform:rotate(90deg);align-self:center}.fstep>div{border-left:0!important;padding-left:0!important;align-items:flex-start!important;text-align:left!important}}.frame-img.is-dark{display:none}html.dark .frame-img.is-dark{display:block}html.dark .frame-img.is-light{display:none}.ind-fits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ind-fit{border:1px solid var(--border-soft);border-radius:16px;background:var(--bg-card);padding:26px 24px}.ind-fit-n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:var(--accent-soft);color:var(--ink);font-weight:700;font-size:14px;margin-bottom:14px}.ind-fit h3{font-size:18px;letter-spacing:-.02em;margin:12px 0 10px;color:var(--ink)}.ind-fit p{font-size:14.5px;color:var(--body);line-height:1.55}@media(max-width:900px){.ind-fits{grid-template-columns:1fr}}.ind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ind-card{border:1px solid var(--border-soft);border-radius:16px;background:var(--bg-card);padding:24px;transition:border-color .15s,transform .15s,box-shadow .15s}.ind-card:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:var(--shadow-md)}.ind-card-icons{display:flex;gap:7px;margin-bottom:16px}.ind-card-icons .ci{width:30px;height:30px;border-radius:8px;color:#fff;display:grid;place-items:center;flex:none}.ind-card-icons .ci svg{width:16px;height:16px}.ind-card h3{font-size:18px;letter-spacing:-.02em;color:var(--ink)}.ind-card p{font-size:14px;color:var(--body);line-height:1.5;margin-top:7px}@media(max-width:900px){.ind-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.ind-grid{grid-template-columns:1fr}}.mega-trigger{display:inline-flex;align-items:center;gap:4px}.nav-chev{transition:transform .2s ease}.mega-trigger.open .nav-chev{transform:rotate(180deg)}.mega-trigger-btn{cursor:pointer}.mega{position:absolute;top:100%;left:0;right:0;z-index:60;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s}.mega.open{opacity:1;visibility:visible;pointer-events:auto}.mega-inner{position:relative;width:100%;overflow:hidden;background:var(--bg-card);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);transition:height .34s cubic-bezier(.4,0,.2,1)}.mega-panel{position:absolute;top:0;left:0;right:0;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .22s ease,transform .22s ease}.mega-panel.active{opacity:1;transform:none;pointer-events:auto}.mega-wrap{max-width:var(--maxw);margin:0 auto;padding:30px 24px 26px}.mega-split{display:grid;grid-template-columns:250px 1fr;gap:44px;align-items:start}.mega-intro h4{font-size:19px;letter-spacing:-.02em;color:var(--ink)}.mega-intro p{font-size:13.5px;color:var(--muted);line-height:1.55;margin-top:10px}.mega-introlink{display:inline-block;margin-top:16px;font-size:13px;font-weight:600;color:var(--ink)}.mega-introlink:hover{color:var(--accent)}.mega-cols{display:grid;grid-template-columns:repeat(4,1fr);column-gap:26px;row-gap:26px;align-items:start}.mega-cat{break-inside:avoid}.mega-cat-h{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-bottom:8px;padding-left:0}.mega-app{display:block;padding:6px 8px;margin:0 -8px;border-radius:7px;font-size:13.5px;color:var(--body);transition:background .12s,color .12s}a.mega-app:hover{background:var(--bg-sub);color:var(--ink)}.mega-app.is-static{opacity:.5}.mega-inds{display:grid;grid-template-columns:1fr 1fr;gap:4px}.mega-ind{display:flex;align-items:flex-start;gap:12px;padding:11px 12px;border-radius:10px;transition:background .12s}.mega-ind:hover{background:var(--bg-sub)}.mega-ind .ri{width:36px;height:36px;border-radius:9px;background:var(--bg-inset);color:var(--ink);flex:none;display:grid;place-items:center}.mega-ind .ri svg{width:19px;height:19px}.mega-ind b{display:block;font-size:14px;color:var(--ink);font-weight:600}.mega-ind>div span{display:block;font-size:12px;color:var(--muted);line-height:1.35;margin-top:2px}.mega-res{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mega-resitem{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:10px;transition:background .12s}.mega-resitem:hover{background:var(--bg-sub)}.mega-resitem .ri{width:38px;height:38px;border-radius:9px;background:var(--bg-inset);color:var(--ink);display:grid;place-items:center;flex:none}.mega-resitem .ri svg{width:19px;height:19px}.mega-resitem b{display:block;font-size:14px;color:var(--ink);font-weight:600}.mega-resitem>div span{display:block;font-size:12px;color:var(--muted);line-height:1.4;margin-top:3px}.mega-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding:16px 6px 0;border-top:1px solid var(--border-soft)}.mega-foot a{font-size:13px;font-weight:600;color:var(--ink)}.mega-foot a:hover{color:var(--accent)}.mega-foot span{font-size:12px;color:var(--muted)}@media(max-width:820px){.mega{display:none}}.ind-plat{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ind-plat-cell{display:flex;gap:13px;align-items:flex-start;border:1px solid var(--border-soft);border-radius:14px;background:var(--bg-card);padding:20px}.ind-plat-check{width:26px;height:26px;border-radius:7px;flex:none;display:grid;place-items:center;background:var(--accent-soft);color:var(--ink)}.ind-plat-cell h4{font-size:15px;color:var(--ink)}.ind-plat-cell p{font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:5px}@media(max-width:900px){.ind-plat{grid-template-columns:1fr 1fr}}@media(max-width:600px){.ind-plat{grid-template-columns:1fr}}.ind-run{grid-template-columns:repeat(3,1fr);max-width:940px;margin-inline:auto}@media(max-width:900px){.ind-run{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.ind-run{grid-template-columns:1fr}}.phone-wrap{display:flex;justify-content:center;margin-top:52px;position:relative;z-index:1}.phone{position:relative;width:300px;padding:10px;border-radius:44px;background:#0b0b0d;box-shadow:0 40px 90px -34px #0a0c148c,0 0 0 1px #0a0c1459,inset 0 0 0 1.5px #ffffff14}.phone-screen{position:relative;display:flex;flex-direction:column;border-radius:30px;overflow:hidden;background:var(--bg-card)}.phone-statusbar{flex:none;height:32px;display:flex;align-items:center;justify-content:space-between;padding:0 22px 0 28px;background:#fff;color:#0a0a0a}html.dark .phone-statusbar{background:#0f0f0f;color:#f8f9fa}.phone-statusbar .sb-time{font-size:14px;font-weight:600;letter-spacing:-.01em}.phone-statusbar .sb-icons{display:flex;align-items:center;gap:6px}.phone-statusbar .sb-signal{margin-bottom:-1px}.phone-screen img{width:100%;height:auto;display:block}.phone-safe{flex:none;height:24px;background:#fff;display:grid;place-items:center}html.dark .phone-safe{background:#0f0f0f}.phone-safe span{width:96px;height:4px;border-radius:999px;background:#0a0a0a;opacity:.75}html.dark .phone-safe span{background:#f8f9fa;opacity:.6}.phone-hero .ph-split{display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:center}.phone-hero .ph-copy{min-width:0}.phone-hero .phone-wrap{margin-top:0;justify-content:center}@media(max-width:900px){.phone-hero .ph-split{grid-template-columns:1fr;gap:10px}.phone-hero .phone-wrap{margin-top:26px}}.tablet-wrap{display:flex;align-items:center;justify-content:center;width:100%}.tablet{position:relative;width:100%;max-width:470px;padding:15px;border-radius:24px;background:#0b0b0d;box-shadow:0 34px 70px -30px #0a0c1480,0 0 0 1px #0a0c1459,inset 0 0 0 1.5px #ffffff12}.tablet-cam{position:absolute;top:6.5px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:50%;background:#34343a}.tablet-screen{border-radius:8px;overflow:hidden;background:var(--bg-card);display:flex;flex-direction:column}.tablet-screen img{width:100%;height:auto;display:block}.vb-bare{display:flex;align-items:center;justify-content:center}
